推荐系统:ImportError: cannot import name ‘evaluate‘ from ‘surprise
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                推荐系统:ImportError: cannot import name ‘evaluate‘ from ‘surprise
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                根據(jù)官方文檔,evaluate()方法在1.0.5版中已棄用(功能上已由model_selection.cross_validate()取代),并在1.1.0版中刪除
分析:
需要改兩個地方
第一個是導(dǎo)入庫:將from surprise import evaluate 換成
from surprise.model_selection import cross_validate即可。
第二個是應(yīng)用:data.split(n_folds=5)和evaluate(svd, data, measures=['RMSE', 'MAE'])兩處代碼不能用,要換成cross_validate函數(shù)。
具體如下:
原始代碼:
from surprise import Reader, Dataset, SVD,evaluate reader = Reader() ratings = pd.read_csv('data/ratings_small.csv') ratings.head()data = Dataset.load_from_df(ratings[['userId', 'movieId', 'rating']], reader) data.split(n_folds=5) svd = SVD() evaluate(svd, data, measures=['RMSE', 'MAE'])更改后的代碼:
from surprise import Reader, Dataset, SVD from surprise.model_selection import cross_validate reader = Reader() ratings = pd.read_csv('data/ratings_small.csv') ratings.head()data = Dataset.load_from_df(ratings[['userId', 'movieId', 'rating']], reader) # data.split(n_folds=5) svd = SVD() # evaluate(svd, data, measures=['RMSE', 'MAE']) cross_validate(algo=svd,data=data,measures=['RMSE', 'MAE'],cv=5,verbose=True)參考資料:
運行出錯 ImportError:cannot import name 'evaluate' from 'surprise' - 灰信網(wǎng)(軟件開發(fā)博客聚合)
?AttributeError: 'DatasetAutoFolds' object has no attribute 'split' - Stack Overflow
總結(jié)
以上是生活随笔為你收集整理的推荐系统:ImportError: cannot import name ‘evaluate‘ from ‘surprise的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: c语言编程电机星三角启动,三相异步电动机
- 下一篇: 正点原子ESP8266的使用
