Скачать MetaTrader 5

Нейронные сети. Вопросы экспертам.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
На MQL5.community есть возможность хранить исходные коды в MQL5 Storage. Попробуй сам!
alexey
125
alexey 2009.12.25 21:36 

Господа, доброго времени суток. Вопрос к экспертам в области нейро сетей. Суть такова. Установил statisctica и начал свои исследования с автоматических нейронных сетей. Многослойный перспетрон. Поставил перед собой задачу понять на сколько нейро сети умные в плане поиска закономерностей. Что сделал я? Взял самый обычный ЛВСС (линейно взвешанная средняя) за 20 последних баров. В качестве таргета (выхода) дал последнее значение ЛВСС, на вход падал 20 последних точек, от которых и зависит текущее значение ЛВСС. Понятно, что человек зная последние 20 точек и формула расчета ЛВСС смогу бы на 100% восстановить ее значение. Сетка формулы не знала и ее задача была понять ее своими способами. Результат – стека восстановила ЛВСС на 100%, т.е. поняла как ЛВСС устроена. Будем считать, что с задачей она справилась прекрасно, т.е. если закономерность есть, то сеть действительно ее находит. Дальше был проделан аналогичный эксперимент с ЕМА, ПСС и осцилляторами. Результат тот же. 100%. После этого я решил усложнить задачу. Я взял адаптивную среднюю. Напомню, что она меняет параметр усреднения в зависимости от волатильности рынка. Волатильность в свою очередь рассчитывается за определенное кол-во баров. Даю на вход все необходимые бары для построения АСС и запускаю сетку. Результат был намного хуже чем 100%, хотя человек зная формулу АСС и обладая всеми точками смог бы построить АСС на 100%. Фактически сеть не справилась с задачей, речь идет об автоматических нейро сетях.

 

Вывод и собственно вопросы к экспертам в данной области.

 

1)      Правильно ли я понял, что нейро сеть не способна восстановить функцию, если ей присуща динамика как в случае с АСС, даже располагаю всеми необходимыми данными для расчета, т.к. если формула жестка статична, как в случае с ЛВСС или ЕМА, то проблем не возникло.

2)      Если я не прав, то какие сети необходимо использовать? И использовал MLP в статистике.

3)      Я слышал мнение, что авто сети и сети собственной э…. конструкции, если так можно сказать нет принципиально большой разницы. Так ли это на самом деле?

4)      Какие сети и какие программы Вы посоветуете для применения на фин рынках, в частности для той задачи, которую я описал, т.е. восстановить значения по всем известным данным.

 

С уважением, mrstock

Artem Titarenko
3936
Artem Titarenko 2009.12.25 22:47  

1) Сеть способна восстановит функцию если во входных данных это есть. Если в последнем опыте значение периода зависит от волатильности, то сетке надо было дать какую то оценку эой волатильности, т.е. возможно Вы не все необходимые данные для восстановления подали на вход.

2)Из MLP можно выжать всё что нужно. Используйте другие сети когда математически сможете доказать что применение другой архитектуры лучше чем MLP.

3)NS2 - быстро, результат качественный, легко переносится куда угодно...

Sceptic Philozoff
Модератор
17844
Sceptic Philozoff 2009.12.25 23:28  

Основная проблема даже не в этом. Ну ОК, Вы научили сетку понимать, что 2х2=4, и даже что простой мувинг - это среднее арифметическое цен. А как Вы научите сетку прогнозировать? Вот тут главный вопрос об умственных способностях сетки и возникает.

alexey
125
alexey 2009.12.26 00:50  
Я с Вами полностью согласен, но на том этапе на котром я нахожусь сейчас и те задачи, которые решаю мне нужно имеено то, о чем я говорил. На скриншоте у нас цена, ЕМА(фиолетовое) и динимаческое сс, ЕМА восстанавливается идеально подавая на вход только close, а вот красную среднюю - никак. Причем, если подогнать результаты, которые в итоге вне выборки обучения не имеют смысла, то все ок! Что сделать не знаю? NS2-это нейросолюшен я так понял?
alexey
125
alexey 2009.12.26 00:51  
Хм... файл не крепится почему-то. сейчас попробую разобраться в чем причина.
alexey
125
alexey 2009.12.26 00:52  

alexey
125
alexey 2009.12.26 00:52  
Вот, все получилось.
Леонид
5841
Леонид 2009.12.26 00:53  
StatBars писал(а) >> 3)NS2 - быстро, результат качественный, легко переносится куда угодно...

Интересно, какой критерий остановки обучения вы используете в NS2?

Artem Titarenko
3936
Artem Titarenko 2009.12.26 02:14  
LeoV писал(а) >>

Интересно, какой критерий остановки обучения вы используете в NS2?

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

Леонид
5841
Леонид 2009.12.26 12:04  
StatBars писал(а) >> Ошибка на тестовой перестаёт уменьшаться...

По моему мнению, когда ошибка на тестовой перестаёт уменьшаться это скорее всего уже переобучение. Как ведёт себя сеть на ООС, с такой минимальной ошибкой на тестовой?

Artem Titarenko
3936
Artem Titarenko 2009.12.26 12:20  
LeoV писал(а) >>

По моему мнению, когда ошибка на тестовой перестаёт уменьшаться это скорее всего уже переобучение. Как ведёт себя сеть на ООС, с такой минимальной ошибкой на тестовой?

При правильном подборе нейронов абсолютно также как и на обучающей, даже больше - на выборке в 200 000 один и тот же рез-ат, причём обучающая выборка намного меньше(более чем в 5 раз).

Т.е. иногда за счёт подбора нейронов удаётся сравнять ошибки тестовой и обучающей.

При неправильно подборе нейронов, ошибка на тестовой немного больше но сохраняется на всей "генеральной" выборке.

12345678...25
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий