基于KNN的相關(guān)內(nèi)容推薦8780445_第1頁
基于KNN的相關(guān)內(nèi)容推薦8780445_第2頁
基于KNN的相關(guān)內(nèi)容推薦8780445_第3頁
基于KNN的相關(guān)內(nèi)容推薦8780445_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于KNN的相關(guān)內(nèi)容推薦2011年10月27日 由 joegh 留言 如果做網(wǎng)站的內(nèi)容運(yùn)營(yíng),相關(guān)內(nèi)容推薦可以幫助用戶更快地尋找和發(fā)現(xiàn)感興趣的信息,從而提升網(wǎng)站內(nèi)容瀏覽的流暢性,進(jìn)而提升網(wǎng)站的價(jià)值轉(zhuǎn)化。相關(guān)內(nèi)容推薦最常見的兩塊就是“關(guān)聯(lián)推薦”和“相關(guān)內(nèi)容推薦”,關(guān)聯(lián)推薦就是我們常說的購物籃分析,即使用購買了某商品的用戶同時(shí)購買了什么這個(gè)規(guī)則來發(fā)現(xiàn)商品間的潛在聯(lián)系,之前有相關(guān)的文章介紹向上營(yíng)銷、交叉營(yíng)銷與關(guān)聯(lián)推薦;關(guān)聯(lián)推薦是基于用戶行為分析的推薦,而相關(guān)內(nèi)容推薦是基于內(nèi)容固有特征的推薦,只與內(nèi)容本身有關(guān),與用戶的行為完全無關(guān),所以相關(guān)內(nèi)容推薦的模型是一種“冷啟動(dòng)”的算法,不需要任何歷史瀏覽訪問數(shù)據(jù)

2、的支持。內(nèi)容固有屬性相關(guān)內(nèi)容推薦因?yàn)橥耆唤柚脩魹g覽行為的數(shù)據(jù),所以底層數(shù)據(jù)不依賴于網(wǎng)站的點(diǎn)擊流日志,唯一的基礎(chǔ)數(shù)據(jù)就是內(nèi)容的固有屬性及完整信息。我們以豆瓣網(wǎng)的幾大塊內(nèi)容為例來看看對(duì)于這些內(nèi)容一般包含哪些固有屬性:書籍書名、作者、出版時(shí)間、出版社、分類、標(biāo)簽音樂專輯名、歌手、發(fā)行時(shí)間、發(fā)行方、風(fēng)格流派、標(biāo)簽電影電影名稱、導(dǎo)演、演員、上映時(shí)間、制片方、類型、標(biāo)簽豆瓣很多地方都使用了“標(biāo)簽”這個(gè)詞,用貼標(biāo)簽的形式來完成內(nèi)容的分類和標(biāo)識(shí),但其實(shí)標(biāo)簽又分為很多種,有些標(biāo)簽是在內(nèi)容生成時(shí)就被貼上的,有些可能是后續(xù)用戶貼上去的,而且豆瓣一般為內(nèi)容和標(biāo)簽定義了原始分類,如書籍分為文學(xué)、流行、文化既然分類和

3、標(biāo)簽內(nèi)容源生就帶有,那同樣可以作為內(nèi)容的固有屬性。還需要說明的是,這里不涉及文本挖掘和字符切分模糊匹配等問題,因此內(nèi)容的標(biāo)題、簡(jiǎn)介和全文不參與文本相似度的分析,雖然這些可能在構(gòu)建完整的相關(guān)內(nèi)容模型中不可缺少,但這里只考慮一些固有屬性是否相同實(shí)現(xiàn)簡(jiǎn)單應(yīng)用?;谏鲜龆拱陰最悆?nèi)容的屬性特征,選擇和整理適合分析的內(nèi)容屬性如下:“作者”就是指內(nèi)容的創(chuàng)造者,“來源”指內(nèi)容的發(fā)布方或獲取渠道,“分類”為內(nèi)容歸屬的類別,“標(biāo)簽”可以包含對(duì)內(nèi)容的各類描述信息和關(guān)鍵詞等。這里為了能夠盡可能清晰地描述整個(gè)分析模型和思路只選取了大部分內(nèi)容都包含的一些屬性,如果要構(gòu)建更加高效的相關(guān)內(nèi)容分析模型,需要更完整的內(nèi)容屬性,可

4、以根據(jù)自身內(nèi)容的特征進(jìn)行屬性的定義和選取。KNN算法及應(yīng)用KNN(K-Nearest Neighbor algorithm),K最近鄰算法,通過計(jì)算樣本個(gè)體間的距離或者相似度尋找與每個(gè)樣本個(gè)體最相近的K個(gè)個(gè)體,算法的時(shí)間復(fù)雜度跟樣本的個(gè)數(shù)直接相關(guān),需要完成一次兩兩比較的過程。KNN一般被用于分類算法,在給定分類規(guī)則的訓(xùn)練集的基礎(chǔ)上對(duì)總體的樣本進(jìn)行分類,是一種監(jiān)督學(xué)習(xí)(Supervised learning)方法。這里我們不用KNN來實(shí)現(xiàn)分類,我們使用KNN最原始的算法思路,即為每個(gè)內(nèi)容尋找K個(gè)與其最相似的內(nèi)容,并推薦給用戶。相當(dāng)于每個(gè)內(nèi)容之間都會(huì)完成一次兩兩比較的過程,如果你的網(wǎng)站有n個(gè)內(nèi)容,

5、那么算法的時(shí)間復(fù)雜度為Cn2,即n(n-1)/2。但是用內(nèi)容固有屬性有一個(gè)好處就是因?yàn)楣逃袑傩砸坏﹦?chuàng)建后基本保持不變,因此算法輸出的數(shù)據(jù)一旦計(jì)算好之后不需要重復(fù)計(jì)算去刷新,也就是對(duì)于網(wǎng)站內(nèi)容而言,原有內(nèi)容的數(shù)據(jù)在首次初始化之后可以不斷重復(fù)使用,只要更新新增內(nèi)容的數(shù)據(jù)就可以,數(shù)據(jù)的統(tǒng)計(jì)計(jì)算可以使用增量更新的形式,這樣可以有效地減少服務(wù)器的計(jì)算壓力。相關(guān)內(nèi)容模型有了基礎(chǔ)數(shù)據(jù)和算法的支持,我們就可以創(chuàng)建數(shù)據(jù)模型了。先看下基礎(chǔ)數(shù)據(jù)的類型,作者、分類、來源和標(biāo)簽都是字符型,其中作者、分類、來源基本可以當(dāng)做是單個(gè)值的屬性,標(biāo)簽一般包含多個(gè)值。首先由于都是字符可以確定屬性之間相似性的判定只能通過“是否相同”

6、,無法體現(xiàn)數(shù)值上的差異,所以對(duì)于作者、分類、來源這幾個(gè)單值屬性而言,比較的結(jié)果就是一個(gè)布爾型的度量,相同或者不相同;對(duì)于標(biāo)簽這個(gè)多值屬性可以考慮使用Jaccard相關(guān)系數(shù),但因?yàn)槊總€(gè)內(nèi)容標(biāo)簽的個(gè)數(shù)存在較大差異,使用驗(yàn)證后的結(jié)果并不理想,所以不考慮使用(當(dāng)然,如果內(nèi)容的標(biāo)簽個(gè)數(shù)比較固定,Jaccard相關(guān)系數(shù)是有效的)。因此,直接創(chuàng)建加權(quán)相似度模型如下,首先是標(biāo)簽的相似度分值設(shè)定:相同標(biāo)簽數(shù)圖書比例相似度分值070%0120%126%233%4=41%5再結(jié)合作者、分類和來源,通過加權(quán)設(shè)定總體的相似度分值:屬性相同時(shí)分值不同時(shí)分值權(quán)重加權(quán)分值分布作者10250,25分類10100,10來源101

7、50,15標(biāo)簽1,50100,50將所有屬性加權(quán)相似度分值的結(jié)果相加應(yīng)該分布在0,100,分值越高說明內(nèi)容間的相似度越高。對(duì)于這種簡(jiǎn)單的加權(quán)相似度評(píng)分模型,估計(jì)又有很多人要問權(quán)重是怎么確定的,確實(shí),這里的權(quán)重并沒有通過任何定量分析模型的方法去計(jì)算,只是簡(jiǎn)單的經(jīng)驗(yàn)估計(jì),但估計(jì)的過程經(jīng)過反復(fù)地調(diào)整和優(yōu)化,也就是不斷地嘗試調(diào)整各屬性的權(quán)重系數(shù)并輸出結(jié)果,抽樣檢驗(yàn)結(jié)果是否符合預(yù)期、是否有提升優(yōu)化的空間?;谏鲜鰞?nèi)容間相似度的計(jì)算結(jié)果,套用KNN的原理實(shí)現(xiàn)相關(guān)內(nèi)容推薦就異常簡(jiǎn)單了,只要根據(jù)每個(gè)內(nèi)容與之比較的所有內(nèi)容的相似度分值降序排列取前K個(gè)內(nèi)容作為該內(nèi)容的最相關(guān)內(nèi)容推薦給用戶就可以了。當(dāng)然中間可能會(huì)涉及相同相似度分值的內(nèi)容如何排序的問題(因?yàn)槟P偷年P(guān)系分值分布可能不會(huì)很離散),建議如果相似度分值相同使用隨機(jī)排序,以保證推薦結(jié)果有一定的變化,均勻內(nèi)容的曝光。好了,所有的分析流程介紹完了,好像跟前一篇的距離和相似度度量完全沒有關(guān)系,其實(shí)距離和相似度度量是KNN的基礎(chǔ)算法,因?yàn)镵NN的個(gè)體相似度或鄰近的距離都會(huì)選擇距離度量和相似度度量中的某種方法進(jìn)行計(jì)算,但這里考慮到了現(xiàn)實(shí)的數(shù)據(jù)情況和應(yīng)用環(huán)境,并不是KNN就一定要硬套歐氏距離,其實(shí)換一種簡(jiǎn)單的方法可能反而更加適合整個(gè)模型,而且模型的最終效果可能會(huì)更理想。所以一切的數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論