胡亞嬌 劉思維 謝志峰 丁友東
(上海大學上海電影學院,上海200072)
在大數據和社交媒體的背景下,現代電影互聯網平臺通過分析用戶信息和用戶行為下潛在的偏好,將平臺信息對用戶進行個性化推廣。用戶畫像,即用戶信息標簽化,是基于一系列真實數據的目標用戶模型。用戶畫像作為推薦系統的一個主要部分,通過挖掘用戶個性特征和用戶之間的個體差異,廣泛地被使用在電商商品推薦、廣告商廣告投放等商業領域。在用戶畫像作用下,用戶得到更好的體驗,平臺也可以吸引更多的流量。用戶畫像可以用 “貼標簽”的方式將用戶數據分析和加工,最終按照社會屬性、生活習慣和消費行為的分類標注用戶。本文主要研究基于電影用戶多態數據的用戶畫像模型的構建。
現代大數據背景下,電影信息的規模爆發式增長。在電影產量、內容、題材極大豐富的現代,用戶的需求對電影產量起到了刺激作用,對未來電影拍攝有極大的導向作用。用戶需求是電影市場的重點內容,研究電影用戶的需求是電影產業經久不衰的強有力推手。
電影用戶畫像是基于電影大數據的用戶畫像的構建。在電影系統中,根據用戶觀影史、評論集等信息可以構建出用戶的電影愛好、觀影習慣等可以體現用戶觀影特征的用戶模型。電影用戶畫像的構建結合了用戶畫像建模、機器學習、自然語言處理、社會學等知識于一體,實現了電影用戶的屬性由部分到整體的挖掘。
近年來用戶畫像隨數據的爆發式增長的研究越來越深入,用戶畫像的數據來源都是基于網絡海量的用戶大數據。21世紀初Xiong R 等進行了用戶畫像的初探,在論文[1]中提出一種基于用戶歷史數據的用戶信息圖形化表示方法,將用戶匯集到一個可視化圖表中以達到用戶之間信息互通的目的。Huang K H 等在 [2]中對社交互動、體驗和跨平臺服務設計相關的三項不同的設計研究進行反思,提出在設計研究中識別直接用戶和隱形用戶的多種方法,此外,還討論了用戶畫像的研究方法和屬性。Zhang M 等人在論文 [3]中提出用戶畫像的一種基于移動內容的圖像搜索的搜索模式。在社交媒體用戶的研究方面,Wang L Y 等人在 [4]中通過在線調查的方式搜集用戶個性數據,并以此為基礎研究了用戶個性類別與平臺的用戶社交等狀態做了關聯分析。
用戶畫像融合了統計學、數據挖掘、社會學多方面的學科知識,在用戶畫像標簽建模中用到許多人工智能的方法。影評主題和觀點的提取已經被前人研究過,Liu X J等人在 [5]中,提出一種結合LDA 與Text Rank 的關鍵詞抽取模型,并在中短型文本數據集Huth2003和長文檔數據集DUC2001上進行實驗,結果表明了該方法的有效性。Ma T F等人在論文[6]中,提出一種基于中心理論的方法來提取新聞評論語句的主語。首先使用NLP 工具LTP根據句法規格將句子劃分為隱式語句和顯示語句,再用候選主語和維基百科概念向量的方法分別提取兩種句式的主語,最后用中心理論根據排序和上下文信息選出語句的主語。Huang S L 等人在[7]中提出通過分別歸納出一套電影評論POS模板和一套汽車評論POS模板,來提取評論語句中的意見短句并從意見短句中提取觀點情感得分,并用短句中的詞匯得分的總分作為情感分數。深度學習也可以被應用于情感分析,Tang J L 等人在 [8]中針對高頻詞匯過度關注的注意力機制進行改進,用掩蓋高頻詞匯的多次迭代的方式進行訓練,讓詞匯具有平等的關注度。
本文目的是用戶畫像在電影方面的構建,通過結構化數據和非結構化文本的分析,構建適用于電影用戶的用戶畫像標簽庫,最終勾勒體現觀影特性的完整電影用戶畫像,并進一步研究電影群體用戶畫像。
根據電影用戶基本數據,可以將電影用戶數據歸類到基本屬性、社交屬性、觀影偏好以及個性特征四個領域中,將每個領域的數據分別對應到電影用戶四個領域的標簽。用戶畫像的構建結合了用戶畫像建模、聚類分析、分類算法、自然語言處理、社會學等知識。
如圖1,用戶畫像模型構建過程分為三步:第一步是數據采集,大數據是用戶畫像的基礎,首先要收集海量用戶在電影社交平臺內主動記錄或被動留下的靜態數據和動態數據作為用戶畫像標簽的初始數據;第二步是行為建模,這一步基于采集到的用戶基礎數據,通過數據挖掘的技術手段進行用戶行為建模,首先根據采集得到的散亂的初始數據預測出能夠得出的用戶標簽,然后將這些標簽進行統籌和結構化,得到標簽之間的層級關系,構建出電影用戶畫像標簽體系;第三步是標簽挖掘,這一步根據體系中的用戶屬性結構,由已知用戶數據層層遞進,并選擇合適的數據挖掘方式,最終挖掘出標簽體系中未知的的一系列用戶標簽。
多態信息的挖掘主要集中在結構化數據的標簽挖掘和非結構化文本數據的挖掘。
2.2.1 XGBoost分類算法

圖1 用戶畫像構建流程框圖
結構化數據挖掘常用機器學習分類算法,XGBoost是一種常用的處理監督學習中的分類和回歸問題的機器學習模型。
假設有K 棵CART 樹,則集成的預測結果為:

其中,f∈F,代表第K 棵樹的集成結果。
則XGBoost的目標優化函數為:

其中l為損失Loss,第二項為樹的復雜度。
目標優化函數的第一項為訓練損失,第二項為樹模型的復雜度,也是優化函數的正則化項。XGBoost包含的CART 樹的確定包括兩個部分:樹的結構、葉子節點分數,如果樹的結構確定,模型的正則化項也設為各個葉子節點值的平方和,就可以使用梯度下降或隨機梯度下降來優化目標函數。
XGBoost目標函數的優化采用的是加法訓練,這是一種啟發式算法,運用加法訓練,首先優化第一棵樹,之后再優化第二棵樹,直至優化完k棵樹。

t棵樹不斷訓練以后,再加以懲罰項避免過擬合就得到模型的預測值。
2.2.2 中文影評屬性級情感分析
2.2.2.1 詞向量
Word2Vec是一種神經網絡詞向量模型,它主要利用詞匯在文本中的上下文關系,經過訓練后輸出詞語的權重。Word2Vec主要機制是CBOW (通過附近詞預測中心詞)、Skip-gram (通過中心詞預測附近的詞)。
然而Word2Vec只考慮詞匯在文中的局部信息,沒有考慮到詞匯與局部之外詞匯的關系,這也是在中文長文本中需要避諱的問題。
Bert (Bidirectional Encoder Representations from Transformers)是一種深度學習雙向語言模型。Bert 用Transformer 實現了雙向模型的搭建。
Bert模型如圖2所示,當輸入詞匯為Ei時,模型可以同時處理詞Ei之前的詞匯和之后的詞兩部分信息,即雙向信息,得到模型的每一層輸出。其中,在處理每一個詞匯的雙向信息時,Bert模型都使用了MASK 方法即隨機遮掩一些詞的方法進行訓練。

圖2 Bert模型示意圖
Bert的核心部分是預訓練,訓練的兩個任務是預測MASK 掉的詞匯和預測句子的關聯性。預訓練之后的Bert詞向量可以直接輸出詞匯的768維詞向量。
基于Bert的優點,使用Bert詞向量中文預訓練模型,可以在長文中比較準確地預測中文詞匯的詞向量。
2.2.2.2 kNN 分類算法
k NN (k-Nearest Neighbor)分類算法是十分常用的一種數據挖掘分類算法,k NN 算法通過觀測與預測數據距離最近的K 個訓練數據的分類,來推測測試數據的分類。具體步驟為:(1)計算預測數據與各個訓練數據的距離; (2)將距離遞增排序;(3)選取距離最小的K 個點;(4)確定這K 個訓練數據的所屬分類;(5)選擇K 個點出現最多的分類作為預測數據的分類結果。
用戶畫像的標簽是描述用戶數據特征的符號,標簽體現用戶某一種屬性。它根據用戶畫像目標任務、數據特征分析制定并進行。
按照圖1 中標簽體系對標簽進行定義和預測。標簽的挖掘通過四種方式構成用戶畫像標簽:
(1)用戶采集原始數據經過處理直接當做用戶標簽。比如:圖3中一級標簽用戶所屬地區的劃分,經過兩條原始數據用戶居住地和用戶同城活動,正則匹配地址后填充空值以后,匹配省市庫的歸屬地表,直接將用戶歸類為某一個城市為其常居地。進一步還可以將地址劃分一線城市、二線城市等。
(2)用戶原始數據經過統計學方法,得到用戶標簽。比如:圖3中一級標簽社交情況,可以根據用戶在平臺的被關注數和關注數經過分類獲得。
(3)用戶原始數據經過分類模型獲得標簽。比如:圖3中一級標簽觀影頻次的預測,由用戶歷史觀影頻次加時間軸經過XGBoost模型預測得到。
(4)用戶評論文本原始數據使用NLP觀點提取后加以統計分析得到標簽。比如圖3中用戶觀影偏好標簽,經過文本的句法分析,獲得評價的主語和觀點,得到用戶偏好數據。
標簽體系中其他的上層多級標簽也按照以上四種方式處理下層標簽進行挖掘,最終得到用戶畫像的模型。

圖3 用戶畫像標簽體系
用戶畫像中的用戶數據搜集通??梢酝ㄟ^約談、調查問卷、網絡采集的方式獲取社交媒體網站信息。訪談或約談模式搜集信息最直接,但是消耗大量人力物力,對于大量用戶不適用;調查問卷模式主要是通過調查頁面的構建,然后利用互聯網手段進行分享和傳播,缺點是耗時大,信息無法保證真實;社交媒體的獲取模式比較適合大批量用戶信息的獲取,用戶信息真實性比較高,而且在一個社交媒體中,用戶的性格趨于穩定性,所以基于社交媒體的用戶信息采取要保證只使用一個社交媒體。
從互聯網各大平臺中,通過主動的方式采集電影平臺用戶信息,用戶的信息收集包括基本屬性、購買能力、行為特征、興趣愛好、社交網絡、心理特征六大模塊。從六個方面分析需要的數據,然后針對性采集。

圖4 數據采集流程框圖
網絡爬蟲技術是目前科研項目中大數據的主要獲取方法,網絡爬蟲的流程圖如圖4 所示。首先,使用request模塊向URL列表地址服務器發出請求并獲取服務器返回的HTML (超文本標記語言)文本,即前端文本;然后使用Pyquery 技術或者Xpath技術的固定語法格式可以解析HTML 文本,并按照HTML 中的標簽結構或者屬性等,快速有效地定位到需求語句,從中匹配內容或者屬性等;最后按照表格的方式將采集的用戶數據存儲到MongoDB數據庫中。
網絡爬蟲技術需要Multiprocess (多進程)的支持才可以高效地采集大量有用信息。多進程是使用多個CPU 來使多個任務并行處理的技術。多進程的子進程之間資源獨立,子進程和父進程之間可以互相傳遞信息。
采集后的數據存儲為4張表格:(1)根據用戶主頁鏈接對用戶基本信息進行采集,包括用戶常居地、網站注冊時間、自我介紹、關注數、被關注數、關注人鏈接、同城活動,將基本信息存于MongoDB數據庫的用戶基本信息表中;(2)訪問用戶的影評頁面,對用戶影評信息進行采集,包括用戶評分、影評時間、影評標題、影評內容、影評有用數、影評無用數、是否劇透,將影評信息存于MongoDB數據庫的影評表中;(3)訪問用戶的觀影信息頁面,對用戶觀影標簽進行采集,包括用戶已看電影標簽及數量、正在看電影標簽及數量、想看電影標簽及數量,用字典的形式存放于MongoDB 數據庫的用戶觀影表中;(4)訪問電影詳情頁面,對電影屬性進行采集,包括電影標題、電影類型、拍攝地區、拍攝年代、電影時長、電影評分、主演,存放于MongoDB的電影信息表中。
3.3.1 用戶活躍度分析預測

圖5 用戶活躍狀態預測
用戶活躍狀態預測的流程如圖5所示。用戶的影評時間由用戶影評日期和用戶影評時刻兩部分組成。
(1)用戶影評日期
提取用戶影評的日期,使用XGBoost對用戶的活躍度進行預測,對用戶的影評量進行不同時間偏移的聚合,分別使用1 個月、2 個月、3 個月、1年、上年同月的評論數量和用戶的關注數、被關注數的社交情況對用戶未來7天的活躍情況進行預測,預測出未來一個月用戶月影評量。
(2)用戶影評時刻
提取用戶影評的時刻,對用戶影評數量按每小時進行聚合,得到用戶活躍觀影時刻標簽,然后比較求得一天24小時中,用戶最活躍的3個小時,作為用戶活躍時刻標簽。
3.3.2 用戶觀影偏好分析
用戶影評的屬性級情感分析是電影用戶畫像的重要預測,用戶的影評長文本體現了用戶對電影細粒度品質的關注點,比如角色、演技、背景、主題、類型等,通過用戶情感得分的分析,可以直觀地看出一部電影在大眾審美中的具體的優點和缺點,在具體到每一個用戶的個性化推薦中,在電影的細粒度品質選擇中,擇優而推。
傳統的屬性級情感分析多使用形容詞、副詞、名詞、動詞等詞語得分相加的方法獲得句子評分?,F階段屬性級別的情感分析多使用深度學習的方法進行分類預測,可是大多適合英文文本或者中文短文本等特征較為明顯、易于提取屬性詞及情感詞的文本處理。
中文長文本具有一語多義、網絡術語解讀性差等特點,中文影評長文本還具有個性化色彩濃厚、句式復雜等特點,用傳統方法和深度學習方法去分析,都不一定能達到預期的效果。
屬性級情感分析分為屬性詞提取和情感分析兩個步驟。第一步是從用戶影評文本中提取多個電影相關屬性詞;第二步是預測句子中每一個屬性詞對應的情感得分。
本文中用戶觀影偏好分析采用Bert詞向量結合關鍵詞提取技術和機器學習分類算法對用戶影評長文本進行分析,如圖6所示。

圖6 用戶觀影偏好分析
3.3.3 用戶所屬地區分析
用戶所屬地區分為省、市、縣等級,等級越低越難以統計用戶情況,無法體現觀影人群的地區分布。從中國省市縣三級分布表中依次匹配用戶的所屬地區,得到用戶所在的省級行政區。
具體步驟如圖7所示。

圖7 用戶所屬地區分析
實驗中,使用網絡爬蟲技術從電影社交平臺共采集了17486位用戶的相關數據,采集到的這些用戶的中文影評長文本一共329697條。數據采集從平臺中22種電影類別中的每個電影分類下抽取等量的用戶,使用戶的個性化具有全面性,而且,在分析用戶數據時,用戶的特征具有代表性,從而可以清晰地看出整個電影市場用戶的特征分布。
實驗結果表明可以預測到未來一個月內用戶月影評量,實驗結果如表1所示:

表1 用戶活躍度預測結果
圖8為用戶最活躍時刻圖,宏觀上看,即對用戶群體來說,在即將午夜時電影用戶的活躍人次最多。微觀上看,即對用戶個體來說,每個用戶最活躍的時刻都有所不同,在用戶最有可能觀看電影的時間段進行廣告投放,個性化推薦,可以達到最佳效果。

圖8 用戶最活躍時刻分布圖
用戶地區分析如圖9所示??梢赃x擇在一線城市如北京、上海,或者沿海地區發展較快的省市內電影市場多投入電影的制作和發行,因為這部分區域電影受眾人群多,日常生活中比較偏愛電影。

圖9 用戶地區分析
在用戶的情感得分預測中,為設置文本設置(1,2,3,4,5)五種情感得分。
圖10是LR 邏輯回歸測試數據的預測結果。誤差設置在0.5之內時,測試數據的預測結果的準確率為0.76。

圖10 LR 預測情感得分結果圖
圖11是k NN 分類測試數據的預測結果。準確率為0.45。

圖11 k NN 預測情感得分結果圖
模型在一定程度上準確地體現了用戶的情感等級,通過用戶情感得分的分析,可以直觀地看出一部電影在大眾審美中的具體的優點和缺點。在個性化推薦中,在電影的細粒度品質選擇中,擇優而推。
本文針對現存的不夠完善的電影用戶畫像提出了一種電影用戶畫像構建方法。首先構建了電影用戶畫像標簽體系,然后基于本文的多態原始用戶數據從多個角度分析,挖掘了多種電影用戶標簽,尤其是在中文影評文本的屬性級情感分析方面使用Bert模型和分類預測對比獲得了較為精準的電影用戶細粒度情感預測,分析出用戶對于電影屬性的情感打分,還用XGBoost預測了用戶未來的活躍趨勢。這在電影市場用戶行為和偏好方面的研究取得前所未有的進展。