吳恩達 NIPS 2016:利用深度學習開發人工智慧應用的基本要點(含唯一的中文版PPT)
雷鋒網按:為了方便讀者學習和收藏,雷鋒網特地把吳恩達教授在NIPS 2016大會中的PPT做為中文版,由三川和亞峰聯合編譯並製作。
今日,在第 30 屆神經資訊處理系統大會(NIPS 2016)中,百度首席科學家吳恩達教授發表演講:《利用深度學習開發人工智慧應用的基本要點(Nuts and Bolts of Building Applications using Deep Learning)》。
此外,吳恩達教授曾在今年 9 月 24/25 日也發表過同為《Nuts and Bolts of Applying Deep Learning》的演講(1小時20分鐘),以下是 YouTube 連結:
https://www.youtube.com/watch?v=F1ka6a13S9I
一、深度學習為何崛起
吳恩達在開場提到:深度學習為何這麼火?
答案很簡單:
第一是因為規模正在推動深度學習的進步。
從傳統演算法到小型神經網路、中型神經網路最後演化為現在的大型神經網路。
第二:端到端學習的崛起
從下圖中的上半部分可以看出,傳統端到端學習是把實體資料表達成數位資料,輸出數位值作為結果。如退昂識別最後以整數標籤輸出為結果。
而
現在的端對端學習更為直接純粹
,如機器翻譯:輸入英語文本,輸出法語文本;語音辨識:輸入音訊,輸出文本。但端對端學習需要大量的訓練集。
吳恩達先講述了常見的深度學習模型,然後再著分析端到端學習的具體應用。
二、主要的深度學習模型
普通神經網路
順序模型 (1D 順序) RNN, GRU, LSTM, CTC, 注意力模型
圖像模型 2D 和 3D 卷積神經網路
先進/未來 技術:無監督學習(稀疏編碼 ICA, SFA,)增強學習
三、端到端學習應用案例
語音辨識
傳統模型
:語音→運算特徵—(人工設計的 MFCC 特徵)→音素識別器—(音素識別)→最終識別器→輸出。
端到端學習
:音訊→學習演算法→轉錄結果;在給定了足夠的有標注資料(音訊、轉錄結果)時,這種方法的效果會很好。
自動駕駛
傳統模型:
攝像頭圖像→檢測汽車+檢測行人→路徑規劃→方向控制。
端到端學習:
攝像頭圖像→學習演算法→方向控制。
自動駕駛對安全有極高要求,因此需要極高的精確度。採取純粹的端到端學習十分有挑戰性。只在有足夠(x,y)的資料,來學習足夠複雜的函數的情況下,端到端學習才有效果。
四、機器學習策略
你經常有很多改進 AI 系統的主意,應該怎麼做?好的戰略能避免浪費數月精力做無用的事。
以語音辨識為例,可以把原語音資料分割成:
60% 訓練集(訓練模型)
20% 開發集(開發過程中用於調參、驗證等步驟的資料集)
20% 測試集(測試時所使用的資料集)
這裡面普及幾個概念:
人類水準的誤差與訓練集的誤差之間的差距是可避免的偏差,這部分誤差可以通過進一步的學習/模型調整優化來避免。
訓練集和開發集之間的差距稱為方差,其因為跑了不同的資料從而導致誤差率變化。
上述兩種偏差合在一起,就是偏差-方差權衡(bias-variance trade-off)。
機器學習的基本方案
自動資料合成示例
不同訓練、測試集的分佈
假設你想要為一個汽車後視鏡產品,開發語音辨識系統。你有 5000 小時的普通語音資料,還有 10 小時的車內資料。你怎麼對資料分組呢?這是一個不恰當的方式:
不同訓練和測試集分配
更好的方式
:讓開發和測試集來自同樣的分配機制。
五、機器學習新方案
普通人類、偏差、方差分析
人類的表現水準
當機器學習在處理某項任務上比人類表現還差時,你經常會看到最快的進步。
機器學習超越人後,很快就會靠近貝葉斯最優誤差線。
可以依靠人類的直覺:(i)人類提供加標籤的資料。(ii)進行錯誤分析,來理解人是怎麼對樣本正確處理的(iii)預估偏差/方差。比如,一項圖像識別任務的訓練誤差 8%, 開發誤差 10%,你應該怎麼處理?
六、人工智慧產品管理
新的監督DL演算法的存在,意味著對使用 DL開發應用的團隊合作,我們在重新思考工作流程。
產品經理能説明 AI 團隊,優先進行最出成果的機器學習任務。
比如,對於汽車噪音、咖啡館的談話聲、低頻寬音訊、帶口音的語音,你是應該提高語音效果呢,還是改善延遲,縮小二進位,還是做別的什麼?
今天的人工智慧能做什麼呢?這裡給產品經理一些啟發:
如果一個普通人完成一項智力任務只需不到一秒的思考時間,我們很可能現在,或者不遠的將來,用 AI 把該任務自動化。
對於我們觀察到的具體的、重複性的事件(比如用戶點擊廣告;快遞花費的時間),我們可以合理地預測下一個事件的結果(用戶是否點擊下一個此類廣告)。
產品經理和研究員、工程師該如何分工
七、吳恩達新書推薦