无NVIDIA显卡能否使用CUDA运行SimpleTransformers并微调预训练模型
问题解决方法
报错根本原因:CUDA是NVIDIA独有的并行计算框架,只能在NVIDIA显卡上运行,没有NVIDIA硬件的前提下,哪怕你安装了CUDA工具包,PyTorch也无法检测到可用的CUDA设备,而SimpleTransformers默认开启了
use_cuda参数,所以触发了校验报错。
你可以选择以下任意一种方法修复:
- 方法1:初始化模型时显式传入
use_cuda=False参数
直接修改原有初始化代码即可:model = NERModel('bert', 'bert-base-uncased',labels=label,args =args, use_cuda=False) - 方法2:在训练参数args中配置关闭CUDA
如果你统一用args管理所有配置项,直接在args字典里添加对应配置即可,无需额外传参:# 你的args配置部分示例 args = { # 原有其他配置项 "use_cuda": False, # 原有其他配置项 } # 原有初始化代码不需要改 model = NERModel('bert', 'bert-base-uncased',labels=label,args =args)
注意:关闭CUDA后模型会切换到CPU运行,训练和推理速度会比GPU环境慢很多,仅建议调试阶段使用该方案,处理大量数据时建议更换到带NVIDIA显卡的环境。
内容的提问来源于stack exchange,提问作者Mohit Bagaria
相关产品推荐
相关产品推荐

