我有一個關于以下簡短代碼片段的快速問題(我的 sklearn 版本,從中匯入 cross_val_score 和 LinearDiscriminantAnalysis,是 1.1.1):
cv_results = cross_val_score(LinearDiscriminantAnalysis(),data,isTarget,cv=kfold,scoring='accuracy')
我正在嘗試在“資料”變數和“isTarget”變數上訓練 LinearDiscriminantAnalysis ML 演算法,它們是我的 ML 資料集中樣本特征的 numpy 陣列,以及哪些樣本是目標 (1) 或非目標的串列目標(0),恭敬。kfold 只是對演算法進行評分的一種方法,在這里并不重要。
我的問題是:我試圖通過在“資料”和“isTarget”上訓練這個演算法來給它打分,但我想在不同的資料集“data_val”和“isTarget_val”上測驗它,但cross_val_score沒有引數用于在一個資料集上訓練演算法并在另一個資料集上進行測驗。我一直在尋找可以做到這一點的其他功能,我覺得這是一個非常簡單的答案,我就是找不到。
有人可以幫我嗎?謝謝 :)
uj5u.com熱心網友回復:
這就是交叉驗證的設計方式。您提供的cv引數指定您要進行 K 折交叉驗證,這意味著您的整個資料集將用于 K 不同折中的訓練和測驗。
您可以在此處閱讀有關交叉驗證的更多資訊。
uj5u.com熱心網友回復:
您可以使用PredefinedSplit( docs ) 作為cv引數來完成此操作。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/493234.html
