Выбор признаков для прогнозирования временных рядов

Вопрос или проблема

Я работаю над задачей прогнозирования фондового рынка на основе LSTM и пытаюсь найти способ выбора входных переменных.

  1. При расчете корреляции между переменными (например, цена закрытия акций Tesla против цены закрытия акций Microsoft) даст ли дифференцирование кривых более точный (или правильный) индекс корреляции? Я получаю значения в диапазоне 0,7-0,9 для недифференцированных переменных и более низкие значения после дифференцирования.

  2. После того как у меня будет матрица корреляции всех моих переменных, есть ли способ выяснить, какие из них добавят информацию к нейронной сети, а какие только добавят шум?

Вам не нужно выбирать переменные для подачи в сеть, глубокие нейронные сети (DNN) делают это автоматически. На самом деле DNN придает большее значение релевантным переменным, установив их веса. После установки весов некоторые из скрытых узлов принимают 0, а некоторые 1 (из-за сигмоидной функции). Вы также можете рассматривать эти 1 и 0 как выбор релевантных переменных.

Кстати, матрица корреляции не может быть использована для прямого отбора релевантных переменных. Если вы хотите сократить количество переменных, которые подаются в DNN, вы можете использовать метод главных компонент (PCA). На самом деле компоненты PCA рассчитываются путем получения собственных векторов матрицы корреляции.

Ответ или решение

Выбор признаков для прогнозирования временных рядов с использованием LSTM: Подходы и Рекомендации

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

1. Корреляция переменных

Когда речь идет о корреляции между переменными, такими как закрывающие цены акций Tesla и Microsoft, возникает вопрос: стоит ли предварительно дифференцировать временные ряды?

Дифференциация рядов:

Дифференциация временных рядов зачастую используется для устранения трендов и сезонности. Это позволяет сосредоточиться на изменениях и относящихся к ним данных, тем самым обеспечивая более надежную оценку взаимосвязей между переменными. Если первоначальная корреляция между ценами акций находится в диапазоне 0.7-0.9, то это может указывать на сильную взаимосвязь при наличии различных трендов. Однако, после дифференциации, корреляция, как правило, снижается, что может объясняться тем, что модель теперь анализирует колебания, а не абсолютные значения.

Рекомендации:

  • Исследуйте как не дифференцированные, так и дифференцированные данные: Оцените, как корреляции меняются в результате различной предобработки данных, чтобы выяснить, какая из стратегий лучше подходит для вашей модели.
  • Используйте другие методы оценки взаимосвязи: Помимо корреляции, рассмотрите другие меры, такие как взаимная информация или кросс-корреляция, которые могут предложить более глубокое понимание взаимосвязи между временными рядами.

2. Извлечение значимых признаков

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

Использование матрицы корреляции:

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

Альтернативные методы отбора признаков:

  • Регрессионные методы: Используйте методы снижения размерности, такие как Lasso или Ridge регрессия, которые помогают отбирать и оценивать важность признаков.

  • Методы на основе деревьев: Алгоритмы, такие как Random Forest, могут помочь в отборе значимых признаков, так как они оценивают важность каждого признака на основе их вклада в предсказание.

  • PCA и другие методы снижения размерности: Principal Component Analysis (PCA) позволяет идентифицировать главные компоненты, которые объясняют максимальную дисперсию в данных. Это может помочь упростить модель и убрать менее значимые переменные.

Заключение

Выбор входных переменных для LSTM в прогнозировании временных рядов требует внимательного анализа и применения нескольких методов для обеспечения надежности итоговой модели. Дифференциация временных рядов может снизить корреляцию, но это не всегда означает ухудшение качества модели. Также важно использовать разнообразные инструменты и техники для выбора признаков, чтобы минимизировать шум и повысить точность прогноза. Конечная цель — сформировать мощную модель, способную выявлять скрытые паттерны в данных и делать точные прогнозы.

Оцените материал
Добавить комментарий

Капча загружается...