Дослідження часових рядів засобами нейронних мереж


"Дослідження часових рядів засобами нейронних мереж"

Вступ


Мета дослідження. Огляд та аналіз методів для прогнозування часового ряду за допомогою штучних нейронних мереж. Адекватність прогнозування часового ряду залежить від процедури та логіки побудови прогнозованої моделі, що зумовлює необхідність визначення послідовності процедур та основних етапів прогнозування. Задача прогнозування не є тривіальною та залежить від особливостей динамічної системи, і на цей час нейромережі є найкращим методом для її вирішення.


1.Основні поняття часового ряду


Побудувати економетричну модель можна використовуючи два типи вихідних даних: дані, що характеризують сукупність різних обєктів у конкретний момент часу; дані, що характеризують один обєкт за ряд послідовних моментів часу.

Моделі, побудовані за даними першого типу, називають просторовими моделями.

Моделі, побудовані за даними другого типу, називають моделями часових рядів.

Часовий ряд - це сукупність значень будь-якого показника за декілька послідовних моментів або періодів часу.

Кожний рівень часового ряду формується під впливом великої кількості факторів, які умовно можна поділити на три групи:

. Фактори, які формують тенденцію ряду;

2. Фактори, які формують циклічні коливання ряду;

3. Випадкові фактори.

Модель, у якій часовий ряд подається як сума трендової, циклічної і випадкової компоненти, називають адитивною моделлю часового ряду.

Модель, у якій часовий ряд подається як добуток вказаних компонентів, називають мультиплікативною моделлю часу.

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

2. Штучні нейронні мережі

часовий ряд нейронний мережа

Штучні нейронні мережі - математичні моделі, а також їх програмні або апаратні реалізації, побудовані за принципом організації й функціонування біологічних нейронних мереж - мереж нервових кліток живого організму. Це поняття виникло при вивченні процесів, що протікають у мозку, і при спробі змоделювати ці процеси. Першою такою спробою були нейронні мережі Маккалока й Піттса. Згодом, після розробки алгоритмів навчання, одержувані моделі стали використовувати в практичних цілях: у завданнях прогнозування, для розпізнавання образів, у завданнях керування й ін.

Штучні нейронні мережі являють собою систему з'єднаних і взаємодіючих між собою простих процесорів (штучних нейронів). Такі процесори звичайно досить прості, особливо в порівнянні із процесорами, використовуваними в персональних комп'ютерах. Кожний процесор подібної мережі має справу тільки із сигналами, які він періодично одержує, і сигналами, які він періодично посилає іншим процесорам. Проте, з'єднавши їх в досить велику мережу з керованою взаємодією, такі локально прості процесори разом здатні виконувати досить складні завдання. З погляду машинного навчання, нейронна мережа являє собою окремий випадок методів розпізнавання образів, методів кластеризації й т.п. З математичної точки зору, навчання нейронних мереж - це багатопараметричне завдання нелінійної оптимізації. З погляду кібернетики, нейронна мережа використовується в завданнях адаптивного керування і як алгоритми для робототехніки. З погляду розвитку обчислювальної техніки й програмування, нейронна мережа - спосіб розв'язку проблеми ефективного паралелізму. А з погляду штучного інтелекту, ИНС є основним напрямком у структурному підході по вивченню можливості побудови (моделювання) природнього інтелекту за допомогою комп'ютерних алгоритмів.

Нейронні мережі не програмуються у звичному змісті цього слова, вони навчаються. Можливість навчання - одне з головних переваг нейронних мереж перед традиційними алгоритмами. Технічно навчання полягає в знаходженні коефіцієнтів зв'язків між нейронами. У процесі навчання нейронна мережа здатна виявляти складні залежності між вхідними даними й вихідними, а також виконувати узагальнення. Це значить, що, у випадку успішного навчання, мережа зможе повернути вірний результат на підставі даних, які були відсутні в навчальній вибірці, а також неповних і/або «зашумлених», частково перекручених даних.

3. Аналітична платформа Deductor


Для виконання курсової роботи на тему: «Дослідження часових рядів засобами нейронних мереж « я обрала аналітичну платформу Deductor.


3.1 Опис платформи Deductor

є аналітичною платформою, тобто основою для створення закінчених прикладних рішень. Реалізовані в Deductor технології дозволяють на базі єдиної архітектури пройти всі етапи побудови аналітичної системи: від створення сховища даних до автоматичного підбору моделей і візуалізації отриманих результатів.надає аналітикам інструментальні засоби, необхідні для вирішення найрізноманітніших аналітичних завдань: корпоративна звітність, прогнозування, сегментація, пошук закономірностей - ці та інші завдання, де застосовуються такі методики аналізу, як OLAP, Knowledge Discovery in Databases і Data Mining. Deductor є ідеальною платформою для створення систем підтримки прийняття рішень.


3.2 Завдання, які вирішуються за допомогою аналітичної платформи Deductor


Реалізовані в Deductor технології можуть використовуватися як в комплексі, так і окремо для вирішення широкого спектру проблем:

Системи корпоративної звітності. Готове сховище даних і гнучкі механізми очищення, завантаження, візуалізації дозволяють швидко створювати закінчені системи звітності в стислі терміни.

Обробка нерегламентованих запитів. Кінцевий користувач може з легкістю отримати відповідь на питання типу "Скільки було продажів товару по групах в Чернівецькій області за минулий рік з розбивкою по місяцях?" і переглянути результати найбільш зручним для нього способом.

Аналіз тенденцій і закономірностей, планування, ранжування. Простота використання і інтуїтивно зрозуміла модель даних дозволяє проводити аналіз за принципом "що-якщо", співвідносити гіпотези з відомостями, що зберігаються в базі даних, знаходити аномальні значення, оцінювати наслідки прийняття бізнес-рішень.

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

Управління ризиками. Реалізовані в системі алгоритми дають можливість досить точно визначитися з тим, які характеристики об'єктів і як вони впливають на ризики, завдяки чому можна прогнозувати настання ризикової події і завчасно вживати необхідних заходів до зниження розміру можливих несприятливих наслідків.

Аналіз даних маркетингових і соціологічних досліджень. Аналізуючи відомості про споживачів, можна визначити, хто є клієнтом і чому. Як змінюються їхні пристрасті в залежності від віку, освіти, соціального стану, матеріального стану та безлічі інших показників. Розуміння цього сприятиме правильному позиціонуванню продуктів і стимулювання продажів.

Діагностика. Механізми аналізу, наявні в системі Deductor, з успіхом застосовуються в медичній діагностиці та діагностиці складного обладнання.

Виявлення об'єктів на основі нечітких критеріїв. Часто трапляється ситуація, коли необхідно виявити об'єкт, грунтуючись не на таких чітких критеріях, як вартість, технічні характеристики продукту, а на розмитих формулюваннях.

Це тільки невеликий список вирішуваних завдань. Фактично мова йде про будь-які завдання, де потрібно консолідувати дані, відобразити їх різними способами, побудувати моделі і застосувати отримані моделі до нових даних.


3.3 Склад системи Deductor

складається з п'яти частин:- програма, що реалізує функції імпорту, обробки, візуалізації і експорту даних. Deductor Studio може функціонувати і без сховища даних, одержуючи інформацію з будь-яких інших джерел, але найбільш оптимальним є їх сумісне використання. В Deductor Studio включений повний набір механізмів, що дозволяє отримати інформацію з довільного джерела даних, провести весь цикл обробки (очищення, трансформацію даних, побудову моделей), відобразити отримані результати найбільш зручним чином (OLAP, діаграми, дерева ...) і експортувати результати на сторону.- робоче місце кінцевого користувача. Дозволяє відокремити процес побудови сценаріїв від використання вже готових моделей. Всі складні операції з підготовки сценаріїв обробки виконуються аналітиками-експертами за допомогою Deductor Studio, а Deductor Viewer забезпечує користувачам простий спосіб роботи з готовими результатами, приховує від них всі складнощі побудови моделей і не пред'являє високих вимог до кваліфікації співробітників.- багатовимірне сховище даних, що акумулює всю необхідну для аналізу предметної області інформацію. Використання єдиного сховища дозволяє забезпечити несуперечність даних, їх централізоване зберігання і автоматично забезпечує всю необхідну підтримку процесу аналізу даних.- служба, що забезпечує віддалену аналітичну обробку даних. Дозволяє автоматично обробляти дані і перенавчати моделі на сервері, оптимізує виконання сценаріїв за рахунок кешування проектів і використання багатопотокової обробки.- клієнт доступу до Deductor Server. Забезпечує доступ до сервера з сторонніх додатків і управління його роботою.

Реалізована в Deductor архітектура дозволяє домогтися максимальної гнучкості при створенні закінченого рішення. Завдяки даній архітектурі можна зібрати в одному аналітичному додатку всі необхідні інструменти аналізу і реалізувати автоматичне виконання підготовленого сценарію.

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

Створення закінченого рішення займає дуже мало часу. Досить отримати дані, визначити сценарій обробки і задати місце для експорту отриманих результатів. Наявність потужного набору механізмів обробки і візуалізації дозволяє рухатися по кроках, від найбільш простих способів аналізу до більш потужних. Таким чином, перші результати користувач отримує практично відразу, але при цьому можна легко нарощувати потужність рішення.

4.Дослідження часового ряду за допомогою Deductor


Для прогнозування часового ряду мені необхідно було виконати наступні кроки KDD:

·Експорт навчальної вибірки у вигляді <дата, показник>.

·Очистка даних від шумів, пропусків, аномалій (для реальних даних).

·Знаходження величини лагу (визначення періоду, дані якого впливають на значення періоду що прогнозується).

·Трансформація очищених даних ковзним вікном за визначеною в 3-му пункті величиною лагу.

·Побудова та навчання нейронної мережі.

·Розрахунок прогнозу.

Перший крок KDD виконувала в наступній послідовності:

) Відкрила файл 2000 рік.xls.

) Зберегла даний лист у форматі «текстовые файлы (с разделителями тубуляции)» (файл -> сохранить как -> текстовые файлы (с разделителями тубуляции))

) Завантажила прикладну програму Dеductor

) Імпортувала даний файл до аналітичної платформи за допомогою майстра імпорту - .

?в ході діалогу достатньо лише вказати назву файлу, всі інші параметри залишити без змін (кроки 2-5 майстра імпорту)

?представила результат у вигляді таблиці та діаграми

?Для коректного зображення діаграми на 7-му кроці майстра імпорту вказала в полі таблиці «Метка столбца» лише поле «Y». «Значения по Х» - Х. Сьомий крок майстра імпорту зображений на рис. 1.

Рис. 1. Сьомий крок майстра імпорту.


Другий крок KDD виконувала в такій послідовності:

) Перейшла на вкладку «Диаграмма» та вибрала тип графіку «Линии»

) Переконалась в тому, що дані потребують попередньої обробки та очистки.

) За допомогою сценарію «Парциальная обработка» згладила шуми (спектральна обробка 4 крок майстра) на графіку коливань курсу валют. (рис.2)


Рис.2. Майстер обробки «Парциальная обработка»

Третій крок KDD виконувала таким чином:

) Виділила сценарій «Текстовый файл» та запустила майстер обробки ().

) Вибрала сценарій DataMining -»Автокореляция»

) В якості полів для аналізу вибрала лише «Y» (2-й крок майстра).

) Вибрала довільну величину лагу для аналізу, наприклад 150 (2-й крок майстра).

) Результат представила у вигляді таблиці і діаграми (крок 4 майстра).

) Для коректного представлення діаграми вибрала «Метка столбца» - Y. «Значения по Х» - Лаг (рис.3.).


Рис.3. Майстер обробки «Автокореляция»


) Згідно даних коефіцієнта кореляції в таблиці та зображення на діаграмі визначила та занотувала на аркуші максимальну величину лагу, що впливає на дані прогнозу. (Максимальне значення лагу, при якому модуль коефіцієнту кореляції є > 0,6).

Четверттий крок KDD виконувала в такій послідовності:

) Виділила сценарій «Текстовый файл» та запустила майстер обробки.

) Вибрала сценарій «Скользящее окно». Вказала атрибути для поля X - «Информационное», Y - «Используемое». Для поля Y вказати в полі «Глубина погружения» величину лагу, визначеного сценарієм «Автокореляция».

3) Результат представила лише у вигляді таблиці.

) Визначила семантику полів в отриманій таблиці.

Пятий крок KDD виконувала в такій послідовності:

) Використовуючи емпіричні формули, визначила кількість необхідних нейронів нейронної мережі.

2) Вибрала сценарій «Нейросеть».

Вказала поля х - інформаційне, y - вихідне, всі інші - вхідні (крок 2 майстра).

) Вказала структуру нейронної мережі: 2 прошарки та кількість нейронів 4 і 2 відповідно.

) Представитла результат у вигляді «Граф нейросети» та «Диаграмы рассения» (рис. 4 ).


Рис. 4. Граф нейромережі.


) По діаграмі розсіювання зробила висновок про адекватність та точність моделі.

Шостий крок KDD виконувала таким чином:

) На даних сценарію нейромережі побудувала прогноз на 20 періодів за допомогою майстра сценарію «Прогнозирование» - вибрала «Горизонт прогноза» - 20 (2-й крок майстра)

) Представила результат у вигляді Діаграми проноза та Таблиці (Крок 3 майстра). Вибрала колір прогнозу - червоний. (крок 4 майстра).


Рис. 5. Майстер обробки « Прогнозирование «.


Дослідження 2001-2010 років проводила аналогічно. В результаті отримала прогнози по кожному з років, які показано на рис. 6 - 12.


Рис. 6. Діаграма прогнозу на 2000 рік (червоним кольором виділено прогноз).

Рис.7. Діаграма прогнозу на 2001 рік.


Рис. 8. Діаграма прогнозу на 2002 рік.


Провівши аналіз між прогнозами та реальними даними років дійшла висновку, що прогноз побудований на основі нейромережі є досить точним.


Висновки


Нейронні мережі. Це великий клас систем, архітектура яких певною мірою аналогічна побудові нервової тканини з нейронів. В одній із найпоширеніших архітектур - багатошаровому перцептроні зі зворотним звязком помилки, імітується робота нейронів у складі ієрархічної мережі, де кожний нейрон вищого рівня зєднаний своїми входами з виходами нейронів нижчого шару. На нейрони найнижчого шару подаються значення вхідних параметрів, на підставі яких потрібно приймати якісь рішення, прогнозувати розвиток ситуації тощо. Ці значення розглядаються як сигнали, що передаються в наступний шар, послаблюючи чи підсилюючи його залежно від числових значень (ваг), приписуваних міжнейронним звязкам.

У результаті на виході нейрона найвищого шару виробляється деяке значення, що розглядається як відповідь (реакція) всієї мережі на значення вхідних параметрів. Для того щоб мережу можна було використовувати надалі, її потрібно «навчити» на базі здобутих раніше даних, для яких відомі значення вхідних параметрів і правильні відповіді на них. Тренування полягає в доборі ваг міжнейронних звязків, що забезпечують найбільшу близькість відповідей мережі до відомих правильних відповідей.

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

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

Недоліком нейронних мереж є їхня недетермінованість. Мається на увазі те, що після навчання створюється "чорний ящик", який працює певним чином, але логіка прийняття розв'язків нейромережею зовсім схована від експерта. У принципі, існують алгоритми "витягання знань із нейронної мережі", які формалізують навчену нейронну мережу до списку логічних правил, цим самим створюючи на основі мережі експертну систему. На жаль, ці алгоритми не вбудовуються в нейромережеві пакети, до того ж набори правил, які генеруються такими алгоритмами, досить об'ємні. Проте для експертів, які знають нюанси налаштування, навчання й застосування нейромереж у практичних завданнях, непрозорість нейронних мереж не є настільки серйозним недоліком .

Отже, порівняно з іншими методами та алгоритмами прогнозування фінансового стану підприємства, використання нейронних мереж надає такі переваги: легкість дослідження залежності прогнозованої величини від незалежних змінних; незалежність нейромережевої моделі від математичної моделі поведінки часового ряду; можливість визначення значимості вхідних змінних. Такі переваги значно зменшують значення такого недоліку, як неде-термінованість моделі нейромереж.

Список використаної літератури


. Круглов В. В., Борисов В. В. Искусственные нейронные сети. Теорія и практика. - М.: Горячая линия - Телеком, 2011. - 382 с.

2. Мак-Каллок У. С., Питтс В. Логическое исчисление идей, относящихся к нервной активности // В сб.: «Автоматы» под ред. К. Э. Шеннона и Дж. Маккарти. - М.: Изд-во иностр. лит., 1956. - с.363-384. (Перевод английской статьи 1943 г.).

. Нейронные сети. Саймон Хайкин. - М.: Вильямс, 2010. - 1103

4. Уоссермен Ф.. Нейрокомпьютерна техніка. - М.: Світ, 2009

1.


Теги: Дослідження часових рядів засобами нейронних мереж  Контрольная работа  Информационное обеспечение, программирование
Просмотров: 13458
Найти в Wikkipedia статьи с фразой: Дослідження часових рядів засобами нейронних мереж
Назад