Обучите нелинейную авторегрессивную нейронную сеть (NAR) и предскажите на новых данных временных рядов. Предсказание последовательности значений во временных рядах также известно как многоступенчатое предсказание. Сети с обратной связью могут выполнить многоступенчатые предсказания. Когда внешняя обратная связь отсутствует, сети с обратной связью могут продолжить предсказывать при помощи внутренней обратной связи. В предсказании NAR будущие значения временных рядов предсказаны только от прошлых значений того ряда.
Загрузите простые данные о предсказании временных рядов.
Создайте сеть NAR. Задайте задержки обратной связи и размер скрытых слоев.
Подготовьте данные временных рядов с помощью preparets
. Эта функция автоматически переключает вход, и целевые временные ряды количеством шагов должны были заполнить начальный вход и состояния задержки слоя.
Методические рекомендации должны полностью создать сеть в разомкнутом контуре, и затем преобразовать сеть к замкнутому циклу для многоступенчатого вперед предсказания. Затем сеть с обратной связью может предсказать столько будущих значений, сколько вы хотите. Если вы симулируете нейронную сеть в режиме с обратной связью только, сеть может выполнить столько же предсказаний сколько количество временных шагов во входном ряду.
Обучите сеть NAR. train
функция обучает сеть в разомкнутом контуре (последовательно-параллельная архитектура), включая валидацию и тестирующие шаги.
Отобразите обучивший сеть.
Вычислите сетевой выход Y
, итоговые состояния ввода Xf
, и последний слой утверждает Af
из сети разомкнутого контура от сетевого входа Xs
, начальные состояния ввода Xi
, и начальные состояния слоя Ai
.
Вычислите производительность сети.
Чтобы предсказать выход для следующих 20 временных шагов, сначала симулируйте сеть в режиме с обратной связью. Итоговые состояния ввода Xf
и состояния слоя Af
из сети net
разомкнутого контура
станьте начальными состояниями ввода Xic
и состояния слоя Aic
из сети netc
с обратной связью
.
Отобразите сеть с обратной связью. Сеть имеет только один вход. В режиме с обратной связью этот вход соединяется с выходом. Прямая задержанная выходная связь заменяет задержанный целевой вход.
Чтобы симулировать сеть 20 временных шагов вперед, введите массив пустой ячейки длины 20. Сеть требует только начальных условий, данных в Xic
и Aic
.
Yc =
1x20 cell array
Columns 1 through 5
{[0.8346]} {[0.3329]} {[0.9084]} {[1.0000]} {[0.3190]}
Columns 6 through 10
{[0.7329]} {[0.9801]} {[0.6409]} {[0.5146]} {[0.9746]}
Columns 11 through 15
{[0.9077]} {[0.2807]} {[0.8651]} {[0.9897]} {[0.4093]}
Columns 16 through 20
{[0.6838]} {[0.9976]} {[0.7007]} {[0.4311]} {[0.9660]}