近來科技界對機器學習、深度學習的討論越來越多,其實這並不是未來願景,而是現在進行式的技術,機器學習已經運用在我們每天必點的Google搜尋、Gmail、Google翻譯、Google Photo...等產品上了,雖然使用時感覺不到,但我們每一次搜尋,或同步信件時,機器學習系統都在背後快速而賣力運算中,推送出正確的結果,我們的每一次使用,也都成為機器學習的經驗值,讓背後那些看不見的神經網路,一直在修正或學習,越使用,越準確。




Google開放機器學習原始碼 人人可用




Google在昨天晚上開放全新的機器學習標準系統TensorFlow,今天在東京舉行的亞太區活動裡,Google機器學習研究員Greg Corrado博士也宣布了這件事。
這代表各開發者、工程師、寫程式的、研究人員、學生學者....等跟機器學習有關的人,都可以取得Google機器學習原始碼,放在自己的產品或研究裡使用。

Google認為機器學習應該要有個標準,開放TensorFlow,可以讓科學家使用Google的技術標準來溝通。
而且開放TensorFlow,能讓上述群眾運用程式碼快速交流想法,如此就可以加速機器學習的發展,比方開發者可以將這技術導入自己的產品,產品就有越準確的預測能力;研究人員也可以此分析複雜的數據,更多聰明人就會提出更多知識及發現,開放原始碼,對機器學習的發展來說是很重要的。

Google的這套機器學習系統有幾個特點,一是它和Google使用在Inbox自動回覆(Smart Reply)、語音識別及Google Photo上的是同一套,二是它可以在CPU、GPU及行動裝置上執行,於是大到資料中心,小到手機都能運行。






大量案例就像燃料,推進機器學習


今年Google的亞太區活動,以「The Magic in the Machine」為主題,Greg Corrado博士也在活動的第一場演說裡,就跟大家分享Google在機器學習領域裡做了哪些事,這也是Google第一次公開這麼多這方面的訊息。


官方有段影片,或許可以讓大家對機器學習勾勒出一個入門的輪廓。


很多人認為機器學習就是人工智慧(AI),其實兩者是有差別的,Greg Corrado提到人工智慧是讓機器變得更聰明,因時因地做反應,機器學習則是讓機器從經驗數據當中學習,Google認為後者比較可行,因為透過手動編程讓機器更聰明,難度很高,不如讓機器自己有學習能力,
但機器如何學習呢?透過大量的樣本、案例和數據,不斷重複來學習。

至於機器學習的原理...扯到數學方程式本人頭腦就打結了..@@
簡單說是輸入的指令/參數,經過機器設定的模型(Model)做轉換,得到一個預測的結果,所以模型很重要,如果模型的設定太單一固定,那做出的預測就很不準,所以得用更多的變數來設定模型,而且讓機器反覆、多次產出預測,將預測結果跟真實結果作比對後,再一次次糾正模型,參數越多,比對越多,機器的學習效果也越好。

這個過程是漸進式的,而且緩慢,Greg Corrado提到在Google產品上使用機器學習,也是要千萬、億萬甚至十億次的案例訓練,每次取得一點進步而成,這裡也指出非常重要的一點:機器學習需要大量的案例。

電腦不像人腦,人腦可能只需要幾次的經驗就學得起來,但電腦需要很多很多的樣本來建立模型,Greg Corrado在講解機器學習如何運作時,將機器學習比喻為火箭的推進器,而大量的案例跟數據就是燃料,驅動機器學習,是很貼切的比喻。

而提到機器學習,就不能不提深度學習,深度學習是機器學習裡的一個分支,透過深度學習可以建立很有力的模型,其實60、70年代科學家就在談論深度學習了,但到現在才熱門起來,它算是人工神經網路的體現,深度學習層疊了很多模型,每一層辨識不同的東西,再互相聯繫,形成的更複雜的學習方式。

比方要機器自己辨識出照片裡有沒有貓,
第一層模型辨認像素,辨認出的結果再分組讓第二層分析形狀,形狀分析完又會得到幾組結果,這些再分別進行一下層的分析...以此類推,經過多層的特徵分析,最後機器就能辨認出是狗還是貓。





Gmail、相簿...等已經運用機器學習了


所以Google的哪些產品用上了機器學習及深度學習呢?
Google搜尋(排行排序)、Gmail、Google語音辨識、Google Photos、Google翻譯..等都有,都是我們早早在用的功能。
比方Gmail裡的過濾垃圾信,就用了深度學習的方法,自動判斷信件裡有哪些字眼,所以被歸到垃圾信,目前判斷準確率可以到99%。

前幾天Google也推出Smart Reply自動回覆的功能,一樣利用深度學習偵測信件內容後,自動生成一些相關的回覆短句讓你用。
不過這個目前限英文信,試了一下,真的不同內容會有對應的自動回覆句。


Google語音識別也是,不同語言、不同口音,或各種吵雜環境音...這些都會影響辨識,透過深度學習,機器自己可以客服這些,辨別哪些是要取樣的,讓辨識準確率越來越高,據Google透露,採用機器學習後,語音辨識的錯誤率已經減少了20%。這個中文語音輸入相信大家也用得很開心了~


新的Google相簿有自動分類的功能。
透過影像辨識技術,Google相簿會自動辨識照片裡有什麼,並自動加入標籤,不用手動加Tag,只要輸入貓、早餐、海洋...等,就可以搜尋到照片。也是屬於機器學習的一種,在這次的Google亞太區活動上也有特別把Google相簿的技術拉出來說,我們另一篇再來看。(咦?把哈姆太郎辨識成貓了...如果辨認錯誤,其實可以手動把它從搜尋結果刪除來學習)


在查Google翻譯時,我們會輸入一整串句子,同一件事情,表達的句子可能有百百種,這裡也運用深度學習技術,讓語音輸入,以及自然句翻譯結果都能立即辨認出來,錯誤率也從23%降到了18%。


另外翻譯裡有個拍照辨認文字後查詢的功能,過程中也運用了機器學習,辨認所選單字進行翻譯。


Android 6.0裡新的Now on Tap,會自動抓取和朋友聊天訊息中的文字,在Google Now卡片裡顯示相關的資訊,比方聊到一家餐廳、聊到絕地救援,長按Home鍵叫出的Now卡片,就自動顯示餐廳地圖電話...等資訊,以及電影的網頁、新聞...等連結,這過程也跟機器學習有關。



目前Google有100多個團隊都有用到機器學習,尤其最近幾年,項目增長很多,上面是目前已有的Google服務,像YouTube、Google Play、預測推薦...等,也都有機器學習的加持;無人駕駛車,可讓車子自動辨識路況行駛,這也有運用到機器學習/ 深度學習...

機器學習的訓練模式的過程雖然緩慢,但運用發展卻相當快,Google下個發展重心也會放在這裡。




機器學習是Google下個發展重心


其實Google在7~8年前,就因為開發語音辨識,而投入研究機器學習,直到3年前,則是開始大規模投資,比方收購了deepmond這家公司。
但為什麼Google此時才積極公開他們成果呢?因為相較幾年前,現在的電腦已經有足夠的運算能力,可以實現三年前還不能完成的任務,這樣的環境下,也較能引發更多人去思考如何用機器學習來改善他們的產品。
雖然最近深度學習有比較大的發展,但Google還是認為這個領域需要投入更多研究,也希望更多人用創意,在自己的產品上用使用機器學習,因此才有開放原始碼這個舉動。



Aphabet 集團與董事會執行董事長 Eric E. Schmidt, 透過視訊向我們說明為何機器學習會是Google的下一個發展重心。
很多Google主要的服務都透過機器學習變得更快速更便利,機器學習不再是實驗室裡裡的東西,而是有數十億使用者的技術,已經從理論進入實際應用,機器學習未來發現將無可限量。

但也有人擔心機器越來越聰明,會不會取代人力,或者覺得機器還是不能取代人類做判斷。
對此Eric認為,機器學習可以讓人類不要像機器一樣工作,一些重複性的、規律性的東西就交給機器來做,這樣反而可以節省人力時間,用在更需要的地方。如果用機器可以預測出醫生看不到的病徵,或自動駕駛可以比疲勞駕駛要好,那為何不讓機器來做會更好,人們可以用我們的規則來培訓機器,讓它們按人類的方法來行事。
但Eric也提到,15~20年內或許會出現智慧勝過人腦的機器人,但一般人還是希望有人可以代勞打掃、幫忙家務...要做出這樣的機器人還是有難度,他不認為人工智慧會取代人類大腦。

因為生活上已經有很多實際應用了,我們對機器學習帶來的好處也不陌生,雖然不知道機器學習到最後會發展成怎樣,但可以確定,機器學習/ 深度學習還有很大的發展,別忘了,不只Google,蘋果、百杜、微軟、Facebook、Amazon...等也都有在做,而且也已經有實際應用,未來機器學習一定有更多機會,不著痕跡的出現在我們生活裡。