乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      快手王華彥:端上視覺技術的極致效率及其短視頻應用實踐 | AI ProCon 2019

       牛人的尾巴 2019-10-10


      快手用戶日均上傳1500萬個視頻,要把這些作品準確的分發(fā)給超2億活躍用戶,如果沒有強大的AI技術系統(tǒng)去理解視頻內容以及用戶行為和需求,很難做到。

      近日,由新一代人工智能產(chǎn)業(yè)技術創(chuàng)新戰(zhàn)略聯(lián)盟(AITISA)指導,鵬城實驗室、北京智源人工智能研究院支持,專業(yè)中文 IT 技術社區(qū) CSDN 主辦的 2019 中國 AI 開發(fā)者大會(AI ProCon 2019)在北京舉辦。在計算機視覺技術專題,快手硅谷Y-tech實驗室負責人王華彥講述了端上視覺技術的極致效率及其短視頻應用實踐。
       
      他指出了其中面臨的技術挑戰(zhàn):第一,不可控的復雜場景和環(huán)境;第二,極為有限的移動設備計算資源;第三,由于所有應用有很強的時效性,需要做到快速開發(fā)和部署模型。
       
      為了應對這些挑戰(zhàn),他介紹了解決方案和研究方向的三要素:首先是運用高度結構化的模型,并充分利用先驗知識;其次,面對計算資源緊缺需要充分發(fā)掘各種冗余來提高算法的推理效率;最后,用高度結構化的信息表示提高學習算法利用數(shù)據(jù)的效率。
       
      王華彥稱,他們希望從一個可分解的、結構化的視覺信息表示出發(fā),全面提高現(xiàn)有計算機視覺算法中的數(shù)據(jù)和計算效率,從提高模型推理效率,以此實現(xiàn)全面的效率提升,賦能短視頻應用。
       
      以下為王華彥演講內容實錄,AI科技大本營(ID:rgznai100)整理:
       
      快手成立于2011年,從2013年開始把視頻轉型為短視頻平臺,2015年DAU突破1千萬,百度和騰訊相繼領投快手,2017年DAU突破1億。在積累了這些資本和流量的優(yōu)勢之后,快手進入了非常高速的發(fā)展階段,今年DAU突破2億,全資收購A站,并領投了知乎。我們后面的目標是在明年春節(jié)之前DAU突破3億。
             
       
      快手平臺的背后是有一套AI技術支撐,快手從2015年開始大量把AI技術用于各方面的內容生產(chǎn)、內容理解、用戶理解、內容推薦、游戲廣告,在所有這些落地場景中背后有硬件層、平臺層、算法層一整套的AI硬核技術,這些技術會幫助我們用戶生產(chǎn)出更多更有趣的內容,幫助平臺更好的理解用戶每天上傳的視頻,大家知道每天上傳的視頻有1500萬,如果沒有非常強大的系統(tǒng)理解用戶行為和需求,就沒辦法把這些視頻準確的分發(fā)給用戶。
       

      端上視覺技術賦能短視頻應?

       
      我們介紹幾個案例說明端上視覺技術如何賦能短視頻應用,快手Y-tech是我們公司專注于端上計算機視覺以及其他AI核心技術的部門。
                    
      這兩個例子是去年上線的一個快手時光機可以通過現(xiàn)在的樣子看到60年后的樣子。今年8月份Y-tech北京團隊上線了一個快手的娃娃臉,快手娃娃臉是國內首家實現(xiàn)端上實時GAN,從技術的層面講變老是比較容易的,變年輕是比較難的,跟現(xiàn)實生活是一樣的。為什么變老比較容易?它不需要改變整體的形狀,只需要在臉上加上一些元素,變年輕需要通過對抗生成網(wǎng)絡的技術改變臉部整體的信息。
              

      還有個例子是用戶只需要輸入一幅圖像,可以利用全自動的過程生成右邊的視頻,以全自動的方式把天空變暗,建筑物里的燈光亮起,大家都開始加班,建筑物上的大屏幕開始播放快手視頻,所有這些都是自動實現(xiàn)。當然還有更多的例子,我們可以通過對用戶拍攝場景進行很好的理解,然后加入各種各樣虛擬元素,使得用戶拍出更多更好玩的視頻。
       
      所有這些端上視覺短視頻的應用場景在技術上的挑戰(zhàn),我們總結為三方面:第一是不可控的復雜場景和環(huán)境,比如在短視頻應用中手機是拿在用戶手里的,想怎么拍就怎么拍,可以橫著、倒著、晃動拍,有各種完全沒辦法事先預料的場景;第二是極為有限的移動設備計算資源,大家知道一般的手機計算能力相對GPU來說是遠遠不如的,所以給我們的研究工作帶來了更多挑戰(zhàn);第三是由于所有應用有很強的時效性,所以看到一個熱點應用的時候就需要快速開發(fā)和部署模型,這也是短視頻所獨有的挑戰(zhàn)。
       
      為了解決這些挑戰(zhàn),我們的解決方案和研究方向有三個要素:第一是我們運用高度結構化的模型和充分利用先驗知識,跟它相對的策略是隨便一個什么任務只要知道了這個任務的輸入和輸出,然后以一種盲目的方式去確定很多數(shù)據(jù),訓練一個很大的神經(jīng)網(wǎng)絡,業(yè)界很多應用場景都是這樣用的,但是對于獨特的應用場景,我們?yōu)榱颂岣咝市枰痈叨冉Y構化的模型運用更多的先驗知識,不能簡單是從輸入到輸出的網(wǎng)絡。
       
      第二是面對計算資源的緊缺需要充分發(fā)掘各種冗余來提高算法的推理效率,舉個簡單的例子,當你看到一個視頻的時候,傳統(tǒng)方法是每一幀都用同樣的網(wǎng)絡,每一幀都重復同樣的計算,雖然你是在動,但是視頻有很大的相似性,每一幀都重復計算就會有很多的冗余。
       
      第三是用高度結構化的信息表示提高學習算法利用數(shù)據(jù)的效率。
                    
      關于在復雜環(huán)境下運用高度結構化的模型和先驗知識進行推理,這里詳細講解一個案例。這是我們今年發(fā)表在ICCV的一篇論文,該論文中的場景是從一只手的單幅圖像出發(fā),希望得到手的姿勢和形狀的完整信息,然后用右邊這樣一個三維網(wǎng)格來表達,從而對它有一個完整理解。
                    
      為了解決這樣非常困難且有非常多不確定性的任務,我們需要一整套非常結構化的方法,簡單介紹一下這個方法。
       
      從左上角開始,首先是從單幅的圖像經(jīng)過一個類似于網(wǎng)絡的結構得到二維關鍵點信息,每個二維關鍵點都用一個Heat maps表示,然后進入第二個模塊,通過迭代回歸網(wǎng)絡,它的輸出就是兩部分參數(shù),一部分是攝像機參數(shù),比如從什么樣的遠近來看這只手,另一部分是網(wǎng)格參數(shù)。
       
      再看右下角這部分,從網(wǎng)格參數(shù)出發(fā)有一個從參數(shù)得到完整的手的網(wǎng)格,這些參數(shù)控制了手的形狀和它的姿勢,通過這個參數(shù)得到的三維網(wǎng)格再加上相機參數(shù)就可以計算很多關于手的特征,有了這些信息之后,訓練模型的時候就可以拿這些計算特征和它的真實值相比得到一個函數(shù),比如二維關鍵點,我們可以得到一個二維關鍵點位置的準確性的函數(shù),輪廓的信息也可以跟它的真實mask相比得到一個函數(shù)。
       
      值得一提的是。還有一部分是關于手的幾何約束,三維上手的姿勢是不能任意變化的,比如每個手指上的關鍵點必須在一個平面上,不可能一個關節(jié)往這邊彎另一個關節(jié)往另外一個方向,關鍵點不在一個平面,這是不可能的。有了所有這些函數(shù),很重要的一條是這里使用的關于手的模型是一個可微分的,這些網(wǎng)格的頂點位置和那邊的參數(shù)之間是一個很微分的關系,這樣我們就可以對整個結構化的模型進行端到端的訓練。
                    
      剛才提到的第二部分,從關鍵點到形狀參數(shù)這樣的網(wǎng)絡叫做迭代回歸網(wǎng)絡,這個網(wǎng)絡的輸入是兩部分,一部分從這些二維的關鍵點位置得到的feature,另一部分是對這些參數(shù)的預估值,一開始是一個初始值,每次我們都從feature和初始值出發(fā)得到一個修正值,這個修正值會被加到那個初始值上面再使用一次網(wǎng)絡(更新),再得到一個修正值,經(jīng)過幾次的修正得到最后的參數(shù)值。這樣一個推理的過程經(jīng)過檢驗比直接從feature出發(fā)得到那個參數(shù)的最后值的直接網(wǎng)絡效率高很多,所以在同樣的大小下它的準確性更高。
                    
      這是一些結果的事例,最左邊的一列是輸入的圖像,再過來的三列是從這個圖像不同角度的得到的手的網(wǎng)格,所以我們是從一個圖像可以完整地得到手的三維信息。由于這個方法中使用了大量的先驗知識和極核約束,有遮擋的時候網(wǎng)絡得到了很好的應用。
       
      下面進入下一個案例,在這些應用中如何適應極為有限的移動設備計算資源,我們將會介紹兩個工作,這都是Y-tech西雅圖實驗室今年發(fā)表的。
                    
      在移動端部署一個神經(jīng)網(wǎng)絡模型的時候我們關心的通常有三方面,我們不僅要關心結果的準確性,重要的是我們還需要關心計算過程的能耗以及計算過程的時間。
       
      傳統(tǒng)的方法是通過一個剪枝方法來優(yōu)化這個模型的能耗時間,什么叫剪枝的方法?我們去壓縮模型的大小,把模型的大小作為一個直接的目標函數(shù),通過壓縮模型的大小間接優(yōu)化它的能耗以及推理的效率,具體的剪枝方法分為三類,在某一層剪除一些節(jié)點,在一個矩陣中把一些元素設為零或者整行整列設為零,或者對這個位置進行量化。
                    
      剪枝方法隱含的假設是這里用到的目標函數(shù)(也就是模型大?。└覀兊闹苯幽繕耍ㄟ\算時間和能耗)有一個嚴格對等的關系,但這個關系在實際中并不成立,一個更合理的方法并不是用模型大小作為目標,而是直接把能耗和運算時間作為一個目標的優(yōu)化。
                    
      這么做肯定會有困難,問題是可以做成這樣的形式,最小化的問題是我們在一個訓練集上訓練這個模型,底下的約束是我們需要在訓練這個模型的同時,使這個模型滿足某個能耗的約束,有兩個關鍵的問題是,我們如何看這樣的能耗約束以及在這樣的約束下如何處理訓練的問題。
                    
      第一個例子是在底層硬件操作的層面,我們把這樣的能耗約束進行一個建模,我們把神經(jīng)網(wǎng)絡中的線性層抽象成一個矩陣乘積形式,分解成兩部分,一部分是要進行計算,另一部分是其數(shù)據(jù)讀寫,我們把每一步計算和數(shù)據(jù)的讀寫都拿出來給一個參數(shù),對整個過程進行建模。
                    
      這個工作中我們用了剪除連接關系的方法。建模后發(fā)現(xiàn),約束在現(xiàn)在的硬件實現(xiàn)上表現(xiàn)為分段線性函數(shù),這里有很多參數(shù),取決于硬件和實現(xiàn)的具體環(huán)境,這里還有一些取最大和最小的操作,導致它并不是一個線性函數(shù),而是分段線性函數(shù),因為我們的硬件上有一些緩存操作,這就導致當它達到一個緩存最大值時會有非線性表現(xiàn),這里的β1,β2是緩存大小的函數(shù)。
             
       
      SGD是我們用來訓練所有神經(jīng)網(wǎng)絡模型的基本方法,簡單描述就是現(xiàn)在有一個約束,所以先用SGD走一步,發(fā)現(xiàn)現(xiàn)在不滿足約束了,就把它投影到約束里,找一個跟現(xiàn)在最近的地方滿足這個約束,再按照SGD的方向走一步再投影回來,是這么一個循環(huán)的過程。
                    
      這需要解決的一個關鍵技術問題是如何實現(xiàn)投影的分子,當給定這個約束時,如何從一個不滿足約束的地方跳到滿足約束的地方。在具體問題中經(jīng)過一系列的推導,我們發(fā)現(xiàn)最后是可以寫成線性約束,在每個投影的步驟上只需要滿足一個線性約束。
                    
      這個問題最后等價于背包問題:我有一個書包,現(xiàn)在有一堆東西,怎么用這個書包拿走價值最大的東西,現(xiàn)在我有一堆神經(jīng)網(wǎng)絡的鏈接,如何在固定資源下使用更多神經(jīng)網(wǎng)絡鏈接?
                    
      背包的問題是Knapsack,如果不出意外的話沒有什么好辦法,但是在理論上會有一些實現(xiàn)起來非常復雜的近似的方法,我們用了一個非常簡單的方法,先揀值錢的拿,先拿黃金,再拿白銀,再拿其他的。 
                   
      我們比較了三種不同的網(wǎng)絡,比較了SSL、MP、EAP這幾種現(xiàn)存方法,這個圖的橫軸是Normalized能耗,豎軸是準確度。藍色線表現(xiàn)我們在同樣的能耗下可以比MP的準確度高1.7%,橫過來這個距離表示我們在同樣的準確度下可以比EAP多節(jié)省30%的能耗。
       
      下面進入第二個例子,通過剪除節(jié)點的方式。
                    
      剪除節(jié)點表現(xiàn)在模型參數(shù)上,我們會把模型整行設為零,(2,0)表示矩陣里的非零行的個數(shù)。這里需要考慮的主要關系是每個層上面非零節(jié)點的個數(shù),用這些東西來表達整個能耗時候并不是一個線性函數(shù),而是雙線性函數(shù),因為相鄰的層之間有關聯(lián),而隔的很遠的層之間可能沒有關聯(lián),把每個相鄰的層關聯(lián)起來的話寫出來就是雙線性函數(shù)。
              
                     
      我們把這個能耗用這樣一個雙線性函數(shù)來建模,把這個模型參數(shù)用實測的數(shù)據(jù)擬合,就可以發(fā)現(xiàn)它在兩種流行的硬件上都可以擬合得非常好。求解這樣一個雙線性函數(shù)的優(yōu)化問題也可以有很多不同的方法,比如前面說到投影的SGD的方式,這邊論文還介紹了ADM的方式都可以求解這個問題。
                    
      看一下結果,我們把這個方法比較了幾種現(xiàn)存方法,縱軸是準確率,橫軸是能耗,可以看出越往縱深越好,這些方法超出了現(xiàn)有方法。

      追求計算機視覺的極致效率

       
      下面講一講Y-tech硅谷實驗室現(xiàn)在正在進行和落地的研究工作,分為兩部分,總目標是提升計算機視覺算法的效率,效率包含計算資源效率和數(shù)據(jù)資源效率。
       
      計算資源的效率能夠提高是因為有很多冗余的計算,比如對每一幀都用一個模型的話實際是進行了一個冗余的計算;數(shù)據(jù)資源的效率,在學習知識的時候因為現(xiàn)在的神經(jīng)網(wǎng)絡類似于黑箱子,為了更加形象的說明為什么可以很大程度上提高效率,舉個例子。
                     
      我們對比了人的認知過程的一些特性和現(xiàn)有神經(jīng)網(wǎng)絡的一些特性,發(fā)現(xiàn)人的認知過程是基于一個可分解的結構化表示,這讓人類可以用非常高的效率來學習,而且可以進行非常高效的推理。當然這樣一個比較并不能簡單理解為我們要去模仿人的大腦建造AI,而是我們可以通過人的認知方式的特征出發(fā),通過類比發(fā)現(xiàn)現(xiàn)有的AI算法可能存在的局限性,知道可以從哪些方面進行改進。
                    
      這里舉一個例子,這里有很多關于人的圖像,上排是真實圖像,下排是一些虛擬圖像,假設現(xiàn)在的任務是要從所有圖像中如何學習別人的姿勢。假設人來看這些圖像,我們對于真實圖像和虛擬圖像的理解方式本質上差不多,比如我們會把它分解為形狀和顏色紋理兩部分,形狀的信息對于我們學習人體姿態(tài)知識是有用的,顏色和紋理相對來說是不那么重要的,這樣一種分解就可以讓人在學習知識時把不同樣本之間有用的部分聯(lián)系起來,把不同樣本之間的形狀信息聯(lián)系起來,從而達到非常高效的利用樣本的學習方式。
       
      但是現(xiàn)有的神經(jīng)網(wǎng)絡方法在表示視覺信息的時候對于顏色紋理、形狀所有東西是混在一起的,因為這樣一個特性對真實圖像和虛擬圖像進行表示時,在特征空間中會match到不同區(qū)域,這樣的特性導致它沒辦法把不同樣本以合適方式聯(lián)系在一起,這樣就使學習的效率非常低。 
                    
      困難是由于表示方式造成的,這是我之前在Vicarious AI的工作,我們針對驗證碼這樣一種特殊類型的圖像建造了一個把形狀和紋理分開表示的模型,這個模型只需虛擬數(shù)據(jù)就可以訓練,比現(xiàn)有最好的神經(jīng)網(wǎng)絡在300倍的數(shù)據(jù)量下的處理效果要好,這個工作發(fā)表在2017年的《科學》雜志。
       
      總結一下前面講的觀點。如果希望像人一樣高效的從很少的數(shù)據(jù)或者虛擬的數(shù)據(jù)中學習,我們就需要分解的本事,把視覺信息分解為形狀輪廓信息和顏色紋理的信息,對于很多任務來說只有形狀輪廓是有用的,顏色和紋理不是那么重要,通過把不同屬性信息分解出來才能在不同樣本中有效建立聯(lián)系,從而提高學習效率。
       
      進行一個類比的話,我們想要實現(xiàn)像人一樣高效的推理也需要一個分解,這是另一個角度,把視覺信息分解為形狀、視覺屬性和位置運動的信息,這樣我們在看見一個運動場景時就不需在每一幀都反復識別不同的運動物體,對已經(jīng)識別的運動物體,我對它的屬性就了解了,只需要用知識判斷它如何運動的。
                    
      這樣具體的想法怎樣落地到實踐當中?傳統(tǒng)的方法是通過單幀人工標注圖像來訓練一個神經(jīng)網(wǎng)絡,每一幀都用同一個網(wǎng)絡,我們的工作是在前面神經(jīng)網(wǎng)絡的基礎上出發(fā)進行一些結構上的修改,得到一個針對序列的網(wǎng)絡,用我們標注的視頻來訓練這樣一個RNN網(wǎng)絡,這個網(wǎng)絡就會發(fā)掘幀間冗余,利用動態(tài)信息,部署到視頻應用。
       
      簡單總結一下Y-tech硅谷實驗室的研究內容。我們希望從一個可分解的、結構化的視覺信息表示出發(fā),全面提高現(xiàn)有計算機視覺算法中的數(shù)據(jù)和計算效率,提高模型推理的效率,以此實現(xiàn)全面的效率提升,賦能短視頻應用。

      演講嘉賓簡介: 

      王華彥,斯坦福大學計算機科學博士,師從Daphne Koller教授研究計算機視覺。曾就讀于斯坦福大學人工智能實驗室,為復雜化的概率圖模型開發(fā)了高效的推理算法,并將其應用于計算機視覺研究。王博士的研究曾登上行業(yè)期刊CACM首頁,并在多個頂級會議如CVPR、ICML、ECCV、IJCV、AAAI上發(fā)表。王華彥本科和碩士階段就讀于北京大學,師從査紅彬教授,也曾參與香港科技大學楊強教授的科研活動。加入快手前,他曾擔任Vicarious AI的高級研究員,以極其高效的數(shù)據(jù)方式,開發(fā)高度結構化的模型,解決CAPTCHA和Robotics等現(xiàn)實問題。他在人工智能領域的工作曾發(fā)表于美國的《科學》雜志。王博士現(xiàn)在領導快手位于硅谷的Y-tech實驗室,在開發(fā)高效的人工智能解決方案的同時,也將更多的尖端技術引入快手的移動平臺。

      (*本文為 AI科技大本營原創(chuàng)文章,轉載請微信聯(lián)系1092722531)

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多