1.一種基于屬性耦合矩陣分解的項目推薦方法,其特征在于,包含以下步驟:
步驟1),對于待推薦項目的屬性信息,采用耦合對象相似度度量指標計算各個項目之間的相似度;
步驟2),根據項目之間耦合對象相似度,構建包含項目屬性信息的正則化項;
步驟3),在矩陣分解算法基礎上,結合包含項目信息的正則化項,采用梯度下降技術學習用戶和項目的隱藏特征向量;
步驟4),根據學習的用戶和項目隱藏特征向量,使用用戶和項目隱藏特征向量的內積預測用戶對未評分項目的評分,根據預測評分為用戶提供項目推薦。
2.根據權利要求1所述的基于屬性耦合矩陣分解的項目推薦方法,其特征在于,所述步驟1)中,根據以下公式計算各個項目之間的耦合對象相似度:
其中,aij和ai'j是項目i和項目i'在特征aj上的屬性值,為耦合屬性值相似度,l為項目特征的數(shù)量,i為大于零的自然數(shù),j為大于零小于l的自然數(shù);
所述特征aj上屬性值aij和ai'j之間的耦合屬性值相似度計算公式如下:
其中,和分別表示特征內耦合屬性值相似度和特征間耦合屬性值相似度;
特征內耦合屬性值相似度的計算公式如下:
其中,gj(aij)和gj(ai'j)分別表示在待推薦項目的集合中、項目的特征aj上屬性值等于aij與ai'j的項目集合,|gj(aij)|和|gj(ai'j)|分別表示集合gj(aij)和gj(ai'j)中項目的個數(shù);
特征間耦合屬性值相似度的計算方法如下:
其中,αk是特征ak(k≠j)的權重參數(shù),αk∈[0,1]。δj|k(aij,ai'j)是屬性值aij與ai'j在特征ak(k≠j)下的特征間耦合屬性值相似度;
δj|k(aij,ai'j)的計算公式如下:
其中,∩為集合和的交集。為所有在特征aj上取值aij的項目在特征ak上屬性值集合;
Pk|j({w}|aij)和Pk|j({w}|ai'j)是分別為aij和ai'j的信息條件概率,其計算公式如下:
Pk|j({w}|x)描述了特征aj取屬性值x條件下,特征ak取值為w的條件分布。
3.根據權利要求2所述的基于屬性耦合矩陣分解的項目推薦方法,其特征在于,所述步驟2)中根據以下公式構建包含項目屬性信息的正則化項:
其中,β為控制正則化項的影響程度的正則化參數(shù);M為推薦系統(tǒng)中項目的數(shù)量,cos(i,i')為項目i和項目i'的耦合對象相似度;qi和qi'分別為項目i和項目i'的隱藏特征向量;表示Frobenius范式;
令項目隱藏特征矩陣Q為[q1,q2,...,qM],ei=[0,0,...,1,...,0]T為元素列向量,則
其中,L=Λ-S為拉普拉斯矩陣,為項目耦合相似度矩陣,S中元素Si,j=cos(i,j)表示項目i和項目j之間的耦合相似度,Λ為對角矩陣,對角元素
4.根據權利要求3所述的基于屬性耦合矩陣分解的項目推薦方法,其特征在于,所述步驟3)的詳細步驟為:
步驟3.1),根據用戶-項目評分矩陣和由項目的屬性信息計算得到的項目耦合相似度矩陣S,在矩陣分解目標函數(shù)的基礎上加上包含項目屬性信息的正則化項,基于屬性耦合矩陣分解的推薦方法的目標函數(shù)如下:
其中為用戶隱藏特征矩陣,K為隱藏特征向量的維數(shù),Ω為用戶-項目評分矩陣R中可觀測項(u,i)的集合,λ1和λ2為正則化控制參數(shù),u代表用戶;
步驟3.2),利用包含項目屬性信息的正則化項的變化形式替換目標函數(shù)中的最后一項,將其轉化為:
其中,W為指示矩陣,如果用戶u對項目i評分過,則Wui=1,否則為0;⊙表示Hadamard積操作;
步驟3.3),根據以下公式計算目標函數(shù)關于隱藏特征矩陣P和Q的偏導數(shù):
步驟3.4),使用梯度下降的方法求解用戶隱藏特征矩陣P和項目隱藏特征矩陣Q。
5.根據權利要求4所述的基于屬性耦合矩陣分解的項目推薦方法,其特征在于,所述步驟4)中,用戶u對未評分過項目j的預測評分的計算方法如下:
其中,pu和qj分別為用戶u和項目j的隱藏特征向量。