Прогнозирование при помощи nntool/nnstart

2 сообщения / 0 новых
Последнее сообщение
Прогнозирование при помощи nntool/nnstart

Здравствуйте, меня интересует задача прогнозирования числовых значений, хотелось бы узнать как используя готовые toolbox matlab (nntool/nnstart) это можно использовать. Приведу пример на простой зависимости y=x^2, так в нем удобнее тестировать и обучаться. Допустим у нас есть массив чисел входных значений х=[1 2 3 4 5 6 7 8 9], и выходных значений y=[1 4 9 16 25 36 47 64 81]. Цель задачи: определить какое значение "х" будет, если выходное значение будет равняться 100 (y=100). Возможен ли такой вариант прогнозирования, или возможен лишь вариант только чему будет равняться "y" при х=10.

Предлагать рассматривать варианты написания кода программы для решения задач прогнозирования  не нужно. Необходимо использование именно nntool/nnstart.

Проблемма заключается в том, как после обучения сети, получить это заветное прогнозируемое число.

 

К данной теме хотелось бы сразу обратиться еще по нескольким вопросам:

1) Какие типы нейронной сети лучше подходят для решения задач прогнозирования (в частности прогнозирования такого рода)?

2) Как зависит количество нейронов в слое, от количества входных параметров?

3) От чего зависит выбор количества слоев в выбранной сети?

 

Очень надеюсь на вашу помощь. Сердечно Благодарю!

Добрый день!

Добрый день!

Quote:
Возможен ли такой вариант прогнозирования, или возможен лишь вариант только чему будет равняться "y" при х=10.

В таком случае вам стоит просто переобозначит x и y и вы получите не y=x^2, а y = sqrt(x). Тогда, имея x = 100, вам нужно будет найти y = 10. Сразу замечу: я не использую встроенные функции MATLAB, с nntool/nnstart не работала, так что дать рекомендации по использованию данных функций не могу.

Quote:
1) Какие типы нейронной сети лучше подходят для решения задач прогнозирования (в частности прогнозирования такого рода)?

Про такого рода прогнозирование не могу сказать наверняка. Дело в том, что если вам нужно найти функцию, которая связывает две величины x и y, то не прогнозирование, это совершенно другая постановка задачи. Если функция эта сложная, то имеет смысл попробовать нейронные сети. Что касается нейронных сетей для прогнозирования, то наиболее часто применяемые — трехслойные сети прямого распространения. Короче, самые простые — они же самые эффективные.

Quote:
2) Как зависит количество нейронов в слое, от количества входных параметров?

Здесь нельзя дать общую корректную оценку. В моих моделях прогнозирования временных рядов электричества соотношение примерно такое: входной слой : скрытый слой : выходной слой = 3-5 : 2-4 : 1, т.е. на одно выходной значение у меня примерно от 2 до 4 значений в скрытом слое и от 3 до 5 значений во входном слое. В вашем случае придется определить это соотношение самому.

Quote:
3) От чего зависит выбор количества слоев в выбранной сети?

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

----------------------
Ирина Чучуева,
команда Математического бюро

2010 - 2018 © Математическое бюро

Все права защищены в соответствии с законодательством РФ

При полном или частичном использовании материалов ссылка на сайт обязательна