王亦雷,嵇智源,夏 勇,秦 臻,程紅蓉
然后,需要將參數(shù)沿著梯度的方向更新,遞推公式為:
移動(dòng)用戶人口統(tǒng)計(jì)信息預(yù)測(cè)
王亦雷1,嵇智源2,夏 勇1,秦 臻1,程紅蓉3
(1. 電子科技大學(xué)信息與軟件工程學(xué)院 成都 610054; 2. 科技部高技術(shù)研究發(fā)展中心 北京 海淀區(qū) 100044; 3. 電子科技大學(xué)計(jì)算科學(xué)與工程學(xué)院 成都 611731)
提出了一種基于支持向量機(jī)的預(yù)測(cè)方法,通過分析智能手機(jī)應(yīng)用的使用情況,預(yù)測(cè)用戶的人口統(tǒng)計(jì)信息。手機(jī)使用行為數(shù)據(jù)約為5萬智能手機(jī)用戶在3個(gè)月期間使用手機(jī)應(yīng)用產(chǎn)生的網(wǎng)絡(luò)日志文件,包括179 954 181條日志記錄。通過對(duì)日志記錄的主題進(jìn)行分析,可將179 954 181條日志記錄匹配到266個(gè)不同的主題。在此基礎(chǔ)上,通過將每個(gè)用戶的人口統(tǒng)計(jì)信息與該用戶對(duì)266個(gè)不同主題的訪問權(quán)重進(jìn)行關(guān)聯(lián),可構(gòu)建訓(xùn)練數(shù)據(jù),并代入支持向量機(jī)模型進(jìn)行計(jì)算。實(shí)驗(yàn)結(jié)果表明該方法對(duì)用戶的性別和年齡預(yù)測(cè)能夠取得良好的預(yù)測(cè)結(jié)果。
人口統(tǒng)計(jì)信息; 預(yù)測(cè); 智能手機(jī)應(yīng)用; 支持向量機(jī)
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,許多互聯(lián)網(wǎng)公司越來越關(guān)心用戶的基礎(chǔ)屬性信息,包括性別、年齡、收入及文化水平等,以便于提供更好的個(gè)性化服務(wù)。如Google公司提供的個(gè)性化搜索服務(wù),結(jié)合了用戶的地理位置信息返回相應(yīng)的搜索結(jié)果[1];亞馬遜購物網(wǎng)站則根據(jù)用戶的瀏覽和購買記錄,向用戶推薦相應(yīng)的商品以促進(jìn)用戶消費(fèi)。與此同時(shí),定制廣告投放也是一種越來越流行的個(gè)性化服務(wù),定制廣告投放是指根據(jù)用戶的興趣愛好投放相應(yīng)的廣告[2]。最近的研究表明定制廣告投放可以獲得比普通廣告投放更好的宣傳效果[3]。
在個(gè)性化服務(wù)和定制廣告投放業(yè)務(wù)中,用戶的瀏覽記錄、搜索興趣、地理位置信息和人口統(tǒng)計(jì)信息等個(gè)人信息扮演著重要的角色。其中,用戶的人口統(tǒng)計(jì)信息(如性別、年齡、收入和文化程度等)尤為重要。然而,人口統(tǒng)計(jì)信息是用戶比較敏感的隱私信息,用戶不愿意公開這類隱私屬性,這類信息不易獲取。
盡管如此,近年來很多學(xué)者通過分析用戶的行為數(shù)據(jù)(如博客、照片、社交網(wǎng)站狀態(tài)、心情評(píng)論等)獲取用戶的人口統(tǒng)計(jì)信息。文獻(xiàn)[4]指出通過研究用戶的書寫和說話方式可以預(yù)測(cè)出用戶的人口統(tǒng)計(jì)信息;文獻(xiàn)[5]的研究表明通過分析博客內(nèi)容可以預(yù)測(cè)博客作者的性別;文獻(xiàn)[6]通過研究Twitter用戶在Twitter上發(fā)表的內(nèi)容來預(yù)知用戶的性別。此外,還有一些學(xué)者通過分析用戶的搜索歷史記錄和瀏覽歷史記錄等Internet行為數(shù)據(jù),分析用戶的人口統(tǒng)計(jì)信息。文獻(xiàn)[7]研究不同性別和年齡的人搜索行為之間的差異性,并且發(fā)現(xiàn)搜索引擎用戶的基礎(chǔ)屬性分布和美國的人口分布相符;文獻(xiàn)[8]的另一項(xiàng)研究表明用戶搜索的內(nèi)容和用戶的性別、年齡等是相關(guān)聯(lián)的;文獻(xiàn)[9]通過分析用戶瀏覽網(wǎng)頁的歷史記錄判別出用戶的性別和年齡;文獻(xiàn)[10]通過分析用戶瀏覽網(wǎng)頁的內(nèi)容和關(guān)鍵字預(yù)測(cè)用戶的性別和年齡。
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,智能手機(jī)應(yīng)用成了人們生活中必不可少的重要組成部分。但是由于用戶的個(gè)體需求和興趣的差異,每個(gè)用戶智能手機(jī)上安裝的應(yīng)用有所差別。如,男性更偏好運(yùn)動(dòng)類的手機(jī)應(yīng)用,而女性則比較喜歡時(shí)尚類的手機(jī)應(yīng)用。即便對(duì)于相同的應(yīng)用,不同的用戶也會(huì)有不同的使用偏好。如,對(duì)于一個(gè)網(wǎng)絡(luò)視頻應(yīng)用,成年人更傾向于觀看時(shí)政新聞,而兒童則更傾向于觀看娛樂節(jié)目。由于智能手機(jī)和用戶是緊密相關(guān)的,分析手機(jī)的使用行為使得預(yù)測(cè)用戶的人口統(tǒng)計(jì)信息成為可能,本文將嘗試通過分析用戶智能手機(jī)上應(yīng)用的使用情況,進(jìn)而預(yù)測(cè)用戶的性別和年齡。
本文旨在通過分析一定數(shù)量的人口統(tǒng)計(jì)信息已知的用戶的智能手機(jī)應(yīng)用情況,結(jié)合部分人口統(tǒng)計(jì)信息未知的用戶的智能手機(jī)應(yīng)用情況,對(duì)其他用戶的人口統(tǒng)計(jì)信息進(jìn)行預(yù)測(cè)。
本文著重關(guān)注用戶的性別和年齡。用戶的性別預(yù)測(cè)被定義為將用戶分類為男性或者女性的一個(gè)二分類問題;用戶的年齡預(yù)測(cè)被定義為一個(gè)多分類問題,分類類別如表1所示。
表1 年齡分組
本文的數(shù)據(jù)集是:國內(nèi)一家網(wǎng)絡(luò)運(yùn)營商提供的近5萬智能手機(jī)用戶在2013年10月-2013年12月3個(gè)月期間使用智能手機(jī)應(yīng)用產(chǎn)生的網(wǎng)絡(luò)日志文件。當(dāng)智能手機(jī)應(yīng)用向Internet獲取資源時(shí),則產(chǎn)生一條日志,記錄在日志文件中。數(shù)據(jù)集中一共有179 954 181條日志記錄,每一條日志記錄由用戶的ID、應(yīng)用名稱和相應(yīng)的網(wǎng)絡(luò)資源組成。數(shù)據(jù)集中用戶的性別和年齡分布如表2所示。
表2 用戶基礎(chǔ)屬性分布
對(duì)于上述日志文件,本文中采用正則表達(dá)式將相應(yīng)的網(wǎng)絡(luò)資源匹配到相應(yīng)的主題(如,將德甲歸類到運(yùn)動(dòng)足球歐洲足球德甲)。每一條記錄都映射到一個(gè)主題。本文將每個(gè)主題定義為用戶的一個(gè)興趣。通過匹配,最終本文將日志文件中所有的記錄匹配到266個(gè)主題(興趣)。
這樣,本文中使用的數(shù)據(jù)集則可以定義為一個(gè)有權(quán)有向偶圖G=(V, E),V是頂點(diǎn)的集合,E是邊的集合。頂點(diǎn)集V中的一個(gè)頂點(diǎn)代表某個(gè)用戶或者某個(gè)用戶的一項(xiàng)興趣類別;邊集E中的一條邊代表某個(gè)用戶對(duì)某個(gè)興趣類別的偏好程度。進(jìn)一步,頂點(diǎn)集V可劃分為兩個(gè)子集合U={u1, u2,…,um}和C={c1, c2,…,cn},其中子集U為用戶集,子集C為用戶的興趣集。如果用鄰接矩陣R表示有權(quán)有向圖G,那么鄰接矩陣R中的元素rij代表用戶i對(duì)興趣類別j的偏好程度。本文中取用戶i對(duì)興趣類別j的請(qǐng)求次數(shù)來評(píng)估用戶對(duì)其的偏好程度。將用戶的性別、年齡和鄰接矩陣R相結(jié)合,可以統(tǒng)計(jì)出具有不同性別、年齡的用戶興趣分布,其分布如圖1所示。
圖1 具有不同性別、年齡的用戶興趣分布
2.1 數(shù)據(jù)分析
性別和年齡相似的用戶可能有相似的興趣愛好,有相似興趣愛好的用戶也很可能具有相似的性別和年齡。根據(jù)該假設(shè),若采用一種直接的方法,可以用協(xié)同過濾[11-12]的方法預(yù)測(cè)用戶的性別和年齡,但是因?yàn)閿?shù)據(jù)(鄰接矩陣R)的稀疏,而協(xié)同過濾對(duì)數(shù)據(jù)的稀疏性很敏感[13],如果直接采用協(xié)同過濾方法進(jìn)行預(yù)測(cè),會(huì)引入很多的噪聲,對(duì)預(yù)測(cè)效果造成不良影響。
為了解決該問題,本文將采用奇異值分解(singular value decomposition)[14-16]技術(shù)對(duì)鄰接矩陣R進(jìn)行預(yù)處理。經(jīng)過奇異值分解之后,可以得到相互正交的向量,避免原始數(shù)據(jù)(鄰接矩陣R)行列向量之間的干擾,進(jìn)而可以更好地挖掘數(shù)據(jù)間的隱性關(guān)系[14]。
2.2 方法步驟
本文首先用余弦相似性計(jì)算用戶之間的相似度,得到用戶的相似性矩陣;然后利用SVD技術(shù)[14]分解用戶的相似性矩陣,得到用戶的隱性反饋矩陣;最后將隱性反饋矩陣作為特征向量輸入高斯核的支持向量機(jī)[17]預(yù)測(cè)用戶的性別和年齡。
根據(jù)鄰接矩陣R,采用余弦相似性計(jì)算出用戶(子集U中的元素)之間的相似性,計(jì)算公式為:
式中,iR是用戶i的興趣偏好向程度。計(jì)算后,可得到用戶的相似性矩陣S。采用SVD將用戶的相似性矩陣S分解為兩個(gè)低維矩陣相乘:
式中,P∈Rm×k是降維后的矩陣。那么用戶i和用戶j之間的相似程度可以通過如下公式計(jì)算:
式中,pik=P( i, k),pjk=P( j, k)。通過訓(xùn)練,利用最小均方根誤差(root mean square error)學(xué)習(xí)P矩陣。同時(shí),為了防止過擬合,在損失函數(shù)中加入過擬合項(xiàng),其定義為:
為最小化損失函數(shù),采用隨機(jī)梯度下降算法[18]求解參數(shù)P。根據(jù)隨機(jī)梯度下降算法,先對(duì)式(4)中的參數(shù)pif和pjf求偏導(dǎo)數(shù),求解公式為:
然后,需要將參數(shù)沿著梯度的方向更新,遞推公式為:
當(dāng)誤差err小于某一個(gè)設(shè)定的閥值時(shí)停止迭代。在迭代更新學(xué)習(xí)速率α的取值需要通過反復(fù)實(shí)驗(yàn)獲得。如后面實(shí)驗(yàn)所示,在實(shí)驗(yàn)開始時(shí)需要對(duì)矩陣P進(jìn)行初始化,學(xué)習(xí)速率α在每一步學(xué)習(xí)時(shí)需要進(jìn)行衰減。
在學(xué)習(xí)完成之后可以得到用戶的隱私反饋矩陣P,將用戶隱私反饋矩陣P和用戶的基礎(chǔ)屬性相結(jié)合,P作為特征矩陣,采用高斯核的SVM分類,對(duì)用戶的性別和年齡進(jìn)行預(yù)測(cè)。
3.1 評(píng)價(jià)指標(biāo)
本文中采用準(zhǔn)確率(Acc)、精確率(Prec)、召回率(Rec)和F1值[9]作為評(píng)價(jià)指標(biāo)。準(zhǔn)確率(Acc)定義為正確預(yù)測(cè)的用戶數(shù)和實(shí)際用戶的總?cè)藬?shù)的比值,精確率(Prec)定義為正確預(yù)測(cè)為某類的人數(shù)和預(yù)測(cè)為該類的人數(shù)的比值,召回率(Rec)定義為正確預(yù)測(cè)某類人數(shù)和該類實(shí)際人數(shù)的比值,1F值是精確率和召回率的權(quán)衡,計(jì)算公式為:
因?yàn)轭A(yù)測(cè)有多個(gè)類別,所以本文中采用宏觀的F1值作為評(píng)價(jià)指標(biāo)。
3.2 實(shí) 驗(yàn)
根據(jù)本文提出的方法,首先初始化矩陣P。對(duì)矩陣P的初始化有多種方法,一般是將P用隨機(jī)數(shù)填充[9]。在實(shí)驗(yàn)中,則是用和sqrt(k)成反比的高斯分布隨機(jī)數(shù)初始化矩陣P。參數(shù)λ和α以最小化損失函數(shù)C( p)為目標(biāo),可通過交叉驗(yàn)證得出。本文通過反復(fù)實(shí)驗(yàn)得出α=0.01,λ=0.001,且α在每一步學(xué)習(xí)之后自乘0.9衰減。
在SVD分解中,SVD的維度k是一個(gè)重要的參數(shù),通過實(shí)驗(yàn)研究k對(duì)預(yù)測(cè)結(jié)果的影響。最小化損失函數(shù)()C p,設(shè)定維度k從5~100逐步變化。對(duì)于每一個(gè)維度k,設(shè)定SVD迭代次數(shù)從1~150變化,進(jìn)行反復(fù)迭代學(xué)習(xí),得到每個(gè)維度下的最優(yōu)迭代次數(shù),從而得到隱私反饋矩陣P。以性別預(yù)測(cè)為例,SVD維度k對(duì)預(yù)測(cè)結(jié)果的影響效果如圖2所示。
圖2 SVD維度k對(duì)預(yù)測(cè)結(jié)果的影響
從圖2可以看出,隨著維度k的增加,預(yù)測(cè)結(jié)果的準(zhǔn)確率和1F值都有所提升,當(dāng)k值達(dá)到70時(shí),得到一個(gè)較穩(wěn)定的預(yù)測(cè)結(jié)果,準(zhǔn)確率為75.79%和1F值為74.96%。在后面的分類實(shí)驗(yàn)中將P矩陣作為特征向量,采用高斯核的支持向量機(jī)分類方法分類預(yù)測(cè)用戶的基礎(chǔ)屬性。對(duì)用戶的性別和年齡分別訓(xùn)練分類模型,實(shí)驗(yàn)采用10倍交叉驗(yàn)證法,對(duì)性別和年齡進(jìn)行預(yù)測(cè)。
用戶的性別和年齡的預(yù)測(cè)結(jié)果如表3所示。用戶的年齡分類預(yù)測(cè)是一個(gè)五分類問題,預(yù)測(cè)結(jié)果達(dá)到準(zhǔn)確率57.14%和1F值52.52%;對(duì)于用戶的性別分類這樣的二分類問題,預(yù)測(cè)效果更佳,達(dá)到準(zhǔn)確率76.29%和1F值75.21%。
表3 用戶基礎(chǔ)屬性預(yù)測(cè)結(jié)果
本文提出的預(yù)測(cè)方法可以根據(jù)移動(dòng)用戶智能手機(jī)應(yīng)用的使用情況,預(yù)測(cè)用戶性別、年齡等用戶隱私屬性。該預(yù)測(cè)方法主要包含3個(gè)步驟:1) 將智能手機(jī)用戶的手機(jī)應(yīng)用每條日志記錄匹配相應(yīng)的主題,從而得到一個(gè)關(guān)聯(lián)用戶和興趣類型的鄰接矩陣;2) 結(jié)合用戶的興趣偏好計(jì)算用戶的相似相關(guān)性,得到用戶的相關(guān)性矩陣,再采用SVD分解技術(shù),分解用戶的相關(guān)性矩陣以得到用戶的隱性反饋矩陣;3) 將用戶的隱性反饋矩陣作為用戶的特征,采用高斯核的支持向量機(jī)分類器分別訓(xùn)練用戶的性別和年齡的分類模型?;谶\(yùn)營商的現(xiàn)實(shí)數(shù)據(jù),采用交叉驗(yàn)證的實(shí)驗(yàn)結(jié)果顯示本文的方法對(duì)用戶的性別、年齡預(yù)測(cè)能夠取得很好的分類預(yù)測(cè)效果,對(duì)用戶的性別的預(yù)測(cè)能夠達(dá)到76.29%的準(zhǔn)確率和75.21%的1F值,對(duì)用戶的年齡預(yù)測(cè)能夠達(dá)到準(zhǔn)確率57.14%和52.52%的1F值。
[1] HANNAK A, SAPIEZYNSKI P, MOLAVI K A, et al. Measuring personalization of web search[C]//Proceedings of the 22nd International Conference on World Wide Web. Switzerland: International World Wide Web Conferences Steering Committee, 2013: 527-538.
[2] SMIT E G, VAN N G, VOORVELD H A M. Understanding online behavioural advertising: User knowledge, privacy concerns and online coping behaviour in Europe[J]. Computers in Human Behavior, 2014, 32: 15-22.
[3] JANSEN B J, MOORE K, CARMAN S. Evaluating the performance of demographic targeting using gender in sponsored search[J]. Information Processing & Management, 2013, 49(1): 286-302.
[4] GARERA N, YAROWSKY D. Modeling latent biographic attributes in conversational genres[C]//Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP. Stroudsburg: Association for Computational Linguistics, 2009: 710-718.
[5] YAN X, YAN L. Gender classification of weblog authors[C]//AAAI Spring Symposium: Computational Approaches to Analyzing Weblogs. California: AAAI, 2006: 228-230.
[6] BURGER J D, HENDERSON J, KIM G, et al. Discriminating gender on twitter[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing. Stroudsburg: Association for Computational Linguistics, 2011: 1301-1309.
[7] WEBER I, CASTILLO C. The demographics of web search[C]//Proceedings of the 33rd International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM Press, 2010: 523-530.
[8] WEBER I, JAIMES A. Demographic information flows[C]// Proceedings of the 19th ACM International Conference on Information and Knowledge Management. New York: ACM Press, 2010: 1521-1524.
[9] HU J, ZENG H J, LI H, et al. Demographic prediction based on user’s browsing behavior[C]//Proceedings of the 16th International Conference on World Wide Web. New York: ACM Press, 2007: 151-160.
[10] KABBUR S, HAN E H, KARYPIS G. Content-based methods for predicting web-site demographic attributes [C]//2010 IEEE 10th International Conference on Data Mining (ICDM). Sydney: IEEE Press, 2010: 863-868.
[11] BREESE J S, HECKERMAN D, KADIE C. Empirical analysis of predictive algorithms for collaborative filtering[C]//Proceedings of the Fourteenth Conference on Uncertainty in Artificial Intelligence. San Francisco: Morgan Kaufmann Publishers Inc, 1998: 43-52.
[12] SU X, KHOSHGOFTAAR T M. A survey of collaborative filtering techniques[EB/OL]. [2014-01-15]. http://www. hindawi.com/journals/aai/2009/4214251.
[13] SARWAR B, KARYPIS G, KONSTAN J, et al. Application of dimensionality reduction in recommender system-a case study[R]. Minneapolis: Dept of Computer Science Univ of Minnesota, 2000.
[14] KOREN Y. Factorization meets the neighborhood: a multifaceted collaborative filtering model[C]//Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM Press, 2008: 426-434.
[15] PRYOR M H. The effects of singular value decomposition on collaborative filtering[R]. Hanover: Dartmouth College, 1998.
[16] GOLUB G H, VAN LOAN C F. Matrix computations[M]. Maryland: Johns Hopkins University Press, 2012.
[17] JOACHIMS T. Making large scale SVM learning practical[R]. Dortmund: Universitat Dortmund,1999.
[18] LECHEVALLIER Y, SAPORTA G. Blum MGB choosing the summary statistics and the acceptance rate in approximate Bayesian computation[C]//Proceedings of Computational Statistics. Herdelberg: Springer, Physica Verlag, 2010: 47-56.
編 輯 蔣 曉
Demographic Information Prediction for Mobile Users
WANG Yi-lei1, JI Zhi-yuan2, XIA Yong1, QIN Zhen1, and CHENG Hong-rong3
(1. School of Information and Software Engineering, University of Electronic Science and Technology of China Chengdu 610054; 2. High Technology Research and Development Center, Ministry of Science and Technology Haidian Beijing 100044; 3. School of Computer Science and Engineering, University of Electronic Science and Technology of China Chengdu 611731)
A support-vector-machine-based predicting method is presented to predict users' demographic information by analyzing the usage of the applications in the smartphones. The smartphone usage data considered in this paper is a network log file, which records smartphone applications usage of 50 000 smartphone users for three months, including 179 954 181 entries. By analyzing the topic of each entry, the 179 954 181 entries can be matched with 266 distinct topics. Based on this result, by correlating the users’ demographic information with their query weight of such 266 distinct topics, a training data can be constructed and imported to support vector machine model for computation. The results of experiments show that the method proposed in this paper can well predict uses’ gender and age.
demographic information; prediction; smartphone application; support vector machine
TP393
A
10.3969/j.issn.1001-0548.2015.06.021
2014 ? 04 ? 14;
2014 ? 11 ? 28
國家自然科學(xué)基金(61133016, 61300191, 61370026);教育部-中國移動(dòng)科研基金(MCM20121041);四川省科技支撐計(jì)劃(2014GZ0106);中央高?;?ZYGX2013J003)
王亦雷(1985 ? ),男,博士生,主要從事移動(dòng)互聯(lián)網(wǎng)、數(shù)據(jù)挖掘、信息安全等方面的研究.