如何将分类器升级到最新版本的scikit-learn
问题描述:
我有一个训练有素的TfidfVectorizer,倾销joblib.dump。 它使用scikit-learn版本0.18在我的笔记本电脑上创建。当我试图把它放到我的服务器里安装的scikit学习0.18.1最新版本我就要警告下列要求:如何将分类器升级到最新版本的scikit-learn
/usr/local/lib/python2.7/dist-packages/sklearn/base.py:315: UserWarning: Trying to unpickle estimator TfidfTransformer from version 0.18 when using version 0.18.1. This might lead to breaking code or invalid results. Use at your own risk.
UserWarning)
/usr/local/lib/python2.7/dist-packages/sklearn/base.py:315: UserWarning: Trying to unpickle estimator TfidfVectorizer from version 0.18 when using version 0.18.1. This might lead to breaking code or invalid results. Use at your own risk.
UserWarning)
有没有我TfidfVectorizer升级到一种自然的方式防止任何问题?
我应该更好地卸载scikit-learn 0.18.1并将0.18版安装到服务器上吗?
答
是的,你应该在服务器上安装相同的版本时使用的发展,最好的做法是使用requirements.txt
为您的项目的所有要求,并安装使用conda
或virtualenv
您的服务器上一个新的环境,这将节省你手动设置这些东西的问题。
答
This链接为您提供有关如何升级的说明。
pip install -U scikit-learn
上述命令应升级您当前版本的scikit到最新版本。根据你用tfidf向量化器做什么,你可能会遇到或可能没有问题;我会建议保持更新的新版本。所以,你最好确保你的服务器和计算机都运行最新的sci-kit。
我不认为有移植工具。如果您想要安全,请尽可能使用相同版本或更高版本:升级和重新安装。如果您有一些时间,请检查版本之间的源代码更改,以便序列化您的分类器,并且可能会导致可能的后果。 – sascha