1. 程式人生 > 其它 >fvcore計算模型引數量和計算量

fvcore計算模型引數量和計算量

fvcore是一個易用的工具。fvcore是Facebook開源的一個輕量級的核心庫,它提供了各種計算機視覺框架中常見且基本的功能。其中就包括了統計模型的引數以及FLOPs等。

pip install fvcore
  • FLOPS:注意全大寫,是floating point operations per second的縮寫,意指每秒浮點運算次數,理解為計算速度。是一個衡量硬體效能的指標。
  • FLOPs:注意s小寫,是floating point operations的縮寫(s表複數),意指浮點運算數,理解為計算量。可以用來衡量演算法/模型的複雜度。

1.計算量

import torch
from
torchvision.models import resnet50 from fvcore.nn import FlopCountAnalysis, parameter_count_table # 建立resnet50網路 model = resnet50(num_classes=1000) # 建立輸入網路的tensor tensor = (torch.rand(1, 3, 224, 224),) # 分析FLOPs flops = FlopCountAnalysis(model, tensor) print("FLOPs: ", flops.total())

2.引數量

import torch
from torchvision.models import resnet50 from fvcore.nn import FlopCountAnalysis, parameter_count_table # 建立resnet50網路 model = resnet50(num_classes=1000) # 分析parameters print(parameter_count_table(model))