Убакыт катарларын талдоо жана болжолдоо

Мазмуну:

Убакыт катарларын талдоо жана болжолдоо
Убакыт катарларын талдоо жана болжолдоо
Anonim

Көп жылдар бою адамдар аба ырайынын шарттарын, экономикалык жана саясий окуяларды жана спорттук жыйынтыктарды алдын ала айтып келишкен, жакында бул кеңири тизме криптовалюталар менен толукталды. Ар тараптуу окуяларды алдын ала айтуу үчүн, прогнозду иштеп чыгуунун көптөгөн жолдору бар. Мисалы, интуиция, эксперттик корутундулар, салттуу статистика менен салыштыруу үчүн өткөн натыйжаларды колдонуу жана убакыт катарларын болжолдоо - алардын бири гана, ал эми колдонмолордун кеңири спектри менен эң заманбап жана так болжолдоо түрү.

Убакыт сериясы ыкмасы

Убакыт сериясы ыкмасы
Убакыт сериясы ыкмасы

Убакыт сериясы (TS) ыкмасы - белгилүү бир убакыттын ичинде маалыматты чогултуучу берилиштер жыйындысы. Бул түрдү алуу үчүн атайын ыкмалар бар:

  • сызыктуу жана сызыктуу эмес;
  • параметрдик жана параметрлик эмес;
  • бир өлчөмдүү жана көп өлчөмдүү.

Божомолдоо убактысысериясы бүгүнкү күндүн чакырыктарына жооп берүү үчүн уникалдуу мүмкүнчүлүктөрдү алып келет. Моделдөө маалыматтарды өзгөртүүнүн кыймылдаткыч күчүн түзүүнү үйрөнүүгө таянат. Процесс узак мөөнөттүү тенденциялардан, сезондук эффекттерден же TS үчүн мүнөздүү болгон жана анализдин башка түрлөрүндө байкалбаган бир калыпта эмес өзгөрүүлөрдөн келип чыгат.

Машинаны үйрөнүү – бул алгоритмдер маалыматтардан түзүлө турган жана жасалма нейрон тармактарын, терең үйрөнүүнү, ассоциация эрежелерин, чечим дарактарын, бекемдөөчү окутууну жана Байес тармактарын камтыган компьютер илиминин тармагы. Ар кандай алгоритмдер көйгөйлөрдү чечүүнүн варианттарын камсыз кылат жана ар биринин өз талаптары жана маалыматтарды киргизүү, ылдамдык жана жыйынтыктардын тактыгы жагынан айырмачылыктары бар. Булар, акыркы болжолдоолордун тактыгы менен бирге, колдонуучу кайсы алгоритм изилденип жаткан кырдаалга ылайыктуу экенин чечкенде өлчөнөт.

Убакыт катарларын болжолдоо статистика тармагынан алынган, бирок көйгөйлөрдү моделдөө үчүн жаңы ыкмаларды берет. Машина менен үйрөнүү жана убакыт катарлары үчүн негизги көйгөй бир эле - мурда белгилүү болгон маалыматтардын негизинде жаңы натыйжаларды болжолдоо.

Божомолдоочу моделдин максаты

Болжолдуу моделдин максаты
Болжолдуу моделдин максаты

TS – бул үзгүлтүксүз аралыкта чогултулган маалымат чекиттеринин жыйындысы. Алар узак мөөнөттүү тенденцияны аныктоо, келечекти болжолдоо же анализдин башка түрүн аткаруу үчүн талданышат. Кадимки регрессия көйгөйүнөн TS айырмаланган эки нерсе бар:

  1. Алар убакыттан көз каранды. ОшентипБул учурда байкоолор көз карандысыз деген сызыктуу регрессия моделинин негизги божомолу туура келбейт.
  2. Көбөйүү же азаюу тенденциясы менен бирге, көпчүлүк ТСтерде мезгилдүүлүктүн кандайдыр бир формасы бар, б.а. белгилүү бир мезгилге мүнөздүү өзгөрүүлөр.

Убакыт сериясын болжолдоо моделинин максаты - суроо-талап боюнча так болжолдоо. Убакыт сериясы көз карандысыз өзгөрмө жана максаттуу көз каранды өзгөрмө катары убакытка (t) ээ. Көпчүлүк учурларда, болжолдоо белгилүү бир натыйжа болуп саналат, мисалы, үйдүн сатуу баасы, мелдештин спорттук жыйынтыгы, биржада сооданын жыйынтыгы. Болжолдоо медиананы жана ортону билдирет жана 80-95% диапазонундагы ишеним деңгээлин билдирген ишеним аралыгын камтыйт. Алар үзгүлтүксүз интервалдар менен жазылганда, процесстер убакыт катарлары деп аталат жана эки жол менен туюнтулат:

  • убакыт индекси менен бир өлчөмдүү, ал ачык эмес тартипти түзөт;
  • эки өлчөмдүү топтом: көз карандысыз өзгөрмөлүү убакыт жана башка көз каранды өзгөрмө.

Функцияларды түзүү прикладдык машина үйрөнүүдөгү эң маанилүү жана көп убакытты талап кылган иштердин бири. Бирок, убакыт серияларын болжолдоо салттуу мааниде жок дегенде өзгөчөлүктү жаратпайт. Бул, өзгөчө, сиз натыйжаны кийинки маанини эле эмес, бир нече кадам алдыда алдын ала айткыңыз келгенде туура болот.

Бул функциялар толугу менен өчүрүлгөн дегенди билдирбейт. Алар төмөнкү себептерден улам этияттык менен колдонулушу керек:

  1. Келечек кандай экени белгисизбаалуулуктар бул функциялар үчүн болот.
  2. Эгер объекттер алдын ала айтууга боло турган болсо жана айрым үлгүлөрү болсо, алардын ар бири үчүн болжолдуу моделди түзө аласыз.

Бирок, алдын ала маанилерди функциялар катары колдонуу катаны максаттуу өзгөрмөгө жайылтып, каталарга же бир тараптуу божомолдорго алып келерин эске алыңыз.

Убакыт сериясынын компоненттери

Убакыт сериясынын компоненттери
Убакыт сериясынын компоненттери

Тренд сериялар убакыттын өтүшү менен көбөйүп, азайып же туруктуу деңгээлде калганда пайда болот, ошондуктан ал функция катары кабыл алынат. Мезгилдик мезгил-мезгили менен туруктуу жыштыкта (м) кайталануучу үлгүлөрдү көрсөткөн убакыт сериясынын касиетин билдирет, мисалы, m=12 үлгү ар бир он эки айда кайталанат дегенди билдирет.

Сезондукка окшош жасалма өзгөрмөлөрдү бинардык функция катары кошууга болот. Сиз, мисалы, майрамдарды, өзгөчө иш-чараларды, маркетинг кампанияларын эске ала аласыз, баасы чет элдик же жокпу, карабастан. Бирок, бул өзгөрмөлөр белгилүү үлгүлөргө ээ болушу керек экенин эстен чыгарбоо керек. Бирок, күндөрдүн санын келечектеги мезгилдер үчүн да оңой эле эсептөөгө болот жана убакыт серияларын болжолдоого таасир этет, өзгөчө каржы тармагында.

Циклдер - бул белгиленген ылдамдыкта болбой турган мезгилдер. Мисалы, Канада сүлөөсүнүнүн жылдык көбөйүү атрибуттары мезгилдик жана циклдик көрүнүштөрдү чагылдырат. Алар үзгүлтүксүз кайталанбайт жана жыштыгы 1 (m=1) болсо да пайда болушу мүмкүн.

Артта калган маанилер -өзгөрмөнүн артта калган маанилери божомолдоочу катары киргизилиши мүмкүн. ARIMA, Вектордук авторегрессия (VAR) же Авторегрессивдүү нейрон тармактары (NNAR) сыяктуу кээ бир моделдер ушундай иштешет.

Кызыккан өзгөрмөнүн компоненттери убакыт катарларын талдоо жана болжолдоо, алардын жүрүм-турумун, үлгүлөрүн түшүнүү жана ылайыктуу моделди тандап алуу үчүн абдан маанилүү.

Дайындар топтомунун атрибуттары

Берилиштер топтому атрибуттары
Берилиштер топтому атрибуттары

Сиз миңдеген, миллиондогон жана миллиарддаган маалымат чекиттерин машина үйрөнүү моделдерине киргизүүгө көнүп калган болушуңуз мүмкүн, бирок бул убакыт сериялары үчүн талап кылынбайт. Чынында, өзгөрмөнүн жыштыгына жана түрүнө жараша чакан жана орто ТС менен иштөөгө болот жана бул ыкманын кемчилиги эмес. Мындан тышкары, бул ыкманын бир катар артыкчылыктары бар:

  1. Мындай маалымат топтому үй компьютеринин мүмкүнчүлүктөрүнө туура келет.
  2. Кээ бир учурларда үлгү катары эмес, бүт маалымат топтомун колдонуу менен убакыт серияларын талдоо жана болжолдоону жүргүзүңүз.
  3. TS узундугу талдоого боло турган графиктерди түзүү үчүн пайдалуу. Бул абдан маанилүү жагдай, анткени талдоо баскычында программисттер графикага таянышат. Бул алар чоң убакыт сериялары менен иштебейт дегенди билдирбейт, бирок адегенде алар кичирээк TS менен иштей алышы керек.
  4. Убакыт менен байланышкан талааны камтыган бардык берилиштер жыйындысы убакыт серияларын талдоо жана болжолдоодон пайда көрө алат. Бирок, эгерде программистте көбүрөөк маалымат топтому бар болсо, DB (TSDB)ылайыктуураак болушу мүмкүн.

Бул топтомдордун айрымдары убакыт белгиси, система таржымалдары жана каржы дайындары менен жазылган окуялардан келет. TSDB жергиликтүү убакыт сериялары менен иштегендиктен, бул ыкманы масштабдуу маалымат топтомдорунда колдонуу үчүн эң сонун мүмкүнчүлүк.

Машинаны үйрөнүү

Машина үйрөнүү (ML) салттуу убакыт серияларын болжолдоо ыкмаларынан ашып түшө алат. Машина үйрөнүү ыкмаларын TS маалыматтарындагы классикалык статистикалык методдор менен салыштырган көптөгөн изилдөөлөр бар. Нейрондук тармактар кеңири изилденген жана TS ыкмаларын колдонгон технологиялардын бири. Машиналарды үйрөнүү методдору убакыт серияларынын негизинде маалыматтарды чогултуу боюнча рейтингдерди жетектейт. Бул топтомдор M3 же Kaggleге караганда таза TS топтомдорунан ашып, эффективдүү экени далилденген.

МОнун өзүнүн өзгөчө көйгөйлөрү бар. Функцияларды иштеп чыгуу же маалымат топтомунан жаңы болжолдоочуларды түзүү ал үчүн маанилүү кадам болуп саналат жана иштин натыйжалуулугуна чоң таасирин тийгизет жана TS маалыматтарынын тренд жана сезондук маселелерин чечүүнүн зарыл жолу болушу мүмкүн. Ошондой эле, кээ бир моделдердин маалыматтарга канчалык туура келгени боюнча көйгөйлөр бар, эгер туура келбесе, негизги тенденцияны өткөрүп жибериши мүмкүн.

Убакыт сериясы жана машина үйрөнүү ыкмалары бири-биринен обочолонбоушу керек. Алар ар бир ыкманын артыкчылыктарын берүү үчүн бириктирилиши мүмкүн. Болжолдоо ыкмалары жана убакыт серияларын талдоо маалыматтарды тренд жана сезондук маалыматтарга ажыратууда жакшы.элементтер. Андан кийин бул анализ алгоритминде тренд жана мезгилдүүлүк маалыматы бар ML моделине киргизүү катары колдонулушу мүмкүн, бул эки дүйнөнүн тең мыктысын берет.

Маселе тууралуу билдирүүнү түшүнүү

Мисалы, жаңы жогорку ылдамдыктагы темир жол каттамындагы жүргүнчүлөрдүн санын болжолдоого байланыштуу TSти карап көрөлү. Мисалы, сизде 2 жылдык маалымат бар (2016-жылдын августу – 2018-жылдын сентябры) жана бул маалыматтар менен сиз кийинки 7 айдагы жүргүнчүлөрдүн санын болжолдооңуз керек, 2 жылдык маалымат (2016-2018) менен сааттык деңгээлде. бара жаткан жүргүнчүлөрдүн саны, жана келечекте алардын санын болжолдоо керек.

Убакыт катарлары менен болжолдоо үчүн берилиштер жыйындысы:

  1. Симуляция үчүн поезд жана тест файлы түзүлүүдө.
  2. Алгачкы 14 ай (2016-жылдын августу - 2017-жылдын октябры) машыгуу маалыматы катары колдонулат, ал эми кийинки 2 ай (2017-жылдын ноябры - 2017-жылдын декабры) сыноо маалыматтары болуп саналат.
  3. Күн сайын берилиштер топтомун топтоо.
Берилиштер топтомун бириктирүү
Берилиштер топтомун бириктирүү

Белгилүү бир убакыт аралыгында анын кандай өзгөрөрүн көрүү үчүн визуализацияны аткарыңыз.

Берилиштерди визуалдаштыруу
Берилиштерди визуалдаштыруу

Наив мамиле куруу ыкмасы

Бул учурда TS болжолдоо үчүн колдонулган китепкана статистикалык моделдер. Бул ыкмалардын кайсынысы болбосун колдонула электе орнотулушу керек. Балким, statsmodels Python чөйрөсүндө мурунтан эле орнотулган, бирок ал ыкмаларды колдобойтаны репозиторийден клондоштуруп, булактан орнотушуңуз керек болот.

Секвенциялоо
Секвенциялоо

Бул мисал үчүн, бул монеталардын саякат бааларынын башынан эле жана бүткүл убакыт аралыгында туруктуу экенин билдирет. Бул ыкма кийинки күтүлгөн чекит акыркы байкалган чекитке барабар деп болжолдойт жана Наив мамиле деп аталат.

Наив метод
Наив метод

Эми тесттик маалымат топтомундагы моделдин тактыгын текшерүү үчүн стандарттык четтөөнү эсептеңиз. RMSE маанисинен жана жогорудагы графиктен биз Naive жогорку өзгөрмөлүү опциялар үчүн ылайыктуу эмес, бирок туруктуу опциялар үчүн колдонулат деген тыянак чыгарсак болот.

Жөнөкөй орто стили

Усулду көрсөтүү үчүн диаграмма чийилип, Y огу бааны, X огу убакытты (күндөрдү) билдирет деп ойлошот.

Жөнөкөй орто стили
Жөнөкөй орто стили

Андан биз орточо маани туруктуу бойдон калуусу үчүн, баанын бир аз маржа менен кокусунан өсүп жана төмөндөйт деген тыянак чыгарсак болот. Бул учурда, сиз кийинки мезгилдин баасын бардык өткөн күндөрдүн орточо көрсөткүчүнө окшош алдын ала айта аласыз.

Мурда байкалган баллдардын күтүлгөн орточо көрсөткүчү менен болжолдоонун бул ыкмасы жөнөкөй орточо метод деп аталат.

Мында мурда белгилүү болгон чоңдуктар алынат, орточо көрсөткүч эсептелет жана кийинки маани катары кабыл алынат. Албетте, бул так эмес, бирок абдан жакын жана бул ыкма эң жакшы иштеген жагдайлар бар.

Жөнөкөй ортоыкмасы
Жөнөкөй ортоыкмасы

Графикте көрсөтүлгөн натыйжалардын негизинде, бул ыкма ар бир убакыт аралыгындагы орточо маани туруктуу бойдон калганда жакшы иштейт. Наив ыкмасы орточо караганда жакшыраак болсо да, бирок бардык маалымат топтомдору үчүн эмес. Ар бир моделди этап-этабы менен сынап көрүү жана анын натыйжаны жакшыртып же жакшыртпасын көрүү сунушталат.

Кыймылдуу орточо үлгү

Кыймылдуу орточо модель
Кыймылдуу орточо модель

Бул диаграмманын негизинде биз баалар мурда бир нече жолу кенен маржага жогорулаган, бирок азыр туруктуу деген тыянакка келсек болот. Мурунку орточо ыкманы колдонуу үчүн мурунку бардык маалыматтардын орточосун алуу керек. Баштапкы мезгилдин баалары кийинки мезгилдин болжолуна катуу таасир этет. Андыктан, жөнөкөй орточо көрсөткүчтөн жогорулоо катары, акыркы бир нече убакыт аралыгындагы орточо бааларды гана алыңыз.

Бул болжолдоо ыкмасы кыймылдуу орточо техника деп аталат, кээде "n" өлчөмүндөгү "кыймылдуу терезе" деп да аталат. Жөнөкөй моделди колдонуу менен, методдун тактыгын текшерүү үчүн TSтеги кийинки маани болжолдонот. Бул дайындар топтому үчүн Cliarly Naive орточо жана кыймылдуу орточо көрсөткүчтөн ашып кетти.

Жөнөкөй экспоненциалдык тегиздөө ыкмасы менен божомолдун варианты бар. Кыймылдуу орточо ыкмада өткөн "n" байкоолору бирдей салмакталат. Бул учурда, сиз өткөн 'n' ар бири прогнозго өз алдынча таасир эткен кырдаалдарга туш болушуңуз мүмкүн. Мурунку байкоолорду башкача салмактаган бул вариация метод деп аталатсалмактанып алынган орточо.

Үлгүлөрдүн экстраполяциясы

Убакыт серияларын болжолдоо алгоритмдерин эске алуу үчүн зарыл болгон эң маанилүү касиеттердин бири – бул машыгуу берилиштеринин доменинен тышкары калыптарды экстраполяциялоо мүмкүнчүлүгү. Көптөгөн ML алгоритмдеринде мындай мүмкүнчүлүк жок, анткени алар окутуу маалыматтары менен аныкталган аймак менен чектелет. Ошондуктан, алар натыйжаны келечекке долбоорлоо болгон TS үчүн ылайыктуу эмес.

TS алгоритминин дагы бир маанилүү касиети - ишеним интервалдарын алуу мүмкүнчүлүгү. Бул TS моделдеринин демейки касиети болгону менен, көпчүлүк ML моделдеринде мындай мүмкүнчүлүк жок, анткени алардын баары статистикалык бөлүштүрүүгө негизделбейт.

ТСти алдын ала айтуу үчүн жөнөкөй статистикалык ыкмалар гана колдонулат деп ойлобоңуз. Дегеле андай эмес. Өзгөчө учурларда абдан пайдалуу боло турган көптөгөн татаал ыкмалар бар. Жалпыланган авторегрессивдүү шарттуу гетероскедастика (GARCH), Байезиан жана VAR алардын айрымдары гана.

Ошондой эле артта калган божомолдоочуларды колдонгон жана нейрондук тармак авторегрессиясы (NNAR) сыяктуу функцияларды иштете алган убакыт катарларына колдонула турган нейрондук тармак моделдери бар. Атүгүл татаал окутуудан алынган убакыт серияларынын моделдери бар, айрыкча LSTM жана GRU тармактары сыяктуу кайталануучу нейрондук тармак үй-бүлөсүндө.

Эсептөө көрсөткүчтөрү жана калдык диагностика

Эң кеңири таралган болжолдоо көрсөткүчтөрүrms регрессия маселелерин чечүүдө көптөгөн адамдар колдонгон дегенди билдирет:

  • MAPE, анткени ал масштабдан көз каранды эмес жана катанын чыныгы маанилерге пайыздык катышын көрсөтөт;
  • MASE, бул болжолдоо жөнөкөй божомолго салыштырмалуу канчалык жакшы аткарылып жатканын көрсөтөт.

Божомолдоо ыкмасы ыңгайлаштырылгандан кийин, анын моделдерди канчалык жакшы түшүрө аларын баалоо маанилүү. Баалоо көрсөткүчтөрү баалуулуктар чыныгы маанилерге канчалык жакын экендигин аныктоого жардам бергени менен, алар моделдин TSке туура келерин баалай албайт. Калгандар муну баалоонун жакшы жолу. Программист TS үлгүлөрүн колдонууга аракет кылып жаткандыктан, каталар "ак ызы-чуу" сыяктуу болушун күтүшү мүмкүн, анткени алар моделге түшүрүүгө мүмкүн болбогон нерсени билдирет.

"Ак ызы-чуу" төмөнкү касиеттерге ээ болушу керек:

  1. Калыштырылбаган калдыктар (Acf=0)
  2. Калдыктар нөлдүк орточо (калыс) жана туруктуу дисперсиясы бар нормалдуу бөлүштүрүүгө ылайык келет.
  3. Эгер эки касиеттин бири жок болсо, моделде жакшыртууга орун бар.
  4. Нөл орточо касиетти T-тесттин жардамы менен оңой сынаса болот.
  5. Нормалдуулуктун жана туруктуу дисперсиянын касиеттери калдыктардын гистограммасы же тиешелүү бир өзгөрмөлүү нормалдуулук тести аркылуу визуалдык түрдө көзөмөлдөнөт.

ARIMA модели

ARIMA - AutoRegressive Integrated Moving-Average модели, TS болжолдоодо колдонулган эң популярдуу ыкмалардын бири, негизиненжогорку сапаттагы моделдерди түзүү үчүн берилиштердин автокорреляциясы аркылуу.

ARIMA коэффициенттерин баалоодо негизги божомол маалыматтар стационардык болуп саналат. Бул тренд жана сезондук дисперсияга таасир эте албайт дегенди билдирет. моделдин сапатын болжолдонгон баалуулуктар менен иш жүзүндөгү баалуулуктардын убакыт графигин салыштыруу аркылуу баалоого болот. Эгерде эки ийри сызык тең жакын болсо, анда модель талданган учурга туура келет деп божомолдоого болот. Ал бардык тенденцияларды жана мезгилдүүлүктү, эгер бар болсо, ачып бериши керек.

Калдыктарды талдоо моделдин туура келерин көрсөтүүсү керек: кокус калдыктар анын так экенин билдирет. ARIMAны (0, 1, 1) параметрлери менен тууралоо экспоненциалдык тегиздөө сыяктуу жыйынтыктарды берет, ал эми (0, 2, 2) параметрлерин колдонуу эки эселенген экспоненциалдык тегиздөө натыйжаларын берет.

SQL сервериндеги убакыт серияларынын алгоритмдери
SQL сервериндеги убакыт серияларынын алгоритмдери

Сиз ARIMA жөндөөлөрүнө Excel'де кире аласыз:

  1. Excelди баштоо.
  2. Куралдар тилкесинде XL MINERди табыңыз.
  3. Тасмада, ылдый түшүүчү менюдан ARIMA тандаңыз.

ARIMA моделинин мүмкүнчүлүктөрүнүн корутундусу:

  1. ARIMA - Авторегрессивдүү интеграцияланган кыймылдуу орточо.
  2. Убакыт серияларын талдоодо колдонулган болжолдоо модели.
  3. ARIMA параметринин синтаксиси: ARIMA (p, d, q) мында p=авторегрессивдүү терминдердин саны, d=мезгилдик айырмалардын саны жана q=кыймылдуу орточо терминдердин саны.

SQL сервериндеги алгоритмдер

Кайчылаш болжолдоону аткаруу маанилүүлөрдүн бирикаржылык милдеттерди болжолдоодо убакыт катарларынын өзгөчөлүктөрү. Эгерде эки окшош серия колдонулса, натыйжадагы модель башкалардын жүрүм-турумуна негизделген бир катардын натыйжаларын болжолдоо үчүн колдонулушу мүмкүн.

SQL Server 2008 үйрөнүү жана колдонуу үчүн күчтүү жаңы убакыт катар функцияларына ээ. Куралда оңой жеткиликтүү TS маалыматтары, алгоритмдик функцияларды имитациялоо жана кайра чыгаруу үчүн колдонууга оңой интерфейс жана ичинде эмне болуп жатканын түшүнүү үчүн сервердик DMX сурамдарына шилтемеси бар түшүндүрмө терезеси бар.

Рыноктук убакыт сериясы - бул терең үйрөнүү моделдерин жана алгоритмдерин колдонууга мүмкүн болгон кеңири аймак. Банктар, брокерлер жана фонддор индекстерге, алмашуу курстарына, фьючерстерге, криптовалюталардын баасына, мамлекеттик акцияларга жана башкаларга анализ жана болжолдоолорду колдонуу менен эксперимент жүргүзүп жатышат.

Убакыт катарларын болжолдоодо нейротармак рыноктордун структураларын жана тенденцияларын изилдөө аркылуу алдын ала айтууга боло турган схемаларды табат жана трейдерлерге кеңеш берет. Бул тармактар ошондой эле күтүлбөгөн чокулар, түшүүлөр, тренддин өзгөрүшү жана деңгээлдин жылышы сыяктуу аномалияларды аныктоого жардам берет. Көптөгөн жасалма интеллект моделдери каржылык болжолдоо үчүн колдонулат.

Сунушталууда: