本發(fā)明涉及數(shù)據(jù)挖掘
技術(shù)領(lǐng)域:
,尤其涉及一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法。
背景技術(shù):
:隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,從海量數(shù)據(jù)中找到有價(jià)值的相關(guān)信息變得越來(lái)越困難,用戶面臨著嚴(yán)重的信息過(guò)載問(wèn)題。推薦系統(tǒng)通過(guò)分析用戶的歷史活動(dòng)數(shù)據(jù),挖掘用戶的潛在偏好,為用戶提供個(gè)性化的推薦服務(wù),成為解決信息過(guò)載問(wèn)題的有效手段,近年來(lái)受到學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。推薦系統(tǒng)的典型應(yīng)用包括Amazon和淘寶的商品推薦、Netflix的電影推薦、Last.fm的音樂(lè)推薦、LinkedIn的朋友推薦、GoogleNews的新聞推薦等等。這些互聯(lián)網(wǎng)應(yīng)用或者電商平臺(tái)通過(guò)部署推薦系統(tǒng),一方面滿足了用戶的個(gè)性化需求,減輕了信息過(guò)載的問(wèn)題;另一方面提高了用戶的忠誠(chéng)度,增加了企業(yè)的營(yíng)業(yè)收入。目前,推薦系統(tǒng)已經(jīng)成為信息服務(wù)平臺(tái)不可缺失的組成部分。在推薦系統(tǒng)的研究中,協(xié)同過(guò)濾算法是目前應(yīng)用最廣泛的推薦技術(shù)。協(xié)同過(guò)濾算法通過(guò)分析用戶的歷史活動(dòng)記錄,挖掘用戶的隱藏偏好,根據(jù)用戶的隱藏偏好為用戶提供個(gè)性化的推薦服務(wù)。然而,協(xié)同過(guò)濾算法存在數(shù)據(jù)稀疏、冷啟動(dòng)等問(wèn)題。數(shù)據(jù)稀疏導(dǎo)致協(xié)同過(guò)濾算法不能準(zhǔn)確地根據(jù)用戶的評(píng)分?jǐn)?shù)據(jù)計(jì)算用戶或者項(xiàng)目之間的相似性,從而嚴(yán)重影響協(xié)同過(guò)濾推薦算法的準(zhǔn)確性。冷啟動(dòng)指由于與新注冊(cè)用戶和新加入系統(tǒng)項(xiàng)目相關(guān)的評(píng)分?jǐn)?shù)據(jù)較少,協(xié)同過(guò)濾推薦算法不能準(zhǔn)確的找到相似用戶或者項(xiàng)目,因而不能為新注冊(cè)用戶提供個(gè)性化推薦,或者將新加入系統(tǒng)的項(xiàng)目推薦給感興趣的用戶。自Netflix競(jìng)賽以來(lái),由于在處理大規(guī)模數(shù)據(jù)方面良好的可擴(kuò)展性和準(zhǔn)確的預(yù)測(cè)能力,基于矩陣分解的推薦算法受到學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。由于不能有效地從用戶-項(xiàng)目評(píng)分矩陣中學(xué)習(xí)具有較少評(píng)分的用戶或者新加入系統(tǒng)的項(xiàng)目的隱藏特征向量,矩陣分解的推薦算法同樣存在冷啟動(dòng)問(wèn)題。但是,矩陣分解技術(shù)提供了一個(gè)靈活的框架,可以通過(guò)融合其它信息源來(lái)減輕冷啟動(dòng)問(wèn)題,如社交網(wǎng)絡(luò)信息等。雖然已經(jīng)存在很多研究工作利用各種額外的信息源來(lái)改進(jìn)矩陣分解推薦算法的性能,但是大部分研究工作專注于解決用戶端的冷啟動(dòng)問(wèn)題,而忽視了推薦系統(tǒng)中的項(xiàng)目端的冷啟動(dòng)問(wèn)題。近年來(lái),一些推薦算法在矩陣分解技術(shù)基礎(chǔ)上,利用用戶評(píng)論信息來(lái)減輕項(xiàng)目端的冷啟動(dòng)問(wèn)題。這些方法基本上是結(jié)合矩陣分解和概率主題模型來(lái)改進(jìn)推薦算法的性能。然而,通過(guò)概率主題模型學(xué)習(xí)到的項(xiàng)目特征表示可能不夠簡(jiǎn)潔有效,并且與矩陣分解的基本假設(shè)(僅少量的隱藏因子影響用戶的偏好和刻畫項(xiàng)目的特征)不一致。而且,很難處理用戶評(píng)論信息的隨機(jī)性,以致于不能很好描述用戶之間、項(xiàng)目之間的相似性。技術(shù)實(shí)現(xiàn)要素:本發(fā)明所要解決的技術(shù)問(wèn)題是針對(duì)
背景技術(shù):
中所涉及到的缺陷,提供一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法,重點(diǎn)從項(xiàng)目屬性信息中挖掘項(xiàng)目之間的相關(guān)性,并將項(xiàng)目之間的相關(guān)性與用戶-項(xiàng)目評(píng)分?jǐn)?shù)據(jù)相結(jié)合,解決推薦系統(tǒng)中的項(xiàng)目端冷啟動(dòng)問(wèn)題,達(dá)到提高推薦系統(tǒng)性能的目的。本發(fā)明為解決上述技術(shù)問(wèn)題采用以下技術(shù)方案:一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法,包含以下步驟:步驟1),對(duì)于待推薦項(xiàng)目的屬性信息,采用耦合對(duì)象相似度度量指標(biāo)計(jì)算各個(gè)項(xiàng)目之間的相似度;步驟2),根據(jù)項(xiàng)目之間耦合對(duì)象相似度,構(gòu)建包含項(xiàng)目屬性信息的正則化項(xiàng);步驟3),在矩陣分解算法基礎(chǔ)上,結(jié)合包含項(xiàng)目信息的正則化項(xiàng),采用梯度下降技術(shù)學(xué)習(xí)用戶和項(xiàng)目的隱藏特征向量;步驟4),根據(jù)學(xué)習(xí)的用戶和項(xiàng)目隱藏特征向量,使用用戶和項(xiàng)目隱藏特征向量的內(nèi)積預(yù)測(cè)用戶對(duì)未評(píng)分項(xiàng)目的評(píng)分,根據(jù)預(yù)測(cè)評(píng)分為用戶提供項(xiàng)目推薦。作為本發(fā)明一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法進(jìn)一步的優(yōu)化方案,所述步驟1)中,根據(jù)以下公式計(jì)算項(xiàng)目之間的耦合對(duì)象相似度:COS(i,i′)=Σj=1lδjA(aij,ai′j)]]>其中,aij和ai'j是項(xiàng)目i和項(xiàng)目i'在特征aj上的屬性值,為耦合屬性值相似度,l為項(xiàng)目特征的數(shù)量,i為大于零的自然數(shù),j為大于零小于l的自然數(shù);所述特征aj上屬性值aij和ai'j之間的耦合屬性值相似度計(jì)算公式如下:δjA(aij,ai′j)=δjIa(aij,ai′j)*δjIe(aij,ai′j)]]>其中,和分別表示特征內(nèi)耦合屬性值相似度和特征間耦合屬性值相似度;特征內(nèi)耦合屬性值相似度的計(jì)算公式如下:δjIa(qij,ai′j)=|gj(aij)|.|gj(ai′j)||gj(aij)|+|gj(ai′j)|+|gj(aij)|.|gj(ai′j)|]]>其中,gj(aij)和gj(ai'j)分別表示在待推薦項(xiàng)目的集合中、項(xiàng)目的特征aj上屬性值等于aij與ai'j的項(xiàng)目集合,|gj(aij)|和|gj(ai'j)|分別表示集合gj(aij)和gj(ai'j)中項(xiàng)目的個(gè)數(shù);特征間耦合屬性值相似度的計(jì)算方法如下:δjIe(aij,ai′j)=Σk=1,k≠jlαkδj|k(aij,ai′j)]]>其中,αk是特征ak(k≠j)的權(quán)重參數(shù),αk∈[0,1]。δj|k(aij,ai'j)是屬性值aij與ai'j在特征ak(k≠j)下的特征間耦合屬性值相似度;δj|k(aij,ai'j)的計(jì)算公式如下:δj|k=Σw∈∩min{Pk|j({w}|aij),Pk|j({w}|ai′j)}]]>其中,∩為集合和的交集。為所有在特征aj上取值aij的項(xiàng)目在特征ak上屬性值集合;Pk|j({w}|aij)和Pk|j({w}|ai'j)是分別為aij和ai'j的信息條件概率,其計(jì)算公式如下:Pk|j({w}|x)=|gk(w)∩gj(x)||gj(x)|]]>Pk|j({w}|x)描述了特征aj取屬性值x條件下,特征ak取值為w的條件分布。作為本發(fā)明一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法進(jìn)一步的優(yōu)化方案,所述步驟2)中根據(jù)以下公式構(gòu)建包含項(xiàng)目屬性信息的正則化項(xiàng):β2Σi=1MΣi′=1Mcos(i,i′)||qi-qi′||F2]]>其中,β為控制正則化項(xiàng)的影響程度的正則化參數(shù);M為推薦系統(tǒng)中項(xiàng)目的數(shù)量,cos(i,i')為項(xiàng)目i和項(xiàng)目i'的耦合對(duì)象相似度;qi和qi'分別為項(xiàng)目i和項(xiàng)目i'的隱藏特征向量;表示Frobenius范式;令項(xiàng)目隱藏特征矩陣Q為[q1,q2,...,qM],ei=[0,0,...,1,...,0]T為元素列向量,則β2Σi=1MΣi′=1Mcos(i,i′)||qi-qi′||F2=β2Σi=1MΣi′=1Mcos(i,i′)||Qei-Qei′||F2=β2Σi=1MΣi′=1Mcos(i,i′)tr((Q(ei-ei′))TQ(ei-ei′))=β2tr(QLQT)]]>其中,L=Λ-S為拉普拉斯矩陣,為項(xiàng)目耦合相似度矩陣,S中元素Si,j=cos(i,j)表示項(xiàng)目i和項(xiàng)目j之間的耦合相似度,Λ為對(duì)角矩陣,對(duì)角元素作為本發(fā)明一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法進(jìn)一步的優(yōu)化方案,所述步驟3)的詳細(xì)步驟為:步驟3.1),根據(jù)用戶-項(xiàng)目評(píng)分矩陣和由項(xiàng)目的屬性信息計(jì)算得到的項(xiàng)目耦合相似度矩陣S,在矩陣分解目標(biāo)函數(shù)的基礎(chǔ)上加上包含項(xiàng)目屬性信息的正則化項(xiàng),基于屬性耦合矩陣分解的推薦方法的目標(biāo)函數(shù)如下:其中為用戶隱藏特征矩陣,K為隱藏特征向量的維數(shù),Ω為用戶-項(xiàng)目評(píng)分矩陣R中可觀測(cè)項(xiàng)(u,i)的集合,λ1和λ2為正則化控制參數(shù),u代表用戶;步驟3.2),利用包含項(xiàng)目屬性信息的正則化項(xiàng)的變化形式替換目標(biāo)函數(shù)中的最后一項(xiàng),將其轉(zhuǎn)化為:其中,W為指示矩陣,如果用戶u對(duì)項(xiàng)目i評(píng)分過(guò),則Wui=1,否則為0;⊙表示Hadamard積操作;步驟3.3),根據(jù)以下公式計(jì)算目標(biāo)函數(shù)關(guān)于隱藏特征矩陣P和Q的偏導(dǎo)數(shù):步驟3.4),使用梯度下降的方法求解用戶隱藏特征矩陣P和項(xiàng)目隱藏特征矩陣Q。作為本發(fā)明一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法進(jìn)一步的優(yōu)化方案,所述步驟4)中,用戶u對(duì)未評(píng)分過(guò)項(xiàng)目j的預(yù)測(cè)評(píng)分的計(jì)算方法如下:R~uj=puTqj]]>其中,pu和qj分別為用戶u和項(xiàng)目j的隱藏特征向量。本發(fā)明采用以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有以下技術(shù)效果:1.通過(guò)耦合對(duì)象相似度度量指標(biāo)計(jì)算項(xiàng)目之間的相似度,更加準(zhǔn)確的捕獲項(xiàng)目之間的相關(guān)性;2.在矩陣分解技術(shù)的基礎(chǔ)上,融合項(xiàng)目的屬性信息,約束矩陣分解的執(zhí)行過(guò)程,更加準(zhǔn)確的學(xué)習(xí)項(xiàng)目的隱藏特征向量,減輕推薦系統(tǒng)中的項(xiàng)目端冷啟動(dòng)問(wèn)題。附圖說(shuō)明圖1是本發(fā)明一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法的流程示意圖。具體實(shí)施方式下面結(jié)合附圖對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)說(shuō)明:如圖1所示,本發(fā)明公開了一種基于屬性耦合矩陣分解的項(xiàng)目推薦方法,包含以下步驟:步驟1),對(duì)于待推薦項(xiàng)目的屬性信息,采用耦合對(duì)象相似度度量指標(biāo)計(jì)算項(xiàng)目之間的相似度;步驟2),根據(jù)項(xiàng)目之間耦合對(duì)象相似度,構(gòu)建包含項(xiàng)目屬性信息的正則化項(xiàng);步驟3),在矩陣分解算法基礎(chǔ)上,結(jié)合包含項(xiàng)目信息的正則化項(xiàng),采用梯度下降技術(shù)學(xué)習(xí)用戶和項(xiàng)目的隱藏特征向量;步驟4),根據(jù)學(xué)習(xí)的用戶和項(xiàng)目隱藏特征向量,使用用戶和項(xiàng)目隱藏特征向量的內(nèi)積預(yù)測(cè)用戶對(duì)未評(píng)分項(xiàng)目的評(píng)分,根據(jù)預(yù)測(cè)評(píng)分為用戶提供項(xiàng)目推薦。所述步驟1)中,根據(jù)以下公式計(jì)算項(xiàng)目之間的耦合對(duì)象相似度:COS(i,i′)=Σj=1lδjA(aij,ai′j)]]>其中,aij和ai'j是項(xiàng)目i和項(xiàng)目i'在特征aj上的屬性值,為耦合屬性值相似度(CAVS),l為項(xiàng)目特征的數(shù)量,i為大于零的自然數(shù),j為大于零小于l的自然數(shù);耦合屬性值相似度(CAVS)由兩部分組成:特征內(nèi)耦合屬性值相似度(IaAVS)和特征間耦合屬性值相似度(IeAVS)。所述特征aj上屬性值aij和ai'j之間的耦合屬性值相似度計(jì)算公式如下:δjA(aij,ai′j)=δjIa(aij,ai′j)*δjIe(aij,ai′j)]]>其中,和分別表示特征內(nèi)耦合屬性值相似度(IaAVS)和特征間耦合屬性值相似度(IeAVS)。特征內(nèi)耦合屬性值相似度(IaAVS)從屬性值頻率分布的角度刻畫同一特征下不同屬性值之間的相似度。特征內(nèi)耦合屬性值相似度(IaAVS)的計(jì)算公式如下:δjIa(qij,ai′j)=|gj(aij)|.|gj(ai′j)||gj(aij)|+|gj(ai′j)|+|gj(aij)|.|gj(ai′j)|]]>其中,gj(aij)和gj(ai'j)分別表示在待推薦項(xiàng)目的集合中、項(xiàng)目的特征aj上屬性值等于aij與ai'j的項(xiàng)目集合,|gj(aij)|和|gj(ai'j)|分別表示集合gj(aij)和gj(ai'j)中項(xiàng)目的個(gè)數(shù)。特征間耦合屬性值相似度(IeAVS)綜合考慮了在特征aj內(nèi)屬性值為aij和ai'j的條件下的其他特征ak(k≠j)的屬性值分布情況。特征間耦合屬性值相似度(IeAVS)的計(jì)算方法如下:δjIe(aij,ai′j)=Σk=1,k≠jlαkδj|k(aij,ai′j)]]>其中,αk是特征ak(k≠j)的權(quán)重參數(shù),αk∈[0,1]。δj|k(aij,ai'j)是屬性值aij與ai'j在特征ak(k≠j)下的特征間耦合屬性值相似度。δj|k(aij,ai'j)的計(jì)算公式如下:δj|k=Σw∈∩min{Pk|j({w}|aij),Pk|j({w}|ai′j)}]]>其中,∩為集合和的交集。為所有在特征aj上取值aij的項(xiàng)目在特征ak上屬性值集合。Pk|j({w}|aij)和Pk|j({w}|ai'j)是分別為aij和ai'j的信息條件概率,其計(jì)算公式如下:Pk|j({w}|x)=|gk(w)∩gj(x)||gj(x)|]]>Pk|j({w}|x)描述了特征aj取屬性值x條件下,特征ak取值為w的條件分布。所述步驟2)中根據(jù)以下公式構(gòu)建包含項(xiàng)目屬性信息的正則化項(xiàng):β2Σi=1MΣi′=1Mcos(i,i′)||qi-qi′||F2]]>其中,β為控制正則化項(xiàng)的影響程度的正則化參數(shù);M為推薦系統(tǒng)中項(xiàng)目的數(shù)量,cos(i,i')為項(xiàng)目i和項(xiàng)目i'的耦合對(duì)象相似度;qi和qi'分別為項(xiàng)目i和項(xiàng)目i'的隱藏特征向量;表示Frobenius范式。在上述正則化項(xiàng)中,較大的cos(i,i')值意味著qi和qi'之間的距離必須相對(duì)的小。因此,包含項(xiàng)目屬性信息的正則化項(xiàng)使得屬性相似的項(xiàng)目具有相似的隱藏特征向量。設(shè)項(xiàng)目隱藏特征矩陣Q為[q1,q2,...,qM],ei=[0,0,...,1,...,0]T為元素列向量,即第i個(gè)元素為1,其余元素為0,則qi=Qei。包含項(xiàng)目屬性信息的正則化項(xiàng)可以轉(zhuǎn)換為如下形式:β2Σi=1MΣi′=1Mcos(i,i′)||qi-qi′||F2=β2Σi=1MΣi′=1Mcos(i,i′)||Qei-Qei′||F2=β2Σi=1MΣi′=1Mcos(i,i′)tr((Q(ei-ei′))TQ(ei-ei′))=β2tr(QLQT)]]>其中,L=Λ-S為拉普拉斯矩陣,為項(xiàng)目耦合相似度矩陣,S中元素Si,j=cos(i,j)表示項(xiàng)目i和項(xiàng)目j之間的耦合相似度,Λ為對(duì)角矩陣,對(duì)角元素所述步驟3)的詳細(xì)步驟為:步驟3.1),根據(jù)用戶-項(xiàng)目評(píng)分矩陣和由項(xiàng)目的屬性信息計(jì)算得到的項(xiàng)目耦合相似度矩陣S,在矩陣分解目標(biāo)函數(shù)的基礎(chǔ)上加上包含項(xiàng)目屬性信息的正則化項(xiàng),基于屬性耦合矩陣分解的推薦方法的目標(biāo)函數(shù)如下:其中為用戶隱藏特征矩陣,K為隱藏特征向量的維數(shù),Ω為用戶-項(xiàng)目評(píng)分矩陣R中可觀測(cè)項(xiàng)(u,i)的集合,λ1和λ2為正則化控制參數(shù),u代表用戶;步驟3.2),利用包含項(xiàng)目屬性信息的正則化項(xiàng)的變化形式替換目標(biāo)函數(shù)中的最后一項(xiàng),將其轉(zhuǎn)化為:其中W為指示矩陣,如果用戶u對(duì)項(xiàng)目i評(píng)分過(guò),則Wui=1,否則為0;⊙表示Hadamard積操作;步驟3.3),根據(jù)以下公式計(jì)算目標(biāo)函數(shù)關(guān)于隱藏特征矩陣P和Q的偏導(dǎo)數(shù):步驟3.4),使用梯度下降的方法求解用戶隱藏特征矩陣P和項(xiàng)目隱藏特征矩陣Q。所述步驟4)中用戶u對(duì)未評(píng)分過(guò)項(xiàng)目j的預(yù)測(cè)評(píng)分的計(jì)算方法如下:R~uj=puTqj]]>pu和qj分別為用戶u和項(xiàng)目j的隱藏特征向量。對(duì)于用戶u,計(jì)算完所有未評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分后,根據(jù)預(yù)測(cè)評(píng)分值,推薦預(yù)測(cè)評(píng)分值高的k項(xiàng)給用戶u。下面以具體實(shí)例來(lái)說(shuō)明其具體步驟:首先,根據(jù)用戶對(duì)項(xiàng)目的評(píng)分記錄,構(gòu)建用戶-項(xiàng)目評(píng)分矩陣R。設(shè)推薦系統(tǒng)中包含N個(gè)用戶,M個(gè)項(xiàng)目,用戶對(duì)項(xiàng)目的評(píng)分記錄在服務(wù)端一般記為(u,i,Rui)三元組形式。根據(jù)用戶的評(píng)分記錄中用戶編號(hào)和項(xiàng)目編號(hào),將所有用戶的評(píng)分記錄轉(zhuǎn)化用戶-項(xiàng)目評(píng)分矩陣其中Rui表示用戶u對(duì)項(xiàng)目i的評(píng)分。然后,從項(xiàng)目的描述信息中抽取項(xiàng)目的屬性信息,構(gòu)建項(xiàng)目-屬性矩陣IA。設(shè)l為項(xiàng)目屬性的個(gè)數(shù),每個(gè)項(xiàng)目由屬性值向量表示,即:[ai1,ai2,...,ail],其中aij表示項(xiàng)目i在第j個(gè)屬性下的屬性值。所有項(xiàng)目的屬性值向量構(gòu)成項(xiàng)目-屬性矩陣IA。其次,在項(xiàng)目-屬性矩陣基礎(chǔ)上,根據(jù)耦合對(duì)象相似度的定義計(jì)算項(xiàng)目之間的耦合相似度,構(gòu)建項(xiàng)目相似度矩陣S和拉普拉斯矩陣L。為了計(jì)算項(xiàng)目i和項(xiàng)目i'之間的耦合對(duì)象相似度,對(duì)于每個(gè)特征aj,計(jì)算項(xiàng)目i和項(xiàng)目i'在特征aj下屬性值aij和ai'j的耦合屬性值相似度計(jì)算步驟如下:步驟A),計(jì)算特征內(nèi)耦合屬性值相似度其計(jì)算公式如下:δjIa(qij,ai′j)=|gj(aij)|.|gj(ai′j)||gj(aij)|+|gj(ai′j)|+|gj(aij)|.|gj(ai′j)|]]>其中g(shù)j(aij)和gj(ai'j)分別表示項(xiàng)目集合O中項(xiàng)目的特征aj上屬性值等于aij與ai'j的項(xiàng)目集合。|gj(aij)|和|gj(ai'j)|分別表示集合gj(aij)和gj(ai'j)中項(xiàng)目的個(gè)數(shù)。步驟B),計(jì)算特征間耦合屬性值相似度其計(jì)算公式如下:δjIe(aij,ai′j)=Σk=1,k≠jlαkδj|k(aij,ai′j)]]>其中αk是特征ak(k≠j)的權(quán)重參數(shù),αk∈[0,1]。δj|k(aij,ai'j)是屬性值aij與ai'j在特征ak(k≠j)下的特征間耦合屬性值相似度。δj|k(aij,ai'j)的計(jì)算公式如下:δj|k=Σw∈∩min{Pk|j({w}|aij),Pk|j({w}|ai′j)}]]>其中,∩為集合和的交集。為所有在特征aj上取值aij的項(xiàng)目在特征ak上屬性值集合。Pk|j({w}|aij)和Pk|j({w}|ai'j)是信息條件概率,其計(jì)算公式如下:Pk|j({w}|x)=|gk(w)∩gj(x)||gj(x)|]]>步驟C),根據(jù)特征內(nèi)耦合屬性值相似度和特征間耦合屬性值相似度計(jì)算項(xiàng)目i和項(xiàng)目i'在特征aj下屬性值aij和ai'j的耦合屬性值相似度其計(jì)算公式如下:δjA(aij,ai′j)=δjIa(aij,ai′j)*δjIe(aij,ai′j)]]>按照步驟A)到步驟C),針對(duì)每個(gè)特征aj(1<j<l),計(jì)算屬性值aij和ai'j的耦合屬性值相似度然后,計(jì)算項(xiàng)目i和項(xiàng)目i'之間的耦合對(duì)象相似度,其計(jì)算公式如下:COS(i,i′)=Σj=1lδjA(aij,ai′j)]]>對(duì)于每對(duì)項(xiàng)目i和項(xiàng)目i',計(jì)算完它們之間的耦合相似度后,構(gòu)建項(xiàng)目相似度矩陣S,使得Si,i'=cos(i,i')。根據(jù)項(xiàng)目相似度矩陣S,計(jì)算拉普拉斯矩陣L,其計(jì)算公式如下:L=Λ-S其中Λ為對(duì)角矩陣,對(duì)角元素接著,利用梯度下降的方法學(xué)習(xí)用戶和項(xiàng)目隱藏特征矩陣P和Q。設(shè)為用戶隱藏特征矩陣,為項(xiàng)目隱藏特征矩陣,K為隱藏特征向量的維數(shù),λ1和λ2為正則化控制參數(shù),W為指示矩陣,如果用戶u對(duì)項(xiàng)目i評(píng)分過(guò),則Wui=1,否則為0?!驯硎綡adamard積操作。計(jì)算目標(biāo)函數(shù)關(guān)于隱藏特征矩陣P和Q的偏導(dǎo)數(shù),其計(jì)算公式如下:根據(jù)更新公式不斷更新隱藏特征矩陣P和Q,直至目標(biāo)函數(shù)收斂。隱藏特征矩陣的更新公式如下:其中η為學(xué)習(xí)比率參數(shù)。最后,預(yù)測(cè)用戶u對(duì)未評(píng)分過(guò)項(xiàng)目j的評(píng)分其計(jì)算方法如下:R~uj=puTqj]]>pu和qj分別為用戶u和項(xiàng)目j的隱藏特征向量。對(duì)于用戶u,計(jì)算完所有未評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分后,根據(jù)預(yù)測(cè)評(píng)分值,推薦預(yù)測(cè)評(píng)分值高的k項(xiàng)給用戶u。本
技術(shù)領(lǐng)域:
技術(shù)人員可以理解的是,除非另外定義,這里使用的所有術(shù)語(yǔ)(包括技術(shù)術(shù)語(yǔ)和科學(xué)術(shù)語(yǔ))具有與本發(fā)明所屬領(lǐng)域中的普通技術(shù)人員的一般理解相同的意義。還應(yīng)該理解的是,諸如通用字典中定義的那些術(shù)語(yǔ)應(yīng)該被理解為具有與現(xiàn)有技術(shù)的上下文中的意義一致的意義,并且除非像這里一樣定義,不會(huì)用理想化或過(guò)于正式的含義來(lái)解釋。以上所述的具體實(shí)施方式,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施方式而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。當(dāng)前第1頁(yè)1 2 3