Supervised Learning ด้วย scikit-learn
George Boorman
Core Curriculum Manager, DataCamp
ประสิทธิภาพของโมเดลขึ้นอยู่กับวิธีแบ่งข้อมูล
ไม่สะท้อนความสามารถในการ generalize ของโมเดลกับข้อมูลใหม่
แนวทางแก้ไข: Cross-validation!










5 folds = 5-fold CV
10 folds = 10-fold CV
k folds = k-fold CV
fold มากขึ้น = ใช้ทรัพยากรการคำนวณมากขึ้น
from sklearn.model_selection import cross_val_score, KFoldkf = KFold(n_splits=6, shuffle=True, random_state=42)reg = LinearRegression()cv_results = cross_val_score(reg, X, y, cv=kf)
print(cv_results)
[0.70262578, 0.7659624, 0.75188205, 0.76914482, 0.72551151, 0.73608277]
print(np.mean(cv_results), np.std(cv_results))
0.7418682216666667 0.023330243960652888
print(np.quantile(cv_results, [0.025, 0.975]))
array([0.7054865, 0.76874702])
Supervised Learning ด้วย scikit-learn