Прогнозирование котировок валют с использованием нейронных сетей
Рассмотрение метода прогнозирования стоимости валют с использованием нейронных сетей, строящихся с использованием библиотеки Encog на языке программирования C#. Разработка программного продукта, описание его структуры. Обзор аналогичных приложений.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 29.06.2018 |
Размер файла | 1,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Прогнозирование котировок валют с использованием нейронных сетей
Зашеловский Арсений Евгеньевич, бакалавр, студент
Лясин Дмитрий Николаевич, кандидат наук, доцент, доцент
В статье рассмотрен метод прогнозирование стоимости валют с использованием нейронных сетей, строящихся с использованием библиотеки Encog на языке программирования C#. Проведен обзор аналогов, описана структура разработанного приложения.
Объектом исследования выступает процесс прогнозирования. Существует множество методов прогнозирования. Самыми популярными и наиболее используемыми являются методы экспертных оценок, фактографические методы, моделирование и пр. Метод экспертных оценок -- является обоснованным и аргументированным суждение одного или группы экспертов о перспективах развития наблюдаемого объекта (данный метод часто имеет применение в экономике). Фактографические методы являются экстраполяцией, заключающейся в изучении тенденций прошлого и проецирование этих тенденций в будущее. Моделированием является построение уменьшенной копии (модели) объекта и проведение над построенной моделью ряда экспериментов, получение результатов, на основе которых делают заключение о оригинальном объекте.
С появлением искусственных нейронных сетей (ИНС) появился еще один способ прогнозирования -- прогнозирование с использованием нейронной сети. ИНС появились в конце первой половины 1900-х годов. В 1943 году были разработаны У. МакКаллоком и У. Питтсем первые математические модели нейронных сетей, послужившие основой для развития в этом направлении.
Актуальность прогнозирования объясняется тем, что знание прогноза в различных областях помогает в управлении в рассматриваемой области. Например, знание экономических прогнозов является одним из факторов успешного развития бизнеса, развития экономики предприятия, организации, государства и т.д. Осведомленность о прогнозах погоды упрощает ведение сельскохозяйственной деятельности.
Искусственная нейронная сеть в том виде, в котором она существует в настоящее время, способна успешна решать четыре рода задач:
распознавание образов (видео, фото, аудио и др.);
классификация;
кластеризация;
прогнозирование.
Существуют известные программные продукты, позволяющие работать с нейронной сетью и использовать её для решаемых её задач. Задачи прогнозирования способны решать следующие системы:
matlab;
deductor;
neuro shell traider;
statistica;
brainmaker;
Matlab, deductor и statistica являются мощными инструментами, задачи которых не ограничиваются одной лишь возможностью работы с нейронными сетями. Они направлены на большой спектр задач, и для работы с этими системами необходимы определенные знания, навыки, умения и опыт работы с этими (или подобными) системами. Необходимость опыта, знаний, навыков и умений можно отнести к минусам.
Также, большим минусом приведенных выше программных продуктов является лицензия несвободного использования, или, иначе говоря -- платность продуктов.
В таблице ниже приведено сравнение рассматриваемых программных аналогов по пятибалльной шкале, где 5 -- высший балл, и 0 -- низший балл. Некоторые критерии (поддержка разработчиком, например, может быть оценена только баллами 0 или 5, где 5 -- поддерживается в настоящее время, 0 -- не поддерживается. Необходимо заметить, что данные оценки глубоко субъективны и являются видением автора данной статьи.
Таблица 1. сравнение аналогов разработанной системы
Критерий оценки |
Matlab |
Deductor |
Neuro shell traider |
Statistica |
Brainmaker |
|
Цена |
2 |
2 |
3 |
0 |
3 |
|
Простота использования |
1 |
2 |
4 |
2 |
4 |
|
Наличие пробной версии |
0 |
5 |
0 |
5 |
0 |
|
Наличие официального сайта |
5 |
5 |
5 |
5 |
0 |
|
Поддержка разработчиком |
5 |
5 |
5 |
5 |
0 |
|
Наличие студенческой версии |
5 |
5 |
0 |
5 |
0 |
|
Средний балл |
3 |
4 |
2,8 |
3,6 |
1,1 |
Искусственная нейронная сеть в простейшем ее представлении имеет некоторое количество нейронов, соединенных между собой. Модель искусственной многослойной нейронной сети представлена на рисунке ниже. Входной слой -- это тот слой, на который поступает вектор входного сигнала. Скрытый слой расположен между входным и выходным слоем, в нем происходит основная работа с данными. Выходной слой выводит результаты работы нейронной сети.
Рисунок 1 -- модель искусственной нейронной сети (a -- входной слой, b -- скрытый слой, c -- выходной слой)
Разработанная программная система направлена на процесс прогнозирования. Для пользования системой нет необходимости в опыте работы с подобными программными продуктами, потенциальный пользователь сможет разобраться с порядком необходимых действий в течении некоторого непродолжительного времени. На рисунках ниже будет общее описание системы на унифицированном языке UML.
прогнозирование нейронный валюта программирование
Рисунок 2. Диаграмма иерархии процессов
Рисунок 3. Общая диаграмма прецедентов
Рисунок 4. Общая IDEF0 диаграмма
С разработанной программой были проведены эксперименты, скриншоты работы программы, а также конечные результаты отображены ниже.
Рисунок 5. внесение данных в разработанную программную систему
Рисунок 6. Настройка нейронной сети
Таблица 2. Сравнение полученных прогнозных результатов с реальными
Дата |
Реальные данные |
RPT (Activation Log) |
RPT (Activation sigmoid) |
RPT (Activation TANH) |
QPROP (Activation TANH) |
SCG (Activation TANH) |
|
02.06.2018 |
62,2056 |
60,8231 |
65,6109 |
65,6109 |
65,6110 |
63,2510 |
|
03.06.2018 |
62,2056 |
60,8700 |
65,6615 |
65,6615 |
65,2727 |
63,2510 |
|
04.06.2018 |
62,2056 |
60,5095 |
65,2727 |
65,2727 |
64,6385 |
63,1120 |
|
05.06.2018 |
62,2056 |
59,9215 |
64,6384 |
64,6384 |
64,6385 |
62,7832 |
|
06.06.2018 |
61,9290 |
59,9215 |
64,6384 |
64,6384 |
64,6385 |
62,1941 |
|
07.06.2018 |
61,9822 |
59,9215 |
64,6384 |
64,6384 |
64,3692 |
61,9492 |
|
08.06.2018 |
62,0064 |
59,6719 |
64,3691 |
64,3691 |
64,5636 |
62,0129 |
Рисунок 7. Схема нейронной сети разработанной системы (Состоящая из одного входного слоя, содержащего 100 нейронов; 10 скрытых слоев, содержащих в себе 50 нейронов в первом входном слое и 41 в последнем; одного выходного слоя). Частный случай.
Рисунок 8. Схема нейронной сети разработанного приложения. Общий случай
Самым эффективным прогнозом оказался случай, при котором типом обучения был метод сопряженных градиентов, и функция активации TANH (гиперболическая функция активации касательной). Разница с реальными данными в этом случае расходилась всего, на 1.6 %, что является, несомненно хорошим результатом, но тем не менее недостаточно точным.
Заключение
В ходе выполнения выпускной квалификационной работы была разработана система, делающая прогнозы на основе нейронных сетей. Поскольку прогнозирование является очень актуальным, данную систему необходимо развивать и совершенствовать для получения еще более точных прогнозов.
Список литературы
Jeff Heaton, Programming Neural Networks with Encog3 in C#// Heaton Research, Inc. St. Louis, MO, USA, 2011
Алгоритм нейронной сети [Электронный ресурс]. - Режим доступа: https://msdn.microsoft.com/ru-ru/library/ms174941%28v=sql.120%29.aspx?f=255&MSPPError=-2147217396 Дата обращения: 09.06.2018
Искусственная нейронная сеть [Электронный ресурс]. - Режим доступа: https://ru.wikipedia.org/wiki/Искусственная_нейронная_сеть. Дата обращения: 09.06.2018.
Размещено на Allbest.ru
...Подобные документы
Технологии решения задач с использованием нейронных сетей в пакетах расширения Neural Networks Toolbox и Simulink. Создание этого вида сети, анализ сценария формирования и степени достоверности результатов вычислений на тестовом массиве входных векторов.
лабораторная работа [352,2 K], добавлен 20.05.2013Анализ применения нейронных сетей для прогнозирования ситуации и принятия решений на фондовом рынке с помощью программного пакета моделирования нейронных сетей Trajan 3.0. Преобразование первичных данных, таблиц. Эргономическая оценка программы.
дипломная работа [3,8 M], добавлен 27.06.2011Нейронные сети как средство анализа процесса продаж мобильных телефонов. Автоматизированные решения на основе технологии нейронных сетей. Разработка программы прогнозирования оптово-розничных продаж мобильных телефонов на основе нейронных сетей.
дипломная работа [4,6 M], добавлен 22.09.2011Исследование задачи и перспектив использования нейронных сетей на радиально-базисных функциях для прогнозирования основных экономических показателей: валовый внутренний продукт, национальный доход Украины и индекс потребительских цен. Оценка результатов.
курсовая работа [4,9 M], добавлен 14.12.2014Прогнозирование валютных курсов с использованием искусственной нейронной сети. Общая характеристика среды программирования Delphi 7. Существующие методы прогнозирования. Характеристика нечетких нейронных сетей. Инструкция по работе с программой.
курсовая работа [2,2 M], добавлен 12.11.2010Исследование эффективности применения нейронных сетей в рамках отношений между людьми. Принцип работы с нейросимулятором. Составление обучающей выборки и проектирование персептронов. Анализ выбора супружеской пары с использованием нейросетевых технологий.
презентация [150,8 K], добавлен 19.08.2013Проект автоматизированной системы прогнозирования относительного курса валютных пар для международной валютной биржи Forex с использованием нейронных сетей. Требования к техническому обеспечению. Обоснование выбора средств автоматизации программы.
курсовая работа [1,3 M], добавлен 05.01.2013Понятие, закономерности функционирования нейронных сетей, Обзор информационных технологий, программных средств для реализации соответствующих алгоритмов. Детальное описание особенностей выполнения демонстрационного примера, составление программного кода.
курсовая работа [551,3 K], добавлен 09.04.2015Разработка Windows-приложений с использованием библиотеки MFC. Базовый набор классов, написанных на языке С++ и предназначенных для упрощения процесса программирования под Windows. Фундаментальные идеи объектно-ориентированного программирования.
курсовая работа [348,1 K], добавлен 02.07.2011Описание технологического процесса напуска бумаги. Конструкция бумагоделательной машины. Обоснование применения нейронных сетей в управлении формованием бумажного полотна. Математическая модель нейрона. Моделирование двух структур нейронных сетей.
курсовая работа [1,5 M], добавлен 15.10.2012Понятие искусственного нейрона и искусственных нейронных сетей. Сущность процесса обучения нейронной сети и аппроксимации функции. Смысл алгоритма обучения с учителем. Построение и обучение нейронной сети для аппроксимации функции в среде Matlab.
лабораторная работа [1,1 M], добавлен 05.10.2010Применение нейрокомпьютеров на российском финансовом рынке. Прогнозирование временных рядов на основе нейросетевых методов обработки. Определение курсов облигаций и акций предприятий. Применение нейронных сетей к задачам анализа биржевой деятельности.
курсовая работа [527,2 K], добавлен 28.05.2009Теоретические основы написания Windows-приложений с использованием библиотеки MFC. Основы программирования под Windows. Проектирование приложений в среде Microsoft Visual C++. Описание логической структуры приложения, его функциональное назначение.
курсовая работа [1,3 M], добавлен 12.12.2011Анализ нейронных сетей и выбор их разновидностей. Модель многослойного персептрона с обучением по методу обратного распространения ошибки. Проектирование библиотеки классов для реализации нейросети и тестовой программы, описание тестирующей программы.
курсовая работа [515,4 K], добавлен 19.06.2010Способы применения технологий нейронных сетей в системах обнаружения вторжений. Экспертные системы обнаружения сетевых атак. Искусственные сети, генетические алгоритмы. Преимущества и недостатки систем обнаружения вторжений на основе нейронных сетей.
контрольная работа [135,5 K], добавлен 30.11.2015Виды сделок на рынке драгоценных металлов. Основы нейросетей и нейросетевого моделирования. Проектирование и разработка приложения с использованием искусственного интеллекта для решения задач по прогнозированию цен на рынке драгоценных металлов.
дипломная работа [3,6 M], добавлен 30.06.2012Общие сведения о принципах построения нейронных сетей. Искусственные нейронные системы. Математическая модель нейрона. Классификация нейронных сетей. Правила обучения Хэбба, Розенблатта и Видроу-Хоффа. Алгоритм обратного распространения ошибки.
дипломная работа [814,6 K], добавлен 29.09.2014Основные отличия нейросетей от других методов. Неформализуемые и трудно формализуемые задачи. Моделирование интеллектуальной деятельности человека. Оценка стоимости квартир в Перми с использованием нейронных сетей. Проектирование и обучение нейросети.
презентация [139,4 K], добавлен 14.08.2013Задача анализа деловой активности, факторы, влияющие на принятие решений. Современные информационные технологии и нейронные сети: принципы их работы. Исследование применения нейронных сетей в задачах прогнозирования финансовых ситуаций и принятия решений.
дипломная работа [955,3 K], добавлен 06.11.2011Понятие и свойства искусственных нейронных сетей, их функциональное сходство с человеческим мозгом, принцип их работы, области использования. Экспертная система и надежность нейронных сетей. Модель искусственного нейрона с активационной функцией.
реферат [158,2 K], добавлен 16.03.2011