导入错误:无法导入名称“评估”(来自意外导入评估)

Tus*_*har 5 python-3.x scikit-learn anaconda recommender-systems

from surprise import Reader, Dataset, SVD
from surprise import evaluate
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-12-6d771df269b8> in <module>()
----> 1 from surprise import evaluate

ImportError: cannot import name 'evaluate'
Run Code Online (Sandbox Code Playgroud)

第一行,从惊喜导入阅读器,数据集,SVD 工作正常。就是这样,它无法从惊喜包中导入评估。

我已经使用 conda 安装了 scikit-surprise。我认为它已成功安装。

Kri*_*ern 9

从 2020 年 1 月开始,请改为执行以下操作...

from surprise import SVD
from surprise import Dataset
from surprise.model_selection import cross_validate

# Load the dataset (download it if needed)
data = Dataset.load_builtin('ml-100k')

# Use the famous SVD algorithm
algo = SVD()

# Run 5-fold cross-validation and then print results
cross_validate(algo, data, measures=['RMSE', 'MAE'], cv=5, verbose=True)

Run Code Online (Sandbox Code Playgroud)


mer*_*erv 8

根据文档,该evaluate()方法在 1.0.5 版已弃用(功能上由 替换model_selection.cross_validate())并在 1.1.0 版删除,这可能是您已安装的。