Классификация временных рядов — важная задача в области интеллектуального анализа данных, которая включает в себя маркировку и прогнозирование точек данных, расположенных во времени. Этот тип данных широко существует во многих областях, таких как финансы, здравоохранение, промышленность и т. д., поэтому классификация временных рядов имеет большое значение для поддержки принятия решений и разработки систем.
При классификации временных рядов данные временных рядов сначала необходимо собрать и предварительно обработать, а затем преобразовать в векторы признаков, которые можно использовать для классификации с помощью технологии извлечения признаков. Затем векторы признаков обучаются с использованием соответствующего алгоритма классификации для построения модели классификации, которая может точно предсказывать новые метки данных. Наконец, производительность модели оценивается и оптимизируется для повышения точности классификации. Проблемы классификации временных рядов заключаются в динамическом характере, высокой размерности и помехах данных, поэтому крайне важно выбрать подходящие методы извлечения признаков и алгоритмы классификации.
В этой статье обобщаются и представлены три метода классификации времени, которые широко использовались в последние годы и получили широкое внимание: Rocket, MiniRocket и MultiRocket.
Rocket
Адрес статьи: https://arxiv.org/abs/1910.13051
Исходный код статьи: https://github.com/angus924/rocket.
01
краткое содержание
Большинство методов классификации временных рядов, которые достигают самой современной точности, имеют высокую вычислительную сложность, требуют значительного времени на обучение даже для небольших наборов данных и трудно применимы для больших наборов данных. Более того, многие существующие методы фокусируются только на одном типе характеристик, таких как форма или частота. Опираясь на недавние успехи сверточных нейронных сетей в классификации временных рядов, мы показываем, что простой линейный классификатор, использующий рандомизированные сверточные ядра, достигает высочайшей точности при незначительной вычислительной нагрузке существующих методов.
02
представлять
В отличие от обученных ядер, используемых в типичных сверточных нейронных сетях, мы показываем, что эффективно генерировать большое количество случайных ядер, которые в сочетании могут фиксировать функции, важные для классификации временных рядов. Исследователи предлагают метод под названием Rocket (RandOm Convolutional KErnel Transform)。Долженметод Используйте случайные ядра свертки для преобразования временных рядовданные Первое преобразование,Преобразованные признаки затем обучают линейный классификатор. Впервые такой метод появился в UCR archive Он достигает наилучших результатов на наборе данных и требует меньше времени на обучение, чем существующие методы. Общее время вычислений на 85 наборах данных составляет 1 час 40 минут, тогда как метод cBOSS требует 19 часов 33 минуты, а InceptionTime Сеть занимает 6 дней.
03
метод
Rocket преобразует временные ряды, используя большое количество случайных ядер свертки, то есть ядер свертки со случайной длиной, весом, смещением, расширением и заполнением. Преобразованные признаки используются для обучения линейного классификатора. Комбинация Rocket и логистической регрессии эффективно формирует однослойную сверточную нейронную сеть со случайными весами ядра, где преобразованные признаки формируют входные данные для обученного слоя softmax.
По сравнению со сверточными слоями в типичных сверточных нейронных сетях и предыдущими работами, использующими сверточные ядра (включая стохастические ядра) для обработки временных рядов, Rocket отличается в четырех аспектах:
Rocket предоставляет возможность случайной установки ядра свертки. Конкретные параметры включают {Длина, Вес, Смещение, Расширение, Заполнение, Шаг}. Пожалуйста, смотрите исходный текст для конкретных методов настройки. Кроме того, Rocket критически использует долю положительных значений (или ppv) для суммирования результатов карты объектов, позволяя классификатору взвешивать популярность шаблонов в данном временном ряду.
04
ограничение
Во-первых, ограничением Rocket является то, что для достижения хорошей точности классификации требуется большое количество ядер свертки. Второе ограничение заключается в том, что при использовании фиксированных случайных ядер свертки для очень больших наборов данных обучение может в какой-то момент «насытиться». Предполагается, что по мере увеличения набора данных точность существенно не улучшится. Наконец, Rocket в настоящее время предназначен только для одномерных данных временных рядов, а расширение многомерных временных рядов и применение Rocket к очень большим наборам данных находятся в центре внимания будущей работы.
MiniRocket
Адрес статьи: https://arxiv.org/abs/2012.08791.
Исходный код статьи: https://github.com/angus924/minirocket.
01
краткое содержание
Исследователи предложили новый метод MiniRocket на основе Rocket. Для больших наборов данных MiniRocket работает в 75 раз быстрее, чем Rocket, и является почти детерминированным (возможно, полностью детерминированным), сохраняя при этом практически ту же точность. Используя такой подход, все 109 наборов данных в архиве UCR можно обучить и протестировать за 10 минут, достигнув высочайшей точности классификации.
MiniRocket значительно быстрее, чем любой другой метод с аналогичной точностью (включая Rocket), и значительно точнее, чем другие методы с аналогичными вычислительными затратами.
02
представлять
Как и Rocket, MiniRocket преобразует входные временные ряды с помощью сверточных ядер и обучает линейный классификатор с использованием преобразованных функций. Однако, в отличие от Rocket, MiniRocket использует небольшой фиксированный набор ядер и почти детерминирован. MiniRocket поддерживает два наиболее важных аспекта Rocket: расширение и PPV. MiniRocket использует различные свойства ядер и PPV, чтобы значительно сократить время, необходимое для преобразования. MiniRocket показывает, что, хотя рандомизированные ядра свертки очень эффективны, по существу той же точности можно достичь, используя в основном детерминированную и более быструю процедуру.
03
метод
MiniRocket включал в себя внесение ключевых изменений, чтобы удалить почти всю случайность из Rocket, и использование этих изменений для значительного ускорения конверсий.
и
04
Преимущества и недостатки
MultiRocket
Адрес статьи: https://arxiv.org/abs/2102.00457.
Исходный код статьи: https://github.com/ChangWeiTan/MultiRocket.
01
краткое содержание
MultiRocket — это быстрый алгоритм классификации временных рядов (TSC), который обеспечивает высочайшую точность за чрезвычайно короткое время без сложной структуры ансамбля, свойственной многим современным инструментам. Мульти Рокет Улучшите разнообразие функций за счет добавления нескольких операций объединения и преобразований, превосходя при этом один из самых быстрых на сегодняшний день алгоритмов классификации временных рядов. Мини Ракета. Помимо обработки необработанных входных последовательностей, MultiRocket Исходная последовательность также преобразуется путем применения первых разностей. Свертка применяется к обоим представлениям, а к выходным данным свертки применяются четыре операции объединения. При сравнении с использованием набора эталонных данных Riverside TSC Калифорнийского университета, MultiRocket. Точность значительно выше, чем MiniRocket и на данный момент самый точный метод HIVE-COTE Версия 2.0 сопоставима, хотя и на несколько порядков быстрее.
02
представлять
MultiRocket основан на MiniRocket и использует тот же базовый набор, что и MiniRocket. Есть два основных различия.
Один из них MultiRocket Преобразуйте временные ряды в первые разности. Тогда исходный временной ряд и временной ряд первой разности равны 84. MiniRocket Ядро выполняет свертку. Каждое представление использует свой набор расширений и смещений, поскольку оба представления имеют разную длину (первые различия короче 1) и диапазоны значений (значения смещения, выбранные в выходных данных свертки).
Во-вторых, помимо PPV, MultiRocket Также добавлены 3 дополнительные операции объединения для увеличения разнообразия и различительной способности извлеченных функций. Сочетание этих преобразований существенно улучшает MiniRocket классификационная способность. По умолчанию Мульти Рокет Для каждого временного ряда генерируется примерно 50 000 признаков (в частности, 6216×2×4). Для простоты при обсуждении чисел функций мы округляем числа до ближайших 10 000 на протяжении всей статьи. Наконец, преобразованные признаки используются для обучения линейного классификатора.
03
метод
MultiRocket Усыновить MiniRocket Та же операция свертки. Но была добавлена новая сильная функция: LongStretch_above_0: рассчитывается самый длинный период последовательных значений, больших нуля. Эта функция аналогична PPV, поскольку чем больше значений выше нуля, тем дольше возможное время работы последовательных значений выше нуля. Однако он также собирает информацию о временном порядке вывода свертки.
По сути, MultiRocket обеспечивает более высокую точность классификации за счет большего количества комбинаций функций.
Подвести итог
Rocket методна на основе Для извлечения признаков используется ядро случайной свертки, а эффективная и точная классификация временных рядов достигается за счет большого количества случайных признаков и линейных классификаторов. Мини Ракета метод находится в Rocket Улучшения были сделаны на основе использования меньшего количества ядер свертки и более простого метода извлечения признаков, что значительно снизило вычислительную сложность и потребление памяти, сохранив при этом высокий уровень классификации. Мульти Рокет метод дополнительно расширен Rocket и MiniRocket идея, путем интеграции нескольких независимых Rocket или MiniRocket Модель для повышения производительности классификации. Эти методы хорошо работают при обработке крупномасштабных, многомерных и сложных данных временных рядов, обеспечивая эффективное и практичное решение задач классификации временных рядов.