麻風(fēng)梅
(安康學(xué)院電子與信息工程學(xué)院 安康 725000)
隨著大數(shù)據(jù)時(shí)代的到來,人們已從缺乏信息的時(shí)代進(jìn)入了信息過載時(shí)代,網(wǎng)絡(luò)上的海量信息讓人們眼花繚亂,無所適從[1]。旅游業(yè)作為國(guó)民經(jīng)濟(jì)的支柱產(chǎn)業(yè)之一,近年來仍在不斷升溫,旅游網(wǎng)站不斷興起,旅游推薦算法成了該領(lǐng)域的研究熱點(diǎn)[2]。針對(duì)個(gè)性化旅游推薦問題,學(xué)者們進(jìn)行了深入研究,雖然取得了一定進(jìn)展,然而它依然面臨著諸多挑戰(zhàn)[3]。譬如,當(dāng)前的推薦系統(tǒng)建模技術(shù)并不能準(zhǔn)確全面地描述游客偏好,沒有充分利用含有豐富用戶信息的用戶特征數(shù)據(jù),缺乏對(duì)用戶興趣的綜合考慮等[4]。
針對(duì)上述問題,本文提出一種基于綜合相似度的旅游推薦算法,將用戶特征與綜合興趣合理結(jié)合。該算法使得系統(tǒng)的推薦效率、可擴(kuò)展性進(jìn)一步提高,提高了推薦的準(zhǔn)確率。
基于綜合相似度的旅游景點(diǎn)推薦算法步驟如下。
1)計(jì)算用戶特征和用戶興趣相似度,作為綜合相似度。2)根據(jù)綜合相似度找到相似用戶群。3)對(duì)目標(biāo)用戶的興趣景點(diǎn)進(jìn)行預(yù)測(cè),做出top-N推薦。
用戶特征即指人的年齡、性別、工作、學(xué)歷、居住地和國(guó)籍等,即一般情況下用戶注冊(cè)時(shí)需要填寫的信息[5]。而這些特征對(duì)預(yù)測(cè)用戶興趣有很重要的作用。中國(guó)旅游權(quán)威在線分析艾瑞咨詢給出了一組數(shù)據(jù),2017年中國(guó)旅游景區(qū)用戶性別分布中,男、女各占62.9%和37.1%,其中25~40歲的中青年用戶占到75.9%;地理分布上,廣東、上海領(lǐng)跑,旅游用戶最多;職業(yè)分布上,旅游景區(qū)用戶多為家庭、事業(yè)穩(wěn)定型群體,企業(yè)員工、公務(wù)員、事業(yè)單位人員所占比例最多。該網(wǎng)站的另一組數(shù)據(jù)分析也指出,在旅游過程中,年輕人更喜歡冒險(xiǎn)項(xiàng)目,而老年人更喜歡休閑觀光項(xiàng)目,女性更喜歡購(gòu)物,而男性更喜歡度假。旅游用戶的行為與其用戶特征有著較大的關(guān)系。利用用戶特征推薦相對(duì)隨機(jī)推薦能夠獲得更好的推薦效果。
本文只對(duì)用戶的年齡、性別、居住地和職業(yè)等用戶特征進(jìn)行用戶相似度度量[6]。由于用戶信息大多不是數(shù)值型,因此要對(duì)用戶特征進(jìn)行量化或轉(zhuǎn)化為數(shù)值型,以方便計(jì)算。通過對(duì)數(shù)據(jù)集中用戶的用戶特征進(jìn)行量化,形成了用戶-特征矩陣,如表1所示。
表1 用戶-特征矩陣
其中Ui為第i個(gè)用戶,F(xiàn)j為第 j個(gè)用戶特征。Pij表示第i個(gè)用戶的第 j個(gè)用戶特征值。用戶特征相似度計(jì)算方法公式如下:
因?yàn)椴煌脩籼卣鲗?duì)用戶興趣的影響程度不同,所以本文賦予特征相似度不同權(quán)值。公式如下:
其中SFp(a ,b)為用戶a與用戶b的性別特征相似度,SFq(a ,b)為用戶a與用戶b的年齡特征相似度,SFr(a ,b)為用戶a與用戶b的居住地特征相似度,SFs(a ,b)為用戶a與用戶b的職業(yè)特征相似度 。 其 中 , α∈[0 , 1],β∈[0 , 1],θ∈[0 , 1] ,ε∈[0 , 1],且α+β+θ+ε=1。
人的興趣是由主觀的表述與客觀的描述兩部分組成。在推薦系統(tǒng)中,我們把用戶在興趣調(diào)查中主動(dòng)提供的本人興趣傾向理解為主觀的興趣表述,這種表述相對(duì)固定,屬于顯性興趣;而用戶的種種搜索歷史和訪問行為反映了用戶的實(shí)際需要,這種需要的不斷變動(dòng)往往表示原有興趣的調(diào)整,這是用戶興趣的客觀描述,屬于隱性興趣[7]。本文以會(huì)話的方式在線獲取用戶的偏好和需求,然后結(jié)合對(duì)用戶瀏覽行為的分析得到綜合興趣。根據(jù)綜合興趣,分析用戶之間興趣的相似程度[8]。
為了更好地解決數(shù)據(jù)稀疏問題,本文在描述用戶興趣時(shí),首先,利用從旅游游記中提取的信息構(gòu)建景點(diǎn)本身的特征信息,為景點(diǎn)建立標(biāo)簽;然后,用景點(diǎn)標(biāo)簽來描述用戶興趣。在目前的旅游網(wǎng)站上,存在著海量的旅游游記。通過對(duì)游記的分析,我們發(fā)現(xiàn)用戶在計(jì)劃旅游選取景點(diǎn)時(shí),最普遍考慮的因素是景點(diǎn)的所屬區(qū)域、當(dāng)季是否為最佳旅游時(shí)間、旅游的主題和景點(diǎn)的類型。所以,我們?yōu)榫包c(diǎn)設(shè)置的標(biāo)簽與這4個(gè)因素相關(guān):區(qū)域、時(shí)間、主題、類型[9]。例如:在計(jì)劃旅游時(shí),不同的用戶會(huì)偏好不同的主題,一些用戶會(huì)偏好符合“徒步”主題的景點(diǎn),而另一些用戶可能會(huì)偏好符合“親子”主題的景點(diǎn)。關(guān)于類型,是景點(diǎn)本身的特性。有的景點(diǎn)的類型是“古鎮(zhèn)”,如鳳凰古鎮(zhèn)、束河古鎮(zhèn);而香港和上海則可以歸到“城市”類型中。關(guān)于主題中的“親子”、“情侶”這樣的詞匯,我們稱之為景點(diǎn)主題標(biāo)簽。同樣地,“城市”、“古鎮(zhèn)”則稱為景點(diǎn)類型標(biāo)簽[10]。
2.2.1 顯性興趣
顯性興趣是用戶對(duì)景點(diǎn)信息認(rèn)同程度的一種有意識(shí)地表達(dá),其特征主要來源于用戶對(duì)特定問題的答案分布。本系統(tǒng)采用在線問答的交流方式,各個(gè)問題的答案都以選項(xiàng)形式出現(xiàn),指導(dǎo)用戶在線回答,逐漸啟發(fā)用戶的偏好和需求[11]。通常用戶在表達(dá)他們的需求時(shí),描述都是模糊的,如“交通便利的”、“設(shè)施安全的”、“環(huán)境優(yōu)美的”。為了快速準(zhǔn)確識(shí)別出用戶的需求目的,本文用景點(diǎn)標(biāo)簽描述用戶的興趣特征,使用戶感興趣的活動(dòng)與一個(gè)或多個(gè)景點(diǎn)標(biāo)簽相對(duì)應(yīng),每個(gè)答案選項(xiàng)都標(biāo)有對(duì)應(yīng)的景點(diǎn)標(biāo)簽。例如,詢問用戶喜歡的運(yùn)動(dòng)類型時(shí),提供的答案選項(xiàng)有:徒步、單車等。根據(jù)當(dāng)前的會(huì)話情況,將用戶的所有答案映射到不同景點(diǎn)標(biāo)簽。旅游資源的特性包含有用戶的偏好越多則代表用戶對(duì)其的興趣越高[12~13]。
2.2.2 隱性興趣
隱性興趣主要體現(xiàn)于用戶對(duì)景點(diǎn)的瀏覽行為信息,用戶對(duì)感興趣的景點(diǎn)往往會(huì)高頻度地搜索和瀏覽[14~15]。如果用戶訪問了某一景點(diǎn),就可以認(rèn)為其對(duì)該景點(diǎn)感興趣。用戶對(duì)景點(diǎn)的感興趣程度依賴于其對(duì)景點(diǎn)的訪問頻度。在某一時(shí)間段內(nèi)訪問同一景點(diǎn)的次數(shù)越多,用戶興趣度越大。隱性興趣的獲取方法較為簡(jiǎn)單,可從用戶的瀏覽歷史記錄庫(kù)中得到其感興趣的景點(diǎn)。再將這些歷史景點(diǎn)信息轉(zhuǎn)換為與區(qū)域、時(shí)間、主題、類型4種因素相關(guān)的多個(gè)標(biāo)簽信息,并用這些標(biāo)簽信息來描述用戶的隱性興趣。
通過上述的方法得到顯性興趣標(biāo)簽和隱性興趣標(biāo)簽后,將兩者結(jié)合,形成用戶的綜合興趣標(biāo)簽,進(jìn)而計(jì)算用戶間的綜合興趣相似度。
本文采用了John S.Breese提出的用戶興趣相似度計(jì)算公式,公式如下:
N(u)為用戶u的興趣標(biāo)簽集,N(v)為用戶v的興趣標(biāo)簽集,N(i)為用戶u和用戶v共同的興趣標(biāo)簽集。
本文將用戶特征相似度與用戶興趣相似度相結(jié)合,得到綜合相似度,計(jì)算公式如下:
基于綜合相似度的推薦算法主要包括兩個(gè)步驟:1)利用綜合相似度對(duì)用戶進(jìn)行分類,找到相似用戶集合;2)依據(jù)相似用戶的旅游記錄為目標(biāo)用戶推薦感興趣的景點(diǎn)[16]。具體地,對(duì)于每一個(gè)目標(biāo)用戶,我們先找到和目標(biāo)用戶相似度最高的k個(gè)用戶,然后對(duì)k個(gè)相似用戶去過的景點(diǎn)進(jìn)行計(jì)數(shù),選出最受相似用戶歡迎且目標(biāo)用戶尚未去過的前N個(gè)景點(diǎn)作為推薦內(nèi)容。我們用景點(diǎn)熱度表示景點(diǎn)的受歡迎程度,如式(5)所示。一個(gè)景點(diǎn)被參觀的頻次越多,則該景點(diǎn)的熱度越高。特別地,在為目標(biāo)用戶推薦時(shí),我們提到的某個(gè)景點(diǎn)熱度是在相似用戶群中該景點(diǎn)的熱度,而不是在所有用戶中該景點(diǎn)的熱度。
式中,p表示景點(diǎn)數(shù)量;ui表示用戶i;Vui,p表示用戶i參觀景點(diǎn) p的頻次,如果沒有用戶去過景點(diǎn)p,則景點(diǎn) p的熱度為0。最后,按照景點(diǎn)熱度值的高低來排序,選出前N個(gè)推薦給用戶。
本文提出了基于綜合相似度的旅游景點(diǎn)推薦算法。該算法綜合考慮用戶特征數(shù)據(jù)、顯性興趣和隱性興趣向用戶推薦最適合的景點(diǎn)。同時(shí),采用景點(diǎn)標(biāo)簽來描述用戶興趣,能有效解決數(shù)據(jù)稀疏問題。