如何解决FastAI V2:来自Learn.export的TabularLearner export.pkl非常大
我不确定是否打算这样做,但是export.pkl
中的learn.export()
约为471 MB,这在某些应用程序中的部署有些许限制。
SaveModelCallback
中的模型本身仅为131 KB
,而我只想使用Learner
来应用相同的变换/处理(归一化,FillMissing,分类)。
有这么大的原因吗?我也已经确认
learn.xb
=
(无)
learn.yb
=
(无)
解决方法
必须pip install wwf
见https://forums.fast.ai/t/tabularlearner-export-pkl-from-learn-export-is-very-large/81251/2
from wwf.tab.export import *
-
我们将模型手动保存在学习器中
torch.save(learn.model,f'{model_dir}/2_{REF}_LEARNER_MODEL.pt')
-
我们也导出表格对象
to.export(f'{model_dir}/3_{REF}_TABULAR_OBJECT.pkl')
-
我们加载表格对象
to_new = load_pandas(f'{model_dir}/3_{REF}_TABULAR_OBJECT.pkl')
to_new = to_new.train.new(df[:20])
to_new.process()
- 我们加载模型
model_2 = torch.load(f'{model_dir}/2_{REF}_LEARNER_MODEL.pt')
learn_new = TabularLearner(dls_new,model)
- 我们做推论
row,clas,probs = learn_new.predict(df.iloc[0])
row.show()
probs
节省大量资金:
- 型号:135 kb
- 管状对象:6 kb
vs。
- learn.export()417 mb
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。