Уақыттық қатарларды талдау және болжау

Мазмұны:

Уақыттық қатарларды талдау және болжау
Уақыттық қатарларды талдау және болжау
Anonim

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

Уақыт қатары әдісі

Уақыт қатарлары әдісі
Уақыт қатарлары әдісі

Уақыт сериясы (TS) әдісі – белгілі бір уақыт аралығында ақпаратты жинайтын деректер жинағы. Бұл түрді алудың арнайы әдістері бар:

  • сызықты және сызықты емес;
  • параметрлік және параметрлік емес;
  • бірөлшемді және көпөлшемді.

Болжам уақытысериясы бүгінгі күннің қиындықтарына жауап беретін бірегей мүмкіндіктер жиынтығын әкеледі. Модельдеу деректерді өзгертудің қозғаушы күшін құруды үйренуге негізделген. Процесс ұзақ мерзімді трендтерден, маусымдық әсерлерден немесе TS-ке тән және талдаудың басқа түрлерінде байқалмайтын тұрақты емес ауытқулардан туындайды.

Машиналық оқыту – алгоритмдер деректерден құрастырылатын және жасанды нейрондық желілерді, терең оқытуды, ассоциация ережелерін, шешім ағаштарын, күшейтетін оқытуды және Байес желілерін қамтитын информатика саласы. Әртүрлі алгоритмдер есептерді шешудің нұсқаларын қамтамасыз етеді және олардың әрқайсысында деректерді енгізу, жылдамдық және нәтижелердің дәлдігі бойынша өз талаптары мен теңдестігі бар. Бұлар соңғы болжамдардың дәлдігімен қатар, пайдаланушы зерттелетін жағдайға қай алгоритм ең жақсы жұмыс істейтінін шешкен кезде өлшенеді.

Уақыт қатарларын болжау статистика саласын алады, бірақ мәселені модельдеуге жаңа тәсілдер береді. Машиналық оқыту мен уақыт қатарының негізгі мәселесі бірдей – бұрын белгілі деректер негізінде жаңа нәтижелерді болжау.

Болжамдық үлгінің мақсаты

Болжамдық модельдің мақсаты
Болжамдық модельдің мақсаты

TS – тұрақты аралықпен жиналған деректер нүктелерінің жинағы. Олар ұзақ мерзімді трендті анықтау, болашақты болжау немесе талдаудың басқа түрін орындау үшін талданады. TS қалыпты регрессия мәселесінен ерекшеленетін 2 нәрсе бар:

  1. Олар уақытқа байланысты. СоныменСызықтық регрессия моделінің бақылаулар тәуелсіз деген негізгі болжамы бұл жағдайда орындалмайды.
  2. Өсу немесе азаю тенденциясымен қатар, TS-тердің көпшілігінде маусымдықтың қандай да бір түрі болады, яғни белгілі бір уақыт кезеңіне тән өзгерістер.

Уақыттық қатарларды болжау моделінің мақсаты сұраныс бойынша дәл болжам беру болып табылады. Уақыт қатарында тәуелсіз айнымалы және мақсатты тәуелді айнымалы ретінде уақыт (t) болады. Көп жағдайда болжам нақты нәтиже болып табылады, мысалы, үйді сату бағасы, жарыстың спорттық нәтижесі, биржадағы сауда нәтижелері. Болжам медиана мен орташа мәнді білдіреді және 80-95% диапазонындағы сенімділік деңгейін білдіретін сенімділік аралығын қамтиды. Олар тұрақты аралықпен жазылғанда, процестер уақыттық қатарлар деп аталады және екі жолмен көрсетіледі:

  • жасырын ретті жасайтын уақыт индексі бар бір өлшемді;
  • екі өлшемі бар жиын: тәуелсіз айнымалысы бар уақыт және басқа тәуелді айнымалы.

Мүмкіндіктерді жасау қолданбалы машиналық оқытудағы ең маңызды және уақытты қажет ететін тапсырмалардың бірі болып табылады. Дегенмен, уақыттық қатарларды болжау мүмкіндіктерді жасамайды, кем дегенде дәстүрлі мағынада емес. Бұл, әсіресе, нәтижені келесі мәнді ғана емес, бірнеше қадам алға болжағыңыз келгенде дұрыс.

Бұл мүмкіндіктер толығымен өшірілген дегенді білдірмейді. Оларды келесі себептерге байланысты сақтықпен пайдалану керек:

  1. Болашағы қандай екені белгісізмәндер осы мүмкіндіктер үшін болады.
  2. Нысандарды болжауға болатын болса және кейбір үлгілері болса, олардың әрқайсысы үшін болжамды үлгі құра аласыз.

Алайда болжамдық мәндерді мүмкіндіктер ретінде пайдалану қатені мақсатты айнымалыға таратып, қателерге немесе біржақты болжамдарға әкелетінін ескеріңіз.

Уақыт қатарының құрамдастары

Уақыт қатарларының құрамдас бөліктері
Уақыт қатарларының құрамдас бөліктері

Тренд серия уақыт өте келе ұлғайған, азайған немесе тұрақты деңгейде қалған кезде болады, сондықтан ол функция ретінде қабылданады. Маусымдық тұрақты жиілікте (m) қайталанатын мерзімді үлгілерді көрсететін уақыт қатарының қасиетін білдіреді, мысалы, m=12 үлгінің он екі ай сайын қайталанатынын білдіреді.

Маусымдыққа ұқсас жалған айнымалы мәндерді екілік функция ретінде қосуға болады. Сіз, мысалы, мерекелерді, арнайы іс-шараларды, маркетингтік науқандарды, құндылығының шетелдік немесе жоқтығына қарамастан есепке ала аласыз. Дегенмен, бұл айнымалылардың белгілі бір үлгілері болуы керек екенін есте ұстаған жөн. Дегенмен, күндер санын болашақ кезеңдер үшін де оңай есептеуге болады және уақыттық қатарларды болжауға әсер етеді, әсіресе қаржылық салада.

Циклдер – белгіленген жылдамдықпен болмайтын маусымдар. Мысалы, Канада сілеусінінің жылдық көбею атрибуттары маусымдық және циклдік заңдылықтарды көрсетеді. Олар тұрақты аралықпен қайталанбайды және жиілік 1 (m=1) болса да орын алуы мүмкін.

Кейін қалған мәндер -айнымалының артта қалған мәндерін болжаушылар ретінде қосуға болады. ARIMA, векторлық авторегрессия (VAR) немесе авторегрессивті нейрондық желілер (NNAR) сияқты кейбір үлгілер осылай жұмыс істейді.

Қызықты айнымалының құрамдастары уақыттық қатарларды талдау және болжау, олардың мінез-құлқын, үлгілерін түсіну және сәйкес үлгіні таңдай алу үшін өте маңызды.

Деректер жинағы атрибуттары

Деректер жиынының төлсипаттары
Деректер жиынының төлсипаттары

Мыңдаған, миллиондаған және миллиардтаған деректер нүктелерін машиналық оқыту үлгілеріне енгізуге дағдылануыңыз мүмкін, бірақ бұл уақыт қатарлары үшін қажет емес. Шындығында айнымалының жиілігі мен түріне байланысты шағын және орташа ТС-мен жұмыс істеуге болады және бұл әдістің кемшілігі емес. Оның үстіне бұл тәсілдің шын мәнінде бірқатар артықшылықтары бар:

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

Бұл жинақтардың кейбірі уақыт белгісімен, жүйе журналдарымен және қаржылық деректермен жазылған оқиғалардан келеді. TSDB уақыттық қатарлармен табиғи түрде жұмыс істейтіндіктен, бұл әдісті ауқымды деректер жиындарына қолданудың тамаша мүмкіндігі.

Машинаны оқыту

Машиналық оқыту (ML) дәстүрлі уақыт қатарларын болжау әдістерінен асып түседі. Машиналық оқыту әдістерін TS деректеріндегі классикалық статистикалық әдістермен салыстыратын көптеген зерттеулер бар. Нейрондық желілер кең зерттелген және TS тәсілдерін қолданатын технологиялардың бірі болып табылады. Машиналық оқыту әдістері уақыттық қатарларға негізделген деректерді жинау рейтингтерін басқарады. Бұл жинақтардың тиімділігі дәлелденді, олар M3 немесе Kaggle-ге қарсы таза TS жинақтарынан асып түседі.

MO-ның өзіндік проблемалары бар. Деректер жиынынан мүмкіндіктерді әзірлеу немесе жаңа болжаушыларды жасау ол үшін маңызды қадам болып табылады және өнімділікке үлкен әсер етуі және TS деректерінің тренд пен маусымдық мәселелерін шешудің қажетті жолы болуы мүмкін. Сондай-ақ, кейбір үлгілерде деректерге қаншалықты сәйкес келетініне қатысты мәселелер бар, ал егер сәйкес келмесе, олар негізгі трендті жіберіп алуы мүмкін.

Уақыт қатарлары мен машиналық оқыту тәсілдері бір-бірінен оқшауланбауы керек. Әр тәсілдің артықшылықтарын беру үшін оларды біріктіруге болады. Болжау әдістері мен уақыттық қатарларды талдау деректерді тренд пен маусымдық деректерге ыдыратуда жақсы.элементтері. Содан кейін бұл талдауды алгоритмінде тренд және маусымдық ақпараты бар, екі әлемнің ең жақсысын беретін ML үлгісіне кіріс ретінде пайдалануға болады.

Мәселе туралы мәлімдемені түсіну

Мысалы, жаңа жоғары жылдамдықты теміржол қызметіндегі жолаушылар санын болжауға қатысты TS-ті қарастырыңыз. Мысалы, сізде 2 жылдық деректер (2016 ж. тамыз - 2018 ж. қыркүйек) бар және осы деректермен сағаттық деңгейде 2 жылдық деректерге (2016-2018) ие келесі 7 айдағы жолаушылар санын болжау керек. жолаушылар саны, және олардың санын болашақта есептеу қажет.

Уақыт қатарларымен болжауға арналған деректер жиынының жиыны:

  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 - Авторегрессивті біріктірілген жылжымалы-орташа үлгісі, TS болжауда қолданылатын ең танымал әдістердің бірі, негізіненжоғары сапалы үлгілерді жасау үшін деректердің автокорреляциясы арқылы.

ARIMA коэффициенттерін бағалау кезінде деректер стационарлық болып табылады деген негізгі болжам. Бұл тренд пен маусымдық ауытқуға әсер ете алмайтынын білдіреді. Модельдің сапасын болжамды мәндермен нақты мәндердің уақыттық сызбасын салыстыру арқылы бағалауға болады. Егер екі қисық жақын болса, онда модель талданатын жағдайға сәйкес келеді деп болжауға болады. Онда кез келген трендтер мен маусымдық (бар болса) ашылуы керек.

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

SQL серверіндегі уақыт сериясының алгоритмдері
SQL серверіндегі уақыт сериясының алгоритмдері

Excel бағдарламасында ARIMA параметрлеріне қол жеткізуге болады:

  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 сұрауларына сілтемесі бар түсіндіру терезесі бар.

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

Уақыт серияларын болжау кезінде нейрондық желі нарықтардың құрылымдары мен тенденцияларын зерттеу арқылы болжамды үлгілерді табады және трейдерлерге кеңес береді. Бұл желілер күтпеген шыңдар, құлдыраулар, трендтердің өзгеруі және деңгейдің ауысуы сияқты ауытқуларды анықтауға да көмектеседі. Көптеген жасанды интеллект үлгілері қаржылық болжамдар үшін пайдаланылады.

Ұсынылған: