除了計(jì)算大姨媽周期,時(shí)間序列分析還有什么用
據(jù)說(shuō)最貼心的男票是會(huì)記錄下女票每一次大姨媽來(lái)的時(shí)間,然后繪制成一張?jiān)路菡劬€圖以監(jiān)測(cè)女票的身體健康(以避開(kāi)無(wú)法啪啪啪的時(shí)間)。你知不知道,這張圖其實(shí)就是一個(gè)時(shí)間序列圖,你看圖預(yù)測(cè)未來(lái)幾個(gè)月女票的大姨媽時(shí)間就叫做時(shí)間序列分析……
咳咳,言歸正傳,時(shí)間序列分析是一種廣泛應(yīng)用的數(shù)據(jù)處理統(tǒng)計(jì)方法,除了計(jì)算大姨媽周期,在實(shí)際很生活還有很多應(yīng)用,小白今天就來(lái)帶大家探探究竟。
小白問(wèn):時(shí)間序列分析就是分析時(shí)間的么?
答:你是想問(wèn)分析的是什么數(shù)據(jù)吧?簡(jiǎn)單來(lái)說(shuō),時(shí)間序列數(shù)據(jù)是在特定時(shí)間內(nèi)監(jiān)測(cè)或記錄下的有序數(shù)據(jù)集合。太陽(yáng)活動(dòng)、潮汐、股票市場(chǎng)趨勢(shì)、疾病傳播等都是時(shí)間序列的典型案例。幾乎在任意應(yīng)用科學(xué)或工程學(xué)領(lǐng)域,只要涉及到基于時(shí)間的測(cè)量,都可以找到時(shí)間序列的聲影??茖W(xué)的定義就是:在特定時(shí)間(例如,小時(shí),月或年)內(nèi)記錄下的有序觀測(cè)值集合。
下圖為1720年至1980年的太陽(yáng)活動(dòng)圖,就是典型的時(shí)間序列:
小白問(wèn):哦,就是說(shuō)在規(guī)律的時(shí)間間隔內(nèi)檢測(cè)到的有序數(shù)據(jù)集,那怎么來(lái)分析數(shù)據(jù)呢?
答:首先,時(shí)間序列分析的前提是認(rèn)為這些收集到的數(shù)據(jù)點(diǎn)在一段時(shí)間內(nèi)的變化可能具有特定的內(nèi)部結(jié)構(gòu),比如趨勢(shì)啦或季節(jié)變化啦等等。在此前提下,通過(guò)比較不同時(shí)間點(diǎn)上單個(gè)或多個(gè)時(shí)間序列的值,對(duì)時(shí)間序列數(shù)據(jù)進(jìn)行分析,進(jìn)而提取出有意義的統(tǒng)計(jì)量或其他數(shù)據(jù)特征。
小白問(wèn):分析完了怎么用吶?
答:當(dāng)然就是來(lái)預(yù)測(cè)女票大姨媽啦。哦,口誤,當(dāng)然是利用時(shí)間系列模型,基于前期觀察到的序列規(guī)律來(lái)預(yù)測(cè)未來(lái)的數(shù)值啦。比如下圖,綠線就是預(yù)測(cè)值,周邊的灰色是置信區(qū)間:
小白問(wèn):什么信什么區(qū)間?
答:哈哈,我就知道你會(huì)問(wèn)這個(gè)問(wèn)題。舉個(gè)例子,你明天要考試數(shù)學(xué)了,你覺(jué)得大概能多少分? 估計(jì)70分吧,上下不超過(guò)10分。那你對(duì)這個(gè)預(yù)測(cè)有多大把握呢?9成吧!我們就說(shuō)你明天數(shù)學(xué)考試成績(jī)90%的置信區(qū)間(Confidence Interval)為60~80,也就是你有90%的信心考出介于60~80的分?jǐn)?shù)。
小白問(wèn):好像懂些了。其實(shí)我真想做個(gè)時(shí)間序列分析,然后預(yù)測(cè)女票啥時(shí)候會(huì)生氣啊!
答:你還想預(yù)測(cè)女票啥時(shí)候會(huì)生氣?你咋不找個(gè)機(jī)器人做女票!時(shí)間序列預(yù)測(cè)的應(yīng)用可比這廣泛多了,比如金融市場(chǎng)分析、庫(kù)存控制、銷(xiāo)售與市場(chǎng)預(yù)測(cè)、產(chǎn)量預(yù)測(cè)、地震預(yù)測(cè)、工作量預(yù)測(cè)等等,舉例都舉不完。
小白問(wèn):不明覺(jué)厲!
答:呃,那我再給你說(shuō)明白點(diǎn)兒。下面這張圖非常清楚地解釋了一般時(shí)間序列可以被分解成的三個(gè)部分。最上面的曲線是我們實(shí)際觀測(cè)到的點(diǎn),它是由下面三個(gè)曲線疊加而成的結(jié)果——趨勢(shì)性(第二條曲線),季節(jié)性(第三條曲線)和隨機(jī)性(第四條曲線)
時(shí)間序列分析的目的主要有兩個(gè),一是要識(shí)別監(jiān)測(cè)到的數(shù)據(jù)所展現(xiàn)出的現(xiàn)象及其本質(zhì),就是找到規(guī)律,這個(gè)規(guī)律往往是趨勢(shì)性的或者有著較為明確的周期即季節(jié)性,因此就需要去掉一些不必要的噪音干擾(比如上面的的第四條曲線),并且把趨勢(shì)性和季節(jié)性分解出來(lái),想圖示那樣;二是要利用這些數(shù)據(jù)來(lái)預(yù)測(cè)未來(lái)同樣時(shí)間軸上可能會(huì)出現(xiàn)的數(shù)值(統(tǒng)籌考慮三個(gè)分解部分)。
這兩個(gè)目的都要求我們識(shí)別時(shí)間序列數(shù)據(jù)內(nèi)在的模式并將其盡可能準(zhǔn)確地描述出來(lái)。因?yàn)槭挛锇l(fā)展的規(guī)律在長(zhǎng)期內(nèi)相對(duì)穩(wěn)定(比如你女票的大姨媽來(lái)訪這樣的事件的發(fā)生),所以趨勢(shì)性和季節(jié)性這樣代表規(guī)律的因素,它們的數(shù)值變化也相對(duì)穩(wěn)定,在未來(lái)的一定時(shí)期內(nèi),還會(huì)像現(xiàn)在看到的這樣子變化,所以一旦我們了解了數(shù)據(jù)系列的模式,就可以解釋這些數(shù)據(jù)并結(jié)合其他數(shù)據(jù)來(lái)做預(yù)測(cè)(例如:季節(jié)性商品價(jià)格的變化和預(yù)測(cè))。
不過(guò)小白你要記住,無(wú)論我們的理解有多深刻,對(duì)現(xiàn)象的解釋有多靠譜,時(shí)間序列預(yù)測(cè)的未來(lái)越久遠(yuǎn),準(zhǔn)確度會(huì)愈低。
小白問(wèn):一定一定。對(duì)了,時(shí)間序列分析不會(huì)出現(xiàn)很多異常的影響因素么?比如女票為了不影響游泳比賽,吃藥推遲了大姨媽時(shí)間,再按照曲線推測(cè)她后續(xù)的經(jīng)期,就會(huì)不準(zhǔn)了吧?
答:好問(wèn)題,看來(lái)小白你已經(jīng)會(huì)舉一反三了。是的,通常收集到的時(shí)間序列數(shù)據(jù)中都會(huì)包含有一些隨機(jī)擾動(dòng)因素的影響,我們把這些具有不確定性的因素導(dǎo)致的數(shù)量變化統(tǒng)稱(chēng)為隨機(jī)變量,業(yè)內(nèi)常見(jiàn)的是通過(guò)“平滑數(shù)據(jù)”的方法來(lái)降低或消除隨機(jī)變量帶來(lái)的影響,“平滑”通常也被稱(chēng)為過(guò)濾,目前主要有兩大類(lèi):平均法和指數(shù)平滑法。
小白問(wèn):指數(shù)平滑聽(tīng)起來(lái)就是更快一點(diǎn)的平滑唄?
答:差不多是這個(gè)意思。
平均法就是取相鄰幾個(gè)數(shù)的平均數(shù),然后分析平均數(shù)而不是原始數(shù)據(jù)。舉一個(gè)簡(jiǎn)單的例子,平均法中最常見(jiàn)的其中一種叫做“移動(dòng)平均”(Moving Average),這個(gè)例子中,我們把前三個(gè)時(shí)間點(diǎn)的數(shù)值取平均數(shù),當(dāng)作第3個(gè)時(shí)間點(diǎn)的移動(dòng)平均數(shù)8.667=(9+8+9)/3,第2,3,4個(gè)點(diǎn)數(shù)值的平均數(shù)作為第4個(gè)點(diǎn)的移動(dòng)平均數(shù)…以此類(lèi)推。
指數(shù)平滑法稍微復(fù)雜一點(diǎn),但是也更受歡迎,很多時(shí)候也更準(zhǔn)確。平均法中,過(guò)去的歷史觀測(cè)點(diǎn)的權(quán)重是一樣的,而在指數(shù)平滑法里,越遙遠(yuǎn)的觀測(cè)點(diǎn)的權(quán)重呈指數(shù)倍減少,就是說(shuō)越靠近的點(diǎn)給的權(quán)重越高。
移動(dòng)平均里也有加權(quán)移動(dòng)平均噢,加權(quán)是為了體現(xiàn)距離平均值對(duì)應(yīng)時(shí)點(diǎn)位置的遠(yuǎn)近,對(duì)平均值的不同影響程度,但是,移動(dòng)平均只能考慮短期影響,對(duì)長(zhǎng)期影響怎么辦呢?雖然離得越遠(yuǎn),影響越小,但是不能杜絕啊,科學(xué)的辦法來(lái)解決,就是指數(shù)平滑了,它是通過(guò)往期平滑值與當(dāng)期實(shí)際值的加總來(lái)體現(xiàn)平滑預(yù)測(cè)的理念,通過(guò)調(diào)整兩部分的權(quán)重來(lái)體現(xiàn)過(guò)去對(duì)現(xiàn)在的影響,乃至對(duì)未來(lái)的影響。
小白問(wèn):嗯嗯,那平滑之后,時(shí)間序列分析里面都用到哪些方法和技術(shù)建模啊?
答:其實(shí)時(shí)間序列的應(yīng)用可以說(shuō)非常廣泛但又備受限制。記得上面我們提到時(shí)間序列數(shù)據(jù)被分解為三個(gè)部分嗎?其中大趨勢(shì)和季節(jié)效應(yīng)是相對(duì)容易建模的,而隨機(jī)變化是比較難預(yù)測(cè)的。常見(jiàn)的針對(duì)“普通數(shù)據(jù)”的統(tǒng)計(jì)模型(如響應(yīng)模型,提升模型等)中,趨勢(shì)和季節(jié)效應(yīng)可能都不存在時(shí)間序列分析就需要做更多的數(shù)據(jù)準(zhǔn)備工作。例如,與用于標(biāo)準(zhǔn)線性回歸的數(shù)據(jù)不同,時(shí)間序列的數(shù)據(jù)不一定是獨(dú)立的或呈現(xiàn)出相同分布。它的一個(gè)決定性特征就是數(shù)據(jù)的排序是有意義的。數(shù)據(jù)的排序與內(nèi)在含義有強(qiáng)依賴(lài)關(guān)系,更改順序可能會(huì)更改數(shù)據(jù)的意義。
用來(lái)建立時(shí)間序列數(shù)據(jù)的模型主要包括以下幾種:
- ——Box-Jenkins ARIMA(Autoregressive Integrated Moving Average)模型
- ——Box-Jenkins多變量模型
- ——Holt-Winters指數(shù)平滑法(單,雙,三倍)
- ——不可觀察成分模型(Unobserved Components Model)
通常使用者的偏好和需要應(yīng)用的場(chǎng)景會(huì)決定最終使用哪類(lèi)技術(shù)。時(shí)間有限,這里肯定沒(méi)法給你介紹清楚所有的方法和技術(shù),日后真需要用的時(shí)候,就要你自己多做做功課,再多加探索了。
小白問(wèn):我簡(jiǎn)單查了一下有關(guān)時(shí)間序列分析的資料,好多數(shù)學(xué)公式啊,這些模型有沒(méi)有現(xiàn)成的程序包?
答:哈哈,小白你真是個(gè)求知欲旺盛的好喵。R和Python都有的,推薦你一個(gè)鏈接,有Python的樣本程序,可以從基礎(chǔ)學(xué)習(xí)哦。https://bicorner.com/2015/11/16/time-series-analysis-using-ipython/
剛剛女票召喚我了,你自己去研究研究吧!
【本文是51CTO專(zhuān)欄機(jī)構(gòu)大數(shù)據(jù)文摘的原創(chuàng)文章,微信公眾號(hào)“大數(shù)據(jù)文摘( id: BigDataDigest)”】