当前位置:   article > 正文

【transformer模型】三行查看huggingface加载的transformer模型的大小_huggingface看模型显存

huggingface看模型显存

比如下载了一个新模型

from transformers import pipeline
classifier = pipeline(task="sentiment-analysis")
preds = classifier("我喜欢找工作!")
preds = [{"score": round(pred["score"], 4), "label": pred["label"]} for pred in preds]
  • 1
  • 2
  • 3
  • 4

想知道这个模型有多大,怎么办呢?

# 估算模型的大小
def estimate_model_size(classifier):
    num_params = classifier.model.num_parameters()
    print(f"加载的模型参数数量为:{num_params}")
    model_size = num_params * 4 / 1024 / 1024
    print(f"加载的模型大小约为:{model_size:.2f}M")
estimate_model_size(classifier)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

输出:
加载的模型参数数量为:66955010
加载的模型大小约为:255.41M

这是通过参数量估算的大小。

实际把模型下载之后,看看多大:
请添加图片描述

少了哪些部分呢?
可能是参数精度:模型中每个参数的精度(例如,32位浮点数、16位浮点数等)会影响模型的大小。一般来说,参数精度越高,模型的大小越大。

也可能是嵌入层大小:如果模型包含嵌入层(如词嵌入层),那么嵌入层的大小也会影响模型的大小。

因此通过参数算出来的基本都比实际大小小一些。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/835339
推荐阅读
相关标签
  

闽ICP备14008679号