把深度學習用於你已有的資料

OReillyData發表於2017-03-06

編者注:想了解與此主題相關的更多內容,請檢視即將在2017年3月13-16日在聖荷西舉行的Strata+Hadoop世界大會上的深度學習主題的日程

在過去的幾年裡,深度學習取得了顯著的進步。儘管企業的經理們已經意識到了學術界里正在發生的事情,但我們依然處於將研究引入到實際工作的早期階段。雖然對於深度學習的主要興趣還是來自於它在計算機視覺和語音上的應用,但是很多企業其實已經可以把深度學習用於他們已有的資料上,包括結構化的資料、文字和時間序列資料等。

對於深度學習的狂熱已經帶來了越來越多的工具和框架,其中就包括一些專門為已經使用其他的機器學習的非專家人士所設計的。不少裝置也已經能使用這些技術,因此我們可預見具有智慧的流式應用的出現。最後,已經有非常多的有趣的研究專案正在研究針對未來的神經網路,它們具有不同的特點和更強的模型構建能力。

回到機器學習

如果你把深度學習看成是另外一種機器學習的方法,那麼你對它的基本組成部分都應該是很熟悉的。部署和維護模型的軟體架構依然是根本。一篇廣為引用的谷歌的論文使用了“技術負債”這個概念來指出“現實世界裡的機器學習系統中只有一部分是真正的機器學習的程式碼”。這意味著儘管底層的演算法是很重要,但它們也僅僅只是一個複雜的生產系統裡的一個小部分。正如論文的作者指出的,機器學習系統也必須解決機器學習相關的特定關聯和依賴問題,比如資料、特徵、超引數、模型和模型的設定(作者稱此為CACE原則:改一點即改全部)。

深度學習也通常意味著訓練模型所需的專門的硬體(如GPU)。對於已經使用SaaS(軟體即服務)工具的公司,很多雲服務商已經提供了支援深度學習的軟硬體解決方案。像BigDl這樣較新的工具已經出現了,針對特定的一些公司。這些公司喜歡的工具就是要能和流行的工具(比如Apache Spark)無縫整合,並充分利用已有的大資料叢集、模型服務和監控平臺。

不過你還是需要(打過標籤的)資料,事實上是需要更多的資料。深度學習的專家把這個情況比喻成是一個需要巨型發動機(模型)的火箭,需要使用大量的燃料(資料)來到達任何想去的地方。(很多場景裡,資料已經儲存在叢集裡了。因此很多公司都在尋找那些可以執行在它們已有的工具上的解決方案。)想獲得乾淨並打過標籤的資料就意味著需要資料分析師能結合行業知識,並與基礎設施工程師們合作,來共同設計和維護一個魯棒的資料處理平臺。在近期的一次對話裡,和我聊天的一位專家就開玩笑說,隨著這些在軟體架構和機器學習模型的改進,“很快,所有的公司需要僱傭的人就只是那些能產生好的資料的分析師了”。去除掉這裡面的玩笑部分,實際情況是更加得微妙。例如很多的公司已經在開發和部署“人機互動”的系統,有時也被叫做“人類增強的人工智慧”或是“主動學習系統”。這些系統能夠將行業專家和資料科學家的工作結合起來。

這種情況對於深度學習而言更是如此。相比其他的機器學習技術,設定和修改深度學習的模型需要經驗和專業技能。幸運的是,很多流行的框架都自帶樣例模型,而這些模型對多種型別的資料和多領域的問題都能有比較好的效果。至少在初始階段,使用由領先的雲服務商提供的打包的解決方案和可管理的服務都比自己僱傭專家要緊迫。我認為很多公司將只需要很少的真正的深度學習專家就能先對付過去。而一個更合理的選擇是僱傭那些有很強軟體工程技能的資料科學家。他們能夠部署機器學習的模型,還能理解模型評估裡的細微差別

另外一個對於深度學習常見的疑問就是深度學習模型的特點。生成的預測是因為相關性還是一些因果關係?深度學習的架構對於非專家(甚至專家)而言都是臭名昭著的難以理解和解釋。常見的模型包括上百萬的引數。為什麼深度學習在模式識別上工作的這麼出色的確切原因是目前的一個熱門研究領域(近期的一篇論文發現,很多成功的深度學習架構都靠“全記憶”來表現的很好)。然而很多公司只會在深度學習的模型能大幅度提升業務指標的情況下才會部署應用它。一些應用和行業會要求模型必須能被解釋,不過幸運的是,已經有一些研究來試圖讓機器學習的模型更容易被理解。企業應該參與的另外一個有趣的常見討論就是演算法的可信賴度(Tim O’Reilly有一個很好的列表)。

展望有限的人工智慧系統,近期的激動人心的成果都涉及到了一些系統。這些系統組合了深度學習和額外的一些技術(增強學習、概率計算等)和元件(記憶體、知識、預測和計劃)。我相信這些系統對於典型的企業而言都很複雜,而能構建特定應用的公司就充滿機會。對於正在引入和部署機器學習的企業而言,一個更合理的起點則是將深度學習和其他的演算法一起使用。將你的模型結合多臂強盜演算法,你就可以宣稱你正在向著增強學習前進。

物聯網(IoT)和邊緣智慧

儘管人們經常認為深度學習對於文字、影象和語言更有用,但我也看到了一些企業正在使用深度學習來分析時間序列資料事件資料。巧合的是,一些人工智慧令人激動的例子就涉及到了能大量產生這樣資料的系統和裝置。例如,自動駕駛汽車的感測器可以獲取遠比我們意識到的多得多的資料。這些資料的量是如此之大,以至於分析技術必須先被用於過濾、壓縮和總結這些資料,然後再把它們上傳到大規模的(雲)平臺。

未來的一種場景則是大量的智慧裝置之間相互互動(是時候溫習一下P2P系統了)。這提醒了我之前在和RISE實驗室的建立人的對話中談到的一些思考。未來流式計算系統將必須和線上機器學習相配合,不僅只是做模型訓練,還要用來做資料處理和收集。安全性和安全的執行環境將鼓勵資料的共享,從而增進“個性化”,並能釋放更多資料來源的價值。

研究方向:像人一樣思考的機器

深度學習和人工智慧領域正在快速發展。跟上它們的步伐是很難的。近期的一篇綜述調研論文總結了人類智慧的核心部分,並用它作為一框架來組織近期深度學習方面的研究成果。我發現下面的這個分類系統很有用,可以較好地理解正在進展的各式各樣的研究方向。本質上,人類“學習自較少的資料,然後用更豐富和靈活的方法來泛化總結”。而使用深度學習的人工智慧系統應該具有相似的能力。按照這個邏輯,作者列舉了一些未來人工智慧產品裡可能會出現的能力:

現有的很多基於深度學習的系統都需要好的計算機、大量的資料和複雜的模型。研究人員正在構建更少依賴於大規模模式識別的工具,而企業則希望能把深度學習作為一種機器學習的技術,能通過一些工具將它和已有的大資料平臺結合在一起使用。

相關資源:

640?wx_fmt=jpeg

Ben Lorica

Ben Lorica是O’Reilly傳媒集團的首席資料科學家和資料主題內容策略的主管。他已經在多個領域裡(包括直銷市場、消費者和市場研究、精準廣告、文字挖掘和金融工程)進行了商業智慧、資料探勘、機器學習和統計分析的工作。他之前曾效力於投資管理公司、網際網路創業企業和金融服務公司。

640?wx_fmt=png


相關文章