Я пытаюсь применить вейвлет-преобразование Хаара к данным фондового рынка для уменьшения шума перед подачей данных в RNN (LSTM). Поскольку эти данные представлены в 1D, я использую одноуровневое DWT следующим образом:
import pywt
x = [3, 7, 1, 1, -2, 5, 4, 6, 1,11,34,44,66,888,33,455,10000,33]
cA, cD = pywt.dwt(x, 'haar')
У меня есть следующие вопросы:
- Используя одноуровневый DWT, мой временной ряд уже сократился наполовину в cA и cD. Я понимаю, что каждый элемент cA и cD относится к 2 элементам исходного временного ряда. Это все здорово, но как я могу сопоставить выходные массивы с исходной серией?
- Когда нам нужно делать многоуровневую декомпозицию? Кроме того, по мере увеличения уровня выходные массивы становятся меньше, и поэтому, опять же, я не могу сопоставить эти «очищенные от шума» данные с исходными временными рядами.
- Что между cA и cD следует использовать в качестве вывода этого преобразования для подачи в RNN?
Я прочитал так много высокоуровневых статей о ценности вейвлет-преобразований, но почти ни в одной из них не рассматривается фактический код. Поэтому любой пример кода будет наиболее ценен.
Наилучшие пожелания,
Адиль