📉 Аугментация временных рядов
Сегодняшние достижения в области ИИ просто невозможно представить без больших объемов данных (для обучения DALL-E использовались 250 млн пар картинка-описание, это очень много!). Вот области компьютерного зрения (CV) и обработки естественного языка (NLP) в основном не страдают от недостатка больших датасетов (корпусов текстов, наборов изображений и тд). Но в области временных рядов ситуация не такая радужная.
При этом не всегда важно собирать огромный датасет из реальных примеров текстов и изображений, хотя это и идеальный сценарий. Иногда можно аугментировать данные, то есть искусственно создать или синтезировать примеры, что может помочь в отсутствии больших датасетов. Понаучней определение аугментации возьмем из обзора: “The basic idea of data augmentation is to generate synthetic dataset covering unexplored input space while maintaining correct labels.”
Если рассмотреть аугментацию на примере изображений, то одним из простейших методов будет геометрическое преобразование: зеркальное отражение картинки (по вертикали или горизонтали) или поворот на 90/180/270 градусов. Это уже увеличивает количество доступных данных для обучения в 2 и более раза. В текстах можно переставлять слова в предложении. Подробнее об аугментации этих типов данных, включая подходы, код и библиотеки, можно почитать по ссылкам: CV и NLP
Но вернемся к временным рядам: и здесь опять все не очень хорошо. Аугментировать их сложнее, потому что, датасеты не такие большие и сильно отличаются между собой в зависимости от задачи и доменной области. Более того, в научных статьях постоянно пишут, что область аугментации временных рядов недоисследована. Это косвенно подтверждается и малым количеством open-source разработок для аугментации временных рядов в противовес CV и NLP. Но есть пара неплохих обзоров (раз, два) методов аугментации временных рядов. Обзоры совсем свежие — 2021-22 годов, немного по-разному классифицируют методы. В последнем, например, выделяют 3 основные группы:
• Классические преобразования (представлены на картинке в следующем посте)
• VAE
• GAN
Для деталей стоит почитать оригинальный обзор.
Из инструментов для аугментации временных рядов на python встречал только два:
• [3,4k звезд на гитхабе] https://github.com/timeseriesAI/tsai
• [300 звезд на гитхабе] https://github.com/arundo/tsaug
Post #20
1.63K
- 👍 10
- ❤ 3
- 🔥 3