赞
踩
比如下载了一个新模型
from transformers import pipeline
classifier = pipeline(task="sentiment-analysis")
preds = classifier("我喜欢找工作!")
preds = [{"score": round(pred["score"], 4), "label": pred["label"]} for pred in preds]
想知道这个模型有多大,怎么办呢?
# 估算模型的大小
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)
输出:
加载的模型参数数量为:66955010
加载的模型大小约为:255.41M
这是通过参数量估算的大小。
实际把模型下载之后,看看多大:
少了哪些部分呢?
可能是参数精度:模型中每个参数的精度(例如,32位浮点数、16位浮点数等)会影响模型的大小。一般来说,参数精度越高,模型的大小越大。
也可能是嵌入层大小:如果模型包含嵌入层(如词嵌入层),那么嵌入层的大小也会影响模型的大小。
因此通过参数算出来的基本都比实际大小小一些。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。