你要避免這12個數據科學錯誤
至頂網CIO與應用頻道 05月21日 編譯:人工智慧、機器學習和分析不僅僅是最新的流行語;大大小小的企業組織都在關注人工智慧工具和服務,希望通過大數據、預測分析和自動演算法系統改善業務流程、客戶支持和決策制定。據IDC預測,到2018年將有75%的企業和ISV開發人員將在至少一個應用中使用人工智慧或機器學習。
但是數據科學方面的專業知識並不像利用數據來制定決策和改進結果那樣普及。如果你的業務剛剛開始採用數據科學,那麼你需要注意避免犯下一些常見的錯誤。
1、假設你的數據準備就緒了——而且這些數據都是你所需要的
你需要檢查收集來並準備使用的數據的質量和數量。「通常你要花80%的時間在獲取數據和清理數據上,」data.world數據科學家兼知識工程師Jonathan Ortiz這樣說。「而且這是假設你正在追蹤數據科學手頭工作所需要追蹤的情況。」
如果你追蹤的數據沒錯,那你有可能無法正確地記錄這些數據,或者記錄這些數據的方式會隨著時間而改變,或者你收集數據的系統可能在你收集數據時發生了變化。「如果每個月都有變化,那麼當你進行分析或者建立模型的時候,你就不能使用這一整個月的數據,」Ortiz警告說,因為系統本身已經發生了變化。
TechTarget首席營銷官John Steinert解釋說,即使你正在收集數據的數據沒錯,較少的數據量和較多的自變數也讓我們很難為B2B營銷和銷售等業務領域創建精準的預測模型。 「數據科學越好,你擁有的數據就越多;預測模型越強大,數據就越多。由於交易率低,影響交易的自變數很多,因此你的數據集很小,而且交互複雜,這就削弱了預測模型的力量。」
有一種選擇,就是購買像採購意向數據這樣的數據集,只要你可以找到適用於你業務領域的數據集。另一個選擇是模擬數據,但必須要小心謹慎,Avanade高級顧問數據科學家Chintan Shah這樣警告說。「實際上,數據可能不會按照你一開始的假設那樣行事,」Shah說。
2、在開始工作之前不事先探索數據集
你可能會對你的數據集有某些理論或者直覺,但數據團隊應該在使用這些數據訓練數據模型之前花一些時間詳細研究數據的細節。
Ortiz說:「如果你發現一些違反直覺的事情,那麼你的假設可能是不正確的,或者數據是錯誤的。我所做的最重要的事情就是查看數據、繪製數據以及探索性分析。很多人完成這些過程的速度非常快,甚至是完全繞過這些過程,但你需要了解數據的情況。你可以事先做一些探索,以更快地確定數據是否能夠告訴你所需的信息。」
3、期待太多
圍繞人工智慧的各種炒作讓很多人相信「如果我們將數據用於計算機演算法中,它就會自行計算出所有的東西,」Shah警告說。「雖然企業擁有大量數據,但仍需要專業人員的專業知識才能將數據轉換為可用的格式。」
Steinert指出,只看到自己公司之前已經做了什麼並不能讓你發現新的機會,只是能讓你更有效地處理曾經做過的類似工作。Steinert說:「你越是利用過去作為未來的唯一預測因素,就越不好找到新的途徑。即使你引入第三方數據來找出產品或者服務的需求,也無法保證你能夠真的完成這些銷售任務。「數據模型可以告訴你有一家公司與你所提供的產品相匹配,但它無法告訴你該公司現在是否有需求,」他補充說道。
「人們開始在這方面進行投資,並將充分信任數據科學家,這和以前是大不相同的。他們正在投入資源並期望用一套方案回答所有問題。他們現在非常虔誠地相信數據科學家和使用數據來回答問題和推動決策,「Ortiz說。
Ortiz建議,數據科學家應該從小型項目開始著手,並通過取得快速勝利來向企業組織展現其價值。「先摘下那些唾手可得的成果;不要從技術漏洞入手並且花一個月時間參與一個你認為具有巨大價值的大項目,」他說。
4、不使用控制組來測試你的新數據模型
如果你花費了不少時間和金錢來建立數據模型,那你肯定希望能在任何地方使用這個模型從而最大限度利用這筆投資。但如果你這樣做了,你就無法衡量模型的實際效果。另一方面來說,如果用戶不信任這個模型,他們可能就不會使用它,然後你無法測試它,Steinert說。有沒有解決方案?Steinert補充說,解決方案就是變更管理項目,可以確保採用該模型,以及設置一個不適用該模型的控制組。設置一個隨機小組專門看模型確定的機會,並且設置一個控制組「按照他們一貫的方式,自我賦權、體驗式的」。
5、從目標開始,而不是假設開始
尋找可以實現特定改進的數據模型是很誘人的,例如,在48小時內完成80%的客戶支持案例,或者在一季度內獲得10%的業務增長,但這些指標還不夠。
Ortiz說:「最好先從假設開始。通常你會看到一條曲線或一條線作為整體度量標準,你希望推動這條線;這是一個偉大的商業目標,但很難想像你需要採取哪些措施才能做到這一點。」通過控制組或者探索數據來驗證你關於做什麼可以改善情況的假設。「如果你可以在控制組進行分組測試,並且都是具有代表性的樣本的情況下運行測試,那麼你可以實際上確定你正在使用的方法是否真的影響到了你希望影響的。如果你只是在事實後查看數據,從假設開始可以幫助縮小範圍。我需要將這個指標增加10%:對於可能帶來的影響,我的假設是什麼?然後[我可以]對數據進行探索數據分析以便進行追蹤。清楚地知道你要問的問題,以及你正在測試的假設,這可以幫助減少你花在這些事情上的時間。」
6、一直使用過時的數據模型
如果你有一個數據模型可以很好地回答你的問題,那你可能會覺得應該一直使用這個模型,但實際上模型是需要更新,而且隨著時間的推移你還需要構建其他的模型。
「功能會隨著時間而改變,」Ortiz警告說。「你需要不斷地了解其有效性並更新你的模型。」
模型過時的原因有很多,世界在變化,你的公司也在變化(尤其是當模型證明有用的話)。Steinert指出「模型不是靜態的,市場當然也不是靜態的。如果市場的偏好正在逐漸遠離你之前的認識,那麼你之前的看法會使你走上分化的道路。模型的表現在逐漸衰退,或者你的競爭對手也在從你的公司活動進行學習。
7、做自動化但不監控最終結果
使用控制組的另一個部分,就是衡量模型的輸出結果有多好,並且你需要在整個流程中進行追蹤,或者最終針對錯誤的目標進行優化。
Steinert指出:「企業會做很多事情,例如使用機器人來做電話服務,你不會持續去檢查機器人是否能夠提高客戶滿意度,你只是慶幸可以減少這方面的人力了。」如果客戶關閉了單子,只是因為機器人無法給出他們正確的答案,而不是因為解決了他們的問題,那麼客戶滿意度將大幅下降。
8、忽略了業務專家的存在
如果你認為你需要的所有答案都在數據中、開發人員或數據科學家可以自己找到答案的話,那就是大錯特錯了。你應該確保讓那些了解業務問題的人參與其中。
Shah解釋說:「儘管知識豐富的專業數據科學家最終能夠發現問題,但如果業務和數據科學家能保持同步,事情就會變得簡單得多。任何數據科學演算法的成功,在於成功的功能工程設計上。要得到更好的功能,某個方向的專家要比花哨的演算法能帶來更多價值。」
Ortiz表示,在啟動項目之前,和數據團隊以及業務相關團隊進行交流,確保所有人都清楚這個項目試圖實現哪些目標。「然後,你可以做一些探索性數據分析,看看你能否實現這些目標,如果不能,你也許就必須以全新的方式重新提出問題,或獲得不同的數據源。」但這個時候就需要某個領域的專家來幫忙確定目標是什麼,以及這個項目能否實現這個目標。
9、挑選過於複雜的工具
機器學習的最前沿是令人興奮的,新技術可以是非常強大的,但也可能是矯枉過正的。「結果可能是一個很簡單的方法,例如邏輯回歸或決策樹就可以完成這項工作,」Shah指出,Ortiz也認同這一觀點。
Ortiz說:「在計算機能力和複雜模型問題上投入巨大資源,這是很誘人的。也許我對一個項目某個方面有著很好的理解,並且我想測試一種全新的演算法,這個演算法可能做得比所要求的要多,或者我只是想嘗試一下。我要做的就是找到一個簡單的方法來回答問題。在嘗試較為較為複雜的方法之前,應該盡量嘗試那些最簡單的方法。」他指出,在像深度學習這樣的複雜演算法方面可能存在「過擬合」的問題:「針對你現有數據的一個非常精確的模型,可能對於新信息是並不奏效的。」
你應該與業務專家合作,確定需要回答哪些問題,從而指導你對技術的選擇。「許多數據科學家專註於機器學習,很多機器學習專註於預測,但並不是你回答的每個問題都是一個預測性問題。『我們需要考慮上個季度的銷售情況』,這可能意味著很多不同的事情。我們是否需要預測新客戶的銷售額,或者你只需要知道為什麼銷售似乎在上個季度特定的某一周停滯不前就可以了,」Ortiz說。
10、反覆利用那些無法回答你問題的實施
有大量的數據科學和機器學習的例子是你可以學習和借鑒的。「數據科學呈現指數級增長的背後,原因之一就是幾乎所有演算法都是開源可用的,這讓快速開發原型變得更加容易,」Shah解釋說。但是這些實現通常是針對特定用例開發的。如果你需要從系統中得到不同的東西,那麼最好是建立你自己的版本。「實施你自己的數據清理和功能構建流程,這樣你能有更多控制權。」
11、誤解了那些基礎因素,例如因果關係和交叉驗證
當你沒有足夠的數據用於單獨的訓練集時,交叉驗證可幫助你評估預測模型的準確性。對於交叉驗證來說,你可以分幾次設置數據,使用不同的部件進行訓練,然後每次測試模型,以確定無論你使用哪種數據子集進行訓練,都可以獲得相同的精度。但是你不能用它來證明你的模型總是和交叉驗證分數一樣準確,Ortiz解釋道。「最普遍的模型往往能夠以準確的方式對新接收的數據進行回應,但交叉驗證無法證明這一點。」因為它只使用你已有的數據,所以它只是表明你的模型對於該數據是儘可能準確的。
就像從根本上說,「相關並不是因果關係;看到兩件相關的事情並不意味著一件事會影響另一件事,「他指出。你對數據集進行的探索性研究,可以讓你了解從中可以預測出什麼,以及哪些數據值是不會告訴你任何相關性的。如果你正在追蹤電子商務網站上的客戶行為以預測哪些客戶將會是回頭客,以及何時會回來再次購買,記錄這些客戶的登錄信息並不能說明什麼,因為這些客戶已經返回你的網站來執行此操作了。「登錄與重複購買是高度相關的,但將其納入模型卻是錯誤的。」
12、低估用戶可以理解的內容
業務用戶可能自己不會做統計分析,但這並不意味著他們不了解誤差、或統計重要性和有效性,Ortiz指出。
「往往業務團隊做分析的時候,最終結果可能只是一頁幻燈片,上面只有一個數字,不管這是一個精確的數字還是預測值;但當你提供這個值時,誤差極其重要,」Ortiz說。
如果業務決策是基於數據分析做出的,那麼就要清楚地說明對結果能有多大的信心,否則決策者就會發現自己很難信任這個系統——並且認為他們在技術上太複雜而無法理解問題。
TAG:至頂網 |