Нейронная сеть в виде скрипта - страница 3

 
sprite:
kombat:
Что-то логика этого скрипта напоминает простой шифратор 4в2

Шифратор - не обучаемая система .

А сеть в этом скрипе обучается . Причем процесс обучения показан в динамике от эпохи к эпохе на экране .

Видно как меняются веса нейрончиков в каждом слое, и как сетка все точнее и точнее выдает результат по мере обучения .

Выше представлены три поста, где один и тотже алгоритм научился

работать с тремя разными наборами данных .

В случае шифратора - потребовалось бы три шифратора, под каждый набор данных .

я чуточку доработал алгоритм обучения

1-е динамически меняя количество нейронов что то типа ГЕНЕТИЧЕСКОГО АЛГОРИТМА правда без выбора лучших и без создания от них потомства :-) без коррекции связей

2-е остановка обучения при достижении высокой точности результатов

 
YuraZ:

я чуточку доработал алгоритм обучения

1-е динамически меняя количество нейронов что то типа ГЕНЕТИЧЕСКОГО АЛГОРИТМА правда без выбора лучших и без создания от них потомства :-) без коррекции связей

2-е остановка обучения при достижении высокой точности результатов



А доработанного варианта для публики не будет?

 
YuraZ:
sprite:
kombat:
Что-то логика этого скрипта напоминает простой шифратор 4в2

Шифратор - не обучаемая система .

А сеть в этом скрипе обучается . Причем процесс обучения показан в динамике от эпохи к эпохе на экране .

Видно как меняются веса нейрончиков в каждом слое, и как сетка все точнее и точнее выдает результат по мере обучения .

Выше представлены три поста, где один и тотже алгоритм научился

работать с тремя разными наборами данных .

В случае шифратора - потребовалось бы три шифратора, под каждый набор данных .

я чуточку доработал алгоритм обучения

1-е динамически меняя количество нейронов что то типа ГЕНЕТИЧЕСКОГО АЛГОРИТМА правда без выбора лучших и без создания от них потомства :-) без коррекции связей

2-е остановка обучения при достижении высокой точности результатов


Ну вот !!! Лед тронулся ! :))))

 
Vinin:
YuraZ:

я чуточку доработал алгоритм обучения

1-е динамически меняя количество нейронов что то типа ГЕНЕТИЧЕСКОГО АЛГОРИТМА правда без выбора лучших и без создания от них потомства :-) без коррекции связей

2-е остановка обучения при достижении высокой точности результатов



А доработанного варианта для публики не будет?

Конечно, хотелось бы взглянуть .Может кто еще что добавит :)


Что касается точности, я думаю цель не в этом .

Цель в том, что бы сеть в конце обучения отличала все обучающие наборы

между собой . А это доступно и при нормальной точности .


Как показали эксперименты этой сети хватает 300 эпох обучения, что бы научится "думать"

с приведенными выше наборами . Да это видно и визуально в процессе тренировки,

сеть быстро начинает различать наборы данных .


А вот динамически менять число нейронов - интересно было бы посмотреть уже в эксперте на тестах,

в который будет встроена эта сетка . А число нейронов подобрать в оптимизаторе МТ .

 
Topor:

А как сделать, чтобы он цену прогнозировал?

Никак. Не нужно ожидать чуда от нейросети. Прогноз задаётся не НС, а заложенным в неё алгоритмом, алгоритм строится из торговых условий, а торговые условия .... определяете ВЫ.

 
sprite:
kombat:

Не ПРОТИВ но пока и не ЗА применения нейросетей в трейдинге...

Аналогично :) !!!

Но алгоритм работает и обучается :) А там уж видно будет :)


Интерес к сетям еще подогрет победой советника с сетью на чемпионате .

Конечно, там другая сеть . Но человек проделал работу и получил результат .


Вопрос не в том какая сеть, а что вы хотите от нее получить. И результат был получен не благодаря НС, а благодаря торговым условиям, которые эта НС скомпоновала и выдала в некий вероятносный прогноз. НС по сути фильтр, который может быть адаптивным (самообучаемая НС) и соответственно иметь запаздывание (на период обучения). Достоинство НС в том, что она может разрозненные компоненты вашей ТС соединить в один результат и самостоятельно расставить коэффициенты значимости для этих компонентов (обучится).

 
Vinin:
YuraZ:

я чуточку доработал алгоритм обучения

1-е динамически меняя количество нейронов что то типа ГЕНЕТИЧЕСКОГО АЛГОРИТМА правда без выбора лучших и без создания от них потомства :-) без коррекции связей

2-е остановка обучения при достижении высокой точности результатов


А доработанного варианта для публики не будет?

Виктор, будет


кстати добился повышения точности прогноза в разы! беда в том что алгоритм наал достаточно долго обучаться :-)))

пока не решил эту проблемку - решу обязательно выложу сюда этот код!

мне нехватает кода вываливания по таймеру! а не по условию а в MQL4 этого нет

 
Xadviser:
Topor:

А как сделать, чтобы он цену прогнозировал?

Никак. Не нужно ожидать чуда от нейросети. Прогноз задаётся не НС, а заложенным в неё алгоритмом, алгоритм строится из торговых условий, а торговые условия .... определяете ВЫ.

А не встречались достойные алгоритмы ???

Хотябы пару слов о них .

 
Xadviser:
Topor:

А как сделать, чтобы он цену прогнозировал?

Никак. Не нужно ожидать чуда от нейросети. Прогноз задаётся не НС, а заложенным в неё алгоритмом, алгоритм строится из торговых условий, а торговые условия .... определяете ВЫ.

Гуру советуют предсказывать не цену, а изменение .

 
YuraZ:

нормализовывать не всегда нужно, кто сказал что сеть МОЖЕТ и ДОЛЖНА работать только с 0 и 1 ?


могу прикрепить простую сетку с примером, (к сожалению сейчас под рукой нет материалов) - попозже прикреплю

где простая NN решает эту задачу без предварительной подготовки данных с нормализацией

к сожалению это не исходник


впрочем пример который я дал! он как бы уже нормализован

условие есть два диапазона


1 0-100

2 10-30


необходимо просто найти отношение положения в одном диапазоне - которое известно к

по сути это масштабирование

Нормализация нужна практически всегда. Данные должны находиться в пределах области определения ф-ции активации.

В скрипте сигмоид [-1;+1]. Если заменить скажем на экспоненциальную ... или квадратный корень.


http://www.statsoft.ru/home/portal/applications/NeuralNetworksAdvisor/Adv-new/ActivationFunctions.htm

Причина обращения: