как реализовать тестирование ходьбы в sklearn?

В sklearn GridSearchCV может принимать конвейер в качестве параметра, чтобы найти наилучшую оценку путем перекрестной проверки. Однако обычная перекрестная проверка выглядит так: введите описание изображения здесь

для перекрестного проверки данных временных рядов данные обучения и тестирования часто разделяются следующим образом: введите описание изображения здесь

То есть, данные тестирования всегда должны быть впереди данных обучения.

Моя мысль такова:

  1. Напишите мой собственный класс версии k-fold и передайте его в GridSearchCV, чтобы я мог наслаждаться удобством конвейера. Проблема состоит в том, что представляется сложно позволить GridSearchCV использовать определенные показатели обучения и тестирования данных.

  2. Напишите новый класс GridSearchWalkForwardTest, который похож на GridSearchCV, я изучаю исходный код grid_search.py ​​и считаю, что это немного сложно.

Любое предложение приветствуется.

2 Solutions collect form web for “как реализовать тестирование ходьбы в sklearn?”

Мое мнение таково, что вы должны попытаться реализовать свой собственный GridSearchWalkForwardTest. Однажды я использовал GridSearch для обучения и реализовал один и тот же GridSearch, и я не получил таких же результатов, хотя я должен.

То, что я сделал в конце, использует мою собственную функцию. У вас больше контроля над учебным и тестовым набором, и у вас больше контроля над параметрами, которые вы тренируете.

Я думаю, вы могли бы использовать Split Time Series вместо своей собственной реализации или в качестве основы для реализации CV-метода, который точно так же, как вы его описываете.

После копания немного, кажется, кто-то добавил max_train_size к TimeSeriesSplit в этом PR, который кажется, что делает то, что вы хотите.

  • Проблемы при использовании реализации нейронной сети ScikitLearn
  • Почему scikit-learn вызывают сбрасывание ядра?
  • scikit изучает создание фиктивных переменных
  • Как я могу создать один массив функций numpy из двух массивов и одно значение float?
  • Sklearn Pipeline - Как наследовать get_params в пользовательском Transformer (не Estimator)
  • Используя scikit-learn, как узнать SVM над небольшим набором данных?
  • Травление подготовленного классификатора дает разные результаты по результатам, полученным непосредственно из нового, но идентично обученного классификатора
  • Оценка логистической регрессии с перекрестной проверкой
  • В чем разница между cross_val_score с scoring = 'roc_auc' и roc_auc_score?
  • Точная репликация текстовой предварительной обработки текста в python
  • Проблема с sklearn: обнаружены массивы с непоследовательным числом выборок при выполнении регрессии
  •  
    Interesting Posts for Van-Lav

    Как импортировать модуль из каталога на уровне выше текущего скрипта

    Python запрашивает более старые пути на Mac после удаления дублированной установки python

    Создание нескольких соединений SSH за один раз с помощью Paramiko

    поверхностные графики в matplotlib

    одновременное добавление нескольких колонок к пандам

    Как найти элементы по полю 'id' в файле SVG с помощью Python

    Как создать пакеты пространства имен в Python?

    Ускорение прекрасного

    Чтение файлов в словари

    Преобразование большого XML-файла в реляционную базу данных

    запустить приложение узла из скрипта python

    python manage.py build_solr_schema, дающий ImportError: ни один модуль с надписью markup

    Высокопроизводительный расчет наименьших квадратов отличается от всех возможных комбинаций (n списков)

    Самый быстрый способ генерации 1 000 000 + случайных чисел в python

    Как определить, содержит ли столбец Pandas конкретное значение

    Python - лучший язык программирования в мире.