多通道特征向量的新三角距离高效推荐
2021-10-21吕亚兰张恒汝徐媛媛
吕亚兰,张恒汝,秦 琴,徐媛媛
西南石油大学 计算机科学学院,成都 610500
推荐系统是目前解决信息过载的有效手段.协同过滤[1]是主流的推荐算法之一,它利用历史评分数据来获取用户对项目的偏好.协同过滤按照不同的实现方式可以分为基于k近邻[2]、 基于矩阵分解[3]以及基于神经网络的协同过滤算法[4]等.k近邻利用历史评分获取k个具有相似偏好的用户或者具有相似属性的项目[2],常用表征用户或项目相似度的距离有:Cosine[5],PCC(pearson correlation coefficient)[6],Jaccard[7]和CPC(constrained pearson correlation)[8].然而这些算法大都采用用户或者项目的全局评分来计算相似度,导致其时间复杂度较高,推荐效率低.
本文提出了一种多通道特征向量的新三角距离推荐算法(new triangular distance recommendation algorithm for multi-channel feature vector,NTRFC).算法的输入为从原始评分矩阵中提取的多通道特征向量(简称特征向量),在k近邻算法中采用新三角距离,从而提高推荐效率并保持较好的推荐准确度.
首先,从原始评分矩阵中提取得到特征向量,其通道数目为原始评分矩阵中评分等级的数目[9],将其作为输入,可有效降低算法的复杂度.假定评分矩阵有n个用户,m个项目,以及l个评分等级.以原始评分矩阵为输入,计算相似度的时间复杂度为O(nm),而以多通道特征向量为输入,计算相似度的时间复杂度是O(lm).评分矩阵中用户数目n远远大于评分等级数目l,故O(lm)远远小于O(nm).例如,数据集Amazon(http://snap. stanford. edu/data/web-Amazonlinks. html)和Movielens943u (https://grouplens. org/ datasets/movielens/100k/)的评分等级均为1~5分,故它们的通道数目为5,即每个项目的特征向量长度为5.
其次,利用两个项目的特征向量构建新三角距离.该距……