Scikit-learn_模型评估与参数调优_交叉验证

一.描述

  • 使用包括交叉验证在内的各种评估工具,如模型选择子模块model_selection中的cross_val_score和GridSearchCV等
  • 交叉验证的原理最常用的是K折交叉验证,就是将样本等分为k份,每次用其中的k-1份作训练集,剩余1份作测试集,训练k次,返回每次的验证结果。

二.描述

from sklearn.datasets import load_wine
X, y = load_wine(return_X_y=True)
y.shape
# 为cv参数指定一个交叉验证分离器
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import KFold


# 实例化决策树分离器
dtc = DecisionTreeClassifier()
# 实例化交叉验证分离器
cv = KFold(n_splits=3, shuffle=True, random_state=0)
# 交叉验证
cross_val_score(dtc, X, y, cv=cv)


# 使用随机交叉分离器ShuffleSplit类
from sklearn.model_selection import ShuffleSplit
cv = ShuffleSplit(n_splits=3, test_size=.25, random_state=0)
# 交叉验证
cross_val_score(dtc, X, y, cv=cv)


# 使用留一法进行验证
from sklearn.model_selection import LeaveOneOut
cv = LeaveOneOut()
cross_val_score(dtc, X, y, cv=cv)
cross_val_score(dtc, X, y, cv=cv).mean()
上一篇:Foundation框架中的NSFileHandle二


下一篇:Vue