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. В банке продолжается обслуживание корпоративных клиентов.

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

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

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

Все это подчеркивает важность этапа предварительной обработки данных. Чем более компактно представлены характеристики образцов, тем меньше зависимость от настраиваемых параметров сети (0 или 1).

Кодирование на выходе

Задача двоичной классификации может быть решена на сети с одним выходным элементом, который может находиться в состоянии 0 или 1. Для задачи с многими классами нужно разработать способ записи (кодирования) выхода. Один возможный способ состоит в том. чтобы кодировать к классов с помощью k-мерных наборов, приписывая i-й компоненте значение 1, если исследуемый образец принадлежит i-му классу, и 0— в противоположном случае. Такой способ часто называют бабушкиным кодированием. Другой способ работы с многими классами — разбить задачу с k классами на k(k-1) подзадач, содержащих только по два класса. Окончательное присваивание элементу i-го номера класса осуществляется несложной булевой функцией, на вход которой подаются выходы подзадач. В этом случае число выходных элементов с ростом k растет как k2.Это так называемое 2-на-2 кодирование часто оказывается лучше, чем бабушкин метод. Рис. 2.2 иллюстрирует проблему кодирования выхода на примере двумерной задачи с тремя классами. С помощью 2-на-2 кодирования задача классификации решается, тогда как в бабушкином методе кодирования необходимо строить нелинейные разрешающие границы.

Объем сети

Правильный выбор размера сети имеет важное значение. Хорошую, и притом очень маленькую, модель построить просто невозможно, а слишком большая будет чересчур сильно приспосабливаться к обучающим данным и плохо аппроксимировать настоящую задачу. Обычно начинают с сети небольшого размера и постепенно увеличивают ее, пока не будет достигнута нужная точность. При этом обучение сетей на каждом шаге проводится независимо. При Другом подходе применяется «алгоритм самонаращивания», когда по мере возникновения необходимости и сеть добавляются новые элементы, после чего заново происходит обучение (Stepnct, см. [106]). Упомянем также метод каскадной корреляции. Совершенно другая идея лежит в основе деструктивного подхода: вначале берется сеть завышенного объема и из нее удаляются связи и узлы, существенно не влияющие на решение (см., например. [174]). При этом предполагается, что известна верхняя граница для размера сети, — чаще всего ее, действительно, можно считать известной. При этом полезно иметь в виду «правило», согласно которому число весов всегда должно быть меньше, чем число обучающих примеров, — иначе сеть будет "привыкать" к данным, т.е. попросту запоминать их, и утрачивать способность к обобщению. Если априорные знания о задаче малы или отсутствуют, объем требуемой сети неизвестен. Например, когда разрешающая граница имеет сферическую форму (один класс внутри другого), число скрытых элементов, необходимых для аппроксимации границы, будет многочленом от N (размерности пространства входов). Для каких-то других задач может потребоваться экспоненциальное число узлов в сети, и наоборот, может оказаться, что задача большой размерности решается с помощью простых границ, составленных из отрезков.

Однако правильный выбор объема сети — это еще не все. Надо определить значения всех весов, т.е. сеть должна «научиться» осуществлять нужное отображение. Для этого нужно выбрать эффективный алгоритм обучения. Самое простое здесь — взять классический алгоритм обратного распространения. Однако, часто более эффективными оказываются методы второго порядка. В последнее время было предложено большое количество новых алгоритмов, уменьшающих время обучения и отбрасывающих субоптимальные решения.

Выбор архитектуры сети

Обычно опробуется несколько конфигураций с различным числом элементов и структурой соединений. Одними из наиболее важных показателей являются объем обучающего множества и обеспечение способности к обобщению при дальнейшей работе, и нужного результата можно достичь на различных схемах Чаще всего используются процедуры последовательного спуска (с подтверждающим множеством) или N-кратного перекрестного подтверждения. Могут быть применены и более мощные информационные критерии (IC): обобщенное перекрестное подтверждение (GOV), итоговая ошибка предсказания Акаике (FPE), критерии Байеса (BIC) и Акаике (AIC) (см. [103]). Для того чтобы улучшить способности к обобщению и устранить опасность переобучения, применяются также уменьшение весов и их исключение (прореживание дерева). При этом изменяется архитектура сети: удаляются некоторые связи и изучается, какое влияние они оказывали на эффективность.

Анализ показателей работы сети

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

В результате обработки поступившего образца классифицирующая модель выдает на выходе некоторое значение. Как правило, эти выходные значения бывает необходимо подвергнуть доводке. Например, если класс с номером 2 кодируется выходным вектором (0,1,0), а сеть пылала (0.1,0.6,0.3), то нужно решить, имеются ли достаточные основания причислить объект ко 2-му классу.

«Настройка» классификатора обычно бывает основана на пороговых правилах и/или сравнении расстояний между значениями целевых показателей. Нужно помнить, что нейронная сеть с прямой связью и сигмоидными выходами выдает ответ в непрерывном виде, обычно в интервале от 0 до 1 в зависимости от того, как располагаются разделяющие гиперплоскости скрытых элементов. Однако, даже если на выходе используются не апостериорные вероятности, а какая-либо более простая решающая функция, имеется возможность выдать надежный ответ. Настраивая критерий отбрасывания, можно уменьшить долю неправильных классификаций за счет повышения доли сомнительных случаев, т.е. таких ситуаций, когда лучше, вообще, не принимать никакого решения, чем принять неправильное.

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

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

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

Сводка действий при построении классификатора

В построении классификатора на основе нейронной сети можно выделить следующие этапы:

1 Данные:

а) Составить базу данных из примеров, характерных для поставленной задачи.
б) Разбить всю совокупность данных на два множества: обучающее и тестовое.

2 Предварительная обработка:

а) Выбрать систему признаков, характерных для данной задачи, И преобразовать данные соответствующим образом для подачи на вход сети (нормировка, стандартизация и т.д.). В результате желательно получить линейно отделимое представление множества образцов.
6) Выбрать систему кодирования выходного значения или значений («бабушкино кодирование», 2-на-2 и др.).

3 Конструирование, обучение и оценка качества сети:

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

4 Использование и диагностика:

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

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

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

Бонусное предложение от одного из лучших Форекс-брокеров – компании «RoboForex»

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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