Я использую функцию cross_val_score с функцией LeaveOneOut, так как мои данные имеют 60 выборок.
Я запутался в том, как cross_val_score вычисляет результаты для каждой оценки в перекрестной проверке Leave One Out (LOOCV).
В LOOCV, например, он подходит, скажем, классификатору деревьев решений (DTC), моделирует с использованием 59 выборок для обучения и прогнозирует оставшуюся одну.
Тогда главный вопрос заключается в следующем: соответствует ли новая модель в каждом экземпляре (а именно 60 различных подгонок) внутри cross_val_score?
Если это так, все становится запутанным.
Тогда у меня может быть средняя оценка точности (из 60) для оценки производительности.Но мне нужно придумать лучшую модель DTC в целом, а не только для моих собственных данных, хотя она основана на моих данных.
Если я использую все данные, она идеально подходит, но эта модель просто переизбыточнаподходит.
Я хочу иметь единую модель DTC, которая в целом лучше всего работает на основе моих данных.
Вот мой код, если это имеет смысл:
model = DecisionTreeClassifier(random_state=27, criterion='gini', max_depth=4, max_features='auto' )
loocv = LeaveOneOut()
results = cross_val_score(model, X, y, cv=loocv)