揭秘微信「看一看」如何精准挖掘你感兴趣的内容
作者:maricoliao,騰訊 WXG 應(yīng)用研究員
一、背景
隨著自媒體時代的蓬勃發(fā)展,各類自媒體平臺每天涌現(xiàn)出海量信息。微信作為最優(yōu)質(zhì)的自媒體平臺,每天新發(fā)表文章數(shù)百萬篇。洶涌而來的信息,極大地豐富了人們的精神和娛樂生活,但同時也存在著信息繁雜無序、內(nèi)容同質(zhì)化、質(zhì)量參差不齊等問題,而用戶最關(guān)心的是最新、最熱的新聞熱點事件。
在此背景下,如何快速、準(zhǔn)確地挖掘新聞熱點內(nèi)容,幫助用戶更快、更好地了解熱點事件,并追蹤事件的來龍去脈和不同觀點,是非常值得深入研究的問題。就此,我們針對微信生態(tài)特色,并結(jié)合外部媒體資源,構(gòu)建了熱點挖掘平臺,對微信熱點、全網(wǎng)熱點、細(xì)分領(lǐng)域熱點進行實時監(jiān)控和深度挖掘。目前熱點挖掘平臺已廣泛應(yīng)用于微信看一看和搜一搜,以強化新聞熱點感知,優(yōu)化用戶時新體驗。
二、技術(shù)框架
如上圖所示,在資源建設(shè)方面,我們在微信公眾號文章的基礎(chǔ)上,接入了騰訊新聞、騰訊視頻等數(shù)據(jù)源,并對外部媒體進行實時監(jiān)控。考慮到公眾號文章在微信生態(tài)內(nèi)具有豐富的閱讀、分享和搜索等用戶行為,我們在內(nèi)容側(cè)的基礎(chǔ)上,結(jié)合了用戶側(cè)共同進行熱點資源建設(shè)。
在技術(shù)方面,我們主要針對熱點內(nèi)容識別、熱點展現(xiàn)開展工作,并在此基礎(chǔ)上積累主動學(xué)習(xí)等語料支撐技術(shù),本文的重點也是分享這三個方面技術(shù)經(jīng)驗。
在應(yīng)用方面,我們已經(jīng)將相關(guān)技術(shù)廣泛應(yīng)用于微信看一看,例如,使用熱度召回、熱度加權(quán)進行新聞排序,提升推薦系統(tǒng)時新體驗;構(gòu)建半自動化熱門話題,強化熱點感知、提升用戶互動;利用聚合結(jié)果進行多樣性控制,解決內(nèi)容同質(zhì)化問題。
此外,在微信搜一搜的微信熱詞、query suggestion 和新聞意圖等工作中,我們也對熱點挖掘技術(shù)進行了有效應(yīng)用。
三、熱點內(nèi)容發(fā)現(xiàn)
質(zhì)量模型
自媒體在提供豐富數(shù)據(jù)的同時,也帶來了大量低質(zhì)量的內(nèi)容。由于新聞熱點內(nèi)容在時新、格調(diào)、權(quán)威方面的特殊需求,有必要進一步完善內(nèi)容質(zhì)量衡量體系,對新聞內(nèi)容進行更多方位的質(zhì)量把控,以幫助我們更好地甄別優(yōu)質(zhì)、熱點內(nèi)容。
為此,我們在垃圾廣告、色情低俗、標(biāo)題黨等傳統(tǒng)通用的低質(zhì)指標(biāo)基礎(chǔ)上,補充構(gòu)建了新聞性、調(diào)性和普適性等新聞特有衡量指標(biāo),以更加精準(zhǔn)地識別新聞內(nèi)容的時新程度、衡量新聞內(nèi)容的格調(diào)高低、判斷新聞內(nèi)容的適用人群。
此外,考慮到賬號在新聞內(nèi)容質(zhì)量控制中的關(guān)鍵作用,我們還建立了賬號的質(zhì)量等級、權(quán)威度等級和地域賬號體系,以期從內(nèi)容、賬號兩個維度,對新聞內(nèi)容質(zhì)量進行更好的判斷和控制。
在內(nèi)容新聞性、調(diào)性等指標(biāo)構(gòu)建中,我們主要使用一套通用的文章分類方法(如下圖所示),綜合考慮文章標(biāo)題、正文、賬號和圖片等信息,使用關(guān)鍵詞、embedding、規(guī)則進行特征表達(dá),基于 Stacking 方法訓(xùn)練子模型,并使用 XGBoost 算法進行多模型融合。
在實際應(yīng)用中,我們也可以對比 Wide&Deep 和 DeepFM 等方法融合 embedding 特征和傳統(tǒng)人工特征,通常情況下 Stacking+XGBoost 的模型更容易調(diào)試、可控性更強,可以針對不同場景的具體效果進行選擇。
熱點發(fā)現(xiàn)
熱點發(fā)現(xiàn)是隨著互聯(lián)網(wǎng)內(nèi)容爆炸式增長而興起的研究課題,集中體現(xiàn)在 TDT(Topic Detection and Tracking)研究任務(wù)中,旨在幫助人們應(yīng)對日益嚴(yán)重的互聯(lián)網(wǎng)信息爆炸問題,在新聞媒體信息流中進行新話題的自動識別、追蹤話題的來龍去脈。
在工業(yè)界實際應(yīng)用中,Google 資訊、百度資訊等都用到 TDT 中的相關(guān)技術(shù),隨著互聯(lián)網(wǎng)產(chǎn)品的多樣化發(fā)展,基于搜索引擎、社交傳播的熱點發(fā)現(xiàn)也逐漸加入研究范疇。近階段的研究主要集中在利用神經(jīng)網(wǎng)絡(luò)解決 TDT 中的一些子任務(wù),意圖通過新技術(shù)、新思想進一步提高 TDT 的效果。
下圖列舉了我們目前主要使用的一些熱點發(fā)現(xiàn)方法。
目前我們主要綜合內(nèi)容側(cè)和用戶側(cè)兩個方面進行熱點發(fā)現(xiàn),以挖掘全局、行業(yè)、地域、熱詞、話題、視頻等細(xì)分領(lǐng)域熱點。其中我們用到了一些基礎(chǔ)技術(shù),例如長文本之間相似度計算、長短文本相似度計算、聚類算法、分類算法以及時序分析等算法。下文我們將重點介紹上圖中的話題聚合、熱點預(yù)測和熱點追蹤技術(shù)。
話題聚合
話題是一個抽象概念,表征圍繞事件發(fā)展的時序、因果和評論等內(nèi)容構(gòu)成一個集合,在我們的工作中大致類似于 TDT 中的 story 定義。
話題聚合的關(guān)鍵在于兩個方面:聚類算法和相似度計算。聚類算法包括離線聚類和在線聚類兩種。傳統(tǒng)的離線聚類使用 batch learning 方式,例如 K-means、HAC、DBSCAN、AP 聚類等,其缺點主要在于不能及時為逐個到來的報道進行聚類,且聚類效率低、穩(wěn)定性差。
在線聚類適用于流式內(nèi)容輸入,在原有聚類結(jié)果的基礎(chǔ)上進行增量計算,例如 Single-Pass,與離線聚類相比,在線聚類效率更高、效果更加穩(wěn)定,所以我們在工作中更偏向于使用在線聚類算法。
在傳統(tǒng) TDT 任務(wù)中,相似度計算大多使用了無監(jiān)督模型,例如余弦相似度、Incremental TF-IDF Model、Incremental TF-ICF Model,由于沒有使用人工標(biāo)注的語料指導(dǎo)模型訓(xùn)練,導(dǎo)致相似度計算的誤判率高,效果得不到保證。
為了進一步提升話題聚合的效果,我們在傳統(tǒng)算法的基礎(chǔ)上進行了優(yōu)化,設(shè)計了上圖中的聚類算法。文章使用流式進入聚類系統(tǒng),通過話題追蹤模型判斷當(dāng)前文章能否匹配已有話題池中的話題,該話題追蹤模型模型使用人工標(biāo)注語料進行有監(jiān)督訓(xùn)練獲得(詳見后文多粒度語義相似度計算)。如果當(dāng)前文章可以匹配已有話題,則把文章并入已有話題并更新話題表達(dá),否則,則會形成新的話題加入話題池中。
此外,考慮到傳統(tǒng) Single-Pass 算法容易出現(xiàn)匹配一錯皆錯問題,我們使用 HAC 層次聚類、話題精選機制對話題池子進行及時修正,保證話題池的純正。經(jīng)實驗驗證,在開源語料和微信語料上,此聚類算法均取得了優(yōu)異的效果,效率上也能支持快速并行化。
熱點預(yù)測
熱點發(fā)現(xiàn)的傳統(tǒng)方法主要依賴于內(nèi)容側(cè)和用戶側(cè)特征的豐富程度,比如話題發(fā)文量、文章用戶行為等信息,然而當(dāng)我們能夠獲取到足夠熱點特征時,用戶往往已經(jīng)通過其他渠道獲取到了相關(guān)熱點內(nèi)容,導(dǎo)致熱點發(fā)現(xiàn)和熱點推薦出現(xiàn)一定滯后性。因此,如何實現(xiàn)提前、精準(zhǔn)預(yù)測熱點,最大程度減少對后驗信息的依賴,是非常值得研究的工作。
為此,我們開發(fā)了一個有效的熱度預(yù)測模型,在文章發(fā)表初期便可以預(yù)測出文章未來的熱度,如下圖所示。
在設(shè)計熱點預(yù)測模型時,我們綜合考慮文章文本、圖片、用戶行為時序等多模態(tài)特征,結(jié)合 DNN 模型和傳統(tǒng)機器學(xué)習(xí)模型進行建模。
模型主要分為兩部分:特征提取器、特征融合器。特征提取器分別對文章文本、圖片、動態(tài)行為序列、賬號等進行特征提取,其中長短文本和圖片的特征提取可以使用目前比較流行的 CNN、Gated-CNN、LSTM、BERT 等模型。
而在在用戶動態(tài)行為特征抽取時,我們區(qū)別于傳統(tǒng)做法,對用戶行為進行時序片段切分,使用 LSTM 進行提取特征。最后,使用 XGBoost 融合器對各個特征進行融合,并得到最終的預(yù)測結(jié)果。
四、熱點展現(xiàn)
熱門話題
發(fā)現(xiàn)熱點內(nèi)容后的另一個關(guān)鍵問題是如何把熱點內(nèi)容呈現(xiàn)給用戶。在實際工作中我們發(fā)現(xiàn),除單篇文章展現(xiàn)形式以外,話題、熱詞、摘要、分欄等方式都是加強熱點感知的重要方式。
為了加強熱點內(nèi)容的認(rèn)知、聚合熱點中的用戶互動,熱門話題是我們在熱點展現(xiàn)上的一個重要產(chǎn)品形式。熱門話題中綜合了話題聚合、話題追蹤、事件短描述生成、摘要抽取、事件脈絡(luò)、內(nèi)容分欄等多種技術(shù)。
上文中我們已經(jīng)分享了話題聚合的主要技術(shù)經(jīng)驗,下文將重點介紹熱門話題中的話題追蹤和事件脈絡(luò)、多粒度文本匹配、事件短描述生成等技術(shù)。
話題追蹤和事件脈絡(luò)
話題追蹤工作主要包括兩個方面:一是判斷文章究竟屬于舊話題還是新話題(Story Detection);二是在話題中進行子話題識別(Event Detection),判斷文章是否屬于話題最新進展。
隨著事件發(fā)展,話題不斷涌現(xiàn)新的進展,但不同媒體反應(yīng)時間差異較大,而且自媒體賬號質(zhì)量參差不齊,經(jīng)常會出現(xiàn)舊聞新發(fā)的問題。話題追蹤技術(shù)恰好可以幫助解決此類問題。此外,當(dāng)我們積累歷史熱點話題,例如孫小果案件,當(dāng)案件出現(xiàn)新的報道內(nèi)容時,話題追蹤技術(shù)可以幫助我們迅速檢測此類熱點內(nèi)容。
在話題追蹤方面,比較值得借鑒的研究成果是 Growing Story Forest [B Liu,CIKM2017],文中先對 event 進行聚合,然后對同話題 event 進行 linking,最終構(gòu)建 story tree 進行表達(dá)。
在實際工作中,針對具體應(yīng)用情況,我們構(gòu)建了一套話題追蹤框架,如上圖所示。首先,在文章特征構(gòu)建時,我們綜合使用了多種特征表達(dá),特別是抽取事件要素(News Frame)進行精準(zhǔn)表示;其次,考慮到效率優(yōu)化,我們使用了自頂向下的方式——先進行話題聚合,然后在話題內(nèi)部進行子話題(event)識別。
為了更方便用戶理解事件發(fā)生的時序或邏輯關(guān)系,同時兼顧產(chǎn)品應(yīng)用,最終的表達(dá)形式我們使用了傳統(tǒng)的事件脈絡(luò);在話題聚合和子話題識別中,我們訓(xùn)練了有監(jiān)督模型,計算 story 粒度和 event 粒度長文本匹配度,下文將會詳細(xì)介紹。
下圖是“沙特記者失蹤事件”的機器自動生成脈絡(luò),從圖中可以清晰了解 story 發(fā)生的重要節(jié)點以及發(fā)生時序。
多粒度文本匹配算法
話題追蹤的核心在于判斷兩篇文章是否屬于同一個話題(story)或同一個事件(event),這本質(zhì)上是一個不同粒度的長文本相似度計算問題,同時相似度計算也是聚類算法中的關(guān)鍵技術(shù)。
傳統(tǒng)長文本相似度計算主要使用 one-hot 編碼、淺層語義編碼(例如 BM25、LDA 等)。隨著深度學(xué)習(xí)的興起,CNN 和 LSTM 等網(wǎng)絡(luò)由于其端到端的優(yōu)勢、能較好地捕捉文本中的深度語義特征而被廣泛使用。從匹配方式上,深度學(xué)習(xí)語義匹配模型可以分為 Representation-based 和 Interaction-based 兩種,在 MatchZoo 中有一系列模型可以參考使用。
但在實際工作中我們也發(fā)現(xiàn),在話題追蹤問題中,相似度計算與上述提到匹配算法存在差異,事件的構(gòu)成要素在文本匹配時起到了決定性作用。因此,如何更好地表達(dá)事件特征,并進行特征匹配,是亟需解決的重要問題。為此,我們構(gòu)建了如下長文本匹配算法 GIM 模型(Graph-based Interactive Matching)。
考慮到事件的定義和組成元素,我們假定事件要素是點,多個事件要素按照特定方式排列成一條線組成一個事件,一篇文章則可以認(rèn)為是多個事件關(guān)聯(lián)和交叉所組成的一張圖。據(jù)此,我們在 GIM 模型使用了圖方式對長文本進行表達(dá)(EEG, Event Element Graph)。
為了表達(dá)深層語義,我們借鑒圖模型中的多層 GCN 網(wǎng)絡(luò)進行高維語義編碼,同時對每層編碼使用 Interaction-based 方式進行特征交叉。最后使用 attention mask 機制,結(jié)合先驗知識,加強語義重心的匹配。以上模型同時適用于 event 粒度和 story 粒度的語義相似度計算,在開源語料和微信語料上,GIM 都取得了優(yōu)異的效果。
事件短描述生成
事件短描述在熱點榜單、熱詞推薦、熱門話題外顯標(biāo)題等場景下具有重要應(yīng)用價值。事件短描述生成模型旨在將文章所包含的核心事件以盡可能精煉的文本概括描述,并確保其語意連貫可理解。
傳統(tǒng)的標(biāo)題壓縮模型(J Wang,AAAI2018)、句子壓縮模型(S2S-del、S2S-gen 等)、文本摘要生成(S2S、ConvS2S 等)等技術(shù),對事件的要素理解較為不足,容易出現(xiàn)語義缺失、不通順、信息冗余等問題;而自媒體文章標(biāo)題命名又較為無規(guī)則,很容易出現(xiàn)標(biāo)題黨等情況,傳統(tǒng)方法無法解決標(biāo)題事件語義缺失的情況。針對事件短描述存在的上述問題,我們設(shè)計了一個多源指針網(wǎng)絡(luò)生成模型,如下圖所示。
該模型以 pointer network 為基礎(chǔ)模型(通過拷貝的機制,直接從輸入序列中復(fù)制最終的生成詞匯),在模型編碼時利用 attention 機制融合文章標(biāo)題信息和內(nèi)容信息,同時引入常用事件描述詞詞庫、命名實體信息來保證事件描述的完整性和通順性。在預(yù)測階段,我們主要使用了長度限制、語義完整性限制等 penalty,控制短描述的質(zhì)量。
此外,我們發(fā)現(xiàn)用戶搜索 query 具有較好的事件概括性和通順性,所以我們基于用戶搜索日志,多方面挖掘預(yù)訓(xùn)練語料,并進行端到端的預(yù)訓(xùn)練,使得開放域場景下的事件短描述生成效果明顯提升。
五、主動學(xué)習(xí)
在進行長文本分類標(biāo)注時,標(biāo)注人員不得不閱讀整篇文章,才能決定文章的標(biāo)注,這導(dǎo)致長文本標(biāo)注成為一個耗時費力的工作。而在熱點發(fā)現(xiàn)工作中,又經(jīng)常需要構(gòu)建大量的長文本語料。
為了提升長文本語料標(biāo)注效率,我們面向長文本分類構(gòu)建了一種生成式的主動學(xué)習(xí)方法,生成最具有信息量和多樣性的樣本,并利用 sparse reconstruction 近似表示成一些概括性詞語再進行標(biāo)注。該主動學(xué)習(xí)方法,大大提升了長文本標(biāo)注效率,有效避免了浪費標(biāo)注人力和時間,更適用于大數(shù)據(jù)集分類任務(wù)。相關(guān)工作成果已發(fā)表于 AAAI2020?(Active Learning with Query Generation for Cost-Effective Text Classification)。
傳統(tǒng)的不確定性是主動學(xué)習(xí)中一個很有效的衡量方法。但我們研究發(fā)現(xiàn),單純使用不確定性會導(dǎo)致生成的樣本陷入一個局部空間,進而導(dǎo)致信息冗余,浪費標(biāo)注人力。所以我們在不確定性的基礎(chǔ)上,又研究增加了多樣性的衡量目標(biāo),并使用神經(jīng)網(wǎng)絡(luò)方法進行優(yōu)化,有效防止信息冗余問題。
此外,由于生成的樣本使用特征空間表示,標(biāo)注人員難以理解和標(biāo)注,我們把生成的樣本利用 sparse reconstruction 近似表示成一些概括性詞語,使得標(biāo)注人員能更快速便捷地理解并進行標(biāo)注,避免了閱讀整篇文章。
實驗表明,我們的方法能有效應(yīng)用于面向長文本分類的主動學(xué)習(xí)問題,并且在多份公開數(shù)據(jù)集上都取得了優(yōu)異的效果。
六、總結(jié)與展望
本次我們主要介紹了在微信看一看中構(gòu)建的熱點挖掘技術(shù)框架。為了更加精準(zhǔn)地識別熱點內(nèi)容,我們綜合運用了質(zhì)量模型、TDT 技術(shù)和熱點預(yù)測算法等多維度手段,并結(jié)合微信生態(tài)特色進行熱點內(nèi)容發(fā)現(xiàn)和預(yù)測;為了更好地展現(xiàn)熱點,我們在傳統(tǒng)話題追蹤技術(shù)的基礎(chǔ)上,利用深度學(xué)習(xí)進行優(yōu)化,構(gòu)建了熱門話題和事件脈絡(luò)等熱點展現(xiàn)形式;
最后我們使用生成式的主動學(xué)習(xí)方法,加速語料標(biāo)注和各模型構(gòu)建,最大程度提升文本標(biāo)注效率。我們所積累的這些方法和技術(shù),也已經(jīng)應(yīng)用于微信搜一搜的時新熱點相關(guān)業(yè)務(wù)優(yōu)化。
工作過程中,我們也發(fā)現(xiàn)了一些技術(shù)難點:例如,如何更快、更準(zhǔn)地捕捉細(xì)分領(lǐng)域熱點,如何更精確地挖掘事件核心要素并實現(xiàn)語義匹配,如何在超級話題(eg.武漢肺炎)中構(gòu)建和梳理事件脈絡(luò)或者圖譜,等等。這是都是我們以后需要深入研究的問題。
另外,除了應(yīng)用于推薦、搜索之外,我們也一直在思考事件挖掘的更本質(zhì)目標(biāo)——預(yù)測未來事件、指導(dǎo)人們的行為(比如投資、風(fēng)控),即如何在挖掘事件的基礎(chǔ)上,構(gòu)建事件之間的關(guān)系、事件角色之間的關(guān)系,形成事件圖譜、事理圖譜,進行未來事件的推理和預(yù)測,這也是未來值得深入研究的方向。
*本文經(jīng)騰訊技術(shù) 工程(ID:Tencent_TEG)授權(quán),如需轉(zhuǎn)載請聯(lián)系出處。
推薦閱讀
挖掘建模
神器工具
Python技巧
END
來和小伙伴們一起向上生長呀~~~
掃描下方二維碼,添加小詹微信,可領(lǐng)取千元大禮包并申請加入 Python學(xué)習(xí)交流群,群內(nèi)僅供學(xué)術(shù)交流,日常互動,如果是想發(fā)推文、廣告、砍價小程序的敬請繞道!一定記得備注「交流學(xué)習(xí)」,我會盡快通過好友申請哦!
(添加人數(shù)較多,請耐心等待)
總結(jié)
以上是生活随笔為你收集整理的揭秘微信「看一看」如何精准挖掘你感兴趣的内容的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python数据分析与挖掘 | 挖掘建模
- 下一篇: 为什么我们程序员不把软件开发当回事?