語境我將sklearn機器學習算法用于SVR回歸任務。from sklearn.svm import SVRmodel = SVR(kernel='poly', degree=2, epsilon=.5)model.fit( features # Numpy array with features , target # Numpy array with the target)之后,我使用 -function 返回回歸分數.score()。此外,我需要用于進一步處理的預測結果.predict()。some_data = [...] # Numpy array with some data to predictcorrect_targets = [...] # Numpy array with targets according to some data# Get R2print("R2:", model.score( some_data , correct_targets))# Store predictionpred = model.predict(some_data)問題當我在上面的版本中運行代碼時,模型被計算了兩次——一次為.score(),一次為.predict()。但是,我無法.score()在已保存的.predict(). 這有點討厭,因為計算需要一些時間。是否可以存儲預測并.score()在以后應用而無需重新計算?
1 回答

HUH函數
TA貢獻1836條經驗 獲得超4個贊
如果您已經有了預測值:
pred = model.predict(some_data)
和相應的基本事實correct_targets
,無需重新運行模型即可直接獲得 R^2 分數,因為 scikit-learn對此有專門的功能:
from sklearn.metrics import r2_score
r2_score(correct_targets, pred)
添加回答
舉報
0/150
提交
取消