Ela.kpi.ua



Нац?ональний техн?чний ун?верситет Укра?ни?Ки?вський пол?техн?чний ?нститут ?мен? ?горя С?корського?Факультет ?нформатики та обчислювально? техн?киКафедра обчислювально? техн?ки ?На правах рукопису? ?До захисту допущено?УДК 004.8 Зав?дувач кафедри Ст?ренко С.Г.(п?дпис) (?н?ц?али, пр?звище)“ ” 2019 р. Маг?стерська дисертац?яз? спец?альност?: 123. Комп’ютерна ?нженер?я____________ (код та назва напряму п?дготовки або спец?альност?)Спец?ал?зац?я: 123. Комп’ютерн? системи та мереж?______________ на тему: Система прогнозування економ?чних показник?в Виконав: студент VI курсу, групи ?О-82мп (шифр групи) См?шний Денис Миколайович (пр?звище, ?м’я, по батьков?) (п?дпис)Науковий кер?вник к.т.н., доцент Волокита А.М. (посада, науковий ступ?нь, вчене звання, пр?звище та ?н?ц?али) (п?дпис)Консультант нормоконтроль, д.т.н., професор Кулаков Ю.О. (назва розд?лу) (посада, вчене звання, науковий ступ?нь, пр?звище, ?н?ц?али) (п?дпис)Рецензент (посада, науковий ступ?нь, вчене звання, науковий ступ?нь, пр?звище та ?н?ц?али) (п?дпис) Засв?дчую, що у ц?й маг?стерськ?й дисертац?? нема? запозичень з праць ?нших автор?в без в?дпов?дних посилань.Студент (п?дпис)Ки?в – 2019 рокуНац?ональний техн?чний ун?верситет Укра?ни?Ки?вський пол?техн?чний ?нститут ?мен? ?горя С?корського? Факультет (?нститут) ?нформатики та обчислювально? техн?ки (повна назва)Кафедра Обчислювально? техн?ки (повна назва)Р?вень вищо? осв?ти – другий (маг?стерський) за осв?тньо-профес?йною програмоюСпец?альн?сть 123. Комп’ютерна ?нженер?я (код ? назва)Спец?ал?зац?я 123. Комп’ютерн? системи та мереж?________ (код ? назва) ЗАТВЕРДЖУЮЗав?дувач кафедри Ст?ренко С.Г.(п?дпис) (?н?ц?али, пр?звище)? ? 2019 р. ЗАВДАННЯна маг?стерську дисертац?ю студентуСм?шному Денису Миколайовичу (пр?звище, ?м’я, по батьков?)1. Тема дисертац?? ?Система прогнозування економ?чних показник?в? Науковий кер?вник дисертац?? к.т.н., доцент Волокита А.М. (пр?звище, ?м’я, по батьков?, науковий ступ?нь, вчене звання)затверджен? наказом по ун?верситету в?д ? 28 ? жовтня 2019 р. № 3770 2. Строк подання студентом дисертац?? ___________ __________3. Об’?кт досл?дження процес прогнозування економ?чних показник?в з використанням елемент?в нейронно? мереж? 4. Предмет досл?дження методи анал?зу та обробки економ?чних даних за певний пер?од. 5. Перел?к завдань, як? потр?бно розробити: огляд ?снуючих систем економ?чного анал?зу та прогнозування, огляд метод?в прогнозування, досл?дження нейронних мереж, проектування та програмна реал?зац?я системи 6. Консультанти розд?л?в дисертац??:Розд?лПр?звище, ?н?ц?али та посада консультантаП?дпис, датазавдання видавзавдання прийнявнормоконтрольд.т.н., професор Кулаков Ю.О. 7. Дата видач? завдання Календарний план№ з/пНазва етап?в виконаннямаг?стерсько? дисертац??Строк виконанняетап?в дисертац??Прим?тка1Досл?дження л?тератури та документац??15.09.2019Викон.2Огляд ?снуючих р?шень20.09.2019Викон.3Анал?з теоретичних метод?в01.10.2019Викон.4Проектування системи10.10.2019Викон.5Програмна реал?зац?я системи25.10.2019Викон.6Тестування та виправлення помилок30.10.2019Викон.7Оформлення документац??03.12.2019Викон. Студент ______________ ____См?шний Д. М.___ (п?дпис) (?н?ц?али, пр?звище)Науковий кер?вник дисертац?? Волокита А. М. (п?дпис) (?н?ц?али, пр?звище) РефератМаг?стерська дисертац?я: 88 с., 20 рис., 27 табл., 1 додаток, 33 джерел.Актуальн?сть проблеми. Глобал?зац?я та зб?льшення числа населення сприяють розвитку глобально? економ?ки, а отже — появ? нових вид?в господарсько? д?яльност? та нових гравц?в на ринку прац?. При реал?зац?? власного п?дпри?мства важливо правильно оц?нити ризики ринку, проанал?зувавши та спробувавши спрогнозувати рух котирувань на найближчий час задля м?н?мальних ф?нансових втрат. Зв’язок роботи з науковими програмами, планами, темами. Нараз?, не ма? конкретних зв’язк?в з науковими програмами чи планами.Мета ? задач? досл?дження. Завданням ц??? роботи ? досл?дження можливост? прогнозування економ?чних параметр?в п?дпри?мств на приклад? ц?н на акц?? компан?й на фондов?й б?рж?. Метою ? розроблення системи, побудовано? на баз? нейронно? мереж?, здатно? проанал?зувати задан? економ?чн? показники та, на основ? отриманих даних спрогнозувати ?хню динам?ку.Об’?кт досл?дження. Процес прогнозування економ?чних показник?в з використанням елемент?в нейронно? мереж?.Предмет досл?дження. Методи анал?зу та обробки економ?чних даних за певний пер?од.Новизна. Отримання програмного продукту, що здатний прогнозувати коливання економ?чних показник?в. Досл?дження можливост? реал?зац?? модел? на основ? нейронно? мереж? для виконання поставлено? мети та завдань.Ключов? слова. Нейронн? мереж?, машинне навчання, LSTM, RNN, навчання нейронних мереж, прогнозування.AbstractMaster's Thesis: 88 pp., 20 figs., 27 tables, 1 appendix, 33 sources.The urgency of the problem. Globalization and population growth are contributing to the development of the global economy and, consequently, to the emergence of new types of economic activity and new players in the labor market. When implementing your own business it is important to properly evaluate the risks of the market, analyzing and trying to predict the movement of quotations in the near future for minimal financial losses.Relationship with working with scientific programs, plans, topics. Currently, it has no specific links to scientific programs or plans.The purpose and objectives of the study. The purpose of this work is research possibility of forecasting the economic parameters of enterprises on the example of stock prices of companies on the stock exchange. The purpose is to develop a system based on a neural network, capable of analyzing specified economic indicators and, based on the data obtained, to predict their dynamics.Object of study. The process of forecasting economic performance using neural network elements.Subject of study. Methods of analysis and processing of economic data for a certain period.Novelty. Obtaining a software product capable of predicting economic fluctuations. Investigation of the possibility of creating a universal model based on a neural network, which would not require specialization and would be able to work effectively with any set of input data without further training.Keywords. Neural Networks, Machine Learning, LSTM, RNN, Neural Network Training, Forecasting.Зм?ст TOC \o "1 - 2" СПИСОК УМОВНИХ СКОРОЧЕНЬ8Вступ9РОЗД?Л 1. ЗАГАЛЬН? ОСНОВИ МЕТОДОЛОГ?? ПРОГНОЗУВАННЯ121.1. Анал?з предметно? област? прогнозування економ?чних показник?в121.2. Огляд ?снуючих розробок в област? економ?чного планування та прогнозування211.3. Методи прогнозування26Висновки до розд?лу 132РОЗД?Л 2. АНАЛ?З МЕТОД?В ПОПЕРЕДНЬОГО АНАЛ?ЗУ ЕКОНОМ?ЧНИХ ДАНИХ332.1. Загальний п?дх?д до вир?шення задач? анал?зу332.2. Теоретичний анал?з процесу прогнозування362.3. Характеристика нейронних мереж392.4. Арх?тектури нейронних мереж412.5. Анал?з ефективност? арх?тектур нейронних мереж49Висновки до розд?лу 255РОЗД?Л 3. РЕАЛ?ЗАЦ?Я СИСТЕМИ563.1. Первинний анал?з вх?дних даних та п?дготовка системи прогнозування563.2. Модель формування ц?н593.3. Формування датасет?в633.4. Пор?вняння використання л?н?йних моделей та моделей глибокого навчання643.5. Процес прогнозування ринкових ц?н673.6. Результати72Висновки до розд?лу 374РОЗД?Л 4. РОЗРОБКА СТАРТАП-ПРОЕКТУ754.1. Опис ?де? проекту754.2. Технолог?чний аудит ?де? проекту764.3. Анал?з ринкових можливостей стартап-проекту784.4. Розроблення ринково? стратег?? проекту854.5. Розроблення маркетингово? програми стартап-проекту88Висновок до розд?лу 493ВИСНОВОК94СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ95ДОДАТКИ98СПИСОК УМОВНИХ СКОРОЧЕНЬSWOT — Strengths, Weaknesses, Opportunities, Threats — Сили, Слабкост?, Можливост?, Загрози. Акрон?м для одного з метод?в анал?зу стратег?чного плануванняА?С — автоматизован? ?нформац?йн? системиАРМ — автоматизоване робоче м?сцеRNN — Recurrent neural network — Рекурентна нейронна мережаLSTM — Long short-term memory — Довга короткочасна пам'ять. Арх?тектура нейронно? мереж?VAR — Vector autoregression — Векторн? модел? авторегресивного типуARMA — Autoregressive Moving Average — Модел? авторегрес??-ковзного середньогоSPF — Survey of Professional Forecasters — Опитування профес?йних прогнозист?вGLM — Generalized linear model — Узагальнена л?н?йна модельMLE — Maximum likelihood estimation — Метод максимально? правдопод?бност? MAE — Mean absolute error — Середня абсолютна помилкаDARM — Directed autoregressive model — Спрямована авторегресивна модельВступШвидка та ефективна обробка ?нформац?? в наш час ? одним з ключових фактор?в розвитку та усп?ху. Як п?двид, до ц??? проблеми можна в?днести анал?з та прогнозування економ?чних параметр?в р?зних п?дпри?мств чи фондових б?рж до прикладу. З огляду на дедал? б?льшу зац?кавлен?сть населення економ?чними процесами та стр?мкий розвиток ?нформац?йних технолог?й в сфер? машинного навчання, ц?лком лог?чно припустити, чи можна, до прикладу, ефективно прогнозувати повед?нку ц?н на фондов?й б?рж? на найближч? пром?жки часу за допомогою навчено? нейронно? мереж?.Актуальн?сть теми. Глобал?зац?я та зб?льшення числа населення сприяють розвитку народного господарства, а отже — появ? нових вид?в п?дпри?мницько? д?яльност? та нових гравц?в на ринку прац? з одного боку, та популяризац?ю економ?чно? активност? з ?ншого. Враховуючи дан? факотри, важливо в сучасному св?т? правильно ор??нтуватися в умовах ринку. Якщо мова йде про, наприклад, фондов? б?рж?, то важливо правильно пранал?зувати та спробувати спрогнозувати рух котирувань на найближчий час задля м?н?мальних ф?нансових втрат.Метою досл?дження визнача?мо розроблення системи, побудовано? з використанням елемент?в нейронно? мереж?, здатно? проанал?зувати динам?ку зм?ни економ?чних показник?в.Для досягнення мети роботи було вир?шено наступн? завдання:в галуз? прогнозування визначити специф?ку функц?онування ринку;виконати анал?з ?снуючих моделей та метод?в;досл?дити можлив?сть зб?льшення ефективност? ?снуючих метод?в;реал?зувати запропонований метод, розробивши в?дпов?дний програмний продукт;описати житт?здатну схему стартапу, орган?зованого на баз? програмного продукту.Об’?кт досл?дження — процес прогнозування економ?чних показник?в з використанням елемент?в нейронно? мереж?.Предметом досл?дження ? методи анал?зу та обробки економ?чних даних за певний пер?од. Методи досл?дження. П?д час виконання досл?дження використано методи анал?зу та синтезу: зд?йсню?ться розпод?лення процес?в на складов? ? вивчення ?х окремо одного в?д одного; загальне бачення вза?мозв‘язк?в процес?в було отримано при об‘?днанн? складових об‘?кту досл?дження у комплексну систему. Застосування методу моделювання зд?йснено при використанн? комп‘ютерних програм, що надало можлив?сть виконати прогноз тенденц?й розвитку процес?в ? розрахунками п?дтвердити ефективн?сть зад?яння таких метод?в у конкретному досл?дженн?. Практичне значення отриманих результат?в поляга? тому, що розроблена система може використовуватися з метою ефективн?шого використання ф?нансових ресурс?в. Даний програмний продукт може бути ?нтегрований в ?нш? системи. Анал?з альтернатив системи прогнозування надасть змогу попередньо описати проект.Прогнозування економ?чних показник?в на основ? вх?дних даних ? досить перспективним напрямком в сфер? машинного навчання. Система може бути доопрацьована не т?льки для використання в сфер? економ?ки, а ? для ?нших галузей, де присутня велика частота надходження вх?дних даних. Зокрема, до таких галузей можна в?днести:Маркетингов? досл?дження. Проводяться для р?зноман?тних ц?лей, включаючи вивчення задоволення потреб споживчих споживач?в, переваг, вим?р визначення ступеня ефективност? поширення продукт?в або послуг.Соц?олог?чн?. Використання в системи в рамках соц?олог?? з метою кращого прогнозування повед?нки населення в тих чи ?нших мовах.Пол?толог?чн? досл?дження. Дозволить краще оц?нювати та розум?ти настро? населення на т?, чи ?нш? под??. система здатна допомогти кандидатам краще розум?ти бачення розвитку кра?ни.Моделювання. Система можу бути корисною в моделюванн? ф?зичних явищ в залежност? в?д вх?дних даних.Робота склада?ться з 4 розд?л?в. В першому розд?л? формал?зу?ться постановка задач?, розглядаються аналог?чн? системи прогнозування, оглядаються основн? теоретичн? аспекти розробки системи.Другий розд?л присвячений основним методам анал?зу та обробки вх?дного масиву даних, що було застосовано в ход? подальшого досл?дження. Наводиться приклад можливого прогнозування економ?чних параметр?в системи.Трет?й розд?л присвячений аргументованому вибору ?нструмент?в для реал?зац?? програмного продукту. Описано процес розробки та проведено досл?дження отриманих результат?в його роботи.У четвертому розд?л? описано реал?зац?ю стартап-про?кту на баз? ?де? та програмного продукту, розглянутому у попередн?х розд?лах. Описано загальн? економ?чн? параметри, розглянуто конкурентоспроможн?сть продукту та його перспективи в умовах ринку.РОЗД?Л 1. ЗАГАЛЬН? ОСНОВИ МЕТОДОЛОГ?? ПРОГНОЗУВАННЯ1.1. Анал?з предметно? област? прогнозування економ?чних показник?вОсновне завдання прогнозування економ?чних показник?в можна сформулювати як формування ц?л?сно? оц?нки економ?чно? системи в ч?тко визначений момент часу та формування прогнозу повед?нки дано? системи на основ? анал?зу залежностей м?ж р?зними екном?ко-пол?тичними факторами, встановленими ран?ше.Прогнозування економ?чних показник?в можна визначити як наб?р метод?в та методик, що використовуються фах?вцями в галуз? економ?чно? д?яльност?, спрямованих для розробки оптимальних алгоритм?в майбутнього сталого розвитку р?зних сфер економ?ки, нац?онального господарства чи св?тово? економ?чно? системи в ц?лому.Серед шлях?в до яких найчаст?ше вдаються в ход? прогнозування господарсько? д?яльност? можна виокремити наступн?:?сторичний п?дх?д. Кожне явище розгляда?ться в контекст? ?сторичного процесу з огляду на вза?мозв’язок з ?сторичними формами. Базу?ться на ?нтерпретац?? под?й та процес?в, що в?дбуваються зараз з використанням схожих под?й та явищ з минулого, намагаючись, таким чином, охарактеризувати можлив? майбутн? економ?чн? под??, опираючись на досв?д минулого.структурний п?дх?д. Мета досл?дження — причинне пояснення, або встановлення причини досл?джуваного явища.комплексний п?дх?д. Визнача?ться як розглядання явищ у ?хньому зв'язку ? залежност? один в?д одного. Часто послугову?ться напрацюваннями ?нших наук, що вивчають конкретне явище чи под?ю. Теоретичною основою розробки наукових уявлень про майбутн?й розвиток ? пол?тична економ?я. системний п?дх?д. Припуска? досл?дження к?льк?сних ? як?сних законом?рностей проходження ?мов?рн?сних процес?в у складних економ?чних системах. Кожне явище д?йсност? може розглядатися як система. Це означа?, що воно склада?ться з ряду пов'язаних м?ж собою частин, елемент?в, що забезпечують у ц?лому визначен? властивост?, функц??. Знаючи ц? властивост? ? функц?? можна передбачати, як буде поводити себе досл?джуваний об'?кт.Взагал?, методолог?ю економ?чного прогнозування можна под?лити на два великих блоки:формальн?неформальн?Серед неформальних, або ?нту?тивних, метод?в економ?чного прогнозування можна вид?лити метод експертних оц?нок. В його основ? лежить принцип використання оц?нок висококвал?ф?кованих фах?вц?в дано? галуз?. Для отримання оц?нки використову?ться анкетування, таблиц? тощо. Розд?лять ?ндив?дуальн? та колективн? експертн? оц?нки.З числа персональних способ?в акцентують увагу на наступних: спос?б "?нтерв'ю" — створю?ться безпосередн? обговорення пом?ж експертами; анал?тичний метод, що можна розд?лити на наступн? етапи:1) формулювання можливих обставин;2) формування в?дпов?дних допов?дей досл?дження;сценарний метод, що грунту?ться на встановленн? лог?ки процесу або явищ? в час?, враховуючи обставини.Загальн? бали експерт?в вм?щують в соб? наступн? методи: метод "мозково? атаки”, метод ком?с?й , матричний. Суть метод?в з дано? категор?? в тому, що:а) ймов?рн?сть точн?шого результату при застосуванн? колективних зусиль значно вища;б) результати одних фах?вц?в можуть наштовхнути на неоч?куван? позитив?н ?де? ?нших експерт?в.Головною характеристикою методу колективно? фохово? оц?нки з метою досл?дження мон?торинг?в визнача?ться у встановленн? узгодженост? суджень фах?вц?в з перспективних напрямк?в формування предмета моделювання, та тими, що описан? ?ншими фах?вцями. Але, кр?м цього, в бал? формування предмета, що н?як не може бути встановлена ???ншими способами (наприклад, анал?тичним розплатою, досв?дом а також ?н.). Метод “мозгового штурму” нада? можлив?сть ? довол? ефективним вплан? п?дготування креативних п?дход?в за в?дносно короткий час.Фахов? оц?нки можна виразити у вигляд? ?нтегрально? суми незалежних експерт?в. Створення нових д?ючих технолог?й фахових оц?нок, а також метод?в об'?ктив?зац?? ?х п?дсумк?в, по-перше, дали можлив?сть справедливо зб?льшити ступ?нь дов?ри експертиз, ? по-друге, вдосконалити ?х сп?вставн?сть з формал?зованими.Рис. 1.1 — Класиф?кац?я метод?в економ?чного планування[1]Також, формальн? методи можна розд?лити на наступн? категор??:як?сн?. Широке використання оц?нок ситуац?? фах?вц?вк?льк?сн?. Здеб?льшого, використовують математично-статистичний апарат для визначення прогнозу економ?чно? системи. Варто зазначити, що формальн? та неформальн? методи ? досить р?зними, що, однак, н?як не вплива? на ?хню д??в?сть. Формальн? методи прогнозування базуються передус?м на лог?ц? та рац?ональному мисленн?, тод? як неформальн? – на ?нту?ц?? людей, як? приймають р?шення. Загалом, прогнозування явищ економ?ки ? досить нетрив?ально? проблемою, оск?льки досить багато параметр?в економ?чно? системи ? вза?мопов’язаними як прямими, так ? неявними кореляц?ями.Макропланування економ?чно? д?яльност?. Розглянемо проблему прогнозування в контекст? макроеконом?чного планування економ?чно? д?яльност?. Зг?дно з трактуванням [2]. В.М. Гриньова та М.М. Нов?кова макроеконом?чне планування — це як процес розроблення план?в щодо економ?чного розвитку держави (областей або галузей) [3]. Л.А. Швайка визнача? даний процес як ц?леспрямовану д?яльн?сть державних орган?в управл?ння ?з забезпечення динам?чного розвитку сусп?льства, визначення та досягнення основних параметр?в економ?ки ?з м?н?мальними витратами сусп?льно? прац? [4]. В наукових колах не ?сну? ?дино? думки приводу макроеконом?чного планування. Вир?зняють наступну систематизац?ю: директивне та ?ндикативне.Розглянемо директивне планування. Директивне планування — це метод регулювання економ?ки держави, де ч?ткр встановлюються завдання з метою виконання суб'?ктами народного господарства, що ? облв’язковими, ? що визначають виготовлення, а також розпод?лу продукт?в ? послуг. З ?ншого боку, директивне планування можна розглядати як метод регулювання економ?ки, що забезпечу? повн?шу постановку завдань, встановлення пр?оритетних напрямк?в формування державно? економ?ки а також використання нац?ональних стимул?в з метою ?х зд?йснення[5]. Зд?йснення урядового регулювання за допомогою концепту компонент?в ?ндикативного планування ? ф?нансового моделювання створю? сво?р?дний тип планування нац?онального р?вня важливост? – стратег?чне макропланування або макроеконом?чне прогнозування плану стратег?? впливу держави на ринков? механ?зми. Под?бне визначення стратег?чного планування за допомогою елементи ?ндикативного в?добража? залежне становище зазначених вид?в макропланування.Як насл?док, це в?дкида? ймов?рн?сть ур?вняння ?ндикативного та стратег?чного планування як планування одного типолог?чного р?вня. Враховуючи даний факт, доц?льн?ше акцентувати т?льки на двох видах планування - директивне та ?ндикативне. У власну чергов?сть, в межах будь-якого з ?х допуска?ться особливо в?дзначити хитре складання плану.Де-факто, стратег?чне планування ? процесом розвитку стратег?? ф?нансового поцв?тання кра?ни. Ф. Ле Скурнас встановлю? статег?чне складання плану як формування накопичених вза?мозв'язк?в м?ж першорядними та найб?льш безпосередн?ми ц?лями установи а також п?дб?р деяких операц?й, що можуть допомогти досягти даних у б?льшому обсяз?[6]. Через те, що в базис деф?н?ц?й покладено абсолютно р?зн? особливост?, в такому випадку краще розд?ляти макроеконом?чне складання плану зг?дно з показником обов'язковост? виконання характеристик проекту в директивне та ?ндикативне, а зг?дно з показником терм?новост? поставлено? мети - стратег?чне ? тактичне.Табл. 1.1 Пор?вняльний анал?з директивного та ?ндикативного планування[2] ОзнакаТипДирективна?ндикативнаМетодика формування план?вФормал?зують р?зк? нормативи ? норми. ?н?ц?юються окреслен? тарифиСуб’?кт народного господарства форму?ться на в?льних основахКонкуренц?я В?дсутняЗакладаються ресурси нап?двищення конкурентних переваг та задля уникнення ризик?в, пов’язаних з конкурентами Важел? впливуТ?льки адм?н?стративн?* екононом?чн?* адм?н?стративн?* юридичн?Система показник?вСистеми показник?в форму?ться п?д конкретного виконавцяЗазвичай, використовують систему показник?в з метою ор??нтування д?яльност? суб’?кт?в народного господарства в межах основно? концепц?? економ?чно? пол?тикиРезультат д?яльност?Планування соц?ально-економ?чного життя та напрямку розвитку кра?ниДиференц?ований план розвитку для окремих економ?чних суб’?кт?вВикористання ресурс?в Максимальне використання виробничо-продовольчого ресурсуОптим?зац?я ресурс?вСусп?льн? та ф?нансов? процеси в передових умовах вважаються досить складними ? невизначеними, в насл?док цього формування завдань ф?нансового характеру вимага? пер?одичного розбору, бо характеристики визначальних момент?в в сьогодн?шн?х житт?вих обставинах довол? серйозно в?др?зняються в?д прийдешн?х, а регулювання бюджетних витримок сприя? витрачанню кошт?в з державного бюджету на конкретн? мун?ципальн? под??, лише в випадку гарантовано? результативност? даних под?й. Як насл?док, при плануванн? ф?нансових процес?в враховують р?зн? стратег?? [7]. Ряд автор?в, таких як ?.Р. Михасюк, Мельник, Л.А. Швайка дають визначення стратег?чному плануванню як “концентрац?я ресурс?в держави на вир?шення стратег?чних проблем шляхом координац?? ц?лей системи” [8]. Автором В.Д. Лагут?ним зазнача?ться, що пол?тика -- це не одномоментна под?я, а в сво?й сутност? ? процесом. В такому раз?, п?д час формуванн? державно? пол?тики пост?йно отриму?мо питання м?ж сьогодн?шн?ми втратами ? майбутн?ми надбаннями. Якщо розглядати державний сектор, то це питання поста? ще гостр?ше, бо людськ? та часов? ресурси тут обмежен?, н?ж у приватному сектор? [9]. Под?бно до будь-якого процесу, стратег?чне планування, врахову? виконання конкретних д?й, що варто об’?днати в к?лька пункт?в. М. Браун визнача? ц? пункти так, що вони створюють ланцюг процесу "зб?р ?нформац?? – формування альтернатив – впровадження та оц?нка вибрано? стратег??". Величезне значення вчений прид?ля? пункту ефективного прогнозування, однак не показу? прогнозування в ланцюз? пункт?в планування, в насл?док цього прогнозування можливо вважати етапом допланування. “Прогнозування, за Брауном, це стисла картина майбутнього стану об’?кту, що показу?, як можна краще задовольнити його потреби та можливост? у сфер? орган?зац?йних обов’язк?в” [7]. У М. Брауна процес стратег?чного планування визначений у п’яти пунктах [7]. Покажемо схематичну модель стратег?чного планування зг?дно суджень Брауна.Рис. 1.2 — Схематична модель стратег?чного планування[7] 1. Перша стад?я планування визнпча? коп?тке досл?дження зовн?шньо? сфери орган?зац?? з врахуванням розгляду сусп?льно-пол?тичних а також ф?нансових, громадських, науково-техн?чних фактор?в ? спрямувань (PEST-анал?з). Д?апазон збору ?нформац?? у державному стратег?чному анал?з? досить великий: сп?вбес?да з галузевими фах?вцями, документац? районних та мун?ципальних орган?в самоврядування, соц?олог?чн? досл?дження, в?домост? ?нтернац?ональних установ, папери Верховно? Ради Укра?ни, анал?тичн? в?домост? ?нвестиц?йних банк?в, галузева статистика, державна анал?тика[10].2. Друга стад?я поляга? в “перев?рц? ресурс?в орган?зац??”. Тут анал?зуються сторони орган?зац?? -- сильн? та слабк?. В?дбува?ться аудит можливих загроз та перспектив (SWOT-анал?з).3. Найважлив?ш? завдання,що потребують вир?шення визначаються, зазвичай саме на третьому етап?. "Формулювання проблеми вважа?ться б?льш важким ? складним завданням в державному регулюванн? економ?ки. Передумовою ? те, що як проблема визнача?ться, т?а регулювання ? реал?зу?ться" [10]. Тобто в?д ч?ткост? встановлених ц?лей, актуальност? проблеми, що треба вир?шити, визначаються подальш? кроки у процес? прийняття висновк?в, а значить, ? п?дсумки державного регулювання. Форму?ться комплект конкретних ц?лей, як? важлив? для вс?х, в розробц? базовго питання приймають участь економ?чн? суб’?кти, уряд? населення. Основн? форми участ? – фокусгрупи, сем?нари, наради з фах?вцями, online опитування, фокусгрупи, робоч? групи ? т.д.. Для в?рного формулювання ц?лей, як? ма? вир?шити уряд, автор В. Дан запрошу? використовувати чотирифазовий процес - структурування проблем, який можна визначити як виб?р фах?вцями м?ж багатьох формулювань питання проблеми -- найкраще. В. Дан розмежову? даний процес на 4 кроки:– процес пошуку проблеми, в як?й передбача?ться можлив?сть формулювання проблеми респондентами;– встановлення промислових в?дм?нних рис проблеми, означа? розум?ння ?? з? застосуванням точних розрахунк?в;– формулювання ц?л?, визначення основних ознак проблеми, звуження досл?джуваного питання, в?д “розширеного” до “конкретн?шого”;– анал?з вар?ант?в р?шення – це фаза розроблення альтернативних вар?ант?в вир?шення визначених на попередн?й фаз? проблем [11]. 4. Останн?й етап називають найскладн?шим, бо пов’язанна з ним проблематика стосу?ться питань державно? важливост?. Як ми зна?мо, державне регулювання ? суто централ?зованим. Як насл?док, сильно знижу?ться швидк?сть прийняття стратег?чних ? тактичних р?шень [7]. Значну увагу прид?ляють часовов?й похибц? м?ж часом розробки р?шення економ?чно? пол?тики та його впровадження. Под?ляють внутр?шню та зовн?шню похибку. Зовн?шн?я похибка – раху?ться з моменту реал?зац?? макроеконом?чних заход?в до того моменту, коли ?хн?й вплив на реальн? макроеконом?чн? показники стане видимим. Внутр?шня похибка – це пер?од в?д того моменту м?ж тим, як сталася форс-мажорна ситуац?я в економ?ц? до моменту, як прийнят? в?дпов?дн? макроеконом?чних заходи [12]. Пол?тичн? р?шення впливають на економ?чн? показники лише через певний лаг, який довол? важко передбачити, але обов’язково потр?бно враховувати [9]. 1.2. Огляд ?снуючих розробок в област? економ?чного планування та прогнозування Велика частина приватних п?дпри?мств застосову? засоби автоматизац?? бухгалтерського обл?ку. Однак застосування ?нформац?йних технолог?й в ключ? автоматизац?? економ?чного прогнозування, анал?зу ринку, ф?нансового планування не отримало необх?дного поширення, що ? досить незрозум?лим, позаяк безпосередн? ?хн? використання ма? потенц?йн? можливост? з метою зб?льшення продуктивност? п?дпри?мства.Кожна ?нформац?йна система м?стить наступн? компоненти:– структура системи – множина елемент?в системи ? вза?мозв'язк?в м?ж ними, наприклад, орган?зац?йна ? виробнича структура п?дпри?мства;– функц?? кожного елемента системи;– вх?д ? вих?д кожного елементу ? системи загалом;– мета ? обмеження системи та ?? окремих елемент?в.Ускладнення процес?в управл?ння, поява ринкових в?дносин безпосередньо впливають ? на розвиток автоматизованих ?нформац?йних систем (А?С). У сучасних А?С використовуються персональн? комп'ютери, встановлен? на робочому м?сц? користувача, де зд?йсню?ться децентрал?зована обробка економ?чних завдань шляхом орган?зац?? автоматизованих робочих м?сць (АРМ). Системи прогнозування ? пр?оритетним напрямом розвитку ?нформац?йних технолог?й, особливо в сфер? ф?нанс?в. Перспективним шляхом реал?зац?? даного сегменту ринку ?Т-технолог?й вида?ться використання нейронних мереж на зразок тих, що вже усп?шно виконують задач? з планування м?ських транспортних траф?к?в, анал?з рентгенограф?чних зображень хворих та прогнозування можливост? розвитку раку ще до появи очевидних симптом?в розвитку хвороби. Розглянемо системи ф?нансового планування та прогнозування, наявн? нараз? на ринку.Модуль ?Ф?нансовий анал?з?. Даний модуль з комплксу ?Галактика? (компан?я ?Галактика?) ор??нтований на кер?вник?в а, також на фах?вц?в ф?нансового сектору. Головн? проблеми, як? вир?шуються завдяки даному ПО, - анал?з економ?чного стану п?дпри?мства також можливостей його подальшого розвитку. П?дходить для п?дпри?мств з будь-якою формою власн?стю, у тому числ? к?лькост? також з в?дм?нними рисами поняття зв?тност? зг?дно м?жнародних стандарт?в.Модуль ?Ф?нансовий анал?з? системи ?Галактика? (корпорац?я ?Галактика?) адресований кер?вникам ? фах?вцям ф?нансових служб. Основн? завдання, що вир?шуються в ньому, – оц?нка ф?нансового стану п?дпри?мства ? перспектив його подальшого розвитку з ор??нтац??ю на п?дпри?мства вс?х форм власност?, у тому числ? ? з особливостями подання зв?тност? за м?жнародними стандартами. Анал?з ф?нансового стану проводиться на п?дстав? даних зовн?шньо? зв?тност?, а також будь-яко? ?ншо? ф?нансово? ?нформац??.Використання засоб?в модуля забезпечу? п?дтримку комплексу завдань, пов'язаних з оц?нкою ф?нансового стану п?дпри?мства:– гнучке налаштування показник?в для ц?лей обл?ку ? анал?зу, настройка ? визначення критер??в оц?нки;– вир?шення задач? збору, побудови ? ф?нансового анал?зу зв?тност? орган?зац??;– р?зн? вар?анти методик розрахунку ? анал?зу показник?в;– можлив?сть роботи з ?ндексами.Модуль ?Ф?нансовий анал?з? системи ?Галактика? волод?? широкими функц?ональними можливостями. В?н дозволя? модиф?кувати вже п?дготовлен? розробниками шаблони анал?тичних таблиць ? створювати власн?. У модул? передбачена перев?рка вза?мозв'язку показник?в ? форм зв?тност?, що сприя? зменшенню к?лькост? помилок у початков?й ?нформац?? ? п?двищенню якост? результат?в анал?зу. Пор?внянн?сть ? результативн?сть показник?в також п?двищу?ться завдяки використанню в ц?й систем? ?ндекс?в. Проте сл?д зауважити, що модуль достатньо складний в експлуатац?? ? в?дносно гром?здкий, а ефективн?сть його використання залежатиме в?д к?лькост? методик, реал?зованих розробниками у в?дпов?дн?й верс?? системи. Автономна експлуатац?я модуля ?Ф?нансовий анал?з? (без ?нших контур?в ? модул?в системи ?Галактика?) швидше за все буде економ?чно малоефективною через високу трудом?стк?сть роботи ? високу варт?сть. Система БЕСТ-Ф. Система БЕСТ-Ф (АРМ ?Ф?нансового анал?зу? компан?? ??нтелект-Серв?с?, Москва) призначена як для оперативного анал?зу власно? ф?нансово-господарсько? д?яльност?, так ? для проведення незалежно? зовн?шньо? експертизи ? анал?зу економ?чного стану п?дпри?мства з метою розробки стратег?? його розвитку. Вона об'?дну? можливост? електронно? таблиц? ? бази даних, може обробляти р?зну ?нформац?ю, яка або вводиться вручну, або ?мпорту?ться з текстового файлу, або завантажу?ться ?з спор?днених систем ?БЕСТ-3?, ?БЕСТ4?. Програма ма? два вар?анти виконання (?Зовн?шн?й анал?з? ? ?Внутр?шн?й анал?з?) спец?ал?зованих функц?й, що розр?зняються набором, ? шаблон?в анал?тичних документ?в. Вар?ант ?Внутр?шн?й анал?з? волод?? можлив?стю завантаження даних з програм ?БЕСТ-3? ? ?БЕСТ-4? ? викону? функц?? анал?зу як публ?чно? зв?тност?, так ? результат?в внутр?шнього обл?ку. Програма склада?ться з оболонки, набору настро?них шаблон?в ? збережених розрахунк?в, виконаних за шаблонами.Комплекс настро?них шаблон?в дозволя? застосовувати найб?льш в?дом? методики анал?зу в?тчизняних ? заруб?жних економ?ст?в або реал?зувати власну. У систем? спец?ального анал?зу реал?зован? так? методики, як ?Партнер?, ?Банк?р?, ?Акц?онер?, ?Банкрут?. Методика ?Банкрут? призначена для анал?зу в?рог?дност? банкрутства п?дпри?мства за заруб?жними методиками (модель Альтамана, Б?вера, Копана ? Гольдера ? т. д.) ? за допомогою критер??в неплатоспроможност?, використовуваних у в?тчизнян?й практиц? (коеф?ц??нт поточно? л?кв?дност?, коеф?ц??нт забезпеченост? власними оборотними коштами, коеф?ц??нт в?дновлення (втрати) платоспроможност?). Також за допомогою закладених у програму методик, об'?днаних у систему комплексного анал?зу, можна розрахувати так? показники п?дпри?мства, як структура майна, платоспроможн?сть, ф?нансова ст?йк?сть, д?лова активн?сть. Результати анал?зу подаються як у вигляд? анал?тичних таблиць, так ? у вигляд? граф?к?в. Система “1С-АФСП”. Сво?р?дним еталоном для розробник?в анал?тичних програм ? розробки московсько? ф?рми ??НЕК?. Одним з представник?в ? система ?1С-АФСП?. Як початкова ?нформац?я для ф?нансового анал?зу вона використову? дан? зовн?шньо? бухгалтерсько? зв?тност?: баланс, зв?т про ф?нансов? результати, зв?т про рух грошових кошт?в. Для забезпечення пор?внянност? даних у раз? зм?ни в правилах ? формах зв?тност? в програм? реал?зований механ?зм трансформац?? початкових форм в анал?тичн? форми, статт? яких мають однаковий економ?чний зм?ст на будь-яку зв?тну дату. Кр?м того, користувач ма? можлив?сть доповнювати початкову ?нформац?ю власними показниками, як? згодом використовуватимуться при проведенн? анал?зу. При робот? з програмою можна не т?льки проводити ф?нансовий анал?з на основ? розрахованих анал?тичних таблиць ? граф?к?в, але ? отримати автоматично п?дготовлений у текстовому вигляд? докладний висновок з ф?нансового стану п?дпри?мства. Система готу? також коротке резюме про ф?нансовий стан п?дпри?мства, що м?стить текст ? граф?ки. Для оц?нки ф?нансового стану п?дпри?мства в систем? застосовуються ?горизонтальний? ? ?вертикальний? анал?з пасив?в ? актив?в анал?тичного балансу (в?дносн? ? абсолютн? зм?ни в структур? майна ? джерелах його формування); прибутк?в ? збитк?в (ф?нансов? результати); притоку ? в?дтоку грошових кошт?в; ефективност?, що характеризу? рентабельн?сть д?яльност? ? прибутков?сть вкладень; платоспроможност? (коеф?ц??нт покриття, пром?жний коеф?ц??нт покриття, терм?нова ? абсолютна л?кв?дн?сть, коеф?ц??нт Б?вера, ?нтервал самоф?нансування, показник Альтамана ? т.д.); ф?нансово? ст?йкост? (р?вень власного кап?талу, сп?вв?дношення позикового ? власного кап?талу, коеф?ц??нт покриття необоротних актив?в власним ? довгостроковим позиковим кап?талом). При оц?нц? ефективност? д?яльност? п?дпри?мства передбачена можлив?сть пор?вняння досягнутих ним ф?нансових показник?в з рекомендованими значеннями. Використовуваний у програм? ?граф?чний? пакет дозволя? будувати граф?ки за будь-якими показниками, виводити (прибирати) д?апазон рекомендованих значень, збер?гати в баз? ? пот?м пост?йно використовувати в?д?бран? граф?ки, передавати граф?к в MS Word ? Excel.Табл. 1.2Пор?вняльна характеристика ?снуючих системеконом?чного анал?зу та прогнозуванняСистемаПеревагиНедол?киМодуль “Ф?нансовий анал?з”* гнучке налаштування * вир?шення задач? збору, побудови ? ф?нансового анал?зу зв?тност? орган?зац??* можлив?сть роботи з ?ндексами* в?дсут?сть автоматичного прогнозу* висока варт?сть експлуатац??* важк?сть в осво?нн?БЕСТ-Ф* налаштування шаблон?в розрахунк?в* широкий наб?р готових шаблон?в* зручна ?нтеграц?я ?снуючих таблиць в Excel ? DOC* в?дсутн?сть автоматичного прогнозу* ц?на1С-АФСП* широкий наб?р ?мплементац?й р?зних алгоритм?в анал?зу даних* зведення даних в один формат* ц?на викристання* важк?сть в осво?нн?З огляду на представлену вище таблицю, можна зробити висновок, що альтернативою даним системам може слугувати та, що матиме невисоку варт?сть використання, повинна бути зручною у використанн? та повинна реал?зовувати автоматичний прогноз економ?чних показник?в.1.3. Методи прогнозуванняПрогнози використовуються для передбачення функц?онування об’?кта, який вивча?ться. В даному випадку . Вони под?ляються на формал?зован?, евристичн? та комплексн?. Кожен з цих вид?в ма? сво? позитивн? сторони та обмеження.За допомогою формал?зованих прогноз?в отримують к?льк?сн? показники. При ?х розробц? використовують припущення про те, що система ?нерц?йна, тобто що система у майбутньому буде розвиватися за тими ж законом?рностями, що ? протягом всього пер?оду розвитку. Недол?ком формал?зованих метод?в ? обмежена глибина упередження, що знаходиться в межах еволюц?йного циклу системи, за межами якого над?йн?сть прогнозу пада?. До формал?зованих метод?в в?дносяться екстраполяц?йн? та регрес?йн? методи, метод групового врахування аргумент?в, факторний анал?з та ?н.Евристичн? методи прогнозування базуються на застосуванн? людського ?нтелекту, за допомогою якого на основ? власних знань та практичного досв?ду передбачають як?сн? зм?ни в повед?нц? об’?кта, що прогнозу?ться, зокрема, силу та тривал?сть стрибк?в у процес? розвитку об’?кта. Ц? методи застосовуються у випадках, коли ?сну? ймов?рн?сть стрибкопод?бних процес?в розвитку системи. Евристичн? методи под?ляються на методи ?ндив?дуальних ? колективних експертних оц?нок. На в?дм?ну в?д формал?зованих метод?в, як? застосовують для оперативних та короткострокових прогноз?в, евристичн? методи використовуються для середньо та довготривалих прогноз?в.Комплексн? методи прогнозування по?днують формал?зован? та евристичн? методи в ?дину комплексну систему, що да? змогу п?двищити як?сть прогноз?в.Як зазначалося, в залежност? в?д глибини упередження прогнози бувають оперативн?, середньотривал? та довготривал? (перспективн?):До оперативних в?дносять прогнози на пер?од в?д часток секунди до року, середньотривал?– в?д року до п’яти рок?в, а перспективн? – на пер?од б?льше п’яти рок?в.Серед формал?зованих метод?в прогнозування можна виокремити так?, як регрес?йний анал?з, метод екстраполяц??, метод групового врахування аргумент?в тощо. Розглянемо морфолог?чний метод. В?н дозволя? отримати техн?чн? характеристики прогнозованого об’?кта, а також -- вивчити його структурую. З ц??ю метою об’?кт омовно розклада?ться на незалежн? компоненти. На наступниму крокц? розробля?ться мультивар?антний розв’язок, де враховуються технолог?чн?, функц?ональн?, конструктивн?та ?нш? особливост?. Загальний розв’язок одержу?ться вибором для кожно? частини одного розв’язку при наявних обмеженнях. Для морфолог?чного методу характерно системний п?дх?д до об’?кта, бо ним передбачено використання використання сукупност? знай про даний об’?кт. Впорядкований п?дх?д до анал?зу об’?кта проблеми дозволя? провести ефективну систематизац?ю ?нформац?? з точки зору вс?х можливих розв’язк?в. Метод вм?стить наступн? етапи досл?джень: детальне формулювання розв’язувано? проблеми; детальний анал?з можливих параметр?в, шо важлив? з точки зору розв’язку проблеми; формування морфолог?чно? структури; виб?р оптимального розв’язку.З погляду математики, метод екстраполяц?? ? розповсюдженням характеру зм?ни функц?? з област?, де вона визнача?ться, в область, що лежить поза межами. Задачу екстраполяц?? можна сформувати як: припустимо, що на ?нтервал? (t0, t) задано функц?ю f(x), необх?дно знайти значення дано? функц?? в точц? t+1 поза цим ?нтервалом.?сну? припущення про еволюц?йний характер розвитку об’?кт?в. Однак такий п?дх?д довов? сильно скорочу? можливост? застосування методу екстраполяц?? вплан використання його лише в т? пер?оди часу, де, в теор??, в?дсутн? стрибкопод?бн? зм?ни в розвитку об’?кт?в. Екстраполяц?я та оц?нка тенденц?й широко використовуються призастосуванн? нормативного прогнозування. Екстраполяц?я дозволя? знайти в?дпов?дь чи ? шанси розв’язати задачу, в тому числ? економ?чну, за допомогою попередньо опрацьованих механ?зм?в достатньо рентабельними.Хоч ? са?мо достатньо велику р?зноман?тн?сть, однак технолг?чне прогнозування методом екстраполяц?? можна зд?йснювати т?льки за допомогою деякого числа функц?й, як? можна умовно под?лити на 4 класи.Клас 1 визнача? л?н?йне зростання на б?льш?й частин? ?нтервалу з? зменшенням темп?в вк?нц?. До прикладу, зб?льшення продуктивност? прац? при умов? вичерпаност? ресурс?в використовувано? технолог?? неможливе ?, як насл?док, р?ст спов?льню?ться або взагал? пада?. Для утримання темп?в зростання необх?дний перейти на нову виробничу технолог?ю.Для класу 2а для всього ?нтервалу розвитку можна спостер?гати зростання у вигляд? експоненти. В даному випадку, ма?мо наступне ра?вняння криво? y=Aeat, де А – значення процесу при t=0; а - параметр процесу.У клас? 2в описуються S-под?бн? крив?, що можна охарактеризувати початковим експоненц?альним або майже експоненц?альним зростанням. Довол? часто под?бн? крив? використовуються для прогнозування густини поширення телефон?в як по кра?н?, так ? у великому рег?он?. Як приклад подбно? функц?? можна навести так звану криву лог?чного зростання Перла y = L1 + a0e-at, (1.1)де L – межа розвитку об’?кта; a0, a1 – стал?; t – час.В клас 3 входять функц??, де подв?йне експоненц?альне зростання переходить в функц?ю з характерною б?льш пологою кривою. Так? функц?? добре ?люструють прогрес науково-техн?чних систем в умовах ?нтенсивност? досл?джень ? розробок.Класу 4 складають функц??, де можна спостер?гати пов?льне експоненц?альне зростання на початку, що в подальшому пришвидшу?ться, але в к?нц? розвитку знову спов?льню?ться.Суть регрес?йного анал?зу поляга? в складанн? р?вняння множинно? регрес??. Даний анал?з та ? одним з найпоширен?ших метод?в в багатофакторному прогнозуванн?. При розгляд? л?н?йного вар?анту р?вняння набува? наступного вигляду yj=i = 1naiuij+ξj , (1.2)при j=1,...,m, де ai - коеф?ц??нти модел?, i=0,...,n; uij - значення i-? незалежно? зм?нно?; n – к?льк?сть незалежних зм?нних в модел?, xj – випадкова помилка.Серед недол?к?в такого п?дходу, виокремлю?ться необх?дн?сть суб’?ктивного визначення структури модел?, що може негативно вплинути на достов?рн?сть отриманих результат?в. До того ж, застосування под?бного анал?зу виправдане у випадку, коли область застосування передбача?, що к?льк?сть коеф?ц??нт?в модел? не перевищуватиме к?лькост? точок експериментльних даних.Характерно, що у меотд? групового врахування аргумент?в в?дсутн? недол?ки, характерн? для метод?в класичного анал?зу. В його основ? лежить принцип самоорган?зац??, який форму?ться на основ? застосування зовн?шн?х критер??в вибору.Що можна в?днести до зовн?шн?х критер??в вибору? ?з визначення зрозум?ло, зовн?шн?м можна вважати такий критер?й, що базу?ться на нов?й ?нформац??, що використовувалася при реал?зац?? модел?.Принцип самоорган?зац?? модел? оптимально? складност? можна описати наступним чином: якщо ускладню?ться математична модель, то всю модель або ?? оокрем? частини перев?ряють на м?ру в?дпов?дност? зовн?шн?м критер?ям. П?сля цього прийма?ться р?шення про ускладнення модел?.Метод групового врахування аргемент?в ор??нту?ться на зменшення к?лькост? необх?дних початкових даних.При в?дносно мал?й к?лькост? зм?нних доц?льно використовувати комб?наторний алгоритм. В?н проводить виб?р моделей, перетворюючи повний пол?ном прир?внюючи до нуля його доданки. На виход? отриму?мо певну к?льк?сть вкорочених пол?ном?в, що мають ускладнену структурую. проводить оц?нка кожного за попередньо обраним критер??м. Той з них, що ма? найкраще значення критер?ю ? ? моделлю оптимально? складност?.Щоб перев?рити модел? на оптимальн?сть, використовують м?н?мум середньоквадратично? похибки на посл?довност? даних, як? перев?ряються.Наб?р еврестичних метод?в оц?нки в основ? сво? склада? виявлення роздум?в експерт?в щодо перспектив розвитку об’?кту досл?дження (прогнозування). Серед них ун?версальн?стю вир?зня?ться метод Дельф?. Його особлив?стю ? повн?стю анон?мне опитування експерт?в. проводить в к?лька етап?в. Перед кожним наступним етапом, експерти ознайомлюються з результатами попереднього. Перед кожним новим етапом експерти мають право зм?нювати свою думку. Такий п?дх?д дозволя? уникнути суб’?ктивних психолог?чних фактор?в, що мають м?сце в колективах експерт?в, що обговорюють проблему напряму, а саме: компром?с у груп?, схиляння в б?к б?льш авторитетних спец?ал?ст?в, пристосування результату обговорення до думки б?льшост? ? т.д.Методолог?я ведення експертизи може не ? статично? ? ? р?зноман?тною. ?? можна под?лити на три етапи:- залучення для роботи в уточненн? модел? об’?кта прогнозування;- анкетування. Наб?р питаня ма? бути лог?чно пов’язаним з метою проведення оц?нки. Формулювання питань анкети ма? бути ч?тко детерм?новано зм?стово;- залучення фах?вц?в для консультац?й по завершенню статистично? обробки результат?в для отримання додатково? ?нформац??, необх?дно? длч формулювання к?нцевого результату.Важливо, що п?д час обробки результат?в визначаються статистичн? параметри прогнозованих характеристик.Середн? значення тих параметр?в, що п?длягають прогнозуванню обчислюються за формулою середнього арифметичного числа B = i = 1nBin, (1.3)де Bi – значення прогнозовано? величини, дане i-м експертом; n – к?льк?сть експерт?в в груп?.Дов?рчий ?нтервал для середнього значення прогнозовано? величини визнача?ться наступним чином: (B - t(α, n-1)σn;B÷t(α, n-1)σn), (1.4)де t – значення розпод?лу Стьюдента для заданого р?вня значущост? a та числа ступен?в свободи n-1, s – середньоквадратичне в?дхилення, n – к?льк?сть експерт?в.Коеф?ц??нт вар?ац?й оц?нок експерт?в визнача?ться за наступною формулою: v=σB.П?дх?д, при якому проводиться опитування в к?льк етап?в з подальшим обов’язковим ознайомленням фах?вц?в з отриманими результатами перед кожним наступним етапом створю? зб?жн?сть прогнозованих даних до певного значення похибки.Висновки до розд?лу 1В цьому розд?л? виконано огляд загальних завдань прогнозування та анал?зу економ?чних показник?в, наведено проблематиц? етап?в економ?чного прогнозу ? основним терм?нам, як? вживаються при вивченн? даного питання.Висв?тлено основн? проблемн? питання, що постають перед досл?дниками при виконанн? прогнозування, а також акцентовано увагу на додаткових задачах, як? потр?бно вир?шувати. Про?люстровано окрем? можлив? вар?анти вир?шення поставлених завдань ? проблем.Також описано ?снуюч? на даний час досл?дження в област? прогнозування та анал?зу ? ?х програмн? реал?зац??, виконано ор??нтовну експертизу системи, яка зд?йсню? автоматичний анал?з тональност? на основ? одного з в?рог?дних метод?в.Кр?м цього, розписано прим?рний вар?ант (приклад) вх?дних даних, як? використовуються з метою навчання анал?тично? системи визначення майбутн?х показник?в економ?чно? системи у електронному вигляд?.РОЗД?Л 2. АНАЛ?З МЕТОД?В ПОПЕРЕДНЬОГО АНАЛ?ЗУ ЕКОНОМ?ЧНИХ ДАНИХРозглянуту в першому розд?л? задачу, можна визначити як задачу прогнозування набору макроеконом?чних даних з використанням формал?зованих та евристичних п?дход?в до анал?зу вх?дних даних. ? досить багато р?зноман?тних п?дход?в до вир?шення проблеми прогнозування под?й, том проблема наукового досл?дження може бути сформульована наступним чином:2.1. Загальний п?дх?д до вир?шення задач? анал?зуЗ огляду на зростаюч? процеси глобал?зац?? ринково? системи важливим елементом ведення господарсько? д?яльност? на вс?х р?внях ? широке використання нов?тн?х технолог?? для якомога точн?шого прогнозування економ?чних показник?в. Зокрема, досить ц?кавою та практичною вбача?ться задача з прогнозування коливань макроеконом?чних показник?в на приклад? коливання валютного ринку.Зм?на валютних курс?в створю? необх?дн?сть проведення стратег?чного осмислення вх?дних даних та планування подальших д?й в ?ноземн?й валют?. Це необх?дно для захисту в?д шк?дливого впливу коливань ринку ?ноземних валют та для п?дтримки конкурентноздатност?. Для под?бного довгострокового планування основним ?нструментом слугу? саме прогнозування курс?в на оф?ц?йних обм?нних б?ржах та анал?з ?хнього впливу на грощов? потоки, що прямо вплива? на обсяги виробництва чи надання послуг. Однак, методолог?я регрес?йного анал?зу ? в?дом? статистичн? п?дходи не здатн? забазпечити достатньо точн? результати, а, подекуди вводять в оману, зпрогнозувавши протилежний рух ринку.Сучасн? науков? розробки т?сно пов’язан? з розвитком математичного моделювання та використання р?зних ?нтеграц?йних моделей на основ? евристики. Одн??ю з таких ?нтеграц?йних моделей можна вважати широке практичне застосування елемент?в штучного ?нтелекту для економ?чних досл?джень. Таке по?днання ?стотно розширю? можливост? метод?в математичного моделювання. Так, чи не першою вдалою спробою, звертаючись до науково? л?тератури, по?днання оглянутих метод?в ? праця М. Лем. Приймаючи план д?й на р?зних р?внях економ?чно? д?яльност? варто звертатися до математичного апарату, що в?др?зня? його в?д класичних метод?в, тим, що в?н пристосований враховувати нел?н?йност? економ?чних процес?в та нерац?ональн?сть учасник?в ринку. К?льк?сна та як?сна параметризац?я на доказов?й анал?тичн?й баз? вибору стратег??, розробка ?ндикативних план?в ? б?знес-планування, формування довгостроково? стратег?? д?лового партнерства, оц?нка виконання стратег?? в?дбува?ться у межах двох процес?в. Першим ? процес формулювання — це п?знавальний ? вир?шальний процес, спрямований на визначення головних стратег?чних ц?лей п?дпри?мства та виявлення основних перешкод у ?х досягненн?. Другим ? процес ?мплементац?? — це розробка заход?в, застосування яких призведе до досягнення запланованих стратег?чних ц?лей:– економ?чних (високий р?вень дох?дност? та прибутковост?, економ?чного потенц?алу та ефективних джерел ф?нансування, наявн?сть платоспроможност?);– техн?ко-технолог?чних (наявн?сть прогресивного програмного забезпечення системи управл?ння, низький р?вень зношування основних фонд?в та нематер?альних актив?в, високий р?вень ?нформац?йного забезпечення за рахунок використання ?нформац?йних технолог?й);– орган?зац?йно-управл?нських (високий р?вень корпоративно? культури, ефективна орган?зац?йна структура, ступ?нь мотивац?? персоналу, фахова компетентн?сть менеджменту);– маркетингових (наявн?сть ефективно? стратег?? просування товар?в на ринок, оптимальна ц?нова пол?тика, розвинена торгово-представницька мережа, вп?знаваний бренд, позитивний д?ловий ?м?дж);– соц?ально-психолог?чних (психолог?чний настр?й споживач?в товар?в, дов?ра з боку населення тощо);– географ?чних (географ?чна присутн?сть торговельного п?дпри?мства в рег?онах ?з розвиненою ринковою ?нфраструктурою та платоспроможним попитом споживач?в).Прогноз часових ряд?в використову?ться в багатьох галузях промисловост? вже досить давно; його зазвичай використовують у будь-як?й галуз? для кер?вництва майбутн?ми р?шеннями, наприклад, дуже важливим ? прогноз роздр?бних продаж?в, щоб в?дпов?дно можна було придбати сировину. Найв?дом?ший приклад - прогнозування погоди, де на основ? шаблону минулого та останн?х зм?н можна передбачити майбутн?. Ц? прогнози ? дуже важливими ?, як правило, ? першим кроком для вир?шення ?ншо? проблеми, оск?льки плануйте покол?ння електроенерг??, щоб уникнути зайвих перебо?в в електроенерг?? або перевиробництва.У будь-якому сценар?? прогнозу ? три питання, як? ви завжди хочете задати соб? перед тим, як будувати модель прогнозу:який часовий горизонт необх?дний для мо?х прогноз?в?яка часова частота потр?бна для мо?х прогноз?в?чи можуть прогнози оновлюватися часто з часом або вони повинн? вироблятися лише один раз ? залишатися статичними з часом?В?дпов?д? на ц? три запитання допоможуть вам визначити найважлив?ш? компоненти часових ряд?в:тенденц?я: довгостроковий компонент, який визнача? поступове зб?льшення / зменшення вашо? сер??.цикл: Довготривалий компонент, який визнача? коливання сер??.сезонн?сть: регулярна складова, що спостер?га? в?дносно короткочасн? зм?ни коливань сер??.помилка: випадкова м?нлив?сть у спостереженнях, яку неможливо пояснити моделлю.Розглянемо що собою явля? загальний п?дх?д до задач прогнозування. Повед?нку об’?кта, ознаки якого пов’язан? з часом його досл?дження, можуть бути представлен? як результати спостережень за однаков? в?др?зки часу. Для момент?в часу t=1, 2, ..., n дан? спостережень набувають вигляду часового ряду х(t1), х(t2), ..., х(tn). ?нформац?я про значення часового ряду до моменту n дозволя? давати оц?нки параметр?в x(tn+1), x(n+2), ..., x(n+m). Для зд?йснення прогнозування елемент?в часових ряд?в широко використовують так званий метод "часових в?кон".В залежност? в?д к?лькост? ознак, що представляють значення ряд?в при формуванн? множин даних, вид?лимо задач? двох тип?в. Серед них можна вид?лити:однопараметрична задача планування;багатопараметрична задача планування.Очевидно, що через велику к?льк?сть зм?нних задачу передбачення економ?чних параметр?м можна в?днести до багатопараметричних.Для побудови нейронно? мереж? прогнозування оберемо рекурентн? нейронн? мереж? (RNN), а саме модель нейронно? мереж? на основ? довго? короткочасно? пам’ят? (LSTM).2.2. Теоретичний анал?з процесу прогнозуванняДля проекту використовуватимуться р?зноман?тн? датасети з набором макроеконом?чних показник?в останн?х рок?в. Векторн? модел? авторегресивного типу (VAR) - один з найпоширен?ших тип?в моделей, що застосовуються в декларативному прогнозуванн?. Цей тип модел? ? особливо привабливим, оск?льки не вимагають в?д досл?дника вводити м?н?мальну к?льк?сть припущень для базового процесу генерац?? даних. Кр?м того, так? модел? дозволяють те, щоб к?лька сер?й бути включеним до анал?зу (на в?дм?ну в?д б?льш обмежувальних моделей ARMA) ? можуть прямо оц?нюватися за допомогою процедур OLS/GLS6.Достов?рн?сть ефективност? векторних авторегресиних моделей в процес? прогнозування можна оц?нити, використовуючи перехресну перев?рку, в?дому також як крос-вал?дац?я. За такого п?дходу частина даних, оступних в?д початку досл?дження, використову?ться для оц?нки параметр?в, а частина даних не допуска?ться для досл?дження ? слугу? маркером для набором даних для проведення тестування. Кр?м цього, якщо говорити про високочастотн? потоки даних, то в ход? проведення оц?нки параметр?в, отрима?мо б?льше даних для тестово? виб?рки для ефективн?шо? оц?нки.В будь-якому випадку, ма?мо к?лька аспект?в прогнозовано? ефективност?, що можна оц?нити як:1) прогноз на крок вперед;2) прогноз на к?льк?сть крок?в вперед, але не менше 5.Для оц?нки продуктивност? на крок вперед парметри оц?нки використовуються в авторегресивному р?внянн? разом з? спостережуваними значеннями за вс? пер?оди прогнозованих даних, а вих?д р?вняння -- прогноз на один крок вперед. Дана д?я використову?ться для отримання прогноз?в для кожного спостереження, що не входить до датасету.Враховуючи наб?р тих значень, що були були отриман? в результат? прогнозування та в?дпов?дний ?м наб?р фактичних значень параметр?в для р?зних часових пер?од?в, загальною методикою оц?нювання прогнозування вважають використання середньоквадратично? похибки.Однак яким чином можна визначити, чи задовольня? нас отримана похибка в результат? анал?зу проеденого досл?дження? По-перше, точн?сть прогнозування можна оц?нити, використавши результати оц?нки точност? для ?нших моделей для в?дпов?дно? галуз?, що були розроблен? та оц?нен? ран?ше. По-друге, можна оц?нити точн?сть виконання прогнозу, пров?вши перев?рку на, спочатку, тестовому набору даних, а пот?м на тому набор?, що приймав учать в навчанн?, попередньо виключивши з нього частину даних. Такий п?дх?д ? не завжди виправданим, оск?льки отриман? результати на “робочих” даних завжди будуть кращими. Питання в тому, наск?льки ц? розб?жност? будуть великими.Векторн? авторегресивн? модел? обмежен? к?лькома вир?шальними нюансами. По-перше, модел? VAR - це л?н?йн? модел?. Оц?нка модел? VAR не врахову? нел?н?йност? при використанн? звичайних метод?в оц?нки. Можна, звичайно, ч?тко моделювати нел?н?йност?, але це вимага?, щоб точного знання, як? корективи вносити до модел?. Виявлення та корекц?я нел?н?йностей зб?льшу?ться у труднощах з? складн?стю модел?.По-друге, модел? типу VAR чутлив? до належних специф?кац?й. Окр?м в?дпов?дного поводження з нел?н?йностями, варто враховувати, ск?льки затримок потр?бно включити для кожно? сер??, яку сер?ю включити, як та чи включати компоненти взагал?, що рухаються в середньому, ? як адаптувати ко?нтеграц?ю до нестац?онарних даних тощо. Використання такого типу даних вимагають ч?тких позиц?й щодо характеру базових процес?в генерування даних. Це проблема адже перех?д до декларативного п?дходу обробки даних навпаки ма? п?д собою в?дх?д в?д детал?зованого алгоритму д?й.Консенсус-прогноз. Ще один популярний тип неструктурного прогнозу - консенсус-прогноз. Через р?зн? способи, за якими можна скласти прогноз, ?сну? р?зниця у прогноз? одного досл?дника/компан??/агентства та ?ншого ?ншого; деяк? прогнози ? надто оптим?стичними, а ?нш? - песим?стичними. Однак для даного макроеконом?чного показника ?сну? тенденц?я до того, що прогнози будуть кластеризуватися майже до реал?зовано? величини. У консенсус-прогнозах користуються цим, агрегуючи багато прогноз?в ? виробляючи ?дине, сукупне, прогнозування. Центральним обмеженням консенсусного прогнозу, безумовно, ? його залежн?сть в?д точност? окремих прогноз?в, як? його ?нформують.Для наших ц?лей прогноз консенсусу ма? значення з двох причин. По-перше, консенсус-прогнози корисн? як ор??нтири для тестування нових метод?в прогнозування. Це очевидно, якщо розглядати консенсус-прогноз як результат загальних оч?кувань експерт?в. Але консенсус-прогнози також ? корисними ор??нтирами, оск?льки вони вказують на пор?г п?двищення точност? самого консенсусного прогнозу. Прост?ше кажучи, консенсус-прогноз покращу? точн?сть при включенн? нових прогноз?в, як? ? б?льш точними, н?ж поточний консенсус-прогноз. По-друге, зокрема, SPF ? значимим, оск?льки виявля? ступ?нь розб?жност? в прогнозах макроеконом?чних показник?в. Ступ?нь вар?ац?? вказу? на невизначен?сть прогнозу консенсусу або, як альтернативу, неточн?сть у м?р? прогнозу консенсусу. Р?зниця в окремих прогнозах, таким чином, слугу? додатковим, хоча ? неформальним, ор??нтиром для оц?нки нових моделей.2.3. Характеристика нейронних мережВичерпний огляд нейронних мереж виходить за меж? ц??? роботи. Однак для розум?ння сенсу дано? науково? роботи добре слугуватиме введення деяких основних понять нейронних мереж, перш н?ж перейти до передових арх?тектур. Нейронн? мереж? були розроблен? в традиц??, под?бн?й до граф?чних моделей. Тобто, зам?сть того, щоб представляти модель у р?внянн?, або систем? р?внянь, модел? представляють у вигляд? спрямованих граф?к?в. Зазвичай ?нформац?я надходить в?д вход?в до ц?льового виходу через структуру граф?ка. Вузли граф?к?в представляють операц?? над даними п?д час перем?щення в?д входу до виходу. Будь-яка граф?чна модель може бути представлена у вигляд? набору математичних р?внянь, але к?льк?сть та довжина цих р?внянь р?зко зб?льшуються у м?ру зб?льшення складност? модел?.Ми схильн? говорити про модел? нейромереж? так, що це дещо в?др?зня?ться в?д того, як ми зазвичай говоримо про економ?чну або прогнозуючу модель. Натом?сть зосередившись на специф?кац?? модельних р?внянь, досл?дники нейронних мереж схильн? обговорювати арх?тектури моделей. Арх?тектури стосуються, як правило, конф?гурац?? вузл?в на граф?ку, вза?мозв'язк?в м?ж цими вузлами та характеру операц?й, виконуваних у кожному вузл?. Основна арх?тектура, на як?й будуються модел? глибокого навчання, - перцептрон. Перцептрон ма? три р?зних набори вузл?в: (1) наб?р вузл?в, що представляють модель вход?в, (2) наб?р обчислювальних вузл?в ? (3) наб?р вузл?в, що представляють результати моделей. Ми назива?мо кожен наб?р шаром. Визначальною особлив?стю перцептрона ? те, що лише один шар обчислювальних нейрон?в використову?ться для перетворення вход?в у ц?льов? виходи.Рис. 2.1. — Модель перцептрона[13]Власне, на д?аграм? вище показана схематична модель перцептрона. Як ма? бути очевидно, модель бере л?н?йну комб?нац?ю зважених вход?в ? застосову? функц?ю перетворення для отримання оц?ночного виходу. У випадку ц??? д?аграми вх?дн? дан? k розпод?лен? в?дставання x, а розрахунковий вих?д - значення x у n-пер?одах через час t.Прим?тно, що простий перцептрон, представлений на рисунку 2.1 також може бути представлений у звичн?й форм?:x t+n =f (х (k)ω(k)) (2.1)Де x — вектор розпод?лених затримок (до k-пер?од?в) деякого макроеконом?чного показника. ω - в?дпов?дний вектор ваг, як? регулюються через тренувальний процес. Добуток цих двох вектор?в да? л?н?йну комб?нац?ю вх?дних даних, яка дал? трансформу?ться через деяку функц?ю f для прогнозування показника на деякий горизонт прогнозування n пер?од?в у майбутньому. Варто зауважити, що структура ц??? модел? по сут? в?дпов?да? структур? модел? GLM. Однак п?дх?д нейронно? мереж? не використову? MLE (метод максимально? правдопод?бност?) для оц?нки. Натом?сть будемо покладатися на алгоритм трен?нгу зворотного розповсюдження, який по сут? ? непараметричним. Через навчальний процес модель визначатиме, як? особливост? та параметри (тобто обчислювальн? вузли) ? релевантними для прогнозування. Це дозволя? бути менш виборчими щодо того, як? дан? ми нада?мо для модел?, ? менше перейматися тим, як сл?д попередньо обробляти ц? дан?. Перцепрони породжують потужн? арх?тектури моделювання, коли вони шаруються, укладаються чи ?ншим чином з'?днуються в масивн? арх?тектури мережевих моделей. Нижче наведено ?хн? досл?дження.2.4. Арх?тектури нейронних мережНижче представлено для порывняння чотири модел? нейронних мереж, де кожна побудована за р?зною арх?тектурою. ц? арх?тектури, оск?льки вони представляють одн? з найб?льш часто використовуваних арх?тектур у досл?дженн? глибокого навчання. Дан? типи нейронних мереж було обрано через ?хн?й зв’язок ?з ключовими аспектами прогнозування часових ряд?в.Повнозв’язна нейронна мережа. Перша арх?тектура нейронно? мереж?, що представлена в дан?й науков?й прац? ? призначена для прогнозування р?вня зайнятост? населення, — це пряма, повнозв’язна (full-connected — FC) мережа. Це тип нейромережево? арх?тектури, який просто склада?ться з дек?лькох складених шар?в обчислювальних вузл?в. Кожен шар м?стить один або к?лька перцептрон-под?бних вузл?в. Входи до кожного вузла - це виходи з кожного з вузл?в попереднього шару. Суть ц??? арх?тектури представлений на рисунку 2.2.Власне, на рисунку повн?стю пов'язано? з подачею вперед. Кожне коло явля? собою один обчислювальний вузол, ? кожен обчислювальний шар склада?ться з трьох обчислювальних вузл?в. Залишкове з'?днання вказу? на по?днання вих?дного входу з виходом р?вня 3.Рис. 2.2 — Повнозв’язна нейронна мережа[13]Кр?м пом?тного включення додаткових обчислювальних шар?в, повнозв’язна арх?тектура, що представлена тут, включа? залишковий зв'язок м?ж входами та виходами з к?нцевого обчислювального шару. На рисунку це представлено л?н??ю з позначкою "Залишковий зв'язок" (Residual connection). Вузол, що з'?дну? входи до виход?в з останнього обчислювального шару, викону? елементне додавання м?ж виходами шару та входами.На д?аграм? на рисунку 2.3 зображена модель нейронно? мереж? прямого поширення. Кожен прямокутник склада?ться з шару нейрон?в. Шари м?ж вх?дним шаром ? шаром прогнозування складаються з обчислювальних вузл?в. Розм?р прямокутник?в масштабу?ться, щоб запропонувати к?льк?сть вузл?в у кожному шар?. Рухаючись зл?ва направо, кожен шар обчислювальних вузл?в менший або р?вний за розм?ром шару, який йому переду?.Рис. 2.3 — Нейронна мережа прямого поширення [13]Згорткова нейронна мережа. Ще одна арх?тектура, що розгляда?ться в дан?й робот?, - це згорткова нейронна мережа. Згортков? мереж? передаються вперед, оск?льки дан? рухаються лише в одному напрямку через мережу. ?х розвиток виник з досл?дженням використання нейронних мереж для розп?знавання зображень. У згортковому шар? кожен вх?д до шару з'?днаний лише з к?лькома обчислювальними вузлами (на в?дм?ну в?д повн?стю п?дключено? настройки, де кожен вх?д п?дключений до кожного обчислювального вузла). ? навпаки, кожен обчислювальний вузол отриму? лише входи з невеликого кластеризованого набору вх?дних вузл?в. Дал?, ваги на входах до обчислювальних вузл?в розпод?ляються по вс?х обчислювальних вузлах у шар?. Якщо ми уявля?мо вх?дн? дан? як зображення, то згортковий шар - це розсувне в?кно по даних, як? ф?льтрують за певним малюнком у даних. Арх?тектура згортково? мереж? визнача?, як? шаблони максим?зують точн?сть прогнозування та шукають ц? шаблони в даних. У шар? тако? мереж? може одночасно застосовуватися к?лька ф?льтр?в. Приклад роботи згорткового шару в робот? про?люстровано на рисунку 2.4.Згорткова модель м?стить к?лька пом?тних компонент?в. Як ? в попередн?й модел?, викону?ться склеювання результат?в згорткових шар?в разом. М?ж кожною стекою включа?ться залишков? з'?днання. Шари в кожн?й стец? менше, н?ж шари в стеку, як? ?й передують. Скорочення вузл?в м?ж згортковими стеками зд?йсню?ться за допомогою застосування ф?льтра максимального пулу. П?сля дек?лькох стек?в згорткових шар?в дода?мо стеки повн?стю пов'язаних шар?в. Ц? стеки також м?стять залишков? з'?днання. Кр?м того, шари у кожному повн?стю з'?днаному стеку мають менше вузл?в, н?ж попередн?й стек. Вих?д з к?нцевого стека да? прогнозування ц?льово? зм?нно?. Д?аграма згортково? модел? представлена ??на рисунку 2.5.Рис. 2.4 — Приклад роботи згортково? нейронно? мереж? [13]На граф?ку зображено р?вень безроб?ття за пер?од 1998–2006 рр. Червон? прямокутники, накладен? на д?аграм? в р?зн? моменти часу, зображують рух звивистого ядра (тобто ковзаюче в?кно) над даними. Виноски, прикр?плен? до кожного червоного прямокутника, зображують к?лька застосованих ф?льтр?в згортальним шаром. Вих?д для кожного ф?льтра - це оц?нка, що вказу? на ступ?нь, на який дан? п?д ядром в?дпов?дають форм? саме цього ф?льтра. П?д першим прямокутником дан? найб?льше в?дпов?да? П-под?бний ф?льтр, тод? як дан? п?д другим прямокутником найб?льше в?дпов?дають перевернутий U-под?бний ф?льтр.Рис. 2.5 — Арх?тектура згортково? нейронно? мереж? [13]Рекурентн? нейронн? мереж?. Третя арх?тектура, приклад яко? наведено в робот?, - це арх?тектура рекурентно? нейронно? мереж? (RNN). Модел? RNN розроблен? разом ?з досл?дженнями щодо застосування нейронних мереж для розбору та перекладу мови. Як ? згорткова арх?тектура, арх?тектура RNN черпа? ?нформац?ю з тимчасово? структури вх?дних даних. Зокрема, так? типи мереж спираються на посл?довн?сть, в як?й вх?дн? дан? подаються до модел?. Рекурентн? нейронн? мереж? роблять це, приймаючи вх?д не т?льки в?д поточного вводу в посл?довност?, але ? в?д стану мереж?, який виник при розгляд? попередн?х вход?в у ц?й посл?довност?. Щоб прост?ше описати це, RNN мають пам'ять.?сну? багато вар?ант?в арх?тектури RNN. У дан?й робот? розглянемо конкретний тип рекурентно? нейронно? мереж?, що ма? назву довго? коростроково? пам’ят? (LSTM). Цей тип арх?тектури RNN прим?тний тим, що в?н ма? здатн?сть збер?гати тривалу пам'ять про посл?довн?сть разом ?з короткочасною пам'яттю останн?х мережевих виход?в. Отже, це дозволя? мереж? користуватися широкими контекстними особливостями в даних (довготривала пам'ять), а також ?нформац??ю, що нада?ться лише останн?ми елементами в посл?довност? (короткочасна пам'ять).Детальна ?люстрац?я арх?тектури LSTM представлена на рисунку 2.6. Як показано, кожен вх?д x пода?ться в обчислювальний вузол (беремо як 1-вузловий шар), який також прийма? входи з виходу попереднього шару (познача?ться si, hi). Терм?н si явля? стан мереж? на i-му член? посл?довност?. Стан - це тривала пам'ять (або розум?ння) посл?довност?, про яку пов?домляють елементи посл?довност?, як?й п?ддалася мережа. Терм?н hi — передбачення (або вих?д) шару, який в?дпов?да? заданому елементу (i) у посл?довност?. Зокрема, ми можемо розум?ти цю арх?тектуру, що склада?ться з багатьох шар?в ? ма? так? властивост?: кожен шар в?дпов?да? певному елементу в посл?довност?; кожен р?вень отриму? мережеве довгострокове розум?ння посл?довност?; ? кожен шар отриму? вих?д, сформований з попереднього елемента в посл?довност?.Детальн?ше дану рекурентну мережу зображено на рисунку 2.7. Ця "згорнута" верс?я рекурентно? (LSTM) арх?тектури представля? пер?одичну арх?тектуру як "ком?рку". Стр?лка в?д ком?рки до себе вказу? цикл зворотного зв'язку, створений як вих?д з одного елемента посл?довност?, прийма?ться як вх?д разом ?з наступним елементом у посл?довност?.Рис. 2.6 — Д?аграма рекурентно? нейронно? мереж? типу LSTM [13]Рис. 2.7 — Детал?зований вигляд LSTM-арх?тектури [13]Д?аграма модел? представлена на рисунку 8. Кр?м ком?рки LSTM, ми дода?мо к?лька стек?в повн?стю пов'язаних шар?в (?з залишковими з'?днаннями). Ц? стеки за структурою ?дентичн? стекам, як? з'являються в к?нц? згортково? модел?. ?х центральне призначення - точне налаштування прогноз?в ?з ком?рки LSTM та перетворення результату у форму, в?дпов?дну для прогнозування.Рис. 2.8 — Зак?нчена остаточна модель LSTM-арх?тектури [13]Encoder-Decoder мережа. Останн?й тип арх?тектури, який розглянутий в науков?й робот?, - це розширення арх?тектури LSTM, про яку йшлося вище. Його називають арх?тектурою кодера-декодера. Даний тип арх?тектури ? частиною ширшого класу мереж, який назива?ться посл?довн?стю моделей посл?довностей. Арх?тектура кодер-декодер спочатку була розроблена для полегшення моделювання закон?в мови. Зокрема, вона була розроблена, щоб дозволити модел? передбачати слова на виход?, розглядаючи контекст окремих сл?в на вход?, а також контекст сл?в, як? вже були передбачен? у виход?.Арх?тектура склада?ться з двох компонент?в, влучно названих кодером ? декодером. Кодер - це арх?тектура LSTM. Як описувалося вище, ця частина модел? буде враховувати кожну частину посл?довност? даних, а також в?дпов?дь кодера на попередн? частини посл?довност?. Модуль декодера також ? арх?тектурою LSTM (або под?бною). В?н буде враховувати кожну частину посл?довност?, що виводиться кодером. Декодер також врахову? власн? реакц?? на б?льш ранн? частини посл?довност?, що продуку?ться кодером.?ншими словами, декодер дозволя? модел? робити прогнози, що в?дпов?дають контексту, встановленому його попередн?ми прогнозами. Завдяки використанню такого принципу в мовних моделях це дозволя?, наприклад, забезпечити в?дпов?дь модел? граматично правильним (наприклад, тематика та д??слова погоджуються).При використанн? в модел? прогнозування модуль декодера допомага? передбачати довг? горизонти прогнозу. Розглянута ран?ше у цьому розд?л? модель змушу? модуль LSTM виробляти передбачення потр?бного горизонту за один крок. Коли горизонт прогнозування дор?вню? одному, модуль LSTM отриму? завдання передбачити наступний елемент у посл?довност?. Коли два, модуль пропуска? будь-який розгляд наступного елемента в посл?довност? ? намага?ться передбачити другий-наступний елемент у посл?довност? ? т. д. Оч?ку?ться, що модуль LSTM, як правило, точний при прогнозуванн? наступного або майже наступного елемент у посл?довност? та менш точний, коли змушений пропускати к?лька елемент?в у посл?довност?. Додавши модуль декодера, модуль кодера може, по сут?, виробляти прогнозування на крок вперед, ? модуль декодера може ?терац?йно екстраполювати цей крок прогнозування до потр?бного горизонту прогнозування.Арх?тектура кодера-декодера ?, по сут?, дв? мереж? LSTM, розташован? одна над одною. Перша мережа прийма? посл?довн?сть вх?дних даних ? виробля? ?х представлення. Вих?дне подання пода?ться у другу мережу, яка ?н?ц?ал?зу?ться з тим же станом, що ? к?нцевий стан, з модуля кодера (тобто першо? ком?рки LSTM). Зауважимо, що, на в?дм?ну в?д згорнуто? модел? та модел? LSTM, представлено? вище, ця модель не м?стить стовпа повн?стю пов'язаних шар?в на к?нц?. Хоча ми, звичайно, можемо додавати шари, ми оч?ку?мо, що модуль декодера (другий шар LSTM) насправд? викону? функц?ю тонко? настройки, яку б ?накше забезпечували повн?стю пов'язан? шари.2.5. Анал?з ефективност? арх?тектур нейронних мережВикористовуючи ?нформац?ю попередн?х розд?л?в, спробу?мо вибрати найб?льш п?дходящу модель нейронно? мереж?, опираючись на досл?дження ефективност? прогнозування р?зних арх?тектур, пор?внюючи ?х. Робота моделей, що показана в наведеному приклад?. Пор?вняння ефективност? р?зних моделей дозволя? визначити ефективн?сть та доц?льн?сть використання кожно? з них.Для перев?рки працездатност? п?дходу використання нейронних мереж в якост?? механ?зму прогнозування використано стандартн? модел? з набору б?бл?отеки keras з представлених вище для прогнозування окливання акц?й компан?? Alphabet. Дан? щодо курсу коливання вартост? акц?й можна знайти на серс? NASDAQ. Там було отримано фай у формат? csv, що м?стить щоденний стан акщ?й увигляд? таблиц?, а саме ц?ни з?дкриття торг?в, закриття, найвища/найнижча ц?ни.Для анал?зу отримамо дан? з сайту за останн?й. Роз?б’?мо дан? на 4 групи поквартально. Оц?нка в?дбуватиметься на ц?нах закриття торг?в для спрощення анал?зу даних.Теоретично модель могла б ?дентиф?кувати та витягувати в?дм?нност? вх?дних даних першого та другого порядку, але будемо надавати ?х безпосередньо, тому що це дозволя? скоротити час навчання та спростити структуру модел?. Величезним плюсом ? той факт, що додавати шари до моделей в?дносно просто, ? оч?ку?ться, що в?д цього буде можна досягти п?двищення продуктивност?. Однак, варто поки що утриматись в?д додавання додаткових сер?й задля того, щоб спростити оброб?ток модел? та представити модел?, як? легко передаються в р?зн? контексти (наприклад, прогнозування рег?онального / державного р?вня).Навчальний процес п?дпорядкову?ться стохастичност?. Початков? ваги для кожно? модел? мереж? розпод?ляються випадковим чином. Кр?м того, ми реал?зу?мо техн?ку регуляризац?? п?д назвою "випадання", в як?й для кожного кроку навчального процесу вих?д випадково вибраного п?дмножини вузл?в ?гнору?ться. Це обмежу? надм?рну залежн?сть модел? в?д будь-якого одного вузла ? тим самим зменшу? потенц?ал для надм?рного розм?щення. Кр?м цього, ? к?лька ?нших джерел стохастичност? в тренувальному процес?, включаючи саму процедуру оптим?зац?? (вар?ант м?н?-сер?йного стохастичного град??нта спуску). Як насл?док стохастичност?, властиво? модельному навчальному процесу, неодноразов? запуски ц??? ж модел? дадуть тренован? мереж?, що в?др?зняються за вагою ?, отже, прогнозами. Для розм?щення ц??? дисперс?? ми навча?мо 15 екземпляр?в кожно? модел?. Це дозволя? нам оц?нити оч?кувану продуктивн?сть модел?, а також оц?нити в?дхилення в продуктивност? протягом повторних цикл?в одн??? ? т??? ж модел?.Для оц?нки результативност? арх?тектур використову?мо наступну терм?нолог?ю. Продуктивн?сть моделей представлена в на рисунку 2.9. Кожен з перших трьох стовпц?в опису? продуктивн?сть модел? в терм?нах середньо? абсолютно? помилки (МАЕ), агреговано? за повторними ?терац?ями. Середн? значення MAE вказу? на середню продуктивн?сть модел?. Стандартне в?дхилення MAE да? певний сенс розпод?лу в продуктивност? модел? на повторних трен?нгах модел?. В?зуал?зац?я цих результат?в представлена у таблиц? 2.1Табл. 2.1Пор?вняльна таблиця результат?в анал?зу р?зних арх?тектурОбласть досл?дження (3 м?сяц?)Метод оц?нкиПовно-зв’язнаCONVLSTMКодер-декодерSPF? групаМАЕ7.312.910.24.413.5?? групаМАЕ24.825.127.320.427.1??? групаМАЕ43.147.546.230.241.2?V групаМАЕ62.3279.274.84556.8Кожна грань на ц?й ф?гур? пор?вню? розпод?л середньо? абсолютно? помилки серед учасник?в SPF (зелений) з розпод?лом середньо? абсолютно? помилки на повторних проб?гах мережево? арх?тектури (син?й) за заданим горизонтом прогнозу. Кожен стовпець граней в?дпов?да? р?зн?й мережев?й арх?тектур?, кожен ряд граней в?дпов?да? певному горизонту прогнозу. У вс?х стовпцях спостер?га?ться тенденц?я до того, що МАЕ мережевих моделей кластеруватимуться на р?вн? нижче або нижче середнього р?вня МАЕ для учасник?в SPF за перш? три горизонти прогнозування (перш? три ряди). Кр?м цього, МАЕ мережевих моделей явно почина? кластерувати над середн?м МАЕ учасника SPF, що вказу? на ефективн?сть, що поступа?ться SPF за б?льш тривалих горизонт?в прогнозу.Рис. 2.9 — Розпод?л середньо? абсолютно? помилки в арх?тектурах В ц?лому модель кодера-декодера вс? ?нш? тестован? модел?. На кожному часовому горизонт? модель декодера кодера виробля? прогнози, як? покращуються передбаченнями будь-яко? з трьох ?нших моделей. Прогнози модел? кодер-декодер демонструють на 89% зменшення похибки пор?вняно ?з середньою абсолютною помилкою учасника SPF.В межах трьох м?сяц?в вс? чотири модел? нейронно? мереж? перевищують учасник?в SPF за середньою продуктивн?стю. Як було сказано вище, це ? важливим ор??нтиром для моделей, оск?льки в?н встановлю? пор?г, завдяки якому включення модел? в прогнози SPF призведе до п?двищення точност? прогнозу SPF. Повн?стю пов'язан? (FC) та LSTM модел? працюють аналог?чно, тод? як згорнута (CONV) модель трохи в?дста? (але все ще залиша?ться конкурентоспроможною середньо? продуктивност? учасника SPF). Кодер-декодер ? найкращою моделлю.На горизонт? прогнозування на одну чверть повн?стю зв'язан? середн? та згорнут? середн? модел? продовжують перевершувати середн? серед респондент?в SPF. Середня модель LSTM дуже дещо в?дста? в?д середньо? ефективност? респондента SPF. Конволюц?йн?, повн?стю пов'язан? модел? та модел? LSTM працюють аналог?чно. Модель кодер-декодер продовжу? демонструвати ?стотне зменшення середньо? абсолютно? похибки пор?вняно з МАЕ учасника SPF.Ус? три модел? нейромереж? залишаються конкурентоспроможними для респондент?в SPF на вс?х 4 прогнозування. На цьому етап?, однак, середньостатистичн? модел? респондент?в SPF перевершують повн?стю пов'язан?, згорнут? та LSTM нейромережев? модел? (хоча ? лише з невеликим запасом). Мережа кодер-декодер продовжу? перевершувати середн? прогнози учасник?в SPF. Поза межами прогнозування лише модель кодера-декодера продовжу? перевершувати середн? прогнози учасник?в SPF.Як правило, вар?ац?я в повторних трен?нгах модел? менша, н?ж загальна вар?ац?я в окремих в?дпов?дях в SPF. ?нту?тивно цього сл?д оч?кувати - в?д учасник?в SPF сл?д використовувати сучасн? методи прогнозування, але жоден учасник не обмежений у використанн? конкретного методу. Зв?дси виплива?, що ?ндив?дуальн? в?дпов?д? на SPF в?дображають р?зницю в результатах набору под?бних, але ймов?рно, неоднор?дних моделей. Неодноразов? тренування моделей нейронно? мереж? в?дображають результати пор?вняно менш неоднор?дного набору моделей (зм?нюються лише стосовно джерел стохастичност?, як описано вище). Тому не дуже дивно, що розб?жн?сть у повторних трен?нгах моделей нейронно? мереж? менша, н?ж у в?дпов?дях SPF, але пор?вняння все-таки корисне, якщо т?льки для забезпечення в?дчуття масштабу для точност? оц?нок модел?.Висновки до розд?лу 2В даному розд?л? розглянуто, як? основн? методи використовуються для вир?шення задач? прогнозування економ?чних параметр?в та показано, як? основн? недол?ки присутн? кожному методу. Визначено загальну проблематику задач?. В даному розд?л? про?люстровано, який основний п?дх?д використову?ться для вир?шення поставлено? задач? в незалежност? в?д обраних метод?в.Розглянуто основну структуру та параметри нейронних мереж, що використовуватимуться для досл?дження. В якост? арх?тектури нейронно? мереж? обрано LSTM та модель л?н?йно? регрес?? для пор?вняння, адже саме модель довготривало? короткостроково? пам’ят? в?добража? суть прогнозування за допомогою цифрових технолог?й.Продемонстровано ?снуюч? вар?анти методик прогнозування.Визначено, як? додатков? алгоритми можуть застосовуватись безпосередньо перед застосуванням основних алгоритм?в. Наприклад, алгоритми нормал?зац?? даних перед ?хньою обробкою.Обгрунтовано виб?р досл?джуваних алгоритм?в. Проведено пор?вняння?х ефективност? за запропонованими критер?ями. Наведено приклади, що наочно показують р?зницю у ефективност? м?ж алгоритмами.РОЗД?Л 3. РЕАЛ?ЗАЦ?Я СИСТЕМИ3.1. Первинний анал?з вх?дних даних та п?дготовка системи прогнозуванняВ даному розд?л? йтиметься про етапи реал?зац?? власно? системи прогнозування економ?чних параметр?в. Зг?дно з попередн?м розд?лом, арх?тектура нейронно? мереж?, що буде використовуватися для досл?дження — LSTM (Long-short time memory), або коротка довготривала пам’ять.Серед етап?в, що супроводжуватимуться п?д час досл?дження можна виокремити так?:теоретичний базис формування ц?н;виб?р набору даних;нормал?зац?я даних;под?л даних на сет навчальний та тестов?;досл?дження та використання метод?в усереднення даних, що можна використовувати для прогнозування на крок вперед;реал?зац?я модел? на баз? арх?тектури LSTM. Внесення правок;перев?рка роботоздатност? системи.Аби п?дтвердити д??здатн?сть модел? LTSM в прогнозуванн? економ?чних параметр?в проведемо ряд досл?д?в, використовуючи також методолог?ю point-to-point prediction.Принцип формування ринкових ц?н. Комп'ютеризац?я ф?нансових поток?в та наявн?сть детальних електронних запис?в потоку замовлень та динам?ки ц?н на ф?нансових ринках за останн? десятил?ття досягли терабайт?в даних про транзакц??, пот?к замовлень та динам?ку ситуац?? на м?жнародних фондових б?ржах, як? забезпечують нам детальний зв?т про динам?ку пропозиц??, попиту та ц?ни на цих ринках [14]. Ц? дан? можуть бути використан? для вивчення природи механ?зму формування ц?н, який опису?, як ринков? ц?ни реагують на коливання попиту та пропозиц??. На високому р?вн? "механ?зм формування ц?ни" - це карта, яка явля? собою вза?мозв'язок м?ж ринковою ц?ною та зм?нними, такими як ?стор?я ц?н та пот?к замовлень:Price(t + ?t) = F Price history(0...t), Order Flow(0...t), Other Information = = F (Xt, ?t), (3.1)де Xt - це наб?р зм?нних стану (наприклад, попередн? значення ц?ни, м?нливост? ринку та потоку замовлень), над?лен? певною динам?кою, а ?t — випадковий "шум" чи можлив? непередбачуван? зм?ни, чим може бути, наприклад, надходження ново? ?нформац?? та ?нш? фактори, не заф?ксован? повн?стю зм?нними стану. Емп?ричн? та теоретичн? модел? м?кроструктури ринку, стохастичн? модел? та модел? прогнозування ц?н машинного навчання можуть розглядатися як р?зн? способи подання ц??? функц?? F у р?зних часових пром?жках ?t.Одне питання, що залиша?ться в?дкритим у досл?дження формування ц?н, — це ступ?нь, наск?льки ця функц?я F ун?версальна (тобто незалежна в?д конкретного активу, що розгляда?ться). Загальна, на в?дм?ну в?д специф?чно? для актив?в, формулювання моделей ринково? м?кроструктури, схоже, неявно передбача? таку ун?версальн?сть. Емп?ричн? дан? про ун?версальн?сть певних фактор?в [15] та масштабування зв’язк?в [16, 17, 18, 19], зда?ться, п?дтверджують г?потезу про ун?версальн?сть. Проте практика статистичного моделювання ф?нансових часових ряд?в залиша?ться специф?чною для актив?в: будуючи модель повед?нки певного активу, практикуюч? на ринку економетристи використовують лише дан? одного активу. Наприклад, модель для Microsoft була б оц?нена лише з використанням даних Microsoft ? не використовувала б дан? ?нших запас?в.Кр?м того, дан?, як? використовуються для оц?нки, часто обмежуються останн?м часовим в?кном, що в?добража? в?ру в те, що ф?нансов? дан? можуть бути ?нестац?онарними? та схильними до зм?, що може зробити стар? дан? менш важливими для прогнозування. Зважаючи на так? м?ркування, модел?, що розглядаються у ф?нансов?й економетр??, прогнозах для торг?вл? та управл?ння ризиками, залежать в?д актив?в, ? ?х параметри з часом (повторно) оц?нюються за допомогою часового в?кна останн?х даних. Тобто, для активу i в момент часу t модель прийма? наступну форму:Pricet(t+△t) = F(X0:ti, ?t | θi(t)), (3.2)де параметр модел? θi(t) пер?одично оновлю?ться, використовуючи останн? дан? про ц?ну та ?нш? зм?нн? стану, пов'язан? з активом i. Як результат, набори даних фрагментован? за активами та часом, ? нав?ть у високочастотн?й област? розм?ри набор?в даних, що використовуються для оц?нки модел? та навчання, на порядок менш?, н?ж т?, що зустр?чаються в ?нших сферах, де усп?шно застосовуються Big Data-технолог??. Це одна з причин того, що, за винятком к?лькох випадк?в [20, 21, 22, 23, 24], масштабн? методи навчання, так? як глибоке навчання [25], не були застосован? для к?льк?сного моделювання у ф?нансах. Зокрема, ?нод? виклика?ться нестац?онарн?сть аргументу аби попередити його використання в досл?дженн?.З ?ншого боку, якщо сп?вв?дношення м?ж цими зм?нними було ун?версальним ? стац?онарним, тобто якщо параметр θi(t) не зм?ню?ться ан? з активом i, ан? з часом t, то потенц?йно можна об'?днати дан? для р?зних актив?в та пер?од?в часу та використання набагато багатший наб?р даних для оц?нки/навчання модел?. Наприклад, дан? про п?двищення котировок на одному ринку актив?в можуть дати зрозум?ти, як ц?на ?ншого активу реагуватиме на сильн? дисбаланси в потоц? ц?н, незалежно в?д того, чи в?дбувався под?бний скачок для ?нших актив?в. У дан?й робот? розглядаються можлив?сть ?снування такого ун?версального, стац?онарного зв’язку м?ж потоком попиту та коливанням ринкових ц?н, використовуючи непараметричний п?дх?д, заснований на глибокому навчанн?. Глибоке навчання може оц?нити нел?н?йн? зв’язки м?ж зм?нними за допомогою "глибоких" багатошарових нейронних мереж, як? навчаються на великих наборах даних, використовуючи методи "п?дконтрольного навчання" [25].Використовуючи арх?тектуру глибоко? нейронно? мереж?, що навча?ться на баз? даних, що м?стить м?льярди транзакц?й на електронному ринку та котирування акц?й, можна отримати докази ?снування ун?версального та стац?онарного механ?зму формування ц?н, що стосу?ться динам?ки попиту та пропозиц?? на акц?? до наступних зм?н ?? ринково? ц?ни. Оц?ню?ться отримана модель такого п?дходу, випробовуючи ?? прогнози щодо напрямку руху ц?н, враховуючи ?стор?ю руху ц?н ? замовлень, у широкому д?апазон? пер?од?в часу.Ун?версальна модель формування ц?н демонстру? стаб?льну точн?сть прогнозування протягом часу для широкого спектру акц?й з р?зних сектор?в. Ц?каво, що ц? результати також стосуються запас?в, як? не ? частиною навчально? виб?рки, показуючи, що зв’язки, сформован? моделлю, ? ун?версальними та не залежать в?д актив?в. Нейронна мережа навчена под?бним чином перевершу? л?н?йн? модел?, вказуючи на наявн?сть нел?н?йних зв’язк?в м?ж потоком попиту та зм?ною ц?ни.Ун?версальний характер механ?зму формування ц?ни в?добража?ться тим, що модель, що навча?ться за даними актив?в фондових б?рж, перевершу? показник точност? прогнозування на нетренувальних зразках даних, л?н?йних та нел?н?йних моделей, характерних для тих вид?в економ?чно? д?яльност?, п?дготовлених за часовими рядами будь-якого конкретного п?дпри?мства. Також в ход? досл?дження спостер?га?ться той факт, що стандартн? перетворення даних, так? як нормал?зац?я та розпод?л навчальних даних на сектори або категор?? покращують результати навчання. З ?ншого боку, включення ?стор?? поток?в ц?н ? замовлень протягом багатьох минулих спостережень покращу? показники прогнозування, показуючи докази залежност? шляху в динам?ц? ц?н.3.2. Модель формування ц?нКожна ?терац?я в?дпов?да? ?прихованому шару?, ? глибока нейронна мережа може мати багато прихованих шар?в. Нейронн? мереж? можуть бути використан? як ?ун?версальн? наближувач?? для складних нел?н?йних зв’язк?в [26], шляхом в?дпов?дного вибору ваг у кожному шар?. У п?дходах до контрольованого навчання ваги мереж? оц?нюються шляхом оптим?зац?? регульовано? функц?? витрат, що в?добража?ться у виб?рков?й нев?дпов?дност? м?ж вих?дною мережею та бажаними виходами. У глибок?й нейромереж? це представля? собою оптим?зац?ю великого розм?ру для сотень тисяч (а то й м?льйон?в) параметр?в. Ця оптим?зац?я обчислювально ?нтенсивна через велику к?льк?сть параметр?в та велику к?льк?сть даних. Для навчання нейронних мереж використовуються алгоритми град??нтного спуску, стохастичного град??нта (наприклад, RMSprop або ADAM). Наб?р даних в дан?й робот? — це транзакц??, зд?йснюван? для 1000 акц?й, якими торгують на б?рж? NASDAQ. Датасетиможна формувати, обираючи серед списку дат за певний пер?од часу.На зображенн? 3.1 представлено, як приклад, обсяги торг?в на б?ржовому ринку. Сторона пропозиц?я явля? собою замовлення на продаж, а сторона попит — замовлення на куп?влю. Колонка “Розм?р” показу? к?льк?сть акц?й, доступних для продажу / куп?вл? за заданою ц?ною. Р?зниця м?ж найнижчою ц?ною продажу та найвищою ц?ною куп?вл? — це рамки поширення ц?ни.Рис. 3.1 — Приклад обсяг?в торг?в на ринку б?рж?[27]Електронн? замовлення на куп?влю-продаж непост?йний статус, серед яких:продаж;скасування; виконання. "Л?м?тне замовлення" — це замовлення на куп?влю чи продаж для акц?й за певною ц?ною ? в?дображатиметься в книз? замовлень за ц??ю ц?ною ? залишатиметься там до моменту скасування або виконання. "Книга обмежених ордер?в" — це короткий опис ус?х непогашених л?м?тних замовлень ?, таким чином, представля? видимий попит та пропозиц?ю на акц?ю. На фондових ринках США замовлення можна подавати за ц?нами, кратними в 1 цент. "Найкраща ц?на попиту" - це найнижчий р?вень продажу, а "найкраща ц?на пропозиц??" - найвища ц?на пропозиц??. Найкраща ц?на пропозиц?? та найкраща ц?на пропозиц?? - це ц?ни, за якими акц?? можна негайно купити або продати. "Середня ц?на" - це середня ц?на найкращого запиту та найкраща ц?на пропозиц??. Книга замовлень розвива?ться з плином часу, коли нов? замовлення надсилаються, д?юч? замовлення скасовуються ? торги виконуються.На електронних ринках, що зд?йснюють куп?влю-продаж акц?й, нов? замовлення можуть надходити з високою частотою - ?нод? кожна м?кросекунда - ? списки замовлень можуть оновлюватися м?льйони раз?в на день. Це призводить до терабайт даних, як? можна використовувати для побудови керовано? даними модел? процесу формування ц?н.Як було обумовлено вище, для навчання використову?ться LSTM арх?тектура. Кожен блок LSTM ма? внутр?шн?й стан, який п?дтриму? нел?н?йне подання вс?х минулих даних. Цей внутр?шн?й стан оновлю?ться по м?р? надходження нових даних. У наш?й мереж? ? 3 шари одиниць LSTM з подальшим к?нцевим шаром випрямлених л?н?йних одиниць (ReLU). Розпод?л ймов?рностей для наступного руху ц?ни виробля?ться за допомогою функц?? активац?? softmax. Блоки LSTM спец?ально розроблен? для ефективного кодування тимчасово? посл?довност? даних [28, 29].Навчання нейронно? мереж? поляга? в прогнозуванн? наступний рух ц?н в?д вектора зм?нн? стану, як? кодують ?стор?ю книги замовлень за багатьма часовими пром?жками, що формують спостереження. ?ндекс t явля? собою к?льк?сть зм?н ц?ни. На високому р?вн? мережа LSTM опису?ться наступною функц??ю:(Yt, ht) = f(Xt, ht-1, θ), (3.3)де Yt— прогнозування наступних ц?нових коливань, Xt— стан журналу замовлень на момент часу t, ht-1— внутр?шн?й стан модел? глибокого навчання, що репресу? ?нформац?ю, витягнуту з ?стор?? X до t, ? θ познача? параметри модел?, як? в?дпов?дають вагам в нейромереж?. У кожн?й точц? t модель використову? поточне значення зм?нних стану Xt(тобто поточний журнал замовлень) та нел?н?йне подання вс?х попередн?х даних ht-1, що п?дсумову? в?дпов?дн? особливост? ?стор?? потоку замовлень, щоб передбачити наступн? коливання ц?н. В принцип?, це наштовху? на под?бний висновок: ?стор?я зм?нних стану (X s, s ≤ t) може впливати на еволюц?ю системи, зокрема на динам?ку ц?н, у будь-який майбутн?й час T ≥ t нел?н?йним способом. Альтернативн? п?дходи моделювання, як правило, не дозволяють довол? гнучко по?днувати нел?н?йност? та залежност? в?д ?стор?? зм?н под?бним чином.Параметр θ вважа?ться пост?йним впродовж часу. Таким чином, ми ма?мо пост?йний вплив даного параметру на вих?д шару нейронно? мереж?. Стохастичний крок спуску град??нта в момент часу t вимага? обчислення чутливост? виходу до θ за допомогою ланцюгового правила назад через попередн? часи t - 1, t - 2,. . . , t - T (зазвичай його називають "зворотним розповсюдженням у час?"). Теоретично, розмноження ма? в?дбуватися до часу 0 (тобто, T = t). Однак це обчислювально недоц?льно, ? ми скорочу?мо розмноження на в?дстан? з деяким в?дставанням T. Дал? буде обговорено вплив минуло? ?стор?? журналу замовлень та ?довгу пам’ять? ринку.Отримана мережа LSTM включа? до сотень тисяч параметр?в. Це пор?вняно мало в пор?внянн? з мережами, як? використовуються, наприклад, для розп?знавання зображень чи мовлення, але це величезне число пор?вняно з економетричними моделями, як? традиц?йно використовуються у ф?нансах. Загальноприйнята думка, що ф?нансов? дан? ? занадто неоднор?дними ? нестатичними для створення таких великих моделей без надм?рного розм?щення. В даному випадку, зг?дно отриманих результат?в, ма?мо, що таке бачення ситуац?? не завжди виправдане3.3. Формування датасет?вРозд?ля?мо загальну к?льк?сть датасет?в запас?в на дв? групи приблизно 500 акц?й; навчання проводиться за трансакц?ями та котируваннями на акц?? з першо? групи. розбива?мо за наступними категор?ями:? модел?, що стосуються конкретного п?дпри?мства, навчаються з використанням даних про вс? транзакц?? та котирування для конкретн? акц??;? ?ун?версальна модель?, навчена з використанням даних про вс? транзакц?? та котирування для вс?х п?дпри?мств навчального набору.Вс? модел? п?дготовлен? для прогнозування напрямку наступного ц?нового руху. Зокрема, якщо τ1, τ2, . . . — це час, коли зм?ню?ться середня ц?на Pt, ми оц?ню?мо ?[Pτk+1- Pτk > 0 | Xτ0:k] ? ?[Pτk+1- Pτk < 0 | Xτ0:k], де Xτстан журналу. Тому модел? передбачають, чи буде наступний рух ц?н вгору чи вниз. Под?? нер?вном?рно розпод?лен? у час?. ?нтервал часу τk+1-τk+1 м?ж ц?новими рухами може значно в?др?знятися в?д дня до к?лькох дн?в. Тому точн?сть прогнозу модел? для дано? акц?? вим?рю?ться через пропорц?ю спостережень, для яко? вона правильно прогнозу? напрямок наступного коливання ц?ни. Це можна оц?нити за допомогою емп?ричного оц?нювачаAi=Kjj = 0nKj×100%, (3.4)де Ki— к?льк?сть зм?н ц?ни, коли модель правильно прогнозу? напрямок ц?н для акц?й i, j = 0nKj— загальна к?льк?сть коливань ц?н.Ус? результати в час? ? позаб?ржовими. Тобто точн?сть оц?ню?ться за часовими пер?одами поза навчальним набором. Про точн?сть модел? пов?домля?ться шляхом розпод?лу поперечного перер?зу оц?нки точност? Ai по запасах в тестов?й виб?рц?, а модел? пор?внюються шляхом пор?вняння ?х бал?в точност?. Оц?ню?ться точн?сть ун?версально? модел? для запас?в поза навчальним набором. Важливо, що це означа?, що оц?ню?ться точн?сть прогнозу для запас?в i, використовуючи модель, яка п?дготовлена ??без будь-яких даних про запас. Це перев?ря?, чи може ун?версальна модель узагальнити абсолютно нов? запаси. Зазвичай наб?р даних, що не мають виб?рки, становить 3-м?сячний пром?жок часу. У набор? даних без стац?онарного тренду (як у випадку з такими високими частотами) випадковий прогноз ("перевертання монети") дасть оч?куваний бал у 50%. Однак зважаючи на розм?ри виб?рок та обмеження обчислювальних ресурс?в допустиме невелике в?дхилення (> 1-2%) в?д цього 50% ор??нтиру.3.4. Пор?вняння використання л?н?йних моделей та моделей глибокого навчанняЛ?н?йн? просторов? модел?, так? як модел? векторно? авторегрес?? (VAR), широко використовуються при моделюванн? високочастотних даних та в емп?ричному досл?дженн? м?кроструктури ринку [30] ? дають природний ор??нтир для оц?нки ефективност? прогнозу. Л?н?йн? модел? легко оц?нити та заф?ксувати простим способом тенденц??, л?н?йн? кореляц?? та автокореляц?? зм?нних стану.Л?н?йна модель (VAR) може бути сформульована так: при кожному спостереженн? ми оновлю?мо вектор л?н?йних ознак ht, а пот?м використову?мо проб?т-модель для умовно? ймов?рност? зростання ц?ни вгору з урахуванням зм?нних стану:ht=Aht-1+BXt (3.5)Yt=?(ΔPt>0 | Xt, ht) = G(CXt + Dht) (3.6)де G залежить в?д розпод?льних припущень щодо ?нновац?й л?н?йно? модел?. Наприклад, якщо ми використову?мо лог?стичний розпод?л для ?нновац?й л?н?йно? модел?, то ймов?рн?сть розпод?лу наступного руху ц?ни зада?ться функц??ю softmax (лог?стична), застосована до л?н?йно? функц?? колекц?й поточного замовлення та л?н?йних особливостей:?(ΔPt>0 | Xt, ht) =Softmax(CXt + Dht). (3.7)Ми пор?вню?мо нейронну мережу з л?н?йною моделлю для приблизно 500 запис?в. Для пор?вняння моделей ми пов?домля?мо про р?зницю бал?в точност? для одного тестового набору даних.Нехай:Li — точн?сть л?н?йно? модел? gθi, що залежить в?д запасу, для активу i, що оц?ню?ться на даних лише з запасу i;Ai — точн?сть, специф?чна для модел? глибокого навчання fθ, яку я навчав на даних лише ?з запис?в i, таAi — точн?сть для активу i ун?версально? модел? глибокого навчання fθ, що навча?ться на об'?днаному набор? даних ус?х котирувань та транзакц?й для вс?х запис?в.Л?вий граф?к на рисунку 3.2 пов?домля? про розпод?л поперечного перер?зу для зб?льшення точност? Ai—Li при переход? в?д л?н?йно? конкретно? для запису модел? до специф?чно? модел? навчання глибокого навчання. Ми спостер?га?мо ?стотне зб?льшення точност? в?д 10% до 15% для б?льшост? запис?в при включенн? нел?н?йних ефект?в за допомогою нейронних мереж. Правий граф?к на рисунку 4 в?добража? г?стограми Ai (червоний) та Li (син?й). Ч?тко спостер?га?ться, що перех?д в?д специф?чно? для запису л?н?йно? модел? до ун?версально? нел?н?йно? модел? навчений на вс?х запасах значно покращу? точн?сть прогнозування приблизно на 8%.Рис. 3.2 — Пор?вняння глибоко? нейронно? мереж? з л?н?йними моделямиМодел? навчаються прогнозувати коливання {?1, +1} середньо? ц?ни. Пор?вняння для приблизно 500 запис?в та виб?ркових результат?в, представлених за червень серпня 2015 року.Л?ва цифра: зб?льшення точност? моделей нейронних мереж, характерних для запису, пор?вняно з л?н?йними моделями. Права ф?гура: точн?сть ун?версально? нейромереж? (червона) пор?вняно з л?н?йними моделями (син?й).Модель нейронно? мереж? ? ефективн?шою л?н?йну модель, оск?льки вона здатна оц?нити нел?н?йн? залежност? м?ж ц?новою динам?кою та статистикою, що представля? видимий попит та пропозиц?ю на акц??. Це узгоджу?ться з великою емп?ричною та економетричною л?тературою, що документу? нел?н?йн? ефекти у ф?нансових часових рядах, але велика ампл?туда цього вдосконалення може бути в?днесена до гнучкост? нейронно? мереж? у представленн? нел?н?йностей.Б?льш конкретно, анал?з чутливост? нашо? модел?, керовано? даними, виявля? ст?йк? нел?н?йн? зв’язки м?ж зм?нними стану та ц?новими рухами, тобто нел?н?йн? особливост?, корисн? для прогнозування. На рисунку 3.3 представлен? приклади тако? особливост?: сп?вв?дношення м?ж коливаннями на фондовому ринку. Так? в?дносини вивчалися в моделях динам?ки ринку обмежених порядк?в [26, 27]. Зокрема, в [27] було показано, що коли пот?к замовлень симетричний, то ?сну? "ун?версальне" в?дношення — не залежне в?д параметр?в модел? — м?ж глибиною ставки, глибиною запиту та ймов?рн?стю зниження ц?ни при наступному ц?новому перем?щенн?. Однак вих?дн? дан? в цих моделях залежать в?д багатьох статистичних припущень, як? можуть бути, а можуть ? не дотримуватися, ? ун?версальн?сть таких в?дносин залиша?ться емп?рично п?дтвердженою.Рис. 3.3 — Сп?вв?дношення м?ж коливаннями на фондовому ринку[27]Анал?з показу?, що д?йсно ? докази такого ун?версального в?дношення у широкому д?апазон? актив?в та пер?од?в часу. На рисунку 3.3 (зл?ва) в?добража?ться ймов?рн?сть зниження ц?ни як функц?я глибини (к?лькост? акц?й) за найкращою ц?ною / пропозиц??ю. Чим б?льший розм?р запиту, тим б?льше шанс?в, що наступна ц?на виявиться зниженою. Ймов?рн?сть приблизно ? пост?йною уздовж центрально? д?агонал?, де дисбаланс ставки / запитання дор?вню? нулю. Однак, як спостер?га?ться в моделях черги [30], нав?ть за спрощення припущень, сп?вв?дношення м?ж ц??ю ймов?рн?стю та р?зними заходами дисбалансу ставки / запитання не ? л?н?йним. Кр?м того, так? модел? черги зазвичай фокусуються на вплив? глибини у верхн?й частин? книги замовлень, ? складн?ше витягувати ?нформац?ю з б?льш глибоких р?вн?. Граф?к правого контуру на рисунку 3.3 в?добража? вплив л?м?тних замовлень глибше в коливанн? ц?н на ринку (тут: загальний розм?р, агрегований на р?внях в?д 5 до 10) на ймов?рн?сть зниження ц?ни. 3.5. Процес прогнозування ринкових ц?нДо головних задач, поставлених перед виконанням науково? роботи можна в?днести наступн?:1) вивчення ц?н на акц?? на фондовому ринку;2) реал?зац?я базово? модел? за допомогою л?н?йно? регрес??;3) реал?зац?я LSTM за допомогою б?бл?отеки Keras;4) пор?вняння результат?в.Для цього проекту показником ефективност? буде використання середньоквадратично? помилки (MSE) та квадрату середньоквадратично? помилки (RMSE), обчислено? як р?зниця м?ж передбачуваними та фактичними ц?льовими значеннями б?ржових ц?н за скоригованою близькою ц?ною та дельтою м?ж показниками ефективност? модель (л?н?йна регрес?я) та наша основна модель (модель глибокого навчання).Дан?, що використовуються в цьому проект?, ? дан? про ринков? ц?ни на б?рж? для компан?? Alphabet Inc з 20 листопада 2009 року по 20 листопада 2019 року, це низка точок даних, ?ндексованих у часовому порядку або часовому ряду. Метою було передбачити ц?ну закриття на будь-яку дату п?сля тренування. Для зручност? в?дтворення та повторного використання вс? дан? були взят? з в?дкрито? бази даних NASDAQ. Прогноз повинен бути зроблений для ц?ни закритих (скоригованого закриття) даних. Потр?бно передбачити ц?ну акц?? на момент закриття фондового ринку.З цього набору даних можемо зробити висновок, що висок? та низьк? значення не ? важливими ознаками даних. Оск?льки не ма? значення, як? були найвищ? ц?ни акц?й за певний день чи як? були найнижч? торгов? ц?ни. Важливим ? ц?на в?дкриття акц?й та ц?ни закриття акц?й. Якщо наприк?нц? дня у нас б?льш висок? ц?ни закриття, н?ж ц?ни на в?дкриття, ми ма?мо певний прибуток, ?накше ми побачили збитки. Також обсяг частки важливий як зростання.Рис. 3.4 — Приклад вх?дних данихВ ход? досл?дження з’ясувалося, для коригування арх?тектури нейронно? мереж? та оптим?зац?? модел? можна налаштовувати наступний список параметр?в:Вх?дн? параметри:попередня обробка та нормал?зац?я даних.Арх?тектура нейронно? мереж?:к?льк?сть шар?в (в нашому випадку — 5);к?льк?сть вузл?в (к-сть вузл?в на шар. Перев?рено 1,3,8, 16, 32, 64, 100,128).Параметри навчання модел?навчання / Тест Спл?т (ск?льки набору даних для тренувань пор?вняно з тестовою моделлю; збер?га?ться пост?йним на р?вн? 82,95% та 17,05% для еталон?в та модел? LSTM);набори перев?рок (пост?йно на р?вн? 0,05% навчальних набор?в);розм?р парт?? (ск?льки часових крок?в включити п?д час одного кроку навчання; утриму?ться на р?вн? 1 для базово? модел? LSTM та на 512 для покращено? модел? LSTM);функц?я оптим?затора (функц?я оптим?зац?? шляхом м?н?м?зац?? помилок; використову?ться "Адам" протягом усього часу);епохи (ск?льки раз?в проходити навчальний процес; утриму?ться 1 для базово? модел? та 20 для покращеного LSTM).Бенчмарк. Для цього проекту використано модель л?н?йно? регрес?? як основний ор??нтир. Одн??ю з поставлених ц?лей було зрозум?ти в?дносн? показники ефективност? та впровадження машинного навчання в технолог?? прогнозування. Цей л?н?йний регресор базувався на пор?внянн? показник?в помилок MSE та RMSE, використовуючи той самий наб?р даних, що ? модел? глибокого навчання. Оц?нка тренувань: 0,1852 MSE (0,4303 RMSE) Оц?нка тесту: 0,08133781 MSE (0,28519784 RMSE)Обробка даних. Завантаження та попередня обробка даних в межах даного проекту в?дбува?ться у так?й посл?довност?, значна частина яко? була модульована у файл preprocessing.py для ?мпорту та використання у вс?х файлах:завантаження даних з бази NASDAQ;видалення неважливих даних (дата, найнижчу ? найвищу ц?ну протягом дня) ?з отриманих даних;нормал?зац?я даних за допомогою допом?жно? функц?? MinMaxScaler з б?бл?отеки scikit.learn.збереження нормал?зованих даних;розпод?л набору вх?дних даних на навчальний (68.53%) та тестовий (31.47%) датасети для навчання модел? л?н?йно? регрес??;розпод?л набору вх?дних даних на навчальний (82.95%) та тестовий (17.05%) датасети для навчання модел? LSTM;Рис. 3.5 — Фрагмент оброблених вх?дних данихРис. 3.6 — Фрагмент нормал?зованих данихП?сля завантаження та попередньо? обробки даних, процес навчання в?дбува?ться посл?довно через ус? три модел?, як описано нижче на рисунку 3.7.Налаштування системи. В ход? досл?дження система налаштовувалась шляхом п?дбору р?зних параметр?в тонко? настройки для LSTM, щоб отримати кращ? прогнози. Покращувалися тестування та анал?з кожного параметру. П?сля цього, в?дбиралось п?дсумкове значення для кожного з них. Для вдосконалення LSTM були реал?зован? наступн? кроки:зб?льшено к?льк?сть прихованих вузл?в з 100 до 128;додано випадання 0,2 на кожному шар? LSTM;зб?льшений розм?р парт?? з 1 до 512;зб?льшення епох з 1 до 20Таким чином, пол?пшена моя середньоквадратична помилка для тестових набор?в, в?д 0,01153170 МSЕ до 0,00095163 МSЕРис. 3.7 — Алгоритм навчання системи3.6. РезультатиЗ кожно корекц??ю модел?, отриму?мо кращ? показники для параметр?в MSE та RMSE. Наведемо результати для л?н?йно? регрес??:навчальний наб?р даних: 0.1853 MSE (0.4301 RMSE);тестовий наб?р даних: 0.08235702 MSE (0.28519784 RMSE).Граф?ки пор?вняння передбачених та фактичних скоригованих показник?в ц?н закриття для акц?й компан?? Гугл представлено на рисунку 3.8Рис. 3.8 — Граф?к пор?вняння передбачених та фактичних ц?н закриття за методом л?н?йно? регрес??Результати для базово? LSTM-модел?:навчальний наб?р даних: 0.00089497 MSE (0.02991610 RMSE);тестовий наб?р даних: 0.01153170 MSE (0.10738577 RMSE).Граф?ки пор?вняння представлено на рисунку 3.9Рис. 3.9 — Граф?к пор?вняння передбачених та фактичних ц?н закриття за методом базово? LSTM-модел?Результати для удосконалено? LSTM-модел?:навчальний наб?р даних: 0.00032478 MSE (0.01802172 RMSE);тестовий наб?р даних: 0.00093063 MSE (0.03050625 RMSE).Граф?ки пор?вняння представлено на рисунку 3.10Рис. 3.10 — Граф?к пор?вняння передбачених та фактичних ц?н закриття за методом удосконалено? LSTM-модел?Висновки до розд?лу 3В даному розд?л? проведено первинний анал?з даних. Описано покроково д??, що були виконано в ход? практично? частини досл?дження.У третьому розд?л? основ увагу була зосереджена на анал?з? вх?дних даних та розробц? модел? прогнозування економ?чних параметр?в на приклад? ц?н фондових б?рж. Запропонований вар?ант модиф?кац?? LSTM-модел?. Проведено пор?вняння базово? LSTM-модел?, вдосконалено? та модел? л?н?йно? регрес?? пор?вняння за запропонованими критер?ями. Наведено приклад, що п?дтверджу? ефективн?сть його роботи. РОЗД?Л 4. РОЗРОБКА СТАРТАП-ПРОЕКТУУ даному розд?л? буде виконано анал?з та розробку стартап-проекту в?дпов?дно до теми дисертац??.4.1. Опис ?де? проектуРозпочнемо з опису можливих напрямк?в до застосування продукту стартапу. Розглянемо основн? вигоди, як? може отримати користувач продукц?? даного стартапу. Детальн?ше розглянуто в таблиц? 4.1.Табл. 4.1.Опис ?де? стартап проектуЗм?ст ?де?Напрямки застосуванняВигоди для користувачаСтворення системи прогнозування економ?чних параметр?вСистеми, що передбачають економ?чн? параметри ц?н на фондових ринкахЕфективн?ше використання ресурс?в Системи, що використовуються для планування економ?чно? д?яльност? п?дпри?мстваЕфективн?ше планування ресурс?в економ?чного плануванняНаступний крок передбача? наступн? пункти:анал?з техн?ко-економ?чних можливостей;анал?з характеристик ?де? та пор?вняння з попередн?м колом конкурент?в;До основних конкурент?в можна в?днести:система “Галактика” (модуль “Ф?нансовий анал?з”);система БЕСТ-Ф;р?зн? системи прогнозування економ?чних параметр?в;Табл. 4.2.Визначення сильних, слабких та нейтральних характеристик ?де? проекту№Техн?ко-економ?чн? характеристики ?де?М?й проектКонкурентиWNS1231Висока швидк?сть прогнозування +--+ +2Можлив?сть ?нтеграц?? системи як елемент ?ншо? системи++-++3Ун?версальн?сть +++-+4Кросплатформен?сть+--+++4.2. Технолог?чний аудит ?де? проектуДля того, щоб ефективно реал?зувати ?дею прогнозування параметр?в економ?чних систем, необх?дно провести технолог?чний аудит. Результати аудиту наведен? в таблиц? 4.3.Табл. 4.3.Технолог?чна зд?йсненн?сть проекту№?дея проектуТехнолог?? ?? реал?зац??Наявн?сть технолог?йДоступн?сть технолог?й1Система прогнозування економ?чних параметр?вPython 3.8.0+НаявнаУ в?дкритому доступ?2NASDAQ databaseНаявнаУ в?дкритому доступ?3JWTНаявнаУ в?дкритому доступ?4matplotlib.pyplotНаявнаУ в?дкритому доступ?5pandasНаявнаУ в?дкритому доступ?6numpyНаявнаУ в?дкритому доступ?7kerasНаявнаУ в?дкритому доступ?8sklearn.preprocessingНаявнаУ в?дкритому доступ? Зг?дно з результатами технолог?чного аудиту, вс? технолог?? знаходяться у в?льному доступ?.4.3. Анал?з ринкових можливостей стартап-проектуНаступним кроком стане анал?з ринку. Результат наведено в таблиц? 4.4.Табл. 4.4.Попередня характеристика потенц?йного ринку стартап-проекту№Показники стану ринкуХарактеристика1К?льк?сть головних гравц?в, од9-122Загальний обсяг продаж, грн/ум.одСередня варт?сть л?ценз?? на використання склада? 600 долар?в на р?к3Динам?ка ринкуЗроста?, однак не надто швидко4Наявн?сть обмежень для входуДостатня конкуренц?я. При вибор? р?шення з прогнозування повед?нки ринку дов?ряють в основному компан?ям з репутац??ю5Специф?чн? вимоги до стандартизац?? та сертиф?кац??Не передбачено чинним законодавством Приведемо ще одну таблицю. в н?й наведемо потенц?йн? групи кл??нт?в, ?хн? потреби та вимоги до продуктуТабл. 4.5.Характеристика потенц?йних кл??нт?в стартап-проекту№Потреба, що форму? ринокЦ?льова аудитор?яВ?дм?нност? у повед?нц? р?зних потенц?йних ц?льових групВимоги споживач?в до товару1Потреба у ефективному прогнозуванн? економ?чних показник?вВеликий б?знес, р?зн? ?нвестиц?йн? компан?? та гравц? на фондових б?ржахвисок? вимоги до точност? прогнозу, р?зний бюджет, який компан?я готова витрачати на прогнозуванняГарант?я над?йност? системи, хороша репутац?я постачальника на ринкуП?сля визначення потенц?йних груп кл??нт?в проведено анал?з ринкового середовища на фактори загроз (табл. 4.6) та можливостей (табл. 4.7).Табл. 4.6.Фактори загрози№ФакторЗм?ст загрозиМожлива реакц?я компан??1Людський факторНеможлив?сть повн?стю врахувати людський фактор у процес? формування ринково? ц?ниВдосконалення модел? нейронно? мереж?2Консерватизм серед гравц?в ринкуВелик? компан?? та гравц? фондових б?рж послуговуються старими методами розрахунку ц?н на товариРеклама та просування продукту в ?нформац?йному пол?3Висока частота помилок системиНеправильн? налаштування модел? в ход? навчання/донавчанняЧаст? оновлення, рефакторинг методолог?? навчання нейронно? мереж?Табл. 4.7.Фактори можливостей№ФакторЗм?ст можливост?Можлива реакц?я компан??1Залучення ?нвестиц?йМожлив?сть залучення ?нвестиц?й в?д ?нвестиц?йних фонд?в та ?нших компан?йМожлив?сть розширення штату, та найму найкращих спец?ал?ст?в з област? безпеки2В?дсутн?сть конкуренц??В?дсутн?сть високо? конкуренц?? на ринку прогноз?вЗб?льшення ц?ни на послуги компан??Риси конкуренц??, притаманн? розроблювальн?й систем?, наведен? в таблиц? 4.8.Як можна побачити в дан?й таблиц?, конкуренц?я на м?жнародному ринку ? не надто високою, однак той факт, що велик? ф?нансов? гравц? р?дко надають перевагу старим перев?реним системам б?льше, н?ж новим, ускладню? конкуренц?ю на цьому ринку.Табл. 4.8.Ступеневий анал?з ринку конкуренц??Особливост? конкурентногосередовищаВ чому проявля?ться дана характеристикаВплив на д?яльн?сть п?дпри?мства (можлив? д?? компан??, щоб бути конкурентоспроможною)1. Вказати тип конкуренц??: чистаДосить велика к?льк?сть незалежних гравц?в на ринкуФокусування уваги на точн?сть прогнозування економ?чних показник?в системою2. За р?внем конкурентно? боротьби: м?жнац?ональнаКомпан?? працюють на м?жнародному ринкуНеобх?дн?сть працювати на св?товому ринку3. За галузевою ознакою: м?жгалузеваПостачальники займаються не лише виробництвом вузько-направленого ПОСконцентруватися на сут? завдання прогнозування та якост? 4. Конкуренц?я за видами товар?в: товарно-видоваНаявн?сть на ринку к?лькох авторитетних постачальник?вЗдобувати авторитет влаштовуючи спец?ал?ст?в з розробки систем штучного ?нтелекту5. За характером конкурентних переваг: ц?новаВелик? в?дм?нност? в ц?н? в?д р?зних постачальник?вЗабезпечити конкурентну ц?ну на продукт6. За ?нтенсивн?стю: марочнаПостачальники виступають п?д певним брендомСтворення вп?знаваного бренду Виокремимо прямих конкурент?в, що ? на даний момент на ринку прогнозування, займають найб?льш? частки ринку та можуть становити загрозу розвитку стартапу. Серед таких: ?нтелект-Серв?с, ?НЕК, Oxford Economics, JPMorgan. Згвдно з цим, викона?мо анал?з конкуренц?? в галуз? за М. Портером.Табл. 4.9.Анал?з конкуренц?? в галуз? за М. ПортеромСкладов?анал?зуПрям? конкурентив галуз?Потенц?йн?конкурентив галуз?Постача-льникиКл??нтиТовари-зам?нники?нтелект-Серв?с, ?НЕК, Oxford EconomicsANZ, Р?ИС?нтелект-Серв?с, ?НЕК, Oxford EconomicsВелик? компан?? та гравц? фондових б?ржДостатня к?льк?стьВисновки?нтенсивна конкурента боротьбаВих?д на ринок можливий за умови надання конкуренто здатних умовПостачальники встановлюють високу варт?сть на л?ценз??Кл??нти висувають вимоги до виробник?в оск?льки конкуренц?я високаВ?дсутн?сть локальних товар?в- зам?нник?в Робота на ринку можлива, однак необх?дно надати конкурентоздатну ц?ну та наб?р характеристик продукту. Також, система ма? працювати справно, оск?льки замовники напряму ризикують власними коштами.Об?рунтування фактор?в конкурентоспроможност? наведено в табл. 4.10.Табл. 4.10.Обгрунтування фактор?в конкурентоспроможност?№Фактор конкурентоспроможност?Об?рунтування (наведення чинник?в, що роблять фактор для пор?вняння конкурентних проект?в значущим)1Ун?версальн?сть системиМожлив?сть використання системи для к?лькох п?дпри?мств без сутт?вих зм?н2Швидк?сть роботиЗа рахунок навченно? модел? нейронно? мереж?, прогнозування даних в?дбува?ться значно швидше, що дозволя? ефективн?ше реагувати на зм?ни ринку.3Модель п?дписокВикористання модел? п?дписок дозволить мати пост?йну групу користувач?в та дозволить зменшити одноразов? витрати користувач?в Перейдемо до пор?вняльного анал?зу сильних та слабких стор?н у пор?внянн? з конкуруючим продуктом. Результат пор?вняння зведений в таблицю 4.11.Табл. 4.11.Пор?вняльний анал?з сильних та слабких стор?н№Фактор конкурентоспроможност?Бали 1-20Рейтинг товар?в-конкурент?в-3-2-101231Ун?версальн?сть системи 16 х 2Швидк?сть роботи14 х 3Модель п?дписок17 х Ф?нальним кроком ? SWOT-анал?з (табл. 4.12).Табл. 4.12.SWOT-анал?з стартап-проектуСильн? сторони: ун?версальн?сть, швидк?сть обробки данихСлабк? сторони: б?льша похибка при прогнозуванн?, н?ж у метод?в, зточених на анал?з одн??? галуз?Можливост?: захоплення платформ, що не п?дтримуються конкурентамиЗагрози: висока конкуренц?я на ринкуНа основ? анал?зу розроблено альтернативи ринково? повед?нки та перел?к заход?в з ?х впровадження (табл. 4.13).Табл. 4.13Альтернативи ринкового впровадження стартап-проекту№Альтернатива (ор??нтовний комплекс заход?в) ринково? повед?нкиЙмов?рн?сть отриманняресурс?вСтроки реал?зац??1Зац?кавлення ?нших гравц?вПродаж проекту чи його поглинання ?ншою компан??юДек?лька рок?в2Переведення продукту на модель open sourceМожлив?сть безкоштовного залучення програм?ст?в та спец?ал?ст?в з област? ?нформац?йно? безпекиДо року3Продаж р?шеньМожлив?сть розвитку на тих платформах, що не п?дтримують конкуренти за б?льш низькою ц?ноюДек?лька м?сяц?в Варто завважити, що перший пункт може бути проданий ?ншим компан?ями на тих платформах, де стартап не зможе конкурувати.4.4. Розроблення ринково? стратег?? проектуНаведемо опис ц?льових потенц?йних споживач?в продукту, що продуку?ться стартап-проектом.Такими групами ? великий та середн?й б?знес у галуз? ф?нансових операц?й, реф?нансування та ?нвестиц?й. Дан? зведено до таблиц? 4.14Табл. 4.14Виб?р ц?льових груп потенц?йних споживач?в№Опис проф?лю ц?льово? групи потенц?йних кл??нт?вГотовн?сть споживач?в сприйняти продуктОр??нтовний попит в межах ц?льово? групи (сегменту)?нтенсивн?сть конкуренц?? в сегмент?Простота входу у сегмент1Середн?й б?знесГотов?Високий попит за встановлення, але ? недов?ра до неперев?рених технолог?йНе надто високаПросто2Великий б?знесНе готов?Високий, однак у б?льшост? вже ?снують контракти з ?ншими постачальникамиВисокаСкладнийОбрано групи стартап?в, середнього б?знесу, оск?льки великий б?знес достатньо пов?льно прийма? р?шення та вимага? п?дписань ?ндив?дуальних контракт?в, що може бути складним в масштабуванн? та п?дтримц? продукту.Перед тим, аби визначити рентабельн?сть входу на сегменти ринку, що займаються анал?зом ? прогнозуванням ф?нансових показник?в потр?бно визначити базову стратег?ю розвитку (табл. 4.15).Табл. 4.15.Визначення базово? стратег?? ринку№Обрана альтерна-тива розвитку проектуСтратег?я охоплення ринкуКлючов? конкурентоспромо-жн? позиц?? в?дпов?дно до обрано? альтернативиБазова стратег?я розвитку1Продаж р?шеньНизька ц?на та п?дтримка платформ з меншою конкуренц??юЗменшення соб?вартост? товару та концентрац?я на потребах невеликих груп користувач?вКонцетрова-ний маркетинг У таблиц? 4.16. наведемо базову стратег?ю конкурентно? повед?нки майбутнього продуктуТабл. 4.16.Визначення базово? стратег?? конкурентно? повед?нки№Чи ? проект ?пер-шопрох?дцем? наринку?Чи буде компан?я шукати нових споживач?в, або забирати ?снуючих у конкурент?в?Чи буде компан?я коп?ювати основн? характеристики товару конкурента, ? як??Стратег?я конкурентно? повед?нки1ЧастковоСпроба забирати частку ?снуючих, пошук нових споживач?вН?, не будеСтратег?я заняття конкурентно? н?ш? На основ? вимог групи споживач?в до продукту та постачальника, обрано? стратег?? конкурентно? повед?нки та базово? стратег?? розвитку продукту визначимо стратег?ю позиц?онування (табл. 4.17).Табл. 4.17.Визначення стратег?? позиц?онування№Вимоги до товару ц?льово? аудитор??Базова стратег?я розвиткуКлючов? конкурентоспроможн? позиц?? власного стартап-проектуВиб?р асоц?ац?й, як? мають сформувати комплексну позиц?ю власного проекту (три ключових)1Точн?сть прогнозуванняЗалучення пров?дних спец?ал?ст?в в галуз? нейронних мереж, розширення функц?ональност?Низька ц?на п?дписки, швидк?сть роботиТочн?сть, швидк?сть, над?йн?сть 4.5. Розроблення маркетингово? програми стартап-проектуСформу?мо маркетингову концепц?ю продукту. Результат конкурентоспроможност? наведено в таблиц? 4.18.З огляду на результат, на ринку в?дсутн?й продукт, спрямований на ун?версальн?сть прогнозування з впровадженням нейронних мереж.Табл. 4.18.Визначення ключових переваг концепц?? потенц?йного товару№ПотребаВигода, яку пропону? товарКлючов? переваги передконкурентами (?снуюч? або так?, що потр?бно створити)1Ун?версальн?стьПрогнозування економ?чних параметр?в для р?зних п?дпри?мствНе потр?бно робити додаткових зм?н в продукт? для початку використання Розробка трир?внево? маркетингово? модел? товару наведена у табл. 4.19.Табл. 4.19.Опис трьох р?вн?в модел? товаруР?вн? товаруСутн?сть та складов?1. Товар за задумомНеобх?дн?сть прогнозування економ?чних параметр?в 2. Товар у реальному виконанн?Властивост?/характеристикиРозм?рСирцевий код нейронно? мереж?Модель, згенерована нейронно? мережеюТренувальний датасетТестовий датасет20 Мб2,7 Мб8 Гб2 ГбЯк?сть: тестування за допомогою перев?рки працездатност? модел? на тренувальному датасет?Пакування: в?дсутн?Марка: назва орган?зац??-розробника + назва товару3. Товар ?з п?дкр?пленнямДо п?дписки: модель, згенерована нейронною мережеюП?сля п?сля п?дписки: особистий каб?нет на сайт? з доступом до модел?За рахунок чого потенц?йний товар буде захищено: модель буде знаходитися в зашифрованому вигляд? на в?ддаленому сервер?, що зменшить ризики ?? нелегального коп?ювання. Наявн?сть договору користувача та прямих договор?в з компан?ями на заборону коп?ювання В таблиц? 4.20 наведемо ц?нов? меж?, якими необх?дно керуватися при утворенн? ц?ни.Табл. 4.20.Визначення меж встановлення ц?н№Р?вень ц?н на товари-зам?нникиР?вень ц?н на товари-аналогиР?вень доход?в ц?льово? групи споживач?вВерхня та нижня меж? встановлення ц?ни на товар/послугу1$6000-15000$1000-15000>$500000$0-$60/на м?с. Розглянемо можливий збут та розробимо систему збуту. В?дпов?дн? дан? наведен? у таблиц? 4.21.Табл. 4.21.Формування системи збуту№Специф?ка закуп?вельно? повед?нки ц?льових кл??нт?вФункц?? збуту, як? ма? виконувати постачальник товаруГлибина каналу збутуОптимальна система збуту1Придбання п?дписки на можлив?сть використання модел? для прогнозуванняП?дписання контракт?в на збутОднор?вневийВертикальна, за якою право власност? залиша?ться у розробника продуктуОстанн?м кроком стане визначення концепц?? маркетингових комун?кац?й, наведений у 4.22.Табл. 4.22.Концепц?я маркетингових комун?кац?й№Специф?ка повед?нки ц?льових кл??нт?вКанали комун?кац?й, якими користую-ться ц?льов? кл??нтиКлючов? позиц??, обран? для позиц?онуванняЗавдання рекламного пов?домленняКонцепц?я рекламного звернення1П?дписка на користування продуктом шляхом п?дписання договоруСарафанне рад?о, реклама, соц?альн? мереж?Прогнозування економ?чних параметр?в, анал?з фондового ринкуЗац?кавлення потенц?йних користувач?вВираження ун?кальност? продукту пор?вняно з конкурентами Висновок до розд?лу 4У даному розд?л? було виконано документування та анал?з стартап проекту, визначено слабк? та сильн? сторони ?де?, визначено техн?чну можлив?сть його створення.Знайдено, що на ринку не надто висока конкуренц?я под?бного програмного забезпечення, одна стати повноц?нним членом ринку прогноз?в буде непросто, оск?льки цьому не сприя? кон’юктурн? особливост? компан?й замовник?в. Досить висока оплата послуг.Потенц?йна стратег?я ринку ма? ор??нтац?ю на середн?й та великий б?знес, однак в б?льш?й м?р?, на середн?й. Так було визначено з огляду на вже ?снуюч? контракти великих компан?й.В?дпов?дно до визначено? стратег?? позиц?онування було визначено, що необх?дно зосередитися на ун?версальност? р?шень, пост?йному оновлен? та висок?й точност? продукту. Було вир?шено розповсюджувати послуги на використання продукц?? за моделлю п?дписки. ВИСНОВОКМетою дано? маг?стерсько? дисертац?? досл?дження можливостей нейронних мереж в прогнозуванн? економ?чних параметр?в та, власне — програмна реал?зац?я тако? системи.У першому розд?л? було досл?джено основн? проблемн? питання, що постають перед досл?дниками при виконанн? прогнозування, а також акцентовано увагу на додаткових задачах, як? потр?бно вир?шувати. Про?люстровано окрем? можлив? вар?анти вир?шення поставлених завдань ? проблем. Також описано ?снуюч? на даний час досл?дження в област? прогнозування та анал?зу ? ?х програмн? реал?зац??, виконано ор??нтовну експертизу системи, яка зд?йсню? автоматичний анал?з тональност? на основ? одного з в?рог?дних метод?в.Другий розд?л присвячений огляду механ?зм?в реал?зац?? системи. Проанал?зовано р?зн? п?дходи до ?мплементац?? системи прогнозування економ?чних параметр?в. Проведено пор?вняння ефективн?сть р?зних алгоритм?в прогнозування за запропонованими критер?ями. Наведено приклади, що наочно показують р?зницю у ефективност? м?ж алгоритмами.Трет?й розд?л присвячений розробц? програмного продукту та анал?зу отриманого результату. За його результатами було отримано сирцевий код програмного продукту. З його допомогою, було отримано ускладнену модель нейронно? мереж? арх?тектури LSTM шляхом навчання нейронно? мереж?. Проведено пор?вняння отримано? модел?, методом л?н?йно? регрес?? та немодиф?ковано? LSTM. Отриман? результати дозволяють стверджувати про достатню точн?сть системи та можлив?сть ?? використання для прогнозування економ?чних параметр?в, наприклад, фондово? б?рж?.У четвертому розд?л? було розроблено в?дпов?дний до теми курсово? дисертац?? стартап-проект. Були визначен? слабк?, сильн? та нейтральн? характеристики ?де? проекту, проведено технолог?чний аудит, проанал?зовано ринков? можливост? для запуску стартап-проекту, визначено потреби ц?льових груп та пропозиц?? конкурент?в продукту.СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛОснови економ?чного прогнозування: навч. пос?б. / Грабовецкий Б.?., Навчальний пос?бник. - В?нниця: ВФ ТАНГ, 2000, 20с.Чистов С. М. Державне регулювання економ?ки: навч. пос?б. / С. М. Чистов, А. ?. Никифоров, Т. Ф. Куценко та ?н. – К.: КНЕУ, 2000. – 316 с.Гриньова В. М. Державне регулювання економ?ки: навч. пос?б. / В. М. Гриньова, М. М. Новикова. – Х.: ?НЖЕК, 2004. – 756 с.Швайка Л. А. Державне регулювання економ?ки: навч. пос?б. / К.: Знання, 2006. – 435 c.Д?д?вська Л.?. Державне регулювання економ?ки: навч. пос?б. / Д?д?вська Л.?., Головко Л.С. – К: Знання, 2007. – 214 с.LeScouarnec F.-P. Strategic Planning in Public Administration: A. Framework // Public Administration Leadership and Management Academy, 2010. – 50 р.Браун М.П. Пос?бник з анал?зу державно? пол?тики: пер. з англ. / М. Пол Браун. – К.: Основи, 2000. – 243 с.Державне регулювання економ?ки / 96 Михасюк ?., Мельник А., Крупка М., Залога З.; за ред. Михасюка ?. – К.: АРТК “Ельга”,2000. – 592 с.Лагутин В.Д. Экономическая политика государства: сущность, этапы, механизмы // Экономическая теория [Електронний ресурс]. – Режим доступу: .Мозголин Б.С. Программно-целевое управление региональным развитием: проблемы и перспективы / Б. С. Мозголин // Известия Томского политехнического университета. – 2007. – Т.311. – № 6. – С. 51–54.Dunn W. Public Policy Analysis: An introduction Eaglewood Cliffs: Prentice Hall, Chapter 5. Structuring Policy Problems. – P. 137–184.Панчишин С.М. Макроеконом?ка: навч. пос?б. / С. М. Панчишин. – К.: Либ?дь, 2001. – 526 с.Thomas R. Cook, Aaron Smalter Hall. Macroeconomic Indicator Forecasting with Deep Neural Networks. – kcFED: Research Working Paper. – p. 6 - 25.R. Cont (2011). Statistical modeling of high frequency financial data: Facts, models and challenges, IEEE Signal Processing. — P. 28, 16-25.R. Cont (2001). Empirical properties of asset returns: stylized facts and statistical issues, Quantitative Finance, 1(2). — P. 223-236.M. Benzaquen, J. Donier, and J.P. Bouchaud (2016). Unravelling the trading invariance hypothesis. Market Microstructure and Liquidity.T. Andersen, O. Bondarenko, A. Obizhaeva and P. Kyle (2017). Intraday Trading Invariance in the E-Mini S&P 500 Futures Market, Working Paper.A. Kyle and A. Obizhaeva (2016). Market microstructure invariance: Empirical hypotheses. Econometrica, 84(4). P — 1345-1404.B. Mandelbrot, L Calvet & A. Fisher (1997). The multifractal model of asset returns. Cowles Foundation Discussion, Paper No. 1164.H. Buhler, L. Gonon, J.Teichmann, B. Wood (2018). Deep hedging.M. Dixon. Sequence Classification of the Limit Order Book using Recurrent Neural Networks. Journal of Computational Science, 2017.M. Kolanovic et al (2017) Big Data and AI Strategies: Machine Learning and Alternative Data Approach to Investing, J.P. Morgan Global Quantitative & Derivatives Strategy Report.J. Sirignano and K. Spiliopoulos (2017). Stochastic Gradient Descent in Continuous Time. SIAM Journal on Financial Mathematics, 8(1). P — 933-961.J. Sirignano, A. Sadhwani, L. Chen, and K. Giesecke (2016). Deep Learning for Mortgage Risk.I. Goodfellow, Y. Bengio, and A. Courville (2017). Deep Learning, MIT Press.Муйла Р. Ю. Проблеми фондових б?рж / -- Л.: ЛНУ ?мен? ?вана Франка, 2018. -- с. 46. K. Hornik, M. Stinchcombe, H. White (1989). Multilayer Feedforward Networks are Universal Approximators. Neural Networks 2(5), 359-366.J. Hasbrouck (2007). Empirical Market Microstructure: The Institutions, Economics, and Econometrics of Securities Trading, Oxford University Press.R. Cont, S. Stoikov, and R. Talreja (2010). A stochastic model for order book dynamics. Operations Research, 58(3), 549-563.R. Cont and A. de Larrard (2013). Price dynamics in a Markovian limit order market. SIAM Journal of Financial Mathematics, 4(1), 1-25.Felix A. Gers; Jrgen Schmidhuber; Fred Cummins (2000). Learning to Forget: Continual Prediction with LSTM. Neural Computation, 12 (10), 24512471.X. Guo, A. de Larrard, and Z. Ruan (2017). Optimal placement in a limit order book:an analytical approach. Mathematics and Financial Economics, 11(2), 189-213.J. Figueroa-Lopez and J. Chavez-Casillas (2017). One-level limit order book model with memory and variable spread. Stochastic Processes and their Applications, 127, 2447-2481.ДОДАТКИДОДАТОК АЛ?СТИНГfrom sklearn import linear_modelfrom ..parser import *import numpy as npdef create_model(X, y): linear_m = linear_model.LinearRegression() X = np.reshape(X, (X.shape[0], 1)) y = np.reshape(y, (y.shape[0], 1)) linear_m.fit(X, y) return linear_mdef predict_price(model, x, l_range): x = np.reshape(x, (x.shape[0], x)) predicted_price = model.predict(x) p_rescaled, re_range = scale_range(predicted_price, input_range=[-1.0, 1.0], target_range=l_range) return p_rescaled.flatten()from keras.models import Sequentialfrom keras.layers.core import Activation, Dropout, Densefrom keras.layers.recurrent import LSTMdef create_extended_model(in_dimension, out_dimension, return_seq): model = Sequential() model.add(LSTM( units=out_dimension, return_sequences=return_seq, input_shape=(None, in_dimension) )) model.add(Dropout(0.2)) model.add(LSTM( 128, return_sequences=False )) model.add(Dropout(0.2)) model.add(Dense( units=1 )) model.add(Activation('linear')) return modeldef create_reg_model(in_dimension, out_dimension, return_seq): model = Sequential() model.add(LSTM( units=out_dimension, return_sequences=return_seq, input_shape=(None, in_dimension) )) model.add(LSTM( 100, return_sequences=False )) model.add(Dense( units=1 )) model.add(Activation('linear')) return modelimport pandas as paimport numpy as npimport timeimport mathfrom IPython.display import displayfrom sklearn import linear_modelfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import mean_squared_errorfrom sklearn.model_selection import TimeSeriesSplitfrom keras.layers.core import Dense, Activation, Dropoutfrom keras.layers.recurrent import LSTMfrom keras.models import Sequentialfrom keras.metrics import mean_squared_errorfrom sklearn.model_selection import StratifiedKFoldfrom ..linear_regression import *from ..models_lstm import *from ..preprocessing import remove, normalizefrom ..parser import train_test_split_linear_regression, train_test_split_lstmfrom ..ui import *class PredictionModel: def __init__(self): self.data = pa.read_csv("read some csv") def regular(self): regular = remove(self.data) return regular def regular_normalize(self): regular = self.regular() return normalize(regular) def lienar_reg_model(self): X_train, X_test, y_train, y_test, label_range = train_test_split_linear_regression(self.normalise_stock_data()) model = create_model(X_train, y_train) predictions = predict_price(model, X_test, label_range) plot_prediction(y_test, predictions) train_score = mean_squared_error(X_train, y_train) print('Train Score: %.4f MSE (%.4f RMSE)' % (train_score, math.sqrt(train_score))) test_score = mean_squared_error(predictions, y_test) print('Test Score: %.8f MSE (%.8f RMSE)' % (test_score, math.sqrt(test_score))) return def lstm_model_regular(self): reg_data = pa.read_csv("read some csv") reg_data = reg_data.drop(['Item'], axis=1) unroll_l = 50 X_train, X_test, y_train, y_test = train_test_split_lstm(reg_data, 5) X_train = unroll(X_train, unroll_l) X_test = unroll(X_test, unroll_l) y_train = y_train[-X_train.shape[0]:] y_test = y_test[-X_test.shape[0]:] model = create_reg_model(in_dimension=X_train.shape[-1], out_dimension=unroll_l, return_seq=True) start = time.time() pile(loss='mean_squared_error', optimizer='adam') print('compilation time : ', time.time() - start) model.fit( X_train, y_train, epochs=1, validation_split=0.05 ) predictions = model.predict(X_test) plot_prediction(y_test, predictions) train_score = model.evaluate(X_train, y_train, verbose=0) print('Train Score: %.8f MSE (%.8f RMSE)' % (train_score, math.sqrt(train_score))) test_score = model.evaluate(X_test, y_test, verbose=0) print('Test Score: %.8f MSE (%.8f RMSE)' % (test_score, math.sqrt(test_score))) return def lst_model_improved(self): reg_data = pa.read_csv("read some csv") reg_data = reg_data.drop(['Item'], axis=1) unroll_l = 50 X_train, X_test, y_train, y_test = train_test_split_lstm(reg_data, 5) X_train = unroll(X_train, unroll_l) X_test = unroll(X_test, unroll_l) y_train = y_train[-X_train.shape[0]:] y_test = y_test[-X_test.shape[0]:] batch_size = 100 epochs = 5 """ Build an improved LSTM model """ model = create_extended_model(X_train.shape[-1], out_dimension=unroll_l, return_seq=True) start = time.time() # final_pile(loss='mean_squared_error', optimizer='adam') pile(loss='mean_squared_error', optimizer='adam') print('compilation time : ', time.time() - start) """ Train improved LSTM model """ model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, verbose=2, validation_split=0.05 ) """ Make prediction on improved LSTM model """ predictions = model.predict(X_test, batch_size=batch_size) """ Plot the results """ plot_lstm_prediction(y_test, predictions) """ Get the test score """ train_score = model.evaluate(X_train, y_train, verbose=0) print('Train Score: %.8f MSE (%.8f RMSE)' % (train_score, math.sqrt(train_score))) test_score = model.evaluate(X_test, y_test, verbose=0) print('Test Score: %.8f MSE (%.8f RMSE)' % (test_score, math.sqrt(test_score)))import numpy as npimport mathdef scale_range(x, input_range, target_range): range = [np.amin(x), np.amax(x)] x_std = (x - input_range[0]) / (1.0*(input_range[1] - input_range[0])) x_scaled = x_std * (1.0*(target_range[1] - target_range[0])) + target_range[0] return x_scaled, rangedef train_test_split_linear_regression(stocks): feature = [] label = [] for index, row in stocks.iterrows(): # print([np.array(row['Item'])]) feature.append([(row['Item'])]) label.append([(row['Close'])]) feature_bounds = [min(feature), max(feature)] feature_bounds = [feature_bounds[0][0], feature_bounds[1][0]] label_bounds = [min(label), max(label)] label_bounds = [label_bounds[0][0], label_bounds[1][0]] feature_scaled, feature_range = scale_range(np.array(feature), input_range=feature_bounds, target_range=[-1.0, 1.0]) label_scaled, label_range = scale_range(np.array(label), input_range=label_bounds, target_range=[-1.0, 1.0]) split = .315 split = int(math.floor(len(stocks['Item']) * split)) X_train = feature_scaled[:-split] X_test = feature_scaled[-split:] y_train = label_scaled[:-split] y_test = label_scaled[-split:] return X_train, X_test, y_train, y_test, label_rangedef train_test_split_lstm(stocks, prediction_time=1, test_data_size=450, unroll_length=50): test_data_cut = test_data_size + unroll_length + 1 x_train = stocks[0:-prediction_time - test_data_cut].values y_train = stocks[prediction_time:-test_data_cut]['Close'].values x_test = stocks[0 - test_data_cut:-prediction_time].values y_test = stocks[prediction_time - test_data_cut:]['Close'].values return x_train, x_test, y_train, y_testdef unroll(data, sequence_length=24): result = [] for index in range(len(data) - sequence_length): result.append(data[index: index + sequence_length]) return np.asarray(result)import pandas as pafrom sklearn.preprocessing import MinMaxScalerdef normalize(data): sc = MinMaxScaler() num = ['Open', 'Close', 'Volume'] data[num] = sc.fit_transform(data[num]) return datadef remove(data): item = [] open = [] close = [] volume = [] # Loop through the stock data objects backwards and store factors we want to keep i_counter = 0 for i in range(len(data) - 1, -1, -1): item.append(i_counter) open.append(data['Open'][i]) close.append(data['Close'][i]) volume.append(data['Volume'][i]) i_counter += 1 # Create a data frame for stock data stocks = pd.DataFrame() # Add factors to data frame stocks['Item'] = item stocks['Open'] = open stocks['Close'] = pa.to_numeric(close) stocks['Volume'] = pa.to_numeric(volume) # return new formatted data return stocksimport matplotlib.pyplot as pltplt.rcParams['figure.figsize'] = (18, 12)def price(x): """ format the coords message box :param x: data to be formatted :return: formatted data """ return '$%1.2f' % xdef plot_basic(stocks, title='Google Trading', y_label='Price USD', x_label='Trading Days'): """ Plots basic pyplot :param stocks: DataFrame having all the necessary data :param title: Title of the plot :param y_label: yLabel of the plot :param x_label: xLabel of the plot :return: prints a Pyplot againts items and their closing value """ fig, ax = plt.subplots() ax.plot(stocks['Item'], stocks['Close'], '#0A7388') ax.format_ydata = price ax.set_title(title) # Add labels plt.ylabel(y_label) plt.xlabel(x_label) plt.show()def plot_prediction(actual, prediction, title='Google Trading vs Prediction', y_label='Price USD', x_label='Trading Days'): """ Plots train, test and prediction :param actual: DataFrame containing actual data :param prediction: DataFrame containing predicted values :param title: Title of the plot :param y_label: yLabel of the plot :param x_label: xLabel of the plot :return: prints a Pyplot againts items and their closing value """ fig = plt.figure() ax = fig.add_subplot(111) # Add labels plt.ylabel(y_label) plt.xlabel(x_label) # Plot actual and predicted close values plt.plot(actual, '#00FF00', label='Adjusted Close') plt.plot(prediction, '#0000FF', label='Predicted Close') # Set title ax.set_title(title) ax.legend(loc='upper left') plt.show()def plot_lstm_prediction(actual, prediction, title='Google Trading vs Prediction', y_label='Price USD', x_label='Trading Days'): """ Plots train, test and prediction :param actual: DataFrame containing actual data :param prediction: DataFrame containing predicted values :param title: Title of the plot :param y_label: yLabel of the plot :param x_label: xLabel of the plot :return: prints a Pyplot againts items and their closing value """ fig = plt.figure() ax = fig.add_subplot(111) # Add labels plt.ylabel(y_label) plt.xlabel(x_label) # Plot actual and predicted close values plt.plot(actual, '#00FF00', label='Adjusted Close') plt.plot(prediction, '#0000FF', label='Predicted Close') # Set title ax.set_title(title) ax.legend(loc='upper left') plt.show() ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download

To fulfill the demand for quickly locating and searching documents.

It is intelligent file search solution for home and business.

Literature Lottery

Related searches