預測的方法

2021-02-16 dataxon

中文「預測」的含義在「英語」情境下則有兩種含義:

evaluate & forecast

關於 evaluate

「估算」常見有兩種情況:

基於關聯原則來類推,簡稱「類推法」,也就是先歸類,然後推導。比如格子衫、發量少、戴眼鏡、男性、程式設計師這幾個特徵是高度關聯的,知道「格子衫」和「發量少」就能推斷出此人職業很可能是「程式設計師」;

基於目標數據和已知數據存在「函數關係」,簡稱「函數法」或者「公式法」,即Y=f(X),基於函數規則就能計算得到目標數據Y。比如評估某次產品運營活動對交易產生的影響量(Y),那麼對應需要考慮的X可能包含活動覆蓋的人群屬性、人群數量、活動方式、優惠力度等;

類推法

類推法可以分為兩種:

相似個體類推

如上圖所示,假如現在我們要想估算主體B的屬性③的數值(橙色標記目標數據),那麼我們可以找到和B類似(AB在屬性②、④上相似)且同時具有屬性③的主體A,如果主體A的屬性③是已知的,那麼該數值可以當做主體B屬性③的估算值,如果可以匹配的已知相似屬性更多,得到的值一般更精確。

e.g. 要推算京東在微信端交易訂單量佔整體交易量的佔比,可以借鑑唯品會的數據。首先唯品會和京東的業務模式具有較高的相似性——都是電商平臺(雖然主要品類結構不一樣),主要交易端都是App\PC\Weixin這3個,唯品會和京東都在微信上都有「錢包入口」,整體上覆蓋的人群結構也差不多——現在知道了唯品會微信上交易量的佔比(數據已經相對穩定),那麼該數值可以作為預估京東數據的參考值基準。

註:因為京東在「發現」頁還有入口,而且唯品會和京東的交易量級以及品類結構上存在差異,所以數據還需要進一步調整。

歸屬群體類推

如上圖右圖,基於背景知識,我們知道要推算的個體X歸屬於某個群體,那麼可以用該群體的屬性來推斷X的對應屬性。

e.g. 我們到野外偶遇一隻不知所名的動物(未知的X),發現此動物尖牙利爪長尾巴(已知屬性),這和我們平時見到的貓科動物(歸屬的群體)特徵很匹配,我們知道貓科動物大多數是吃肉的,那麼可以推斷該動物也很可能不是吃素的(肉食動物)。

確定相似性可以參考的特徵:

函數法

目標數據和已知數據存在「函數關係」,即Y=f(X),基於函數規則就能計算得到目標數據Y。

常見的兩種函數或者公式如下:

連乘公式,常見於存在轉化率或集合包含關係的情況

加權公式,常見於存在多個成分或分類的情況

使用函數法需要明確目標數據的函數表達式,以及需要知道函數表達式中各變量的數值。

函數法中,因變量Y和自變量X的具有高相關性。

使用函數法進行估算的案例,可以參考前文從一道面試題談數據推算方法。

在該案例中,估算目標用戶群數量時用的就是連乘公式。

該城市總人口1000W,設符合用車條件的人群(16-60)佔比為60%(這個數據也可以到國家人口普查數據上找);設上述人群中有網際網路產品使用經驗的比例為60%(可以查下中國網際網路普及率);設有短距離出行需求的人數比例為15%(大多數時候選擇的交通工具是地鐵、公交、自駕);設該公司在該城市的市場份額為30%(假設要和ofo、摩拜3分天下,這裡的30%是假設只有3家投放單車時的值),基於以上假設可以得到目標用戶數為:1000W*60%*60%*15%*30% ≈ 16W人

e.g. 假設現在需要預估一次運營活動帶來的交易量,那麼可以先對交易量「細分」,看看活動覆蓋哪些人群、覆蓋哪些埠、不同人群或埠的交易轉化率(可以參考歷史數據或業務經驗)等,把每個細分人群細分埠的交易計算出來,再進行加總即可。

關於 forecast

基於時間序列的趨勢預測,是基於歷史數據預測未來發生的事件。

e.g. 進行年度KPI預測的時候,可以擬合曆年的實際交易數據——一般業務過了成熟期,就能看到比較明顯的S曲線(sigmoid curve)——基於擬合的曲線就能大致預測出下一年的交易量了。這個預測值可以作為基準,還要考慮業務上新的變化對數據進行調整,比如產品功能改變、人群定位變化等、渠道入口發生改變等。

e.g. 交易預估流程(先用線性回歸預測2018年度的總交易,然後拆分到季度)

註:此處交易是有明顯的季節性變化趨勢的。

註:該案例也可以Holt-Winters法來操作,把Residual的部分區分出來。

時間序列可以分解(decomposition)為4部分:

參考:https://en.wikipedia.org/wiki/Decomposition_of_time_series

長期趨勢(Trend),比如持續的增長或者降低,這種趨勢可能是線性也可能是非線性的(比如S型曲線);

季節變化(Seasonal),通常是一年時間內的周期波動(可能季度、月度或者周等不同時間顆粒度),季節變化通常是因為受到人們活動的周期性的影響而出現的。比如:①人行為上的周期性,e.g.一天的作息、一年4季的購衣需求、不同年齡階段的行為模式等;②周期性的社會活動,e.g.節假日、定期行業集會等;③商業業務的周期性,e.g.唯品會的早10晚8上新、公眾號通常在上班前或者下班後發布消息等;

發展周期(Cycle),不同於季節變化,發展周期的時間跨度更長(通常是兩年以上),而且和事物的生命周期有關(比如產品的生命周期等);

隨機噪聲(Reminder,或Residual),不能歸於以上3類的部分被稱為不規則剩餘(Irregular Remainder),可以看做是時間序列數據中的隨機成分;

舉個例子,原始時間序列如下圖所示:

數據源:https://raw.githubusercontent.com/jbrownlee/Datasets/master/airline-passengers.csv

可以分解為3部分(此處不考慮「發展周期」因素):

註:此處採用Holt-Winters』 additive method來分解,調用函數為statsmodels.tsa.seasonal.seasonal_decompose

時間序列預測的流程可以參考下圖

來源:http://people.duke.edu/~rnau/411fcst.htm

對於數據轉化和預測方法的選擇可以參考

https://otexts.com/fpp2/transformations.html

https://hbr.org/1971/07/how-to-choose-the-right-forecasting-technique

Selecting Forecasting Methods, J. Scott Armstrong

時間序列預測常見方法:

回歸模型對於歷史數據進行擬合(可能是線性也可能是非線性),線性的情況意味著長期的變化趨勢基本一致(平穩增長或者平穩下降),非線性的情況則說明變化的速度不穩定(比如生長曲線);

ARIMA模型,差分自回歸移動平均模型(Autoregressive integrated moving average),ARIMA由自回歸模型、移動平均模型和差分法結合而來;

更多參考https://otexts.com/fpp2/arima.html

https://en.wikipedia.org/wiki/Autoregressive_integrated_moving_average

Holt Winters'方法,也被稱之為季節分解法,將原始時間序列分為level(基線)、trend(變化趨勢)、season(季節性波動)3部分;

更多參考https://otexts.com/fpp2/holt-winters.html

移動平均法(Moving Average),通常用於時間序列比較平穩的情況(stationary);

指數平滑法(Exponential Smoothing),對於參與預測的時間周期進行加權,可以看做是加權版的移動平均法;

關於時間序列預測的實操(Python)可以參考:

基於時間序列的趨勢預測時,需要注意:

要有完成的觀測周期,小心「黑天鵝」現象——火雞觀測了1000天沒有被吃掉,不能代表第1001天依然好運,所以完整的觀測周期很重要;

數據的周期長短要視具體的業務場景,比如可能考察產品的周期性,也可能是某個用戶群等,不同的場景的時間顆粒度也不一樣;

發展趨勢中需要區分自然因素和「人工」因素,自然因素是不可控的(比如PEST等外部因素的影響),「人工」因素是可控的,在進行預測時最好將不可控的隨機成分和可控的穩定成分區分開;

業務發展的預測要考慮市場環境以及產品生命周期,有可能這個市場本身就在縮小,或者產品已經經歷了成熟期;

注意觀測期和預測期是否會出現一些大的變化,比如產品的功能、業務覆蓋的人群、外部市場環境等,對預測指標影響較大的因素出現時,那麼觀測期的數據和預測期的數據大概率不能「同日而語」,需要進行較大的調整;

其他注意事項可以參考:http://people.duke.edu/~rnau/notroubl.htm

參考資料:

活用數據,驅動業務的數據分析實戰,陳哲,8.3.1

http://people.duke.edu/~rnau/411home.htm

Forecasting: Principles and Practice,https://otexts.com/fpp2/

http://ucanalytics.com/blogs/forecasting-time-series-analysis-manufacturing-case-study-example-part-1/

https://corporatefinanceinstitute.com/resources/knowledge/modeling/forecasting-methods/

http://www.forexabode.com/forex-school/technical-indicators/moving-averages/which-moving-averages-of-what-time-frames-are-best/

相關焦點

  • 政治科學預測方法研究 ——以選舉預測為例
    預測是人類的基本認知活動。作為社會科學預測性研究的重要領域,選舉預測是促進政治學理論和方法創新的動力。選舉預測不僅限於民調,科學的選舉預測可以劃分為四類範式: 意見聚合範式; 模型範式; 混合範式; 大數據範式。每類範式包含若干種預測方法,不同預測方法在準確性、超前性、解釋力、可重複性、中立性和預測成本等評判標準上各具優勢,預測方法的選擇是基於預測目標和應用場景的綜合權衡。
  • 【選舉預測】王中原 唐世平:政治科學預測方法研究——以選舉預測為例
    每類範式包含若干種預測方法,不同預測方法在準確性、超前性、解釋力、可重複性、中立性和預測成本等評判標準上各具優勢,預測方法的選擇是基於預測目標和應用場景的綜合權衡。經過八十多年發展,選舉預測形成了一系列科學量化的預測方法,並隨著計算社會科學的興起呈現出新的創新態勢。選舉預測方法不僅限於民調,本文將選舉預測的科學方法劃分為四大類:意見聚合範式(Aggregators);模型範式(Models);混合範式(Synthesizers);大數據範式(BigData)。每一類範式下又可細分出不同的預測方法,每種方法都各具比較優勢,也面臨不同的問題和挑戰。
  • 銷售預測6大方法
    銷售預測對企業的銷售具有重要的指導意義。美、日等國企業都專門投資進行預測。預測常見方法有:(1)意見收集法收集某方面對某問題的看法,加以分析作為預測。此法主觀性較大。1高級主管的意見:這種方法首先由高級主管根據國內外經濟動向和整個市場的大小加以預測。然後估計企業的產品在整個市場中的佔有率。2推銷員、代理商與經銷商的意見。由於這些人員最接近顧客,所以此種預測是很接近市場狀況,更由於方法的簡單,不需具備有熟練的技術,所以也是中小企業樂意採用的方法之一。
  • 時間序列預測方法總結
    兩類平滑方法:以滑動平均作為平滑方法提取趨勢的seasonal_decompose樸素分解。在天池競賽-資金流入流出預測-挑戰Baseline-天池大賽-阿里雲天池,時間序列分解方法也能取得很好的成績。(後面有機會試試這種方法)5. 特徵工程著手,時間滑窗改變數據的組織方式,使用xgboost/LSTM模型/時間卷積網絡等。
  • 風電功率預測方法和準確性提升方案
    風速和風功率預測的分類和方法1 風速預測方法風電場功率預測的準確度是由多個因素所決定的,其中風速預測的精度是個關鍵的條件,風速預測對風電功率預測起到決定性的作用,對風電場和電力系統的運行有著重要意義。3 風電功率預測方法風功率預測方法可以分為:一種方法是根據數值天氣預報的數據,用物理方法計算風電場的輸出功率;另一種方法是根據數值天氣預報與風電場功率輸出的關係、在線實測的數據進行預測的統計方法。綜合方法則是指物理方法和統計方法都採用的方法。
  • 六爻八卦預測準嗎?詳解六爻八卦預測方法
    六爻又稱六爻八卦預測,是中國傳統佔卜方法的一種,和八字等同論。那麼六爻八卦預測準嗎?下面帝神小編就教大家六爻八卦預測方法,感興趣的小夥伴快來看看吧! 六爻是民間流傳最廣的預測方法之一,其變化有梅花易數,觀音神課,以及文王六十四卦的斷法。相對於正宗的六爻斷法又要簡單許多。 【六爻詳解】 六爻是中國傳統佔卜方法的一種,往往和八字等同論。
  • LIME:一種解釋模型預測的方法
    回復「朝陽35處」可查看「說人話的大數據徵信」系列合輯模型的準確性和可解釋性是商業應用的關鍵,本文介紹一種解釋模型判別規則的方法儘管許多機器學習模型都是黑箱,理解模型預測背後的基本原理將肯定有助於用戶決定什麼時候可以信任或不可以信任它們的預測。如圖 1 給出的例子所示,一個模型預測一位特定病人患有流感。然後該預測被一個解釋器(explainer)解讀,其突出強調了對模型來說最重要的症狀。使用這些關於模型背後的基本原理信息,醫生現在就有能力選擇信任或不信任這個模型了。
  • 為什麼要給孩子預測身高?預測身高有哪幾個方法?
    但到底有幾種身高預測的方法,哪種方法最準確,家長不一定知道~男孩身高=[父親身高+母親身高+13]/2±5cm女孩身高=[父親身高+母親身高-13]/2±5cm這是目前較為常用的遺傳身高計算法,通過這個公式計算出來的身高是基於父母身高的遺傳身高。
  • 數模中預測類方法偏AI的走向
    在之前的數模競賽中,即便是美賽O獎的作品中,我們都能看到諸如灰色預測這樣的用MATLAB實現的方法,實際上我們有時間序列,回歸等一系列比較常用的預測方法。
  • 周易預測學起卦的基本方法大全!
    一、 周易預測起卦的基本方法 就是以年 月 日數之和除以8,餘數為上卦,以年 月 日 時數之和除以8,餘數為下卦,以年 月 日 時數之和除以6,餘數取動爻。
  • 【研究】畜禽糞便主要汙染物產生量預測方法
    通過綜述近幾年國內外關於畜禽糞便主要汙染物產生量預測方法的研究進展,分別對產汙係數法和數學模型法進行了歸納,重點討論了各預測方法的主要特點、預測精度及適用範圍,提出了今後我國畜禽糞便主要汙染物產生量預測方法需要加強的幾方面內容。關鍵詞:畜禽糞便;主要汙染物;產汙係數;數學模型
  • 謝國彤:疾病預測的機器學習、深度學習和經典回歸方法
    疾病預測的主要方法疾病預測的主要方法可以簡單的分為經典回歸方法、機器學習方法和深度學習方法三大類。下面分別用三篇論文舉例介紹一下。基於經典回歸方法的疾病預測傳統的疾病風險預測主要基於 Cox 比例風險回歸模型(簡稱 Cox 模型)及邏輯回歸模型。
  • 當前宏觀數據預測分析的技術方法探討
    本篇聚焦中我們側重從技術方法的角度探討這些問題,比較好的評估方法可能是「環比推同比」的算法。通過一些技術分析,我們認為,經濟動能向上仍會持續,但四季度也不太可能出現過高的GDP增速;從明年一季度開始,需要剔除基數效應看待經濟增速,採取兩年平均的算法,基本可以判斷明年我國經濟將恢復至潛在水平附近。
  • 用Excel軟體做銷售預測的三種方法
    營長說在編寫業務經營計劃和預算時,重點是進行銷售的預測。預測往往要以歷史數據為依據,分析銷售業務的未來趨勢。使用Excel軟體可以進行初步預測,這裡介紹函數預測、圖表預測和預測工作表三種方法。01函數預測法在做預測時最常用的方法就是線性預測法,即將歷史數據擬合成一條直線,根據直線的走向來預測未來數值。可以根據歷史數據對未來銷售額、庫存需求或消費趨勢進行預測。
  • 高能:4種身高預測方法,5種長高的方法、影響因素
    有特別的方法嗎?你看我家寶寶能長多高?我的個子矮,寶寶長大有逆襲的可能嗎?等等。先說說大家比較感興趣的話題吧:身高預測!總的來說,目前總共有這麼四種主流的預測方法,很有意思,大家動腦算一算寶寶的未來身高吧。
  • 港中文、上交大、商湯聯合提出兩種軌跡預測新方法
    本次分享兩篇軌跡預測相關 CVPR 2020poster 論文: 基於候選軌跡的軌跡預測方法(TPNet: Trajectory如何對不同意圖進行建模,使預測方法能夠生成較為完善的預測結果是軌跡預測任務較為關注的一點。 預測結果可解釋、可靠: 交通參與者一般會受到各種交通規則的約束,如何利用這些規則輸出安全可靠的預測結果對於自動駕駛系統而言至關重要。
  • 更年期年齡可以預測? 女人要懂得這些方法
    下面小編為大家介紹一些預測方法。更年期年齡可以預測?女人要懂得這些方法1、通過家族遺傳進行預測:由於進入更年期的年齡和遺傳有一定的關係,因此,女性的母親、姐姐出現更年期的年齡可以作為自己的預測參考,當然,受後天生活條件、氣候、環境、社會因素、疾病等的影響,更年期也會比家人提前或推後。
  • 犯罪時間序列預測分析方法研究 — 以 CrimeStat 軟體為例
    用系統的、科學的 數據分析方法對犯罪情報做大數據分析是目前警務 所需要的思維方式的變革。而就犯罪數據分析的直 接目的來說,除了掌握犯罪情報以外,更重要的是追 求對犯罪趨勢的預測。其中犯罪預測的方法一般分 為經驗預測法和科學預測法[4]。在應用中,數據分 析人員需要結合實際減少預測方法產生的誤差,利 用統計方法處理犯罪數據儼然是一大趨勢。
  • 交通預測方法初識:從長短期記憶神經網絡(LSTM NN)學起
    最近,正好需要處理時間序列的數據,就開始尋找合適的預測方法。查閱一些資料後,發現了一種方法比較適用於時間序列預測.這周天氣多變,加之首都部分地區疫情反彈,讓逐漸平靜的心情又波瀾起來。所以,親愛的讀者朋友,一定要注意好防護。
  • 《足球》軟體已經漸入佳境 多種預測方法期期中獎
    《足球》實時資訊分析系統包含十幾種高效足彩預測公式,六十家歐洲賠率四次變化及分歧指數,澳門盤口實時變化等,分析預測幾乎期期中獎!  上期03034期足彩總共獲得獎項:一等獎1注,二等獎22注,三等獎210注!