Ko'p yillar davomida odamlar ob-havo sharoiti, iqtisodiy va siyosiy voqealar va sport natijalarini bashorat qilishgan, yaqinda bu keng ro'yxat kriptovalyutalar bilan to'ldirildi. Ko'p qirrali voqealarni bashorat qilish uchun prognozlarni ishlab chiqishning ko'plab usullari mavjud. Masalan, sezgi, ekspert xulosalari, anʼanaviy statistik maʼlumotlar bilan solishtirish uchun oʻtmishdagi natijalardan foydalanish va vaqtli qatorlarni bashorat qilish ulardan biri, ayni paytda keng koʻlamli ilovalarga ega boʻlgan eng zamonaviy va aniq prognoz turi.
Vaqt qatori usuli
Vaqt seriyasi (TS) usuli ma'lum vaqt oralig'ida ma'lumot to'playdigan ma'lumotlar to'plamidir. Ushbu turni ajratib olishning maxsus usullari mavjud:
- chiziqli va chiziqli bo'lmagan;
- parametrik va noparametrik;
- bir oʻlchovli va koʻp oʻlchovli.
Prognoz vaqtiseriyalar o'zi bilan bugungi muammolarga javob beradigan noyob imkoniyatlar to'plamini olib keladi. Modellashtirish ma'lumotlar o'zgarishining harakatlantiruvchi kuchini yaratishni o'rganishga tayanadi. Jarayon uzoq muddatli tendentsiyalar, mavsumiy ta'sirlar yoki TSga xos bo'lgan va boshqa tahlil turlarida kuzatilmaydigan tartibsiz tebranishlardan kelib chiqadi.
Mashinani oʻrganish - algoritmlar maʼlumotlardan tuzilgan va sunʼiy neyron tarmoqlar, chuqur oʻrganish, assotsiatsiya qoidalari, qarorlar daraxtlari, mustahkamlovchi oʻrganish va Bayes tarmoqlarini oʻz ichiga oluvchi kompyuter fanining boʻlimi. Turli xil algoritmlar muammolarni hal qilish variantlarini taqdim etadi va ularning har biri ma'lumotlarni kiritish, tezlik va natijalarning aniqligi bo'yicha o'z talablari va kelishuvlariga ega. Bular yakuniy bashoratlarning to‘g‘riligi bilan bir qatorda, foydalanuvchi qaysi algoritm o‘rganilayotgan vaziyat uchun eng yaxshi ishlashini hal qilganda baholanadi.
Vaqt qatorlarini bashorat qilish statistika sohasidan olingan, ammo muammolarni modellashtirishga yangi yondashuvlar beradi. Mashinani oʻrganish va vaqt seriyalari uchun asosiy muammo bir xil – avval maʼlum boʻlgan maʼlumotlar asosida yangi natijalarni bashorat qilish.
Prognozli modelning maqsadi
TS - bu muntazam intervallarda to'plangan ma'lumotlar nuqtalari to'plami. Ular uzoq muddatli tendentsiyani aniqlash, kelajakni bashorat qilish yoki boshqa turdagi tahlillarni amalga oshirish uchun tahlil qilinadi. TSni oddiy regressiya muammosidan farq qiladigan ikkita narsa bor:
- Ular vaqtga bog'liq. Shunday qilibBu holatda chiziqli regressiya modelining kuzatishlar mustaqil ekanligi haqidagi asosiy taxmini bajarilmaydi.
- O'sish yoki pasayish tendentsiyasi bilan bir qatorda, aksar TSlarda mavsumiylik, ya'ni ma'lum vaqt davriga xos bo'lgan o'zgarishlar mavjud.
Vaqt qatorlarini prognozlash modelining maqsadi talab boʻyicha aniq prognoz berishdir. Vaqt seriyasi mustaqil o'zgaruvchi va maqsadli qaram o'zgaruvchi sifatida vaqt (t) ga ega. Aksariyat hollarda prognoz ma'lum bir natijadir, masalan, uyni sotish narxi, musobaqaning sport natijasi, birjadagi savdo natijalari. Bashorat o'rtacha va o'rtacha qiymatlarni ifodalaydi va 80-95% oralig'ida ishonch darajasini ifodalovchi ishonch oralig'ini o'z ichiga oladi. Ular muntazam oraliqlarda qayd etilganda, jarayonlar vaqt seriyalari deb ataladi va ikki shaklda ifodalanadi:
- koʻrsatilgan tartibni yaratuvchi vaqt indeksli bir oʻlchovli;
- ikki oʻlchovli toʻplam: mustaqil oʻzgaruvchiga ega vaqt va boshqa bogʻliq oʻzgaruvchi.
Xususiyatlar yaratish amaliy mashinalarni oʻrganishdagi eng muhim va vaqt talab qiladigan vazifalardan biridir. Biroq, vaqt seriyalarini prognozlash hech bo'lmaganda an'anaviy ma'noda xususiyatlarni yaratmaydi. Bu, ayniqsa, natijani faqat keyingi qiymatni emas, balki bir necha qadam oldinda bashorat qilmoqchi bo‘lsangiz to‘g‘ri keladi.
Bu funksiyalar butunlay oʻchirilgan degani emas. Ulardan faqat quyidagi sabablarga ko'ra ehtiyotkorlik bilan foydalanish kerak:
- Kelajak qanday ekanligi noma'lumqiymatlar bu funksiyalar uchun bo‘ladi.
- Agar ob'ektlar oldindan aytib bo'ladigan bo'lsa va ba'zi naqshlarga ega bo'lsa, ularning har biri uchun bashoratli model yaratishingiz mumkin.
Biroq shuni yodda tutingki, prognozli qiymatlardan xususiyat sifatida foydalanish xatoni maqsadli oʻzgaruvchiga koʻpaytirishi va xatolar yoki noxolis bashoratlarga olib kelishi mumkin.
Vaqt seriyasi komponentlari
Trend qator vaqt oʻtishi bilan koʻpaygan, kamaygan yoki doimiy darajada qolganda mavjud boʻladi, shuning uchun u funksiya sifatida qabul qilinadi. Mavsumiylik doimiy chastotada (m) takrorlanadigan davriy naqshlarni aks ettiruvchi vaqt seriyasining xususiyatiga ishora qiladi, masalan, m=12 naqsh har o‘n ikki oyda takrorlanishini bildiradi.
Mavsumiylikka oʻxshash qoʻgʻirchoq oʻzgaruvchilar ikkilik funksiya sifatida qoʻshilishi mumkin. Siz, masalan, bayramlar, maxsus tadbirlar, marketing kampaniyalarini hisobga olishingiz mumkin, bu qiymat xorijiy yoki yo'qligidan qat'i nazar. Biroq, bu o'zgaruvchilar ma'lum naqshlarga ega bo'lishi kerakligini yodda tutishingiz kerak. Biroq, kunlar sonini kelajakdagi davrlar uchun ham osongina hisoblash mumkin va vaqt seriyalari prognoziga ta'sir qiladi, ayniqsa moliyaviy sohada.
Tsikllar - bu belgilangan tezlikda sodir bo'lmaydigan fasllar. Masalan, Kanada silsilasining yillik ko'payish atributlari mavsumiy va tsiklik naqshlarni aks ettiradi. Ular muntazam ravishda takrorlanmaydi va chastota 1 (m=1) bo'lsa ham paydo bo'lishi mumkin.
Kechikib qolgan qiymatlar -o'zgaruvchining kechikish qiymatlari bashorat qiluvchilar sifatida kiritilishi mumkin. ARIMA, vektor avtoregressiyasi (VAR) yoki avtoregressiv neyron tarmoqlari (NNAR) kabi ba'zi modellar shu tarzda ishlaydi.
Qiziqarli oʻzgaruvchining komponentlari vaqt seriyalarini tahlil qilish va prognozlash, ularning xatti-harakatlari, naqshlarini tushunish va mos modelni tanlash uchun juda muhimdir.
Ma'lumotlar to'plami atributlari
Mashinani oʻrganish modellariga minglab, millionlab va milliardlab maʼlumotlar nuqtalarini kiritishga odatlangan boʻlishingiz mumkin, ammo vaqt seriyalari uchun bu talab qilinmaydi. Darhaqiqat, o'zgaruvchining chastotasi va turiga qarab kichik va o'rta TS bilan ishlash mumkin va bu usulning kamchiligi emas. Bundan tashqari, ushbu yondashuvning bir qator afzalliklari bor:
- Bunday ma'lumotlar to'plami uy kompyuterining imkoniyatlariga mos keladi.
- Ba'zi hollarda vaqt seriyalari tahlili va prognozini faqat namunadan emas, balki butun ma'lumotlar to'plamidan foydalangan holda amalga oshiring.
- TS uzunligi tahlil qilinadigan grafiklarni yaratish uchun foydalidir. Bu juda muhim nuqta, chunki dasturchilar tahlil bosqichida grafikaga tayanadilar. Bu ular katta vaqt seriyalari bilan ishlamaydi degani emas, lekin dastlab ular kichikroq TS larni boshqarishi kerak.
- Vaqtga bogʻliq maydonni oʻz ichiga olgan har qanday maʼlumotlar toʻplami vaqt seriyalarini tahlil qilish va prognozlashdan foydalanishi mumkin. Biroq, agar dasturchi kattaroq ma'lumotlar to'plamiga ega bo'lsa, JB (TSDB)mosroq boʻlishi mumkin.
Ushbu toʻplamlarning baʼzilari vaqt tamgʻasi, tizim jurnallari va moliyaviy maʼlumotlar bilan yozilgan voqealardan olingan. TSDB mahalliy vaqt seriyalari bilan ishlaganligi sababli, bu texnikani katta hajmdagi maʼlumotlar toʻplamiga qoʻllash uchun ajoyib imkoniyatdir.
Mashina oʻrganish
Mashinalarni oʻrganish (ML) anʼanaviy vaqt qatorlarini bashorat qilish usullaridan ustunroq ishlashi mumkin. Mashinani o'rganish usullarini TS ma'lumotlari bo'yicha klassik statistik usullar bilan taqqoslaydigan ko'plab tadqiqotlar mavjud. Neyron tarmoqlar keng ko'lamda o'rganilgan va TS yondashuvlarini qo'llaydigan texnologiyalardan biridir. Mashinani o'rganish usullari vaqt seriyasiga asoslangan ma'lumotlarni yig'ish bo'yicha reytinglarda yetakchilik qiladi. Bu to‘plamlar M3 yoki Kaggle’ga nisbatan sof TS to‘plamlaridan oshib, samarali ekanligi isbotlangan.
MO-ning o'ziga xos muammolari bor. Ma'lumotlar to'plamidan xususiyatlarni ishlab chiqish yoki yangi bashorat qiluvchilarni yaratish uning uchun muhim qadam bo'lib, unumdorlikka katta ta'sir ko'rsatishi va TS ma'lumotlarining trend va mavsumiylik muammolarini hal qilishning zarur usuli bo'lishi mumkin. Shuningdek, baʼzi modellarda maʼlumotlarga qanchalik mos kelishi bilan bogʻliq muammolar mavjud va agar mos kelmasa, ular asosiy tendentsiyani oʻtkazib yuborishi mumkin.
Vaqt seriyalari va mashinani oʻrganish yondashuvlari bir-biridan ajralgan holda mavjud boʻlmasligi kerak. Ular har bir yondashuvning afzalliklarini berish uchun birlashtirilishi mumkin. Prognozlash usullari va vaqt seriyalarini tahlil qilish ma'lumotlarni trend va mavsumiy ma'lumotlarga ajratishda yaxshi.elementlar. Keyinchalik bu tahlil algoritmida trend va mavsumiylik maʼlumotlariga ega boʻlgan ML modeliga kirish sifatida ishlatilishi mumkin. Bu ikkala dunyoning eng yaxshisini beradi.
Muammo bayonini tushunish
Misol uchun, yangi tezyurar temir yo'l xizmatida yo'lovchilar sonini prognoz qilish bilan bog'liq TSni ko'rib chiqing. Misol uchun, sizda 2 yillik ma'lumotlar mavjud (2016 yil avgust - 2018 yil sentyabr) va bu ma'lumotlar bilan siz keyingi 7 oy uchun yo'lovchilar sonini prognoz qilishingiz kerak, bunda 2 yillik ma'lumotlar (2016-2018) bilan soatlik darajada. sayohat qilayotgan yo'lovchilar soni va kelajakda ularning sonini taxmin qilish kerak.
Vaqt qatorlari bilan bashorat qilish uchun maʼlumotlar toʻplamining quyi toʻplami:
- Simulyatsiya uchun poezd va test fayli yaratilmoqda.
- Birinchi 14 oy (2016-yil avgust – 2017-yil oktabr) oʻquv maʼlumotlari, keyingi 2 oy (2017-yil noyabr – 2017-yil dekabr) sinov maʼlumotlari sifatida ishlatiladi.
- Ma'lumotlar to'plamini har kuni jamlang.
Ma’lumotlarning ma’lum vaqt oralig’ida qanday o’zgarishini ko’rish uchun vizualizatsiya qiling.
Naive yondashuv qurilish usuli
Bu holatda TS bashorati uchun kutubxona statsmodellardir. Ushbu yondashuvlardan birini qo'llashdan oldin uni o'rnatish kerak. Ehtimol, statsmodels allaqachon Python muhitida o'rnatilgan, ammo u usullarni qo'llab-quvvatlamaydibashorat, shuning uchun uni ombordan klonlashingiz va manbadan oʻrnatishingiz kerak boʻladi.
Ushbu misol uchun bu tanga sayohat narxlari boshidan va butun vaqt davomida barqaror ekanligini anglatadi. Bu usul keyingi kutilgan nuqta oxirgi kuzatilgan nuqtaga teng deb faraz qiladi va oddiy yondashuv deb ataladi.
Endi test ma'lumotlar to'plamida modelning to'g'riligini tekshirish uchun standart og'ishni hisoblang. RMSE qiymati va yuqoridagi grafikdan xulosa qilishimiz mumkinki, Naive yuqori volatillik variantlari uchun mos emas, lekin barqaror variantlar uchun ishlatiladi.
Oddiy o'rta uslub
Usulni koʻrsatish uchun Y oʻqi narxni, X oʻqi esa vaqtni (kunlarni) ifodalaydi deb faraz qilgan holda diagramma tuziladi.
Bundan xulosa qilishimiz mumkinki, narx kichik marj bilan tasodifiy ravishda oshadi va kamayadi, shuning uchun o'rtacha qiymat doimiy bo'lib qoladi. Bunday holda, keyingi davr narxini barcha o‘tgan kunlar uchun o‘rtachaga o‘xshash taxmin qilishingiz mumkin.
Avval kuzatilgan ballarning kutilgan oʻrtacha qiymati bilan bashorat qilishning bu usuli oddiy oʻrtacha usuli deb ataladi.
Bunda avvaldan ma'lum bo'lgan qiymatlar olinadi, o'rtacha hisoblab chiqariladi va keyingi qiymat sifatida olinadi. Albatta, bu aniq bo'lmaydi, lekin bu juda yaqin va bu usul eng yaxshi ishlaydigan vaziyatlar mavjud.
Grafikda koʻrsatilgan natijalarga asoslanib, bu usul har bir vaqt oraligʻidagi oʻrtacha qiymat oʻzgarmas boʻlsa yaxshi ishlaydi. Oddiy usul o'rtacha ko'rsatkichdan yaxshiroq bo'lsa-da, lekin barcha ma'lumotlar to'plamlari uchun emas. Har bir modelni bosqichma-bosqich sinab ko'rish va natijani yaxshilash yoki yo'qligini ko'rish tavsiya etiladi.
Harakatlanuvchi oʻrtacha modeli
Ushbu jadvalga asoslanib, narxlar oʻtmishda bir necha marta katta farq bilan oshgan, ammo hozir barqaror degan xulosaga kelishimiz mumkin. Oldingi o'rtacha hisoblash usulini qo'llash uchun barcha oldingi ma'lumotlarning o'rtacha qiymatini olishingiz kerak. Dastlabki davr narxlari keyingi davr prognoziga kuchli ta'sir qiladi. Shuning uchun, oddiy oʻrtacha koʻrsatkichdan yaxshilanish sifatida faqat oxirgi bir necha vaqt oraligʻidagi oʻrtacha narxlarni oling.
Bu prognozlash texnikasi harakatlanuvchi oʻrtacha texnikasi deb ataladi, baʼzan esa “n” oʻlchamli “harakatlanuvchi oyna” deb ataladi. Oddiy modeldan foydalanib, usulning to'g'riligini tekshirish uchun TSdagi keyingi qiymat bashorat qilinadi. Bu maʼlumotlar toʻplami uchun Clearly Naive ham oʻrtacha, ham harakatlanuvchi oʻrtacha koʻrsatkichlardan oshib ketadi.
Oddiy eksponensial tekislash usuli bilan bashorat qilish varianti mavjud. Harakatlanuvchi o'rtacha usulida o'tgan "n" kuzatuvlari teng darajada tortiladi. Bunday holda, o'tmishdagi "n" ning har biri prognozga o'ziga xos tarzda ta'sir qiladigan vaziyatlarga duch kelishingiz mumkin. O'tmishdagi kuzatishlarni turlicha tortadigan bu o'zgarish usul deb ataladivaznli harakatlanuvchi oʻrtacha.
Naqshlar ekstrapolyatsiyasi
Vaqt qatorlarini bashorat qilish algoritmlarini ko'rib chiqish uchun zarur bo'lgan eng muhim xususiyatlardan biri bu o'quv ma'lumotlari domenidan tashqarida naqshlarni ekstrapolyatsiya qilish qobiliyatidir. Ko'pgina ML algoritmlari bunday imkoniyatga ega emas, chunki ular o'quv ma'lumotlari bilan belgilanadigan mintaqa bilan cheklanadi. Shuning uchun ular TS uchun mos emas, uning maqsadi natijani kelajakka loyihalashdir.
TS algoritmining yana bir muhim xususiyati ishonch oraliqlarini olish imkoniyatidir. Bu TS modellari uchun birlamchi xususiyat boʻlsa-da, aksariyat ML modellarida bunday imkoniyat mavjud emas, chunki ularning barchasi statistik taqsimotlarga asoslanmagan.
TSni bashorat qilish uchun faqat oddiy statistik usullar qo'llaniladi, deb o'ylamang. Bu umuman bunday emas. Maxsus holatlarda juda foydali bo'lishi mumkin bo'lgan juda ko'p murakkab yondashuvlar mavjud. Umumlashtirilgan avtoregressiv shartli heteroskedastiklik (GARCH), Bayesian va VAR - ulardan ba'zilari.
Shuningdek, neyron tarmoq modellari mavjud boʻlib, ular vaqt seriyalariga qoʻllanilishi mumkin boʻlib, ular orqada qolgan bashorat qiluvchilardan foydalanadi va neyron tarmoq avtoregressiyasi (NNAR) kabi funksiyalarni boshqara oladi. Hatto murakkab o'rganishdan olingan vaqt seriyasi modellari ham mavjud, xususan, LSTM va GRU tarmoqlari kabi takroriy neyron tarmoqlar oilasida.
Baholash koʻrsatkichlari va qoldiq diagnostika
Eng keng tarqalgan bashorat koʻrsatkichlarirms ko'pchilik regressiya muammolarini hal qilishda foydalanadigan ma'noni anglatadi:
- MAPE, chunki u masshtabdan mustaqil va xatoning haqiqiy qiymatlarga nisbatini foiz sifatida ifodalaydi;
- MASE, bu bashorat oddiy oʻrtacha bashoratga nisbatan qanchalik yaxshi ishlashini koʻrsatadi.
Prognozlash usuli moslashtirilgach, uning modellarni qanchalik yaxshi suratga olishga qodirligini baholash muhim. Baholash ko'rsatkichlari qiymatlarning haqiqiy qiymatlarga qanchalik yaqinligini aniqlashga yordam bersa-da, ular modelning TS ga mos kelishini baholamaydi. Qolgan qoldiqlar buni baholashning yaxshi usuli. Dasturchi TS namunalarini qo'llashga urinayotganligi sababli, xatolar "oq shovqin" kabi bo'lishini kutishi mumkin, chunki ular model tomonidan yozib bo'lmaydigan narsani anglatadi.
"Oq shovqin" quyidagi xususiyatlarga ega bo'lishi kerak:
- Korrelyatsiyasiz qoldiqlar (Acf=0)
- Qoldiqlar oʻrtacha nolga teng (xolis) va doimiy dispersiya bilan normal taqsimotga amal qiladi.
- Agar ikkita xususiyatdan biri etishmayotgan boʻlsa, modelni yaxshilash uchun joy bor.
- Oʻrtacha nol xususiyatni T-testi yordamida osongina tekshirish mumkin.
- Normallik va doimiy dispersiya xususiyatlari qoldiqlar gistogrammasi yoki tegishli bir oʻzgaruvchan normallik testi yordamida vizual nazorat qilinadi.
ARIMA modeli
ARIMA - AutoRegressive Integrated Moving-Average modeli TS prognozlashda qo'llaniladigan eng mashhur usullardan biridir, asosanyuqori sifatli modellarni yaratish uchun maʼlumotlar avtokorrelyatsiyasi orqali.
ARIMA koeffitsientlarini baholashda asosiy taxmin ma'lumotlarning statsionar ekanligidir. Bu tendentsiya va mavsumiylik tafovutga ta'sir qila olmasligini anglatadi. Modelning sifatini haqiqiy qiymatlarning vaqt grafigini prognoz qilingan qiymatlar bilan solishtirish orqali baholash mumkin. Agar ikkala egri chiziq yaqin bo'lsa, model tahlil qilingan holatga mos keladi deb taxmin qilish mumkin. U har qanday tendentsiya va mavsumiylikni, agar mavjud bo'lsa, oshkor qilishi kerak.
Qaldiqlar tahlili model mos kelishini ko'rsatishi kerak: tasodifiy qoldiqlar uning aniqligini bildiradi. ARIMA-ni (0, 1, 1) parametrlari bilan moslashtirish ko'rsatkichli tekislash bilan bir xil natijalarni beradi va parametrlardan (0, 2, 2) foydalanish ikki barobar eksponensial tekislash natijalarini beradi.
Siz Excelda ARIMA sozlamalariga kirishingiz mumkin:
- Excelni ishga tushirish.
- Uskunalar panelida XL MINERni toping.
- Tasmada ochiladigan menyudan ARIMA-ni tanlang.
ARIMA modeli imkoniyatlari haqida qisqacha ma'lumot:
- ARIMA - avtoregressiv integral harakatlanuvchi oʻrtacha.
- Vaqt seriyalari tahlilida foydalaniladigan prognozlash modeli.
- ARIMA parametr sintaksisi: ARIMA (p, d, q) bu yerda p=avtoregressiv atamalar soni, d=mavsumiy farqlar soni va q=harakatlanuvchi oʻrtacha atamalar soni.
SQL Serverdagi algoritmlar
Oʻzaro bashoratni amalga oshirish muhimlardan biridirmoliyaviy vazifalarni prognozlashda vaqt seriyalarining xususiyatlari. Agar ikkita oʻzaro bogʻliq seriya ishlatilsa, natijada olingan modeldan bir qator natijalarini boshqalarning xatti-harakati asosida bashorat qilish uchun foydalanish mumkin.
SQL Server 2008 o'rganish va foydalanish uchun kuchli yangi vaqt seriyasi xususiyatlariga ega. Asbobda oson foydalanish mumkin boʻlgan TS maʼlumotlari, algoritm funksiyalarini taqlid qilish va qayta ishlab chiqarish uchun foydalanish uchun qulay interfeys hamda server tomonidagi DMX soʻrovlariga havolasi boʻlgan tushuntirish oynasi mavjud, shunda siz ichkarida nimalar boʻlayotganini tushunasiz.
Bozor vaqt seriyasi chuqur oʻrganish modellari va algoritmlarini qoʻllash mumkin boʻlgan keng sohadir. Banklar, brokerlar va fondlar indekslar, valyuta kurslari, fyucherslar, kriptovalyuta narxlari, davlat aktsiyalari va boshqalarni tahlil qilish va prognozlashni qoʻllash boʻyicha tajriba oʻtkazmoqda.
Vaqt qatorlarini prognozlashda neyron tarmoq bozorlar tuzilmalari va tendentsiyalarini o'rganish orqali bashorat qilinadigan naqshlarni topadi va treyderlarga maslahat beradi. Ushbu tarmoqlar, shuningdek, kutilmagan cho'qqilar, pasayishlar, trend o'zgarishlari va darajadagi siljishlar kabi anomaliyalarni aniqlashga yordam beradi. Ko'pgina sun'iy intellekt modellari moliyaviy prognozlar uchun ishlatiladi.