未來Email將預測你的心思自動寫完?Google大腦首席工程師在官方部落格詳細介紹了原理

評論
評論

本篇原文《 Smart Compose : Using Neural Networks to Help Write Emails》合作媒體 雷鋒網 編譯,INSIDE 授權轉載。

編按:在 Google I/O 2018 上,除了 Google 助手給餐館打電話的場景贏得現場觀眾的喝彩外,在使用者寫郵件時可預測下一句的 Smart Compose 技術同樣也引得眾人歡呼。近期, Google 大腦團隊首席軟體工程師 Yonghui Wu 在 Google AI Po 出了這篇詳細介紹 Smart Compose 原理的網誌。

Google I/O 2018 上, Google 介紹了 Gmail 中的一項新特性,智慧預測拼寫功能: Smart Compose ,該新特性利用機器學習,互動式地為正在寫郵件的使用者提供補全句子的預測建議,從而讓使用者更快地撰寫郵件。 Smart Compose 基於此前智慧回覆(Smart Reply)技術開發而來, Smart Compose 提供了全新的方式來幫助使用者撰寫郵件,無論使用者是在回一封來件還是從草稿匣起草一封新郵件。

Google 在開發 Smart Compose 的過程中,遭遇到了以下這些關鍵挑戰:

延遲 :因為 Smart Compose 需基於使用者的每一次輸入來提供預測,所以它必須提供 100 毫秒以內的理想預測,這樣使用者才察覺不到任何延遲。這時候,平衡模型複雜性和推理速度就成了一個需要解決的關鍵難題。

使用者規模 : Gmail 擁有超過 14 億的各種使用者。為了面向所有使用者提供自動組句預測,模型必須擁有足夠強的建模能力,這樣它才能精細地在不同上下文中提供客製建議。

公平性和使用者隱私 :在 Smart Compose 的開發過程中, Google 需要在訓練過程中處理潛在偏倚的來源,並遵守像 Smart Reply 功能一樣嚴格的使用者隱私標準,以確保模型不會暴露使用者的隱私訊息。另外, Google 的研究人員也不具備查看使用者郵件的權限,這意味著他們不得不在一個自己都無法查看的數據集上開發和訓練一個機器學習系統。

找到對的模型

比如 ngram,neural bag-of-words(BoW)和 RNN language 這種典型的語言生成模型,它們是基於前綴詞序列來預測下一個詞的。然而,在一封郵件中,使用者在當前郵件撰寫會話中打下的單詞會給模型一個信號,模型會利用該信號來預測下一個單詞。為了結合更多使用者想表達的上下文, Google 的模型還會利用郵件主題和此前的郵件正文(假設使用者正在回復一封剛剛收到的郵件)。

Google 的方法是包含利用額外語境的一個方法,該方法是將問題轉換成一個序列到序列(seq2seq)的機器翻譯任務,其中源序列是郵件主題和上封郵件正文(假設存在上封郵件)的串聯,使用者正在寫的郵件是目標序列。儘管該方法在預測品質上表現良好,但它的延遲要比 Google 嚴苛的延遲標準超出了好幾個量級

為了提高預測品質, Google 將一個 RNN-LM 神經網路與一個 BoW 模型結合起來,結合後的模型在速度上比 seq2seq 模型要快,且只輕微犧牲了預測品質。在該混合演算法中, Google 通過把詞嵌套們平均分配在每個區域內,來對郵件主題和此前的郵件內容進行編碼。隨後 Google 將這些平均分配後的嵌套連接在一起,並在每次執行解碼步驟時將它們提供給目標序列 RNN-LM,過程如下面的模型圖解。

 Smart Compose RNN-LM 模型架構。將郵件主題和此前郵件訊息進行編碼,採用的方法是將它們的詞嵌套平均分配在每一個區域內。隨後,平均後的嵌套會在每次執行解碼步驟時提供給目標序列 RNN-LM。

加速模型訓練和服務

當然,一旦選定了這種建模方法, Google 就必須調整各種模型超參數和使用超過數十億的樣本來訓練這些模型,所有的這些操作都相當費時。為了實現加速, Google 使用了一個完整 TPUv2 Pod 來執行實驗。在這情況下, Google 能夠在一天之內將一個模型訓練至收斂狀態。

在 Google 訓練出速度上更快的混合模型之後,初始版本的 Smart Compose 在一個標準 CPU 上運行時,依舊存在幾百毫秒的平均服務延遲,這與 Smart Compose 努力預測語句來幫使用者節省時間的特點是不相符的。幸運的是, Google 可在推斷期間使用 TPU 來大大地加速使用者體驗,通過分流 TPU 之上的大部分計算, Google 可以將平均延遲改良至幾十毫秒,同時也能大大增加單一機器可處理的服務請求數量。

公平性和隱私

由於語言理解模型會反映人類的認知偏倚,這樣會導致得到多餘的詞彙聯想和句子完成建議,所以在機器學習內實現公平至關重要。Caliskan et al. 在他們近期的「Semantics derived automatically from language corpora contain human-like biases」論文中指出,模型的詞聯想深陷於自然語言數據的偏倚數據中,這為打造任何一個語言模型都帶來了相當的挑戰。在模型訓練過程中, Google 積極地尋找方法來持續降低潛在的偏倚。另外,由於 Smart Compose 是基於數十億的短語和句子進行訓練,這與垃圾郵件機器學習模型的訓練方法一致, Google 已經進行了廣泛的測試來確保,模型只記憶多種使用者都使用的常識語句,關於常識語句的調查結果源自這篇論文 The Secret Sharer: Measuring Unintended Neural Network Memorization & Extracting Secrets

未來研究

Google 將持續地研究改良語言生成模型的預測品質,為此 Google 會通過使用最先進的構架(如 Transformer,RNMT+等)和試用最新、最先進的訓練技術來實現這一目標。一旦模型的實驗結果滿足了 Google 的嚴格延遲約束條件, Google 就會把這些更加的先進模型部署到自家產品上去。另外, Google 還在進行結合個人語言模型的研究,該模型的目的是給系統增加一個新特性,讓它能夠更加準確地模擬每個使用者自己的寫作風格。


精選熱門好工作

賣家關係維護專員

樂購蝦皮股份有限公司
臺北市.台灣

獎勵 NT$20,000

BD商務開發 (無經驗可)

WeMo Scooter
臺北市.台灣

獎勵 NT$4,000

後端工程師 (Back-End Developer)

FunNow
臺北市.台灣

獎勵 NT$20,000

評論