當前位置:
首頁 > 最新 > 深度學習框架TensorFlow、Caffe、MXNet、PyTorch如何抉擇?6 位大咖現身說法

深度學習框架TensorFlow、Caffe、MXNet、PyTorch如何抉擇?6 位大咖現身說法

2017 年 6 月,EGO 邀請了 6 位行業大咖,聚焦深度學習框架選擇與應用實戰,進行了近 3 小時的在線探討。本文根據當天內容精編而成。6位參與人分別是(排名不分先後):

彭垚-七牛人工智慧實驗室負責人(主持人)

郭烽-易成自動駕駛CTO

于振華-科大訊飛內核研發總監

楊軍-阿里大規模深度學習優化技術負責人

張鵬-新浪深度學習負責人

趙曉萌-小紅書演算法科學家。

開場與自我介紹

彭垚:我是彭垚,花名叫土土,現在在七牛雲,負責整個人工智慧實驗室。咱們先做個自我介紹吧。

于振華:我是于振華,訊飛研究院副院長,內核研發中心研發總監,我在公司負責敏捷開發和Deep Learning高性能計算平台建設。

郭烽:我是郭烽,剛剛從美國回來,加入易成自動駕駛不久。之前我是在高通,負責高通公司整個計算機識別、機器識別、深度學習系統晶元開發,現在在易成主要是做自動駕駛方面的研發。

趙曉萌:我是趙曉萌。我一直在做搜索和推薦,一年前加入小紅書。小紅書是做社區電商的,我主要負責搭建完善搜索服務。小紅書是以圖像為主的社區,圖像搜索是很重的一塊業務。

楊軍:我是楊軍,在阿里巴巴計算平台事業部,主要負責對深度學習的優化跟加速相關工作。我們整個部門的產品叫做PAI,是阿里開發的一套同時對外和對內的AI基礎設施,我在這邊負責底層模型的計算加速,包括訓練的加速、inference的加速、Modeling的探索。希望了解彼此公司和行業對deep learning model應用的情況,以及實際應用中對的框架選型和遇到的問題,比如model過大的問題或者計算量過大的問題。

張鵬:我是新浪網的張鵬,在新浪門戶。我前10年一直在做工程,最近六七年在做機器學習和深度學習相關工作。我這邊主要是側重深度學習的應用和理論層面的計算可解釋性,應用場景主要包括文本生成、人臉檢測識別、文章配圖、自動配圖、視頻推薦、OCR等,主要是圍繞內容生產和文章分發兩個領域。

圖片來自https://yq.aliyun.com/articles/57677

話題一:框架選型及原因

彭垚:關於框架選型,比如MXNet、TensorFlow、Caffe、Torch,大家在用哪些?用在哪些場景?

于振華:這幾個框架我們都在用。像Torch、Caffe、TensorFlow是研究員人員在用,尤其是比較靈活的PyTorch;需要落地和不停迭代的,用的是MXNet,好處是training效率比較高。深度學習團隊針對MXNet投入最多,做了不少自主的優化,大約一半的力量投入在MXNet,開發了比較完備的MXNet通用訓練框架。業務層面,無論是基於CNN、DNN和IPM的識別,還是基於Encoder-Decoder的ED框架的翻譯,所有的雲上代碼都是自主開發的,幾乎沒用現成的開放框架。我們也開發了一些工具,把torch、Caffe、TensorFlow的結果轉到MXNet上。

可以這樣理解,我們的生產系統是MXNet為主,研究系統是根據各個研究員喜好去做

圖片來自http://echiev.com/index.php

郭烽:今天嘉賓在伺服器端比較多,高通和易成自動駕駛主要是在嵌入式端。高通早期以開源的Caffe為主,現在逐漸往TensorFlow上移植。我們的應用是手機端目標檢測、人員檢測、智能監控、無人機解決方案,Caffe比較易用。另一方面,高通要支持Google的硬體平台,高通整個公司也在轉向支持TensorFlow,這是兩部分的訓練框架

應用框架方面,高通有自有晶元,也有自己的神經網路處理引擎SNPE包(Snapdragon Neural Processing Engine)。訓練平台的模型都可以轉到SNPE,在高通自己的平台上做homogeneous計算,這是現在基本訓練選型和實現手段。

在嵌入式端,在訓練上不光是簡單的模型訓練,還要做模型的篩檢、壓縮、硬體化,包括深度的模型匹配和優化。

圖片來自https://www.xiaohongshu.com/

趙曉萌:我們暫時沒有自己搭建平台。我們使用的還比較淺,主要針對圖像做feature抽取,做圖像檢測分類,在用Caffe。Caffe有Model Zoo這樣預先train好的模型,我們可以直接用。我們跟Caffe團隊的成員有一些交流。

同時,我們不排除以後考慮其他品牌,尤其TensorFlow社區在慢慢壯大,可以考慮。

圖片來自https://mxnet.incubator.apache.org/

楊軍:阿里的框架比較多元化。我們在Caffe上做過優化,比如Caffe多級多卡的優化,包括怎麼樣把迭代過程中訓練圖形量降下來。剛才訊飛的朋友說prefer MXNet,阿里更看中TensorFlow。原因比較簡單,TensorFlow更popular,更容易上手。

對TensorFlow的優化首先是單卡的優化。TensorFlow自己在卷積處理做得還不錯。這塊有個趨勢,就是會調用優化cuDNN,讓英偉達幫我們做更多的事情。但是,它在某些具體OP層面不夠好,我們會做優化。在多卡方面,我們做了一些有損的圖形優化,包括我們在機器翻譯TensorFlow里做了優化,還達到了不錯的效果。

TensorFlow本質上是由Google來控制的,對於做雲平台的公司會有一點不利。我們判斷,TensorFlow的性能在不斷的提升,其他的問題還是屬於細節的問題,不是框架本身的問題。這就決定了,我們願意把更多資源投入進去優化框架。

張鵬:我們Deep learning還沒有做特別大規模的應用,目前生產環境部署全部是在TensorFlow上面。我們以應用為導向,模型本身看的比較多。我們的模型大概有50%是自己構建的,另外50%是採用開源的模型,尤其是圖像領域。在OCR領域,模型基本上都是由我們自己來建的。我們偏重於研究,包括模型、參數和我們自己做的周邊工具,工程層面考慮比較少。我們平台的伺服器也不是很多,廣告加內容自動生產也就大概20台的規模,所以我們關注底層比較少。

彭垚:大家可以對每位嘉賓做提問。我想問楊軍,我們之前也是很早測就開始TensorFlow,但是在訓練效率尤其是分散式上面,跟MXNet差得特別遠。當然我們也沒有像阿里這樣對每個OP性能調優。整體測試下來,差距還不是一點兒。你們怎麼去看這個問題?我們的時間上測試出來是要相差五倍。

于振華:我們在語音上大概差了兩到三倍。

楊軍:做平台會考慮到一些更general的問題,比如有多少用戶關心這個問題。涉及到多機的訓練,我們會發現可能90%是不需要多機。另外我們分析業界態勢看到,單機裡面卡的數量會變得越來越高,比如說現在單機8卡比較多,英偉達已經在研發單機32卡的機器;同時很多場景下可能需要跑到10台以上規模的Model會比較的少。所以對於我們來講,用戶怎麼樣更容易上手、更容易從社區獲得更多建模收益,這是關注的第一點。第二點,因為我不確定你們評估的版本是哪個。TensorFlow的版本演化很快,它剛出來的時候性能很糟糕,甚至在圖像領域裡也很糟糕,在1.0版本以後,在主流的model裡面,TensorFlow單卡圖像性能跟Caffe幾乎沒有差異了。關於優化方面,我們認為相應的場景應用優化早晚會以某種方式提供,一個是我們自己的improvement,一個是TensorFlow內部improvement。

再說多卡和多機。多卡優化的話,我認為不存在本質系統差異。多機的話,TensorFlow確實比較慘,它的主流實現存在一些問題,第一個問題是TensorFlow的多機通訊跟Google內部的通信框架不太一樣;第二,它的序列化和反序列化做得不太講究,因為TensorFlow設計理念很激進,力度很高,一般人看了不太敢下手會改。兩個原因造成多機性能更差一些。這個裡面會有些變化,並且通過社區也可以知道有大量工作已經在籌備研發中。

所以,我會有這種判斷,TensorFlow本身的性能是存在一些潛在的問題,但是更多是一個框架的問題,不存在fundamental的問題。從阿里來看,我們希望找一個讓用戶獲得建模、社區、收益的平台框架,我們在繼續投入。這是我們這邊對這個事情的一個考量。

問:我是很同意。尤其對我們這樣的小公司,量也不是特別大,數據不是特別多,我們首先考慮能不能很快上手。容易上手是非常關鍵的。

我們很關注容易上手這個問題。阿里的子公司很多,有搜索,有廣告,有螞蟻金服,有高德,有優酷,大家使用習慣也不一樣,我們會找最大公約數。

問:我的理解你們現在是有一個開源的Caffe,然後你們會做具體優化,同時在優化TensorFlow是這樣嗎?

目前主要在優化TensorFlow,Caffe花的力氣會越來越小。

問:Caffe的優化做完了嗎?

Caffe工作做得比較早,當時Caffe甚至都沒有像樣的LSTM的實現,當時是我們自己加進去的。這兩年Caffe有很多變化,包括像英偉達、浪潮等很多公司也有相應版本出現。第一,現在已經有趨同情況;第二,Caffe的靈活性,我個人認為已經到極限了。更多的優化不太好把持的,所以我們基本暫時停止了。

問:假設有新的Caffe Model,沒有優化過的話,你們會繼續support,還是根據客戶的需求來考量?

楊軍:我們會去跟客戶negotiate一下,有沒有可能去遷到我們TensorFlow平台裡面去,如果他不願意的話,我們考慮做支持。

問:我有個問題,TensorFlow版本更新非常快,我看從1.0跳到最新研發的版本,加了很多改進。我們平台這邊跟它的版本是怎麼保持一致的,尤其是我們的一些優化可能跟它的新功能已經重複了?

楊軍:你問了一個特別好的問題。如果我個人來看,這是平台公司應用TensorFlow最大的痛點。關於TensorFlow演化的趨勢和歷程,我們也很頭痛。TensorFlow演化過程是由Google強勢主導的,阿里作為平台方的期待,不僅僅是Follow Google的趨勢,可能在未來希望有一定的自研甚至超越的機制。這個需要一段路程,我們要承認國外的公司進展會更快一些,這是第一個。第二個,優化做重複了怎麼辦?這是我們該有的代價。做基礎設施,我們要先Follow才能超越它,這個過程中需要交學費。而這個cost可能就需要跟管理層溝通好,大概有一個量化的估計,比如說我們在選型時,儘可能避開特別容易發生衝擊的點,比如如果這個優化是偏cuDNN層面的,我們一般不會去碰,我們認為是會跟英偉達撞車的;同時,我們也會對TensorFlow優化的方向做預估,我們會找一些基於行業的信息判斷、它不太容易進到的開源點會去打,這是我們的態度。對於那些繞不過去的,我們願意去承擔相應的後果

問:我就想問一下,群里有人考慮過Caffe 2嗎?

答:效率很高,但是我們也不大考慮。

楊軍:我們曾經討論過是不是接Caffe 2。我們擔心的是,這個框架太年輕,而且重新接入新的框架,是不划算的。所以暫時沒有考慮用這個東西。

彭垚:我這邊感覺PyTorch出來以後,research層面好像是用的最多。不知道大家怎麼看?我覺得有些Model、有些training是在PyTorch上面去做,然後inference還是按照自己的inference去推,在做converse之類。大概是這樣的做法。

楊軍:我的理解是,現在從research角度,不管是從model還是framework角度,Caffe、PyTorch基本上比較成熟,也有一些establish的Model比較好。但是專業的工程開發還是會根據應用的具體情況、流行趨勢和support的力度,這個很難講。我覺得從Caffe、TensorFlow到TPU,業界的形式都是在變化,現在英特爾和高通都出專用的hardware。從工業界來說,我覺得以後還會再不斷演進。

楊軍:我也稍微補充下我的觀點。我知道,Facebook的researcher用的PyTorch,他們市場環境用的是Caffe 2。我個人覺得現在Deep learning社區,或者這個行業,處於一個轉變階段,硬體在變,軟體也在變,暫時很難統一起來。到未來的時候可能就剩下一套或者兩套,做得比較general。過程中不斷地迭代,最終收斂。

彭垚:我感覺,到最後應該會收斂到兩三套,不會像現在這麼多的Deep learning Framework。

張鵬:最後可能是大廠每人一套,Facebook的Caffe 2,Amazon的MXNet,Google的TensorFlow,Google整個生態包括TPU都是在TensorFlow。我覺得現在工程層面,對深度學習的支持稍微滯後,深度學習理論很多方面還不太完備,大家其實靠經驗驅動和靠實驗驅動比較多。這些框架都在改,現在看來是呈現加速發展的趨勢。所以說,深度學習框架品牌可能會稍微穩定,但是這幾大品牌在具體的深度學習任務上,我估計還會走比較長的路。

于振華:通過我們訊飛的一些經驗,我認為可能會走兩個極端,公司應用角度比較看好還是MXNet,但是另外一個就是無論是高校還是公司研究人員,他們更喜歡靈活的,我認為目前靈活度最高的還是PyTorch。目前他的對抗網路和異地框架都支持的非常好,而且最關鍵的是,PyTorch網路設備是動態的,所以強化學習對於他來說最容易實現的。而其他框架,目前我們還沒有能夠把它做的比較現成的東西。

將來,對於高校、研究機構和公司研究人員,靈活性最高的框架可能會是流行度最高的,效率不是他們的首要需求。在企業之外,高校的學生和研究人員實際上也會是風向標。我也面試很多高校研究生,前兩年高校里最流行的是Caffe,現在PyTorch在高校中流行度更高。從長久來看,靈活性最高的框架的傳播度和大家接受的程度會是更高的。

彭垚:剛剛于振華這邊也是說了蠻重要的一件事情,大家在工作環境裡邊做是分兩塊工作的,一塊是跟實現和產品更相近的,把演算法應用到行業工程,另外一塊基本上一直在做research Framework相關的。

其實我個人大部分時間都在用PyTorch,因為PyTorch做東西特別快,很多東西很容易上手。

圖片來自 https://www.tensorflow.org/

話題二:深度學習的應用與發展

彭垚:下一個話題,聊一下深度學習應用和Research相關的發展情況。

于振華:訊飛在識別效果上、雲的規模、落地等方面,都走在比較前列。我們最近在Deep learning這塊取得了比較大的突破。我們當初做CNN效果提升比較大,對我們來說是個意外。我們為什麼做CNN呢?講個很現實的工程問題,我們LTM模型考驗的核心就是前後幀的相關性。在高性能計算平台上,相關性會導致並發路數會上不來。為什麼呢?對任何一路進來的識別服務,它的第N幀跟第N+1幀是沒辦法並行的,它必須是串列的。但是我們做CNN,在一路上可以多幀並行,這樣在inference上會做到比較好的效率實現。

在工程上,我們已經實現了int 8的系統,這個工作大約是兩年前開始做。Nvidia的P4和P40都是支持int 8的,理論上int8相當於3倍加速。我們做到了3.2倍。

問:改到int8,在別的平台,比方說inference、FPGA之類會更方便?

是的。我們公司也做了FPGA實現。我們還跟Intel合作在微機上做到了0.87到0.89的CPU效果。CPU這塊我們投入的就是兩三個人和兩三個月,實實在在的做到了P4差不多的水平,大概是0.9倍的量級。有個更重要的優勢是,現在它的低功耗。

問:int8優化達到3.2倍加速,是在CPU還是GPU上?

于振華:GPU。P4。

郭烽:我在高通的多媒體研發部門,主要是視覺的應用,包括手機端目標檢測和智能拍攝的介面。我們也有智能監控的應用,包括跟海康、大華都有合作,同時也有無人機平台和VR平台。早期我們集中在目標分類,現在關注重點是在圖像的目標檢測和解析度提高。

另外,我們還有一塊業務是DSP。前面大家對GPU關注比較多,高通晶元是多樣化的,有CPU,有GPU,還有DSP。在DSP端做一定研發之後,DSP效果和一些專用晶元得到的效果,尤其是稍早版本的晶元效果,差不太多。到下一代晶元,在DSP端會看到高通有一些成功的應用。高通的DSP的核會開放給OEM用,另外會加上vital process類似於sim效果的DSP,這是早期版本。高通的GPU主打低功耗,我們的目標要求是在1W以下。

易成自動駕駛第一個重點在訓練端,包括數據、精度,這是一個最基本的保證。另外,作為解決方案,我們不光是依賴於攝像頭,肯定要有多感測器。在多感測器的融合端如何實現深度學習,這是兩塊業務。第三塊業務,因為現在公司不大,英偉達支持訊飛等大公司會比較多,對於不大的公司的支持非常有限,在這種情況下,我們也開發一些適用硬體。

問:做自動駕駛的產品方向,包括哪幾個關鍵環節?你們在產業裡面會去做哪些事情?

郭烽:易成不完全是一家startup,我們在深圳有一家投資方,他在汽車產業鏈有一些上下游渠道;同時我們也在做一些早期的研發產品,自動駕駛現在來說為期遙遠。另外,從技術角度來說,我們會做融合解決方案。至於解決方案和產業鏈上的哪些渠道廠商進行合作,還要進行探索。

趙曉萌:大家的分享都比較深。我們不太涉及優化等深度學習本身演算法的東西,我覺得我是你們的用戶。對我們小公司來說,深度學習的應用和開發趨勢很明顯:門檻降低的非常快——不管是計算能力,計算機平台,還有Model本身開源。小公司可以做的,就是把這東西儘快的用到業務當中——如果容易上手,更多的人會參與進來。以後應用這些東西,包括在大平台上的使用,可能是創業公司的標配。在內容圖片文本方面,我們會做更多的嘗試,也會有些比較有意思的應用。我大概就分享這麼多。

彭垚:我們繼續。楊軍講一下你們現在平台主要的應用點?

楊軍:我這邊比較典型的是傳統的NLP和圖像。阿里有廣告推薦的經典業務場景,也在開始嘗試深度學習做優化。

機器翻譯是阿里基於深度學習獲得很大提升的項目,比如我們已經完成的離線訓練優化。其中單卡比較多,計算比較耗時,我們通過某些tricks獲得更優的計算圖形比,做些小tuning配合,以獲得效果;另外,傳統機器翻譯和傳統翻譯的inference很簡單,耗時也很短,但是換成神經網路翻譯,如果不做優化,它的耗能會高出一個數量級,這塊我們會做一些工作。

NLP的應用是在客服機器人。阿里有很多的店鋪、商家、買家,與淘寶客服,或者買家跟商家的對話方面,我們會研發機器人減少客服的工作量。

圖像方面,阿里會用AI方法做一些智能設計的工作,包括UED的團隊希望做的素材生成、素材識別、素材提取。抽象來看,這就是個簡單的圖像監測識別的問題。在這裡面,我們會把OCR的技術應用進去。除了這個,UED能不能根據某些場景、某些信息自動生成一些圖片及素材,屬於生成學習的範疇,這塊是比較艱難的新領域。不過這一年非常火,也有很多的開源的代碼。真做項目就會感覺喜憂參半,喜的是開源項目多,憂的是問題也多。我們對這個效果要求很高,所以需要做很多優化及嘗試。搜索和廣告方面,跟Google會有點相似,不同的是我們輸入比較龐大,所以需要在輸入層做針對係數的優化,這是它跟NLP和圖像不一樣的地方。圖像場景的優化對於搜索不太適用。

另外就是搜索廣告。搜索廣告是典型的模型大、計算量大,所以需要更多的機器規模才可以跑的更多一些,對多機的通勤優化要求更為苛刻。這些是離線訓練的範疇

在線預測我們也在做。在AMT裡面,我們會用基於Spark的方法,目前的項目大概有近3倍的加速效果,我們還在繼續優化。圖像這塊我們也在做自動化網路,確實存在精度問題,目前在base model上還有兩到三個點的gap,說大不大,說小也不小,還有很多要去探索。或者,如何把Model做的更複雜來彌補精度的下降,同時獲得性能的加速?這是優化這塊的一些事情。

因為歷史原因,阿里有很多的線上業務跑CPU的,從機器資源利用率和降低CPU來講,我們關注CPU會多。這在將來會限制我們的空間,因為CPU有些硬體設計對inference優化並不非常有利。

另外,阿里也在基於FPGA做優化,大概適用圖象場景,針對model做吞吐的優化。

于振華:我們在FPGA方面已經有一個落地的東西,大約在單顆晶元上實現了相當於P4 的50%左右性能。如果我在板上裝兩片MTP,首先設計會很困難,這是其一;其二,這樣做得話,功耗上不佔優勢。我們知道,P4已經做到70W以下的性能,實際上就證明MP路線是對inference絕對可以的。當然我們知道英特爾還會推出新東西,這是很期待的。MP開發還是比較痛苦的,我也參與了做DNN、LTM、CNN、TMC的優化,這個開發難度非常大。如果沒有很強的功能能力,我建議不要隨便碰,這個東西很痛苦。

問:開發很大一塊是數據流的,因為不同網路應用有些不太一樣。我想問,是開發FPGA版本還是相對比較通用一點?

楊軍:相對比較通用的。這個痛苦是多,本質上底層有個DNN,一塊是MP的邏輯實現,一塊就是所有的DMP,還有一塊將近40%去控制外圍的拓撲調度——這個跟做軟體差別是很大的。做軟體的話,拓撲描述都是Framework本身,我不需要去關注,但是這塊是自己去開發的,比較麻煩的。

而且還有個更噁心的是,PSE和DPR做的介面是軟實現的,它佔了幾大類,本身就佔掉一塊,留給我們的邏輯空間只剩下70%。

問:你們最終FPGA的功耗方法沒有測過?

楊軍:它的功耗大概是70多瓦,但是我們只跑到了40瓦。另外我們知道FPGA能跑500兆,我們最終做到了將近400兆,大約實際功耗是40多瓦,比P3稍微低點。

問:剛才提到了大概百分之二到三個點下降,我想問的是,你們主要是在分類方面做的測試,還是在目標檢測方面做的測試?

楊軍:目前在分類上做的測試。目標檢測會更難、更有挑戰。

郭烽:拿手機應用來舉例,實際上模型吞吐不是個非常大的瓶頸。說降低模型尺寸和把APP做得小都是忽悠人的,本質上要有提升。就是相當於我們在load的時候是load的int 8然後轉成16的,我們這塊大約有3%收益;去做int 16的變化,把它到減到int 8,運算還是使用int16,系統性能大約會有40%的提升。高通對功耗要比較高,所以我們注重這些方面。

彭垚:我稍微補充一點點。像郭烽說的,除了技術加入和內存收益以外,他的功耗挺高的。另外,它的優化機制不太一樣,這個時候是有優勢的。

問:還有一個題外話,訊飛的數據量比較大,對於深度學習,你看到數據量的提高,margin是不是下降。

于振華:現在在語音識別上,我們原來在做DNN的時候,做到六千小時數據,就撞到邊界了,就不提升了。剛做MTM,做兩萬小時,到邊界了。我們現在做DEEP CNN,用了半年多,我們發現我們以前不Work的,在nxnet我哪怕做到十萬小時他還是有收益的。

問:從六千到一萬的收益率和從一萬到七萬的收益率是一樣的嗎?

當然後面越大,收益率越小。語音識別想佔位的話,哪怕是3%或者4%,對我們來說也是非常重要。

問:你覺得數據的貢獻會有極限,或者說到某一點之後他的貢獻就微乎其微?

就看你做什麼/追求什麼。如果要搶佔第一的話,哪怕是百分之一二的提升也是要去搶佔的。如果就想把它落地做個比較好的應用,我覺得是做到一定程度就足夠了。

彭垚:新浪張鵬聊一聊最近的進展?

張鵬:我們現在的工作重點是幫助內容生產,工作重點是提升生產效率。一方面是機器文本內容的自動生成,用在突發事件的報道以及轉播。還有一個領域是自動配圖。很多文章是沒有圖的,編輯人工找圖是非常大的工作量,我們會用演算法做匹配。再有就是自動切圖——也是跟圖像相關的。自動切圖的內容生產量比較大,在各個客戶端適配的時候,我們會對人臉物體都做相應的檢測,然後根據情況提供最佳的切圖建議。

還有一部分就是視頻推薦,視頻推薦主要是我們在嘗試理解視頻的內容。視頻可以有很多標籤,但是目前它能夠提供的文本信息很少,所以這方面我們也做了一些工作。這方面我們用Google的Inception V3,把裡邊的視頻信息提取物體特徵,我們自己做了FrameNetwork,主要是把視頻映射到自己的語義空間裡面去,然後根據用戶的行為來做推薦。未來繼續提升內容的生產和分發效率。我們也在看圖像增強,因為我們現在圖像質量不是很高,但是還沒有什麼比較有效的解決辦法。

彭垚:七牛是雲服務廠家,跟阿里雲差不太多。不一樣在於,我們的客戶都是短視頻,或者直播,或者是社交的APP,我們這邊對AI的大部分需求都是在圖片和視頻,比如給社交場景做圖像標籤。我們平台上有各種各樣社交軟體,像男同社交、女同社交、短視頻。我們需要識別非常少見的內容,比方男的穿黑絲襪。我們通過客戶提供的少量素材,依靠快速的Learning,之後爬取,再滾動做標註,有很多APP層的training迭代。我是主要在做的工作。

我比較好奇,阿里的客戶都用你們的平台去做什麼?

楊軍:像小蟻是一個小米生態系統的公司,他做視頻的分析和解析工作。像機器人公司,對NLP處理會有訴求。搜索推薦場景在我們的深度學習平台比較少。比較多的是以圖像為主,語音少一些。我的判斷是,語音的技術門檻相對比較深,產品形態相對不是那麼多樣化,更多是被幾家比較出色的公司壟斷了,比如訊飛,不像圖像能夠開放和多元。

話題三:深度學習展望

彭垚:我們做視頻相關,我覺得影視多線索標註有很大提升空間。現在的Learning可以做到非常少的標註,多線索標註還在Research的階段。

楊軍:我認為,對抗生成學習GAN(Generative adversarial networks)和強化學習未來會有更大的發展空間。

原因有兩個,一是對抗生成在一定程度上可以幫我們解決樣本稀缺的問題,二是它會把我們的視角從判別問題領域更多走向生成領域

強化領域我比較關注,是因為我發現,有更多的工作可以通過限制反饋來拿到結果,大量節省了獲取樣本的成本。比如說像最近深度學習訓練的多卡的placement有最新的工作,大概是5月份Google已經有這樣的信息出來。這就是典型的一個Reinforcement Learning,來減少標準樣本做優化的過程。我也非常看好組合優化的問題。

強化學習引出一個新問題。很多時候想用reinforcement learning去做一些事情,就會發現硬體不夠了。這可能會推動新一輪的硬體變化。我自己看中GAN和reinforcement learning兩個方向。

郭烽:我比較關注的是在目標方面的應用。在圖像上面,單禎圖片不管是目標檢測還是目標分類都比較多,但是對目標追蹤沒有比較好的方法。怎麼能簡化運算量,同時提升智能效果,我覺得還有些值得探討的地方。

另外一大塊,是深度學習的應用、深度學習的公眾化。以後如果手機端的硬體大規模普及,手機端智能應用發展起來,可以有各種各樣單禎或者視頻流的分析應用場景。是不是在手機端能夠鋪開,這是個值得關注的點。

于振華:從我的理解,不管是高通,還是海思,都在做深度學習的專用晶元。我估計未來要不了多久,基於深度學習專用晶元肯定會有的,可能不會面向普通的開發者,而是會面向比較大的客戶。這是第一。

第二,剛才於總提到的GPU,至少從我的理解,一般不會用GPU來做移動端大規模計算。一旦你把在手機上把GPU打開,特別是連續待機,功耗非常大。GPU應用會有限制。這是我的基本理解。

張鵬:我有兩個問題。我們一直挺關注合成語言領域,未來內容分發很可能是通過語音的。在個性化的語音生成這塊,訊飛進展如何?在語言識別領域,尤其是在高背景噪音的情況下,現在公開出來的幾種技術都非常糟糕,比如雞尾酒會問題等,訊飛這方面進展如何?

于振華:我先回答你第二個問題。環境嘈雜和多人說話,實際上不能單靠軟體,肯定要結合硬體,包括多麥克。會議室很大的問題是混響,如果不結合硬體的話,效果也是不太好的。結合硬體系統,將來的解決方案,對於雞尾酒會問題或者會議室環境噪音,都是能夠有效解決的。目前的會議效果會差些,基本上能做到80%以上的準確率。用手機輸入法會好些,因為人知道在對計算機講話,他會配合、會特別注意語音語調語速,所以輸入法能做到97%或者98%。

第一個問題方面,我們以前做語音合成有70%是像的,30%是不像的。我們現在做什麼水平?可以做到都是相同的。70%以上他講的內容是我們平時熟悉的人分辨不出來的,聽不出來是錄音還是機器合成的。剩下的30%的內容,熟悉的人可以察覺,一聽聲音就知道是誰,但是能分辨這不是他自己在說話。

趙曉萌:我們現在深度學慣用的比較好的,是把圖片用CNN向量化,文本用doc2vec去向量化,然後通過淺的神經網分類器,能夠把主題等東西識別出來。

我們還有一個比較有意思的應用。有一段時間,小紅書上面臉上長痘子的特別多,不是每個人都喜歡看到長滿痘子的照片,我們就做了一個能夠識別痘痘臉圖片的應用,CNN可以非常好的識別全臉、半臉、甚至1/4臉的圖片,有少量器官的圖片都會識別出來。這個對我們來說很有用。

下一步,在深度學習方面要做的是,把搜索和推薦系統從統計搬到深度學習上。我們會參考平台提供的解決方案,也會讀一些這方面的paper自己來試一試。以後,一切比較牛B的我們覺得很好的事情,比如用戶分享圖片的質量,甚至是圖片的逼格,我要識別出來這種圖。我們想研究用戶穿衣的style和風格等方面,比如都是鞋,用戶更喜歡哪種鞋;都是眼鏡,用戶更喜歡哪些眼鏡。這個是不太好拿出來去搜的,但是能從用戶交互的過程中,通過深度學習把相應特徵提取出來。我覺得對我們來說非常有用。

總結

彭垚:最後大家輪流總結一下。我感覺收穫比較大,老於介紹了語音方面的東西,包括平台上的優化。聽了楊軍在平台上做優化,我感覺我們對TensorFlow的投入不夠,值得花點時間再看看。

于振華:我們在圖像圖片領域也是剛剛起步,跟大家學到挺多。大家在不同平台投入的都挺多,我們也要加大些投入了。

郭烽:首先非常高興認識大家。我剛回來沒多久,在國內能認識大家,很高興。在深度學習方面,不管是從應用層還是從實驗層,大家見解也非常深,對我也是個很大的提高。我分享了一些比較底層的東西,受眾稍微少一點,希望今後和大家多交流。

趙曉萌:我今天學到很多東西。我原來關注底層優化比較少,聽了大家的交流,我想還是先借用大家的已有優化成果。

楊軍:我之前並沒有接觸過PyTorch,今天不只一位朋友在提PyTorch,我會關注一下。通過交流,我確實了解到很多use case,高清圖片生成、訊飛語音、小紅書圖片搜索、新浪內容業務和郭烽自動駕駛都蠻不一樣的。我們做平台,最需要知道頂層應用有哪些困擾,這是我覺得有收穫的地方,可以說超過預期。

張鵬:我最大的感受是大家比較多樣。我這邊一直是做應用很多,底層考慮較少。對我們來講,應用場景不成問題,現在最大的問題就是成本。我們也在測阿里的雲服務,未來應該還會有比較深入的合作。謝謝大家。

結語

彭垚:感謝大家,大家的分享都非常精彩,我也受益匪淺。希望之後大家常聯繫。今天就到這裡。

極客邦旗下的高端技術領導者社群EGO,匯聚全國400餘位技術大牛,鏈接技術圈頂級資源,提供閉門會議、主題論壇、在線社群等豐富的學習交流形式,助力技術領導者開拓視野、提升能力、解決問題、達成合作,精準把握時代脈搏!


點擊展開全文

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 EGO 的精彩文章:

TAG:EGO |