智慧編撰:使用神經網路協助編寫電子郵件

Google_Developers發表於2018-08-30

文 / 吳勇輝,谷歌大腦團隊首席工程師

來源 | 谷歌開發者 Google_Developers

在 Google I / O上,我們推出了 Smart Compose,這是 Gmail 中的一項新功能,它利用機器學習,通過互動方式為正在編寫郵件的使用者提供補全句子的預測建議,從而讓使用者更快地撰寫郵件。 Smart Compose 基於智慧回覆技術,提供了一種全新的方式來幫助您撰寫郵件 - 無論您是在回覆郵件亦或是從頭開始起草一封新郵件。

在開發 Smart Compose 過程中,遇到了一些關鍵性的挑戰,其中包括:

延遲:由於 Smart Compose 需基於使用者的每一次按鍵輸入來作出預測,如若想讓使用者察覺不到任何延遲,必須在 100 毫秒內作出理想的預測。這時候,平衡模型複雜性和推理速度就成了重中之重。

規模:Gmail 擁有超過 14 億的使用者。為了面向所有 Gmail 使用者提供自動組句預測功能,該模型必須具有足夠強大的建模能力,以便能夠在細微差異的文字環境中為使用者提出量身定製的建議。

公平與隱私:在 Smart Compose 開發過程中,我們需要在訓練過程中處理潛在偏倚的來源,並且遵循與 Smart Reply 同樣嚴格的使用者隱私標準,以確保我們的模型不會暴露使用者的隱私資訊。 此外,研究人員也不具備訪問和檢視使用者電子郵件的許可權,這就意味著他們不得不在一個自己都無法檢視的資料集上開發和訓練一個機器學習系統。

尋找合適的模型

典型的語言生成模型,例如 ngram,神經詞袋(BoW)和 RNN 語言(RNN-LM)模型,是在以字首詞序列為條件的基礎上學習預測下一個單詞。 然而,在電子郵件中,使用者在當前電子郵件中鍵入的單詞成為模型可用於預測下一單詞的 “訊號”,模型將利用該訊號來預測下一個單詞。 為了結合更多有關使用者想要表達的內容,我們的模型還會參考電子郵件的主題和先前的電子郵件正文內容(假設使用者正在回覆一封剛剛收到的電子郵件)。 注:ngram 連結 en.wikipedia.org/wiki/Langua… 神經詞袋(BoW)連結 www.jmlr.org/papers/volu… RNN 語言 連結 www.isca-speech.org/archive/int…

包含和利用附加語境的一個方法是將問題轉換成 sequence-to-sequence(seq2seq)機器翻譯任務,其中源序列是郵件主題和先前電子郵件正文(如有)的串聯,而使用者正在撰寫的郵件作為目標序列。儘管這種方法在預測質量方面表現良好,但它未能滿足我們嚴苛的延遲標準。

為了改善這一點,我們將 BoW 模型與 RNN-LM 結合起來,結合後的模型比 seq2seq 模型更快,而對模型的預測質量影響極小。在這種混合法中,我們通過把單詞巢狀平均分配在每個區域內,對郵件主題和之前的電子郵件內容進行編碼。然後我們將這些平均分配後的巢狀連線在一起,並在每次執行解碼步驟時將它們饋送到目標序列 RNN-LM,過程如下面的模型圖所示。

Smart Compose RNN-LM 模型架構。通過對每個欄位中的單詞巢狀平均分配到每個區域內,將郵件主題和先前的電子郵件資訊進行編碼。 隨後,平均後的巢狀會在每次執行解碼步驟時提供給目標序列 RNN-LM。

加速模式培訓與服務

當然,一旦我們決定採用這種建模方法,我們就必須調整各種模型超引數,並使用數十億個示例對模型進行訓練,所有這些操作都相當費時。 為了加快速度,我們使用了一個完整的 TPUv2 Pod 來進行實驗。如此,我們能夠在一天之內將一個模型訓練至收斂狀態。

即便訓練出了速度更快的混合模型,初始版本的 Smart Compose 在標準CPU上執行時,依舊存在著幾百毫秒的平均服務延遲,這似乎與 Smart Compose 努力幫助使用者節省時間的初衷依舊相去甚遠。幸運的是,在推斷期間可以使用 TPU 來大大加快使用者體驗。 通過將大部分計算分流到 TPU 上,我們將平均延遲時間縮短至幾十毫秒,與此同時還大幅增加了單臺計算機可處理的服務請求數量。

公平與隱私

由於語言理解模型會反映人類的認知偏差,導致得到多餘的單詞關聯和組句建議,因此在機器學習中實現公平性至關重要。 正如 Caliskan 等人在他們近期的論文 “Semantics derived automatically from language corpora contain human-like biases 從語料庫中自動匯出的語義包含類似人類的偏見” 中指出,這些關聯深深隱藏在自然語言資料中,這對於構建任一語言模型來說都是相當大的挑戰。 我們正在積極研究如何繼續減少訓練程式中的潛在偏見問題。此外,由於 Smart Compose 是基於數十億的短語和句子進行訓練,類似垃圾郵件機器學習模型的訓練方式,我們已經進行了廣泛的測試,確保模型只記憶各類使用者使用的常用短語。

未來研究方向

我們一直致力於通過遵循最先進的架構(例如,Transformer,RNMT +等),並嘗試最新和最先進的訓練技術,不斷提高語言生成模型的預測質量。 一旦模型的實驗結果能夠滿足嚴苛的延遲約束條件,我們就會將這些更先進的模型部署到產品中。此外,我們還在努力整合個人語言模型,旨在使它能夠在系統中更加準確地模擬不同使用者的個性化寫作風格。

鳴謝

Smart Compose 語言生成模型由 Benjamin Lee,Mia Chen,Gagan Bansal,Justin Lu,Jackie Tsay,Kaushik Roy,Tobias Bosch,Yinan Wang,Matthew Dierker,Katherine Evans,Thomas Jablin,Dehao Chen,Vinu Rajashekhar,Akshay Agrawal, Yuan Cao,Shuyuan Zhang,Xiaobing Liu,Noam Shazeer,Andrew Dai,Zhifeng Chen,Rami Al-Rfou,DK Choe,Yunhsuan Sung,Brian Strope,Timothy Sohn,Yonghui Wu 等開發。

相關文章