個人資料
tiantianlu02 (熱門博主)
  • 博客訪問:
正文

偉大的A.I.覺醒 (三)

(2017-02-11 19:56:57) 下一個

第二部分:語言機器

 

語言的轉機

穀歌大腦不像是一個巨大的公司機構中的一個部門,更像是一個俱樂部或是學會,或一個銀河係酒家; 它目前一百左右的成員在整個穀歌組織中曆年被看作是最自由和最受尊重的員工。他們現在安置在公司主山景園區茂密的西北邊緣一個分層的兩層蛋殼建築裏,大窗戶染成危險的炭灰色。 他們的公共廚房有一個我從來沒有見人用過的足球桌; 一個沒人玩的搖滾樂隊遊戲裝置; 和一副我看到使用了幾次的圍棋。 (我曾經看到一個年輕的穀歌大腦研究助理向他的同事推薦熟透的菠蘿蜜,像切火雞一樣切開波羅蜜巨大的刺球。)

6月當我開始來到穀歌大腦的辦公室時,還有一些空的桌子,但大多數都貼上了便條,比如說 “傑西,6/27”。 現在這些都全坐滿了。 當我第一次訪問時,停車還不是一個問題。 最近的空位是孕婦車位或為特斯拉保留的位子,但在停車場其餘的地方還有足夠的空間。 到10月份,如果我晚於9:30到,我就不得不在街對麵找到一個地方。

穀歌大腦的成長使得Dean對公司如何處理需求感到有些擔憂。 他希望避免在穀歌成為所謂的“成功災難”,就是一個公司在理論上的能力超過了它將之轉換為一個產品的能力。 某一天,他做了一些簡單的計算,然後向公司高層做了一個兩頁的演示。

“如果將來每個人每天都對他們的安卓手機說三分鍾的話,”他告訴他們,“這是我們需要的計算數量。”他們需要將其全球的計算量翻倍或翻三倍。

他戲劇性地咽了口口水和瞪大眼睛,“那聽起來可怕。” 他猶豫地想象可能的後果說,“你必須建造新的建築群”。

然而,還有另一個選擇:就是設計,批量生產和在分散的數據中心安裝一種新型的芯片,使一切運行得更快。這些芯片將被稱為T.P.U.s或“張量處理單元”,與人們的直覺相反,它們的價值所在是它們故意比正常芯片更不精確。不是計算12.246乘以54.392,他們會給你12乘以54的敷衍答案。就數學而言,而不是隱喻,神經網絡隻是一係列的結構化的數百或數千或數萬的矩陣乘法,並且這些運算的快速比精確更重要。Dean說,“通常專用硬件不是一個好主意。 它可以加速一件事。 但是由於神經網絡的通用性,你可以利用這個專用硬件來處理很多其他事情。”

隨著芯片設計過程接近完成,Le和兩個同事終於證明了神經網絡可能被設置來處理語言的結構。他受一個稱為“字嵌入”的想法啟發,這個想法已經存在了十多年。當你做圖像摘要時,你可以猜出摘要的每個階段的圖片樣子 --- 邊緣,圓形等。當你以類似的方式總結語言時,你基本上可以根據一個單詞的常見用法和它與語言中的其他每一個單獨的單詞之間的距離生成多維圖。機器不是以我們可能的方式“分析”數據,比如用語言規則將其中一些標識為名詞,而將其他標識為動詞。相反,它移動,扭曲和折彎多維圖上的字。在二維中,這個圖沒什麽用處。,例如,你想要“貓”在“狗”的大致範圍內,但你也想要“貓”靠近“尾巴”和“孤傲”和“頭像”,因為你想嚐試捕獲單詞“貓”和其他單詞之間所有不同的強和弱的關係。它可以與所有其他詞同時相關,但隻是在不同的維度中相關。你不能輕易地製作一張16萬維的圖,但事實證明,你可以用一千多個維度很好地代表一種語言,換句話說,一個每個詞由一千個數字的列表代表的宇宙,當我不斷地企圖從心理上來想象這些多維圖時,Le好意地為難我,他會以巴樂比式的直率和固執說, “Gideon,我一般不喜歡嚐試在三維空間中想象一千維向量。”

然而事實證明,空間中的某些維度似乎代表了清晰的人類分類,如性別或相對大小。 如果你把一千位數字代表的“國王”真的減去代表“女王”的一千個數字,你得到的數值結果會和你從代表“男人”的數字減去代表“女人”的數字結果相同。至少在理論上,如果你用整個英語的空間和整個法語的空間,你可以訓練一個網絡學習如何用一個空間中的句子在另一個空間裏找到對應的句子。你隻需要給它一端輸入數百萬英語句子和另一端輸出他們想要的對應法語,隨著時間的推移,它會認識到字之間的相關模式,就如圖像分類器識別像素中的相關模式一樣。 你可以給它一個英語句子,並要求它預測最好的法語對應句子。

然而,字和像素之間的主要區別在於,圖像中的所有像素同時存在,而詞隨著時間的推移出現。 你需要一種方式讓網絡“牢記”時間序列的進展,從第一個詞到最後一個詞的完整路徑。 在大約一個星期的時間裏,2014年9月,有三篇論文出版了,一篇是Le,另外兩篇是加拿大和德國的學者。它們最終提供了做這項工作所需的所有理論工具。這項研究允許做開放式的項目,如穀歌大腦的Magenta,一個關於機器如何能夠產生藝術和音樂的研究。 它也為工具任務如機器翻譯掃除了障礙。 Hinton告訴我,他當時認為這項後續工作至少需要五年多時間.

 

伏擊

Le的論文表明,神經翻譯似乎是可能的,但他隻使用了一個相對較小的公共數據集。 (對穀歌來說是小,實際上它是世界上最大的公共數據集。舊的穀歌翻譯十年來已經收集了大約一百倍到一千倍的生產數據。)更重要的是,Le的模型對長於約七個字 的句子並不是很有效。

Mike Schuster,一位當時穀歌大腦的研究科學家,接過了接力棒。 他知道如果穀歌沒有找到一種方法來將這些理論洞察擴展到生產水平,別人一定會。 接下來的兩年他都在做這個項目。Schuster說,“一般人以為翻譯東西隻是用數據來運行實驗就行了,其實根本不是這回事。”

Schuster是一個挺直,專注,看不出年齡的人,有曬得黑黑的活塞形頭,窄肩,穿著膝蓋下麵收口的長迷彩軍短褲和霓虹綠色耐克鞋。他看起來好像從蓮座上醒來,伸手去拿他的小而無邊的橢圓形眼鏡,他吃的卡路裏隻有幹橡子那麽多,上班路上還會順便完成一個輕鬆的沙漠十項運行; 在現實中,他告訴我,這不過是單程騎18英裏的自行車。Schuster在前西德的高爐區杜伊斯堡長大,他研究電氣工程,後來前往京都從事早期的神經網絡工作。在20世紀90年代,他用一個像會議室那樣大的神經網絡機器進行實驗; 花費了數百萬美元,花好幾個星期來訓練它做一些現在台式電腦可以在不到一個小時做的事情。在1997年他發表了一篇論文,十年多年來都很少有人引用,但今年它就被引用了大約150次。他不是沒有幽默感,但他經常帶有一種嚴厲的表情,我覺得這是他的德國克製和日本克製的標誌性組合。

Schuster必須處理的問題是頭緒繁雜的。 首先,Le的代碼是定製的,並且它與穀歌當時開發的新的開源機器學習平台TensorFlow不兼容。 Dean在2015年秋季向Schuster分派了另外兩名工程師Wu Yonghui和Zhifeng Chen。他們花了兩個月的時間在新係統上複製Le的結果。Le也在旁邊,但即使他也不總能搞清楚他們所做的。

正如Schuster所說,“有些東西不是完全有意識來做的。 他們自己也不知道是怎麽做出來的。”

今年二月,公司的一個鬆散部門,有大約一千名員工,致力於前瞻性和不可分類的工作的穀歌研究機構 在舊金山聯合廣場的威斯汀酒店開退休會, 這個豪華酒店略略不如一英裏以東穀歌自己的舊金山東分部。 上午是幾輪“閃電談”,快速通報研究前沿進展,下午是鬆散的跨部門“協調討論”,目的是希望為不可預測的,傾斜的 ,貝爾實驗室式的交流提供一個場合,從而保持一個成熟的公司多產。

在午餐時間,Corrado和Dean一起去找穀歌翻譯的主管Macduff  Hughes。Hughes正在獨自吃飯,兩個穀歌大腦的成員各坐在他一側。 正如Corrado所說,“我們伏擊了他。”

“O.K.,” Corrado屏住呼吸製造效果,對疑慮的Hughes說,“我們要跟你說件事。”

他們告訴Hughes,2016年似乎是一個考慮用神經網絡來對穀歌翻譯進行改造的好時機。 穀歌翻譯有上百工程師超過10年的代碼。 舊係統工作的方式和過去30年所有機器翻譯的方式一樣:它把每個連續的句子隔絕成片段,在一個大的用統計導出的詞匯表上查找這些詞,然後用一組後處理規則來附加適當的結尾和重新排列讓句子通順。 這種方法被稱為“基於短語的統計機器翻譯”,因為在係統處理下一個短語時,它不知道上一個短語是什麽。 這就是為什麽穀歌翻譯的輸出有時看起來像一包搖散的冰箱磁鐵。穀歌大腦的更新如果成功的話,它可以一次性閱讀和組合整個句子。 它會捕獲上下文和一些接近於意義的東西。

這個方案的風險似乎很低:穀歌翻譯產生的利潤很有限,而且會一直如此。 對於大多數英語用戶來說,即使是對服務性能的大幅升級,也隻會被認為是預期的改進,不會受到歡呼喝彩。 但他們覺得有必要以此來證明,人性化的機器翻譯不僅在短期是必要的,而且從長遠來看也可以被證明是有轉型的意義。 在不久的將來,它對公司的業務戰略至關重要。 穀歌估計,50%的互聯網使用英語,大約世界人口的20%人口說英語。 如果穀歌要在中國或印度競爭,中國搜索引擎流量的大部分市場份額屬於其競爭對手百度,良好的機器翻譯將是它基礎設施不可或缺的一部分。 百度本身已經於2015年7月發表了一篇關神經機器翻譯可能性的開創性文章。

在更遙遠的,可預測的未來,機器翻譯可能是朝向一個以人類語言作為通用計算功能的第一步。 這將代表一個重要的也許是最關鍵的拐點:一個感覺像真正的人工智能的開發。

矽穀的大多數人都知道機器學習是一個快速臨近的地平線,所以Hughes已經預見到了這個伏擊。 他仍然有些懷疑。他是 一個溫和的,健壯的中年男人,棕紅色頭發的頭頂已經變灰色,Hughes看上去像一個典型的輸電線工程師,就是那種七十年代波音公司設計台上工作的工匠。 他的牛仔褲口袋看起來經常裝著鼓鼓的奇怪尺寸的工具,好像他正在移動尺子或熱電偶。不像許多為他工作的年輕人,他的衣著沒有公司的標記。 他知道多年來在穀歌和其他地方人們一直嚐試在實驗室裏或是規模化生產上使神經翻譯,但是都不成功。

Hughes聽了他們的建議,最後謹慎地說,聽起來好像他們也許可以在三年內把這個項目搞出來。

Dean的想法則完全不同。 “如果我們下定決心,我們可以在年底之前完成。”人們如此喜歡和欽佩Dean的一個原因是他一旦決定做一件事就能成功完成的長串記錄。 另一個原因是,他在說 “如果我們下定決心” 這類真誠的話時從不覺得尷尬。

Hughes肯定這個談話不會那麽快發生,但他自己並不介意。“讓我們準備2016年,”他回來告訴他的團隊。“我不會成為那個說Jeff  Dean不能提交速度的人。”

一個月後,他們終於能夠運行一個並行實驗來比較Schuster的新係統和Hughes的舊係統。 Schuster想用它來做英語 - 法語的翻譯,但Hughes建議他嚐試別的東西。 “英語 - 法語,”他說,“已經很不錯了,這樣的改進不會很明顯。”

這是Schuster無法抗拒這個挑戰。 評估機器翻譯的基準度量稱為BLEU分數,其將機器翻譯與許多可靠的人類翻譯的平均值進行比較。 當時,英語 - 法語的最佳BLEU分數在20多。 一個點的改進就被認為非常好了; 兩個點的改進就是超群了。

然而神經係統在英語 - 法語上顯示出了對舊係統七個點的改進。

Hughes告訴Schuster的團隊,在過去四年裏,他們在自己的係統中都沒有達到這樣強勁的改進。

為了確保這不是一個僥幸的指標,他們讓他們的合同工做了一個並行的比較。 用戶觀感評分中樣本句子被按從0到6來評分,顯示了平均改善0.4, 大致相當於舊係統在其整個生命周期的總增益。

3月中旬,Hughes給他的團隊發了一封電子郵件。 舊係統上的所有項目都將立即停工。

 

理論成為產品

在那之前,神經翻譯團隊隻有三個人,Schuster,Wu和Chen。 但隨著Hughes的支持,更大的團隊開始合並。 他們星期三下午2點在Schuster的帶領下在穀歌大腦樓的一個名為Quartz Lake的角落房間開會。 會議一般有十幾人輪流參加。 當Hughes或Corrado在那裏時,他們通常是唯一的母語為英語的人。 工程師們講中文,越南語,波蘭語,俄語,阿拉伯語,德語和日語,但是他們大多用他們高效的術語和數學。 在穀歌通常不是特別清楚誰在主持會議,但Schuster在場的時候,就沒有任何歧義。

即使是那時他們也不是完全清楚需要采取的步驟。“這個故事很多是關於不確定性的, 整個過程中的不確定性。”Schuster有一次告訴我。 “軟件,數據,硬件,人。”他伸出他長而纖細的手臂,從他狹窄的肩膀輕輕彎曲在肘部 ,“這就像在一個大泥海裏遊泳,你隻能看到這遠。”他伸出手停在胸前8英寸的地方,“有目標,或許它就在那裏。”

大多數穀歌的會議室都配有視頻聊天顯示器,當閑置時,會顯示極高分辨率,色彩豐富的Google+公開照片,包括風景,北極光或德國國會大廈。Schuster指著其中的一個顯示器,是華盛頓紀念碑水晶般平靜的夜景。

“從外麵看,每個人都有雙筒望遠鏡,可以看到前方這麽遠。”

從理論研究到他們今天這個程度可以說是殫精竭力了,學院科學家可能覺得這不過是“純粹的” 的工程部分,但試圖把理論變成一個可行的產品其實也不容易。首先,他們需要確保他們在良好的數據上進行培訓。 穀歌的數十億字的訓練“閱讀”主要是由中等複雜性的完整句子組成,就像你可能在海明威書中看到的那樣。其中一些是在公共領域:統計機器翻譯項目Rosetta Stone有數百萬頁完整的的加拿大議會雙語原始記錄。然而其中的大部分是曆時10年的數據收集,包括熱心的人類眾籌翻譯中挑出來的。開發團隊存儲了大約9700萬個獨特的英語“單詞”。但是一旦他們刪除了表情符號,拚寫錯誤和冗餘,他們的工作詞匯隻有大約16萬。

然後你不得不重新關注用戶實際想要翻譯的內容,這通常與它所使用的語言無關。穀歌發現很多人不需要翻譯完全,複雜句子的服務; 他們翻譯奇怪的語言小碎片。 如果您希望網絡能夠處理用戶查詢流,你必須確保它走這個方向。 網絡對其訓練的數據非常敏感。 正如Hughes有一次對我解釋的:“神經翻譯係統正在學習一切。 這就像一個孩子。‘哦,爸爸說那句話的時候很生氣!’”他笑了,“你必須要小心。”

但最要緊的是他們需要確保整個改造快速而可靠,讓他們的用戶不會察覺到。 在2月時,翻譯10個字的句子需要10秒鍾。 他們永遠不會引入這麽慢的東西。 翻譯團隊開始對一小部分用戶進行延遲實驗,以假的延遲形式來發現用戶的忍耐程度。 他們發現,需要兩倍的時間,甚至五倍的時間的翻譯都不會被用戶注意到。 但是八倍的減速會引起注意。 他們不需要確認所有語言都是這樣的。 在高流量語言(如法語或中文)的情況下,他們幾乎注意不到速度的減慢。 對於更稀有的語言,他們知道如果用戶獲得更好的質量,他們不會害怕輕微的延遲。 他們隻是想防止人們放棄和轉換到競爭對手的服務。

對Schuster而言,他承認他不知道是否能夠使穀歌翻譯足夠快。 他記得在公共廚房和陳的一次談話,他轉向陳說,“肯定有一些能使它足夠快的辦法,但我不知道它可能是什麽。”

其實他知道,他們需要更多的計算機“G.P.U.s”圖形處理器,重新配置在神經網絡上來做數據訓練。

Hughes去Schuster那裏問他怎麽想。“我們是不是應該要求一千個G.P.U.s?”

Schuster說,“為什麽不要2,000?”

十天後,他們增加了2,000個處理器。

到4月份,原來的三人陣容已經超過了30人,其中一些人,如Le,來自穀歌大腦,許多人從穀歌翻譯過來。 5月,Hughes為每對語言配置了一個臨時主人,他們都將自己的結果放進一個大型共享的績效評估表。 在任何給定的時間,至少有20個人正在進行他們自己獨立的一周實驗,並處理任何意外問題的出現。 有一天,一個模型沒有明顯的理由開始把句子裏所有的數字都扔掉了。 有幾個月它都隻是點到即止。 “人們幾乎大喊大叫了,”Schuster說。

到晚春,各個部分開始成形。 該團隊引入了一個名為“詞條模型”,一個“覆蓋率懲罰”,“長度正常化”的東西。每個部分的結果都有可能幾個百分點的改進,Schuster說,但總的來說效果是明顯的。 一旦模型標準化,作為一個多語言模型將隨著時間的推移而改進,而不是目前穀歌翻譯使用的150種不同模型。一個通過學習機器為更大通用化而建立的工具。自動化的過程需要非凡的,統籌的人類聰明才智和努力,這個悖論沒有失去意義。 他們做的很多隻是直覺。 你在每層用多少神經元? 1,024或512? 設多少層? 每次運行用了多少句子? 你訓練了多久了?

“我們做了數百次實驗,”Schuster告訴我,“直到我們知道我們可以在一個星期後停止訓練。你總是問自己:我們什麽時候停下來?我怎麽知道我完成了?你永遠不知道你做完了。機器學習機製從來不是完美的。你需要訓練,但在某些時候你必須停止。這是整個係統非常痛苦的本質。對一些人來說很難。有一點像藝術, 就像你用畫筆讓它更好看。這是從做的過程中來的。有些人會做的不錯,有些會做的更糟。”

到5月份,穀歌大腦團隊了解到,他們唯一能夠使係統能夠快速運作變成產品的唯一方法是在T.P.U.s上運行,這是Dean所要求的專用芯片。正如Chen所說:“我們甚至不知道代碼是否能工作。但是我們知道沒有T.P.U.s肯定不行。”他記得在和Dean麵對麵開會時請求,“請為我們保留一些處理器。” Dean保留了。然而T.P.U.s一開始不能正常工作。Wu花了兩個月時間坐在硬件團隊的人旁邊,試圖找出原因。他們不隻是調試模型; 他們也在調試芯片。神經翻譯項目將成為整個基礎設施投資的概念項目。

6月的一個星期三,在Quartz Lake的一個會議開始時大家在悄悄談論一篇百度的論文,最近剛出現在學科的首席在線論壇上。Schuster給房間帶來了秩序。 “是的,百度出了一篇論文。感覺就像有人從肩膀後麵看我們, 類似的架構,類似的結果。” 百度的BLEU分數基本上是穀歌在2月和3月的內部測試中取得的成績。 Le似乎沒有給攪擾到。他的結論是這似乎是證明穀歌走在正確軌道上的一個記號。 “這與我們的係統非常相似,”他安靜地同意。

穀歌團隊知道他們應該早點發布他們的結果,也許打敗他們的競爭對手,但正如Schuster所說:“發布比發表更重要。人們說,‘哦,我第一個做成了一件事,’但最終誰會在意?”

然而,這確實使他們明確地認識到要更快更好地推出自己的服務。Hughes有一個幻想,他們甚至不會通知他們的用戶切換的發生。他們隻是等著看社交媒體是否會對這些巨大的改進產生懷疑而熱鬧起來。

“我們還不想說這是一個新的係統,”他在勞動節後兩天下午5:36告訴我,這是他們沒有告訴任何人,向10%的用戶推出中英文前的一分鍾。 “我們想確保它的運轉。最理想是它在Twitter炸開鍋了:“你注意到穀歌翻譯現在有多棒了嗎?”

 

慶功

在無四季的矽穀,兩個唯一可靠的時間測量方法是公共廚房裏季節性水果的輪換,從仲夏的李子到早秋的亞洲梨和柿子,以及曲折的技術進步。在9月下旬一個很熱的星期一下午,穀歌團隊的論文終於發表了。它有幾近滑稽的31位作者。第二天,穀歌大腦和翻譯部的成員聚集在一起,在翻譯部的公共廚房為自己舉行一個慶功會。 穀歌大腦大樓的房間,可能是為了紀念他們流離的漫長冬天,全以阿拉斯加的地名命名; 翻譯部大樓的主題是夏威夷。

夏威夷公共廚房的一麵牆上有一幅輕微顆粒狀的海灘照片,一個小花環茅草服務櫃台小屋,櫃台中間有一隻毛絨鸚鵡,天花板上掛著類似紙燈籠的裝置。兩排稀疏的竹筒排在兩側,像一個防守鬆弛的熱帶堡壘前哨。竹筒後麵,玻璃牆和門通向兩側兩排相同的灰色辦公桌。那天早上,紀念穀歌翻譯成立10年的新連帽運動衫來了,許多團隊成員換上了衣服從他們的辦公室來參加聚會。他們的慶祝一部分是為翻譯十年來的團隊合作在那一天走向了退休。在另一個機構,這些新的連帽衫可能成了喪服,但兩個團隊的工程師和計算機科學家都似乎很開心。

穀歌的神經翻譯終於工作了。到聚會時,公司的漢英測試已經處理了1800萬條查詢。一個翻譯團隊的工程師正拿著手機跑來跑去,試圖用百度把整個句子從中文翻譯成英語。他興高采烈地向任何願意聽他的人說, “如果你一次輸入兩個以上的字符,它會超時!”(百度說,這個問題從來沒有被用戶報告過。)

在接下來的幾個星期裏消息傳開,穀歌已經引入神經翻譯中文到英語,有些人推測,這是因為這是公司唯一的花了努力的語言。每個參加了聚會的人都知道他們的成就在11月將一目了然。然而到那時,他們中的許多人將進入其他項目。

Hughes清了清嗓子,走到了蒂基酒吧前。他穿著一件褪色的綠色馬球衫,衣領皺巴巴的,中間是淡淡的圖案和汗水幹後的黑色條紋。他們最後一刻遇到了問題,然後最後一分鍾又遇到了問題,包括在論文上一個非常大的測量誤差和一個奇怪的標點符號係統中的錯誤。但一切都解決了,至少那一刻基本解決了。客人安靜下來。Hughes主持了高效率和富有成效的會議,對於打岔或竊竊私語極少容忍,但這個場合的重要性讓他停頓了片刻。他承認他可能誇大了一個比喻,但重要的是他要強調這個事實,神經翻譯項目本身代表了一種“使用不同語言的團體之間的合作”。

他繼續說,他們的神經翻譯項目代表了一個“向前的階躍函數”,即一個不連續的進步,一個垂直的飛躍,而不是一個光滑的曲線。相關的翻譯不隻是在兩個團隊之間,而是從理論到現實。他舉起一個看起來很貴的塑料笛子的香檳。

他說,“為交流,為合作!”

工程師們聚集在一起互相看著,給自己一點小小的遲疑的歡呼和掌聲。

Jeff  Dean與Corrado和Schuster站在公共廚房的中心附近,他的手在他的口袋裏,肩膀稍微向內彎。 Dean看到有一些人希望他為這個場合說幾句,他以特有的低調做了一個輕快簡潔的補充。

Dean說,他們所展示的是他們可以同時做兩件大事:“做研究,然後把它推廣到,我不知道,5億人麵前。”

每個人都笑了,不是因為它是一個誇張,而是因為它不是。

[ 打印 ]
閱讀 ()評論 (2)
評論
tiantianlu02 回複 悄悄話 草稿是,加後期潤色和修正
新中美 回複 悄悄話 這篇文章也是用google翻譯的?
登錄後才可評論.