Forex: просто о сложном Анализ рынка Форекс Торговля на Forex Технический анализ Форекс Forex-инвестиции Торговые стратегии Форекс Лучшие брокеры Форекс
Forex: просто о сложном Технический анализ Форекс Лучшие брокеры Форекс
В данной книге рассмотрены методы построения и обучения нейронных сетей. Описаны наиболее распространенные виды сетей и их применение к таким расчетам на финансовом рынке, как расчет цен опционов, оценка индексов акций и управление международным портфелем.

   Наши партнеры:   Альпари   NPBFX   Just2Trade   Intrade.bar

   Наши партнеры:
Just2Trade   Альпари   RoboForex

Программа лояльности лучшего Форекс-брокера – компании «Альпари». Более 2 млн. клиентов из 150 стран. На рынке – с 1998 года. Выгодные торговые условия, ECN-счета с доступом к межбанковской ликвидности и моментальным исполнением, спреды – от 0 пунктов, кредитное плечо – до 1:1000, положительные отзывы реальных трейдеров.

Способы обеспечения и ускорения сходимости

Один из лучших Форекс-брокеров 2024 года – компания «NPBFX». Банковский Форекс. На рынке – с 1996 года. До 2016 года обслуживание всех клиентов осуществлялось от лица банка с лицензией Банка России (АО «Нефтепромбанк»). В начале 2016 года был проведен ребрендинг и перевод обслуживания частных клиентов в международную компанию «NPBFX Limited» с лицензией IFSC. В банке продолжается обслуживание корпоративных клиентов.

Выбор начальных весов

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

Классический подход к проблеме выбора начальных значений весов состоит в следующем: случайным образом выбрать малые величины весов, чтобы быть уверенным, что ни один из сигмоидных элементов не насыщен (и значения всех производных очень малы). Например, если сигмоидный элемент имеет наибольшую производную в интервале [-3.3], подходящим выбором для начального веса будет случайное число, расположенное в интервале |-3/VN,3/ JN], где N— число входов нейрона. Из-за малости величины начального веса последующие его изменения также будут небольшими, так как при этом учитывается абсолютная величина веса. Таким образом, нужно найти компромисс между существенными изменениями в значениях сигмоидов и малостью абсолютных величин.

Подобные правила рассчитаны на то. чтобы сеть начинала свою работу в линейном режиме и притом не на плоской части поверхности невязок. Однако нет гарантии, что такое начальное приближение приведет к глобальному минимуму или уменьшит время сходимости. Были разработаны другие методы, дающие еще более хорошее начальное приближение с точки зрения уменьшения времени обучения и обладающие большей устойчивостью в смысле локальных минимумов. Так, Дено и Ланжель разработали метол инициализации весов по прототипам, полученным из обучающего множества. Усовершенствованный классический метод Выбора начальных значений использует данные анализа главных компонент, но для этого, безусловно, требуется меньше скрытых элементов, чем имеется входов. При использовании обучающих алгоритмов типа ВР выбор начального приближения очень важен. Уже на этом шаге нужно позаботиться о том, чтобы не попасть в локальный минимум.

Обход локальных минимумов

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

Упорядочение данных

Для того чтобы обучающий алгоритм не стал двигаться в ложном направлении, нужно, прежде всего, упорядочить случайным образом последовательность примеров, которые он обрабатывает (так называемое "взбалтывание"). Это не так существенно для «эпохального» варианта ВР, но очень важно при стохастическом определении весов. Всякая программная реализация алгоритма типа ВР должна, включать в себя случайное упорядочение обучающего множества. Более того, если какой-то из классов примеров представлен недостаточно, случайный выбор должен осуществляться таким образом, чтобы примеры из слабо представленной группы встречались чаще — этим будет устранен ложный крен при минимизации невязки. В гл. 8 читатель найдет иллюстрирующий пример.

Пакетная обработка

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

Импульс

Другой часто применяемый прием состоит в том, что при определении направления поиска к текущему градиенту добавляется поправка — вектор смешения с предыдущего шага, взятый с некоторым коэффициентом. Можно сказать, что учитывается уже имеющийся импульс движения. Окончательная формула для изменения весов выглядит так:

где ц — число в интервале (0, 1), которое задается пользователем.

Часто значение ц волевым образом задается равным 0.9, безотносительно к специфике задачи и архитектуре сети. Нужно отметить, что метол импульса очень чувствителен к способу упорядочения примеров я обучающем множестве. Если подряд попалось несколько примеров из одного класса, импульс станет очень большим, и это нарушит ход процесса обучения. Сказанное еще раз свидетельствует о необходимости предварительного случайного упорядочения обучающего множества.

Управление величиной шага

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

Изменение производной сигмоида

Другой давно известный вычислительный трюк состоит в том, чтобы изменить величину производной сигмоида, умножив его на некоторую малую величину (обычно 0,1) с целью предотвратить «прилипание» к плоскому участку. Опыт, однако, показывает, что этот прием следует применять с осторожностью, так как он может порождать "вынужденную" сходимость в неправильном направлении.

Методы второго порядка

При более последовательном подходе для улучшения процесса обучения можно использовать информацию о производных второго порядка от функции невязки Соответствующие методы оптимизации называются квадратичными. Вся указанная информация собрана в матрице гессиана Н, имеющей размеры Nw x Nw, где Nw — число весов. Эта матрица содержит информацию о том, как изменяется градиент при малых смещениях по различным направлениям в пространстве весов.

Содержание Далее

«Приветственный» бонус в размере $30 от одного из лучших Форекс-брокеров – компании «RoboForex»

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

Forex: просто о сложном

Литература по биржевой торговле:

Бестенс Д. и др. Нейронные сети и финансовые рынки

Ван Тарп и др. Биржевые стратегии игры без риска

Грант К. Управление рисками в трейдинге

Моррис Г. Японские свечи

Пайпер Д. Дорога к трейдингу

Резго Г.Я., Кетова И.А. Биржевое дело

Рэдхэд К., Хьюс С. Управление финансовыми рисками

Сафонов В. Трейдинг. Дополнительное измерение принятия решений

Торговая система Woodies CCI

Торговая стратегия «Трейдинг без головной боли»

Тощаков И. Forex: игра на деньги. Стратегии победы

Хатсон Дж. Метод Вайкоффа

Черепков А. Теория длинных волн Н.Д. Кондратьева

Элдер А. Как фиксировать прибыль, ограничивать убытки и выигрывать от падения цен

Лучший Форекс-брокер – компания «Альпари». Более 2 млн. клиентов из 150 стран. На рынке – с 1998 года. Выгодные торговые условия, ECN-счета с доступом к межбанковской ликвидности и моментальным исполнением, спреды – от 0 пунктов, кредитное плечо – до 1:1000, положительные отзывы реальных трейдеров.