Нейро сети - страница 12

 
registred >>:
Люблю я все таки эту тему.:) Сколько же я с ней намучился в свое время, еще до forex-а.:)

А Ваши мучения принесли долгожданный результат в виде повышения личного материального состояния посредством успешного создания и применения в жизни советника на нейросетях? А то мож лажа всё это. :)

 
StatBars >>:

Значений чего выходов, входов?

Сколько учительских значений лучше использовать для обучения нейросети? Например если возможных действий на реакции сети будет четыре. Если использовать 4 значения, я заметил, ошибка больше, чем если сгладить значения средней. А оптимально сколько? В прикреплённом файле слева фактические выходы, справа значения, на которых сеть обучалась.


Файлы:
 
Burgunsky >>:

А Ваши мучения принесли долгожданный результат в виде повышения личного материального состояния посредством успешного создания и применения в жизни советника на нейросетях? А то мож лажа всё это. :)


Кохонен да, иногда помогает. BackProp - учитель нужен. Пробовал обучать, результат в минус. Нужно знать, где брать учителя. Сколько не читал статеек - бред один. Поэтому выкинул его на помойку. Может быть я ошибаюсь и вам кто-нибудь другой здесь подскажет по поводу backprop-а. Кстати, есть некоторые интересные вещи у Макаренко, Головко, например, в лекциях по нейроинформатике МИФИ, советую почитать.

 
registred писал(а) >>

Нужно знать, где брать учителя.

А самому написать -- никак?

 
Swetten >>:

А самому написать -- никак?


Если есть предложения по поводу выходов сети, то есть учителя, прошу изложи свое видение ситуации. Я не смог добиться результата. По началу казалось все круто, потом пошел слив.

 
Небольшой вопрос к общественности.
Я тут с помощью скриптика попробовал поискать противореречивые входные вектора. Если входной вектор с заданным отклонением или полностью совпадает с другим вектором, смотрится что говорит учитель на этих барах. Если говорит прямопротивоположные результаты - входы противоречивы. На входах индюк АО, учитель - аналог МРР из диплома Иванова. Так вот, если отклонение задать не равным нулю, а чуть-чуть побольше ( например 0,5), скрипт находит очень много противоречивых векторов. Если отклонение сделать ещё побольше, находит ещё больше, и т.д. Т.е. получается каждый вектор полностью индивидуален. Так как же можно пытаться объединять вектора в группы схожих в таком случае, как делает сеть кохонена???
 
Burgunsky >>:
Небольшой вопрос к общественности.
Я тут с помощью скриптика попробовал поискать противореречивые входные вектора. Если входной вектор с заданным отклонением или полностью совпадает с другим вектором, смотрится что говорит учитель на этих барах. Если говорит прямопротивоположные результаты - входы противоречивы. На входах индюк АО, учитель - аналог МРР из диплома Иванова. Так вот, если отклонение задать не равным нулю, а чуть-чуть побольше ( например 0,5), скрипт находит очень много противоречивых векторов. Если отклонение сделать ещё побольше, находит ещё больше, и т.д. Т.е. получается каждый вектор полностью индивидуален. Так как же можно пытаться объединять вектора в группы схожих в таком случае, как делает сеть кохонена???

Да не в том дело, что каждые вектор индивидуален или нет. Дело в том каким образом сам вектор составлен. Поймите, нейросеть - это всего лишь инструмент интерпретации данных, она не есть "вумный искусственный интеллект", которому скорми чего хочешь и она сама все поймет. НС работает по самому примитивному правилу условного рефлекса воздействие->реакция. Именно поэтому показываете сигналы АО вы ей, или любого другого индикатора, или вообще своего гороскопа - ей не важно; если исходный сигнал не содержит полезной информации, сеть из него ничего не вытащит. Вот подумайте, показали вы ей, скажем штук двадцать отсчетов АО. А теперь представьте, сколько различных вариантов рыночных ситуаций могли привести к формированию такой (или "почти такой" - в терминах корреляции) последовательности. Даже их всего два (предельный случай) - вероятность, что они дадут диаметрально противоположные исходы отнюдь не ничтожна. А если их больше? И вообще, откуда ей знать, АО вы ей показали или АС или график солнечной активности??? Отсюда и берутся т.н. "противоречивые вектора" - из необработанности данных, ведь т.н. противоречивость на самом деле говорит о том, что сеть, а точнее математическая модель, которую она описывает просто не может принять решения в данной ситуации по причине отсутствия достаточных аргументов.

Не тратьте время на обучение сетей на голой цене и линейных индикаторах типа АО - это пройденный этап, огромным числом экспериментов доказана его как минимум неприбыльность. Копайте в нелинейную сторону, выделяйте главные компоненты, и т.д. Сеть будет успешно работать только тогда, когда она анализирует имеющие смысл данные - а смысл в них вложить может только голова программиста (не обязательно она одна - к ней можно навесить и различные технические инструменты).

 
to alsu: А нелинейные данные - это неодносортные данные? Можете привести пример нелинейнрсти, а то я недогоняю как это применить в данном случае. Вообще моя математическая модель сети получилась какая-то линейная, т.к. после настройки имеет только две версии выходов.
 
Burgunsky >>:
А нелинейные данные - это неодносортные данные?

я бы скорее сказал, отражающие в определенной степени глубинную суть происходящих процессов, а не их внешние проявления. Что есть у трейдера для начала? Есть поток новостей, поток цен, поток объемов (действительно, данные неодносортные). Причем если последние два объекта уже так сказать "математизированы" - выражены в числах, то с новостями задача усложняется - их надо, во-вервых, добыть, а во-вторых как-то формализовать (ну, это отдельная тема, здесь недавно даже ветка была по этому поводу).

Итак, наша задача - показать нейросети все это в удобоваримом виде. То есть представьте попугая, которого сто лет учили определенным образом отзываться на вполне конкретные фразы, например словами "покупай" "продавай" и "сидикури". Вполне очевидно, что в качестве примеров ему целесообразно предъявлять предложения вида "за последние Н дней цена вела себя так-то и так-то (с такого по такое-то росла, потом падала, потом - обрати, Попка, особое внимание - нарисовала такую-то фигуру), при этом объемы сделок были такими-то, при этом рынок реагировал на такие-то новости, которые выходили тогда-то и тогда-то, и все это творится на фоне такой-то тенценции" - и в его попугайской башке через упомянутые сто лет - может, даже неосознанно - будет формироваться картина рыночной ситуации, после чего он с определенной долей вероятности будет выдавать правильный ответ. Если же мы будем рассказывать ему, что "вчера цена была такая, позвачера такая, и тд в течение месяца", он просто не будет знать, за что зацепиться, поскольку на его крошечный мозг тяжелым грузом ляжет задача выделения в однородном потоке информации значимых элементов. Таким образом он в лучшем случае будет иметь смутное представление о том, на что же ему все-таки ориентироваться при принятии решения, а если мы еще к тому же будем ему слишком усердно раздавать подзатыльники за неправильные ответы (читай, обучение с учителем :), он, бедняга и вовсе потеряется и из процесса обучения выйдет полным неучем.


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


Выделение существенного - и отбрасывание несущественного - это я и понимаю под нелинейной обработкой.

 
полезно задуматься над таким вопросом. допустим у нас есть нейросеть, которую обучили на определенных входных сигналах давать правильные ответы в 90 процентах случаев (сорос отдыхает). Вот если она попадет в руки постороннему человеку, то сможет он ей воспользоваться? очевидно нет, так как информация о том, какие нужны входы и как интерпретировать выходы содержится не в сети, а в голове ее создателя. Таким образом, хотя сеть и обучена, но оказывается бесполезной. Еще раз повторюсь. НС - это всего лишь инструмент (имхо, ничем не лучший и не худший других имеющихся в наличии), иметь его и знать, как им воспользоваться - это совсем разные вещи.
Причина обращения: