← Вернуться к списку

Как выполнить раннюю классификацию событий временных рядов с небольшим набором данных?

Краткое содержание

Я хотел бы построить бинарный классификатор реального времени, который может предсказывать событие интереса, как только оно начинается. Это электромиографические сигналы, и классификация события должна быть способна классифицировать событие как можно раньше. Это происходит потому, что следующий этап алгоритма должен принять решение до конца события. Я не знаю, какой алгоритм / подход здесь использовать. Я предполагаю, что RNN с ячейками LSTM справится с задачей, но набор данных довольно мал, поскольку физиологические сигналы собирать непросто. Я видел множество алгоритмов, которые разбивали сигналы (из обучающего набора) на окна и помечали каждое окно как событие интереса, если хотя бы часть события содержится в окне. Затем каждое окно подается в алгоритм машинного обучения. После этого предсказание использует скользящее окно в реальном времени. Но этот подход не учитывает временной аспект события, поскольку нет связи между каждым окном, которое видит алгоритм машинного обучения. У вас есть...

Полный текст

Как выполнить раннюю классификацию событий временных рядов на небольшом наборе данных? Задать вопрос

Спрошено 5 лет назад Изменено сегодня Просмотрено 635 раз

0 $\begingroup$ Я хочу построить бинарный классификатор реального времени, который может предсказывать интересующее событие, как только оно начинается. Это электромиографические сигналы, и классификация событий должна быть способна классифицировать событие как можно раньше. Это необходимо для того, чтобы следующий этап алгоритма мог принять решение до конца события. Я не знаю, какой алгоритм/подход здесь использовать. Я предполагаю, что RNN с ячейками LSTM справится с задачей, но набор данных довольно мал, поскольку физиологические сигналы собирать непросто. Я видел множество алгоритмов, которые разбивали сигналы (из обучающего набора) на окна и помечали каждое окно как интересующее событие, если хотя бы часть события содержалась в этом окне. Затем каждое окно подавалось в алгоритм машинного обучения. Затем предсказание использует скользящее окно в реальном времени. Но этот подход не учитывает временной аспект события, так как нет связи между каждым окном, которое видит алгоритм машинного обучения. Есть ли у вас советы или ресурсы, которые я мог бы использовать для решения этой проблемы? machine-learning classification ai-design prediction time-series Share Improve this question Follow edited Dec 26, 2020 at 18:13 asked Dec 24, 2020 at 15:20 Hattori 201 2 2 silver badges 7 7 bronze badges $\endgroup$ 0 Add a comment | 1 Answer 1 Sorted by: Reset to default Highest score (default) Date modified (newest first) Date created (oldest first) 0 $\begingroup$ Одна из систем, на которую стоит обратить внимание — это Echo State Networks (ESN). Их относительно дешево обучать, и они могут научиться предсказывать выходные сигналы с произвольной степенью точности. Для обучения системы вам нужно только размеченные обучающие данные. Таким образом, если у вас есть последовательность измерений/значений признаков и соответствующая последовательность меток классов, вы можете обучить и настроить эти системы для вывода требуемой метки класса очень быстро после начала события, закодированного в измеренных значениях признаков. Share Improve this answer Follow answered Dec 25, 2020 at 22:15 Daniel B. 835 1 1 gold badge 6 6 silver badges 14 14 bronze badges $\endgroup$ 4 $\begingroup$ Спасибо! это, кажется, подходит под мои нужды. Я все равно поищу несколько решений, чтобы сравнить их, но я обязательно в этом разберусь. Что вы имеете в виду под «произвольной степенью точности»? Из-за случайно заданных весов в резервуаре? $\endgroup$ Hattori – Hattori 2020-12-27 20:08:18 +00:00 Commented Dec 27, 2020 at 20:08 $\begingroup$ Входные и резервуарные (т.е. рекуррентные) веса действительно назначаются и СОХРАНЯЮТСЯ случайными. Обучаются только выходные веса. Однако существует ряд возможных «трюков» (мотивированных некоторой теорией), которые можно использовать для повышения точности соответствия сигнала, генерируемого ESN, целевому выходному сигналу. Именно эту изменчивость в качестве результата я в основном имел в виду под «произвольной степенью точности». См., например, это практическое руководство. $\endgroup$ Daniel B. – Daniel B. 2020-12-27 20:31:39 +00:00 Commented Dec 27, 2020 at 20:31 $\begingroup$ спасибо за ссылку! Последний вопрос. Способны ли ESN справляться с шумом (например, с белым гауссовым шумом)? Мои данные — это электромиографические сигналы, которые обычно имеют низкое отношение сигнал/шум, так как события часто имеют низкую амплитуду (но никогда не опускаются ниже SNR 1). $\endgroup$ Hattori – Hattori 2020-12-27 22:22:59 +00:00 Commented Dec 27, 2020 at 22:22 $\begingroup$ На самом деле, я пока не являюсь экспертом в использовании ESN. В подготовке к некоторому проекту я немного играл с ними, и мне рассказали об их больших возможностях. Поэтому я предполагаю, что определенно стоит попробовать их и посмотреть, будут ли вещи работать так, как ожидается, или нет. Приятно то, что базовая модель реализуется очень быстро, а время обучения невелико из-за того, что часто модели, получаемые через линейную ре...