Научная статья на тему 'Сравнение лингвистических цепочек при прогнозировании временных рядов'

Сравнение лингвистических цепочек при прогнозировании временных рядов Текст научной статьи по специальности «Математика»

CC BY
58
20
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЛИНГВИСТИЧЕСКОЕ МОДЕЛИРОВАНИЕ / LINGUISTIC MODELLING / ЛИНГВИСТИЧЕСКАЯ МОДЕЛЬ / LINGUISTIC MODEL

Аннотация научной статьи по математике, автор научной работы — Баклан И.В., Морозова А.А., Недашковский Е.А.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Mathematical statements of steps to construct a linguistic model

This paper considers step-by-step to constract linguistic model for user authentication system by movement of computer manipulator. The mathematical statement of each step is given.

Текст научной работы на тему «Сравнение лингвистических цепочек при прогнозировании временных рядов»

УДК 004.048

1.В. БАКЛАН, О.А. МОРОЗОВА, е.А. НЕДАШКЮСЬКИЙ

Нацюнальний технiчний унiверситет Укра!ни "Ки!вський полiтехнiчний шститут"

ПОР1ВНЯННЯ Л1НГВ1СТИЧНИХ ЛАНЦЮЖК1В ПРИ ПРОГНОЗУВАНН1

ЧАСОВИХ РЯД1В

У данш cmammi розглядаеться поетапний процес побудови лтгв1стично'1 модел1 для системи автентифкацИ користувача за рухами мишкою. Приведена математична постановка окремих етатв.

Ключовi слова: лiнгвiстичне моделювання, лiнгвiстична модель.

И.В. БАКЛАН, А. А. МОРОЗОВА, Е.А. НЕДАШКОВСКИЙ

Национальний технический университет Украины "Киевский политехнический институт"

СРАВНЕНИЕ ЛИНГВИСТИЧЕСКИХ ЦЕПОЧЕК ПРИ ПРОГНОЗИРОВАНИИ ВРЕМЕННЫХ

РЯДОВ

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

Ключевые слова: лингвистическое моделирование, лингвистическая модель.

I.V. BAKLAN, O.A. MOROZOVA, Ye.A. NEDASHKOSKYI

National technical university of Ukraine "Kiyv polytechnical institute"

MATHEMATICAL STATEMENTS OF STEPS TO CONSTRUCT A LINGUISTIC MODEL

This paper considers step-by-step to constract linguistic model for user authentication system by movement of computer manipulator. The mathematical statement of each step is given.

Keywords:Linguistic modelling,Linguistic model.

Постановка проблеми

У робот! дослщжуеться новий пвдхщ для представления часових рядiв, застосування лшгвютичного моделювання для задачi прогнозування часових рядiв.

Завданням лшгвютичного моделювання е перетворення часових рядiв, експериментальних даних до лшгвютичних послщовностей та вщновлення за ними формально! граматики мови. В основi лiнгвiстичного моделювання лежить лема iснування iзоморфiзму вiдтворення чисельних даних до лшгвютичних послiдовностей, на основi яких може бути побудована мова. Як висновок iснування ушкально! мови, яка фактично уособлюеться наборами чисельних даних.

Побудова лiнгвiстичних моделей, в тому числ^ включае застосування штервального пiдходу для розбиття множини значень числового ряду та подальшо! побудови вiдображення множини. Для переходу вщ множини чисельних даних до символьного вигляду потрiбно розбити цю множину на чисельнi iнтервали. Розбиття ввдбуваеться таким чином, щоб шлькють елементiв рiзницевих рядiв початкового ряду в кожен штервал потрапляла у вщповвдносп до певного розподiлу, тобто частота попадання елементiв до штервалу дорiвнювала теоретичнiй iмовiрностi. Розглядаються таю типи iнтервалiзацi!, як рiвнозначнi штервали, логарифмiчнi iнтервали, рiвноймовiрнiснi iнтервали, штервали за певним розподшом (Пуассона, нормальним, бета-розподiлом ).

Завданням даного дослвдження е виявлення оптимальних параметрiв побудови алгоритму лшгвютичного моделювання та обгрунтування дощльносп використання методу для прогнозування часових рядiв.

Аналiз останшх дослвджень та публiкацiй

Завданням лiнгвiстичного моделювання е перетворення часових рядiв, експериментальних даних до лшгвютичних послвдовностей та ввдновлення за ними формально! граматики мови. Це дозволяе вирiшувати так1 проблеми, як: прогнозування часових рядiв, розшзнання образiв [1]. Лiнгвiстичне моделювання -комплекс методiв, методик та алгорштшв, як1 використовують процес перетворення числових масивiв iнформацi! до лшгвютичних послвдовностей, на основi яких вщновлюеться формальна граматика [2]. Цей тип моделювання треба розглядати як специфiчний вид математичного моделювання для обробки даних у символьному (не чисельному виглядi) [3]. Лiнгвiстичне моделювання базуеться на трьох основних подходах: структурний пiдхiд та математична лiнгвiстика, штервальш обчислення та робастнi методи, сучасш методи iмовiрнiсного моделювання. [4, 5]. Одним з методiв прогнозу е структурний (синтаксичний) пiдхiд. Вiн базуеться на деяких принципах розшзнавання образiв, який складаеться з трьох основних частин - блока

попередньо! обробки, блока опису об'екта, блока синтаксичного аналiзу [6]. Кожний попередньо опрацьований об'ект сегментуеться на власш складовi частини на пiдставi наперед визначених операцш та операцiй об'еднання. В свою чергу кожна складова частина об'екта iдентифiкуеться за допомогою заданого набору зразк1в. Тепер кожний об'ект подаеться набором зразшв Í3 визначеними синтаксичними операцiями, тобто правилами 1'х поеднання [7].

Формулювання мети дослвдження

Дана стаття мае на меп розв'язати наступнi завдання: виконати огляд ввдомих результатiв з прогнозування часових рядiв; виконати формалiзацiю задачi побудови граматики мови як основи лшгвютично! моделi; виконати порiвняльний аналiз результатiв на рiзних параметрах алгоритму.

Викладення основного матерiалу досл1дження

На базi структурного шдходу розроблено наступний метод створення лшгвютично! послiдовностi на

базi числового ряду. Слад виконати наступш перетворення: порахувати рiзницi Ay(i)=y(i)-y(i+1), i = 1;N, мiж сусiднiми значеннями ряду; виключити дублiкати з отриманого ряду; вщсортувати ряд за зростанням (чи спаданням); виокремити ввд'емну (а(к)) та додатну (Ь(к)) послiдовнiсть зi значень Ay(i).

Вiдомi рiзнi способи опису мов. Кшцеву мову можна описати простим перерахуванням ii ланцюжк1в. Оск1льки формальна мова може бути i несшнченною, потрiбнi механiзми, що дозволяють кшцевим чином представляти нескiнченнi мови. Можна видшити два основних пiдходи для такого уявлення: механiзм розпiзнання та мехашзм породження (генераци). Механiзм розтзнавання е процедурою спецiального виду, яка за заданим ланцюжком визначае, чи належить вiн мовi. Якщо належить, то процедура зупиняеться з ввдповщдю "так", тобто допускае ланцюжок; шакше - зупиняеться з вiдповiддю "ш", або зациклюеться. Мова, яка визначаеться таким чином, е множиною вах правильно побудованих ланцюжк1в. Основний споаб реалiзацil механiзму породження - використання породжуючих граматик, як1 iнодi називають граматиками Хомського.

Алгоритм "дистанцiя Левенштейна" (Levenshtein distance), так само ввдома як редакцiйна вiдстань або дистанщя редагування. Ця "дистанц1я" - це мшмальна к1льк1сть правок одного рядка (тд правками маються на увазi три можливi операцп: стирання символу, замша символу i вставка символу), щоб перетворити його в шший. Наприклад: levenshtein ( 'ABC', 'ABC') = 0 levenshtein ( 'ABC', 'ABCDEF') = 3 levenshtein ( 'ABC', 'BCDE') = 3 levenshtein ( 'BCDE', 'ABCDEF') = 2. Для того, щоб отримати дистанцш Левенштейна м1ж рядками s i t (довжиною m i n вщповщно, iндексацiя починаеться з нуля) i редакцшний припис (якi саме правки по^бно вносити), розраховуеться матриця ввдстаней D (розмiрнiстю (m + 1) х (n + 1)). Кожний елемент матриц D [i, j] мiстить дистанцш мiж першими i символами рядка s i першими j символами рядка t. Наприклад, матриця дистанцш Левенштейна для рядшв s = 'ABC it = ''ABF:

А В F

0 1 2 3

А 1 0 1 2

В 2 1 0 I

С 3 2 1 1

Рис. 1. Матриця дистанцш Левенштейна

Сговпш вщповщають п1дрядкам рядiв t, а рядки матриш - пщрядкам s. Рядок i стовпець з нульовим iндексом вiдповiдають порожнiм тдрядкам sit. Кожений елемент 4iei матриш мютить вiдстань мiж п;дрядками вщповщних йому iндексiв. Наприклад, D [3,2] = 1 - це вщстань м1ж ABC i AB (всього одна правка - видалити C). Таким чином, D [3,3] = 1 - це i е шукана дистанцiя мiж ABC i ABF. (Замша C на F). Крiм дистанц^' ця матриця мютить в собi iнформацiю про п поправки, як1 необх1дно внести в рядок s, щоб отримати рядок t - редакцiйний припис. Побудова матриш дистанцш схожа на прокладання маршруту через лабiринт: починаючи з лiвого верхнього кута матрицi-карти, ми повинш потрапити в правий нижнш кут. Частину матрицi можна заповнити без обчислень: стовпець i рядок з нульовими iндексами заповнюються числами по порядку, починаючи з нуля. Це просто пояснити тим, що для того, щоб з порожнього рядка отримати якийсь рядок T (довжиною к), пот^бно рiвно к вставок - по однш на кожний символ. Аналопчно i в зворотний бш: для того, щоб з рядка s довжиною l отримати порожнш рядок, потрiбно рiвно l вилучення. Таким чином, числа в нульовому рядку i колонш не залежить в1д вмiсту порiвнюваних рядк1в [49]. Для розв'язання дано! задачi використовуеться рекурентне спiввiдношення: Di.j={Di-1,j-1 + 0(equal,nonchange) Di-1, j-l(replace) Di-1rj (incert) Di,j-1{delete) Найпростшою технiкою оптимiзацil даного алгоритму е кешування розрахованих значень Dij. Для цього можна скористатись двовимiрним масивом. В такому випадку складнiсть алгоритму та вимоги по пам'яп складатимуть O(N2) [8].

Задача пошуку та порiвняння шдрядшв використовуеться в рiзних галузях науки. Наприклад, для пошуку рядк1в, що мiстять задаш пвдрядки, для порiвняння двох та бшьше рядк1в на подiбнiсть, для пошуку пвдрядшв, що найчастiше зуст^чаються у заданiй послiдовностi, для пошуку шформативних елементiв у послвдовностях (наприклад, у послвдовностях проте!шв та амшокислот).

Опис алгоритму розрахунку помилки тестового прогнозу за вщстанню Левенштейна. Вхвдш данi алгоритму: Слово для тестового перюду; Прогноз для тестового перюду;

Вихiднi данi алгоритму: Значення ввдсташ Левенштейна для вхiдних строк.

Послвдовнють виконання алгоритму:

Крок 1:Нехай M та N - довжини вхщних рядкiв S1 та S2, тодi для всiх i ввд 0 до M та для вах j ввд 0 до N тдраховуемо D(i, j), та повертаемо D(M,N), де

D(i,j)={0; ¿=0, у=0i; j=0, i>0j; ¿=0, j>0D(i-1,j-1); S1[i]=S2[j]min(D(i, j-1)+insertcountD(i-1, j)+ +deletecountD(i-1, j-1)+replacecount}; j>0, ¿>0, S1[i]^S2[/].

Min(a,b,c) повертае найменший з аргументiв. Цiну вставки, видалення та замiни вважатимемо однаковою та рiвною одиницi.

Результати чисельних експерименлв

Вхiднi данi для експериментiв були взял з world data center (WDC): http://wdc.org.ua/. WDC було створено для архiвацi! та поширення даних, зiбраних з наглядових програм. WDC був створений у 1957-1958 роках i вш нинi включений до 52 цеш^в в 12 кра!нах. Представлений алгоритм призначений для оперативного прогнозу змши тренду ряду, який ввдстежуеться. Однак ряду необхвдна "iсторiя", за якою формуються правила змши тренду. Трендом називають невипадкову функцш, яка формуеться пвд дiею загальних або довгострокових тенденцiй, що впливають на часовий ряд. У деяких випадках алгоритм може не мати готового правила виводу, в цьому випадку потрiбна експертна оцiнка. Там випадки можуть виникати при вщсутносл "iсторi!" ряду, за якою формуються правила, та при великш шлькосл випадкових флуктацiй, викидiв чи структурних зсувiв.

Проведемо експерименти на виборщ часових рядiв, оцiнимо результати експерименлв при рiзних значеннях параметрiв алгоритм: рiзних розмiрах входного алфавiту, на рiзних значеннях дельта та при рiзних розмiрностях вхiдного ряду.

Для автоматичного послщовного завантаження вх1дних даних та запису результалв експериментiв було використано програму xstarter.

Експерименти, при яких використовувалися правила вигляду лише "два елементи до одного" i "один до одного" показали низьку яшсть прогнозу. Даний варiант алгоритму не несе практичного значення i далi не розглядаеться.

Було проведено ряд експерименлв на таких типах розподiлу для подальшо! штервал1зацп, як: нормальний, Пуассона, Лапласа, бета-, Стьюдента. Програмою, створеною в рамках дослщження, не передбачена оцшка параметрiв розподiлу, тому було використано програмне забезпечення MatLab.

Експерименти з рiзними розмiрностями вхiдного файлу

Перевiримо як1сть прогнозу на рiзний кiлькостi вх1дних даних. За максимальний розмiр файлу вiзьмемо 4000 значень часового ряду. Будемо поступово зменшувати розмiр кожного ряду до 200 з кроком 200. В результап проведення експерименту з параметрами дельта рiвне 2 та розмiром алфавиу рiвним 26, було отримано даш, зображен1 на рис. 2-3 для стацюнарного часового ряду.

8

6 5

3 2

О

Рис. 2. Змша кiлькостi усп1шних прогнозш тренду для р1зно1 розмiрностi входного ряду.

3.5

2.5

3

2

1.5

1

0.5

0

Рис. 3. Змша кiлькостi усп1шних прогноз1в значень часового ряду для р1зно1 p03MipH0CTi вхвдного ряду.

Неперервною лiнieю позначимо усереднену к1льк1сть успiшних nporH03iB для тестово! вибiрки, штрихованими лiнiями - ковзне середне вiдхилень ввд середнього значения прогнозу.

Ковзне середне або рухоме середне (процес ковзного (рухомого) середнього) — один iз шструменпв ан^зу випадкових процесiв та часових рядiв, що полягае в обчисленнi середнього тдмножини значень. Ковзне середне не е скаляром, а е випадковим процесом. Ковзне середне може мати ваговi коефiцiенти, наприклад, для посилення впливу новiших даних у порiвняннi зi старiшими. Найчастiше його використовують в аналiзi часових рядiв для згладжування раптових коливань та тдкреслення довготермiнових трендiв або циклiв. З математично! точки зору, ковзне середне е рiзновидом згортки та схоже на фшьтр низьких частот в обробщ сигналiв [9].

Як можна бачити з графiкiв, в середньому алгоритм прогнозуе змiну тренду на 4-5 крошв вперед, а прогноз наступного символу в середньому е точним на три кроки вперед.

Перед виконанням алгоритму трансформуемо початковий ряд. Видалимо тренд за допомогою бiблiотеки scikit-learn для Python. Щоб видалити тренд, побудуемо лiнiйну регресш вiд часу по кожному показнику та вирахуемо з початкових даних.

Лшшш тренди можуть бути просумованi лшшною моделлю, а нелiнiйнi тренди краще за все, можуть бути просумованими з використанням полiномiального чи шшого методу апроксимацп криво!. Прогнози ще! моделi становлять пряму лiнiю, яка може бути прийнята за лшш тренду для набору даних. Ц прогнози можуть бути вирахуванi з початкового ряду, щоб надати версш набору даних без тренду. Вщхилення вiд тренду являють собою детермшовану форму набору даних. Можливе також використання полiномiально! криво! та шших нелiнiйних моделей. Використаемо iнструмент LinearRegression бiблiотеки scikit-learn для обробки даних. Можемо бачити, що цей пвдхщ ефективно вщфшьтровуе набiр даних.

Повторимо експеримент на рiзних розмiрностях вхщного ряду для отриманих рядiв без тренду. На рис. 4-5 показано отримаш результати.

8

7

4

5

3

2

О

Рис. 4. Змша юлькосп устшних прогноз1в тренду для початкового ряду позбавленого тренду.

3.5 3 2.5

1.5

0.5 0

Рис. 5. Змша кiлькостi усп1шних прогноз1в значень часового ряду для початкового ряду позбавленого тренду.

Як можна бачити, в середньому прогноз змши тренду i прогноз наступного символу в послвдовносл в середньому майже не змiнився.

Висновки

Авторами статл проведено ряд експериментiв над часовими рядами з рiзними параметрами алгоритму. Було виявлено оптимальнi параметри. Також експерименти показали, що алгоритм досить стабшьно виконуе оперативний прогноз значень ряду на 3-4 кроки вперед та прогноз змши тренду на 4-5 крошв вперед. Було проаналiзовано швидкодш алгоритму та виявлено, що алгоритм працюе за лшшний час та мае доволi низький час виконання - приблизно 60 мшсекунд для входного ряду у 200 пар символiв, що у 7,5 разiв швидше за алгоритм авторегресп другого порядку з ковзним середшм першого порядку вiд фiрми Extreme Optimization. Ц результати доводять, що алгоритм е ефективним для виконання оперативних прогнозiв.

Список використаноТ л^ератури

1. Vaseghi Saeed V. Advanced digital signal processing and noise reduction / Saeed V. Vaseghi. - 3ed. -Chichester: TLFeBook, 2006. - 454 p.

2. Fraser A.M. Hidden Markov models and dynamic systems / Andrew M. Fraser. - Philadelphia: Society for Industrial and Applied Mathematics. 2008. - 145 p.

3. Баклан I.B. Лингвистическое моделирование: основы, методы, некоторые прикладные аспекты //Системные технологии. -Днепропетровск, 2011. - Вып. 3 (74). - C. 10-19.

4. Fu K.S. Syntactic Methods in Pattern Recognition / K.S. Fu. - N.J.: Academic Press, 1974. - 306 с.

5. Fu K.S. Syntactic Pattern Recognition and Application / K.S. Fu. - N.J.: Prentice-Hall, Inc. Englewood Cliffs., 1982. - 596 р.

6. Елинек Ф. Распознавание непрерывной речи статическими методами / Ф. Елинек. - М.: ТИИЭР, 1976. -Т. 64. - №4. - С. 131-160.

7. Баклан I.B. Структурний пвдхщ до розтзнання образiв у системах безпеки / I.B. Баклан, Ю.М. Селш, О.О. Петренко // М1жнародна науково-практична конференщя "Нацюнальна безпека УкраГни: стан, кризовi явища та шляхи 1х подолання" (КиГв, 7-8 грудня 2005 р.). Збiрка наукових праць. - К.: Нацюнальна академiя управлшня - Центр перспективних сощальних дослщжень, 2005. - С.375-380.

8. Вщстань Левенштейна [Електронний ресурс] // Happy programmer. - 2012. - Режим доступу до ресурсу: http ://happy-programmer.blogspot.com/2012/10/blog-post.html.

9. Рухоме середне [Електронний ресурс] // msd.in.ua. - 2017. - Режим доступу до ресурсу: https://msd.in.ua/kilkisni-statistichni-metodi-prognozuvannya.

i Надоели баннеры? Вы всегда можете отключить рекламу.