大數據文摘出品
來源:towardsdatascience
作者:lin、Andy
對於什麼時候應該使用機器學習/AI,很多人都會遲疑和顧慮,而作者正是因為經歷了種種顧慮後,將經驗總結成這篇文章,文摘菌編譯了這篇文章,希望大家能夠減少顧慮,更好地與機器學習或AI一起暢享學習之旅。
試想一下,你剛準備對一個臨床試驗的數據集上手進行分析一下。為了讓你有帶入感,我自己做了一份類似數據:
假設這些數據列出了患者在60天的療程內,所接受的治療天數(輸入特徵)以和某某療法正確劑量(輸出預測)之間的對應關係。
現在想像一下你正在治療一個病人,今天是第二天,那麼你會建議服用多少劑量的藥物呢?
你肯定會回答「17毫克」,因為這個太簡單了,白紙黑字直接寫著。那第四天呢?看看錶,41毫克?完全正確!
那麼現在,如果讓你寫一個軟體來輸出1-5天的正確劑量呢?你會用機器學習嗎?換句話說,你會試著先在這些數據中尋找模式,然後轉化成從輸入到輸出的模型嗎?
不會,當然不會,傻子才會!你會讓軟體像你前面做的一樣:直接去表里查結果就行。這樣你就能100% 得到在所有60天內的正確答案。不需要尋找模式也不需要什麼機器學習。
哪種情況下你需要機器學習
比如現在,是第61天如何?正確答案是什麼呢?
那麼首先,我們從來沒見過第61天的數據,因此無法查找答案。那怎麼辦呢?怪運氣不好沒第61天數據嗎?還是給目光投向機器學習?那也就還要看情況了。
如果輸入輸出之間沒有什麼模式可言的話,就忘掉機器學習吧。在這樣的案例中,它基本上很難發揮作用...如果你覺得機器學習可以處理的話,那還是儘早放棄這個想法吧!
那什麼情況下可以考慮機器學習呢?
第一,必須找到有用的模式
如果數據里有一個模式(說如果),而且能發現它,那就可以嘗試用它預測或猜測第61天的結果。這樣機器學習就有用。
第二,模式必須能泛化
現在問題是,光是數據里有一個模式還不夠,太簡單了。我們還要知道,該模式在60天之後還能適用嗎。如果第61天的條件完全不同,導致模式不能泛化怎麼辦?因為你要知道,也許在第61天所有患者就已治癒或死亡,或開始服用不相容藥物。那麼這時,在之前數據中發現的模式就不會太有用。
第三,非平穩世界
如果你的數據並不能很好的反應未來—也許因為一場大流行改變了世界的一些運行規則,那麼之前獲得的數據再好也沒什麼價值。如果你生活在宇宙中一個不穩定的角落,那你就很難驗證一般所說的遍歷性和平穩性假設,翻譯成人話就是「我相信規則並沒有什麼改變。」
這裡,我說的不穩定並非旁人眼中所謂的不穩定現象,例如通貨膨脹導致的物品平均價格隨時間的波動。這種簡單的不穩定性(隨時間變化的可預測函數)是時序分析領域處理的問題。
其實我想談的是,那種你幾乎束手無策的極端不穩定性,因為系統規則從本質上改變,所以無法從一個周期去預測下一個。如果你過去的數據突然無法適用不確定的未來,你也就很難坦然地用昨天去預測明天。
也許你運氣很好。
如果現在有一個模式,而且這個模式適用於新條件,那麼就可以直接開乾了。先通過已有數據去找到這個模式,做出一個模型,之後用它去獲取第61以及之後每天的數據!
尋找模式並使用它們,這就是所謂的機器學習。
何時使用機器學習
在應用機器學習和AI時,你不是單純重複之前見過的例子—這根本不用機器學習來做,只要查下表就行!記住,你是來讓模型學習的。
只是重複舊答案嗎?不,ML可以做得更好!它能在新實例上也進行預測。
你的任務是?搭建一套可以成功泛化的解決方案,或者…放棄治療。
換句話說,如果你的解決方案不能處理之前從未見過的新示例,那麼它就不是好的解決方案。當然這個新示例並不用完全打破穩定宇宙的所有規則,而只是在相關學習主題上有一些小變動。
我們不是在鸚鵡學舌,而是需要泛化到新情況。那才是機器學習的威力和魅力。
如果你從未見過某個具體的數據組合(比如第61天的數據),那麼如何獲得它地答案? 好吧,也許這就需要給舊模式總結成一個模型,之後用它來預測。例如,如果你從成千上萬的動物照片中訓練了一個貓分類器,你可以讓它告訴你一張新照片中是否有貓,但你不應該讓它告訴你一幅畫是否立體派風格。
機器學習適合你嗎
如果你討厭我稱機器學習為事物標籤器,或是另一種編寫代碼的方法,那麼就讓換一種說法吧。
機器學習是一種自動化重複決策的方法,包括用算法從數據中尋找模式,並利用這些模式來正確處理新數據。
要了解機器學習是否適合你,我提供了三個你可能會喜歡的指南:
是ML / AI項目入門者嗎?22項實用檢查清單
連結:http://bit.ly/quaesita_realitycheck
查找ML / AI用例的建議
連結:http://bit.ly/quaesita_island
ML / AI入門?從這裡開始
連結:http://bit.ly/quaesita_dmguide
那麼,存在有用的模式嗎?
如果仍舊對第61天的結果好奇?那麼我可以告訴你,其實示例數據中是有一個模式地。我知道這個,因為這是我設置的。甚至我可以向你保證,它將泛化到你能想到的最大數字再加一天,因為在這個極度不穩定的時代,我發現能用一個這樣能隨改變有規律變化的數據真是一個奢侈的享受,所以讓大家也奢侈一下。
對於那些喜歡挑戰的人,不妨試試看自己喜歡的機器學習算法能否找到這個數據中的模式?讓我知道你認為的第61天的答案是什麼。大約一周內,我會在注釋中添加用於生成這些數據的代碼,這樣你們就能知道自己是否做對了。
我也懷疑可能大部分人會通過分析的方法,而不是通過機器學習來解決。祝你好運吧!願最好的方法獲勝!
如果你非常想嘗試ML,那請別忘了按正確的順序開始,好的方法能助你一臂之力。
相關報道:
https://towardsdatascience.com/when-not-to-use-machine-learning-or-ai-8185650f6a29