掌桥专利:专业的专利平台
掌桥专利
首页

一种基于流行度动态维数的嵌入向量生成方法及其系统

文献发布时间:2024-04-18 20:02:18


一种基于流行度动态维数的嵌入向量生成方法及其系统

技术领域

本发明属于数据推荐技术领域,具体涉及一种基于流行度动态维数的嵌入向量生成方法及其系统。

背景技术

中国互联网络信息中心在今年3月发布了第51次《中国互联网络发展状况统计报告》,飞速发展的网络使得人民享受便捷的同时也面临着“信息过载”的困境,即面对海量数据咨询的冲击,找不到自身所需的信息。这既降低了用户体验,相关企业也因为推送了太多的无效信息造成了计算机资源浪费。

推荐系统是解决信息过载的一种方案,它结合用户自身特点和历史行为勾勒出用户画像,使用一系列预设的推荐算法计算出用户对物品的感兴趣程度,对其量化后进行排序,按结果从高到低分别推荐给用户,这样既满足了用户对信息的需求,又增加了企业的效率和竞争力。传统推荐系统中应用最广泛也最为成熟的推荐算法是协同过滤算法。它根据用户的过去行为预测用户可能对何种项目感兴趣,其基本思想是“物以类聚,人以群分”。

协同过滤主要分为两大类,基于用户的协同过滤会找出与目标用户兴趣相似的其他用户,然后将那些用户喜欢的、而目标用户未曾接触过的项目推荐给目标用户,用户之间的相似性一般通过计算用户的行为向量或者偏好向量的相似度得到;基于项目的协同过滤会找出目标用户喜欢的项目,然后找出与这些项目相似的其他项目推荐给目标用户,项目之间的相似性一般通过计算所有用户对这两个项目评分向量的相似度得到。

协同过滤算法的最大问题是“冷启动”,即当新用户或新项目加入时,由于缺乏足够的行为数据,很难通过协同过滤算法给出有效的推荐。协同过滤还可能会导致推荐的多样性降低,因为它主要依赖于用户的历史行为,容易过度专注于用户过去喜欢的内容,而忽视可能的新兴趣和需求。

其他的传统推荐算法,如矩阵分解,它通过将用户-项目评分矩阵分解为两个低维度的隐含特征矩阵,一个表示用户的隐含特征,一个表示项目的隐含特征,然后通过两个隐含特征矩阵的内积得到预测评分。这种方法可以处理大规模的数据集,也能处理数据稀疏的问题。如因子分解机,它为每个特征学习了一个隐权重向量,通过隐权重向量,模型不仅可以获得不同特征间的交叉结果,而且可以减缓因数据不足造成对某些特征交叉学习不够充分的问题。但是这些算法都需要人工特征工程和设计良好的交互函数,这对从业人员的素质提出了巨大的挑战。

随着深度学习在自然语言处理和计算机视觉领域获得成功,其展现出的强大非线性拟合和特征学习能力解决了传统推荐系统中的不足并被应用在推荐系统中。

嵌入向量的维度是在训练模型时需要预先设定的一个超参数。一般来说,这个参数的选择需要平衡两方面的考量:表示能力和计算效率。维度更高的嵌入向量可以捕获更复杂、更细粒度的语义和语法信息。如果任务需要模型理解深层次的语义关系,例如文本理解或机器翻译,可能会需要一个较高维度的嵌入向量。更高维度的嵌入向量会占用更多的内存和计算资源。这可能会增加模型训练和推理的时间,并可能需要更大的训练数据集才能有效地学习这些更高维度的向量。

实际应用中,嵌入向量的维度通常设置在100到300之间。这是一个经验上的选择,被发现在许多任务中能够提供良好的性能。然而,最佳的词向量维度可能会根据具体任务和数据集的特点而变化。因此,为了找到最佳的词向量维度,通常需要进行一些实验性的探索和验证。在推荐系统的应用背景下,新用户、新物品会不断增加,现有用户和物品的信息也会不断更新,所以在系统设计之初通过实验得到的最佳嵌入向量的维度在后续迭代过程中已非最佳,导致推荐系统整体的推荐精确下降。

发明内容

为解决上述现有技术存在的技术问题,本发明提出了一种基于流行度动态维数的嵌入向量生成方法及其系统。

本发明为实现上述发明目的,采取的技术方案如下:

一种基于流行度动态维数的嵌入向量生成方法,包括以下步骤:

S1、计算用户和项目的流行度,即出现频率f;

S2、随机初始化用户或项目为维数4的嵌入向量s;

S3、将f和s拼接为一个向量e输入维数选择模块;

S4、维度选择模块由多个全连接层和一个softmax层组成,通过反向传播更新,计算当前损失值L;

S5、计算激励值,当前激励值由过去T个激励值的平均值和当前损失值决定,公式表示为:

式中,T为反向传播更新的次数,L

S6、R>=0时重复S4-S5,R<0时得到最优嵌入向量

S7、将每个用户和项目对应的最优嵌入向量集合通过输入线性转换层转换为相同维度d

d

S8、将得到的相同维度的嵌入向量输入推荐层后进行预测。

进一步的作为本发明的优选技术方案,S3中与向量e一同输入维数选择模块的还有用户或项目ID,即每个用户或项目对对应着一个单独的输入。

进一步的作为本发明的优选技术方案,S4中第一个全连接层的大小会随着嵌入向量维数的变化而改变,全连接层的数量和损失函数根据下游预测任务的变化而改变,对于较大的数据集与较复杂的特征,全连接的层数要相应增大。

进一步的作为本发明的优选技术方案,S8根据不同的下游任务采用不同的推荐层结构。

基于所述的基于流行度动态维数的嵌入向量生成方法的生成系统,包括依次连接的维度生成模块,维度调整模块和预测模块。

本发明所述的一种基于流行度动态维数的嵌入向量生成方法及其系统,采用以上技术方案与现有技术相比,具有以下技术效果:

(1)考虑了不同用户和项目的流行度不同;

(2)嵌入向量的维度不设为超参数而是通过训练得到;

(3)不同维度的嵌入向量也能同时作为输入;

(4)具有强大的泛化能力,针对不同的下游任务可以采用任何接受嵌入向量输入的模型。

附图说明

图1为本发明的框架示意图。

具体实施方式

下面结合附图详细的描述本发明的作进一步的解释说明,以使本领域的技术人员可以更深入地理解本发明并能够实施,但下面通过参考实例仅用于解释本发明,不作为本发明的限定。

一种基于流行度动态维数的嵌入向量生成方法,包括以下步骤:

S1、计算用户和项目的流行度,即出现频率f;

S2、随机初始化用户或项目为维数4的嵌入向量s;

S3、将f和s拼接为一个向量e输入维数选择模块;

S4、维度选择模块由多个全连接层和一个softmax层组成,通过反向传播更新,计算当前损失值L;

S5、计算激励值,当前激励值由过去T个激励值的平均值和当前损失值决定,公式表示为:

式中,T为反向传播更新的次数,L

S6、R>=0时重复S4-S5,R<0时得到最优嵌入向量

S7、将每个用户和项目对应的最优嵌入向量集合通过输入线性转换层转换为相同维度d

d

S8、将得到的相同维度的嵌入向量输入推荐层后进行预测。

S3中与向量e一同输入维数选择模块的还有用户或项目ID,即每个用户或项目对对应着一个单独的输入。S4中第一个全连接层的大小会随着嵌入向量维数的变化而改变,全连接层的数量和损失函数根据下游预测任务的变化而改变,对于较大的数据集与较复杂的特征,全连接的层数要相应增大。S8根据不同的下游任务采用不同的推荐层结构。

如图1所示,基于基于流行度动态维数的嵌入向量生成方法的生成系统,包括依次连接的维度生成模块,维度调整模块和预测模块。

具体实施时,假定下游任务为电影的评级分类任务,数据集采用Movielens-20m,其中70%用于离线参数估计,30%用于在线学习。维度大小选择模块中的隐藏层设置为2层,大小分别为维度大小*128和128*128,批量大小为100,学习率设为0.001。预测模型也采用2个隐藏层,大小都为128*128。输出层为128*5,对应5类评级,学习率设为0.01。通过最小化交叉熵损失来训练模型,评级指标采用准确率和损失值衡量。

若下游任务为回归,则输出层大小改为128*1,通过最小化均方损失误差训练模型。若下游任务为点击率预测,预测模型可以改为多头自注意力网络模型,具有更强的预测能力。

根据上述过程,本发明通过引入流行度可以自动化搜索最优的嵌入向量维度,并且可以针对下游任务的不同修改预测模型,具有强大的泛化能力,实现了本发明的最初目的。本发明提出了一种基于流行度动态维数的嵌入向量生成方法及其系统,通过引入用户和项目的流行度,自动化搜索最优嵌入维度和生成最优嵌入向量,然后再通过维度调整使其具有强大的泛化能力,可以针对不同的下游任务使用最优的预测模型。

以上所述的具体实施方案,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,所应理解的是,以上所述仅为本发明的具体实施方案而已,并非用以限定本发明的范围,任何本领域的技术人员,在不脱离本发明的构思和原则的前提下所做出的等同变化与修改,均应属于本发明保护的范围。

相关技术
  • 一种基于实体及文本联合嵌入的实体关联度衡量方法、系统及存储介质
  • 一种图嵌入向量的生成方法及基于图嵌入的社区发现方法
  • 一种基于核相似度嵌入的动态纹理生成方法及装置
技术分类

06120116581098