Visa или MasterCard? Карту какой платежной системы выбрать? Кто на свете всех богаче? Анализ роста благосостояния в мире.

Нейроавтоматное моделирование — новая технология валютного прогнозирования

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

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

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

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

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

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

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

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

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

Далее нами будет представлено совмещение технологии вероятностно-автоматного моделирования с нейронными сетями, которое мы назвали нейроавтоматным моделированием. Эта технология будет совмещать простоту, наглядность, универсальность и стандартность вероятностно-автоматного моделирования и эффективность, способность к обучению и получению опыта нейронных сетей.

Рассмотрим более подробно структуру искусственного нейрона (Уоссермен Ф. Нейрокомпьютерная техника. М.: Мир, 1992). Под нейроном будем подразумевать ячейку нейронной сети, которая характеризуется своим текущим состоянием, может быть возбуждена или заторможена. Из этого определения прослеживается аналогия с биологическим нейроном, поэтому, чтобы отличать биологический нейрон от его кибернетической модели, последний будем называть искусственным нейроном. Этот нейрон обладает определенной группой входных связей с другими нейронами, которые называются синапсами. Таким образом, с помощью синапсов поддерживается связь входа данного нейрона с выходами других нейронов сети. Аксон обеспечивает выходную связь, когда выходной сигнал данного нейрона действует на входы (синапсы) других нейронов. Таким образом, нейрон имеет такой вид.

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

После того как в нейрон по синапсам поступили сигналы, определяется текущее состояние нейрона как взвешенная сумма его входов.

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

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

Сигмоид лежит в диапазоне от 0 до 1 и его коэффициент усиления выражается наклоном этой кривой при определенном значении внутреннего состояния нейрона. При больших отрицательных и положительных возбуждениях этот наклон очень мал, что позволяет использовать эту функцию для усиления слабых сигналов, и в то же время она практически не изменяет своего значения при больших отрицательных и положительных аргументах, что не препятствует дальнейшему распространению шума. Гиперболический тангенс очень схож своими свойствами с сигмоидом за тем исключением, что областью его значений является интервал (1, –1), т. е. он принимает значения разных знаков. Также эта функция является симметричной относительно начала координат, а в нуле принимает нулевое значение. Это может быть полезно для построения целого ряда сетей.

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

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

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

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

Алгоритмы также делятся на такие два класса, как стохастические и детерминистические. В первом случае подстройка весов сети осуществляется согласно определенному случайному процессу, а во втором — строго регламентирована.

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

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

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

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

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

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

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

Обучение системы происходит по методу обучения с учителем со скоростью m по статистическим данным курса валюты на протяжении некоторого длительного периода, например года.

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

Нина Костина, Сергей Сучок


Купить конвейерные ролики у производителя: выгодные цены от «МегаСервис» Чтобы сделать заказ или получить консультацию нашего специалиста, какие лучше купить ролики конвейерные для вашего производства, оставляйте заявку на сайте или свяжитесь с менеджером компании ООО «МегаСервис» по телефонам +7 (8172) 266-270, +7 (8172) 239-270.

Статьи, интервью, публикации