Я тренировал модель случайного леса с набором данных Titani c. Во многих статьях говорится, что нам не требуется перекрестная проверка для классификаторов RF, в то время как мало кто говорит, что вы можете использовать перекрестную проверку. Я попробовал оба, и я не знаю, что делать с оценками, и я подозреваю, что моя модель переоснащается, если используется без перекрестной проверки.
Показатель Oob модели равен 96,85, а средний показатель перекрестной проверки - 83,27 [Эта модель дает 74,01 если я поставлю оценку = 'f1']
Вот мой код,
from sklearn.ensemble import RandomForestClassifier
clf = RandomForestClassifier(n_estimators=10, random_state=44, oob_score=True)
clf.fit(titanic[features], titanic['Survived'])
clf.score(titanic[features], titanic['Survived'])
score : 0.9685746352413019
predictors = features
clf = RandomForestClassifier(random_state=10, n_estimators=10)
clf.fit(titanic[features],titanic["Survived"])
kf = KFold(n_splits=10)
scores = cross_val_score(clf, titanic[predictors], titanic["Survived"], cv=kf)
print(scores.mean())
score : 83.27
Может кто-нибудь, пожалуйста, пролить свет на этот счет?
Спасибо!