揭秘谷歌AI實驗室:開源智能系統TensorFlow的誕生地
TensorFlow:谷歌人工智能的2.0
2007年12月,谷歌推出移動操作系統Android,此時距iPhone第一代發售僅僅過了6個月。與當時市面上的移動操作系統不同的是,Android是一款開源的操作系統,所有手機廠商、開發者都可以在開源協議基礎上進行自定制開發。8年之后,搭載Android的智能手機已經占據了智能手機市場的八成份額。近日,谷歌再次發布一款開源產品TensorFlow,這次瞄準的是人工智能。
谷歌宣布將內部一直使用的機器學習系統TensorFlow開源,將此系統的參數公布給業界工程師、學者和擁有大量編程能力的技術人員。開源的TensorFlow可以讓深度學習從業者甚至大學生們都可以與世界上最領先的人工智能技術平臺一起工作。谷歌此舉或將奠定自己在人工智能領域的權威地位。
TensorFlow是谷歌的第二代人工智能系統,該系統將機器學習算法變成了符號表達的各類圖表,從而有效縮短了重新寫代碼的時間。TensorFlow的命名起源于該系統的運作原理,即復雜的數據結構(Tensor)將會被傳輸至人工智能神經網中進行分析和處理,這一 過程是機器深度學習的核心部分。
長期以來,谷歌一直非常積極地對機器學習進行研發。谷歌在2011年推出了第一代機器學習系統“DistBelief”,就是這個大名鼎鼎的系統自動從大量Youtube圖片中識別出了“貓”;并讓谷歌的語音識別準確度提升了25%;在Google Photos中實現了圖片搜索。如今的TensorFlow系統是在第一代產品的基礎上發展起來的,并對早期系統的不足進行了改進。谷歌在官方博客上表 示,比起舊系統,TensorFlow更快、更靈活以及更聰明,在建立和訓練機器學習模型方面比第一代人工智能系統快五倍。谷歌CEO Sundar Pichai在博客中寫到,TensorFlow更快的速度使我們能夠更快的提升產品表現。
TensorFlow與舊系統的區別在于,TensorFlow沒有被束縛在谷歌自身的IT架構內,能夠被任何有相關背景的人基于合適的IT資源進行配置。
外界對TensorFlow的評價
對于TensorFlow,第一個問題就是為何要開源。谷歌官方的解釋是,將技術免費開放是希望可以加速人工智能領域的發展。所有人都可以幫助Google改進其技術,并將成果反饋回來。正如Google深度學習項目的主要推動者Jeff Dean所說:“我們希望的是,整個研究、開發者社區將TensorFlow作為一種很好的手段來實現各種各樣的機器學習算法,同時也為其在各種場景下的應用帶來改進。”如果此次開源能夠使更多的數據科學家開始使用谷歌的系統來從事機器學習方面的研究,那么這將有利于谷歌對日益發展的機器學習行業擁有更多的主導權。
Jeff Dean的觀點也得到了創業公司的積極響應,深度學習創業公司Skymind的CEO克里斯·尼古森說:“這是很有趣的一件事,谷歌(在這一領域)領先整個世界五到七年。如果他們將軟件開源,那將改進每一項機器學習研究。”
當然,谷歌也并非完全毫無保留。目前開源的是其引擎中較為頂層的算法,也沒有開源其硬件基礎設施系統。而且,谷歌也不是第一個將深度學習系統開源的科技巨頭。
Yann LeCun在Facebook上轉了一篇紐約時報Bits報道TensorFlow的文章,并評論說:“如果放在幾年前,誰會想到一篇關于深度學習開源庫的文章會發布在紐約時報科技頻道(Bits)上?”補充一下 (以便大家不要誤解我的含義): 我認為TensorFlow 非??幔覍雀璧呐笥褌儗⑵溟_源表深表贊同。
其實,Yann LeCun是在非常狡猾的提醒用戶,Facebook早在今年一月份就公布了一個機器學習的開源項目,他們將一些基于機器神經網絡的產品免費放在了 Torch(一個關注深度學習的開源軟件項目)上,可以用來處理數據,分析信息的共同特征。Facebook人工智能實驗室的研發工程師Soumith Chintala對此表示,將人工智能和神經網絡公開是十分有用的,他也是Torch項目的創始人之一。他說,除了大公司之外,Torch也會用于創業公司和大學實驗室。
除了Torch之外,深度學習方面的開源軟件框架還包括Theano和Caffe。斯坦福大學的計算機科學家Christopher Manning在試用過TensorFlow之后表示令其印象深刻,“它在深度學習工具中表現的更好更快。”他認為TensorFlow將廣泛用于公司的研究人員和高校的學生中間。對此,斯坦福大學計算機教授Christopher Manning深有感觸,過去三個月里,他的學生們已經和TensorFlow并肩作戰,而在試用幾周后,Manning決定將其納入到自己的課程里。
艾倫人工智能研究所執行董事Oren Etzioni對谷歌的這一行為評價道,這是谷歌整個平臺戰略的一部分,來吸引開發者的機器學習人才。但比起提供云服務的IBM、微軟和亞馬遜,谷歌確實在做一些更加開放的工作。MIT斯隆管理學院的教授Michael A. Cusumano則認為,即便TensorFlow是開源,但如果它能獲得成功,將毫無疑問成為谷歌的賺錢機器。
對于TensorFlow將來發展遇到的問題,計算機視覺開源項目主席、計算機科學家 Gary Bradski說,決定這個平臺成功與否的關鍵在于,谷歌如何處理代碼升級的控制權問題,是這個開放社區有發言權,還是由谷歌控制批準官方版本。
TensorFlow的源頭:神秘的谷歌人工智能實驗室
不管第一代的DistBelief,還是剛發布的TensorFlow,都是來源于谷歌人工智能實驗室。從某種意義上說,谷歌正在從一家搜索公司轉變為一家機器學習公司。而在這家公司內部神秘的人工智能實驗室里,我們也看到谷歌統治人工智能的野心。
接近谷歌內部的認識透露,谷歌內部并不喜歡“Artificial intelligence”這個詞,他們認為有太多貶義的成分,他們更熱衷于創造一種智能,也就是機器智能。
很多使用谷歌服務的人已經能感覺到這種機器智能,比如Android手機上的Google Now,就是一個貼心的虛擬助理產品;比如谷歌相冊,能夠自動識別、自動分類;比如使用了TensorFlow谷歌郵箱的自動回復,能夠基于收到郵件的關鍵詞自動回復……這與谷歌CEO Sundar Pichai上月財報電話會議中的表態一致:
機器學習是一種核心的轉變方式,通過機器學習,我們再重新思考我們所從事的一切。我們目前正處于初期階段,但用戶將看到谷歌以系統的方式來思考我們將如何把機器學習應用到所有的這些領域。
那么,到底谷歌內部誰在負責人工智能研發?這個問題幾乎無法回答,谷歌工程副總裁 John Giannandrea認為,谷歌采用的是“嵌入式模式”,換句話說,每個團隊都有人員研究人工智能。
過去幾年,谷歌一直專注人工智能研發,從某種意義上說,TensorFlow就是這幾年努力的結晶。 TensorFlow的負責人之一Jeff Dean對于TensorFlow的在更大范圍內的普及持審慎態度。他表示,谷歌只是負責提供了一個工具,還需要開發者能夠快速開發、部署相關產品。 Dean說:“我們的出發點是加速機器學習的研究和部署。”
10月初,Jeff Dean在BayLearn15的演講中首次公布了Google TensorFlow,并表現越來越來越多的谷歌開始使用這個系統。
盡管谷歌公司一向以開放文化著稱,但當記者進入谷歌人工智能實驗室時,還是感到了某種保密的空氣。一位谷歌工程師看到記者并沒有攜帶員工工牌,走過來詢問記者的身份。
#p#
谷歌所謂的“嵌入式模式”的人工智能研究對記者而言,就是需要奔波于各個辦公樓之間。谷歌的員工們一般騎自行車穿梭于不同辦公區,不同的辦公區有不同的產品團隊,嵌入式的人工智能團隊也和記者一樣,不斷切換自己的工作地區和工作內容。
從公司架構上,谷歌的確有一個團隊在解決機器智能的通用型問題,并將其工作反饋給不同的產品組,比如相冊、語音搜索和搜索等等。這個團隊還會挖掘一些還沒有產品原型的問題,Giannandrea列舉了谷歌對于手寫設別的關注:“我們特別想理解人類手寫的方式,會不斷在這個領域加大投入,即便目前還沒有產品出來。”事實上,手寫識別已經部分應用到谷歌筆記類應用Keep上面了,或許下一步就可以自動識別了。
這個通用型的團隊被分成不同的小組,有的專注于如何教會計算機識別,有的則研究計算機理解語言的方法,也有的在探索提升語音識別的方式。Giannandrea告訴記者:“沒有哪家公司比谷歌更熱衷于語音識別、翻譯和語言理解,谷歌會持續投入到這些領域。”
目前約有1000人的團隊在進行人工智能相關領域研究,既包括基礎理論研究者也包括實施團隊成員。谷歌在完成重組之后,其母公司Alphabet并不會干涉谷歌的人工智能研究,而且也不影響與Alphabet其它子公司,包括生命科學集團、谷歌X實驗室的協作。
谷歌近幾年來不斷優化語音搜索,無論是Android設備、iOS的App還是桌面瀏覽器Chrome上,搜索欄上的語音搜索標記都格外醒目。很多人都將語音搜索作為對抗蘋果Siri的武器,但在谷歌眼里,語音搜索成為谷歌海量數據的第二大來源,而在語音識別團隊的努力 下,這個產品也越來越受歡迎。
盡管沒有確切數字,但移動端的搜索已經比桌面搜索請求更多,移動語音搜索也在去年有了大幅增長。僅以美國地區來說,約有50%的美國移動終端用戶知道可以使用谷歌語音搜索,約有三分之一的用戶的確在使用了。
Françoise Beaufays是語音團隊的幕后功臣之一,他表示能有如此之高的普及是因為產品的確越來越好。“當我們剛開始做語音識別時,用戶對我們沒有多大信心。我 們能感覺到,盡管用戶也使用我們的產品,但毫無疑問我們的產品還不夠好。而如今,越來越多的人可以自然地在自己辦公室使用我們的產品。”
在Françoise Beaufays的帶領下,谷歌語音團隊采用新的神經網絡代替之前傳統的語音識別體系。Beaufays介紹道,要讓機器懂得語音,需要讓機器首先學會單詞和短語是如何表述的,這意味著要大量語音數據。然后再將這些數據通過算法,形成一個語音圖譜,這個圖譜里包括各個單詞、短語是怎么表達的,換句話說,要有各種口音的語音數據才能讓這個圖譜更準確。
谷歌將大量用戶語音搜索的數據作為訓練機器的“教材”,當用戶用語音搜索一句話后,這段語音會上傳到谷歌服務器,而訓練的第一步則是抹去一些重要信息,比如時間點、地理位置信息、用戶個人資料等等,只剩下最原始的語音,有時為了讓機器更聰明,研究者們還會通過軟件模擬更多人的語調讓機器識別。
這種算法極大地提升了谷歌語音搜索的準確性,兩年前,語音搜索的錯誤率高達25%,如今錯誤率只有8%。
當谷歌相冊問世時,很多人稱贊這款產品的智能程度,但也有不少人擔憂其對個人隱私的擔憂。谷歌工程師Drago Anguelov表示:沒有人會看到用戶的圖片,機器也不會看到。“我們在公開數據中訓練機器,這些數據任何人都可以拿來使用。但這些數據太標準,和人們拍出的真正照片差別巨大。”
谷歌對圖像的訓練體現在一個名叫Deep Dream的產品中,它采用了包括10—30層人工神經元,每一層會識別不同抽象程度的圖像,通過提取上一層圖像的特征進行進一步處理,圖片被層層解讀,最后得到重塑的新圖片,比如讓機器識別一顆樹:
而機器所看到的卻是這樣子的:
這些看似沒有價值的圖片實際上也是機器學習圖片后的反饋,利用這種反饋再進行訓練,會讓機器變得更聰明。
這也是Smart Reply的研發模式。
上周谷歌發布了郵箱工具Inbox的智能回復功能Smart Reply,同樣基于TensorFlow。Gmail產品總監Alex Gawley說:“我們看到了我們團隊在神經網絡建設方面的巨大能量,這將可以幫助我們更好地理解和組織(語言),比如回復郵件。”
Inbox團隊首先在內部上線了該功能,不斷通過海量數據“喂養”機器,當機器回復時,告訴機器哪些是正確的,哪些是錯誤的。這也是機器學習的一般方式。在整個團隊的訓練、反饋、再訓練再反饋之后,整個產品才上線。
這種內部的測試能夠讓研究者了解當海量數據進入神經網絡之后可能出現bug,比如,一開始,Smart Reply會回復很多“I love you”,但由于只局限在私人郵件數據里,“I love you”是一個常用的短語,因此機器誤以為這是一個很重要的詞匯。通過大規模的數據訓練,機器能夠進一步理解不同性質郵件中的重要詞匯。
而谷歌機器智能的集大成者毫無疑問是Google Now,“讓正確的信息出現在正確的場合”是Google Now團隊的目標和方向。作為Google Now的老大,Aparna Chennapragada表示:這款產品就是讓人類的生活變得更加簡單,五年前,Aparna Chennapragada希望通過語音識別來實現,但隨后發現,這并非一種好的方式。
Google Now要做的就是利用三種不同的數據建構一個數字助理,谷歌將手機看作注意力工具,而一個合適的助理型服務不應該讓用戶感到信息超載。
Aparna Chennapragada表示:如果你去查看人們使用智能手機的方式,你會發現用戶往往是在一些碎片化時間使用,你真正要找的信息真的很少。我們要思考如何代表你去挖掘到這些有用的信息。這就是谷歌對于搭載機器智能的手機的終極定位:一個真正的個人數字助理,擁有超強的預測能力和海量的知識,可以成為你大腦的數字化延伸。
Google Now得益于谷歌之前在知識圖譜技術方面的積累。如果你在谷歌搜索框里搜索“中國的首都是哪里?”,你會直接得到北京這個答案,而不是一堆包含北京的鏈 接。2012年推出的知識圖譜也是谷歌人工智能第一次布局到主要產品中,如今,每天大約有15%的搜索請求會由這些技術應對。前不久,谷歌透露了基于人工 智能模式的搜索技術RankBrain。
當然,谷歌人工智能實驗室還有另一個重磅武器——Geoffrey Hinton,他可謂是將深度學習帶入谷歌的第一人。Hiton也許是全世界研究神經網絡系統最早的專家,在1980年代中期,他就是人工智能技術的先驅(他提到在16歲時就開始思考神經網絡)。
早在 80 年代初期,當Hinton和他的同事們剛開始相關研究時,那時的電腦還不夠快,不足以處理有關神經網絡的這些龐大的數據,他們取得的成就是有限的。而當時 AI普遍的研究方向也與他們相反,都在試圖尋找捷徑,直接模擬出行為,而不是試圖通過模仿大腦的運作來實現。大約十年前,在多倫多大學Hinton的實驗室,他和其他研究者取得了一項突破性進展,突然使神經網絡成為人工智能領域最熱門的話題,這些研究者精通建立多層模擬神經元結構以使整個系統能夠被訓練, 或者進行自我訓練,然后來預測隨機輸入值的相干性。
2007年,Hinton在山景城進行了關于深度學習的谷歌技術演講,極客們踴躍出席,這一演講在YouTube上也大受歡迎。后來,Hinton的學生去了IBM、微軟,當然還有谷歌。所有人都能自由使用Hinton實驗室的成果用以完善各自系統。Hinton表示,“有趣的是,微軟研究院和IBM先于谷歌得到這項(深度學習)技術,但是在將技術轉變成產品方面谷歌卻比任何人都迅速。”
這對谷歌搜索意義重大,利用深度學習理解真實世界,在為用戶提供準確答案和信息方面向前邁出一大步。不管從內部的產品邏輯,還是剛剛開源的TensorFlow,谷歌的人工智能一直秉承著“整合全球信息,使人人皆可訪問并從中受益”的使命,接下來,谷歌在人工智能方面還會有哪些驚喜帶給我們,不妨拭目以待!