天天看點

【酷幹貨】牧己:探索文娛大腦建設之路

寫在前面:

本文根據《優酷技術沙龍——優酷認知實驗室專場》現場,阿裡巴巴資深技術專家牧己的演講《探索文娛大腦建設之路》整理成文,圍繞着人工智能大資料的魚腦平台在文娛行業的一些思考和實踐展開。

【酷幹貨】牧己:探索文娛大腦建設之路

以下是演講全文:

我們先簡單介紹下魚腦平台,其實做大腦這件事情上稍微有點規模的網際網路公司都在做,比較有名的如Google大腦、百度大腦,他們更多關注是的是機器感覺、機器智能、自然語言處理、分布式系統并行計算等等這些技術,做的挺深入的,也在人類聽、說、看的一些問題有一些感官技術的應用。魚腦平台,誕生于文娛行業,我們也會深入一些感官相關的技術,但其實這不是我們核心的方向,魚腦的核心目标就是希望提供一個輔助決策的平台。

那麼,為什麼需要提供一個輔助決策平台?内容這個産業,2000多年前就有人開始研究了,電影産業也發展有100年了,目前内容行業可以說出現了前所未有的繁華,大量資金流入,産出的内容成倍增長(據統計2017年各種影視内容加到一起就幾千部,上萬集),僅僅是分析内容本身就已經很難,更何況要加上各種周邊資訊、各種多變的環境資訊等等。内容産業是一個特殊産業,人們能夠親身感受内容策劃、生産、制作等等各個環節的機會是很少的,不同人對于不同内容的感官差異還是很大的。是以,在現在很多項目都會出現規劃的時候是一個樣子,制作的時候是另一樣子,産出的時候和前面兩者都不一樣,最後播出的效果可想而知,内容的商業風險還是很大的,請看下圖的形象表現:

【酷幹貨】牧己:探索文娛大腦建設之路

是以,我們考慮建構魚腦平台,這樣一個輔助決策平台。魚腦建設會考慮文娛行業内容本身的豐富性、多樣性,考慮戲劇内容創作理論,考慮内容生命周期及各産業鍊環節,考慮人類對于内容的需求及人類對于文娛内容的認知的過程和偏差等等,結合大資料和AI的技術,為人腦賦能,在内容的采買、投放、制作、宣發、投放各個環節上提供一些輔助決策,可以參看下圖:

【酷幹貨】牧己:探索文娛大腦建設之路

下面我們看一下魚腦平台的技術架構,如下圖:

【酷幹貨】牧己:探索文娛大腦建設之路

很簡單三層架構,從下往上依次資料模型層、基礎資料層、應用模型層。資料模型層負責擷取全網的文娛内容以及相關的各種資訊,經過加工、處理、存儲等環節沉澱到資料倉庫中,建構出底層基礎文娛資料倉庫體系。基礎資料模型層,深入研究内容了解&使用者了解相關的各種基礎AI算法,如情感分類、使用者心理标簽、人臉識别、視訊主創曝光識别、顔值打分等等,這些算法對于基礎資料倉庫中的資料進行處理後生成一些中間産出資料,再存儲到資料倉庫中,最終供上層應用模型使用,應用模型産出最終支援魚腦平台産品使用。核心還是通過大資料和AI算法對内容、對使用者進行了解。

我們今天把分享的重點放在中間層,基礎模型上我們的一些思考,分享三個技術點:第一,自然語言。第二,CV。第三,通用的預測能力。每一部分我會聊下我們的思考,然後給出我們做的一個實際應用的例子。

第一部分,我們覺得今天的自然語言處理這一塊形成了以循環網絡、rn、lstm這樣的sequence language model為基礎的語言模型,它的特點就是通過Distribute representation,也就是分布式表達,我們可以把上下文關系學學出來,誕生出來我們今天非常重要的word2vec,最近大家應該聽過剛崛起的bert,你會發現bert特别恐怖,word2vec出來的時候就很恐怖,bert出來就更恐怖。這個model基本上能給大部分場景去用,能解決你自然語言處理大部分的問題。

是以,在自然語言這一塊,我們的一個思考和感受是:自然語言處理這一塊learning出來的東西,它的通用性和泛化性更強,我們基于Embedding的結果,它的使用價值更大。是以,資料這個層面上的Embedding是一個很重要的核心。另外,網絡架構這一塊,如何把我們今天要解決問題的Domain knowledge模組化到你的network裡面,這個是我覺得另外一個重要的核心。我們在劇本、IP應用自然語言處理的整個工作當中,很多的工作會圍繞這個兩個最核心的事情展開。下面看下我們在IP&劇本分析中是如何具體實作的。

【酷幹貨】牧己:探索文娛大腦建設之路

這是一個典型的自然語言的問題,有幾個人物。我們怎麼通過這個判斷他們之間沖突與否呢?這個就是我剛才講的在自然語言這一塊最核心的東西,還是在Embedding,一定要足夠多、足夠豐富,通過Word2vec、 Bert做的Embedding,這個是你整個學習的基礎。

【酷幹貨】牧己:探索文娛大腦建設之路

這個是一個典型的TextCNN的架構,中間做了一個網絡架構的設計,重新設計。這就不說了,然後把文本做Embedding,Embedding完了之後詞項量送進來,然後這個地方選幾個Feature map我覺得這個核心不在這兒,核心是在Pooling。整個句子看成一個sequence,通過第一個人物,第二個人物,切成三段, Embedding卷完了之後,位置的資訊帶過來是做對齊的,再做Pooling之後再去學,這一塊的結果就是我們前面在文法上面的結構。

這塊我再分享一個我們内容創作了解的具體執行個體,給大家更直接的感受。下面給大家看下我們在内容創作了解這塊的基本架構:

【酷幹貨】牧己:探索文娛大腦建設之路

最底下的是基礎技術,中間是識别技術,最上面是基于這些戲劇理論拆解出來的這樣一些核心的能力。我們以《射雕英雄傳》的劇本分析為例,展開下。《射雕英雄傳》大家都很資料,全書共有100多個人物,男一女一肯定是郭靖和黃蓉,除了郭靖跟黃蓉之外,還有哪些很核心的人物?

我們通過模型跑了下,100多人戲份排在前面的分布基本上是這樣子的,21%、16%、5%、4%、3%。第一次算法跑出這個資料的時候,我也挺驚訝的,我個人覺得男一特别強,他應該有60%的戲份,其實沒有,隻有這麼個戲份。但是為什麼他能構成男一呢?通過關系分析,我們發現男主貢獻了92%的人物關系,也就是說這裡面有100個人,90多個人郭靖都跟他們打過交道,是以這說明什麼?人脈很重要。黃蓉貢獻了82%的人物關系,第三、第四的三大天王再加上周伯通,他們的戲份比較靠前,但是他們貢獻的人物關系隻有60%多的人物關系。而柯鎮惡和丘處機各自貢獻了75%的人物關系,說明什麼問題?這兩個人在整個的内容過程當中起到了一個牽引的作用。

通過這樣的分析,我們能把整個的人物結構劃出來。我們還可以做一個更定量、定性的判斷。除了角色占比外我們還能夠分析角色間關系的好與壞,以及劇情沖突曲線:

【酷幹貨】牧己:探索文娛大腦建設之路

上圖其實是從一個單人的視角,看他和其他角色之間人物關系的好與壞。綠色表示關系好,黃的表示關系差。

【酷幹貨】牧己:探索文娛大腦建設之路

上圖是整個劇本的劇情沖突分布曲線,沖突最高的兩個塊是華山論劍和郭靖誤以為江南七怪被黃藥師所殺,與黃蓉決裂。

第二部分,CV。在很多場景中,如情感識别大家都會用大量的Embedding的方式去做,但是在CV這個領域我們發現不是這個樣子,CV因為卷積網絡的卷積跟Pooling的操作,它是通過卷積跟Pooling,損失一部分細節資訊,逐漸向高層去抽象,抽象完了然後達到你的學習目标。在這個過程當中,你會發現它常常學出來的最後的那個Embedding的結果很難去做低次元的一個表達。是以,在不同領域的應用會有比較大的差别,你很難用一個通用的Embedding去解決所有的問題,比如說Google的facenet非常出名,基于facenetEmbedding出來的結果,你在其它的應用裡面就很難在表情識别直接去應用。

我先給大家分享下我們這塊的一個具體實踐,通過CV技術我們識别視訊中人物的表情進而分析人物的性格和整個視訊的情緒曲線,如下圖:

【酷幹貨】牧己:探索文娛大腦建設之路

人物性格了解通過雷達圖表現了人物在7個情緒值上的對比情況。

反貪風暴是一個犯罪動作題材的電影,角色情緒值都比較明顯,符合犯罪類節目的特點。北京遇上西雅圖這是個愛情喜劇,你會發現吳秀波在七個情緒上的表達都處于一個中低水位,情緒波瀾不驚,是以是一個典型的成熟大叔的形象。而湯唯她就比較明顯,悲喜交加的這種情緒表達的更靈活、活現,是以是一個愛情少女的形象。而在喜劇裡面,你看他各個方面的情緒表達,特别誇張。羞羞的鐵拳是開心麻花的喜劇,我們看是為了笑,但是你會發現他在裡面的悲傷跟驚訝的情緒特别多,是以我們的喜劇建立在别人的悲傷之上。

【酷幹貨】牧己:探索文娛大腦建設之路

情緒曲線分析視訊每個時間點的正負情緒值,你會發現愛情劇的情緒密度是非常稀疏的,而喜劇情緒密度是非常密的。

我們來看下具體的技術實作,CV這一塊,我們覺得核心會在網絡架構的改造以及Loss的設計,是以這一塊的核心會是 SoftMax、Margin loss、focal loss,同時會應用一些SVMmargin的Loss,下面給出一個代表性的情感識别,請參看下圖:

【酷幹貨】牧己:探索文娛大腦建設之路

這一塊,大家做的比較多了,我覺得這還是個識别的問題。這一塊我們做了一些簡單的工作,用了SVM的Margin loss,使用後的效果會比不用Margin loss的效果好。前面講過,我們直接使用Google Facenet Embeddind的一個結構去學,學到的效果很糟,Google Facenet的loss是Triplet Loss,Triplet Loss是在學人物人臉的特征,它要把相近的同一個人放在一起,不同的人距離大,是以它學的過程當中是把你的人物臉的特征學出來,不是學的表情,是以表情被忽略了,學出來的效果比較糟糕。結論就是正常的Embedding在這種情況下效果不是那麼的好,這是第一點。第二點就是Margin Loss的設計。

最後進入了一下預測能力的這部分,這個是我們今天具備對于一個未開播的内容做一個預測的學習能力。整個基本思考架構請參看下面的圖:

【酷幹貨】牧己:探索文娛大腦建設之路

我覺得我們今天思考的是預測通用性的問題,換句話說深度學習都可能會面臨的問題。學習能力好、參數多和樣本資料量之間會有一個關系,但是你很大部分情況下會遇見資料不夠以及資料不規範的問題。是以我們在資料這塊,嘗試通過資料生成以及資料增強對資料進行處理後,處理後會取得3到4個百分點的提升,而後考慮資料和未生成資料的差異,生成資料的隸屬程度有多深,我們又加了高斯的隸屬度,來判斷它的真維性,這樣就又會有3到4個百分點的提升。

模型這一塊,是我們也做了一些不一樣的嘗試,我們把DNN和Relation Net,以及MTL相結合,然後做一些TransferLearning,這個會構造一個全新的網絡。我們的邏輯就是把前面的模型各部分的因素都拆開,複雜的因素用DNN去接,外部競争的關系去Relation Net做推理去接,最後面用MTL,根據情況會加一些其它的模型。這樣的一個網絡雖然參數比之前多了,但是它整個每一塊的學習會更好,是以學習結果也會更加好一些

【酷幹貨】牧己:探索文娛大腦建設之路

最後是Uncertainty Learning這塊,從2016年開始它逐漸熱起來,用變分去做了一些事情。

【酷幹貨】牧己:探索文娛大腦建設之路
【酷幹貨】牧己:探索文娛大腦建設之路

這一塊我不詳細說了,大家回去感興趣的可以看一下,貝葉斯Network,它怎麼用變分去做,最後得到一個結果。

簡單總結一下,從技術的角度來看,我們魚腦平台會結合具體的文娛産業的行業特點,深入研究自然語言、CV等相關的技術,抽象來看每一塊的技術特點,以及核心要解決的問題,做長期的布局,這個過程中讓魚腦提供更多的能力,為内容輔助決策提供更大的價值。

繼續閱讀