bert模型参数量params与复杂度flops的计算

  • Post author:
  • Post category:其他




可视化工具ptflops

from ptflops import get_model_complexity_info
flops,params=get_model_complexity_info(model,(1,15))
print(flops,params)

model:就是构建的模型

(1,15):模型输入的size,这里的输入必须是一个tensor

flops:能够输出bert网络的结构,包括各层的参数和计算复杂度

params:1.28GMac,99.95M 表示总的计算复杂度为1.28GMac,模型参数量为99.95M,M表示百万量级

  • bert模型参数

    在这里插入图片描述

    base模型的总参数量为110M,经过与base模型的config对比发现,本模型中的vocab_size是小于base中默认的词表大小的,所以在enbedding层的参数会小一些,进而得到的总参数量99.95M<110M。

具体的计算过程,可以查看


bert/transformer模型的参数大小计算



计算量和参数量的计算方法



flops分析和解释



版权声明:本文为Chrsitina_S原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。