Closed geniusserg closed 1 year ago
Link on the repository of project https://github.com/geniusserg/CovidPredict
1) Данные не одинаковые, потому что в первом случае вы подаете весь датасет, во втором случае только часть. Может возникнуть такая ситуация, что кардинальность данных в фолде и во всех данных может отличаться. 2) Недавно было сделано такое изменение - что данные всегда предобрабатываются, даже если пайплайн уже обучен. Соотвественно федот обучает свои препроцессоры на новых данных, но модель юзает ту, которая подходила под старые.
Вы можете посмотреть, как реализовано обучение на фолдах внутри федота - после каждого фолда делается unfit (https://github.com/aimclub/FEDOT/blob/master/fedot/core/optimisers/objective/data_objective_eval.py)()
Без него пайплайн не будет обучаться на новых данных, а просто возвратит себя же обученного
Так что unfit необходим в том числе и логически - без этого вы обучите федота на одном фолде, а на следующих будете просто предсказывать моделью, обученной на 1 фолде
Hello! In my project I try to create regression models with Fedot and make its cross-validation.
This does not works as preprocessing error happens:
X has 2 features, but SimpleImputer is expecting 1 features as input.
But if I fit pipeline on the whole dataset without dividing on folds, everything works.
See attached notebook for more details: fedot.zip