Este es un analizador de red neuronal ligero basado en Pytorch. Está diseñado para hacer que la construcción de sus redes sea rápida y fácil, con la capacidad de depurarlas. Nota : Este repositorio está actualmente en desarrollo. Por lo tanto, algunas API podrían cambiarse.
Estas herramientas pueden mostrar
Hay dos formas de instalar TorchStat en su entorno.
$ pip install torchstat$ python3 setup.py installSi desea ejecutar el TorchStat lo antes posible, puede llamarlo como una herramienta CLI si su red existe en un script. De lo contrario, debe importar TorchStat como módulo.
$ torchstat masato$ torchstat -f example.py -m Net
[MAdd]: Dropout2d is not supported !
[Flops]: Dropout2d is not supported !
[Memory]: Dropout2d is not supported !
module name input shape output shape params memory(MB) MAdd Flops MemRead(B) MemWrite(B) duration[%] MemR+W(B)
0 conv1 3 224 224 10 220 220 760.0 1.85 72,600,000.0 36,784,000.0 605152.0 1936000.0 57.49% 2541152.0
1 conv2 10 110 110 20 106 106 5020.0 0.86 112,360,000.0 56,404,720.0 504080.0 898880.0 26.62% 1402960.0
2 conv2_drop 20 106 106 20 106 106 0.0 0.86 0.0 0.0 0.0 0.0 4.09% 0.0
3 fc1 56180 50 2809050.0 0.00 5,617,950.0 2,809,000.0 11460920.0 200.0 11.58% 11461120.0
4 fc2 50 10 510.0 0.00 990.0 500.0 2240.0 40.0 0.22% 2280.0
total 2815340.0 3.56 190,578,940.0 95,998,220.0 2240.0 40.0 100.00% 15407512.0
===============================================================================================================================================
Total params: 2,815,340
-----------------------------------------------------------------------------------------------------------------------------------------------
Total memory: 3.56MB
Total MAdd: 190.58MMAdd
Total Flops: 96.0MFlops
Total MemR+W: 14.69MBSi no está seguro de cómo usar un comando específico, ejecute el comando con los interruptores -h o -help. Verá información de uso y una lista de opciones que puede usar con el comando.
from torchstat import stat
import torchvision . models as models
model = models . resnet18 ()
stat ( model , ( 3 , 224 , 224 ))Nota : Estas características solo funcionan nn.module. Los módulos en Torch.nn. Funcionales aún no son compatibles.
Para las capas compatibles, consulte los detalles.
Gracias a @sovrasov por la versión inicial de Flops Computation, @ceykmc por la columna vertebral de los scripts.