Масштабирование данных (MinMaxScaler и StandardScaler) перед передачей их в рекуррентную нейронную сеть и их влияние на вывод - PullRequest
0 голосов
/ 30 августа 2018

У меня есть временной ряд со значениями в диапазоне <0, 1000>, и я провел три эксперимента.

  • в первом я передавал исходные значения в RNN

  • во втором я использую MinMaxScaler () с диапазоном по умолчанию 0-1

  • в третьем я использовал StandardScaler ()

Я заметил странную аномалию, когда RNN должен был предсказывать серию нулей в моем временном ряду. С исходными данными все получилось правильно, и я ожидал аналогичного поведения во время других экспериментов, но вместо этого прогнозы были намного хуже. Ниже приведены изображения, представляющие результаты трех экспериментов (красный - прогноз, черный - реальный):

неизменный набор данных

MinMaxScaler () используется

StandardScaler () используется

Мы можем наблюдать огромную разницу в нулевых значениях. Я ожидал, что подобные результаты не имеют значения, использую ли я масштабирование или нет. Почему это так? Кто-нибудь может объяснить, как метод взлома может повлиять на производительность нейронной сети? Я хочу добавить второй канал (с двоичными значениями), и мне нужно как-то масштабировать его. Как с этим бороться?

...