一种推荐系统中的通用商品序列表征学习方法

文档序号:31040305发布日期:2022-08-06 04:09阅读:134来源:国知局
一种推荐系统中的通用商品序列表征学习方法

1.本发明涉及推荐系统领域,尤其是涉及一种推荐系统中的通用商品序列表征学习方法。


背景技术:

2.在现代推荐系统研究中,序列推荐旨在根据用户的历史商品交互序列,为用户推荐合适的商品。早期研究往往基于矩阵分解,而近期则主要将其视为商品序列表示学习任务,即为每个商品分配一个独有的标号(id),并使用循环神经网络(rnn)、transformers等神经网络方法将商品序列编码为表征,并根据此表征进行商品推荐。
3.然而现有的推荐系统商品序列表征方法依赖于显式的商品标号,这带来两个主要问题:
4.1、迁移性:即使不同推荐场景有相同的数据格式,但由于商品标号不共享,依赖商品标号学习到的商品序列表征模型依然难以迁移至新的推荐场景中,限制了推荐模型的重用性。当面对一个新的推荐场景时,本发明往往需要重新训练商品序列表征模型,造成大量资源消耗。
5.2、冷启动:对于推荐场景中的新商品来说,与新商品相关的交互记录非常稀少。商品标号表征需要大量相关的交互数据进行训练,因此在这样的商品冷启动场景中,本发明无法获得训练良好的商品标号表征,从而往往无法得到好的推荐效果。
6.公开于该背景技术部分的信息仅仅旨在加深对本发明的总体背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。


技术实现要素:

7.本发明的目的在于提供一种推荐系统中的通用商品序列表征学习方法,本发明将一般的商品序列作为输入,并通过预训练的方式学习通用的商品序列表征模型。为了学习可在推荐场景之间迁移的表征,需要解决两个关键问题:(1)学习通用的商品表征;(2)学习通用的序列表征。为了学习通用的商品表征,本发明设计了基于参数白化网络的,混合专家增强的适配器模块,以实现领域间的融合和适配。为了学习通用的序列表征,本发明设计了两种对比学习任务,称之为序列-商品对比任务和序列-序列对比任务,并采样多个领域的负例。基于上述方法,本发明可以以一种参数高效的方式,归纳(inductive)或者转导(transductive)地迁移至的新推荐场景中。
8.为了实现上述目的,本发明采用以下技术方案:
9.本发明提供一种推荐系统中的通用商品序列表征学习方法,包括如下步骤:
10.s1:通用的基于文本的商品表征:通过编码商品的文本从而学习可迁移的商品表征;首先使用预训练语言模型来学习初始文本表征,由于不同推荐场景中的文本表征可能构成不同的语义空间,通过参数白化网络和混合专家增强的适配器网络将文本的语义转换至一个适用于推荐任务的统一的语义空间;
11.s2:通用的商品序列表征:通过序列-商品对比任务和序列-序列对比任务来进一步增强不同领域之间的融合与适配;
12.s3:参数的微调:根据目标领域的商品标号是否适合使用,而考虑两种微调设定,即归纳和转导。
13.作为一种进一步的技术方案,步骤s1中的使用预训练语言模型来学习初始文本表征具体为:
14.首先使用bert模型学习初始文本表征;给定商品i和它对应的文本ti,首先将一个特殊的标识符[cls]、商品文本中的词按顺序拼接,并将其输入至bert模型中,即:
[0015]
xi=bert([[cls];wi,

,wc])
[0016]
其中xi是bert模型最后一层的对应着[cls]符号的隐向量,即编码得到的商品的初始文本表征,c代表商品文本中的总词数,wi代表商品文本中第i个词,wc代表商品文本中最后一个词。
[0017]
作为一种进一步的技术方案,步骤s1中的通过参数白化网络实现语义转换具体为:
[0018]
采用线性变换来将初始文本表示转换到各向同性的语义空间中;不同于传统的基于预设的均值/方差的白化方法,参数白化网络引入可学习参数来更好地适配未知的推荐场景,公式如下:
[0019][0020]
其中b和w1是可学习参数,是转换后的商品文本表征。
[0021]
作为一种进一步的技术方案,步骤s1中的通过混合专家增强的适配器实现领域融合和适配具体为:
[0022]
为了融合和适配领域之间的语义差距,对于一个商品,同时学习多个参数白化后的表征,并将这些表征可适配地融合以生成通用商品表征;具体地,引入g个参数白化网络模块作为专家,并基于参数化的门控路由模块,构建了混合专家增强的适配器:
[0023][0024]
其中是第k个参数白化网络的输出,gk是门控路由模块学习到的相应的融合权重,具体定义为:
[0025]
g=softmax(xi·
w2+δ)
[0026]
δ=norm()
·
softplus(xi·
w3)
[0027]
这里使用bert输出的初始表征xi作为路由模块的输入;进一步的,引入参数矩阵w2和w3来自适应地生成各个专家模块对应的权重;为了平衡各个专家模块的负载,使用norm()函数来生成由w2控制的随机高斯噪声;g是门控路由模块学习到的融合权重向量,δ是学习到的噪声向量。
[0028]
作为一种进一步的技术方案,步骤s2中所述序列-商品对比任务具体为:
[0029]
序列-商品对比任务致力于捕捉序列语义和潜在的下一个商品之间的内在联系,和之前的商品预测任务不同,对于给定的序列,采用了各个领域的商品作为负例,增强领域
之间的语义融合和适配,帮助学习通用序列表征;
[0030]
考虑一个批次的b个训练样例,这里每个训练样例包含商品序列和下时刻商品;首先将他们编码为表征{《s1,v1》,

,《sb,vb》},这里s代表经过归一化的序列表征,v代表下时刻商品的归一化后表征;对比学习的损失函数可以被形式化地表示为:
[0031][0032]
这里同一训练批次的商品被当作负样本,τ是温度参数;由于批次是随机构建的,同批次的负样本{vj′
}将包含多个领域的商品。这里表示序列-商品的对比损失,sj表示批次中的第j个序列经过归一化的表征,vj表示批次中的第j个下时刻商品经过归一化的表征,j和j

是标识批次中序列和下时刻商品的标号。
[0033]
作为一种进一步的技术方案,步骤s2中所述序列-序列对比任务具体为:通过构建多个领域商品序列之间的对比,提出了一个序列级别的预训练任务;任务目标是从多个领域的序列中判别出数据增强过的商品序列;考虑两种数据增强策略:(1)商品丢弃表示随机删除原始商品序列中固定比例的商品;(2)单词丢弃表示随机删除商品文本中的单词;给定一个目标序列sj,数据增强的序列被认为是正样本,而同批次的其他序列被认为是负样本;序列-序列对比学习损失函数可以被形式化地表示为:
[0034][0035]
由于批次是随机构建的,同批次的负例自然地包含了多个领域的序列;在实现中,预处理了单词丢弃数据增强后的商品文本表征,使得预训练更加高效。这里表示序列-序列的对比损失,sj′
表示批次中的第j

个序列经过归一化的表征。
[0036]
作为一种进一步的技术方案,步骤s3中的所述归纳具体设置为:
[0037]
第一个设置中,新领域不适用基于商品标号的推荐系统;由于不依赖于商品标号,所以可以为新商品学习通用的文本表征;给定目标领域上的商品序列和候选商品,首先将它们编码为通用表征s和然后基于下述概率进行预测:
[0038][0039]
这里在目标域的候选集上进行softmax操作。其中i
t+1
表示t+1时刻的候选商品标号,pi(i
t+1
|s)表示归纳场景中给定通用表示s,在t+1时刻与商品i
t+1
交互的概率。
[0040]
作为一种进一步的技术方案,步骤s3中的所述转导具体设置为:
[0041]
第二个设置中,假设所有商品的标号都已在训练集中出现,也可以学习商品标号的表征;在这个设置中,融合了文本表征和标号表征作为商品表征;因此有如下预测概率:
[0042][0043]
这里表示商品标号表征增强后的通用序列表征;注意商品序列编码器的参数在
这个设定中仍然是固定的;
[0044]
在每个设置中,使用交叉熵损失函数来微调混合专家增强的适配器的参数;在微调后,可以根据上述概率预测。p
t
(i
p+1
|s)表示转导场景中给定通用表示s,在t+1时刻与商品i
t+1
交互的概率。
[0045]
采用上述技术方案,本发明具有如下有益效果:
[0046]
1、迁移性。本发明提出的商品序列表征学习方法,可以在多个领域的序列数据上同时学习通用表征,并高效地迁移到新领域、新市场、新平台等新的推荐场景中,而无需共享的用户或商品。
[0047]
2、冷启动。本发明提出的通用商品文本表征方法,可以有效推荐平台中的新商品,而无需大量交互数据进行训练。
附图说明
[0048]
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0049]
图1为本发明通用商品序列表征学习方法的总体架构图。
具体实施方式
[0050]
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0051]
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
[0052]
结合图1所示,本实施例提供一种推荐系统中的通用商品序列表征学习方法,包括如下步骤:
[0053]
通用的基于文本的商品表征:
[0054]
为实现通用的商品序列表征学习,需要先将不同推荐场景(不同领域/市场/平台)中的商品编码至一个统一的语义空间中。为此,本发明通过编码商品的文本从而学习可迁移的商品表征。本发明首先使用预训练语言模型来学习初始文本表征。由于不同推荐场景中的文本表征可能构成不同的语义空间,本发明提出参数白化网络和混合专家增强的适配器网络,来将文本的语义转换至一个适用于推荐任务的统一的语义空间。
[0055]
基于预训练语言模型的商品文本编码:
[0056]
本发明首先使用bert模型学习初始文本表征。给定商品i和它对应的文本ti,本发明首先将(1)一个特殊的标识符[cls];(2)商品文本中的词按顺序拼接,并将其输入至bert模型中,
[0057]
xi=bert([[cls];wi,

,wc]),
[0058]
其中xi是bert模型最后一层的对应着[cls]符号的隐向量,即编码得到的商品的初始文本表征。c代表商品文本中的总词数,wi代表商品文本中第i个词,wc代表商品文本中
最后一个词。
[0059]
通过参数白化网络实现语义转换:
[0060]
尽管本发明可以由bert模型获得商品文本的语义表征,它们还不适合于直接被应用于推荐任务。现有的研究发现bert的表征空间是非光滑的、各向异性的语义空间,在编码来自语义鸿沟较大的各个推荐场景的商品文本时,该问题尤其突出。因此本发明采用简单的线性变换来将初始文本表示转换到各向同性的语义空间中。不同于传统的基于预设的均值/方差的白化方法,本发明设计了参数白化网络,引入可学习参数来更好地适配未知的推荐场景,
[0061][0062]
其中b和w是可学习参数,是转换后的商品文本表征。
[0063]
通过混合专家增强的适配器实现领域融合和适配:
[0064]
为了融合和适配领域之间的语义差距,对于一个商品,本发明提出同时学习多个参数白化后的表征,并将这些表征可适配地融合以生成通用商品表征。具体地,本发明实现了混合专家架构,引入g个参数白化网络模块作为专家,并基于参数化的门控路由模块,构建了混合专家增强的适配器,
[0065][0066]
其中是第k个参数白化网络的输出,gk是门控路由模块学习到的相应的融合权重,具体定义为,
[0067]
g=softmax(xi·
w2+δ),
[0068]
δ=norm()
·
softplus(xi·
w3).
[0069]
这里本发明使用bert输出的初始表征xi作为路由模块的输入,因为它包含了领域相关的偏置。进一步的,本发明引入参数矩阵w2和w3来自适应地生成各个专家模块对应的权重。为了平衡各个专家模块的负载,本发明使用norm()函数来生成由w2控制的随机高斯噪声。g是门控路由模块学习到的融合权重向量,δ是学习到的噪声向量。
[0070]
通用的商品序列表征:
[0071]
由于不同领域通常对应着不同分布的用户行为序列,简单地将各个领域的商品序列混合训练可能效果不佳,也可能由于多个领域行为序列间的冲突导致跷跷板效应,因此本发明设计了两种对比学习任务来进一步增强不同领域之间的融合与适配。
[0072]
自注意力序列编码:
[0073]
给定一个通用商品表征的序列,本发明进一步使用一个用户行为编码器来得到序列表征。本发明致力于学习商品的通用表征的序列特征,而不是基于商品标号。这里本发明使用自注意力架构transformers。具体的,它包含若干多头注意力层mhattn(
·
)和前馈神经网络ffn(
·
)的堆叠。本发明首先将学到的通用商品表征vi和对应的绝对位置编码表征pj相加,输入和更新过程可以具体地表示为,
[0074]
[0075][0076]
其中代表模型第l层每个位置的表征的拼接。本发明把模型最后一层的最后一个位置的隐向量作为学习得到的序列表征。
[0077]
多领域商品序列表征预训练:
[0078]
给定多个领域的商品序列,本发明需要设计合适的优化目标来迫使序列编码器的输出在统一的表征空间中。通过将来自多个不同领域的序列和商品进行互相对比,本发明致力于缓解跷跷板效应,并在预训练阶段捕捉通用商品表征之间的语义联系。为此本发明设计了序列-商品对比任务和序列-序列对比任务。
[0079]
序列-商品对比任务:
[0080]
序列-商品对比任务致力于捕捉序列语义和潜在的下一个商品之间的内在联系,和之前的商品预测任务不同,对于给定的序列,本发明采用了各个领域的商品作为负例,增强领域之间的语义融合和适配,帮助学习通用序列表征。
[0081]
本发明考虑一个批次的b个训练样例,这里每个训练样例包含商品序列和下时刻商品。本发明首先将他们编码为表征{《s1,v1》,

,《sb,vb》},这里s代表经过归一化的序列表征,v代表下时刻商品的归一化后表征。对比学习的损失函数可以被形式化地表示为,
[0082][0083]
这里同一训练批次的商品被当作负样本,τ是温度参数。由于批次是随机构建的,同批次的负样本{vj′
}将包含多个领域的商品。这里表示序列-商品的对比损失,sj表示批次中的第j个序列经过归一化的表征,vj表示批次中的第j个下时刻商品经过归一化的表征,j和j

是标识批次中序列和下时刻商品的标号。
[0084]
序列-序列对比任务:
[0085]
通过构建多个领域商品序列之间的对比,本发明还提出了一个序列级别的预训练任务。任务目标是从多个领域的序列中判别出数据增强过的商品序列。本发明考虑两种数据增强策略:(1)商品丢弃表示随机删除原始商品序列中固定比例的商品;(2)单词丢弃表示随机删除商品文本中的单词。给定一个目标序列sj,数据增强的序列被认为是正样本,而同批次的其他序列被认为是负样本。序列-序列对比学习损失函数可以被形式化地表示为,
[0086][0087]
由于批次是随机构建的,同批次的负例自然地包含了多个领域的序列。在实现中,本发明预处理了单词丢弃数据增强后的商品文本表征,使得预训练更加高效。这里表示序列-序列的对比损失,sj′
表示批次中的第j

个序列经过归一化的表征。
[0088]
多任务学习:
[0089]
在预训练阶段,本发明使用多任务学习策略来联合优化提出的两个对比学习损失,
[0090][0091]
这里λ是控制序列-序列对比任务的权重的超参数。经过预训练的模型可以通过微调来适配到新的领域。
[0092]
参数高效的微调:
[0093]
由于本发明可以在预训练阶段学习到通用的商品序列表征,本发明将主要的参数固定住,只微调混合专家增强的适配器的这一小部分参数来进行必要的适配。本发明发现提出的混合专家增强的适配器可以被快速适配到新领域,可以高效地融合预训练模型和新领域的特征。具体地说,本发明根据目标领域的商品标号是否适合使用,而考虑两种微调设定,归纳(inductive)和转导(transductive)。
[0094]
归纳设置:
[0095]
第一个设置中,新领域不适用基于商品标号的推荐系统。由于本发明不依赖于商品标号,所以可以为新商品学习通用的文本表征。给定目标领域上的商品序列和候选商品,本发明首先将它们编码为通用表征s和然后本发明基于下述概率进行预测,
[0096][0097]
这里本发明在目标域的候选集上进行softmax操作。其中i
p+1
表示t+1时刻的候选商品标号,pi(i
t+1
|s)表示归纳场景中给定通用表示s,在t+1时刻与商品i
t+1
交互的概率。
[0098]
转导设置:
[0099]
第二个设置中,本发明假设所有商品的标号都已在训练集中出现,本发明也可以学习商品标号的表征。在这个设置中,本发明融合了文本表征和标号表征作为商品表征。因此本发明有如下预测概率,
[0100][0101]
这里表示商品标号表征增强后的通用序列表征。注意商品序列编码器的参数在这个设定中仍然是固定的。
[0102]
在每个设置中,本发明使用交叉熵损失函数来微调混合专家增强的适配器的参数。在微调后,本发明可以根据上述概率预测。p
t
(i
t+1
|s)表示转导场景中给定通用表示s,在t+1时刻与商品i
t+1
交互的概率。
[0103]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1