谷歌首席科學家:Google的深度學習強在哪?

2020-12-15 網易科技


文|董飛 LinkedIn高級工程師(微信公眾號:董老師在矽谷)

整合意味著理解

如果你不理解信息中的奧秘,那麼你也很難去組織它。

Jeff Dean是Google系統架構組院士,在講座:「大規模深度學習構建智能計算機系統」中提到這句和Google的使命:整合全球信息,使人人皆可訪問並從中受益。早期他們通過收集,清理,存儲,索引,匯報,檢索數據完成「整合」的工作,當Google完成這個使命,就去迎接下一個挑戰。

理解到底是什麼含義?

看到這張圖,你馬上知道是小寶寶抱著泰迪熊睡覺。而看到下張街景,馬上意識到紀念品店裡面有打折信息。其實直到最近,計算機才可以提取圖片中的信息。

如果想從圖像去解釋物理世界,計算機需要去選擇跟那些感興趣的點,閱讀文字並去真正理解。

像下面的文字「car parts for sale(賣汽車配件)」,傳統的Google通過關鍵字匹配來給出結果,但更好的匹配是第二個。這是一個需求深度理解的過程,而不能停留在字面,要去做一個優秀搜索和語言理解產品。

Google的深度神經網絡歷史

Google跟其他公司的不同是,2011年就開始Google大腦計劃,當時想通過使用神經網絡來提升技術水準,但並沒有把研究做成像大學象牙塔那種,而是結合安卓,Gmail,圖片去改進產品解決真正問題。這對其他公司也是很好的借鑑,把研究和員工工作結合起來

神經網絡老早就開始研究,上世紀60年代發明,在80年代和90年代早期也流行過,後來又不火了。

兩個原因:

1)缺少計算能力去訓練數據模型,這樣也不能用來做更大規模的問題;

2)缺少大量有效的數據集。而Google通過算法的力量,在加上他們強大的基礎架構,海量數據集創造了AI的絕佳溫床。

深度學習一開始從少數的產品組開始,一段時間後反響很好,能解決之前不能做的,就更多的團隊開始採納。使用深度學習的產品有:安卓,Apps,藥品發現,Gmail,圖片理解,地圖,自然語言,圖片,機器人,語音翻譯等。

深度學習能應用到很多領域原因是那些通用模塊:語音,文字,搜索詞,圖片,視頻,標籤,實體,短語,音頻特性。輸入一類信息,決定你想要的輸出,收集訓練數據作為你想要計算的潛在函數,然後就放手不管了。

模型很贊的原因是因為灌了很多原始形式的數據。你不需要教工程師很多特徵點,模型的力量在於從觀察一些例子就能自動識別數據中的有用信息。

深度神經網絡是什麼?

神經網絡就是一些從數據提煉的複雜函數。從一個空間輸入在轉化為另一個空間的輸出。這裡的函數不是像平方,而是真正複雜的函數。當你給出一些原始像素,比如貓,而輸出就是對象的類別。

深度學習中的「深度」指的是 神經網絡中的層數。這個系統的良好性質是一組簡單的可以訓練的數學函數集合。深度神經網絡適用於很多機器學習風格。

比如你給輸入一張貓的圖片,輸出是人工標記的貓圖片,這是 監督學習。你把很多這樣監督樣本給系統,讓它去學習近似的函數,如同從監督樣本中觀察出來的。

還有一種是非監督學習,給出一個圖片,你也不知道裡面是啥,系統可以學習去尋找在很多圖片中出現的模式。這樣即使不認識圖片,它也能識別所有的圖片中都有一隻貓。

增強學習也適用,這也是AlphaGo用到的技術。

什麼是深度學習?

深度網絡模型是類似於大腦行為的原理。但不是具體模擬神經元如何工作。而是一種簡單抽象的神經元版本。

神經元有一組輸入。真正神經元會有不同的強度的輸入。在人工智慧網中試圖去學習到這些邊上的權重,去加強不同輸入的聯繫。真正神經元通過輸入和強度的組合去決定要不要生成脈衝。

人工神經元不會產生脈衝,但會生成一個數值。神經元的函數就是通過非線性函數計算輸入的加權乘以權重之和。

典型的非線性函數就是整形線性單元(max(0, x)),在90年代很多非線性函數是很平緩的sigmoid()函數或者tanh()函數。但對於神經元來說產生的數值是不是更接近0對優化系統更有利。比如如果神經元有3個輸入 X1, X1, X3,權重分別是 -0.21, 0.3, 0.7,計算就是

y = max(0, -.0.21*x1 + 0.3*x2 + 0.7*x3)。

為了決定圖片到底是貓還是狗,這個圖片要經過很多層。這些神經元根據輸入來產生下一步。

最低層的神經元會查看像素的小塊。更高層的神經元會看下層神經元的輸出再決定是否生產。

這個模型也會錯,比如說這裡是貓,但事實上是狗。那麼做錯誤決定的信號就會返回到系統中做調整,讓剩餘的模型在下一次查看圖片時候,更可能輸出狗。這就是神經網絡的目標,通過模型小步調整邊的權重讓它更可能去得到正確答案。你可以通過所有樣本去聚合,這樣可以降低錯誤率。

學習算法其實比較簡單如下

  1. 1、選擇隨機訓練樣本「(輸入,標籤)」,比如上面貓圖和想要的輸出標籤,『貓』

  2. 2、運行神經網絡,在輸入上去查看它產生的。

  3. 3、調整邊的權重讓最後輸出更接近於「標籤」上的。

如何調整邊的權重去保障輸出更接近於標籤呢?

反向傳播:積分的鏈式法則在決定高層神經網絡中使用,如果選擇是貓而不是狗呢?得想辦法去調整高層的權重去讓它更可以決定是「狗」。

根據箭頭方向和權重去讓它更可能說是狗。不要步子邁得太大因為這種表面很複雜,微調一小步讓它下次更可能給出狗的結果。通過很多迭代以及查看例子,結果更可能會是狗。通過這個鏈式法則去理解底層參數改變是如何影響到輸出的。說白了就是網絡變化迴路反饋到輸入,使得整個模型更適應去選擇「狗」。

權重的微調

真正神經網絡通過億級的參數在億級的維度做調整,去理解輸出網絡。Google目前有能力如何快速搭建和訓練這些海量數據上的模型,去解決實際問題,在快速去不同廣泛的平臺去部署生產模型(手機,傳感器,雲端等)。

神經網絡的奇妙特性

就是說神經網絡可以用在很多不同問題上。

如果吸收更多數據,讓模型變大,結果也更好。

如果你輸入更多數據,但沒有把模型變大,模型的能力就會受限在一些數據集中的明顯特徵。通過增加模型的規模,讓它不僅記住明顯的,還有一些也許出現很少的細微特徵。

通過更大的模型,更多數據,計算需求也更大。Google很多精力花在如何提升計算量,訓練更大的模型。

在Google深度學習有哪些強大應用?

1)語音識別

第一個部署深度神經網絡的小組。他們實現的新模型基於神經網絡而不是隱馬爾可夫模型。這個問題是把從150毫秒的語音去預測中間10毫秒吞掉的聲音。比如到底是ba還是ka的聲音。你得到一個預測的序列,再通過語言模型去理解用戶所說。

一開始的版本就把識別錯誤率降低了30%,確實非常厲害。後來就研究一些複雜模型去加強網絡,進一步降低錯誤率。現在當你對著電話說話,語音識別比五年前強多了。

2)ImageNet挑戰

ImageNet是6年前公布的。裡面有100萬張圖片,算是計算機視覺領域最大的。圖片中包含1000種不同分類,每一類有1000張圖片。比如裡面有上千張不同的豹子,摩託車等,一個麻煩的是不是所有的標籤都是對的。

在神經網絡使用之前,最好的錯誤記錄是26%,2014年 Google錯誤率暴降到6.66%取得冠軍,然後到了2015年錯誤率下降到3.46%。這是什麼概念,大家注意到Andrej人類的錯誤率也有5.1%(他還是花了24小時訓練後的結果)。

總之這是個又大又深的模型,每個盒子就像神經元的一層去進行卷積操作。

3)圖片類別識別

計算機在花卉識別上很強大,這是非常好的模型,能夠識別細微差別。

一般的效果,比如在菜品識別。

計算機也有犯錯的時候,關於錯誤敏感性看一看上面的,比如左邊鼻涕蟲當成蛇,右邊也不知道是什麼鬼。

4)Google圖片搜索

理解圖片中像素的能力,Google圖片團隊開發了不用標籤就可以搜索圖片的功能。比如你可以去找雕像,素描,水,而不需提前標註。

5)街景圖像

在街景中如何識別裡面的文字。首先要找到文字部分,模型能夠去有效預測像素中熱點圖,那些含有文字的像素點。訓練的數據就是包含文字劃分的多邊形。

因為訓練數據中包括不同的字符集,這樣在多語言下也沒問題。也要考慮大小字體,遠近,不同顏色。訓練的模型相對容易,就是卷積神經網絡嘗試去預測每個像素是否包括文字。

6)Google搜索 RankBrain

RankBrain2015年啟動,在搜索排名(前100位排第三),裡面難點是搜索排序需要了解模型,要理解為什麼要做某個決定。當系統發生錯誤為什麼做那個。

調試工具準備好,需要足夠的理解能力嵌入模型,去避免主觀。總體上是不想手工調參數。你需要嘗試理解模型中的預測,去理解訓練數據是否相關,是否跟問題無關?你需要訓練數據並應用到別的上面。通過搜索查詢的分布你能得到每天的變化,事件發生後改變也隨時發生。你要看分布是否穩定,比如語音識別,一般人不會改變音色。當查詢和文檔內容頻繁變化,你要保證模型是新的。我們要搭建通用工具去理解神經網絡裡面發生了什麼,解釋什麼導致這個預測。

序列模型

很多問題都可以映射到從一個序列到另一個序列的規律。比如語言翻譯,從英語翻譯到法語,就是把英語的序列單詞轉化到法語序列單詞。

神經網絡在學習複雜函數時特別有用,這個模型學習從英文到法文的句子。句子以單詞為單位,以結束符作為信號。訓練模型在遇到結束符時開始產生另一個語言的對應句子。而模型函數就是把語言中語句對作為訓練數據。

每一步都在詞典表中的單詞產生概率分布。在推理時候通過一些搜索來實現,如果你最大化每個單詞的概率,這樣找的不是最可能的句子。直到找到最大可能的句子找到才結束搜索。

這個系統在公開翻譯系統中表現出色。大多數其他翻譯系統需要手工編碼或機器學習的模型只是在一小部分使用,而不是像這種整體的端到端的學習系統。

這些領域都是可以歸到序列類的方法

7)智能回復

智能回復是另一個序列類的例子。在手機上你如何更快回覆郵件,打字很累。

Gmail組開發了一個系統能夠去預測郵件回復。第一步就是訓練小量模型去預測如果消息是某一類的,怎麼做簡短回復。如果是一個更大,計算能力更強的模型將消息作為一個序列,嘗試預測序列的響應語。比如對於節日邀約,最可能的三個答覆是「算上我們」,「我們會去的」,「對不起,我們有事沒法耍」。

8)看圖說話

把之前開發的圖片模型與序列類模型結合一起。圖片模型作為輸入。這裡就不是閱讀英文句子了,而是看圖片的像素。

接下來就是訓練生成字幕。訓練集有5個由不同的人寫的不同的字幕。總共100萬圖片,70萬條語句。效果如下

兩個模型翻譯的都不錯:1)一個小孩緊緊的抱住毛絨玩具。2)一個寶寶在泰迪熊旁邊睡著了。

上面是一些好玩的出錯語句,為啥會錯,其實你自己看了也明白。

9)機器視覺和翻譯結合

翻譯團隊寫了一個app,使用計算機視覺來識別鏡頭中文字,再翻譯成文本,最後再圖片本身覆蓋翻譯好的文字。模型足夠小可以運行在所有設備上。

直接在手機上跑一些模型中的重要方法。智能化將轉移到設備端,這樣不會依賴遠程雲端的大腦。研究上的努力和成果轉化

Google 非常在乎研究轉化效率。就是要快速訓練模型,理解那些做的好的和不好的,再想下一步實驗。模型應該再分鐘或者小時,而不是幾天或者幾周。這樣讓每個人都做研究更高效。

機器學習發展會更好,更快。Jeff說機器學習社區發展得特別快。人們發布了一篇論文,一周內就有很多研究小組跟進,下載閱讀,理解實現,再發布他們自己的擴展。這跟以前的計算機期刊投稿完全不同,等6個月才知道是否被接收,然後再過3個月最後發表。而現在把時間從一年壓縮到一周,真不得了。

如何快速訓練大量模型

模型的並行化

神經網絡有很多固有的並行化,所有不同的神經元與其他的也是保持獨立,特別本地接納的,神經元僅僅接受一小部分比它更低的神經元作為輸入。

在不同的GPU上和不同機器上可以做並行。只有邊界上的數據需要通信。

數據並行化

優化的模型參數集不應該在一臺機器上或者一臺中心伺服器上,應該有多個模型拷貝,這樣協作區優化參數。

在訓練過程中讀取數據的隨機部分。每一個拷貝在模型中獲取當前的參數集,讀取在當前梯度下的一點數據,找到想要的參數調整,在發送調整到中心的參數伺服器中。這個參數伺服器會對參數做調整。整個過程重複,這個也會在很多拷貝中進行。有些使用500份在500臺不同機器上的拷貝,為了快速優化參數並處理大量數據。

一種方式是異步的,每一個都有自己的循環,取得參數,計算梯度,發送它們,不需要任何控制和跟其他的同步,不好的是當梯度返回到參數可能在計算結束後就被移走了。對有些例子可能有50到100份的拷貝。還有一種是同步,一個控制器控制所有的拷貝。

TensorFlow

在過去的幾年間,我們已經建立了兩代用於訓練和部署神經網絡的計算機系統,並且將這些系統應用於解決很多在傳統上來說對計算機而言很難的問題。我們對許多這些領域的最新技術做了很大的改進。

第一代系統DistBeliet在可擴縮性上表現很好,但在用於研究時靈活性達不到預期。對問題空間的更深理解讓我們可以做出一些大幅度的簡化。

這也是第二代系統的研發動機,用 TensorFlow 表達高層次的機器學習計算。它是C++語言編寫的核心,冗餘少。而不同的前端,現有Python和C++前端,添加其他語言的前端也不是難題。

計算可以用一張數據流圖來理解。

我們輸入數據、權重、誤差以及標籤,在不同節點進行不同的運算。

TensorFlow名字的意義

  • Tensor(張量)意味著N維數組。1維時就是向量,2維時就是矩陣;通過圖像可以代表更高維的數據流,比如,圖像可以用三維張量(行,列,顏色)來表示。

  • Flow(流)意味著基於數據流圖的計算。有許多運算(圖中的節點)應用在數據流上。

  • 張量從圖象的一端流動到另一端,這就是「TensorFlow」。「邊」代表張量(數據),節點代表運算處理。

這是使用張量計算的示意圖。

這是使用狀態計算的示意圖。

這是使用分布式計算的示意圖。

它能夠在各個平臺上自動運行模型:電話上,單個機器上(CPU或GPU),由成百上千的GPU卡組成的的分布式系統。

總結

如果你還沒想通過深度學習網絡去解決你的數據問題,你還是要趕緊考慮。TensorFlow 讓每個人更容易獲取深度學習能力。

·高度擴展的設計,更快的實驗速度加速研究進程

·容易分享模型,開發代碼應用到可重用的效果

·通過同一個系統把研究工作直接用於生產環境

本文來源:網易科技報導 責任編輯:齊亞倫_NT4779

本文為作者獨立觀點,不代表網易科技立場。 《易語中的》為網易科技旗下重點打造的專欄作者平臺,歡迎投稿!投稿通道:taidutougao@163.com

相關焦點

  • Google的深度神經網絡強在哪裡?谷歌首席科學家說了這些奇妙的特性
    寫在前面2016年3月7日,谷歌首席科學家,MapReduce、BigTable等系統的創造者,Jeff Dean受邀韓國大學,演講主題《大規模深度學習》,這裡部分來自highscalability的文字和筆者Youtube上的聽錄。
  • 現場| 亞馬遜首席科學家:Alexa背後的深度學習技術是如何煉成的?
    、微軟AI首席科學家鄧力、亞馬遜首席科學家Nikko Strom、百度AI實驗室主管Adam Coates、Facebook科學家賈楊清等20多位業界大咖,堪稱AI業界領域的一場盛事。作為2017開年最火的人工智慧之星Alexa項目的領導者,亞馬遜首席科學家Nikko Strom帶來了演講,詳細闡述了Alexa裡的大規模深度的基本架構、語音識別、語音合成等內容,尤其提到了Alexa為「雞尾酒派對難題」找到了有效的解決方法。
  • 深度強化學習領域盤點系列 | 大神篇
    關注:決策智能與機器學習,每天學點AI乾貨一個大師級的人物可以推動一個領域的發展,深度強化學習的發展得益於強化學習在深度學習和神經網絡的推動作用下的快速進步,在整個深度強化學習的發展過程中,有那麼一群頂尖學者起到了推動作用,下文將對每一位前沿學者進行介紹。
  • Google首席科學家Vincent Vanhoucke:機器人和深度學習正在發生...
    Vincent Vanhoucke是Google的首他在今天的演講中提到,robotics的研究現在也正面臨著一場深度學習的革新,實現這一點,需要現在的機器學習從業者跳出監督學習的舒適區,面臨一些棘手的問題:數據稀缺,如何使機器實現技能轉換以及持續性的學習等等。Vanhoucke也提到,這也是人工智慧從理論到實踐的必經之路。Vanhoucke分別介紹了他在圖像、語音(及機器翻譯)領域和機器人(主要是機械手抓取)的一些研究成果。
  • Google在Udacity推出機器深度學習課程 免費分享機器學習研究成果
    Google 於昨天宣布將在 MOOC 供應商Udacity上推出機器深度學習課程。
  • 微軟小冰首席科學家武威解讀 EMNLP 論文:聊天機器人的深度學習模型
    近日,在雷鋒網 AI 研習社公開課上,微軟小冰首席科學家武威就為大家帶來了其在 EMNLP 大會上分享的精華部分。公開課回放視頻網址:http://www.mooc.ai/open/course/606?
  • 百度前首席科學家吳恩達創業:公司叫「深度學習.人工智慧」
    吳恩達百度前首席科學家吳恩達幾小時前剛剛(編註:美國加州當地時間6月23日15:08,北京時間6月24日6:06)在推特上宣布了他的下一個企業Deeplearning.ai(編註:Deeplearning,即「深度學習」;ai,即「人工智慧」),只有一個標誌,一個域名
  • 谷歌帶著AI重新殺回中國,首席科學家竟是個華人姑娘!
    谷歌雲首席科學家竟是一位華人姑娘!從不懂英語的清潔工到世界十大頂級科學家她憑什麼帶領谷歌AI重返中國?成為人工智慧領域繞不開的傳奇成為史丹福大學終身教授成為谷歌雲首席科學家成為了谷歌雲首席科學家而前幾天她更是帶領谷歌AI重返中國
  • 利用深度學習開發個性化癌症疫苗 Gritstone斬獲谷歌等9300萬美元...
    利用深度學習開發個性化癌症疫苗 Gritstone斬獲谷歌等9300萬美元投資  Evelyn Zhang • 2017-
  • Google Summer of Code 2017 開放報名;交互式線上科學期刊...
    以下是於此有關的雷鋒網深度報導。詳情:http://www.leiphone.com/news/201703/3UyZkF1sIj68TYJW.html Yann LeCun清華演講:講述深度學習與人工智慧的未來
  • 谷歌MaterialDesign首席設計師離職,加盟Dropbox
    雷鋒網消息:谷歌Material Design首席設計師Nicholas Jitkoff於昨日(2月7日)在Twitter上宣布離職,加入雲存儲服務提供商Dropbox,擔任設計副總裁。Jitkoff自2006年開始在谷歌擔任首席設計師,在他主導Material Design設計項目之前,主要負責Chrome瀏覽器的用戶體驗。2011年,在拉裡·佩奇開始擔任谷歌CEO之後,Jitkoff參與了Project Kennedy項目,與谷歌的產品團隊一起,統一公司產品的設計語言。
  • 谷歌Material Design首席設計師離職 加盟Dropbox
    谷歌Material Design首席設計師Nicholas Jitkoff於昨日(2月7日)在Twitter上宣布離職,加入雲存儲服務提供商
  • 繼谷歌FB之後 百度開放深度學習平臺PaddlePaddle
    【環球科技綜合報導】近日,百度宣布其全新的深度學習開源平臺PaddlePaddle在開源社區Github及百度大腦平臺開放,供廣大開發者下載使用。百度成為繼Google、Facebook、IBM後另一個將人工智慧技術開源的科技巨頭,同時也是國內首個開源深度學習平臺的科技公司。
  • 小白世紀首席科學家黃高博士榮獲阿里巴巴達摩院青橙獎
    2020年9月9日,本年度阿里巴巴達摩院青橙獎獲獎名單正式揭曉,北京小白世紀網絡科技有限公司(簡稱「小白世紀」)首席科學家黃高博士,憑藉新型神經網絡構架DenseNet,與其他9位青年科學家獲得達摩院的1000萬元獎金。鍾南山院士作為今年的頒獎嘉賓,在線上頒獎典禮現場,以VCR寄語的方式表達了他對青年科學家的期待。
  • GoogleSummerofCode2017開放報名交互式線上科學期刊Distill上線等...
    詳情: http://www.leiphone.com/news/201703/3UyZkF1sIj68TYJW.htmlYann LeCun清華演講:講述深度學習與人工智慧的未來詳情: http://www.leiphone.com/news/201703/Q26hNi4YFRD059cI.html百度首席科學家吳恩達離職
  • google谷歌服務框架及google play的添加方法
    google谷歌服務框架及google play的添加方法 來源:www.18183.com作者:jinwei1990時間:2014-09-24 安裝谷歌地圖與谷歌商城之類的官方軟體
  • 谷歌打不開?Google將谷歌香港伺服器移到美國
    最近有大量網友向小編反饋Google打不開,筆者近期也嘗試打開Google搜索,但不管是輸入google.com(谷歌全球域名)還是google.com.hk(谷歌退出大陸轉居香港後的域名)結果如下圖均顯示「無法顯示此頁」。作為全球最大的搜尋引擎,Google近期為什麼打不開呢?以下小編談談可能的幾種原因。
  • 重磅|伯克利《深度無監督學習》2020春季新課來襲!
    【新智元導讀】OpenAI顧問、伯克利加州分校人工智慧實驗室主任、機器人學習實驗室主任攜其博士生,為大家貢獻一門長達4個月的深度無監督學習課程,該課程是深度無監督學習的優秀課程,涵蓋了許多當前的最新水平,尤其是該課程使用了最新的模型更新研究生級課程。最近因為疫情,缺乏防護且人員密集的學校成為了重災區。
  • 完整視頻|谷歌雲首席科學家李飛飛:一堂人工智慧公開課
    現為史丹福大學計算機系終身教授,Google Cloud 首席科學家,是全球人工智慧領域最具影響力的科學家之一。2017 年 1 月 3 日,李飛飛教授正式入職 Google Cloud,宣布自己從學術研究的實驗室走到了產業界。她除了依然是「美國史丹福大學計算機科學系終身教授、史丹福大學人工智慧實驗室主任」之外,又多了一個新的身份——「谷歌雲首席科學家」。
  • 一份火爆AI圈的高分深度學習入門講義,李航、馬少平領銜多位科學家力薦!
    紐約大學知名的神經科學教授 Gary Marcus 向深度學習界大佬 Yann LeCun 發出提問。換句話說,Gary Marcus 的潛在意思是,雖然深度學習感知機和語言翻譯上取得長足進步,但 AI 的可解釋性較差,深度學習的向量無法映射人腦的計算過程,不能完全處理抽象推理和決策。比如,深度學習受有效盲點影響,出現的「對立圖像」,產生的不連續問題,至今無法得到有效的解釋。