Самостоятельный пакет или система ?




Нейросети: современное оружие финансовых баталий.

Михаил Болдырев

“...стреляйте, только тихо! "

(Солдат Швейк)

Нейросетевые технологии, применяемые в финансовом анализе, давно перестали быть модной экзотикой и вызывать недоумение специалистов. От вопросов " а нужно ли это? " аналитики, ответив “да, нужно!" постепенно перешли к вопросам “как же это все-таки работает и как выбрать подходящий инструмент?" В мире накоплен громадный опыт применения нейросетей, сто из ста западных финансовых и промышленных компаний применяют нейротехнологии в том или ином виде. В России же еще год назад найти приличный нейропакет было весьма непросто. Однако к настоящему времени барьер недоверия сломлен, появились обнадеживающие результаты решения различных аналитических задач с элементами нейротехнологий в условиях суровой российской действительности. Сегодня аналитики могут выбрать себе систему построения прогнозов соответственно своему вкусу, кругу решаемых задач и финансовым возможностям. Чем стоит руководствоваться при выборе того или иного программного продукта в бурных волнах программного рынка? Если мы рассмотрим набор предложений, то обнаружим, что различные научно-ориентированные издания типа каталога PC Select снабдят вас информацией о десятках и сотнях разнообразных нейросистем. Специализированные издания вроде каталога Wall Street & Technology Byer’s Guide ограничат ваш выбор уже полутора десятками. А крупные западные банки класса City Bank of New York почему-то останавливают свой выбор на единицах, в числе которых, например, система Ward System. Это позволяет сделать вывод о существовании для аналитических продуктов некоторого набора специфических требований, выполнение которых является практическим программным стандартом.

Давайте посмотрим на примере системы Ward System. возможности современных нейросистем, ориентированных на решение задач финансового анализа и планирования.

Как ЭТО работает?

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

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

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

Самостоятельный пакет или система?

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

Ward System представляет собой именно систему создания нейросетей, состоящую из трех функционально независимых модулей: конструктор сетей Neuro Shell, оптимизатор с использованием генетических алгоритмов Genetic Hunter (поставляется как приложение под Excel 5(6)), набор библиотек для разработки приложений Neuro Windows, содержащий библиотеки для C, Visual Basic, Access, Excel и 32-битных приложений. В качестве опций также поставляются блок построения технических индикаторов и batch-процессор для обработки приложений.

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

На рисунке показан внешний вид модуля Neuro Shell: процесс решения задачи.

А что внутри?

Нейросети.

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

Ward System содержит 15 нейросетевых алгоритмов, объединенных в 5 основных групп. Стоит обратить внимание на наличие “сетей Кохоненна”, незаменимых для решения задач кластерного анализа, сетей со стохастическими алгоритмами обучения (прекрасно обучаемых на неполных данных, каковые, увы, встречаются в России весьма часто) и двух вариантов рекуррентных сетей, включая оригинальную технологию Ward, обладающих свойством “ассоциативной памяти” и прекрасно решающих задачи временных прогнозов.

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

Конвертеры.

Все современные нейропродукты содержат ту или иную систему конвертеров, позволяющих пользоваться данными, подготовленными в популярных исходных форматах. Ward System может импортировать текстовые файлы, таблицы, подготовленные в Excel и Lotus, двоичные файлы известного формата, а также данные в формате Meta Stock. Стоит заметить, что Meta Stock - не только программный продукт, но и формат деловой информации, популярный во всем мире и славящийся высокой компактностью данных в сочетании с надежностью их передачи. По наличию конвертера Meta Stock вообще можно судить о степени проработанности аналитического продукта. Итак, продуманная система конвертеров сама по себе избавляет вас от большой головной боли в деле подготовки данных.

Работа с текстами.

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

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

Задание правил в явном виде.

Представьте другую задачу: часть правил, которыми вы пользуетесь, уже задана явно. И неплохо бы предъявить эти праила для обучения нейросети. С другой стороны, представление результатов работы в нейросети в виде чисел также не всегда удобно и может потребовать дополнительных преобразований данных. Для случаев, когда вы располагаете правилами, которые можно представить в виде "если... - то... иначе...”, в системе Ward System предусмотрена возможность задания таких правил и до работы нейросети, и после. Таким образом можно задавать различные ограничивающие и решающие условия в процессе решения задачи данным инструментом.

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

Оптимизация решений с помощью генетических алгоритмов пакета Genetic Hunter.

Применение генетических алгоритмов в процессах оптимизации решений, а также их совместная работа с нейросетями детально описана в специальной литературе по финансовому анализу и является предметом отдельного разговора. Вкратце заметим, что Genetic Hunter, являясь самостоятельным продуктом, окажет вам большую помощь в деле обработки оптимизационных процессов. Особенность такого типа алгоритмов - поиск субоптимальных решений с заданной степенью точности. То есть метод работает весьма быстро по сравнению с разновидностями градиентного спуска и в то же время достаточно точно по сравнению с методами случайного поиска. Существует также набор весьма оригинальных технологий оптимизации входных данных до их обработки нейросетью.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-04-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: