0

我在 Kaggle 上使用 FastAi 构建了一个文本分类器,在尝试导出经过训练的模型时出现以下错误 - TypeError: unsupported operand type(s) for /: 'str' and 'str'

我尝试设置更精简的模型目录和工作目录的路径。

learn_clas.path='/kaggle/working/'

learn_clas.model_dir='/kaggle/working/'

learn_clas.export()

我得到的错误是 -

/opt/conda/lib/python3.6/site-packages/fastai/torch_core.py in try_save(state, path, file)     

       410 def try_save(state:Dict, path:Path=None, file:PathLikeOrBinaryStream=None):        
   --> 411     target = open(path/file, 'wb') if is_pathlike(file) else file
       412     try: torch.save(state, target)
       413     except OSError as e:

TypeError: unsupported operand type(s) for /: 'str' and 'str'
4

1 回答 1

0

您必须将路径/文件替换为包含在字符串中的文件名。

target = open(path/file, 'wb') if is_pathlike(file) else file

在您的代码中,python 将路径和文件视为变量而不是字符串文字并尝试将它们分开。所以你需要一些这样的:

target = open('mydirectory/modelname.ext', 'wb') if is_pathlike(file) else file

或者你可以试试

 target = open(path+'/'+file, 'wb') if is_pathlike(file) else file
于 2019-08-26T00:31:30.810 回答