- Python預測分析與機器學習
- 王沁晨編著
- 1727字
- 2023-08-25 11:18:30
1.2 什么是預測分析
隨著計算力的發展,數據分析也被大規模運用到商業中。許多企業制訂以數據為中心的商業計劃,希望通過數據分析提高產品質量、用戶體驗和運作效率。企業的數據中心化程度可分為3個層次:描述性分析(descriptive analytics)、預測性分析(predictive analytics),以及處方性分析(prescriptive analytics)。3個層次的數據分析在企業中施展難度不同,隨之帶來的客觀價值也不同,如圖1.3所示。
描述性分析著重于描述過往數據。它常以文字匯報和統計圖表的形式出現,幫助決策者更加直觀地了解過往數據中隱藏的信息。描述性分析往往不需要AI的輔助,可以通過數據匯總和簡單的Python代碼完成。舉個假想的例子,一個零售企業的數據分析師可以整合每周各類物品本周售量,在周末時自動合成趨勢統計圖。周一早晨領導看到這一數據整合匯報時,可能會發現某類產品比過往多年的平均售量大幅提高或降低。例如方便面的售量,本應在開學季大幅提高,卻因近年來越來越多的大學生注重養生而沒有呈現往年同樣的趨勢。相反,開學一個月后生發產品的銷量穩步上升。這都會被描述性分析圖表直觀地展現出來,而負責分配庫存的領導可以根據這一信息做出更有效的庫存安排。

圖1.3 3個層次的商業分析
由此可見,描述性分析可以直觀、有效地總結近期歷史。在這個基礎上結合決策者的人為判斷,便可對未來做出更準確的展望。
通過這個例子我們也可以看出描述性分析的缺陷。第一,它只能對決策制訂起到有限的輔助效益,決策者可以更直觀地看到過往數據趨勢,但需要根據自己的判斷理解這一趨勢及趨勢對未來的影響;第二,很多時候,描述性分析發現的趨勢對計劃未來并無太大的作用。例如在假想的例子中,周一早晨領導發現上周方便面售量較往年大幅下降,而為上周準備的庫存早已發配到各地倉庫;生發產品的銷量大幅提高,但由于上周庫存不足已經錯過了一波商機,給我們的只是“后見之明”。
正是因為把控時間在商業決策中至關重要,企業大多追求運用已有的數據對未來事件做出預測。這也就是預測性分析的側重點:預判未來可能發生的事,從而給企業更充足的準備時間。一定程度上,它可以給決策者提供對未來事件的洞悉力。
你也許會提出這樣的疑問:通過描述性分析匯報,決策者是不是也可以對更遠的未來做出預測?
答案是確實如此。從某種程度上講,預測性分析與描述性分析本質相同。唯一的區別在于,對未來進行預測的是人工決策者,還是通過學習過往數據建立的機器模型。在假想的例子中,讓我們把時間調回到一個月前。同樣,描述性分析報表整合了上一周各類產品的銷量和周邊數據(如往年銷量、同類型產品銷量、替代類產品銷量等),直觀地展示給決策者。如果這時候決策者可以通過觀察一系列不同數據的報表找出這些數據中的關聯,然后判斷出一個月后方便面銷量會較往年下滑,那么在這個問題中確實不需要機器學習和預測分析,只需這樣一個天才決策者。然而現實是,周邊數據的關系往往錯綜復雜,甚至無法用常規的函數或邏輯表達,因此才研究出了各種可以運用這些關系做出預測的機器學習模型。
從這個例子中,我們也大概了解了預測分析的過程。首先,需要提出一個機器可以回答是與否,或一個具體數字的問題。例如,一個月后方便面的銷量會是多少?然后,需要收集我們認為起決定性作用的數據。這個階段我們需要收集盡可能多種類的數據,包括一些人為預測無法運用的數據,例如連續幾周的庫存量與去年同時間段的庫存量變換。擁有初步數據后就可以建立基礎模型,通過統計分析及模型效益判斷數據是否充足,是否需要進一步優化。在這一步中我們可以測試不同類型的模型、參數及數據之間的配合,以此將整個預測分析流程打包優化。
在預測性分析之上,還有一層處方性分析。處方性分析在預測性分析的結果上提供行動建議。處方性分析是對一系列決定可能導致的結果的預測。在某種程度上,處方性分析也屬于一種預測,只是定義問題的方式不同。例如,如果我們增加下個月方便面的庫存,對收益和擱置量的影響如何。處方性分析意圖在于提供先見之明,進一步輔助決策者采取收益更大的行動。
處方性分析的核心同樣是大量的數據和機器學習,只是其算法的輸入及輸出會根據問題定義的不同而大不相同,因此,本書將重點放在預測性分析上,通過相對更加具體、中心思想可轉移性更高的預測案例教讀者如何著手機器學習,用數據創造價值。
- 少兒人工智能趣味入門:Scratch 3.0動畫與游戲編程
- Unity 2020 By Example
- 企業級Java EE架構設計精深實踐
- Practical Internet of Things Security
- Scratch 3游戲與人工智能編程完全自學教程
- Hands-On Microservices with Kotlin
- Visual C++開發入行真功夫
- CoffeeScript Application Development Cookbook
- Go語言底層原理剖析
- MySQL程序員面試筆試寶典
- 并行編程方法與優化實踐
- 現代C:概念剖析和編程實踐
- 寫給大家看的Midjourney設計書
- Mastering OAuth 2.0
- C#程序設計基礎入門教程