Google Brain軟體工程師邱中鎮:「大資料技術重新把神經網路技術帶回來了。」而它的新名字就是叫深度學習。

圖片來源: 

iThome

在6月16日的早上不到10點,一群臺大資工系的師生興奮地等著演講開始,連撰寫出暢銷機器學習教科書的臺大資工系教授林軒田都頗為期待地坐在講臺前。

「我穿著這件T-Shirt,就是要說我在Google Brain團隊工作。」Google Brain軟體工程師邱中鎮用平穩但帶著驕傲的口氣告訴在場師生。

Google Brain是一個Google X秘密實驗室的計畫,以打造出媲美人工智慧的人工大腦為初始目的所發起的一個先進研究計畫。創下6成市占的Android Jelly Bean版中,令人眼睛一亮的聰明語音辨識功能背後的關鍵技術,正是Google Brain的研究成果之一。這是一個專門研究如何讓Google服務更聰明的團隊。

邱中鎮表示,Google Brain是Google內主要使用深度學習(Deep Learning)技術的研發團隊。

深度學習是機器學習領域中的其中一支,Google Brain不只用深度學習來改善產品,「甚至還想要發展出一個深度學習的通用平臺,來支援Google其他任何部門的服務。」他說。

類神經網路的研究已背離研究人腦神經的初衷

早在2011年,大資料技術MapReduce發明人Jeff Dean、腦神經專家Greg Corrado以及後來離開Google在百度擔任首席科學家的吳恩達三人共同創辦了Google Brain計畫,一開始的目的是研究人類的腦神經,希望用來幫助發展運算技術。

但是因為人類對於腦的了解目前還過於不足,許多得到的結論無法用在實際的人工智慧技術上,因此現在的機器學習研究有許多甚至是背離腦神經研究的,Google Brain因此轉而專注研究機器學習。

例如在今年Google I/O中剛發表的Google Photos智慧相簿,能夠自動分類使用者的大量照片,使用者就算沒有事先下關鍵字,也能透過關鍵字搜尋來找出需要私人照片,不用擔心照片太多需要整理的問題。這個功能也正來自Google Brain團隊的成研究果。

但這功能不是Google突然無中生有的新技術,在2014年時,Google就在全球知名的電腦視覺辨識比賽ILSVRC(ImageNet Large Scale Visual Recognition Challenge),以系統GoogLeNet取得照片內容辨識的冠軍。GoogLeNet使用了22層類神經網路,680萬個加權連結值(Weight),訓練的樣本照片高達上億張。

最終訓練出來的模型可以在複雜的照片中辨識出上萬種物體,例如在一個紙袋中辨識出四顆橘子與香蕉,或是在一張自助洗衣店的圖片中,辨識出3臺洗衣機和鏡子中拍照人的倒影,連一張有匹跳耀中的馬以及背上的騎師也能清楚辨識。

而GoogLeNet不只具有單一物體辨識的能力,也能綜合出抽象的概念,像是個盤子中裝有沙拉、水果以及蛋的照片,另一張有著中式圓桌,桌上擺放碗筷以及菜餚的照片,都會被GoogLeNet辨識為餐點(Meal)。不過電腦不及人腦,還是會有很多辨識的錯誤,像是會把香蕉蛞蝓誤認為蛇,或是把被遮蔽的驢子辨識成狗等。

GoogLeNet的錯誤率是所有參加者中最低的,只有6.66%,雖然還不及人類同樣受過照片樣本訓練的錯誤率5.1%,但已是很大的進步。

深度學習就是一種類神經網路

「深度學習就是一種類神經網路,只是被研究人員重新貼上標籤,希望喚起大家的注意,類神經網路的發展已經跟過去不一樣了。」邱中鎮說,2015年全球最頂尖的電腦視覺研討會CVPR有超過70%的研究都與深度學習有關。而Google Brain團隊目前也招募到了50多位成員,其中不乏優秀的研究人員,像是全球類神經網路的指標性研究人物Geoffrey Hinton也在其中。

邱中鎮說:「深度學習的本質就是很多小的數學元件組合成一個複雜模型,複雜的模型可以用來解複雜的問題。」

類神經網路的設計是想藉由模擬人腦的運作方式,讓電腦擁有跟人一樣的智慧,腦是由許多簡單的神經元組成,每個神經元負責的事情很小,但是整個腦卻可以處理非常複雜且抽象的任務。

像視神經等淺層的神經元,可以解讀邊(Edge)或顏色等較簡單的訊息,越深層腦區的神經元處理越複雜抽象的概念,例如動物、臉或是想法。

深度學習也是透過非常多層的神經網路以達到辨識複雜物體的目的,以深度學習從照片學得辨識貓臉的概念為例,從淺層的神經網路中,會得到邊的概念,接下來才會有輪廓到臉的概念逐漸形成。

深度學習與其他的機器學習演算法不同,不需要有特徵擷取的階段,或是說深度學習會自己進行特徵擷取。以非類神經網路的機器學習來說,將樣本輸入機器學習演算法之前,需要先用演算法找出貓臉的特徵,諸如貓臉的形狀、耳朵以及眼睛等,再將這些特徵當作機器學習模型的輸入,教電腦具有什麼樣特徵的照片叫做貓。

深度學習的方式會從一個畫素或是一小塊畫素開始,從這些畫素之間的差異,經過一層一層的神經網路而找到之間的關係,進而找到辨識貓的特徵,而每一層神經網路擷取的特徵,可能是人類難以理解或是需要由複雜數學式推算才知道其中意義。能夠自動擷取特徵的優點,正是深度學習辨識度能高過以往的關鍵。

因為非類神經網路的機器學習的特徵擷取,是來自於人觀察得出的假設,當這些假設涵蓋層面不夠完整,或是只能描述部分的現象,在某些情況這些假設反會成為辨識的阻礙,因此在應用上,輸入的樣本需要謹慎檢查特徵與結果的相關性。

而Google之所以對深度學習充滿信心,積極地發展並將其應用在線上產品,邱中鎮說,這始於深度學習在語音上的進展,Google的語音辨識團隊用了800臺電腦的運算叢集,花費5天的訓練時間,訓練出用於語音辨識的深度學習模型,其在英語的字詞辨識錯誤率比過去下降了30%,「這是20年來,語音辨識最大的進展。」

Google深度學習的秘密就是資料多

為什麼Google的深度學習結果會這麼好?邱中鎮直言,秘密就是因為Google有非常多的資料,可以當作訓練樣本,無論是文字、照片、音訊、使用者行為或是知識圖(Knowledge Graph)。

每種的資料Google都有相對應的產品,這些產品收集來的資料都會有專人清理彙整,因此當他們想要測試新的演算法時,可以直接跟對應的部門要求最新的訓練資料,就能開始研究實驗。

邱中鎮表示,深度學習門檻,無論是資料量級或是運算資源的要求都非常高,機器學習一般訓練模型可能達數小時,但是深度學習訓練模型的時間則多達數天。

但是一般的企業或是學術機構,或許沒有這麼完整且可用的資料供研究使用,所以需要從自己蒐集資料開始,而且資料量可能還是不夠多。

邱中鎮說,Google一天就能累積上千小時長度的語音訊息,這是外界很難做到的,這也是為什麼類神經網路的技術早在1980年代就開始發展,演算法也日新月異,但是結果卻一直不如預期的重要原因之一。

複雜有趣的問題需要大型的神經網路才能解決,通常加權連結值要在百萬到億的等級才夠,而這麼大的模型需要非常大量的樣本才夠,龐大神經網路加上大量的資料集需要強力的運算能力才能支撐,邱中鎮說:「大資料技術重新把神經網路技術帶回來了。」而它的新名字就是叫深度學習。


Advertisement

更多 iThome相關內容