陳澤宇 黃勃
摘要:采用用戶歷史查詢詞構(gòu)建用戶畫像時,現(xiàn)有向量空間模型存在特征稀疏和2-下文依賴性強(qiáng)的問題。針對該問題,通過引入LDA主題模型,首先提取查詢詞潛在主題,得到查詢詞對應(yīng)的主題分布;然后將概率最大的主題對應(yīng)的詞擴(kuò)充到原始特征空間中,豐富用戶特征;最后采用SVM分類算法對用戶基本屬性進(jìn)行分類,構(gòu)建用戶畫像。實(shí)驗(yàn)表明,利用LDA模型對用戶特征進(jìn)行擴(kuò)展比傳統(tǒng)向量空間模型用戶畫像精度提高了1.6%。
關(guān)鍵詞:用戶畫像;特征擴(kuò)展;向量空間模型;LDA;SVM
DOI:10.11907/rjdk.192135 開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
中圖分類號:TP391文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2020)006-0192-04
0 引言
互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展帶來各種社交大數(shù)據(jù),這些數(shù)據(jù)潛藏著巨大的商業(yè)價值。用戶畫像指通過分析用戶基本屬性和行為習(xí)慣,給用戶貼上一些標(biāo)簽以描述用戶偏好。例如,通過對用戶網(wǎng)絡(luò)行為數(shù)據(jù)的分析,可以獲知其興趣偏好,從而幫助企業(yè)進(jìn)一步了解用戶需求,為用戶提供更好的消費(fèi)體驗(yàn)。
彭秋芳等提出從用戶歷史交易記錄中構(gòu)建用戶畫像模型,通過機(jī)器學(xué)習(xí)方法發(fā)現(xiàn)潛在的用戶行為信息;陳志明等利用知乎網(wǎng)站,構(gòu)建了基于用戶的社交網(wǎng)絡(luò)、興趣愛好和知識能力等多個屬性的用戶畫像模型;王慶福等利用貝葉斯網(wǎng)絡(luò)提取用戶特征,構(gòu)建用戶興趣模型。此外,有學(xué)者發(fā)現(xiàn)基于搜索引擎的用戶畫像對制定有效的網(wǎng)絡(luò)營銷策略具有重要價值,如王樂等針對用戶上網(wǎng)行為數(shù)據(jù)復(fù)雜性帶來的特征選擇不穩(wěn)定問題,提出融合多種不同類型的特征選擇算法用戶畫像;李軍政基于用戶搜索記錄,提出利用傳統(tǒng)向量空間模型(Vector Space Model,VSM)提取文本特征詞,對用戶基本屬性進(jìn)行預(yù)測。但是由于用戶搜索記錄是短文本,存在數(shù)據(jù)稀疏及上下文依賴性強(qiáng)等問題,基于向量空間模型(VSM)的傳統(tǒng)特征提取方法忽略了單詞之間的語義關(guān)系,因此無法很好地表示用戶特征,從而影響最終分類效果。針對以上問題,本文提出利用隱狄列克雷分配(Latent Dirichlet Allocation,LDA)模型提取短文本主題,并對原始文本特征進(jìn)行語義擴(kuò)充,豐富用戶特征信息,進(jìn)一步提高用戶畫像精度。
1 相關(guān)研究
1.1 向量空間模型
向量空間模型(VSM)是經(jīng)典文本表示模型,可將文本表示為一個數(shù)字特征向量。短文集D={d1,d2,…,dM},M為短文本總數(shù),詞Ⅳ:{W1,W2,…,WN},N為詞總數(shù)。1篇短文本di∈D表示為向量的形式V={ω1,ω2,…,ωN},其中ωk為詞wk∈W在di中的權(quán)重,其中權(quán)重值用TF-IDF表示。
其中,tfki表示詞Wk在di中出現(xiàn)的次數(shù),dfk表示D中含有詞Wk的短文本總數(shù)。
1.2 LDA模型
LDA是一種無監(jiān)督模型,常被用于識別隱藏在文本中的主題信息。該模型可將一系列文檔表示為T個主題的概率分布,且每個主題表示為一系列詞的概率分布,模型結(jié)構(gòu)如圖l所示,圖中符號含義如表l所示。
在LDA中文檔主題分布服從Dirichlet分布,即文本主題分布Θ=Dirichlet(a)。其中,a為主題分布的超參數(shù),一般設(shè)置a=50/T。LDA中主題詞分布也服從Dirichlet分布,即主題詞分布φ=Dirichlet(β),其中,β為詞分布超參數(shù),一般設(shè)置β=0.01。
大量文獻(xiàn)表明,對LDA模型中Θ和φ直接進(jìn)行估計是非常困難的,因此需使用近似的估計技術(shù),常用方法有EM算法、Gibbs采樣算法。本文采用Gibbs采樣算法提取文本主題。
Gibbs采樣算法流程為:
輸入:文本集、主題數(shù)T。
輸出:文本主題分布,主題詞分布。
步驟1:主題初始化,給文本中的每個詞隨機(jī)分配主題。
步驟2:對于每一個詞,利用公式(2)重新計算它的主題概率。
步驟3:重復(fù)第2步的Gibbs采樣,直到Gibbs采樣收斂。
步驟4:統(tǒng)計文檔中各個詞的主題得到文本主題分布Θ,主題詞分布φ。
采樣公式為:
1.3 SVM分類模型
支持向量機(jī)(Support Vector Machine,SVM)的作用是在樣本空間中找到一個超平面,將空間中的樣本區(qū)分開。離超平面最近的樣本到超平面的距離影響分類器泛化能力,所以SVM需最大化該距離。
超平面公式為一個線性方程:ωTx+b=0,可看出劃分的超平面受參數(shù)ω和b影響.樣本到超平面的距離為:
2 LDA模型
針對用戶搜索記錄,本文首先通過引人LDA模型提取文本主題,然后利用主題詞對用戶特征進(jìn)行特征擴(kuò)展,最后通過SVM對用戶的基本屬性進(jìn)行分類,構(gòu)建用戶畫像。模型框架如圖2所示。
2.1 數(shù)據(jù)預(yù)處理
首先對原始數(shù)據(jù)集進(jìn)行數(shù)據(jù)清洗,去除屬性不全的數(shù)據(jù)記錄。由于需將單個漢字轉(zhuǎn)化成詞語才可進(jìn)一步挖掘文本信息,所以對不同用戶的搜索記錄進(jìn)行分詞處理,本文采用jieba分詞,分詞結(jié)果只保留名詞、動詞、形容詞3種詞性,這樣可過濾掉一些沒有實(shí)際意義的詞,減少特征維度,最后刪除停用詞,分詞結(jié)果如表2所示。
2.2 基于LDA特征擴(kuò)展的用戶畫像
用戶通過搜索引擎可從網(wǎng)絡(luò)上獲取信息,滿足自身需求,這些需求往往與用戶興趣愛好、基本屬性有密切關(guān)系。例如高學(xué)歷的人更偏向于了解與學(xué)術(shù)論文相關(guān)的信息;高齡人群較多搜索養(yǎng)身相關(guān)信息;男性則搜索游戲、體育信息的行為較多,所以可通過分析搜索文本刻畫用戶屬性標(biāo)簽。
在文本特征表示方面,由于向量空間模型(VSM)不能有效結(jié)合上下文語義信息,且難以處理特征稀疏的短文本,因此,本文將LDA模型引入到用戶畫像中。例如,對于“蘋果電腦”和“蘋果筆記本”,VSM不能體現(xiàn)出兩篇短文本的相似性,但這兩篇短文本主題分布差異很小,LDA模型可以將它們關(guān)聯(lián)起來以緩解特征稀疏問題。再比如“這臺蘋果電腦是紅色的”和“電腦旁的蘋果是紅色的”,這兩篇短文本分詞結(jié)果相同,VSM會認(rèn)為這兩篇短文本相似性很高,但這兩篇短文本主題分布差異較大,“蘋果”在前者中被分配的主題是“設(shè)備”,在后者中被分配的主題是“水果”,LDA模型可以將其區(qū)分開,從而克服上下文依賴性強(qiáng)的缺陷。
利用LDA得到的文本主題分布,可以將短文本表示成關(guān)于主題的向量,但是用戶查詢詞主題差別很大,每個用戶查詢詞的主題僅存在于小部分主題中,若用戶查詢詞沒有共同主題,兩者相似度為0,這樣的結(jié)果是不合理的。因此,本文利用LDA模型對文本特征進(jìn)行特征擴(kuò)展,主題與文本之間存在潛在的語義關(guān)聯(lián),擴(kuò)展后的特征使文本特征表達(dá)更加全面。
基于LDA特征擴(kuò)展的用戶畫像算法流程為:
輸入:用戶查詢詞數(shù)據(jù)集。
輸出:用戶基本屬性的分類結(jié)果。
步驟1:用向量空間模型(VSM)將用戶查詢文本表示為特征向量的形式,并對特征值(TF-IDF)進(jìn)行歸一化處理。
步驟2:對提取的特征向量進(jìn)行特征選擇,選取有用的特征詞作為用戶的原始特征詞。
步驟3:對于每個用戶,估算出對應(yīng)的查詢詞的主題分布Θ,以及主題詞分布φ。
步驟4:尋找概率最大的主題s,將該主題對應(yīng)的主題詞作為該用戶的擴(kuò)展特征,特征值為詞Wk屬于這個主題的概率。
步驟5:若擴(kuò)展的特征詞已存在于原始特征詞中,則無需將該詞添加進(jìn)去。
步驟6:用SVM算法將擴(kuò)展后的特征詞的3個屬性標(biāo)簽分別進(jìn)行分類。
3 實(shí)驗(yàn)及結(jié)果分析
3.1 數(shù)據(jù)集
本文采用Python3.7進(jìn)行實(shí)驗(yàn),操作系統(tǒng)為Windows10,CPU為Core(TM)i7。實(shí)驗(yàn)數(shù)據(jù)集來源于中國計算機(jī)學(xué)會(CCF)組織的大數(shù)據(jù)競賽。數(shù)據(jù)集中包含10萬條用戶數(shù)據(jù),提供用戶基本屬性標(biāo)簽和一個月內(nèi)的上網(wǎng)搜索文本。部分?jǐn)?shù)據(jù)集如表2所示。
其中ID為加密后的用戶編號;年齡屬性分為6類,由1~6表示,0表示未知;性別屬性分為2類,由1~2表示,0表示未知;學(xué)歷屬性分為6類,由1~6表示,0表示未知。
3.2 評價標(biāo)準(zhǔn)
本文選用查準(zhǔn)率P、查全率R和Fl值作為模型評價指標(biāo),分類結(jié)果混淆矩陣如表3所示,分別計算性別、年齡、學(xué)歷屬性的分類精確率、召回率和F1值。
3.3 實(shí)驗(yàn)結(jié)果對比與分析
將使用LDA模型進(jìn)行特征擴(kuò)展的方法、傳統(tǒng)基于VSM特征表示方法抽取用戶特征信息的方法及使用LDA主題模型抽取查詢詞主題信息的方法作為用戶特征信息提取方法進(jìn)行比較。實(shí)驗(yàn)結(jié)果取5次五折交叉驗(yàn)證后的平均值。
從上述實(shí)驗(yàn)結(jié)果可以看出,本文方法平均分類準(zhǔn)確率比VSM模型至少提高1.6%,比LDA模型至少提高2.9%;平均召回率比VSM模型至少提高2.4%,比LDA模型至少提高3.6%;F1值比VSM模型至少提高1.9%,比LDA模型至少提高3.2%。其中在學(xué)歷屬性上發(fā)揮的效果最好,比VSM模型至少提高了2.2%,比LDA模型至少提高了3.2%。傳統(tǒng)VSM模型分類效果不是很理想,但僅使用LDA模型提取查詢詞的主題信息作為用戶特征的分類效果不如VSM模型,因?yàn)橛脩羲阉髟~主題過于稀疏,使用戶特征表達(dá)性很差,但是利用LDA模型進(jìn)行特征擴(kuò)展,將原始特征結(jié)合單詞上下文語義信息,使得特征表達(dá)更加全面,在一定程度上可緩解短文本特征稀疏和上下文依賴性強(qiáng)的問題。
4 結(jié)語
本文針對用戶1個月的歷史查詢記錄,構(gòu)建了一個基于文本分析的用戶畫像。針對年齡、性別和學(xué)歷3個屬性使用SVM進(jìn)行分類實(shí)驗(yàn),使用LDA主題模型進(jìn)行特征擴(kuò)展,并將其作為用戶特征信息。實(shí)驗(yàn)表明,LDA模型在處理基于用戶搜索詞的用戶畫像時發(fā)揮了較好作用。下一步將與詞向量相結(jié)合,考慮相同單詞在不同上下文語境中的關(guān)聯(lián)性,進(jìn)一步改進(jìn)模型。