CN115203585B - 一种协同过滤模型的自动化架构搜索方法 - Google Patents
一种协同过滤模型的自动化架构搜索方法 Download PDFInfo
- Publication number
- CN115203585B CN115203585B CN202211119443.3A CN202211119443A CN115203585B CN 115203585 B CN115203585 B CN 115203585B CN 202211119443 A CN202211119443 A CN 202211119443A CN 115203585 B CN115203585 B CN 115203585B
- Authority
- CN
- China
- Prior art keywords
- network
- sub
- architecture
- collaborative filtering
- super
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种协同过滤模型的自动化架构搜索方法。本发明的方法包括如下步骤:S1.根据预设的搜索空间构建超网络,超网络中的参数被所有子架构共享;S2.超网络训练:从超网络中随机采样子架构,通过训练子架构训练超网络;S3.在S2中的超网络训练完成之后,使用进化算法从超网络中搜索表现优秀的协同过滤模型,其中最优的模型即为架构搜索的结果。本发明相比于以前方法,进一步拓展了搜索空间的多样性,提升了协同过滤模型表现力;基于权重共享的超网络训练和架构搜索极大地提升了搜索算法的效率。
Description
技术领域
本发明涉及人工智能、推荐算法和自动化机器学习领域,具体涉及一种协同过滤模型的自动化架构搜索方法。
背景技术
个性化推荐无处不在,已被应用于许多在线服务,如电子商务、广告和社交媒体。它的核心是根据历史上的互动,如购买和点击,估计用户采用某个项目的可能性。协同过滤(collaborative filtering, CF)通过假设行为相似的用户会对物品表现出类似的偏好解决这个问题。为了实现这一假设,一个常见的范式是对用户和物品进行模型参数化,以重建历史互动,并根据参数预测用户的偏好。一般来说,可学习模型有两个关键部分:
(1)嵌入表示,将用户和物品转化为低维的向量表示。通常是通过创建一个嵌入矩阵存储所有用户和物品的向量表示,每一行向量即为具体某个用户或者物品的向量表示。
(2)交互函数,基于嵌入重建历史交互。例如,矩阵分解(MF)直接将用户/物品ID的交互建模成一个矩阵,然后利用矩阵分解,为用户和物品各生成一个表示用户或者物品的隐含因子矩阵,也就是为每个用户和物品生成一个嵌入向量,并用内积建立用户与物品的交互模型。近些年来深度学习的兴起,启发了研究者们用表现力更强的深度神经网络代替传统的内积交互模型。神经协同过滤模型用非线性神经网络取代矩阵分解的内积交互功能,而基于翻译的CF模型则使用欧氏距离尺度作为交互函数等等。
本发明主要针对协同过滤模型中的交互函数建模。神经协同过滤(NCF)为交互建模引入了深度神经网络模型,将用户侧的输入和物品侧的输入拼接到一起输入到神经网络模型里,以此实现更加强有效的特征交叉,丰富隐式特征的交叉。
NCF中采取的深度神经网络模型,主要是多层感知器(MLP),每层具有不同数量的神经元。然而,每层神经元的个数通常依赖人工专家的经验,推荐系统的业务场景有很多,一套超参数很难适用所有的业务场景,超参数如果设计的不好,会对模型效果造成了很大的影响。
因此,一些工作试图在交互函数中应用自动化机器学习(AutoML)技术针对特定的数据集搜索合适的交互函数。SIF认为在不同的数据集中,协同过滤中最优的交互函数并不一样,所以SIF使用NAS方法搜索交互函数。然而,SIF的搜索空间只涉及一些简单的数学操作,例如,加减乘除、取最大/最小值和内积等,模型表达能力有限。
基于NCF和SIF的不足,本发明提出了一种协同过滤模型的自动化架构搜索方法,用于自动化搜索协同过滤模型交互函数的NAS算法。NAS算法通常设计三个方面:
(1) 搜索空间:定义了可以搜索的神经网络结构的集合,即解的空间。
(2) 搜索策略:定义了如何在搜索空间中寻找最优网络结构。
(3) 评价方法:定义了如何评估搜索出的网络结构的性能。
发明内容
发明目的:针对上述现有技术存在的问题和不足,本发明的目的是提供一种协同过滤模型的自动化架构搜索方法,解决当前协同过滤模型自动化架构搜索的搜索空间有限,模型架构表现能力受限的问题。
技术方案:为实现上述发明目的,本发明采用的技术方案为一种协同过滤模型的自动化架构搜索方法,包括以下步骤:
S1.根据预设的搜索空间构建超网络,超网络中的参数被所有子架构共享;
S2.超网络训练:从超网络中随机采样子架构,通过训练子架构训练超网络;
S3.在S2中的超网络训练完成之后,使用进化算法从超网络中搜索表现优秀的协同过滤模型,其中最优的模型即为架构搜索的结果。
进一步地,步骤S1中所述构建超网络的具体方法是:
S11.首先对现有的协同过滤模型进行归纳抽象,形成协同过滤模型的统一框架,并且表示为数学模型,具体地,通过分析现有的协同过滤模型,将协同过滤模型抽象为有两个部分:嵌入表示,将用户和物品转化为低维的向量表示;交互函数,基于嵌入重建用户和物品的历史交互;以下为协同过滤抽象框架的数学表示:首先定义用户的嵌入向量 ,物品的嵌入向量 ,其中表示实数集合,k为嵌入向量的维度;用户的嵌入表,物品的嵌入表,其中m为用户个数,n为物品个数;为用户对物品的实际评分;为训练集中用户和物品有过实际交互的数据,为损失函数,为正则化系数,则协同过滤模型的优化目标定义为:
其中为验证集上的用户和物品的交互数据,A为交互函数的搜索空间,也即要构建的超网络,即为需要搜索得到的最优的交互函数,这是一个双层优化问题,其中内层为在训练数据上优化协同过滤模型,外层为在验证数据上优化交互函数的架构;
S13.找到最优的交互函数架构,使得协同过滤模型可以在给定的数据上达到最优的性能,通过进一步分析现有的协同过滤模型中常用的交互函数架构,提出了一个交互函数架构搜索空间,该搜索空间包含多种推荐系统模型中常用的操作,该搜索空间设计为一个基于参数共享的超网络,其层数为N,每层包含M种不同的块;其中每种块对应一种操作;通过在超网络的每层采样一个块,得到一个候选架构;搜索空间中的操作定义如下:
①Element-Wise操作,即EW操作:包括按位加、按位取最大值、按位取最小值、按位求平均值和内积,共计构成5种不同的块;
②多层感知器操作,即MLP操作:定义的每个MLP操作只包含三层,输入层和输出层都被指定了维度,以此在搜索空间上对齐维度,隐含层使用不同的神经元个数,以此体现不同的MLP操作,隐藏层神经元个数包括16、32、64、128、256、512和1024,总共构成7种不同的块;
③交叉网络操作,即CN操作:由多个交叉层组成,交叉层的输出通过以下公式计算
其中x 0为交叉网络的初始输入,x l 为第l层交叉层的输出,w l 和b l 分别是第l层交叉层的权重参数和偏置参数,而x l+1 就是第l+1层交叉层的输出;
交叉层的数量决定了交叉项的最大阶数,使用4种类型的交叉网络,其交叉层的数量为1、2、3和4,共计构成4种不同的块;
④自我注意力操作,即SA操作:其Q、K、V SA 三个矩阵均来自同一输入,利用Softmax操作将其结果归一化为概率分布,再乘以矩阵V SA 就得到权重求和的表示;然后为了防止其结果过大,会除以一个尺度标度;使用不同的Q、K、V SA 矩阵就是多头机制,从而学到不同的注意力表示,不同的头数也就形成了不同自我注意力模块,使用1、2、3和4个不同头数的自我注意力模块,也就是总共构成4种不同的块,注意力操作的计算公式如下:
⑤因子分解机操作,即FM操作:因子分解机操作表示为以下公式:
进一步地,步骤S2中所述超网络训练的具体方法是:在S1中构建的超网络的基础上,从超网络中采样子架构,采样的子架构继承超网络的参数,通过训练采样的子架构来训练超网络;记为超网络A包含的所有参数权重,为超网络A中的子架构a的网络参数,表示一个具体采样的子架构及其网络参数,为采样子架构a的先验分布,则训练超网络的目标为:
S21.随机初始化超网络的参数:通过标准的网络参数初始化技术初始化超网络的参数;
(1)从超网络中随机采样一个子架构,子架构继承和共享超网络中的参数;
(2)从训练数据中随机采样一个批量的数据;
(3)使用梯度下降通过训练数据训练采样的子架构,同时更新超网络中的相应参数。
进一步地,步骤S3中所述进化搜索算法的具体方法是:
S31.首先通过随机采样的子架构初始化种群P 0,种群中包含P个个体,种群中的每个个体即为一个候选子架构,进化算法通过对种群选择、交叉、变异,逐步迭代找到最优解;
S32.计算适应度:种群中每个个体的适应度为其对应子架构的性能,使用参数共享技术,这里无需对子架构训练,直接继承超网络中的参数进行评估,得到个体的适应度;
S33.执行一个进化步骤:根据个体的适应度,独立地从种群中选择P/2次个体,每次选择一个个体,所述个体被选中的概率与其适应度大小成正比,被选中的个体作为母体;对母体进行交叉、变异操作,其中选中的个体中每个块变异的概率为0.1,两个随机选择的个体中随机选择一个块进行交叉,交叉和变异后的后代加入到种群中,从新的种群中选择适应度最高的P个个体形成新的种群。
S34.在进化算法达到预定义的迭代次数之后,从最终的种群中选择适应度最高的t个子架构,对这些子架构进行训练和评估,选择其中最优的子架构作为搜索结果。
有益效果:
本发明提出一种协同过滤模型的自动化架构搜索,引入NAS算法针对特定数据集搜索相应的协同过滤模型中的交互函数,以此提高协同过滤模型的效果。相比于其它的以一些应用NAS的协同过滤模型的工作,本发明的搜索空间紧凑高效,包含了多种推荐系统模型里常用的操作和模块。并且本发明的搜索空间是一种基于参数共享的超网络,它可以利用随机采样高效的训练采样的子架构,以此达到训练整体超网络的目的。同时,本发明的搜索策略是一个两阶段的方法,首先采样超网络里的子架构训练超网络的参数,接着利用进化算法搜索超网络里的优秀的子架构。在公开数据集上进行实验,与人工设计的方法和其它NAS算法相比,本发明也有显著提升。
附图说明
图1为本发明的整体框架示意图;
图2为本发明的搜索空间和搜索算法的整体示意图。图2中(a)表示搜索空间, 2(b)表示搜索空间的一个解,通过在每一层采样一个块得到。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
本发明一种协同过滤模型自动化架构搜索的方法,包括以下步骤:
S1.根据预设的搜索空间构建超网络,超网络中的参数被所有子架构共享;
S11.首先对现有的协同过滤模型进行归纳抽象,形成协同过滤模型的统一框架,并且表示为数学模型。通过分析现有的协同过滤模型,可以将协同过滤模型抽象为有两个部分:嵌入表示,将用户和物品转化为低维的向量表示;交互函数,基于嵌入重建用户和物品的历史交互。以下为协同过滤抽象框架的数学表示:S12.在S11得到的协同过滤模型的统一框架的基础上,使用架构搜索技术来搜索协同过滤中关键的交互函数,其在协同过滤模型中表现为特定架构的形式,该架构搜索技术的数学定义为:
其中为验证集上的用户和物品的交互数据,A为交互函数的搜索空间,也即要构建的超网络,即为需要搜索得到的最优的交互函数,这是一个双层优化问题,其中内层为在训练数据上优化协同过滤模型,外层为在验证数据上优化交互函数的架构。
可以看出,公式的前半部分计算模型,计算的是用户和物品的相似度与用户和物品实际的相似度之间的差距,其中模型计算的用户和物品的相似度,通过计算用户和物品的各自的嵌入向量的内积得到,而用户和物品实际的相似度,通常来自用户对物品的主动动作,例如用户给某部电影的评分(1星到5星)。为损失函数,通常采用的是均方误差(mean-square error, MSE),所以用户对物品的评分一般也需要做相应的归一化或者标准化。公式的后半部分是计算用户和物品的嵌入表的二范数,以此达到惩罚的目的,抑制过拟合。传统的协同过滤模型通常利用类似的内积形式计算相似度。然而,内积并不是在所有的数据集上表现都最优,不同的数据集可能需要不同的交互方式。因此可以引入AutoML的思想,利用NAS算法针对特定的数据集搜索特定的交互函数。
则协同过滤模型的优化目标定义为:
其中为交互函数,表示矩阵的弗罗贝尼乌斯范数,为正则化项,上述公式定义的与前面公式不同的是,将使用内积计算相似度,替代为了抽象的交互函数,它是一个可学习的神经网络架构,这样定义也利于扩展,例如在NCF中就是一个多层感知器,在SIF中就可以表示不同的数学交互操作。
S12.在S11得到的抽象框架的基础上,本发明提出使用架构搜索技术来搜索协同过滤中关键的交互函数,其在协同过滤模型中表现为特定架构的形式。本发明旨在通过架构搜索得到更合适的交互函数架构,提升协同过滤模型的性能。以上架构搜索问题的数学定义为:
其中为验证集上的用户和物品的交互数据,A为交互函数的搜索空间,也即要构建的超网络,即为需要搜索得到的最优的交互函数,这是一个双层优化问题,其中内层为在训练数据上优化协同过滤模型,外层为在验证数据上优化交互函数的架构。整体上期望找到最优的交互函数架构,使得协同过滤模型可以在给定的数据上达到最优的性能。
S13.为了解决S12中提出的搜索问题,本发明通过进一步分析现有的协同过滤模型中常用的交互函数架构,提出了一个紧凑高效的交互函数架构搜索空间。搜索空间包含多种推荐系统模型中常用的操作。将整体搜索空间设计成一个基于参数共享的超网络,如图2所示,这是一个层数为N的搜索空间,每层包含M种不同的块(Block),每种块具体处理数据的方式都不同。而且每层所有的块在后续的训练子架构的过程或者搜索子架构的过程时只会有一个具体的块被激活。也就是如图2所示的,每层的虚线块只会有一个被选中,作为实际被采样的架构或者搜索到的架构。需要注意的是,原始输入(用户嵌入和物品嵌入)会输出到每一层作为每一层的输入,同时第i层的输出会作为第层的输入。因为在推荐系统模型中,特征的交叉非常重要,这样设计可以丰富低阶特征(包括原始输入)与高阶特征的隐式交叉,提升了模型的表达能力。并且同时这样设计类似Resnet中Skip-Connection的设计,借鉴了残差学习的思想,可以使原始输入更容易传递到网络的深层部分,反向回传中更好地把梯度传到更浅的层次中,使得模型更容易学习。
每层都包含M种不同的块,它们都是推荐系统模型中一些常用的操作和模块,实际上可以分为5大类,并且它们每种大类型的块都包含一些超参数,下面列出这5大类操作:
①Element-Wise(EW)操作:主要包含一些元素级的数学操作,包括按位加(sum)、按位取最大值(max)、按位取最小值(min)、按位求平均值(avg)和内积(inner product),共计构成5种不同的块。
②多层感知器(MLP)操作:即简单的前馈神经网络层,为了搜索空间的多样性,本发明定义的每个MLP操作只包含三层,输入层和输出层都被指定了维度,以此在搜索空间上对齐维度,隐含层使用不同的神经元个数,以此体现不同的MLP操作,隐藏层神经元个数包括16、32、64、128、256、512和1024,总共构成7种不同的块。
③交叉网络(Cross Network , CN)操作:由多个交叉层组成,交叉层的输出通过以下公式计算
其中x 0为交叉网络的初始输入,x l 为第l层交叉层的输出,w l 和b l 分别是第l层交叉层的权重参数和偏置参数,而x l+1 就是第l+1层交叉层的输出;
交叉层的数量决定了交叉项的最大阶数,本实施例使用4种类型的交叉网络,其交叉层的数量为1、2、3和4,共计构成4种不同的块。
④自我注意力(Self-Attention, SA)操作:自我注意力机制是注意力机制的一种特例,其Q(Query), K(Key), V SA (Value)三个矩阵均来自同一输入,利用Softmax操作将其结果归一化为概率分布,然后再乘以矩阵V SA 就得到权重求和的表示,然后为了防止其结果过大,会除以一个尺度标度;使用不同的Q、K、V SA 矩阵就是多头(multi-head)机制,它可以学到不同的注意力表示,不同的头数也就形成了不同自我注意力模块,本发明中使用1、2、3和4个不同头数的自我注意力模块,也就是总共构成4种不同的块。注意力操作的计算公式如下:
⑤因子分解机(Factorization Machine, FM)操作:因子分解机操作可以表示为以下公式:
因子分解机的输出是一阶特征和二阶特征相互作用的总和。由于两个输入都已经转化为低维嵌入,本发明将多个输入串联为一个张量计算一阶特征和二阶特征的相互作用。
S2.超网络训练:从超网络中随机采样子架构,通过训练子架构训练超网络;
在S1中构建的超网络的基础上,从超网络中采样架构,采样的架构继承超网络的参数,通过训练采样的架构来训练超网络。记为超网络A中的子架构a的网络参数,表示一个具体采样的子架构及其网络参数,为采样子架构a的先验分布,则训练超网络的目标为:
其中,表示期望,表示架构在训练数据上的损失,即从超网络中按照先验分布随机采样子架构的期望性能最优。通过上述公式可以看出,架构参数被解耦到了先验分布中,训练超网络的参数时不再涉及到优化架构参数。因此,先验分布起到了比较重要的作用。最近的一些工作发现,纯粹的随机搜索相比几个最为先进的NAS方法具有很强的竞争力。并且,根据之前一些工作中的经验发现, 采用均匀采样(uniformsampling)已经得到很好的采样效果。所以在本发明中,采用了均匀采样的方法,并且它是固定的,在训练超网络的过程中,分布也不需要进行学习。图2的所示的子架构可以被视作为一个随机采样到的子架构。
S21.随机初始化超网络的参数:通过标准的网络参数初始化技术初始化超网络的参数。
(1)从超网络中随机采样一个子架构,子架构继承和共享超网络中的参数。
(2)从训练数据中随机采样一个批量的数据。
(3)使用梯度下降通过训练数据训练采样的子架构,同时更新超网络中的相应参数。
S3.在S2中的超网络训练完成之后,使用进化算法从超网络中搜索表现优秀的协同过滤模型,其中最优的模型即为架构搜索的结果。受益于参数共享技术,搜索到的候选子架构无需训练,直接推理即可得到子架构的精度。权重共享技术极大地提升了架构搜索的效率。
S31.进化算法通过对种群选择、交叉、变异,逐步迭代找到最优解。种群中的每个个体即为一个候选子架构。首先通过随机采样的子架构初始化种群P 0,种群中包含P个个体。
S32.计算适应度。种群中每个个体的适应度为其对应子架构的性能,使用参数共享技术,这里无需对子架构训练,直接继承超网络中的参数进行评估,得到个体的适应度。
S33.执行一个进化步骤:根据个体的适应度,独立地从种群中选择P/2次个体,每次选择一个个体,所述个体被选中的概率与其适应度大小成正比,被选中的个体作为母体;对母体进行交叉、变异操作,其中选中的个体中每个块变异的概率为0.1,两个随机选择的个体中随机选择一个块进行交叉。交叉和变异后的后代加入到种群中。从新的种群中选择适应度最高的P个个体形成新的种群。
S34.在进化算法达到预定义的迭代次数之后,从最终的种群中选择适应度最高的t个子架构,对这些子架构进行训练和评估,选择其中最优的子架构作为搜索结果。
表1 列出了本发明与其他方法的平方均误差的对比,可以看出本发明相比其他方法有明显提升。
表1:本发明与其他方法的平方均误差对比
Claims (3)
1.一种协同过滤模型的自动化架构搜索方法,其特征在于,该方法包括以下步骤:
S1.根据预设的搜索空间构建超网络,超网络中的参数被所有子架构共享;
S2.超网络训练:从超网络中随机采样子架构,通过训练子架构训练超网络;
S3.在S2中的超网络训练完成之后,使用进化算法从超网络中搜索表现优秀的协同过滤模型,其中最优的模型即为架构搜索的结果;
步骤S1中所述构建超网络的具体方法是:
S11.首先对现有的协同过滤模型进行归纳抽象,形成协同过滤模型的统一框架,并且表示为数学模型,具体地,通过分析现有的协同过滤模型,将协同过滤模型抽象为有两个部分:嵌入表示,将用户和物品转化为低维的向量表示;交互函数,基于嵌入重建用户和物品的历史交互;以下为协同过滤抽象框架的数学表示:首先定义用户的嵌入向量 ,物品的嵌入向量 ,其中表示实数集合,k为嵌入向量的维度;用户的嵌入表,物品的嵌入表,其中m为用户个数,n为物品个数;为用户对物品的实际评分;为训练集中用户和物品有过实际交互的数据,为损失函数,为正则化系数,则协同过滤模型的优化目标定义为:
其中为验证集上的用户和物品的交互数据,A为交互函数的搜索空间,也即要构建的超网络,即为需要搜索得到的最优的交互函数,这是一个双层优化问题,其中内层为在训练数据上优化协同过滤模型,外层为在验证数据上优化交互函数的架构;
S13.找到最优的交互函数架构,使得协同过滤模型可以在给定的数据上达到最优的性能,通过进一步分析现有的协同过滤模型中常用的交互函数架构,提出了一个交互函数架构搜索空间,该搜索空间包含多种推荐系统模型中常用的操作,该搜索空间设计为一个基于参数共享的超网络,其层数为N,每层包含M种不同的块;其中每种块对应一种操作;通过在超网络的每层采样一个块,得到一个候选架构;搜索空间中的操作定义如下:
①Element-Wise操作,即EW操作:包括按位加、按位取最大值、按位取最小值、按位求平均值和内积,共计构成5种不同的块;
②多层感知器操作,即MLP操作:定义的每个MLP操作只包含三层,输入层和输出层都被指定了维度,以此在搜索空间上对齐维度,隐含层使用不同的神经元个数,以此体现不同的MLP操作,隐藏层神经元个数包括16、32、64、128、256、512和1024,总共构成7种不同的块;
③交叉网络操作,即CN操作:由多个交叉层组成,交叉层的输出通过以下公式计算
其中x 0为交叉网络的初始输入,x l 为第l层交叉层的输出,w l 和b l 分别是第l层交叉层的权重参数和偏置参数,而x l+1 就是第l+1层交叉层的输出;
交叉层的数量决定了交叉项的最大阶数,使用4种类型的交叉网络,其交叉层的数量为1、2、3和4,共计构成4种不同的块;
④自我注意力操作,即SA操作:其Q、K、V SA 三个矩阵均来自同一输入,利用Softmax操作将其结果归一化为概率分布,再乘以矩阵V SA 就得到权重求和的表示;然后为了防止其结果过大,会除以一个尺度标度;使用不同的Q、K、V SA 矩阵就是多头机制,从而学到不同的注意力表示,不同的头数也就形成了不同自我注意力模块,使用1、2、3和4个不同头数的自我注意力模块,也就是总共构成4种不同的块,注意力操作的计算公式如下:
⑤因子分解机操作,即FM操作:因子分解机操作表示为以下公式:
2.根据权利要求1所述的协同过滤模型的自动化架构搜索方法,其特征在于,步骤S2中所述超网络训练的具体方法是:在S1中构建的超网络的基础上,从超网络中采样子架构,采样的子架构继承超网络的参数,通过训练采样的子架构来训练超网络;记为超网络A包含的所有参数权重,为超网络A中的子架构a的网络参数,表示一个具体采样的子架构及其网络参数,为采样子架构a的先验分布,则训练超网络的目标为:
S21.随机初始化超网络的参数:通过标准的网络参数初始化技术初始化超网络的参数;
(1)从超网络中随机采样一个子架构,子架构继承和共享超网络中的参数;
(2)从训练数据中随机采样一个批量的数据;
(3)使用梯度下降通过训练数据训练采样的子架构,同时更新超网络中的相应参数。
3.根据权利要求1所述的协同过滤模型的自动化架构搜索方法,其特征在于,步骤S3中所述进化算法的具体方法是:
S31.首先通过随机采样的子架构初始化种群P 0,种群中包含P个个体,种群中的每个个体即为一个候选子架构,进化算法通过对种群选择、交叉、变异,逐步迭代找到最优解;
S32.计算适应度:种群中每个个体的适应度为其对应子架构的性能,使用参数共享技术,这里无需对子架构训练,直接继承超网络中的参数进行评估,得到个体的适应度;
S33.执行一个进化步骤:根据个体的适应度,独立地从种群中选择P/2次个体,每次选择一个个体,所述个体被选中的概率与其适应度大小成正比,被选中的个体作为母体;对母体进行交叉、变异操作,其中选中的个体中每个块变异的概率为0.1,两个随机选择的个体中随机选择一个块进行交叉,交叉和变异后的后代加入到种群中,从新的种群中选择适应度最高的P个个体形成新的种群。
S34.在进化算法达到预定义的迭代次数之后,从最终的种群中选择适应度最高的t个子架构,对这些子架构进行训练和评估,选择其中最优的子架构作为搜索结果。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211119443.3A CN115203585B (zh) | 2022-09-15 | 2022-09-15 | 一种协同过滤模型的自动化架构搜索方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211119443.3A CN115203585B (zh) | 2022-09-15 | 2022-09-15 | 一种协同过滤模型的自动化架构搜索方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN115203585A CN115203585A (zh) | 2022-10-18 |
| CN115203585B true CN115203585B (zh) | 2022-12-27 |
Family
ID=83572187
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202211119443.3A Active CN115203585B (zh) | 2022-09-15 | 2022-09-15 | 一种协同过滤模型的自动化架构搜索方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN115203585B (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116484906A (zh) * | 2023-04-23 | 2023-07-25 | 北京航空航天大学 | 图神经网络架构搜索方法和装置 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110288444A (zh) * | 2019-06-28 | 2019-09-27 | 第四范式(北京)技术有限公司 | 实现用户相关推荐的方法和系统 |
| CN112464579A (zh) * | 2021-02-02 | 2021-03-09 | 四川大学 | 基于进化神经网络结构搜索食管癌病变区域识别建模方法 |
| CN114419389A (zh) * | 2021-12-14 | 2022-04-29 | 上海悠络客电子科技股份有限公司 | 一种基于神经网络架构搜索的目标检测模型构建方法 |
-
2022
- 2022-09-15 CN CN202211119443.3A patent/CN115203585B/zh active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110288444A (zh) * | 2019-06-28 | 2019-09-27 | 第四范式(北京)技术有限公司 | 实现用户相关推荐的方法和系统 |
| CN112464579A (zh) * | 2021-02-02 | 2021-03-09 | 四川大学 | 基于进化神经网络结构搜索食管癌病变区域识别建模方法 |
| CN114419389A (zh) * | 2021-12-14 | 2022-04-29 | 上海悠络客电子科技股份有限公司 | 一种基于神经网络架构搜索的目标检测模型构建方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN115203585A (zh) | 2022-10-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111611472B (zh) | 一种基于图卷积神经网络的捆绑推荐方法及系统 | |
| CN111310063B (zh) | 基于神经网络的记忆感知门控因子分解机物品推荐方法 | |
| CN111932336A (zh) | 一种基于长短期兴趣偏好的商品列表推荐方法 | |
| CN111881342A (zh) | 一种基于图孪生网络的推荐方法 | |
| CN111881363B (zh) | 一种基于图交互网络的推荐方法 | |
| CN112232925A (zh) | 一种融合知识图谱对商品进行个性化推荐的方法 | |
| CN113918832B (zh) | 基于社交关系的图卷积协同过滤推荐系统 | |
| CN113918833B (zh) | 通过社交网络关系的图卷积协同过滤实现的产品推荐方法 | |
| CN111583031A (zh) | 一种基于集成学习的申请评分卡模型建立方法 | |
| CN114357312A (zh) | 基于图神经网络自动建模的社区发现方法及个性推荐方法 | |
| CN111552852B (zh) | 基于半离散矩阵分解的物品推荐方法 | |
| CN116108260B (zh) | 一种基于交互二部图重构邻近的个性化推荐方法 | |
| CN113744023A (zh) | 一种基于图卷积网络的双通道协同过滤推荐方法 | |
| CN115525819A (zh) | 一种面向信息茧房的跨领域推荐方法 | |
| CN113761359A (zh) | 数据包推荐方法、装置、电子设备和存储介质 | |
| CN117271909A (zh) | 一种基于对比学习和知识共享的多任务推荐方法 | |
| CN116955810A (zh) | 一种基于图卷积网络的知识协同推荐算法的优化方法 | |
| CN110765363B (zh) | 一种基于高斯分布表示的深度推荐系统 | |
| CN116385077A (zh) | 一种基于行为感知融合图卷积网络的多行为推荐系统 | |
| CN115203585B (zh) | 一种协同过滤模型的自动化架构搜索方法 | |
| CN116796073B (zh) | 一种基于特征增强的图对比学习会话推荐方法 | |
| CN116759106A (zh) | 一种基于层次注意力融合多特征的药物多毒性预测方法 | |
| CN120541312A (zh) | 一种基于对齐和均匀性的图去噪协同过滤推荐方法 | |
| CN116664253B (zh) | 一种基于广义矩阵分解与遮蔽注意力的项目推荐方法 | |
| Kalidindi et al. | Discrete Deep Learning Based Collaborative Filtering Approach for Cold Start Problem. |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |