快速了解!中國制造2025將給工業(yè)控制領(lǐng)域帶來什么?
在Quora論壇上研究編程語言的Tikhon Jelvis回答說:我發(fā)現(xiàn),機器學(xué)習(xí)在很多方面都被高估了,無論是經(jīng)驗不足的人,還是更有害的,人們都對這一領(lǐng)域投入了大量的資金。
最普遍的看法是,機器學(xué)習(xí)比實際我們認為的更強大。機器學(xué)習(xí)只擅長于進行機器學(xué)習(xí),而在其他領(lǐng)域的表現(xiàn)都很糟糕。但如果你聽一些人的話之后,你會相信只要裝入一個神經(jīng)網(wǎng)絡(luò),你可以在任何問題上得到一個可靠的解決方案。
我主要把這類問題歸咎于人們對機器學(xué)習(xí)領(lǐng)域缺乏經(jīng)驗以及錯誤認知之后產(chǎn)生的熱度,但這也是那些對于較常人掌握機器學(xué)習(xí)更好的人大肆宣傳的結(jié)果。Karpathy的最近像病毒般傳播的軟件2.0就是一個很好的例子:他提出了一些有趣的觀點以給人留下深刻的印象,例如他說深度學(xué)習(xí)是電腦編程的未來。這篇文章從某種程度上忽略了一些利基市場(未來愿景、演講、NLP、機器人技術(shù))以外的問題,而我說到的這些問題不太適合采用深度學(xué)習(xí)這種方法。不僅僅是系統(tǒng)軟件能處理的問題,大多數(shù)有經(jīng)驗的電腦工程師能通過寫幾百行代碼甚至都要比機器學(xué)習(xí)更有效的得到業(yè)務(wù)邏輯領(lǐng)域的解決方案。
如果說垃圾收集和高級語言可以代表“軟件2.0”的話,那深度學(xué)習(xí)甚至不能算是“軟件3.0”。神經(jīng)網(wǎng)絡(luò)是“你的機器學(xué)習(xí)工具箱里的另一個工具”,但更重要的是,機器學(xué)習(xí)只是你的編程工具箱中的另一個工具!
它有它的真正的后果。我看到人們將大量資源投入到機器學(xué)習(xí)的系統(tǒng)中,從而得到更簡單、更有效的解決方案。讓我們來探討關(guān)于商店里的商品需求預(yù)測問題。你可以試著把這個問題當作一個純粹的機器學(xué)習(xí)系統(tǒng)來做,但是這個系統(tǒng)將會出現(xiàn)掙扎并最終失敗,因為它需要從你的數(shù)據(jù)中提取出你需要的所有結(jié)構(gòu)。有很多因素都很重要,但有些因素不會在你可以實際操作的數(shù)據(jù)中觀察到。我們最好在實驗上結(jié)合這樣明確地分析一堆事情(基于價格和促銷的彈性)并依賴于他人的經(jīng)驗(消費者時尚的變化)等進行模型設(shè)計并作出總結(jié)。
解決許多難題的理想系統(tǒng)必須是一種混合模式:基于數(shù)據(jù)的機器學(xué)習(xí),一些明確的建模,以及能使專家和用戶互動的模式。但有太多的人不會設(shè)計這樣的問題,因為他們把機器學(xué)習(xí)看成是一種萬能藥,并看到構(gòu)建一個只以得到數(shù)據(jù)為目標的黑匣子。
我對上面說到的這些可能出現(xiàn)的情況并不感到驚訝。無論在學(xué)術(shù)或工業(yè)領(lǐng)域,進行一項研究的公開秘密是,只有那些可以采用并正常工作的東西才能看到光明的未來。有多少個團隊試圖利用機器學(xué)習(xí)技術(shù)解決問題而最終失敗了?如果你和活躍在該領(lǐng)域的研究人員聊天,你不會聽到他們說到關(guān)于失敗的案例。(舉個例子:我知道有一群人嘗試過在程序合成中對各種問題引入深度學(xué)習(xí)最終失敗了,但這只是我通過小道消息聽到的。)
但事實上,人們相對的高估了機器學(xué)習(xí)對產(chǎn)品的影響?,F(xiàn)在很多消費產(chǎn)品都以機器學(xué)習(xí)技術(shù)為核心,例如我們可以想想Quora和Facebook的動態(tài)消息提示。由于機器學(xué)習(xí)是一種新興的、技術(shù)含量高的技術(shù),這些產(chǎn)品的成功必須歸功于機器學(xué)習(xí)!
但問題是,我打賭機器學(xué)習(xí)對它們的影響是微乎其微的:大部分的效用都是由社會需求而設(shè)計的工具來支持的。真正重要的是,Quora有一個自主信息流,來讓用戶去關(guān)注特殊的人和話題。如果一個更加粗糙的算法(也許是一個基于啟發(fā)性的規(guī)則引擎)能夠擁有一個比Quora更好的消息流,我不會感到驚訝。我使用其他與Quora論壇類似的產(chǎn)品,但沒有任何“機器學(xué)習(xí)”作為后臺支持(比如Reddit)。事實上,我的Reddit首頁在讀取我關(guān)心的事情上這一欄要比Quora上做得更好?。≦uora的其他設(shè)計,例如非機器學(xué)習(xí)的部分,都要比Reddit上的更適合我。)
有一件事我覺得很有必要探究的是有多少交易商店沒有全心全意地接受機器學(xué)習(xí)。當然,也有一些人繼續(xù)用相對直接的手動調(diào)優(yōu)算法來獲取不干凈的金錢。同樣的,在規(guī)則引擎中如果導(dǎo)入了專家編寫的啟發(fā)法,它得到的效果將出奇的好!有些策略是通過機器學(xué)習(xí)技術(shù)(也被稱為“統(tǒng)計”)開發(fā)的,但也有一些是基于深度領(lǐng)域的專業(yè)知識而產(chǎn)生的。
我的觀點不是機器學(xué)習(xí)對貿(mào)易毫無用處,而且它顯然有可用之處。重點在于它并不是你所期望去使用的,甚至與你所期待的相反。
最終,我認為機器學(xué)習(xí)被高估是因為對于任何嘗試在生產(chǎn)中采用機器學(xué)習(xí)系統(tǒng)的人來說,都會發(fā)現(xiàn)機器學(xué)習(xí)要比看上去的復(fù)雜得多。
你可能認為你可以很好的利用一些你已經(jīng)聽說過的機器學(xué)習(xí)算法,但在你使用的過程中,它可能不會像你從博客文章或文章中所看見的效果那樣好。很多細節(jié)都沒有寫進論文,而且它們僅僅作為專業(yè)領(lǐng)域的專業(yè)知識存在。即使你考慮的問題和你的最開始工作出現(xiàn)的問題是一樣的,你仍需要花很多時間來為你的問題配置個性化的算法。你需要調(diào)整超參數(shù),找到合適的架構(gòu),以怪異的方式對數(shù)據(jù)進行預(yù)先處理,甚至可能需要重新整理你的問題。你不能把你的問題放在現(xiàn)有的算法上,所以你要么需要豐富的經(jīng)驗,要么需要大量的嘗試和錯誤的數(shù)據(jù)作為參照。
機器學(xué)習(xí)是一套強大而實用的技術(shù),它能夠讓我們解決以前很多無法處理的問題。例如,我正在開發(fā)的供應(yīng)鏈優(yōu)化系統(tǒng)將受益于在我們現(xiàn)有的經(jīng)典操作研究基礎(chǔ)之上添加的一些機器學(xué)習(xí)系統(tǒng)。
但正如人們所相信的那樣,機器學(xué)習(xí)現(xiàn)在遠沒有像人們想象的那樣普遍、強大或有影響力。如果我不得不進行猜測的話,我賭未來的技術(shù)值得被稱為“軟件3.0”,它是一種有程序合成支持的、交互式的開發(fā)工具。但這可能只是我一廂情愿的想法,而且還有很長的路要走。