
時間序列預(yù)測網(wǎng)站流量增長趨勢(ARIMA)
在文章《淺析網(wǎng)站流量趨勢預(yù)測》中,我們曾對網(wǎng)站的直接流量進(jìn)行過分析和預(yù)測,直接流量整體較為平穩(wěn),但在工作日和周末存在較大差異。因此我們之前的方法是將工作日和周末的訪問量數(shù)據(jù)分開處理,通過分布情況單獨(dú)進(jìn)行預(yù)估。這種方法得到的預(yù)測值范圍較大,精確度也較差。本篇文章我們將使用時間序列的方法對網(wǎng)站直接流量的變化趨勢進(jìn)行預(yù)測。
下面是4月4日——5月1日的網(wǎng)站直接流量會話數(shù)據(jù),我們在表格的周索引列中單獨(dú)標(biāo)明了工作日(weekday)和休息日(weekend)用以說明會話所屬的類別??梢钥闯鲈谶@組數(shù)據(jù)中存在著明顯的周末趨勢,周末的會話數(shù)據(jù)要明顯低于工作日的會話數(shù)據(jù)。
使用時間序列對數(shù)據(jù)進(jìn)行分析和預(yù)測的第一步是觀察數(shù)據(jù)的形態(tài),因此我們將會話數(shù)據(jù)繪制到折線圖中觀察變化趨勢。從直接流量變化趨勢圖上可以看出整體趨勢較為平穩(wěn),沒有明顯的增長或下降。同時也能更明顯的看出會話數(shù)據(jù)共分為4周,并且每一周都有明顯的周末趨勢。工作日每天的會話量在300—400之間,周末的會話量則為200以下,兩者之間差距較大。如何對這兩個差距較大的數(shù)據(jù)進(jìn)行預(yù)測?我們使用一元線性回歸的方法,一元線性回歸可以反映一個因變量(Y)與一個自變量(X)之間的線性關(guān)系。對應(yīng)到這里直接流量的會話就是因變量(Y),我們只需要再找到一個自變量(X)就可以建立一元回歸線性方程來預(yù)測直接流量的變化趨勢了。
從前面的趨勢圖中可以看出,直接流量整體趨勢比較平穩(wěn),只有在周末的時候才會出現(xiàn)較大的變化,造成周末數(shù)據(jù)與工作日數(shù)據(jù)的差異。因此造成直接流量變化的主要原因是所在日期的周屬性,當(dāng)所在日期為工作日(weekday)時,會話數(shù)據(jù)在300-400之間。而當(dāng)所在日期為周末(weekend)時,會話數(shù)據(jù)下降到200以下。我們將日期的周屬性設(shè)定為自變量(X),取名“周變量”,這個周變量(X)共有兩個取值,當(dāng)日期為工作日時,取值為0,當(dāng)日期為休息日時,取值為1。
設(shè)置好周變量后,我們在直接流量的源數(shù)據(jù)表中增加一列“周變量”,并按日期的周屬性輸入“周變量”的值。Weekday=0,weekend=1。現(xiàn)在我們有了因變量(Y)和自變量(X),可以使用一元線性回歸建立方程求兩者之間的關(guān)系。
通過Excel中的回歸分析功能,將會話作為因變量(Y)輸入,將“周變量”(X)作為自變量輸入,我們獲得了以下分析結(jié)果。在這個結(jié)果中,我們主要關(guān)注“周變量”的系數(shù)和截距(Intercept),通過這兩個值可以建立“周變量”與會話的一元線性回歸方程。
這是一元線性回歸方程,我們將前面的分析結(jié)果代入到這個方程中,就可以計算出直接流量的值。其中y是直接流量的會話值,x是“周變量”的取值,a是“周變量”系數(shù),b是截距。
前面說過,“周變量”有兩個取值,工作日為0,休息日為1。因此在對直接流量進(jìn)行預(yù)測時我們也分別按照日期的周屬性取值來計算工作日和休息日的直接流量會話值,以下為兩個取值的計算公式。
通過一元線性回歸方程我們獲得了直接流量在工作日和休息日的會話預(yù)測值,每天具體實際數(shù)據(jù)和預(yù)測數(shù)據(jù)展現(xiàn)在下面表格中。
將直接流量實際的會話數(shù)據(jù)與預(yù)測數(shù)據(jù)繪制成折線圖進(jìn)行對比,在較為平穩(wěn)的趨勢中預(yù)測數(shù)據(jù)較好的模擬并預(yù)測了直接流量中工作日和休息日的數(shù)據(jù)變化。
以上是一種較為簡單且理想化的流量變化情況。實際工作中情況會更加復(fù)雜,直接流量除了自身的規(guī)律以外,還會受到外部因素的影響,呈現(xiàn)上升或下降的趨勢。這時候,直接流量的整體趨勢不再平穩(wěn),并且還同時摻雜自身的周末趨勢。這種情況下如何對直接流量進(jìn)行分析和預(yù)測呢?
下面是4月4日——5月1日的直接流量會話數(shù)據(jù),由于有周末趨勢存在我們同樣增加了周索引列來標(biāo)識會話所屬日期的周屬性。
第一步將直接流量的會話數(shù)據(jù)匯總折線圖觀察流量的形態(tài)。直接流量除了自身的周末趨勢以外,還有一個明顯的上漲趨勢。我們在進(jìn)行分析和預(yù)測時要兼顧直接流量的周末趨勢和上漲趨勢。這里一元線性回歸已經(jīng)無法滿足我們的需求了,需要使用多元線性回歸。多元線性回歸是一元線性回歸的升級版,可以反應(yīng)一個因變量(Y)與多個自變量(X)之間的關(guān)系。這里直接流量的會話數(shù)據(jù)是我們要求的因變量(Y),周末趨勢是一個自變量(X),另一個自變量(X)就是直接流量的增長趨勢。
我們首先在直接流量的原始數(shù)據(jù)中增加兩個字段作為兩個自變量X。第一個字段是周變量,設(shè)置的方法和取值范圍與前面例子中介紹的完全一致。第二個字段是趨勢變量,用來描述直接流量的增長趨勢。在前面的折線圖中已經(jīng)看到直接流量呈線性增長,因此我們使用從1到28作為趨勢變量中每一天的取值。現(xiàn)在我們有了因變量(Y)和兩個自變量(X),可以通過建立多元線性回歸方程來計算并預(yù)測直接流量的會話值了。
使用Excel中的回歸功能,將會話作為因變量(Y)輸入,將趨勢變量和周變量作為自變量(X)輸入,獲得以下分析結(jié)果。在這個結(jié)果中我們主要關(guān)注三個值,截距(Intercept),趨勢變量系數(shù)和周變量系數(shù)。
這是多元線性回歸方程,我們將前面的分析結(jié)果代入到這個方程中,就可以獲得直接流量的值。其中y是直接流量的會話值,x1是趨勢變量,x2是周變量,b1是趨勢變量系數(shù),b2是周變量系數(shù),a是截距。
通過多元線性回歸方程我們獲得了直接流量的預(yù)測值,每天的實際數(shù)據(jù)和預(yù)測數(shù)據(jù)展現(xiàn)在下面表格中。
將直接流量實際的會話數(shù)據(jù)與預(yù)測數(shù)據(jù)繪制成折線圖進(jìn)行對比,通過多元線性回歸預(yù)測數(shù)據(jù)同時兼顧了直接流量中的周末趨勢和整體的增長趨勢。如果流量中還包括有其他影響因素只需通過繪制折線圖觀察影響因素的變化趨勢和規(guī)律,然后增加相應(yīng)的自變量(X)即可。
通過時間序列我們對直接流量的增長趨勢進(jìn)行了預(yù)測,很多時候除了知道趨勢以外我們還希望對流量進(jìn)行分解,了解影響流量變化的因素,這些因素在變化中所起的作用以及消除影響因素后流量真實的變化情況。我們使用時間序列對直接流量進(jìn)行分解。下面是直接流量在最近4周時間的會話數(shù)據(jù)。
直接流量的變化可能受多個因素影響。例如前面的例子中,直接流量自身有明顯的周末趨勢,同時,受外部因素影響還有明顯的增長趨勢,此外可能還有一部分難以解釋的隨機(jī)波動因素。因此,我們將直接流量分為三個主要部分,分別為趨勢值,周因素和隨機(jī)波動。并對直接流量按這三部分進(jìn)行分解。以下是時間序列乘法分解模型。這里需要說明的是,除了趨勢值以外,周因素和隨機(jī)波動將被分解為相對度量。數(shù)值大于1表示他們的影響在趨勢值之上,數(shù)值小于1表示他們的影響在趨勢值以下。
直接流量有明顯的周末趨勢,因此首先我們通過移動平均來消除直接流量中的周末趨勢。由于周末趨勢的變化是以周為單位的,因此我們選擇7天的數(shù)據(jù)進(jìn)行移動平均計算。下面是移動平均的計算公式。
我們按照移動平均公式對直接流量消除周末趨勢,只保留直接流量的趨勢值。以下是移動平均的計算結(jié)果。
移動平均通過對7天數(shù)據(jù)的平均對直接流量進(jìn)行了平滑處理,消除了周末趨勢及隨機(jī)波動的影響,獲得了直接流量的趨勢值。下圖是直接流量的實際值與趨勢值的對比。
獲得直接流量趨勢值后,我們可以通過時間序列乘法分解模型獲得周因素和隨機(jī)波動的相對度量。將時間序列乘法分解模型兩邊同時除以趨勢值,可以獲得周因素和隨機(jī)波動的組合度量。
分別將每一天的直接流量會話實際值除以移動平均后的趨勢值,獲得了周因素和隨機(jī)波動的組合度量值。下表中匯總了整個時間段的周因素和隨機(jī)波動的組合度量。
我們根據(jù)每一天的周因素和隨機(jī)波動組合度量值計算出周指數(shù),方法是將上表星期索引中同一天的值進(jìn)行平均。下表是直接流量一周的指數(shù)值。其中大于1表示周因素的影響在趨勢值之上,小于1表示周因素的影響在趨勢值之下。從下表中可以明顯看出,周一到周五周因素的影響都要大于趨勢,而周末兩天周因素的影響小于趨勢。
將周指數(shù)還原到每一天中,獲得直接流量每一天會話的星期指數(shù)。使用實際會話值除以星期指數(shù)獲得直接流量消除星期因素的會話量數(shù)據(jù)。也就是直接流量排除周末因素影響后的變化趨勢。
將消除周末趨勢后的直接流量變化趨勢繪制到折線圖上,使用趨勢線來擬合消除周因素影響的直接流量與時間周期。到目前為止我們分解出了直接流量中排除周因素和隨機(jī)波動的會話值,排除周因素的會話值以及周因素對于趨勢值的影響。下面我們將使用排除周因素的會話值對直接流量進(jìn)行預(yù)測,并與周因素進(jìn)行整合,預(yù)測出帶有周因素的直接流量變化趨勢。
我們將消除周因素后的直接流量會話值作為因變量(Y),將時間作為自變量(X),通過一元線性回歸來描述會話值與時間的關(guān)系。將因變量(Y)與自變量(X)輸入到回歸分析中,獲得以下結(jié)果。其中星期ID是時間X的系數(shù),Intercept是截距。
將回歸分析的結(jié)果導(dǎo)入到一元線性回歸方程,計算出排除周因素的直接流量預(yù)測值。下表中顯示了消除周末因素的直接預(yù)測值的計算結(jié)果。
將消除周末因素的預(yù)測值乘以星期指數(shù),計算出直接流量實際值的預(yù)測趨勢,下表中顯示了計算結(jié)果和預(yù)測值。
將直接流量的實際值與增加周因素的預(yù)測值繪制到折線圖中,由于我們是先剝離出了直接流量的趨勢值,然后在趨勢值和隨機(jī)波動值上增加的周因素,因此預(yù)測值同時兼顧了直接流量的增長趨勢和周末趨勢。文章開始部分的預(yù)測相比,更加符合直接流量的真實變化趨勢。
本篇文章的名字是使用時間序列預(yù)測網(wǎng)站流量增長趨勢,但整篇文章只介紹了對直接流量的預(yù)測。其實這些方法適用于任何一種流量渠道,找到這些流量渠道的規(guī)律和影響因素就可以套用本文中的方法對流量趨勢進(jìn)行分解和預(yù)測。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
LSTM 模型輸入長度選擇技巧:提升序列建模效能的關(guān)鍵? 在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)家族中,長短期記憶網(wǎng)絡(luò)(LSTM)憑借其解決長序列 ...
2025-07-11CDA 數(shù)據(jù)分析師報考條件詳解與準(zhǔn)備指南? ? 在數(shù)據(jù)驅(qū)動決策的時代浪潮下,CDA 數(shù)據(jù)分析師認(rèn)證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據(jù)透視表中兩列相乘合計的實用指南? 在數(shù)據(jù)分析的日常工作中,數(shù)據(jù)透視表憑借其強(qiáng)大的數(shù)據(jù)匯總和分析功能,成為了 Excel 用戶 ...
2025-07-11尊敬的考生: 您好! 我們誠摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實施重大更新。 此次更新旨在確保認(rèn) ...
2025-07-10BI 大數(shù)據(jù)分析師:連接數(shù)據(jù)與業(yè)務(wù)的價值轉(zhuǎn)化者? ? 在大數(shù)據(jù)與商業(yè)智能(Business Intelligence,簡稱 BI)深度融合的時代,BI ...
2025-07-10SQL 在預(yù)測分析中的應(yīng)用:從數(shù)據(jù)查詢到趨勢預(yù)判? ? 在數(shù)據(jù)驅(qū)動決策的時代,預(yù)測分析作為挖掘數(shù)據(jù)潛在價值的核心手段,正被廣泛 ...
2025-07-10數(shù)據(jù)查詢結(jié)束后:分析師的收尾工作與價值深化? ? 在數(shù)據(jù)分析的全流程中,“query end”(查詢結(jié)束)并非工作的終點,而是將數(shù) ...
2025-07-10CDA 數(shù)據(jù)分析師考試:從報考到取證的全攻略? 在數(shù)字經(jīng)濟(jì)蓬勃發(fā)展的今天,數(shù)據(jù)分析師已成為各行業(yè)爭搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢性檢驗:捕捉數(shù)據(jù)背后的時間軌跡? 在數(shù)據(jù)分析的版圖中,單樣本趨勢性檢驗如同一位耐心的偵探,專注于從單 ...
2025-07-09year_month數(shù)據(jù)類型:時間維度的精準(zhǔn)切片? ? 在數(shù)據(jù)的世界里,時間是最不可或缺的維度之一,而year_month數(shù)據(jù)類型就像一把精準(zhǔn) ...
2025-07-09CDA 備考干貨:Python 在數(shù)據(jù)分析中的核心應(yīng)用與實戰(zhàn)技巧? ? 在 CDA 數(shù)據(jù)分析師認(rèn)證考試中,Python 作為數(shù)據(jù)處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗:數(shù)據(jù)趨勢與突變分析的有力工具? ? ? 在數(shù)據(jù)分析的廣袤領(lǐng)域中,準(zhǔn)確捕捉數(shù)據(jù)的趨勢變化以及識別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據(jù)分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據(jù)分析師認(rèn)證作為國內(nèi)權(quán)威的數(shù)據(jù)分析能力認(rèn)證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應(yīng)對策略? 長短期記憶網(wǎng)絡(luò)(LSTM)作為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的一種變體,憑借獨(dú)特的門控機(jī)制,在 ...
2025-07-07統(tǒng)計學(xué)方法在市場調(diào)研數(shù)據(jù)中的深度應(yīng)用? 市場調(diào)研是企業(yè)洞察市場動態(tài)、了解消費(fèi)者需求的重要途徑,而統(tǒng)計學(xué)方法則是市場調(diào)研數(shù) ...
2025-07-07CDA數(shù)據(jù)分析師證書考試全攻略? 在數(shù)字化浪潮席卷全球的當(dāng)下,數(shù)據(jù)已成為企業(yè)決策、行業(yè)發(fā)展的核心驅(qū)動力,數(shù)據(jù)分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據(jù)分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據(jù)分析師考試作為衡量數(shù)據(jù)專業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉(zhuǎn)日期:解鎖數(shù)據(jù)處理的關(guān)鍵技能? 在數(shù)據(jù)處理與分析工作中,數(shù)據(jù)格式的規(guī)范性是保證后續(xù)分析準(zhǔn)確性的基礎(chǔ) ...
2025-07-04CDA 數(shù)據(jù)分析師視角:從數(shù)據(jù)迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據(jù)已成為企業(yè)決策的核心驅(qū)動力,CDA(Certifie ...
2025-07-04CDA 數(shù)據(jù)分析師:開啟數(shù)據(jù)職業(yè)發(fā)展新征程? ? 在數(shù)據(jù)成為核心生產(chǎn)要素的今天,數(shù)據(jù)分析師的職業(yè)價值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03