почему LSTM работает хуже, чем простая нейронная сеть с прямой связью для данных искусственных временных рядов - PullRequest
0 голосов
/ 13 мая 2019

У меня есть искусственный набор данных.Для задачи классификации 2 классов

у меня 2000 экземпляров данных с 500-кратными выборками.Все экземпляры данных являются векторами нулей (500 нулей). Для первых 1000 экземпляров данных я добавил маленький полукруг в середине (200-250) (они называются целями).Затем я добавил шум ко всем экземплярам данных.(Другие 1000 сэмплов без полукруга называются нецелевыми.)

Задача состоит в том, чтобы классифицировать цели из нецелевых.

Я использовал LSTM для этой задачи иЯ получаю 50% точности.Модель ничего не изучает.

Тогда я просто использовал Fully Connected Layers, и точность была 99%….

Я не понимаю, почему LSTM ничего не изучал… Чего мне не хватаетздесь

1 Ответ

0 голосов
/ 13 мая 2019

LSTM предназначены для данных, зависящих от времени, и процесс их обучения обычно намного сложнее, чем у полностью связанных слоев. Даже при том, что LSTM страдают от градиентного исчезновения меньше, чем простые RNN, все еще очень трудно обучаться.

Ваша проблема не гарантирует LSTM. LSTMS полезны, когда последовательность ввода или вывода имеет переменную длину. В вашем случае этого не происходит, и FNN работает просто отлично.

Другое использование LSTM - это когда временной шаг на выходе зависит от предыдущих вероятностно, что опять-таки не ваш случай.

Чтобы проверить LSTM, вы можете попытаться предсказать, например, следующее значение на синусоидальной волне, или попробовать какой-нибудь перевод, NLP и т. Д.

...