999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

融合知識圖譜語義信息的推薦方法

2020-11-17 06:29:04劉學軍張伯君
計算機工程與設計 2020年11期
關鍵詞:語義特征用戶

陳 濤,劉學軍,張伯君

(1.南京工業大學 計算機科學與技術學院,江蘇 南京 211816; 2.南京市鍋爐壓力容器檢驗研究院 業務與信息化部,江蘇 南京 210019)

0 引 言

傳統協同過濾算法根據用戶的歷史信息,尋找與其偏好相同的用戶進行推薦。然而基于協同過濾的推薦算法通常受到用戶交互的稀疏性和冷啟動問題的影響。因此利用知識圖譜中所蘊含的豐富的描述性數據可以非常有效地解決上述問題。近年來,知識圖譜以關聯開放數據(linked open data,LOD)的形式供大眾免費獲取使用,為知識感知的推薦系統在許多應用領域的發展鋪平了道路。一些研究人員提出了利用知識圖譜和關聯開放數據作為邊信息以此提高推薦系統的性能,其中大部分是將Dbpedia[1]作為知識庫。最初,基于關聯開放數據的推薦系統的提出是為了解決協同過濾算法中高度稀疏的用戶評分矩陣,實驗結果表明,基于關聯開放數據的推薦系統相較于傳統推薦算法確實提高了性能[2]。后來,人們進一步利用DBpedia構建知識圖譜分別提出了一種精確的基于內容的推薦算法和多關聯圖的圖推薦算法[3]。在一些交叉領域內,推薦系統的提出使得用戶能夠獲取不同領域項目的推薦,例如電影、音樂、新聞、醫療[4-6]。作者提出了一種將知識圖譜表示學習算法與協同過濾相結合,把原始數據轉化為偏好序列進行參數學習,加強了協同過濾推薦算法的性能[7]。文獻[8]利用知識圖譜有助于解決受限制的內容分析以及冷啟動問題:新的關聯特征提升了項目表示,解決了數據稀疏性。

利用知識圖譜中豐富的語義信息對于提升推薦系統的性能也非常有效,可以在不同的性能指標之間取得好的平衡,例如提升其多樣性、準確性、新穎性。文獻[9]是對DBpedia屬性的進一步應用,可以生成有效的推薦系統的自然語言解釋和語義相似性的定義,從而提供更加精確的推薦。

本文提出了一種結合知識圖譜語義信息的用戶畫像構建方式,并且利用用戶畫像之間的相似性進行協同過濾推薦。

1 知識圖譜語義信息

在過去的幾年間,知識圖譜的相關研究飛速地發展,這讓大眾可以免費使用知識圖譜中豐富的數據信息。最有影響的知識庫有DBpedia、Wikidata、Freebase等。

DBpedia中主要存在兩類信息:語義信息和事實信息。在電影知識圖譜中,事實信息是通過電影的不同屬性進行區分的,如電影名稱、導演名稱、主演等。而語義信息又可以分為類別數據和本體數據。分類數據通過對dct:subject進行編碼,表示從Wikipedia中解析的條目類別。如表1所示,是以電影Cinderella III:A Twist in Time為例,在DBpedia中的語義信息。其中表中Value列表示的是電影解析出條目類別,從這些條目類別中可以更加精準地了解對這部電影信息的描述,例如從中可以知道這部電影既是American_animated_films(美國動畫電影),又是Animated_musical_films(音樂動畫電影)等等,通過這些描述可以知道對這部電影喜歡的用戶,可能對American_animated_films 和Animated_musical_films這些主題的電影都感興趣,從而對用戶的情感分析更加精細準確。

由于篇幅限制,表1只是節選電影Cinderella III:A Twist in Time中的一小部分語義信息,事實上經過數據抽取會發現:主題語義信息的數量遠高于事實信息的數量,并且不同的電影通過語義信息可以得到更加詳細的描述,從而對于用戶畫像的刻畫可以更加精確。傳統電影數據集只是簡單地將電影分為喜劇片、恐懼片等,不能精確地分析用戶。對于尋找電影之間共性的推薦任務,主題語義信息比電影的其它實體屬性信息更有意義。因此,本文將自動編碼器網絡拓撲映射到與用戶評價電影的相關主題信息。

表1 電影Cinderella III:A Twist in Time的主題語義信息

2 算法設計

本節以電影領域為例,提出了融合知識圖譜主題語義信息的推薦模型,通過模型訓練構建了更加完善的用戶畫像,在空間向量模型中計算用戶相似度,最后形成Top-N推薦列表。

2.1 基于主題語義信息的自動編碼器

在模型的建立過程中,將自動編碼器的網絡結構看作知識圖譜中實體之間的連接,從而使神經網絡中的隱藏層有了具體的語義解釋。具體而言,每個神經元表示所采用的知識圖譜中的一個實體,神經元之間的連接則是實體之間的關系。生成的自動編碼器有3層:輸入層、隱藏層和輸出層,其中輸入層和輸出層表示電影評分,而中間的隱藏層表示在電影知識圖譜中的主題語義信息,其結構如圖1所示融合主題語義信息的自編碼器(semantic-knowledge-based autoencoder,SKBAE)。根據用戶過去評價的電影為每個用戶構建不同的自動編碼器模型進行訓練,隱藏層的節點數量取決于所評價電影的主題信息數。由于每個隱藏層節點對應于知識圖譜中電影的一個主題,因此隱藏層便有了其實際意義。

圖1 融合主題語義信息的自編碼器(SKBAE)結構

為了訓練這種自動編碼器,使用矩陣M來表示電影與主題之間是否存在關聯,其中的行和列分別代表電影和主題特征

隱藏層(H)和輸出層(O)的輸出可以由式(1)、式(2)計算得出

H=g(X×(W1·M))

(1)

O=g(H×(W2·MT))

(2)

其中,W1表示的是輸入層與隱藏層之間的權值矩陣,W2表示的是隱藏層與輸出層之間的權值矩陣。在反向傳播步驟中,通常對W1和W2按照均方誤差損失計算梯度

(3)

其中,xi,yi分別代表輸入向量和輸出向量,E是最小平方差損失函數

(4)

(5)

根據式(4)、式(5)修改了SGD(隨機梯度下降)反向傳播中的權值更新步驟。

隱藏層中的節點對應于知識圖譜中電影的主題特征。在每次迭代訓練的過程中,反向傳播將相應地改變層間邊的權重,使得輸入值與輸出值的偏差盡可能地減小。與實際應用相對應,該模型在訓練完成時,與隱藏節點相連接的輸入邊權重之和看作用戶對這一主題類型電影的喜好程度。

2.2 基于語義信息的用戶畫像構建

2.2.1 主題信息的低維向量表示

神經網絡經過訓練得到一個與用戶特征表示相關的低維向量表示。每個用戶對應一個模型,從而可以找到輸出中用戶評分的最佳值。因為隱藏層中的神經元與知識圖譜中的電影主題一一映射,所以,不再像傳統神經網絡中的隱藏單元那樣不能解釋其實際意義。自動編碼器便能夠表示用戶對所有擁有這個主題語義信息的電影的喜好程度。

通過將用戶在過去評價電影的相關聯主題語義信息作為特征,并根據與進入相應隱藏單元的邊的關聯權重來分配它們一個值。給定一個用戶u,主題特征f的權重是與該主題關聯的隱藏節點所有輸入邊權重的總和,即用戶對電影主題f的偏好程度是其所評價的電影中含有主題f的總和。其計算方法如式(6)所示

(6)

進一步可以將用戶u畫像表示如式(7)所示

profile(u)={〈f,α〉|α=αu(f),f∈Fu}

(7)

2.2.2 缺失主題特征表示

在實際情況中,因為不同用戶提供的評分數量可能不同,所以在用戶特征表示的維度上可能存在分布不平衡的情況。而且,通常情況下用戶評價的電影所屬主題特征只是整個主題集合F的部分子集。因此,將會有大量主題是屬于那些未被用戶評價過的電影,而找出這些主題可以更加完善用戶畫像的表示。為了計算出缺失特征的值,該方法運用了無監督深度學習模型Word2vec。Word2vec模型不僅可以進行詞向量化,還可以求出中心詞的概率,給定上下文詞向量作為模型的輸入,Word2vec可以返回最常用的單詞及其概率并且按照 Top-N 排列出來。

在Word2vec模型中,即使兩個單詞從未出現在同一個句子中,也能夠通過Word2ve模型計算出這兩個詞之間的語義相似性,其模型原理如圖2所示。將其應用到我們這個場景中,給定一個窗口中的主題特征序列 (f1,…,fn),通過Word2vec計算一個新主題特征f′成為序列中的下一個特征的概率,即p(f′|(f1,…,fn))。在該模型中,將用戶畫像初始表示中的主題序列作為Word2vec的輸入,然后計算出缺失主題特征f′?Fu的權重。

圖2 Word2vec模型原理

因此,要想獲得缺失主題特征的預測值,首先要生成由有序特征序列組成的語料庫作為Word2vec的輸入,其中序列中的主題特征按照權重α值的大小進行排列。

不同的評價指標所衡量的算法性能是不同的。通過對所得到的評價指標進行標準化,可以消除數量級帶來的誤差。原始數據經過數據標準化處理后,各指標處于同一數量級,適合進行綜合對比評價。基于此,對于每個 ∈profile(u),創建一個相關對 ,其中norm是標準化函數。這里選擇的標準化函數為minmax,對獲得的原始數據進行線性變換,使結果映射到[0,1]之間

pnorm(u)={〈f,norm(α)〉|〈f,α〉∈profile(u)}

(8)

對于每個標準化的用戶特征表示集pnorm(u),對其進行序列化得到

(9)

在預測階段,使用每個用戶的特征序列s(u) 作為訓練的Word2vec模型的輸入,可以得到 的概率p(|s(u))。該算法將所獲得的概率看作用戶對缺失主題f′的喜好程度。

如果給定缺失主題f′?Fu,經過訓練可以獲得多個以f′作為第一個元素的元素對。例如,假設電影的主題是美國動畫電影(American_animated_films),經過模型訓練可以得到前兩個的概率分布p(|s(u))、p(|s(u))。因為使用Word2vec訓練的目的就是對用戶初始畫像進行補充表示,所以這時就選擇p(|s(u)) 作為用戶對主題特征American_animated_films的權重。

至此,可以構建更加完善的用戶畫像——用戶初始特征表示加上經過word2vec訓練后的最大概率缺失特征與權值,即argmaxp|s(u))’,如式(10)所示

profile+(u)=profile(u)∪
{〈f,α〉|argmaxp(〈f,α〉|s(u)),
〈f,α〉?pnorm(u),α∈(0,1)}

(10)

其中,profile(u) 是式(7)用戶u的初始畫像,〈f,α〉|argmaxp(〈f,α〉|s(u)),〈f,α〉?pnorm(u),α∈(0,1) 是對用戶對缺失主題特征的表示,從而補充用戶畫像。

2.3 基于用戶畫像的協同過濾推薦算法

2.3.1 用戶相似性計算

對于給定的目標用戶,根據所提出的SKBAE結構,訓練獲得用戶的偏好表示,構建用戶畫像。將用戶畫像進行向量化,映射到Salton等提出的Vector Space Model(空間向量模型)中,然后利用余弦相似度計算目標用戶與其他用戶之間的相似度,其計算如式(11)所示。采用KNNs(K-nearest-neighbors)算法,選取用戶興趣相似度最高的K個用戶進行項目推薦

(11)

其中,p(u)、p(v) 分別表示用戶u、v的畫像。

2.3.2 生成推薦列表

通過計算用戶相似度,找出目標用戶u相似度較高的用戶組成近鄰域:將集合中用戶喜愛的物品全部提取出來,并去除u已經喜愛的物品,生成用戶u喜愛的候選電影集合I。對于每個候選推薦的電影i,用戶u對它感興趣的程度用如下公式計算

(12)

其中,r(vj,i) 表示用戶vj對于候選電影i的評分,rmean表示的是電影數據集中用戶u對電影的平均評分。使用式(12)所計算出的前N個用戶感興趣程度最大的電影i,進而對目標用戶進行推薦。

3 實驗設置及結果分析

3.1 數據集

實驗中所采用的數據集為MovieLens 1M。該數據集包含來自3952部電影的6040名用戶的1 000 209份匿名評分,評分范圍為1-5,其中數據集中的每個用戶至少對20部電影進行過評價。對于知識圖譜的數據集的獲取,我們采用SPARQL將DBpedia上的RDF數據抽取出來用于對知識庫資源更加詳細的描述,獲得了3952組與MovieLens 1M有對應關系的電影數據。

3.2 實驗設置

3.2.1 評價指標

為了評估所提出的方法性能,根據交叉驗證方法,將每位用戶評分數的80%作為訓練集,將剩余的20%作為測試集。對于每位用戶u,top-N推薦列表是通過計算每個沒有被u打分電影的分數來提供的,不管電影i是否出現在用戶測試集中。然后,通過計算性能指標將推薦列表與測試集進行比較。性能評價指標包括召回率(recall)、準確率(precision)、F1。

通常把分類目標分為正例(positive)和負例(negative)兩類,因此可以通過如表2所示的混淆矩陣,給出上面3個指標的定義。

表2 混淆矩陣

(1)召回率表示一個用戶喜歡的項目被推薦的概率,可以用如下公式表示

(2)準確率是指正確推薦項目數量與所有推薦項目數量的比值,可以用如下公式表示

(3)為了同時考慮準確率和召回率,以比較全面地評價算法的優劣。F1值

F1值、召回率、準確率的值越大,表明推薦性能越好。

3.2.2 對比實驗

對比算法的選擇主要從以下幾個方面考慮:主體算法同樣是協同過濾算法;將知識圖譜融入到推薦算法中;具有向量間的相似性計算。因此,對于上面所提出的算法,將下面幾個算法與之進行對比實驗。

(1)貝葉斯個性化排序算法(Bayes personalized ran-king,BPR):BPR通過向量之間的點積判斷向量之間的相似性:點積越大,向量之間投影越大,表示兩個向量越接近。

(2)協同知識嵌入(collaborative knowledge embedding,CKE)[10]:它首先提出合并知識圖譜和其它信息(如圖片和文本)以此來提高推薦系統性能。在本實驗中,實現了簡化版CKE,僅合并了電影主題信息。

(3)加權相似度的協同過濾算法(accordance and correspondence-Pearson correlation coefficient,AC-PCC)[11]:這一算法將用戶之間的一致性和相關性等因素考慮到皮爾遜系數中。

3.3 實驗結果及分析

3.3.1 實驗結果

通過對在最近鄰居個數K不同情況下,進行了對照實驗,獲得了相應的指標值,見表3。

表3 對比實驗數據

3.3.2 實驗結果分析

對于給定相同最近鄰居個數時,提出的算法相比較于其它3個算法在準確率、召回率和F1值指標上有著良好的表現。實驗結果如圖3所示,隨著用戶最近鄰居數的提升,BPR與AC-PCC算法各項性能指標都有了明顯的下降,而SKBAE與CKE算法都處于比較平穩的狀態,甚至有小幅度的提升,造成這種現象的發生是因為這兩種算法都是結合知識圖譜中的豐富邊信息,這說明,該算法通過利用關聯開放數據以及對用戶缺失特征的完善,可以有效降低隨著近鄰個數增加所帶來的數據稀疏性的影響,從而提高推薦質量。縱向上來看,如圖4、圖5所示,當K=20時,進行對照的算法和提出的算法在準確率指標上都有一個較大幅度的提升,這是因為鄰居數在一定范圍內時,隨著數量的增大能提供更加豐富的推薦項目。

圖3 準確率與用戶最近鄰居個數的關系

圖4 召回率與用戶最近鄰居個數的關系

圖5 F值與用戶最近鄰居個數的關系

4 結束語

本文提出了一種結合知識圖譜主題語義信息的用戶畫像構建方法,并且基于所構建出的用戶畫像進行推薦。相對于只利用用戶電影評分信息的傳統推薦算法而言,該算法能夠充分利用關聯開放數據中豐富的語義信息,從而對所要推薦的電影進行更加詳細的描述,彌補了數據稀疏的缺點。將電影知識圖譜主題語義信息附加到自動編碼器中,訓練過的模型進行有意義的、可理解的表示。

今后研究的主要方向有如下幾點:①通過從外部信息源注入顯式和結構化的知識來研究進一步增強用戶畫像的構建。②繼續在用戶相似度的準確性方面做工作,加入可信度這一指標從而提高推薦的準確率。

猜你喜歡
語義特征用戶
語言與語義
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
“上”與“下”語義的不對稱性及其認知闡釋
現代語文(2016年21期)2016-05-25 13:13:44
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
認知范疇模糊與語義模糊
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 亚洲一区二区三区国产精华液| 免费一级大毛片a一观看不卡| 国产91视频免费| 黄色一级视频欧美| 精品撒尿视频一区二区三区| 成年人久久黄色网站| 国产美女一级毛片| 亚洲日韩第九十九页| 亚洲免费播放| 无遮挡国产高潮视频免费观看| 免费观看欧美性一级| 亚洲婷婷丁香| 日本在线欧美在线| 国产91成人| 欧美中出一区二区| 亚洲无码高清视频在线观看| 无码中文字幕乱码免费2| 在线观看国产小视频| a毛片在线播放| 亚洲精品无码在线播放网站| 国产男女免费完整版视频| 啪啪永久免费av| 久久中文字幕2021精品| 99热国产在线精品99| 国产丝袜91| 国产精品美女免费视频大全| 3344在线观看无码| 在线欧美日韩| a毛片在线免费观看| 精品国产免费人成在线观看| 青青热久麻豆精品视频在线观看| 色噜噜久久| 午夜久久影院| 五月天福利视频| 国产v精品成人免费视频71pao| 精品人妻无码区在线视频| 激情视频综合网| 欧美精品黑人粗大| 成人毛片在线播放| 视频在线观看一区二区| 99无码中文字幕视频| 亚洲一区二区三区麻豆| 亚洲男人的天堂在线观看| 久久久亚洲国产美女国产盗摄| 亚洲精品国产乱码不卡| 国产精品熟女亚洲AV麻豆| a亚洲天堂| 欧美成人午夜影院| 国产不卡网| lhav亚洲精品| 亚洲精品无码久久毛片波多野吉| 久草美女视频| 国产精品夜夜嗨视频免费视频| 五月天香蕉视频国产亚| 国产亚洲欧美日韩在线一区| 色欲国产一区二区日韩欧美| 精品欧美一区二区三区在线| 超清无码一区二区三区| 好紧太爽了视频免费无码| 在线观看热码亚洲av每日更新| 亚洲成肉网| 伊人无码视屏| 国产成人盗摄精品| 国产精品亚洲五月天高清| 免费观看国产小粉嫩喷水| 亚洲国产日韩在线成人蜜芽| 伊人网址在线| 色综合天天综合| 伊人网址在线| 国产爽爽视频| 最近最新中文字幕在线第一页 | 亚洲成人精品在线| 亚洲欧美极品| 精品无码专区亚洲| 欧美午夜一区| 欧美高清三区| 激情六月丁香婷婷| 亚洲精品在线91| 国产美女精品人人做人人爽| 亚洲精品爱草草视频在线| 五月婷婷综合色| 欧美日韩国产精品va|