創立八年,短影片平臺快手目前已經有超過兩億人在每天登陸使用,每天還有超過 1500 萬條短影片被製作和上傳,每天的累計觀看數更是達到 150 億。
擁有如此龐大的使用者數,快手使用者涵蓋中國社會的各個地域和階層,生產豐富的影片內容。這些使用者拍攝的影片就像一個社會博物館,幾十年後許多生活方式和民俗都會隨著社會變遷而消失,但它們都以最原始的形式儲存在快手使用者影片裡,其覆蓋之廣泛或許連任何官方或專業的影像資料都無法替代。
有媒體用這樣一句話來概括快手平臺的作用:在快手上遇見最廣袤的中國。幾年前在新聞稿上讀到這句話,讓王華彥至今印象深刻。
提高兩種 AI 演算法效率服務快手“老鐵”
毫無疑問,王華彥認可快手作為短影片平臺傳遞出的這種價值理念,如今作為快手位於矽谷的 Y-tech 實驗室負責人,他告訴 AI科技大本營(ID:rgznai100),這也是其加入快手的其中一個主要原因。
價值理念的匹配固然重要,但自己的研究興趣與快手在同一技術方向上的重視,讓這種雙向碰撞會一拍即合。2018 年 7 月,王華彥在其史丹佛師兄、現快手 Y-tech 負責人鄭文的牽線下正式加入。
王華彥,現快手 Y-tech 矽谷實驗室負責人。他是史丹佛大學電腦科學博士,師從機率圖模型(graphical models)領域的頂尖學者和奠基人之一的 Daphne Koller 教授研究計算機視覺。就讀史丹佛大學人工智慧實驗室期間,為複雜化的機率圖模型開發了高效的推理演算法。他的研究曾登上在ACM 通訊(CACM)的研究亮點(research highlights),並在多個頂級會議上發表。王華彥本科和碩士階段就讀於北京大學,師從査紅彬教授,也曾在香港科技大學楊強教授的實驗室訪學。
在此之前,無論是在史丹佛讀博,還是後來在矽谷做通用人工智慧的公司 Vicarious AI 擔任高階研究員,王華彥的主要專注點一直是如何從各種角度提高 AI 演算法的效率。他進一步解釋,**效率包含兩方面:一是學習階段利用資料的效率,即利用更豐富的模型先驗結構從更少的資料學到更多知識,二是推理階段的計算效率。**圍繞這兩大方向,他的一項研究成果入選了 2013 年 ACM 通訊(CACM)的研究亮點(research highlights)。
在 Vicarious AI,他和團隊的研究工作繼續圍繞提高效率這一目標,重點關注資料效率和泛化(generalization)能力,他們發現,在特定場景下高度結構化的模型能夠用幾百分之一的訓練資料就超過業內最強的卷積神經網路(CNN)的泛化能力。這一研究最終發表在 2017 年的《科學》(Science)雜誌。
快手的核心技術需求與王華彥的研究方向高度契合。為了輔助使用者進行更多內容生產,快手在業務中使用了大量 AI 技術進行賦能,比如美妝裝飾特效、跳舞機遊戲、控雨特效、AR 特效、染髮特效、背景替換和魔法表情等。這些特效用到了人臉關鍵點、人體關鍵點識別、手勢識別、視覺慣性里程計、頭髮分割、背景分割等 AI 技術。
這些技術應用背後,需要透過標註大量影像,作為資料集進行監督學習,訓練出模型。但這種方式並不十分有效,相比人類只需要少量樣本的學習方式而言,效率很低。
同時,快手的“老鐵”們普遍使用的大眾型手機對 AI 演算法的推理計算效率提出了前所未有的高要求,這迫使他們快速開發並在大眾移動裝置上部署最先進的 AI 演算法,而目前業界開發 AI 演算法的主要瓶頸在於資料,如果能大幅提高資料利用效率就能提高開發效率。
問題在於,快手具體如何提高利用資料的效率以及推理計算效率?
追求極致效率:開發下一代計算機視覺演算法
坐落在史丹佛校園旁邊的快手 Y-tech 矽谷實驗室,其研究大方向是追求 AI 演算法的極致效率,王華彥稱,他們在方法上主要專注於利用更加結構化的模型以及結構化的視覺資訊表示,充分利用先驗知識,提高演算法效率,從而落地到內容理解、編解碼和內容生產等不同的場景。
將這些模型應用部署到端上,主要的挑戰來自任務的多樣性以及移動計算裝置及其底層軟硬體的多樣性。他指出,將一般性的普適性方法應用到不同的場景中需要適應它們各自的性質和需求。
而所謂的追求“極致效率”,在研究方面的體現就是開發下一代計算機視覺演算法。
目前業界和學界基於卷積神經網路(CNN)和大資料的計算機視覺方法有比較明顯的侷限性,王華彥舉例稱,人的視覺系統只需要很少的樣本就能學習一個概念,而 CNN 需要非常多的樣本。這是因為人在看到一個物體的時候,對於它的形狀、輪廓、紋理、顏色等屬性有一個結構化的(structural)、可拆分的(compositional)表示方式,而 CNN 在“看到”一個物體的時候,這些不同方面的屬性是被混合在一個“黑箱子”裡面,造成了 CNN 在學習概念的時候利用樣本的效率很低,因為它無法將不同的樣本以比較合理的方式聯絡起來。
值得注意的是,在深度學習興起之前,早期的計算機視覺方法更多的是採用這種結構化的表示方式,但並沒有取得深度學習方法這樣成功以及業界的廣泛應用。從近些年的發展來看,王華彥認為,越來越豐富的結構化資訊表示方式正在被引入到深度學習方法中,但離能夠從很少的資料中高效率學習的“下一代計算機視覺演算法”還有非常大的距離。
從推理計算效率方面來說,人的視覺系統在面對動態場景的時候,會將物體的屬性和運動資訊分離開來,並不會每時每刻都反覆重新“識別”一個在運動或變形的物體。一個高效的計算機視覺系統也應該對動態資訊採取類似的表示方式及推理方式,即由當前時刻物體的屬性和狀態自然推演下一時刻物體的屬性和狀態。這一過程就需要將物體的形狀、紋理等各方面的屬性進行一種可拆分的(compositional)表示,從而對它們分別運用對應的先驗知識進行推理。
而基於 CNN 的方法由於無法將物體各方面的屬性分開表示,在面對一個動態場景時,不可避免地需要進行大量冗餘計算,反覆重新“識別”物體及其狀態。這其中很大部分的計算資源浪費都需要在一套可拆分的視覺資訊表示方法下才有可能解決。
當然,AI 演算法處理資訊的方式和人腦還是有非常大的不同,所以他認為以上所述不能被粗暴地理解為“模仿人腦建造 AI”,而應從人的認知行為在某些特定方面的某些特性獲得啟發,找到目前 AI 演算法潛在瓶頸以及能夠提高的地方。
探索計算機視覺等 AI 前沿演算法固然不錯,但更常見的是,大部分實驗室環境下表現優秀的演算法卻在實際落地到應用時不盡人意。
在王華彥看來,前沿演算法由於很“前沿”,往往缺乏一個成熟的“使用說明書”。比如在 A 情形和 B 情形下應該如何 debug 等等,這往往需要有一定研究經驗的演算法科學家和工程師來根據具體情況分析解決方案。而學界做研究跟業界做研究一個顯著的不同點在於,前者發表一篇論文往往是展示一兩個新演算法的成功案例,而後者的一個方法性研究工作要想成功落地,則需要一個比較流程化的描述,對各種可能遇到的情形都能夠做到有章可循。在他看來,如何開發一個這樣的“流程”應是演算法落地的主要挑戰。