Re: [問題] scikit-learn模型訓練績效
看板Python作者backprog (back-propagation)時間8年前發表 (2017/08/03 17:03), 8年前編輯推噓0(0推 0噓 0→)留言0則, 0人參與討論串3/3 (看更多)
※ 引述《backprog (back-propagation)》之銘言:
: from sklearn.svm import SVR
: from sklearn.metrics import mean_squared_error
: # x_data 請當作 test set data
: # y_data 請當作 test set label
: svr_model = SVR() #初始模型
: svr_model.fit(X=x_data, y=y_data) #訓練
: predict_result = svr_model.predict(x_data) #預測
: # 計算預測結果的 MSE 和 PCCs
: print("PCCs = {}".format(np.corrcoef(x=predict_result, y=y_data)))
: print("MSE = {}".format(mean_squared_error(y_data, predict_result)))
有版友另外私下提問,但我希望能公開回答,效益較高。
Q: 事後代回去的資料可以用來評估嗎?
A: 當然可以阿,模型訓練出來不就是要事後用嗎?
只是事後帶回去的資料(test set)不能和訓練用的重複,
不然就會球員兼裁判,你自己要分割資料。
Q: from sklearn.model_selection import cross_val_score 可以用來算 MSE 嗎?
A: 可以,cross_val_score 就是幫你分割資料、重複實驗,比較方便
用法:
cross_val_score(estimator=model,
X=x_data,
y=y_data,
scoring='neg_mean_squared_error' #選用 MSE 當 score
)
return 出 N 次交叉測試的 MSE
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.38.139.167
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1501779824.A.DFA.html
※ 編輯: backprog (114.38.139.167), 08/04/2017 01:06:18
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):