首页> 中国专利> 基于元路径网络表示学习的个性化推荐方法及系统

基于元路径网络表示学习的个性化推荐方法及系统

摘要

本发明属于个性化推荐技术领域,特别涉及一种基于元路径网络表示学习的个性化推荐方法及系统,利用用户社交关系、用户对商品的评分关系及商品之间的种类关系构建异构信息网络;针对异构信息网络,通过预先设置的元路径提取用户特征向量矩阵和商品特征向量矩阵;将用户特征表示向量和商品特征表示向量作为评分预测模型输入,通过优化目标函数学习模型中的连接矩阵,以完成预测模型的训练学习;利用已训练的评分预测模型对未知的目标客户进行商品预测评分,依据商品预测评分进行个性化推荐。本发明可以在评分数据稀疏的情况下融合异构数据信息来改进矩阵分解性能,优化个性化推荐性能,具有较好的应用前景。

著录项

说明书

技术领域

本发明属于个性化推荐技术领域,特别涉及一种基于元路径网络表示学习的个性化推荐方法及系统。

背景技术

在大数据时代,人们从海量数据信息中获取自己感兴趣的内容,已成为一种迫切的需求。推荐系统是信息检索的一项重要工具。它可以帮助用户从互联网的应用平台中快速找到自己感兴趣的内容。同时可以指导互联网服务提供者将合适的内容提供给用户,改善用户的使用体验,以促进交易量和经济效益增长。因此,推荐系统可以应对大数据领域的信息过载问题。协同过滤是推荐系统的state-of-the-art技术。该方法通过用户的历史行为发现用户的行为偏好,并以此预测用户对商品的评分。由于在评分预测上表现出良好的性能,以矩阵分解为代表的协同过滤算法被广泛使用。矩阵分解方法对用户-item的评分矩阵进行分解,分别得到用户隐特征矩阵与物品的隐特征矩阵。用户的隐特征反应了用户对每一维隐含特征的偏好程度。物品的隐特征表示物品属性在每一维隐含特征上的权重。该方法通过隐含特征建立了用户与物品的关联关系,然后得到用户的偏好模型。

用户对商品的评分矩阵可以看作为一种二分图。基于协同过滤的评分预测方法是根据二分图信息对评分矩阵缺失值进行预测。一方面,在商业平台内网络数据类型的愈加丰富,仅仅使用二分图无法建模出完整的数据信息。例如,在yelp平台不仅包含用户对物品的评分信息,还包含用户之间的社交信息、商品的类别信息等。另一方面,互联网用户和线上商品数量在飞速增长。庞大的用户与商品数量造成了用户-商品评分矩阵的稀疏性。评分矩阵的稀疏性会造成矩阵分解模型得到的隐特征向量无法准确刻画出用户、商品的特征,影响评分预测的精确性。用户评分矩阵的稀疏性问题会影响推荐系统性能。如何在矩阵分解模型中融入多源数据是一项值得研究的问题。其次,矩阵分解方法的可解释性较弱。用户、商品特征矩阵由梯度下降算法优化得到,只具有数学意义,无法解释用户、商品特征矩阵的特定含义。

发明内容

为此,本发明提供一种基于元路径网络表示学习的个性化推荐方法及系统,可以在评分数据稀疏的情况下融合异构数据信息来改进矩阵分解性能,优化个性化推荐性能。

按照本发明所提供的设计方案,提供一种基于元路径网络表示学习的个性化推荐方法,包含如下内容:

利用用户社交关系、用户对商品的评分关系及商品之间的种类关系构建异构信息网络;

针对异构信息网络,通过预先设置的元路径提取用户特征向量矩阵和商品特征向量矩阵;

将用户特征表示向量和商品特征表示向量作为评分预测模型输入,通过优化目标函数学习模型中的连接矩阵,以完成预测模型的训练学习;

利用已训练的评分预测模型对未知的目标客户进行商品预测评分,依据商品预测评分进行个性化推荐。

作为本发明基于元路径网络表示学习的个性化推荐方法,进一步地,异构信息网络中包含用户、商品和商品种类三种节点类型,用户社交关系、用户对商品评分关系及商品之间的种类关系构成异构信息网络的边。

作为本发明基于元路径网络表示学习的个性化推荐方法,进一步地,设置消费过同一商品的用户之间的网络路径作为元路径来提取用户特征向量表示和商品特征向量表示。

作为本发明基于元路径网络表示学习的个性化推荐方法,进一步地,设置对同一类商品感兴趣的用户之间的网络路径作为元路径来提取用户特征向量表示和商品特征向量表示。

作为本发明基于元路径网络表示学习的个性化推荐,进一步地,基于元路径的随机游走生成异构信息网络的n组节点序列,利用skip-gram对节点序列进行向量化,得到用户特征向量矩阵和商品特征向量矩阵。

作为本发明基于元路径网络表示学习的个性化推荐,进一步地,评分预测模型中,使用连接矩阵将用户特征向量矩阵和商品特征向量矩阵进行拟合。

作为本发明基于元路径网络表示学习的个性化推荐,进一步地,评分预测模型中的预测评分计算公式表示为

作为本发明基于元路径网络表示学习的个性化推荐,进一步地,设置目标函数,最小化预测评分与可观测评分的正则化均方根误差,使评分预测模型预测值逼近真实值来进行模型优化训练。

作为本发明基于元路径网络表示学习的个性化推荐,进一步地,目标函数表示为

进一步地,本发明还提供一种基于元路径网络表示学习的个性化推荐系统,包含:网络构建模块、特征学习模块、模型训练模块和预测评分模块,其中,

网络构建模块,用于利用用户社交关系、用户对商品的评分关系及商品之间的种类关系构建异构信息网络;

特征学习模块,用于针对异构信息网络,通过预先设置的元路径提取用户特征向量矩阵和商品特征向量矩阵;

模型训练模块,用于将用户特征表示向量和商品特征表示向量作为评分预测模型输入,通过优化目标函数学习模型中的连接矩阵,以完成预测模型的训练学习;

预测评分模块,用于利用已训练的评分预测模型对未知的目标客户进行商品预测评分,依据商品预测评分进行个性化推荐。

本发明的有益效果:

评分预测模型中,矩阵分解算法通过对评分矩阵进行分解得到用户、商品隐性特征矩阵。利用两种隐性特征向量的內积作为预测评分。矩阵分解通过用户历史评分数据预测用户的评分。针对评分矩阵数据稀疏性问题,本发明加入用户和商品的附加(非评分)信息,改善推荐系统性能,利用改进的矩阵分解模型实现评分预测模型的融合多数据源的评分预测。同时,评分预测模型使用从HIN中学习得到的用户和物品的表示向量作为模型输入;从HIN的角度,可以解释用户、物品的表示矩阵可以看作从HIN中抽取的用户、物品特征,增强推荐系统的可解释性,能够有效提升用户对项目评分预测精确度及个性化推荐性能。并进一步通过在两个真实数据集上的实验表明本案方案的有效性,且与对比算法相比,本案方案中的评分预测可以取得更为精确的数据,具有较好的应用前景。

附图说明:

图1为实施例中基于元路径网络表示学习的个性化推荐方法流程示意;

图2为实施例中异构信息网络示意;

图3为实施例中基于元路径网络表示学习的个性化推荐算法流程示意;

图4为实施例中多源数据融合异构信息网络流程示意;

图5为实施例中隐性特征向量维数对推荐系统性能影响示意。

具体实施方式:

为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。

互联网中不断增长的异构数据有效的提升推荐系统性能。传统的矩阵分解模型面临的主要问题是,如何在矩阵分解中融合更为丰富的异构信息数据,进而提高推荐系统性能。本发明实施例,提供一种基于元路径网络表示学习的个性化推荐方法,参见图1所示,包含如下内容:

S101、利用用户社交关系、用户对商品的评分关系及商品之间的种类关系构建异构信息网络;

S102、针对异构信息网络,通过预先设置的元路径提取用户特征向量矩阵和商品特征向量矩阵;

S103、将用户特征表示向量和商品特征表示向量作为评分预测模型输入,通过优化目标函数学习模型中的连接矩阵,以完成预测模型的训练学习;

S104、利用已训练的评分预测模型对未知的目标客户进行商品预测评分,依据商品预测评分进行个性化推荐。

利用异构信息网络Heterogeneous Information Network(HIN)建模不同类型对象所组成的网络。图2所示,给出了一个HIN示例。和同构网络不同的是,HIN中可以包含多种类型的节点以及多种类型的边。HIN的优势在于,可以融合不同类型对象,在一个网络内表示出更加复杂的交互关系。在现实生活中,很多数据信息都可以建模为异构信息网络。例如文献网络、Twitter信息网络、电子商务yelp等。近年来,已有大量工作针对HIN中的问题进行研究。如HIN网络中,如何度量节点相似性,如何进行链接预测等。HIN将多源数据信息建模为异构网络。同时,网络表示学习(NRL)可以将网络中的节点映射到低维向量空间,对节点进行低维向量表示。在同构网络上利用随机游走的方法生成节点序列,然后利用skip-gram模型将每个节点映射到向量空间;模型定义节点的一阶相似性与二阶相似性,可以学习到更有区分度的节点表示;在Deepwalk的基础上加入了BFS(Breadth First Search)与DFSDFS(Depth First Search)策略进行邻域搜索。信息网络的表示学习就是将网络中的节点或边映射为低维向量,进而可以将这些向量应用于不同的数据分析任务。节点的表示向量保持了网络中的结构特征。如何将节点的表示向量应用于推荐系统的评分预测任务将是一项具有挑战的任务。利用基于元路径模型来评估用户相似度,然后根据用户的相似性预测评分;利用“矩阵分解+因子分解机”的模型解决信息融合问题;在不同元路径下用户(商品)会存在一些共同的特征,通过融合多种元路径的数据学习统一的用户(商品)表示。以上几种方法都是通过元路径获得节点序列,然后利用NRL得到节点的表示向量。矩阵分解算法是一种常用的评分预测算法,但是模型本身存在局限性。首先,矩阵分解算法只对单一矩阵(如评分矩阵,邻接矩阵)进行分解,难以处理多数据源数据。上文提到,用户评分存在稀疏性问题,一部分用户只有少量评分,或者部分用户没有任何评分。用户评分矩阵的稀疏性问题会影响推荐系统性能。如何在矩阵分解模型中融入多源数据是一项值得研究的问题。其次,矩阵分解方法的可解释性较弱。用户、商品特征矩阵由梯度下降算法优化得到,只具有数学意义,无法解释用户、商品特征矩阵的特定含义。为了解决矩阵分解算法存在的两个问题,本案实施例中通过新的扩展矩阵分解Extended Matrix Factorization(EMF)模型作为评分预测模型,在推荐系统中融合多数据源信息来提高推荐系统性能。

作为本发明实施例中基于元路径网络表示学习的个性化推荐方法,进一步地,异构信息网络中包含用户、商品和商品种类三种节点类型,用户社交关系、用户对商品评分关系及商品之间的种类关系构成异构信息网络的边。

异构信息网络中已经融合用户的社交关系信息,商品的种类信息,以及用户对商品的购买信息。因此通过网络表示学习得到的用户表示矩阵保留了异构信息网络中的结构信息,把用户、商品的表示矩阵分别看作用户(商品)的属性矩阵。在传统矩阵分解模型中,利用R≈UV

如何根据已有的历史数据来预测用户对商品的喜好是评分预测的基本任务。在评分数据稀少的情况下,HIN中包含的丰富信息(如用户社交,商品种类信息等)对推荐是有帮助的。因此这项任务的主要挑战在于,如何设计一种推荐模型,该模型可以利用HIN中的数据信息。该模型最后根据融合后的HIN数据和历史评分得到用户的预测评分。本案实施例中,可设计基于用户(商品)表示向量矩阵分解的改进模型,来预测用户对商品的评分,参见图3所示,算法过程可设计如下所示:

Step1.HIN构建。利用用户-用户的社交关系、用户-商品的评分关系,商品-商品的种类关系三种关系构建异构信息网络。

step2.特征提取。利用网络表示学习算法从异构网络中提取用户特征向量矩阵U、商品的特征向量矩阵V。

step 3.模型训练。将用户与item特征作为模型输入,并通过梯度下降法优化目标函数,对模型进行训练。#利用在训练集上R

step 4.评分预测。利用

矩阵分解算法是一种协同过滤模型。该模型将用户对商品的已有评分看作用户的历史行为,并根据用户对商品的历史评分分析用户偏好,从而预测用户对未评分商品的评分。它的基本假设是,评分矩阵

R≈UV

其中U∈R

利用用户、商品隐性特征的內积作为预测的评分。评分预测公式如公式2所示。

损失函数如公式(3)所示:

其中,r

可以看出,MF模型的输入数据源是评分矩阵R。模型根据已有的历史评分数据优化得出用户、商品的k维特征向量u

矩阵分解模型的瓶颈在于该模型只能利用历史评分数据作为模型输入,学习用户、商品的特征。因此,可以在历史评分数据的基础上,加入更为丰富的附加信息(如,用户社交信息、商品种类信息),共同提取出更为准确的用户、商品的特征。本案实施例中利用HIN可以有效的对信息进行融合,使用HIN对多数据源信息进行建模,来解决推荐系统中多数据源融合的问题。

从异构信息网络中学习出节点的表示向量U,V,其中U,V矩阵可看作用户与商品的特征矩阵。HIN中融合了多源的数据。通过嵌入算法将HIN中的节点向量化后,特征向量保留了HIN中的结构信息。节点向量化之后易于各种任务计算。例如给出一个节点,利用概率模型可以预测该节点的邻居节点,也可以根据节点表示向量的余弦距离判断两节点的相似性。与同构网络不同的是,在HIN的表示学习任务中,主要的挑战是HIN中存在类型不同的节点以及多种语义的边。图4是一个HIN示例,其中节点由用户U(user)、商品V(item),种类C(Categories)三种节点构成,HIN中有“朋友关系”,“评分关系”,“商品种类关系”三种类型的边。多种类型的边和节点共同构成异构信息网络。

作为本发明实施例中基于元路径网络表示学习的个性化推荐方法,进一步地,设置消费过同一商品的用户之间的网络路径作为元路径来提取用户特征向量表示和商品特征向量表示。进一步地,设置对同一类商品感兴趣的用户之间的网络路径作为元路径来提取用户特征向量表示和商品特征向量表示。

元路径可以表示HIN中节点之间的语义关系。元路径的定义形式为:

作为本发明实施例中基于元路径网络表示学习的个性化推荐,进一步地,基于元路径的随机游走生成异构信息网络的n组节点序列,利用skip-gram对节点序列进行向量化,得到用户特征向量矩阵和商品特征向量矩阵。

利用基于元路径的表示学习方法生成特征矩阵。首先,在HIN上进行基于元路径的随机游走,生成n组节点序列。然后,利用skip-gram对序列进行向量化,得到用户特征向量矩阵U、商品的特征向量矩阵V。通过网络表示学习算法得到的特征向量U、V可以保持HIN图中的结构特性,含有结构特性与语义特性。与此同时,通过网络嵌入方法学习到的网络中节点的特征向量,该向量可以用作各种机器学习任务,如分类、聚类、链接预测等。

作为本发明实施例中基于元路径网络表示学习的个性化推荐,进一步地,评分预测模型中,使用连接矩阵将用户特征向量矩阵和商品特征向量矩阵进行拟合。

通过对HIN中的节点进行NRL,分别得到用户、商品的k维特征向量u

R≈UCV (4)

其中矩阵R为评分矩阵,U、V表示用户、物品特征矩阵。可引入连接矩阵C的概念。

在原有的矩阵分解公式(1)中,隐特征矩阵U与V首先随机初始化,然后利用梯度下降法优化目标函数得出隐特征矩阵。在EMF中,特征矩阵U与V是通过网络表示学习方法从HIN中得出。不能如公式(2)直接对特征矩阵进行相乘求评分矩阵。因此,加入连接矩阵C,连接矩阵C是一个k行k列的方阵,矩阵内包括k

从公式(5)可以看出,将用户i的特征向量u

其中r

进一步地,基于上述的方法,本发明实施例还提供一种基于元路径网络表示学习的个性化推荐系统,包含:网络构建模块、特征学习模块、模型训练模块和预测评分模块,其中,

网络构建模块,用于利用用户社交关系、用户对商品的评分关系及商品之间的种类关系构建异构信息网络;

特征学习模块,用于针对异构信息网络,通过预先设置的元路径提取用户特征向量矩阵和商品特征向量矩阵;

模型训练模块,用于将用户特征表示向量和商品特征表示向量作为评分预测模型输入,通过优化目标函数学习模型中的连接矩阵,以完成预测模型的训练学习;

预测评分模块,用于利用已训练的评分预测模型对未知的目标客户进行商品预测评分,依据商品预测评分进行个性化推荐。

为验证本案方案有效性,下面结合具体实验数据做进一步解释说明:

为了验证推荐系统的性能,选择Root Mean Square Error(RMSE)和MeanAbsolute Error(MAE)作为评估标准。RMSE和MAE是评估推荐系统预测评分精确性的常用指标,定义如下:

其中,D

实验在python3.5环境中进行,并在一台服务器上进行了测试。服务器的配置是2.10GHz Intel Core E5-2620 CPU,64GB RAM,Windows 10professional x64。在yelp与豆瓣数据集上验证了本案提出的EMF的算法。Yelp是一家美国点评网站,用户可以在该平台上对商品进行评分,同时该平台内还保存用户之间的朋友关系。该数据集由Yelp DatesetChallenge提供。豆瓣电影是一家电影社区网站,用户可以对自己看过的电影进行评分,同时该平台内还保存用户之间的朋友关系。电影同时具有类别信息。可使用的数据包括以下三种:

社会关系数据集:yelp数据集中共有17066个用户的140345条用户的朋友关系。

商品种类数据集:yelp数据集中一共有900种类别,其中一种商品可能对应多种类别。

用户评分数据集:yelp数据集中共有36105个用户对22496个商品的191506条评价。

具体的,两个数据集中的数据统计信息如表1所示:

Table 1.Statistics of Datasets

随机将数据集以8:2的比例分为训练集和测试集。重复进行5次实验,取平均RMSE和MAE作为实验结果。将以下几种baselines与EMF进行对比:

·RegSVD:一种标准矩阵分解模型,只使用评分矩阵作为输入数据源。该模型的性能高度依赖于评分矩阵的质量。评分数据越丰富,则Regsvd预测评分越精确。

·LLORMA:一种局部矩阵分解方法,将评分矩阵分解为子矩阵之后,在子矩阵上进行矩阵分解算法。

·SocReg:将用户社交信息作为正则项加入到矩阵分解模型。

·SemRec:应用于HIN一种基于元路径的推荐方法。SemRec计算用户基于元路径的相似性,并根据用户相似性以及相似用户的数量共同预测评分。

·EMF:本案基于元路径网络表示学习的个性化推荐算法。

表1列出了在yelp与豆瓣两个数据集上baseline models与EMF模型的实验结果。

Table 1.Performance of different methods with K=50

矩阵的稀疏性会影响推荐模型的性能。通过表1可以看出,douban数据集的的评分矩阵比yelp数据集的评分矩阵更为稠密。因此可以获得更低的RMSE值。

Regsvd和LLORMA是传统的矩阵分解算法,仅利用评分矩阵作为模型的输入数据,没有使用任何额外的数据。LLORMA与Regsvd对比。Socreg利用了用户的社交关系数据来改善推荐系统的性能。具体做法是在矩阵分解中加入了社交关系作为正则项。这也证明了,在用户评分数据较为稀疏的情况下,加入额外的社交关系可以改善推荐系统性能。SemRec模型的效果优于Regsvd、LLORMA和SocReg。可认为主要原因是SemRec进一步融合了更丰富的数据。通过元路径获得的用户表示向量可以很好地反应用户和商品特征,并且这种更为有效的特征可以改善推荐系统性能。

EMF同样利用基于元路径的方法获得用户、商品特征。并将用户、商品特征作为矩阵分解模型的输入,去拟合可观察到的评分项。通过NRL得到的用户、商品特征向量融合了HIN中的多源信息,该表示向量有效的提取了HIN中的语义信息。将用户、商品特征向量作为矩阵分解模型的输入,通过训练连接矩阵C,改进后的矩阵分解模型可以得到更好评分预测效果。EMF获得的推荐效果要好于SemRec的主要原因是,SemRec过度依赖用户的相似性导致了评分预测偏差。由于矩阵分解算法在评分预测任务上具有良好的表现。实验结果表明,EMF算法在MAE与RMSE两项指标上均优于对比算法。

通过上表可以发现,在评分数据更为稀疏的yelp数据集。在推荐模型中加入社交关系、商品类别等附加信息之后,性能提升的更为显著。例如在yelp数据集中,EMF比传统矩阵分解算法有30.66%的提升;然而在douban数据集中,提升为5.46%。因此,矩阵分解算法受数据稀疏性的影响较大。在评分数据较为稀疏的情况下,附加信息的加入可以很好的改进推荐系统性能。

参数k在矩阵分解模型中,指的是隐特征向量的维数;在EMF模型中,指的是连接方阵的维数。隐特征向量维数k和矩阵分解模型的性能有密切的关系。一般来说,在矩阵分解模型中k的值越大,则表示模型中隐藏特征的维数越多。一般认为维数较高的向量可以准确的描述出对象的特征。反之,如果k值很小,维数较低的向量可能会无法准确描述出对象,将会降低模型性能。在EMF模型中分别设置不同k值模型进行实验。如图5所示,实验结果说明,在k取值较小时,预测评分的误差很高。在yelp数据集中,当k设置为50时,模型的RMSE最低,模型的达到最好的性能。说明特征维数足够反映出HIN中节点的特征,因此推荐系统的性能趋于稳定。在douban数据集中,k取40可以取得最优性能。说明对于douban数据集,40维的特征矩阵已经足够可以反映出HIN中节点的特征。

在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号