Dan+Tynan+楊勇
建立從數據中學習的系統是解決復雜問題的良方,應為其提供足夠的、有意義的數據用于學習
最近您可能不止一次聽到“機器學習”這個詞。機器學習經常與人工智能這個詞互換使用,它實際上是人工智能的子集,源自1950年代后期的麻省理工學院。
不管您知不知道,您每天都會遇到機器學習。Siri和Alexa語音助手、臉書和微軟的面部識別、亞馬遜和Netflix建議、防止自動駕駛汽車撞車的技術,等等——所有這些都是機器學習進步的結果。
雖然目前還遠沒有像人腦那樣復雜,但基于機器學習的系統已經取得了一些令人印象深刻的成就,例如在國際象棋、危險邊緣、圍棋、德州撲克等比賽中擊敗了人類。
從十幾年的過度炒作和不切實際(不光彩的“人工智能寒冬”)中緩過勁來,人工智能和機器學習過去幾年開始強勁復蘇,這要歸功于一系列的技術突破,低成本計算能力爆炸式的發展,以及為機器學習模型訓練提供了大量的數據。
自學軟件
那么機器學習到底是什么呢?讓我們先來看看它不是什么:常規的手工編碼的人工編程計算應用程序。
傳統的軟件能夠很好地執行指令,但即時處變能力很差,機器學習系統與之不同,它實際上對自己進行編程,對已有的實例進行歸納借鑒,開發出自己的指令。
典型的例子是圖像識別。向機器學習系統展示足夠多的狗的照片(標記為“狗”),以及貓、樹、嬰兒、香蕉,或者任何其他物體(“不是狗”)的照片,如果系統訓練的非常好,它最終能夠很好的識別出狗,而且不需要人類告訴它狗是什么樣子。
電子郵件程序中的垃圾郵件過濾器是機器學習發揮作用很好的一個例子。在接觸了數以百萬計的垃圾郵件樣本以及非垃圾郵件樣本之后,它學會了怎樣識別那些討厭的有害信息的關鍵特征。它雖然不完美,但通常是相當準確的。
有監督和無監督學習
把一組龐大的訓練數據提交給機器學習算法,檢查其輸出,然后不斷調整其設置,直到輸入給它以前從未見過的數據,它能產生出預期的結果為止——這類機器學習被稱為有監督學習。(這類似于過濾器意外地濾除合法消息,在收件箱中單擊“非垃圾郵件”按鈕的情形。您這樣做的越多,過濾器的準確度就越高。)
最常見的有監督學習任務包括分類和預測(即“回歸”)。垃圾郵件檢測和圖像識別都屬于分類問題。預測股票價格是回歸問題的典型例子。
第二類機器學習被稱之為無監督學習。系統通過大量數據來學習“正常”的數據是什么樣子,這樣,它就能夠檢測到異常和隱藏模式。在您真的不知道要尋找什么的時候,可以使用無監督機器學習,所以不能訓練系統去尋找什么。
無監督機器學習系統可以從大量數據中識別出某種模式,速度比人類快得多,這就是為什么銀行利用它來發現欺詐交易,營銷人員部署它來找到具有相似屬性的客戶,安全軟件使用它來檢測網絡上的惡意活動。
聚類和關聯規則學習是無監督學習算法的兩個例子。聚類是客戶細分的秘密武器,而關聯規則學習則用于推薦引擎。
機器學習的局限性
因為每一個機器學習系統都有自己的連接,因此,可以把某一個系統的實際工作看成是一個黑盒。你不能總是對整個過程進行逆向工程剖析,以發現您的系統為什么能區分一個哈巴狗和波斯狗。只要它能工作就行,其他并不重要。
但是一個機器學習系統只有接觸到高質量的數據才能更好地工作——這是一個典型的“垃圾輸入,垃圾輸出”的例子。如果訓練不夠,或者沒有接觸足夠多的數據集,機器學習算法產生的結果不僅是錯誤的,而且是帶有歧視性的。
惠普早在2009年就遇到了麻煩,HP MediaSmart筆記本的網絡攝像頭采用了面部識別技術,卻識別不出非裔美國人的人臉。2015年6月,Google Photos應用程序有誤的算法把兩個黑人錯誤的標記成大猩猩。
另一個有趣的例子:微軟命運多舛的Taybot,2016年3月的一次實驗旨在看看人工智能系統能否通過學習錄音來模仿人類對話。在不到一天的時間里,那些惡意的推特惡人們就把Tay調教成了一個滿嘴臟話的聊天機器人。這就是不好的訓練數據的例子。
機器學習詞典
而機器學習確實是人工智能最尖端的技術。與機器學習密切相關的其他術語是神經網絡、深度學習和認知計算。
神經網絡。一種計算機架構,旨在模仿人腦中神經元的結構,每個人工神經元(微電路)都與系統內的其他神經元相連接。神經網絡按層排列,一層的神經元把數據傳遞給下一層的多個神經元,如此繼續,直至數據到達輸出層。在最后一層,神經網絡給出最好的猜測,比如說,那個看起來像狗的東西是什么,還給出可信得分。
有多種類型的神經網絡用于解決不同類型的問題。有大量分層的網絡被稱為“深度神經網絡”。神經網絡是機器學習應用情形中最重要的工具,但不是唯一的工具。
深度學習。這實際上是一種激勵型的機器學習,使用多層(深層)神經網絡,根據“有缺陷”或者不完整的信息來做出決定。深度學習系統DeepStack去年十二月擊敗了11名職業撲克選手——它不斷地重新計算每輪下注后的策略。
認知計算。這是Watson的創造者IBM喜歡用的術語,這一超級計算機2011年在危險邊緣節目比賽中完勝人類。在IBM看來,認知計算和人工智能之間的差異是,認知計算并不是要取代人類智能,而是設計來增強它——使醫生更準確地診斷病情,財務管理者能夠給出更明智的建議,律師更快地搜索判例法,等等。
當然,這是一種非常膚淺的概述。如果您想要更深入地了解錯綜復雜的人工智能和機器學習,那么可以從華盛頓大學Pedro Domingos還算不錯的教程開始,或者從Adam Geitgey的Medium系列文章入手,InfoWorld的Martin Heller的“深度學習到底意味著什么”也是很好的選擇。
雖然人工智能有太多的炒作,但不夸張地說,機器學習以及與它相關的技術正在改變我們所知的世界。最好在機器具有自我意識之前就徹底了解它。
當Mark Zuckerberg還帶著尿不濕的時候,Dan Tynan就開始技術類寫作了。作為一名多產的自由作家,他的文章發表在70多種出版物上,他是雅虎技術的前任總編輯,曾長期擔任InfoWorld和PCWorld的特約編輯。endprint