Python Anywhere - 没有名为“sklearn.linear_model._stochastic_gradient”的模块

Kar*_*rol 1 python pickle pythonanywhere scikit-learn

我想使用pickle模块,将我电脑上学到的模型序列化:

pickle.dump(clf, open(os.path.join(dest, 'classifier.pkl'), 'wb'), protocol=4)
Run Code Online (Sandbox Code Playgroud)

当我也在我的电脑上打开它,一切正常:

clf = pickle.load(open(os.path.join('pkl_objects', 'classifier.pkl'), 'rb'))
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我在pythonanywhere.com上做同样的事情时,我得到了错误

ModuleNotFoundError: No module named 'sklearn.linear_model._stochastic_gradient'
Run Code Online (Sandbox Code Playgroud)

我有以下版本的 scikit-learn:

  • 在我的电脑上:0.23.2
  • pythonanywhere.com 是 0.21.3

如何标准化?  

小智 5

您可以创建一个requirement.txt文件,在其中定义所有必需的版本依赖项。或者你可以像他们在文档中那样创建一个虚拟环境。或者您可以尝试运行pip install scikit-learn --upgrade.