黃宇浩 顧得豪 胡炎林 周子楚 朱津毅 宋爽
摘? 要: 旅游網(wǎng)站上有著數(shù)不勝數(shù)的景點信息,但是對新用戶來說,網(wǎng)站缺少他們的瀏覽記錄、旅游經(jīng)歷等數(shù)據(jù),因此很難從眾多景點中精確推薦出適合他們的景點。本研究提出了一種通過標(biāo)簽挖掘和聚類算法快速構(gòu)建新用戶興趣模型的方法,以提高旅游推薦系統(tǒng)中新用戶的用戶體驗感。
關(guān)鍵詞: 旅游推薦; 冷啟動; 網(wǎng)絡(luò)文本挖掘; 用戶聚類
中圖分類號:TP391.1? ? ? ? ? 文獻標(biāo)識碼:A? ? ?文章編號:1006-8228(2023)05-88-03
Fast user interest modeling for new users using tag mining
techniques and clustering algorithm
Huang Yuhao, Gu Dehao, Hu Yanlin, Zhou Zichu, Zhu Jinyi, Song Shuang
(Nanjing University of Technology,School of Computer Science and Technology, Nanjing, Jiangsu 211816, China)
Abstract: There are countless tourism information on various travel websites, however, the lack of user data such as browsing history or travel experience makes it difficult to recommend the right point of interest for new users. In this paper, a method to quickly build a new user interest model using tag mining techniques and clustering algorithm is proposed to improve the user experience of new users in the travel recommendation system.
Key words: tourism recommendation; cold start; online text mining; user clustering
0 引言
旅游業(yè)是一個熱門行業(yè),但是由于缺少新用戶的數(shù)據(jù),旅游網(wǎng)站往往只能根據(jù)景點名、評論數(shù)、用戶評分計算景點的陳列順序[1],導(dǎo)致推薦效果不理想,用戶體驗感差,不利于旅游服務(wù)的多樣化和個性化。
目前常見的新用戶興趣建模方法有兩種,第一種是問卷調(diào)查法,即采取問卷的形式獲取新用戶興趣,如提供由李克特五級量表構(gòu)成的選項供用戶選擇[2]。但是,大量的文字題目會增加用戶的負擔(dān),降低用戶體驗,所以不是最理想的手段。第二種是相關(guān)推薦法,即基于新用戶的個人信息和與其相似的老用戶的景點喜好實現(xiàn)推薦。這種方式無需用戶操作,但研究表明,如果年齡、性別等的人口統(tǒng)計學(xué)信息較為模糊,就不足以支持實現(xiàn)精細化、個性化推薦[3]。
綜合以上分析,本文提出一種基于標(biāo)簽內(nèi)容和聚類算法的快速興趣建模方法,通過讓新用戶選擇自己感興趣的景點,快速分析用戶的景點偏好,從而緩解新用戶的冷啟動問題。
1 系統(tǒng)設(shè)計
本系統(tǒng)總體分為用戶端和管理端,功能分類如圖1。
管理端實現(xiàn)了對用戶信息及景點信息的增刪改查操作;用戶端包括智能推薦模塊、熱門景點推薦模塊和景點評分模塊,可以查看景點推薦列表并對景點進行評分。用戶在注冊時,需要填寫個人信息,并在若干張預(yù)設(shè)圖片中選擇自己感興趣的景點,系統(tǒng)通過逆向挖掘相應(yīng)景點的標(biāo)簽,計算出新用戶的興趣。
2 初始化算法設(shè)計與實現(xiàn)
2.1 數(shù)據(jù)采集
本研究以南京市的旅游景點為對象,使用了Python語言,基于爬蟲技術(shù)從貓途鷹(www.tripadvisor.com)、去哪兒旅行網(wǎng)(www.qunar.com)、百度百科(www.baike.baidu.com)和攜程網(wǎng)(www.ctrip.com)采集所有相關(guān)數(shù)據(jù)。數(shù)據(jù)由三部分組成:①景點基本信息的文本數(shù)據(jù),②景點評論及游記的文本數(shù)據(jù),③景點的圖片數(shù)據(jù)。采集時間是2022年7月至9月,最終采集到295個有效景點,共計43531條評論和829張圖片。
2.2 標(biāo)簽制作與提取
針對景點評論、景點簡介等文本數(shù)據(jù),使用jieba分詞技術(shù)提取單詞后,去除停用詞,基于式⑴~式⑶計算TF-IDF值以構(gòu)建景點-標(biāo)簽庫[4]。
[TF-IDFi,t=TFi,t*IDFi,t]? ⑴
[TFi,t=ni,tnt]? ⑵
[IDFi,t=lgItI+1]? ⑶
其中,TFi,t表示景點i對標(biāo)簽t的依賴程度,ni,t是景點i的文本數(shù)據(jù)中標(biāo)簽t的出現(xiàn)次數(shù),nt是標(biāo)簽t在所有文本數(shù)據(jù)中的出現(xiàn)次數(shù)。IDFi,t表示標(biāo)簽t的熱門程度,用于實現(xiàn)對出現(xiàn)次數(shù)過多的熱門標(biāo)簽的懲罰,|I|是景點個數(shù),|It|是包括標(biāo)簽t的景點個數(shù)。最后,根據(jù)TF-IDF將標(biāo)簽降序排列,并計算TF-IDF值的累積和,取累計和小于50%部分作為有效標(biāo)簽。
2.3 基于聚類算法求初始化圖片
為了實現(xiàn)用盡量少的景點挖掘用戶對盡量多種類的標(biāo)簽的依賴性,本研究采用如下方法對景點進行分類,并挑選每個類型的代表景點。
⑴ 對景點的每個標(biāo)簽的TF-IDF值進行標(biāo)準化和歸一化,使其值域為[0,1]。
⑵ 基于碎石圖決定景點類型數(shù)量k,具體步驟是:首先,基于K-means聚類算法[5]將景點分成k類(k=2,3,4,…),計算每種分類結(jié)果中,各景點到相應(yīng)質(zhì)心的距離,取最小值作為該分類的評價值,取所有類型評價值的平均值作為分成k類時的評價值,最后根據(jù)圖2中的坡度變化選取了k=9。
⑶ 基于k-means聚類算法將全部景點分成九類。
⑷ 選取每類的代表景點,該步驟設(shè)計思路如下:首先,用歐式距離公式計算每個景點i到對應(yīng)分類c質(zhì)心的距離sc,i;其次,對sc,i進行z-score標(biāo)準化得到dc,i后,使用式⑷計算分類c中景點i的評價值rc,i;最后,取每個分類中評價值最高的景點作為代表。式⑷中,ni代表景點i所包含的標(biāo)簽數(shù)。由于系統(tǒng)采用圖片展示景點,所以設(shè)置α值作為判斷景點是否具備圖片數(shù)據(jù)的權(quán)重,即若有圖片則置為1,否則為0。
[rc,i=α×nidc,i]? ⑷
3 算法效果評估
3.1 評估方法
本研究采用仿真實驗評估用戶興趣建模的效果。由于本實驗選出了九個景點并采用“喜歡”和“不喜歡”兩種選項,因此可以將用戶快速分成29=512種類型。本實驗分為以下兩個子實驗。
實驗1 考察不同類型用戶的推薦結(jié)果間是否存在差異,即:針對每種類型的用戶,基于標(biāo)簽推薦算法計算出對應(yīng)的景點推薦列表,在此基礎(chǔ)上,計算任意兩組推薦結(jié)果的斯皮爾曼順位相關(guān)系數(shù);
實驗2 考察不同類型用戶的推薦結(jié)果是否合理,即:按照旅游網(wǎng)站上列舉的景點歷史評論數(shù)由高到低計算出景點的熱門度排序,計算任意推薦結(jié)果與熱門度排序間的順位相關(guān)系數(shù)。
3.2 結(jié)果與討論
本實驗使用了SPSS軟件對512種推薦結(jié)果進行雙變量相關(guān)性分析。
實驗1得到512×512組斯皮爾曼相關(guān)系數(shù),并從中除去了自相關(guān)的512個數(shù)據(jù)和重復(fù)數(shù)據(jù)(如x和y的相關(guān)系數(shù)與y和x的相關(guān)系數(shù)),結(jié)果的平均值為0.718,方差為0.085。這說明任意組合的排序有一定的相似但是存在差異,即采用本方法可以實現(xiàn)多樣化的推薦。同時,結(jié)果中存在少量組合間的順位相關(guān)系數(shù)為1,這些組合對應(yīng)的是僅有一個景點選擇不同的兩類用戶,造成該現(xiàn)象的原因可能是景點數(shù)量較少,沒有足夠的景點來體現(xiàn)少量標(biāo)簽的差異,導(dǎo)致了標(biāo)簽興趣不同的用戶獲得的推薦結(jié)果相同,后續(xù)可以嘗試增加景點數(shù)量加以應(yīng)對。
實驗2得到512個相關(guān)系數(shù),其平均值為0.827,方差為0.091,這說明本算法得出的推薦結(jié)果和熱門排序相具有一定的相似性,不是隨機推薦。同時,推薦結(jié)果與熱門度排序的差異體現(xiàn)了針對不同用戶可以獲得個性化的推薦結(jié)果。
雖然本方法能夠快速的將用戶分類,但本研究沒有檢查用戶興趣和每種分類間的映射關(guān)系,因此后續(xù)還需進行用戶評價實驗。此外,本系統(tǒng)采用了“喜歡”和“不喜歡”兩極化選項,若改為“喜歡-中性-不喜歡”等多級選項的話,可以實現(xiàn)更為細致的用戶劃分,對于選項設(shè)置對推薦結(jié)果的影響,還應(yīng)進一步考察。
4 結(jié)束語
本文針對推薦系統(tǒng)無法快速、精準建立新用戶興趣模型的問題,提出了一種基于標(biāo)簽挖掘和聚類算法的建模方法。經(jīng)過多次測試評估推薦結(jié)果,本方法能夠有效的實現(xiàn)對用戶的快速分類,獲得多樣化的推薦結(jié)果,并且該結(jié)果可以兼顧個性化與熱門度。若將該方法運用在推薦系統(tǒng)中,可以在減少繁瑣的操作的同時獲得個性化的推薦景點,提升新用戶的使用體驗,有利于提升網(wǎng)站的用戶留存率和用戶評價。但是,本研究僅僅針對了新用戶的冷啟動問題進行了處理,若想要整體改善用戶間推薦結(jié)果雷同的問題,還可以進一步的加入?yún)f(xié)同過濾等推薦算法。
參考文獻(References):
[1] 劉艷,潘善亮.基于LBSN好友關(guān)系的個性化景點推薦方法[J].計算機工程與應(yīng)用,2015,51(8):117-122
[2] 漆亞莉.城鎮(zhèn)居民鄉(xiāng)村文化旅游消費意愿影響因素研究——基于南寧市城鎮(zhèn)居民問卷調(diào)查數(shù)據(jù)[J].北京文化創(chuàng)意,2022(1):70-78
[3] 陳阿龍.推薦系統(tǒng)用戶冷啟動問題相關(guān)研究[D].碩士,國防科學(xué)技術(shù)大學(xué),2016
[4] 熊中敏,郭懷宇,吳月欣.缺失數(shù)據(jù)處理方法研究綜述[J].計算機工程與應(yīng)用,2021,57(14):27-38
[5] 李明媚.基于數(shù)據(jù)特征選擇的融合聚類方法研究[D].碩士,杭州電子科技大學(xué),2022