逐步了解:機器學習問與答
對不少人而言,機器學習似乎甚為前衛。然而最近它卻日趨頻繁地出現在我們的日常生活,無論在是 Google 電腦 Go 精彩的圍棋對奕中,或是在 Gmail 收件箱裡產生的自動回覆,您都能看到它的蹤影。雖然這一切令人十分振奮,但有些人仍在思考何謂機器學習,或機器學習有何意義。有些人亦不明白為何辨別相片中的小狗如此困難。因此,我們邀請了 Google 機器學習科學研究員 Maya Gupta 為我們講解。
就從基本開始。到底什麼是機器學習?
機器學習採納大量例子,從而找出能解釋例子的模式,再運用這些模式來對新例子作預測。
以電影建議為例,如果有十億人與我們分享他們最愛的十部電影。電腦便可以收集大量例子,並從中學習人們喜愛的電影有何相同之處。然後,電腦會訂立模式來解釋這些例子,例如「喜歡恐怖電影的人通常不喜歡愛情電影,但仍會喜歡由相同演員演出的愛情電影。」當您向電腦表示您喜歡積尼高遜主演的《閃靈》時,電腦便可估計您會否喜歡積尼高遜主演的愛情喜劇《玩轉男人心》,並挑選要推薦給您的 YouTube 影片。
大概明白了。但實際如何運作呢?
實際上,機器學習的模式可以十分複雜,實難以言喻。以「Google 相片」為例,您可以從您的相片中搜尋包含小狗的圖片。Google 是怎樣做到的?首先,我們會利用大量標籤為「小狗」的相片 (全賴互聯網的功勞!) 作為例子。我們亦會尋找大量標籤為「小貓」的相片,以及過百萬張標籤為不同事物的相片,但我不在此列出所有標籤了 :)。
然後,電腦會尋找像素和顏色特定模式,以助推斷這是小貓還是小狗 (或其他事物)。一開始,電腦只會任意猜測哪些模式可用來辨別小狗,然後會比對一張小狗的範例圖片來確認目前模式是否準確。如果它誤將小貓辨別為小狗,便會輕微修改使用的模式。然後它會比對小貓的圖片,並再次調整以嘗試取得正確模式。其後,電腦會重覆這個過程約十億次:先比對例子,而如果有誤則修改現時使用的模式,以改善辨別有關例子的工作。
最後,這些模式會成為機器學習模型 (就像一個深度神經網絡),可在 (大部分) 情況下正確辨別出小狗和小貓,以至消防員和其他事物。
這聽起來甚為前衛。目前還有哪些 Google 產品採用機器學習技術呢?
Google 大多數產品都有採用機器學習,例如「Google 翻譯」可讓使用者拍攝路牌或餐牌的相片,然後系統識別相中的字詞和語言並即時翻譯至您的語言。
您亦可以向「翻譯」說出任何句子,以啟用機器學習的語音識別功能。很多其他產品亦有採用語音識別功能,例如在 Google app 識別語音查詢,並讓使用者更容易找到 YouTube 影片。
相機只需對準告示牌、餐牌等,無需上網也能即時翻譯。 *Word Lens 提供英文與超過二十種語言的雙向翻譯。
跟說外語的人對話。
輕易手寫鍵盤不支援的字元和文字。
輸入要翻譯的字詞即可。
為什麼 Google 現在如此重視機器學習?
機器學習並非全新概念,而是源於 18 世紀的統計學,但這最近確實成為熱門話題,主要有三大原因。
首先,我們需要大量例子教導電腦作出準確推測,當中包括我們認為容易的任務 (例如在相片中辨別小狗)。全賴互聯網上的頻繁活動,我們現在可以找到豐富的例子讓電腦學習。例如,在全球大小網站中,不同語言也有數以百萬計標籤為「小狗」的相片。
然而,單靠大量例子並不足夠。您不能只對著網絡攝影機展示一堆小狗相片就認為電腦能夠學習,因為電腦還需要一個自學程式。最近,業界 (和 Google) 已在這方面取得重大進展,開發了複雜而強大的機器學習程式。
可是,我們的程式仍未完美,而電腦亦不夠聰明。因此,我們需要多次向電腦展示大量例子,以透過多次調整來取得正確的回應。過程需要使用運算能力強大的電腦和複雜的平行處理程序,隨著軟件和硬件的進步,這一切都能順利實現。
有什麼事情電腦至今無法處理,但可日後透過機器學習做到呢?
往日當您透過電話讀出信用卡號碼時,語音識別對辨認這十個不同數字已有困難。但透過精細的機器學習,語音識別技術在最近五年取得莫大進展。如今您可使用語音識別在 Google 發出搜尋指令,而且變得越來越好,越來越快。
我認為機器學習會讓我們每個人變得好看。對我而言,試身十分討厭!如果我覺得某個品牌的牛仔褲很好看,我會買夠五條。而機器學習可透過學習適合我們品牌的例子,為我們建議其他適合的衣服。這個功能並非 Google 的主要研究範圍,但希望有人可以循這個方向研究!
十年後的機器學習會變得怎樣?
整個行業正在研究如何從較少的例子中加快學習。其中一個方向 (亦是 Google 努力研究的項目) 就是讓我們的機器更具常識,業界稱為「正規化」(Regularization)。
對機器而言,什麼是常識?一般而言,如果例子只有輕微改動,機器不應全面改變其思考方法。例如,戴上牛仔帽的小狗相片仍應識別為小狗。
我們讓機器學習對牛仔帽般細微和不重要的改變無動於衷,從而將這種常識加入學習程式中。雖然這聽起來非常簡單,但如有差錯,機器便無法辨別重要的改變!因此我們仍努力研究如何取得平衡。
在機器學習中,什麼最能令您為之雀躍?是什麼推動您研究這方面的項目?
我在西雅圖長大,聽過不少如路易斯與克拉克等探險家早期在美國西部探索的事跡。從事機器學習研究亦需要這種探險精神。我們看到新的事物,然後想辦法為美好的未來開拓路徑。
如果您要為 Google 機器學習寫一句車尾貼紙口號,會是什麼呢?
一次不得志,再試十億次。