情感計算在 ugc 應用進展

觀點、情感以及與之相關的許多概念,如評價、態度、感情和心情,與我們主觀的感覺和感受密切相關。我們對於現實世界的感知和感受,包括我們做出的任何選擇,也很大程度上受到他人對於當前世界的洞察和觀點的影響。情感分析伴隨着網絡社會媒體(如評論、論壇、微博、新聞資訊網站)的興起而快速發展。這些也被稱爲_用戶生成內容(ugc)_的社會媒體數據,社會媒體中用戶生成內容蘊含了大量的用戶觀點信息,要從中挖掘有用知識需要對情感計算與觀點挖掘問題進行研究。自 2000 年來年初以來,情感計算已稱爲自然語言處理領域最活躍的研究問題之一。情感計算系統幾乎在每一個企業、衛生機構、政府乃至整個社會都有廣泛應用。

情感計算任務

根據所處理文本的顆粒度,情感計算研究可以劃分爲三個級別:篇章級、句子級和屬性級。下面進行簡要介紹:

 篇章級

篇章級情感分析的目標是判斷整篇文檔表達了褒義傾向還是貶義傾向。如一篇商品評論,我們需要判別出這篇評論對於目標商品總體上持褒義情感傾向還是貶義的情感傾向。這一任務的基本假設是認爲一篇文檔只對一個實體(如一個商品或者服務)進行了評價。這種假設與實際情況顯然是不符的,在現實中,很多文檔會同時對多個實體進行了評價或比較,因此需要對目標文檔需要做更細粒度的情感分析。因缺乏使用價值,篇章級情感分析目前研究較少。

 句子級

句子級情感分析任務是判別一個句子是否包含了褒義、貶義或者中性的情感。這裏的中性情感往往意味着沒有表達任何觀點。

 屬性級

無論篇章級還是句子級情感分析,都無法確切知道用戶到底喜歡或者不喜歡的是什麼東西。前面兩個級別的分析方法都無法獲取觀點評價的對象。例如我們僅僅知道 “我喜歡 iphone12” 中包含褒義情感,這對於實際應用來說顯然是不夠的,我們需要知道用戶對 iphone12 表達了褒義的情感。句子級情感分析假設:如果一個句子中含有褒義觀點,則認爲用戶對於這個句子中所有提到的事物都表達了褒義的觀點。如:apple 在這個貧困的國家銷售收入表現良好,很難說這句話應該被分成褒義情感還是貶義情感,因爲這裏表揚了 apple 但是吐槽了經濟。爲了得到更細粒度的結果,我們需要細粒度的情感分析,屬性級情感分析直接關注的是觀點級觀點的目標(觀點評價對象 target),在實際應用中,如評論:雖然服務很差,但我依然很喜歡這家餐廳,觀點評價對象(餐廳和服務)通常是一個實體或者實體的屬性。所以屬性級情感分析的目標是挖掘與發現評論在實體及其屬性的觀點摘要。在工業界,幾乎所有的情感計算系統都是在這個級別上進行分析。

除了按文本顆粒度對情感分析進行劃分外,我們還可以根據觀點類型的不同劃分爲常規型觀點和比較型觀點。

情感分析的發展也是經歷了從規則系統(通過構建情感詞典,每個詞都有對應的情感極性,根據正向和負向情感詞的數量投票及其他規則得到情感傾向)、機器學習系統(svm、gbdt、隨機森林等)、深度學習(textcnn、bilsttm 等)、到現在的預訓練語言模型 continue pretrain+finetune 的標準範式 sota 方法。

淘寶屬性級情感分析

在電商領域,淘寶天貓商品積累了海量的商品評論,人們在購買某一產品之前,往往會查看該產品的相關評論,獲得其他購買過用戶對商品各個維度的反饋,並通過與其他產品的對比來作最終的決策。由於商品評價量十分巨大,用戶沒有足夠的時間和精力瀏覽全部的評論信息,導致最終的決策帶有風險性。因此如果能對整體評價的無結構文本進行結構化分析,得到 <商品的屬性、情感詞、情感極性> 三元組並彙總成觀點,就能夠讓用戶對整體評價有個大體的印象,同時結合個性化推薦,有助於解決用戶這方面的痛點。技術上涉及到屬性級情感分析和評論級情感分析,個性化推薦。

消費者經常會在一個評論中針對不同的屬性(又稱方面)發表觀點,而針對不同屬性 aspect 對應的觀點(情感詞 opinion word)情感極性可能不同。如 “料子很好,碼數合適,但是有色差“包含了三個屬性” 料子 “、” 碼數 “和“色差”,針對” 料子”、“碼數”表達了褒義的情感,而對 “色差” 表達了貶義的情感。屬性級情感分析可以對上層情感分析任務提供基礎,如觀點摘要系統,例如用戶需要分別查看對某個實體 / 商品 X 就某個方面 Y 的正面和負面評價,如下圖淘寶的大家印象。 

▐****問題定義

電商情感分析業務的目標是提取出一些買家對商品的描述標籤,這些標籤儘量能夠從各個維度、生動具體的描述商品的購買體驗,所以需要兼顧生動性和多樣性。生動性的話需要我們能夠細緻的找到買家在形容的商品特點,而不是一些廣泛的概念,比如 “材質結實” 比“質量不錯”更有信息量;多樣性是指我們希望在優先的產品空間內,能夠儘量多的展示商品各個維度的特徵。

結合上述需求,我們將問題定義爲 Aspect Sentiment Triplet Extraction 的問題,需要抽取 <屬性詞 - 情感詞 - 情感極性> 三元組。

屬性詞是指

(1)、商品的一個部件或者一部分,比如筆記本電腦的電池,

(2)、商品本身的屬性,比如價格、材質等,

(3)、商品的組件或其中一部分的屬性,比如電池的壽命。

情感詞是用戶對屬性表達主觀情感傾向詞語,解釋了情感傾向是正 / 負 / 中性的原因,比如:電池的壽命長,句子表達的是用戶電池壽命的正向情感,情感詞是 “長”,解釋了情感傾向的原因。

情感傾向是指情感詞對應的情感極性,我們主要關注了正向、負向、中性三類。

示例如下圖所示:

▐****數據的特點及技術上的挑戰

淘寶有百級別一級核心品類,萬級別葉子類目,不同一級核心品類 / 葉子類目評論的商品屬性和情感表達存在非常大的差異性如服飾的屬性有面料、款式、版型、風格等屬性,美妝的屬性保溼、遮瑕、防曬等屬性。同時相同的情感表達在不同領域情感極性也會不同,如冰箱聲音大是負向,但音響聲音大是正向。如何充分利用類目表達的差異性和共性的知識是很大的挑戰。

在真實的淘寶評論裏因爲各種商業利益評論區的正向表達和負向表達也非常不均衡,不同類目達到 10:1-20:1,給模型性能帶來了非常大的挑戰。

標註數據稀缺,標註任務因爲複雜而導致標註成本昂貴,給整個任務都帶了很大挑戰。

總之,如何解決好不同領域表達的差異性和共性,更高效的利用標註數據和未標註數據是我們的核心痛點,我們在具體的方案設計中也充分考慮這些難點和挑戰。

▐****pipeline 系統

我們把屬性級情感分析拆解爲 3 個子任務,給定一個句子,一個是自動抽取句子中的所有屬性和情感詞,一個是屬性情感詞搭配關係,還有就是是針對不同的屬性判斷其情感極性。通過這一套 pipeline 系統,印象詞的 CTR 從 0.9% 提升到 400%。

對無結構化的評價文本,通過建模抽取句子中的屬性詞和情感詞,是一個典型的序列標註的任務。

在電商的評價的屬性、情感抽取場景,語料包含了幾十多個類別,每個類別只有數目有限的標註語料,各個類別之間的屬性情感既有相同的部分(比如價格、質量、服務態度等),也有差異很大的地方(比如食品和鍋具評價中的味道)。

具體實現:在常用序列標註任務基線模型 Bert + Bilstm + CRF 的基礎上,首先通過在評價語料上的 continue pretrain,F1 值有 0.6% 的提升。其次多領域遷移問題進行優化,通過把 lstm 輸出的向量映射到領域共用和私有的空間,對每個領域,都有共享的和私有的兩部分表示,來獲得領域共性和差異性的表達,同時領域私有的表示會和其他領域表示做 attention,最終把三部分表示 concat 起來,實驗疊加 bert 的 continue pretrain,有 F1 值 1.8% 的提升。

屬性歸一化是爲了解決同一個屬性存在多個相似表達的問題,如時尚感、時尚風、時尚、潮流都是在說時尚這一屬性,我們把他們歸一化成時尚這一 aspect。

具體的做法是對評論預料進行 continue pretrain 後,對抽取出來的屬性用 sentence-bert 進行 finetune,然後對屬性進行分佈式表示後通過 dbscan 對所有的屬性進行聚類到歸一化屬性。

預訓練在情感計算領域有大量成功案例,在標註語料偏少情況下,對領域數持續預訓練能取得很好的效果。在我們場景會面臨標註成本高,標註語料少,還有就是真實的評論里正向 / 負向情感比例分佈不均衡問題(不同類目 10:1-20:1)導致的負向情感性能偏低,因此做預訓練是非常有必要的。電商領域下的任務如 atsa,acsa,句子級情感分類,評論問答等任務中直接依賴和情感表達相關的知識 (如屬性 / 情感詞),但原生的 bert,roberta 預訓練僅僅 mask 了字級別,且有字之間的獨立性假設,SpanBert mask 了詞,但不一定是和領域相關,有實驗表明不做 phrase 級別的 mask 會導致抽取不完整 / 錯誤。

在屬性級情感分類中,我們採取了融入知識的 roberta continue pretrain+ bert finetune 的範式來解決面臨的問題:

1、獲得領域 global 表達,提升部分類目少樣本性能,

2、引入 item-aware 的知識,緩解不同實體相同情感表述,表達的極性不一致問題,

3、針對疑難問題,比如否定表達情感分類效果提升。預訓練模型結構如下:

模型融入知識的方式是在 embedding 層顯示的嵌入類目信息,詞性信息。mask 階段根據挖掘出來的情感知識庫:屬性 - 情感 pair,情感詞,情感詞對應的情感極性,優先 mask 屬性 - 情感 pair,情感詞。優化目標上除了 mask language model loss 還顯示地預測 aspect-sentiment word pair,情感詞,情感詞對應的情感極性,詞性預測任務。

‍融入知識的情感預訓練模型在負向情感 f1 上提升了 4 個點。融合各類情感知識預訓練的模型效果如下:

印象詞個性化排序

印象詞直接按照按標籤出現的頻數 topk 進行展示,有一定的缺陷:挖掘的豐富的印象詞因頻數低獲得曝光機會偏少,不同的用戶關注的印象詞可能不一樣而導致用戶需求得不到滿足。

排序模型我們使用了經典的排序模型 din,通過使用個性化排序算法,CTR +25% ,uvctr +20%。模型結構如下:

用到的主要特徵有用基礎的用戶畫像特徵、用戶在印象詞的一些行爲序列、商品側特徵和一些用戶寫評論時所關注的屬性等特徵來捕獲用戶對商品的關注點。

句子級情感分析

句子級(sentence-level)情感分析,主要分析句子作爲一個整體的情感傾向,我們分爲 2 分類:正向、負向。訓練語料構建:在句子級情感分類上我們利用淘寶評論中好、中、差標籤,結合天貓評論用戶打分的結果,取出置信度較高的評價作爲訓練集,並通過回譯的方式做了數據增強,通過採用 bert+uda 的方式在全量評論數據上產出評論級情感分類模型,正向 f1 值: 0.986,負向 f1 值: 0.931。

損失函數:

有監督損失項(Supervised Cross-entropy Loss):計算有標籤數據的誤差,用交叉熵作爲目標。

無監督損失項(Unsupervised Consistency Loss):用來計算無標籤數據的誤差。具體的方式是,對於任何一個無標籤數據,首先運用回譯對於該數據進行一次操作。接下來,利用模型對於增強前後的數據分別進行預測,從而獲取到模型對於同一條數據在增強前後的不同結果。最後,利用 KL 散度來度量這兩個預測結果的距離。整個訓練的過程就是要讓這個距離儘可能小。

業務場景落地

 大家印象

評價標籤的 pctr 從提升了 400%,uctr 從提升了 200%,標籤體系覆蓋了淘寶所有的商品類別。

▐****首猜智能 UI 素材

爲雁西,嵐寶,竹堂老師提供情感篩選後的評價作爲素材,在首猜智能 UI 場景投放,dpv+0.49%,pv+0.16%。

▐****直通車鹹魚場景

投放淘寶商品時加入標籤做展示文案,效果:CTR 提升了 +6%。

▐****手淘 miniDetail 頁輸出正向評論

PV 點擊率 +2.46%。

▐****短視頻全屏頁飄屏

PV 點擊率 +2.61% , UV 點擊率 +0.67%。

▐****PGC 標籤

針對 PGC 達人文章場景標籤需求,遷移到 PGC 場景標籤抽取模型,覆蓋商品百萬。

▐****短視頻評論氛圍優化

佔首猜負向視頻大池子 10.3%。

▐****評論級情感分類

用於評價排序。評價對外輸出的原文級情感。商家端評價管理,判斷評價內容的情感傾向測算正負向評價對商家轉化影響等。

▐****支持智能 UI 等場景的負向情感過濾

總結與展望

本文主要針對淘系評論場景,對情感計算在 ugc 的應用進行了一些理解探討,從而引出了屬性級情感分析和評論級情感分析與相關應用,在印象詞業務上及其他業務上都取得了不錯的效果,但是依然很多的不足。

在後續工作中,比如多實體基於屬性的情感分析、對比句、轉折句等複雜表達,以及減少 pipeline 系統的累積誤差的 Aspect Sentiment Triplet Extraction,屬性級情感分類 End2End 任務,我們將進行更加深入的探索。期待各位有興趣的同學進行探討。

Reference

1.Transfer Learning for Sequence to Sequence Tagging with Hierarchical Recurrent Networks

2.Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts

3.BERT Post-Training for Review Reading Comprehension and Aspect-based Sentiment Analysis

4.A Self-Training Approach for Short Text Clustering

5.A Survey of Clustering With Deep Learning: From the Perspective of Network Architecture

6.Unsupervised Deep Embedding for Clustering Analysis

7.Structural Deep Clustering Network

8.Attributed Graph Clustering: A Deep Attentional Embedding Approach

9.Embedding Graph Auto-Encoder with Joint Clustering via Adjacency Sharing

10.A Unified Model for Opinion Target Extraction and Target Sentiment Prediction

11.An Interactive Multi-Task Learning Network for End-to-End Aspect-Based Sentiment Analysis

12.Utilizing BERT for Aspect-Based Sentiment Analysis via Constructing Auxiliary Sentence

13.Attentional Encoder Network for Targeted Sentiment Classification

14. Don’t Stop Pretraining: Adapt Language Models to Domains and Tasks

15. SKEP: Sentiment Knowledge Enhanced Pre-training for Sentiment Analysis

16. E-BERT: Adapting BERT to E-commerce with Adaptive Hybrid Masking and Neighbor Product Reconstruction

17.Unsupervised Data Augmentation for Consistency Training

作者 | 藍曦、雲舫、肖榮、豐子

編輯 | 橙子君

出品 | 阿里巴巴新零售淘系技術

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/RaPpOW5a2SMCIXyQACEIEQ