天天看點

輕輕一按就能預測未來?資料科學迎來自動化

全文共2860字,預計學習時長5分鐘

輕輕一按就能預測未來?資料科學迎來自動化

未來預測平台的使用者隻需輕輕一按,就會獲得需要的預測結果。使用者隻需要輸入曆史資料和預測範圍。曆史資料可以是CVS格式,也可以是一條查詢連結。你想預測多遠呢?資料之下便是答案。

Uber資料科學總監弗蘭基斯卡·貝爾(Franziska Bell)

預測真的可以商品化到這種程度嗎?Uber并不是第一個吃螃蟹的人,微軟、谷歌還有亞馬遜也開始為其客戶提供更多“拖放式(即抓取對象以後拖到另一個位置)”的機器學習方案。

Bell的話能得出兩種完全不一樣的結論:其一,Uber的預測平台已非常先進;其二,他們認為預測帶來的挑戰無足輕重。下面我們也來“預測”一下兩種結論分别帶來可能吧:

Uber的預測平台已非常先進——Uber如何在隻需要目标變量曆史資料的條件下,輕松産生預測呢?

1. 擷取資料,确定是否需要包含其他特征,并明确這批資料之間是否有一定的特征。在這個過程中,特别是目标對象十分複雜的時候,需要外生變量來幫助構模組化型。Uber不僅需在生成資料之前就已經收集所有的資料,還需了解這些資料中包括哪些特征,以及如何轉化它們。

2. 需比較不同的預測算法(線性回歸、随機森林還有神經網絡等),同時還為每種算法選擇最佳超參數。

3. 需對預測結果進行反向測試(當從樣本中取出模型時,反向測試可以減少模型爆炸的風險),Uber需要跟使用者說明模型所基于的假設以及導緻故障的原因。

這麼多的假設依然未實作,如果平台能夠将它們一一實作,确實值得表揚。

如果uber認為預測無足輕重,那又會有什麼結果呢?——反對者認為預測平台隻是一個ARIMA模型或長短時記憶模型,僅可根據目标過去的觀測資料來預測未來,應用範圍不廣泛。

倘若将目标變量的滞後作為特征的話,反而會忽略了關鍵的外生關系,這樣會使得模型極其不比對,表現也不理想。

輕輕一按就能預測未來?資料科學迎來自動化

保持懷疑态度

我們對Uber“預測即服務”的目标表示懷疑。Uber允許其員工使用預先建構好的模型來預測某些關鍵業務名額的需求,而且該公司的資料科學團隊已深度研究完善過這批模型。但這個目标與弗蘭基斯卡·貝爾的想法還是有點距離。貝爾似乎是想按下按鈕,就可以預測所有的事情。

這個想法不容易,可以說幾乎不可能實作。下面我們将仔細推敲預測過程的每一步,看看自動化的對象究竟是什麼。

首先要明确——預測的對象是什麼?

如果沒有問題需要解決,那麼構模組化型進行預測的意義就不大了。是以第一步需要做的便是——我的問題是什麼?預測什麼才可以更好地解決問題?

這個問題很難立馬回答。本文繼續以Uber為例——假設我們是Uber的分析師,要想預測明年舊金山市的Uber需求,隻給出過去Uber的需求資料,預測平台就可以憑此完成預測嗎?

可能不太行。“需求”指的是什麼呢?

可能是:

· 明年乘客的數量。

· 明年的總乘車次數,即乘客數×乘車次數。

· 明年乘車總費用,即乘客數×乘車次數×平均乘車價格。

預測對象模棱兩可,而且随着“需求”定義的深入,需要預測的變量也越來越多。

單單是乘客數這一個變量就與許多因素有關:

· 跟司機數量有關——司機的數目與乘客數目互相影響,司機越多,使用Uber的乘客也會也多(也就是網絡效應)。

· 競争形式(Lyft、計程車、滑闆車等)随時間流逝而變化,接下來的變量就包括競争者數量,以及他們的營銷政策和價格政策等。

這個本來看起來很簡單的問題最終變得越來越複雜,更談不上自動化。綜上所述,合理的預測模型通常包括多個模型和預測結果。如果考慮的變量不夠多,模型将很快失效。但如果一次性使用太多的模型,最終隻會過于複雜,無法産出理想結果。

要搞清楚預測對象并不容易。經驗豐富的資料科學家在這個過程中十分重要,因為他們可以區厘清楚模型中每一部分,最終模型不會過于簡單,也不會過于複雜。

識别有意義的資料

确定需要預測的變量後,給所有模型集合畫一個簡潔的流程圖,這是不是就完事了呢?當然不是。首先需要确定是否已掌握所有需要的資料。在最理想的狀态下,所有資料都可用于模型中,分析師梳理資料完畢後,輸入到資料庫——但這種情況幾乎不可能存在。

确定預測對象後,則需要決定用于生成預測的候選特征集。但要拿到這些資料并不容易,通常是由資料科學家們确定擷取資料的途徑和方式。如果直接觀察難以實作,那麼可能需要其他的候選資料了。

這一步也很難實作自動化。如果一個公司的資料庫紛繁複雜,那麼就需要資料科學家靈活巧妙地摘選其中最有用的資料了。

建構預測——特征工程,選擇最佳算法

這可能是最容易自動化的一部分了。假設已成功獲得并處理好資料後(實際并沒有這麼簡單),下一步就是構模組化型了。

在挑選合适模型、準确設定資料的過程中,有經驗豐富的資料科學家或統計學家參與是十分重要的,但也可以采取一種強硬的自動化手段。

也許有人會說,并不需要逐一測試以得到最佳模型。XGboost和神經網絡原本訓練就已經十分充分,不會過度拟合,它們即可成為首選算法。

以上兩種算法均可有效使特征工程過程自動化。比方說,給定足夠多的神經元和神經層,神經網絡可以輕易捕獲特征和目标之間的非線性效應。這種情況下無需考慮日志檔案、特征成分以及特征之間的互動了。

當然,這種自動化也付出了一定的代價:解釋性低,也就是說,我們不知道是什麼推動了自動化。舉個例子,線上性回歸中,β系數A表示A特征中每增加一個機關将會給預測帶來一定影響;但在神經網絡中卻無法知道增加A特征是如何影響預測的。

在當下這個龐大而複雜的資料世界中,模型的解釋性似乎并不是必須的。但其實,一個更簡單、解釋性更強的模型并不會降低模型準确度,是以還是建議使用簡單模型。

輕輕一按就能預測未來?資料科學迎來自動化

預估模型崩潰的時間

如果每個人都有預測能力也會帶來難以預估的風險——過去沒有預測經驗的人并不了解,無效或過度拟合的模型很容易崩潰。

當我們看到定量精準度的預測時,會習慣性陷入一種虛假的安全感(我們堅信這些資料準确)。但經驗豐富的資料科學家則會質疑模型的假設,同時還會考慮模型表現不佳的情況。

解釋性較低的模型還有别的缺點——

如果不了解推動預測的關鍵關系,那麼就無法了解所處環境中這些關系何時會失效。

事實上,自動化的目标還是難以實作。但了解構模組化型生成預測的好處和風險的人總能在這個領域中有一席之地。

總結

所有的自動化結果都殊途同歸。是以,當資料科學和機器學習或多或少實作自動化時,千萬别感到太驚訝。相反,我們更應該關注還沒有實作自動化的部分,并為可預測的将來增添新的價值點。

· 了解業務發展的關鍵推動力量以及其他影響因素。

· 了解如何準确檢查和設計模型,使其既不太簡單也不會太複雜。

· 了解如何挖掘可用于建構資料科學模型的有用資料。

· 建構解釋性“合理”的模型。

· 預估判斷模型崩潰,預測結果出錯的時間和原因。

輕輕一按就能預測未來?資料科學迎來自動化

留言 點贊 發個朋友圈

我們一起分享AI學習與發展的幹貨

繼續閱讀