Aspiring Data Science – Telegram
Aspiring Data Science
386 subscribers
465 photos
12 videos
12 files
2.15K links
Заметки экономиста о программировании, прогнозировании и принятии решений, научном методе познания.
Контакт: @fingoldo

I call myself a data scientist because I know just enough math, economics & programming to be dangerous.
Download Telegram
😁1
#timeseries #ensembling #hetboost #pmdarima #todo

Вот попался классный пример, где идея "гетерогенного бустинга" отлично отрабатывает.

Лектор на синтетике сравнивает ариму и ансамбль линрег+дерево.

В задачах на временные ряды декомпозиция на тренд, сезонность и остаточные нерегулярный сигнал очевидна и необходима, но можно посмотреть на проблему в общем - классы моделей имеют свои ограничения (деревянные модели регрессии, к примеру, плохо моделируют линейные зависимости), и обучение модели одного класса на невязках модели другого класса способно показать отличные результаты.

В то же время, сейчас самыми распространёнными методами ансамблирования являются стэкинг (когда для моделей последующего уровня меняется признаковое пространство) и гомогенный бустинг (например, градиентный над деревьями в catboost/xgboost/lightgbm), а вот идею бустинга гетерогенного как будто никто и не рассматривает, и как будто бы нет опенсорсных реализаций.

Истоки такого предубеждения, похоже, растут из ранних статей о бустинговом подходе над "слабыми моделями" (weak learners). Выбор именно слабых моделей аргументировался контролем переобучения, равномерностью шагов процесса обучения, фокусом на сложных для предсказания примерах (которые более сильная модель могла бы просто запомнить).

Мне кажется, "слабость" и одинаковость участников ансамбля не всегда благо, и на практике есть смысл в каждой конкретной задаче проверять (на CV) наиболее выгодный подход к ансамблированию, от простого усреднения моделей и ensemble selection (который мы недавно рассматривали) до стэкинга и двух видов бустинга, одно- и разнородного.

На этот год планирую сравнительное исследование )

Видимо, относительно небольшая статья о том, как стать лучше в DS, которую я подготовил, столкнувшись с неспособностью современных библиотек градиентного бустинга хорошо смоделировать простую зависимость Y=X, вырастет в большое сравнение алгоритмов ансамблирования.

Постараюсь захватить Ensemble Selection (1, 2, 3), опции ансамблирования рассмотренные в #kagglebook (1, 2, 3), и Cascade Generalization/Cascading/Delegating (or Selective Routing)/Arbitrating.
🔥4👍1
#ensembling #tabm #anns

Из интересного:

эмбеддинги непрерывных признаков позволяют лучше учиться - выучивают "высокочастотные" зависимости, делают сеть НЕинвариантной к поворотам
ансамбли оптимизируются как единое целое, синхронно по итерациям


https://www.youtube.com/watch?v=qpdGUFF7vsI
👍1
#hpo #hpt #optuna

Приятное интро в Оптуну, с примерами, в т.ч. пруннинга. Вообще у него классный ютуб-канал по ML/DS, такие темы отличные поднимает, и очень продуктивный лектор.

https://www.youtube.com/live/QejQVLkkgRA?si=eiBKOrAQ6bbt4y24
#sklearn

А вот пример роутинга метаданных в sklearn, появившийся относительно недавно. Раньше подобных эффектов (передачи произвольных именованных массивов/объектов любым компонентам конвейера) можно было достичь лишь частично, с использованием глобальных переменных, что к тому же было ненадёжно, неэлегантно и криво.

https://www.youtube.com/watch?v=lQ_-Aja-slA
🔥1
#nlp #pca #dimreducers

Интересный рецепт: блок, дающий разреженные (sparse) признаки, после него PCA, дающий на выходе уже разумное количество плотных (dense) признаков.

https://www.youtube.com/watch?v=x7RX8VprCnE