CN110633421B - 特征提取、推荐以及预测方法、装置、介质和设备 - Google Patents
特征提取、推荐以及预测方法、装置、介质和设备 Download PDFInfo
- Publication number
- CN110633421B CN110633421B CN201910849232.7A CN201910849232A CN110633421B CN 110633421 B CN110633421 B CN 110633421B CN 201910849232 A CN201910849232 A CN 201910849232A CN 110633421 B CN110633421 B CN 110633421B
- Authority
- CN
- China
- Prior art keywords
- data
- processed
- representing
- different dimensional
- vector
- 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; CALCULATING OR 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; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
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
本发明涉及特征提取方法、装置、介质和设备,其中,所述方法包括:获取代表待处理数据的特征的嵌入向量表示;将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量。以上方法通过同时利用卷积神经网络和注意力机制,能够有效探究数据(例如用户行为序列)中隐藏的阶段性特征。并且,由于本发明中所有卷积的结果都与输出相连,所以可避免较深的神经网络引起的梯度问题。此外,本发明还提供了一种采用上述特征提取方法提取到的特征为输入的推荐以及预测方法、装置、介质和设备,能够根据数据的阶段性特征提供与当前阶段相符的有效推荐或预测,给用户带来更好的体验。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种特征提取、推荐以及预测方法、装置、介质和设备。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
信息爆炸为用户带来了巨量的信息和选择,推荐系统根据用户的浏览记录、评分等历史行为以及用户的个人信息等,提取信息中的有效特征、挖掘用户的兴趣偏好,从而实现个性化推荐,将合适的相关信息推荐给用户,提升用户体验与用户黏度。下一项推荐是指根据用户的浏览、点击、购买序列等类似记录,计算出用户下一项最可能点击的商品(或音乐、电影等选择)列表,推荐给用户。点击率预测是计算广告中的核心算法,是对广告的点击情况做出预测,与用户信息、历史点击率、广告的位置、时间等因素相关。以上所述的内容都可以归结为序列预测问题。
现有技术通过规则推荐、协同过滤、深度学习模型等方法来解决序列预测问题。规则推荐仅仅以商品/分类的热度为依据,无法做到个性化推荐,推荐的命中率很低。基于邻域的协同过滤很难在大数据集上做到实时推荐。基于模型的协同过滤缓和了这个问题,但是无法利用用户行为的序列信息。深度学习方法在一定程度上弥补了以上两种方法的缺陷,达到较优效果,但几乎没有模型能够捕捉到用户行为在某些长度的时间段内体现出的特征。例如,某用户可能习惯每周末观看一部励志电影,每月底观看一部纪录片,而在其它时候更喜欢喜剧电影,现有方法很可能为用户推荐喜剧电影,因为无法捕捉到用户每周末要看励志电影、每月底要看纪录片的特征。此外,现有的含多层卷积神经网络的模型往往需要额外的残差神经网络来避免梯度消失等问题,模型可解释性也较差,一般都会被视为黑盒模型。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,该概述并不是关于本发明的穷举性概述,它并非意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为后文的具体实施方式部分的铺垫。
鉴于以上提出的问题,本发明提出了一种特征提取以及推荐方法、装置、介质和设备。
在本发明实施方式的第一方面中,提供了一种特征提取方法,包括:
获取代表待处理数据的特征的嵌入向量表示;
将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量。
在本实施方式的一个实施例中,获取待处理数据的嵌入向量表示,包括:
获取待处理数据,将所述待处理数据进行序列化处理;
基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
在本实施方式的又一个实施例中,所述字典包括所有特征的嵌入向量,形状为特征数量×嵌入向量长度,服从正态分布。
在本实施方式的另一个实施例中,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络。
在本实施方式的再一个实施例中,所述特征提取器通过以下步骤提取特征:
在不同层次的卷积层分别对输入的所述嵌入向量表示或上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;
基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量。
在本实施方式的再一个实施例中,基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量,包括:
将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,得到表示所述待处理数据的不同维度特征的向量;
将表示相应维度的特征的向量按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的序列向量。
在本实施方式的再一个实施例中,表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状。
在本实施方式的再一个实施例中,将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,包括:
将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行哈达玛乘积,然后按行求和,得到表示所述待处理数据的不同维度特征的向量。
在本实施方式的再一个实施例中,所述序列特征提取器中还包括一独立的注意力网络。
在本实施方式的再一个实施例中,所述序列特征提取器中的注意力网络均采用相同的方法建立。
其中,i≥2,c[i]表示第i层卷积操作后的矩阵,c[1]为从所述字典中查找得到的矩阵,是序列化处理后的数据的嵌入向量表示,j,k分别代表矩阵的行坐标和列坐标,l为表示列坐标的变量,f[i]表示卷积核,fw表示卷积核的宽度。
在本实施方式的再一个实施例中,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
在本发明实施方式的第二方面中,提供了一种推荐方法,包括:
采用如本发明实施方式的第一方面中任一所述的特征提取方法得到能够同时表示所述待处理数据的不同维度特征的向量;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
选择相似度高于预设阈值的项目进行推荐。
在本实施方式的一个实施例中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
在本实施方式的又一个实施例中,所述激活函数为tanh函数:
在本实施方式的另一个实施例中,得到输入序列与备选项目的相似度之后,还包括:
基于所述相似度进行归一化运算,得到所有备选项目在输入序列的下一项推荐中的评分列表;
选取所述评分列表中达到预设评分的项目进行推荐。
在本实施方式的再一个实施例中,通过以下方式进行归一化运算:
在本实施方式的再一个实施例中,所述待处理数据为用户历史行为数据。
在本发明实施方式的第三方面中,提供了一种预测方法,包括:
获取待预测项以及预设数量的已知项作为待处理数据;
采用如本发明实施方式的第一方面中任一所述的特征提取方法得到能够同时表示所述待处理数据的不同维度特征的向量;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
将所述待预测项的向量表示与特征表示向量拼接;
将拼接后的向量输入预设的预测模型中,得到待预测项的预测结果。
在本实施方式的一个实施例中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
在本实施方式的再一个实施例中,所述激活函数为tanh函数:
在本实施方式的又一个实施例中,所述预测模型为基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM中的一个。
在本发明实施方式的第四方面中,提供了一种特征提取装置,包括:
数据预处理模块,被配置为获取代表待处理数据的特征的嵌入向量表示;
向量获取模块,被配置为将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量。
在本实施方式的一个实施例中,所述数据预处理模块包括:
序列化处理单元,被配置为获取待处理数据,将所述待处理数据进行序列化处理;
查找获取单元,被配置为基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
在本实施方式的又一个实施例中,所述字典包括所有特征的嵌入向量,形状为特征数量×嵌入向量长度,服从正态分布。
在本实施方式的再一个实施例中,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络。
在本实施方式的另一个实施例中,所述特征提取器包括:
矩阵获取模块,被配置为在不同层次的卷积层分别对输入的所述嵌入向量表示或上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
权重获取模块,被配置为将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;
特征获取模块,被配置为基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量。
在本实施方式的另一个实施例中,所述特征获取模块包括:
计算单元,被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,得到表示所述待处理数据的不同维度特征的向量;
拼接单元,被配置为将表示相应维度的特征的向量按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的序列向量。
在本实施方式的另一个实施例中,表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状。
在本实施方式的另一个实施例中,所述计算单元还被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行哈达玛乘积,然后按行求和,得到表示所述待处理数据的不同维度特征的向量。
在本实施方式的另一个实施例中,所述序列特征提取器中的权重获取模块还包括一独立的注意力网络。
在本实施方式的另一个实施例中,所述序列特征提取器中的注意力网络均采用相同的方法建立。
在本实施方式的另一个实施例中,所述序列特征提取器中非首层的单层卷积的计算方法为:
其中,i≥2,c[i]表示第i层卷积操作后的矩阵,c[1]为从所述字典中查找得到的矩阵,是序列化处理后的数据的嵌入向量表示,j,k分别代表矩阵的行坐标和列坐标,l为表示列坐标的变量,f[i]表示卷积核,fw表示卷积核的宽度。
在本实施方式的另一个实施例中,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
在本发明实施方式的第五方面中,提供了一种推荐装置,包括:
如本发明实施方式的第四方面中任一所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
相似度计算模块,被配置为将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
推荐模块,被配置为选择相似度高于预设阈值的项目进行推荐。
在本实施方式的一个实施例中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
在本实施方式的又一个实施例中,所述激活函数为tanh函数:
在本实施方式的另一个实施例中,所述装置还包括:
评分列表获取模块,被配置为基于所述相似度进行归一化运算,得到所有备选项目在输入序列的下一项推荐中的评分列表;
所述推荐模块还被配置为选取所述评分列表中达到预设评分的项目进行推荐。
在本实施方式的再一个实施例中,通过以下方式进行归一化运算:
在本实施方式的再一个实施例中,所述待处理数据为用户历史行为数据。
在本发明实施方式的第六方面中,提供了一种预测装置,包括:
待处理数据获取模块,被配置为获取待预测项以及预设数量的已知项作为待处理数据;
如本发明实施方式的第四方面中任一所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
拼接模块,被配置为将所述待预测项的向量表示与特征表示向量拼接;
预测模块,被配置为将拼接后的向量输入预设的预测模型中,得到待预测项的预测结果。
在本实施方式的一个实施例中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
在本实施方式的又一个实施例中,所述激活函数为tanh函数:
在本实施方式的另一个实施例中,所述预测模型为基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM中的一个。
在本发明实施方式的第七方面中,提供了一种计算机可读存储介质,存储有程序代码,所述程序代码当被处理器执行时,实现如第一方面任一实施例所述的方法。
在本发明实施方式的第八方面中,提供了一种计算设备,包括处理器和存储有程序代码的存储介质,所述程序代码当被处理器执行时,实现如第一方面任一实施例所述的方法。
根据本发明实施方式的序列特征提取方法、装置、介质和设备,通过同时利用卷积神经网络和注意力机制,能够有效探究数据(例如用户行为序列)中隐藏的阶段性特征。并且,由于本发明中所有卷积的结果都与输出相连,所以可避免较深的神经网络引起的梯度问题。此外,本发明还提供了一种基于上述特征提取方法提取到的特征的推荐以及预测方法,能够根据数据的阶段性特征提供与当前阶段相符的有效推荐或预测,给用户带来更好的体验。
附图说明
参照附图来阅读本发明的各实施方式,将更容易理解本发明的其它特征和优点,在此描述的附图只是为了对本发明的实施方式进行示意性说明的目的,而非全部可能的实施,并且不旨在限制本发明的范围。在附图中:
图1示出了根据本发明一实施方式的特征提取方法的流程示意图;
图2示出了根据本发明各个实施方式的包括序列特征提取器的全模型示意图;
图3示出了根据本发明各个实施方式的单层卷积的示意图;
图4示出了根据本发明各实施方式的注意力网络的结构示意图;
图5示出了根据本发明一实施方式的方法构建模型并进行实验的结果示意图;
图6示出了根据本发明一实施方式的特征提取装置的模块示意图;
图7示出了根据本发明实施方式提供的一种计算设备的示意图;
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
现参照附图对本发明的实施方式进行详细描述。应注意,以下描述仅仅是示例性的,而并不旨在限制本发明。此外,在以下描述中,将采用相同的附图标记表示不同附图中的相同或相似的部件。在以下描述的不同实施方式中的不同特征,可彼此结合,以形成本发明范围内的其他实施方式。
下面结合图1来描述根据本发明示例性实施方式的用于特征提取测的方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
图1是本发明实施方式第一方面所述的一种特征提取方法的实施例的流程示意图。虽然本发明提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者部分合并后更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本发明实施例或附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置、服务器或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构进行顺序执行或者并行执行(例如并行处理器或者多线程处理的环境、甚至包括分布式处理、服务器集群的实施环境)。
具体的一种实施例如图1所示,本发明提供的特征提取方法的一种实施例中,所述方法可以包括:
步骤S101,获取代表待处理数据的特征的嵌入向量表示;
一般直接收集到数据很难直接进行特征分析,需要进行一定的预处理,以得到符合规范的能够进行分析处理的数据,在本实施方式中,例如,通过前期的准备工作收集到海量的用户历史行为数据,则需要对用户历史行为数据进行处理,以得到能够代表用户历史行为数据的特征的嵌入向量表示,具体的,首先获取待处理数据,将所述待处理数据进行序列化处理;例如,读取用户历史行为数据,然后将其处理为固定长度N的序列形式S,之后基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
需要说明的是,一个序列中可能包含多个条目,一个条目可能拥有多个属性。例如,所有条目都有序号、分类属性,其中序号从1-1000,分类有20类,那么所有用于描述条目的特征数量就是1020。而每个特征的嵌入向量是需要模型进行学习的,首先需要进行初始化,在本实施方式的一个实施例中,随机初始化(在本实施方式的一个实施例中,采用python numby的np.random.normal方法生成形状为【特征数量×嵌入向量长度】的字典Es,所述字典服从正态分布)字典Es(假设字典Es大小为feature_size×d,其中,feature_size为特征数量,d为嵌入向量长度),所述字典Es包含了所有特征的嵌入向量,然后根据序列中的某一个特征的值查找获取所述特征的嵌入向量,比如一个特征的值是500,则从字典中查找500对应的d维的嵌入向量。
可以理解的是,不同的数据集的特征数量是不同的,也即feature_size在不同的数据集上不同。
D可以根据具体的任务进行设置,在本实施方式的一个实施例中,所述d的取值范围为{50,60,70,80,90,100},在本实施例中,选取60作为d的取值。
其中,所述嵌入向量表示可以实现为矩阵E的形式,具体的,矩阵E大小是feature_size×d,即每行是一个特征的嵌入向量。所述特征的向量的行序与结果无关,在本实施方式的一个实施例中:若序号是1-1000,分类是1-20,那么E前1000行就是1000个序号的嵌入向量,后20行就是分类的嵌入向量,而不是按序列的顺序,若序列中某一项的特征是(456,12),则从E中取456行和1012(1000+12)行,需要说明的是,不同属性的相同特征值不能使用同一个嵌入向量,比如序号的12和分类的12,虽然特征值相同,但由于其代表不同的属性,因此需要分别从相应的位置获取。
步骤S102,将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量。
需要说明的是,其中,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络。
在本实施方式的一个实施例中,参照图2,所述特征提取器通过以下步骤提取特征:
在不同层次的卷积层分别对输入的所述嵌入向量表示或上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
在本实施例中,将基于序列化处理后的数据(S,即图中的S1到SN)在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示(矩阵E,即图中的矩阵c[1])输入所述序列特征提取器,所述矩阵c[1]通过卷积层进行计算,在本实施方式的一个实施例中,若所述待处理数据为用户历史行为数据,则所述矩阵c[1]可以表示用户每天行为的特征,图中矩阵c[2]可以表示用户每3天行为的特征,图中矩阵c[3]可以表示用户每7天行为的特征;
在本实施方式的一个实施例中,所述序列特征提取器中非首层的单层卷积(参照图3)的计算方法为:
其中,i≥2,c[i]表示第i层卷积操作后的矩阵,j,k分别代表矩阵的行坐标和列坐标,c[1]为从所述字典中查找得到的矩阵,是序列化处理后的数据的嵌入向量表示,l为表示列坐标的变量,f[i]表示卷积核,fw表示卷积核的宽度,另外,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
然后,参照图4,将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;如图4所示,在本实施方式的一个实施例中,在所述注意力网络中,通过3层计算得到所述注意力权重,例如将矩阵c[i]输入到相应的注意力网络中,首先与预先随机初始化(例如python numby的np.random.normal方法)的第一矩阵(图中的a1×d)进行矩阵相乘,然后得到的结果(a1×l[i])与预先随机初始化的第二矩阵(图中的a2×a1)继续进行矩阵相乘,最后得到的结果(a2×l[i])与预先随机初始化的第三矩阵(图中的1×a2)继续进行矩阵相乘得到注意力权重(weights[i]),其中a1和a2可以根据实际的数据集或需要进行设定的,在本实施方式的一个实施例中,设置a2=2*d,a1=1*d。
然后,基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量,具体的,将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重(矩阵)进行计算,得到表示所述待处理数据的不同维度特征的向量;需要说明的是,产生的注意力权重只有一行但是输入c[i]不止一行,因此,在本实施例中,需要对产生的注意力权重进行tile(复制)操作以便进行运算,即竖向将注意力权重复制,直到与c[i]具有同样的行数(即所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状),以使得二者可以进行哈达玛乘积(按位相乘),然后,将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重(矩阵)进行哈达玛乘积,最后按行求和,得到表示所述待处理数据的不同维度特征的向量(r[i]);
需要说明的是,本实施方式的实施例中,所述序列特征提取器中还包括一独立的注意力网络,即图2中的输出r[1]的注意力网络,所述注意力网络直接对输入进行处理,以得到相应的(用户每天的行为特征)注意力权重,另外,所述序列特征提取器中的注意力网络均采用相同的方法建立,可以理解的是,本实施方式中的注意力网络,不一定是如图4所示的3层结构,可以根据实际的情况建立更多或更少的层次结构。
将表示相应维度的特征的向量(图2中的r[1]、r[2]和r[3])按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的向量(rs)。
本发明第一方面提供的特征提取方法可以作为一个通用的序列特征提取器模块,用于点击率预估、信贷评估、轨迹预测等方面。
信息爆炸为用户带来了巨量的信息和选择,推荐系统根据用户的浏览记录、评分等历史行为以及用户的个人信息等,提取信息中的有效特征、挖掘用户的兴趣偏好,从而实现个性化推荐,将合适的相关信息推荐给用户,提升用户体验与用户黏度。基于本发明第一方面提供的特征提取方法所提取的特征,能够用于下一项推荐,提供更加精准的推荐项目,因此,在本实施方式的第二方面,还提供一种推荐方法,包括:
采用如本实施方式的第一方面所述的特征提取方法得到能够同时表示所述待处理数据的不同维度特征的向量;
例如,采集用户历史(购买)行为数据作为待处理数据,则可处理获取用户在不同时间段内(维度)的行为特征;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
其中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
其中,所述激活函数为tanh函数:
将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
具体的,将所述输入序列的特征表示向量output(维数与单个嵌入向量的长度d相同)与(嵌入向量)字典(Es)相乘,得到代表所述输入序列的特征表示向量与备选项目(商品)的相似度的向量z,得到输入序列与备选项目的相似度之后,所述方法还包括:
基于所述相似度进行归一化运算,具体的,通过以下方式进行归一化运算:
以得到所有备选项目在输入序列的下一项推荐中的评分列表;
其中,表示第i项备选项目的评分,zi表示所述特征表示向量与第i项备选项目的嵌入向量的相似度,zj表示所述特征表示向量与第j项备选项目的嵌入向量的相似度,需要说明的是,在本实施方式中,表示计算所述特征表示向量与所有备选项目的相似度之和,即上述公式中的j为代表备选项目编号的变量。
然后选取所述评分列表中达到预设评分的项目进行推荐,即选择相似度高于预设阈值的项目进行推荐。
点击率预估是计算广告中的核心算法,是对广告的点击情况做出预测,与用户信息、历史点击率、广告的位置、时间等因素相关。基于本发明第一方面提供的特征提取方法所提取的特征,能够用于点击率预估,获得更加准确的预估结果,因此,在本实施方式的第三方面,还提供一种预测方法,包括:
获取待预测项以及预设数量的已知项作为待处理数据;
例如,取待预估项SN及序列中SN之前固定数量的项目(商品)作为序列S,采用如本实施方式的第一方面所述的特征提取方法得到能够同时表示所述待处理数据的不同维度特征的向量;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
其中,所述激活函数为tanh函数:
将所述待预测项的向量表示与特征表示向量拼接;
具体的,将SN的向量表示与所述输入序列的特征表示向量output拼接起来,将拼接后的向量输入预设的预测模型(如基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM)中,得到待预测项的预测结果。
与其它已有点击率预估模型相比,本方法在应用于点击率预估问题中时,能够利用待预估项之前序列的信息,提高了预估的准确程度。
为验证本方法在下一项推荐任务中的优秀性能,本发明选用推荐领域经典数据集Last.fm和MovieLens_1M,设计了多组实验。Last.fm数据集包含1000名用户的音乐播放记录,MovieLens_1M数据集包含约6000名用户对4000部电影的约1000000条评分项。将两个数据集分别处理成某些固定长度的序列以方便实验。实验中将本模块与以下模块进行对比:
MostPOP:总是推荐点击量/购买量最多的物品。
GRURec:一种基于循环神经网络的下一项推荐模型,引入门控循环单元来建模用户行为,使用pair-wise损失函数。
Caser:一种基于卷积神经网络的序列推荐模型,使用水平卷积和竖直卷积来探索用户行为在单个物品层面和多个物品层面的特征。
STAMP:一种基于短期记忆和注意力机制的下一项推荐模型,从长期记忆中提取用户一般兴趣,从短期记忆中提取用户近期兴趣。
NextItNet:一种由空洞卷积组成的推荐模型,能在不添加池化操作的情况下扩大感受野。
参照图5,在使用Last.fm数据集和MovieLens_1M数据集与以上5个模块相比较的实验中,本发明(图中的CASFE为根据本发明的方法构建的模型)提供的方法均取得良好的效果。
在介绍了本发明示例性实施方式的方法之后,接下来,参考图6对本发明示例性实施方式的特征提取装置进行说明,由于装置实施例是与方法实施例对应的,因此仅作简要描述,具体实施时可以参照上述方法实施例的说明,部分内容此处不再赘述。
一种特征提取装置,包括:
数据预处理模块610,被配置为获取代表待处理数据的特征的嵌入向量表示;
向量获取模块620,被配置为将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量。
在本实施方式的一个实施例中,所述数据预处理模块610包括:
序列化处理单元,被配置为获取待处理数据,将所述待处理数据进行序列化处理;
查找获取单元,被配置为基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
在本实施方式的一个实施例中,所述字典包括所有特征的嵌入向量,形状为特征数量×嵌入向量长度,服从正态分布。
在本实施方式的一个实施例中,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络。
在本实施方式的一个实施例中,所述特征提取器包括:
矩阵获取模块,被配置为在不同层次的卷积层分别对输入的所述嵌入向量表示或上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
权重获取模块,被配置为将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;
特征获取模块,被配置为基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量。
在本实施方式的一个实施例中,所述特征获取模块包括:
计算单元,被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,得到表示所述待处理数据的不同维度特征的向量;
拼接单元,被配置为将表示相应维度的特征的向量按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的序列向量。
在本实施方式的一个实施例中,表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状。
在本实施方式的一个实施例中,所述计算单元还被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行哈达玛乘积,然后按行求和,得到表示所述待处理数据的不同维度特征的向量。
在本实施方式的一个实施例中,所述序列特征提取器中的权重获取模块还包括一独立的注意力网络。
在本实施方式的一个实施例中,所述序列特征提取器中的注意力网络均采用相同的方法建立。
在本实施方式的一个实施例中,所述序列特征提取器中非首层的单层卷积的计算方法为:
其中,i≥2,c[i]表示第i层卷积操作后的矩阵,j,k分别代表矩阵的行坐标和列坐标,c[1]为从所述字典中查找得到的矩阵,是序列化处理后的数据的嵌入向量表示,l为表示列坐标的变量,f[i]表示卷积核,fw表示卷积核的宽度。
在本实施方式的一个实施例中,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
本发明还提供一种推荐装置,包括:
如前所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
相似度计算模块,被配置为将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
推荐模块,被配置为选择相似度高于预设阈值的项目进行推荐。
在本实施方式的一个实施例中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
在本实施方式的一个实施例中,所述激活函数为tanh函数:
在本实施方式的一个实施例中,所述装置还包括:
评分列表获取模块,被配置为基于所述相似度进行归一化运算,得到所有备选项目在输入序列的下一项推荐中的评分列表;
所述推荐模块还被配置为选取所述评分列表中达到预设评分的项目进行推荐。
在本实施方式的一个实施例中,通过以下方式进行归一化运算:
在本实施方式的一个实施例中,所述待处理数据为用户历史行为数据。
本发明还提供一种预测装置,包括:
待处理数据获取模块,被配置为获取待预测项以及预设数量的已知项作为待处理数据;
如前所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
拼接模块,被配置为将所述待预测项的向量表示与特征表示向量拼接;
预测模块,被配置为将拼接后的向量输入预设的预测模型中,得到待预测项的预测结果。
在本实施方式的一个实施例中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
在本实施方式的一个实施例中,所述激活函数为tanh函数:
在本实施方式的一个实施例中,所述预测模型为基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM中的一个。
另外,这里尚需指出的是,上述系统中各个组成部件可以通过软件、固件、硬件或其组合的方式进行配置。配置可使用的具体手段或方式为本领域技术人员所熟知,在此不再赘述。在通过软件或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机(例如图7所示的通用计算机700)安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等。
图7示出了可用于实施根据本发明实施例的方法和系统的计算机的示意性框图。
在图7中,中央处理单元(CPU)701根据只读存储器(ROM)702中存储的程序或从存储部分708加载到随机存取存储器(RAM)703的程序执行各种处理。在RAM703中,还根据需要存储当CPU701执行各种处理等时所需的数据。CPU701、ROM702和RAM703经由总线704彼此连接。输入/输出接口705也连接到总线704。
下述部件连接到输入/输出接口705:输入部分706(包括键盘、鼠标等等)、输出部分707(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分708(包括硬盘等)、通信部分709(包括网络接口卡比如LAN卡、调制解调器等)。通信部分709经由网络比如因特网执行通信处理。根据需要,驱动器710也可连接到输入/输出接口705。可拆卸介质711比如磁盘、光盘、磁光盘、半导体存储器等等可以根据需要被安装在驱动器710上,使得从中读出的计算机程序根据需要被安装到存储部分708中。
在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质711安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图7所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质711。可拆卸介质711的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM702、存储部分708中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
本发明还提出一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本发明实施方式的方法。
相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本发明的范围内。所述存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。
应当注意,本发明的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的次序顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本发明的技术范围构成限制。
以上对本发明各实施方式的描述是为了更好地理解本发明,其仅仅是示例性的,而非旨在对本发明进行限制。应注意,在以上描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。本领域技术人员可以理解,在不脱离本发明的发明构思的情况下,针对以上所描述的实施方式进行的各种变化和修改,均属于本发明的范围内。
综上,在根据本发明的实施例中,本发明提供了如下技术方案。
方案1.一种特征提取方法,包括:
获取代表待处理数据的特征的嵌入向量表示;
将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量。
方案2.如方案1所述的方法,其中,获取待处理数据的嵌入向量表示,包括:
获取待处理数据,将所述待处理数据进行序列化处理;
基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
方案3.如方案2所述的方法,其中,所述字典包括所有特征的嵌入向量,形状为特征数量×嵌入向量长度,服从正态分布。
方案4.如方案1所述的方法,其中,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络。
方案5.如方案4所述的方法,其中,所述特征提取器通过以下步骤提取特征:
在不同层次的卷积层分别对输入的所述嵌入向量表示或上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;
基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量。
方案6.如方案5所述的方法,其中,基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量,包括:
将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,得到表示所述待处理数据的不同维度特征的向量;
将表示相应维度的特征的向量按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的序列向量。
方案7.如方案6所述的方法,其中,表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状。
方案8.如方案6所述的方法,其中,将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,包括:
将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行哈达玛乘积,然后按行求和,得到表示所述待处理数据的不同维度特征的向量。
方案9.如方案4所述的方法,其中,所述序列特征提取器中还包括一独立的注意力网络。
方案10.如方案4或5所述的方法,其中,所述序列特征提取器中的注意力网络均采用相同的方法建立。
方案11.如方案1所述的方法,其中,所述序列特征提取器中非首层的单层卷积的计算方法为:
其中,i≥2,c[i]表示第i层卷积操作后的矩阵,c[1]为从所述字典中查找得到的矩阵,是序列化处理后的数据的嵌入向量表示,j,k分别代表矩阵的行坐标和列坐标,l为表示列坐标的变量,f[i]表示卷积核,fw表示卷积核的宽度。
方案12.如方案1所述的方法,其中,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
方案13.一种推荐方法,包括:
采用如方案1-12任一所述的方法得到能够同时表示所述待处理数据的不同维度特征的向量;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
选择相似度高于预设阈值的项目进行推荐。
方案14.如方案13所述的方法,其中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
方案15.如方案14所述的方法,其中,所述激活函数为tanh函数:
方案16.如方案13所述的方法,其中,得到输入序列与备选项目的相似度之后,还包括:
基于所述相似度进行归一化运算,得到所有备选项目在输入序列的下一项推荐中的评分列表;
选取所述评分列表中达到预设评分的项目进行推荐。
方案17.如方案16所述的方法,其中,通过以下方式进行归一化运算:
方案18.如方案13所述的方法,其中,所述待处理数据为用户历史行为数据。
方案19.一种预测方法,包括:
获取待预测项以及预设数量的已知项作为待处理数据;
采用如方案1-12任一所述的方法得到能够同时表示所述待处理数据的不同维度特征的向量;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
将所述待预测项的向量表示与特征表示向量拼接;
将拼接后的向量输入预设的预测模型中,得到待预测项的预测结果。
方案20.如方案19所述的方法,其中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
方案21.如方案20所述的方法,其中,所述激活函数为tanh函数:
方案22.如方案19所述的方法,其中,所述预测模型为基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM中的一个。
方案23.一种特征提取装置,包括:
数据预处理模块,被配置为获取代表待处理数据的特征的嵌入向量表示;
向量获取模块,被配置为将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量。
方案24.如方案23所述的装置,其中,所述数据预处理模块包括:
序列化处理单元,被配置为获取待处理数据,将所述待处理数据进行序列化处理;
查找获取单元,被配置为基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
方案25.如方案24所述的装置,其中,所述字典包括所有特征的嵌入向量,形状为特征数量×嵌入向量长度,服从正态分布。
方案26.如方案23所述的装置,其中,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络。
方案27.如方案26所述的装置,其中,所述特征提取器包括:
矩阵获取模块,被配置为在不同层次的卷积层分别对输入的所述嵌入向量表示或上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
权重获取模块,被配置为将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;
特征获取模块,被配置为基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量。
方案28.如方案27所述的装置,其中,所述特征获取模块包括:
计算单元,被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,得到表示所述待处理数据的不同维度特征的向量;
拼接单元,被配置为将表示相应维度的特征的向量按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的序列向量。
方案29.如方案28所述的装置,其中,表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状。
方案30.如方案28所述的装置,其中,所述计算单元还被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行哈达玛乘积,然后按行求和,得到表示所述待处理数据的不同维度特征的向量。
方案31.如方案26所述的装置,其中,所述序列特征提取器中的权重获取模块还包括一独立的注意力网络。
方案32.如方案26或27所述的装置,其中,所述序列特征提取器中的注意力网络均采用相同的方法建立。
方案33.如方案23所述的装置,其中,所述序列特征提取器中非首层的单层卷积的计算方法为:
其中,i≥2,c[i]表示第i层卷积操作后的矩阵,c[1]为从所述字典中查找得到的矩阵,是序列化处理后的数据的嵌入向量表示,j,k分别代表矩阵的行坐标和列坐标,l为表示列坐标的变量,f[i]表示卷积核,fw表示卷积核的宽度。
方案34.如方案23所述的装置,其中,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
方案35.一种推荐装置,包括:
如方案23-34任一所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
相似度计算模块,被配置为将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
推荐模块,被配置为选择相似度高于预设阈值的项目进行推荐。
方案36.如方案35所述的装置,其中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
方案37.如方案36所述的装置,其中,所述激活函数为tanh函数:
方案38.如方案35所述的装置,其中,所述装置还包括:
评分列表获取模块,被配置为基于所述相似度进行归一化运算,得到所有备选项目在输入序列的下一项推荐中的评分列表;
所述推荐模块还被配置为选取所述评分列表中达到预设评分的项目进行推荐。
方案39.如方案38所述的装置,其中,通过以下方式进行归一化运算:
方案40.如方案35所述的装置,其中,所述待处理数据为用户历史行为数据。
方案41.一种预测装置,包括:
待处理数据获取模块,被配置为获取待预测项以及预设数量的已知项作为待处理数据;
如方案23-35任一所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到所述输入序列的特征表示向量;
拼接模块,被配置为将所述待预测项的向量表示与特征表示向量拼接;
预测模块,被配置为将拼接后的向量输入预设的预测模型中,得到待预测项的预测结果。
方案42.如方案41所述的装置,其中,所述多层感知器的计算方法为:
其中,y[a]表示第a层的计算结果,rs表示所述能够同时表示所述待处理数据的不同维度特征的向量,f为激活函数,w表示权重矩阵,b表示偏置项。
方案43.如方案42所述的装置,其中,所述激活函数为tanh函数:
方案44.如方案41所述的装置,其中,所述预测模型为基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM中的一个。
方案45.一种计算机可读存储介质,存储有程序代码,所述程序代码当被处理器执行时,实现如方案1-12和/或13-18和/或19-22之一所述的方法。
方案46.一种计算设备,包括处理器和存储有程序代码的存储介质,所述程序代码当被处理器执行时,实现如方案1-12和/或13-18和/或19-22之一所述的方法。
Claims (40)
1.一种特征提取方法,包括:
获取代表待处理数据的特征的嵌入向量表示;
将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量;
其中,所述待处理数据为用户历史行为数据,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络;
所述特征提取器通过以下步骤提取特征:
第一层卷积层对输入的所述嵌入向量表示进行卷积操作,其他卷积层对上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;
基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量。
2.如权利要求1所述的方法,其中,获取待处理数据的嵌入向量表示,包括:
获取待处理数据,将所述待处理数据进行序列化处理;
基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
3.如权利要求2所述的方法,其中,所述字典包括所有特征的嵌入向量,形状为特征数量×嵌入向量长度,服从正态分布。
4.如权利要求3所述的方法,其中,基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量,包括:
将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,得到表示所述待处理数据的不同维度特征的向量;
将表示相应维度的特征的向量按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的序列向量。
5.如权利要求4所述的方法,其中,表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状。
6.如权利要求4所述的方法,其中,将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,包括:
将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行哈达玛乘积,然后按行求和,得到表示所述待处理数据的不同维度特征的向量。
7.如权利要求1所述的方法,其中,所述序列特征提取器中还包括一独立的注意力网络。
8.如权利要求1所述的方法,其中,所述序列特征提取器中的注意力网络均采用相同的方法建立。
10.如权利要求1所述的方法,其中,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
11.一种推荐方法,包括:
采用如权利要求1-10任一所述的方法得到能够同时表示所述待处理数据的不同维度特征的向量;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到输入序列的特征表示向量;
将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
选择相似度高于预设阈值的项目进行推荐。
14.如权利要求11所述的方法,其中,得到输入序列与备选项目的相似度之后,还包括:
基于所述相似度进行归一化运算,得到所有备选项目在输入序列的下一项推荐中的评分列表;
选取所述评分列表中达到预设评分的项目进行推荐。
16.一种预测方法,包括:
获取待预测项以及预设数量的已知项作为待处理数据;
采用如权利要求1-10任一所述的方法得到能够同时表示所述待处理数据的不同维度特征的向量;
将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到输入序列的特征表示向量;
将所述待预测项的向量表示与特征表示向量拼接;
将拼接后的向量输入预设的预测模型中,得到待预测项的预测结果。
19.如权利要求16所述的方法,其中,所述预测模型为基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM中的一个。
20.一种特征提取装置,包括:
数据预处理模块,被配置为获取代表待处理数据的特征的嵌入向量表示;
向量获取模块,被配置为将所述嵌入向量表示输入包括多个卷积层以及注意力网络的序列特征提取器,以得到能够同时表示所述待处理数据的不同维度特征的向量;
其中,所述待处理数据为用户历史行为数据,所述序列特征提取器中的每一卷积层后均连接有相应的注意力网络;
所述特征提取器包括:
矩阵获取模块,被配置为在第一层卷积层对输入的所述嵌入向量表示进行卷积操作,在其他卷积层对上一卷积层卷积操作后的结果进行卷积操作,以得到表示所述待处理数据的不同维度特征的矩阵;
权重获取模块,被配置为将表示所述待处理数据的不同维度特征的矩阵分别通过所述注意力网络,以得到各个矩阵的注意力权重;
特征获取模块,被配置为基于表示所述待处理数据的不同维度特征的矩阵以及相应的注意力权重得到能够同时表示所述待处理数据的不同维度特征的向量。
21.如权利要求20所述的装置,其中,所述数据预处理模块包括:
序列化处理单元,被配置为获取待处理数据,将所述待处理数据进行序列化处理;
查找获取单元,被配置为基于序列化处理后的数据在预先随机初始化的包括所有特征的嵌入向量的字典中查找获得序列化处理后的数据的嵌入向量表示。
22.如权利要求21所述的装置,其中,所述字典包括所有特征的嵌入向量,形状为特征数量×嵌入向量长度,服从正态分布。
23.如权利要求22所述的装置,其中,所述特征获取模块包括:
计算单元,被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行计算,得到表示所述待处理数据的不同维度特征的向量;
拼接单元,被配置为将表示相应维度的特征的向量按照预设顺序拼接,以得到能够同时表示所述待处理数据的不同维度特征的序列向量。
24.如权利要求23所述的装置,其中,表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重矩阵具有相同的形状。
25.如权利要求23所述的装置,其中,所述计算单元还被配置为将表示所述待处理数据的不同维度特征的矩阵与相应的注意力权重进行哈达玛乘积,然后按行求和,得到表示所述待处理数据的不同维度特征的向量。
26.如权利要求20所述的装置,其中,所述序列特征提取器中的权重获取模块还包括一独立的注意力网络。
27.如权利要求20所述的装置,其中,所述序列特征提取器中的注意力网络均采用相同的方法建立。
29.如权利要求20所述的装置,其中,所述序列特征提取器中的每一卷积层的卷积核的高度与单个嵌入向量的长度相同。
30.一种推荐装置,包括:
如权利要求20-29任一所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到输入序列的特征表示向量;
相似度计算模块,被配置为将所述特征表示向量与预先随机初始化的包括所有特征的嵌入向量的字典相乘,得到输入序列与备选项目的相似度;
推荐模块,被配置为选择相似度高于预设阈值的项目进行推荐。
33.如权利要求30所述的装置,其中,所述装置还包括:
评分列表获取模块,被配置为基于所述相似度进行归一化运算,得到所有备选项目在输入序列的下一项推荐中的评分列表;
所述推荐模块还被配置为选取所述评分列表中达到预设评分的项目进行推荐。
35.一种预测装置,包括:
待处理数据获取模块,被配置为获取待预测项以及预设数量的已知项作为待处理数据;
如权利要求20-29任一所述的特征提取装置,以得到能够同时表示所述待处理数据的不同维度特征的向量;
结果向量获取模块,被配置为将所述能够同时表示所述待处理数据的不同维度特征的向量输入多层感知器,以得到输入序列的特征表示向量;
拼接模块,被配置为将所述待预测项的向量表示与特征表示向量拼接;
预测模块,被配置为将拼接后的向量输入预设的预测模型中,得到待预测项的预测结果。
38.如权利要求35所述的装置,其中,所述预测模型为基于内积的神经网络IPNN、深度神经网络DNN和基于分解机的神经网络DeepFM中的一个。
39.一种计算机可读存储介质,存储有程序代码,所述程序代码当被处理器执行时,实现如权利要求1-10和/或11-15和/或16-19之一所述的方法。
40.一种计算设备,包括处理器和存储有程序代码的存储介质,所述程序代码当被处理器执行时,实现如权利要求1-10和/或11-15和/或16-19之一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910849232.7A CN110633421B (zh) | 2019-09-09 | 2019-09-09 | 特征提取、推荐以及预测方法、装置、介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910849232.7A CN110633421B (zh) | 2019-09-09 | 2019-09-09 | 特征提取、推荐以及预测方法、装置、介质和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110633421A CN110633421A (zh) | 2019-12-31 |
CN110633421B true CN110633421B (zh) | 2020-08-11 |
Family
ID=68972413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910849232.7A Active CN110633421B (zh) | 2019-09-09 | 2019-09-09 | 特征提取、推荐以及预测方法、装置、介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110633421B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111588349B (zh) * | 2020-05-28 | 2023-12-01 | 京东方科技集团股份有限公司 | 一种健康分析装置及电子设备 |
CN111881363A (zh) * | 2020-06-23 | 2020-11-03 | 北京工业大学 | 一种基于图交互网络的推荐方法 |
CN112328844A (zh) * | 2020-11-18 | 2021-02-05 | 恩亿科(北京)数据科技有限公司 | 一种处理多类型数据的方法及系统 |
CN113239990A (zh) * | 2021-04-27 | 2021-08-10 | 中国银联股份有限公司 | 对序列数据进行特征处理的方法、装置及存储介质 |
CN113253336B (zh) * | 2021-07-02 | 2021-10-01 | 深圳市翩翩科技有限公司 | 一种基于深度学习的地震预测方法和系统 |
CN114116944A (zh) * | 2021-11-30 | 2022-03-01 | 重庆七腾科技有限公司 | 一种基于时间注意力卷积网络的轨迹预测方法及装置 |
US20240046314A1 (en) * | 2022-08-03 | 2024-02-08 | Hong Kong Applied Science and Technology Research Institute Company Limited | Systems and methods for multidimensional knowledge transfer for click through rate prediction |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239324A (zh) * | 2013-06-17 | 2014-12-24 | 阿里巴巴集团控股有限公司 | 一种基于用户行为的特征提取、个性化推荐的方法和系统 |
CN110196946A (zh) * | 2019-05-29 | 2019-09-03 | 华南理工大学 | 一种基于深度学习的个性化推荐方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109784959B (zh) * | 2017-11-10 | 2023-04-18 | 广州腾讯科技有限公司 | 一种目标用户预测方法、装置、后台服务器及存储介质 |
CN108256631A (zh) * | 2018-01-26 | 2018-07-06 | 深圳市唯特视科技有限公司 | 一种基于注意力模型的用户行为推荐系统 |
CN108921051B (zh) * | 2018-06-15 | 2022-05-20 | 清华大学 | 基于循环神经网络注意力模型的行人属性识别网络及技术 |
CN109344288B (zh) * | 2018-09-19 | 2021-09-24 | 电子科技大学 | 一种基于多模态特征结合多层注意力机制的结合视频描述方法 |
CN110008409A (zh) * | 2019-04-12 | 2019-07-12 | 苏州市职业大学 | 基于自注意力机制的序列推荐方法、装置及设备 |
CN110162703A (zh) * | 2019-05-13 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 内容推荐方法、训练方法、装置、设备及存储介质 |
-
2019
- 2019-09-09 CN CN201910849232.7A patent/CN110633421B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239324A (zh) * | 2013-06-17 | 2014-12-24 | 阿里巴巴集团控股有限公司 | 一种基于用户行为的特征提取、个性化推荐的方法和系统 |
CN110196946A (zh) * | 2019-05-29 | 2019-09-03 | 华南理工大学 | 一种基于深度学习的个性化推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110633421A (zh) | 2019-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110633421B (zh) | 特征提取、推荐以及预测方法、装置、介质和设备 | |
CN108648049B (zh) | 一种基于用户行为区别建模的序列推荐方法 | |
CN108921221B (zh) | 用户特征的生成方法、装置、设备及存储介质 | |
CN110503531B (zh) | 时序感知的动态社交场景推荐方法 | |
US8515212B1 (en) | Image relevance model | |
CN107545276B (zh) | 联合低秩表示和稀疏回归的多视角学习方法 | |
CN108805598B (zh) | 相似度信息确定方法、服务器及计算机可读存储介质 | |
CN108470052B (zh) | 一种基于矩阵补全的抗托攻击推荐算法 | |
US11501110B2 (en) | Descriptor learning method for the detection and location of objects in a video | |
CN107590505B (zh) | 联合低秩表示和稀疏回归的学习方法 | |
US10163036B2 (en) | System and method of analyzing images using a hierarchical set of models | |
CN110688565B (zh) | 基于多维霍克斯过程和注意力机制的下一个物品推荐方法 | |
CN113873330B (zh) | 视频推荐方法、装置、计算机设备和存储介质 | |
CN111931043B (zh) | 一种科技资源的推荐方法及系统 | |
CN112487283A (zh) | 训练模型的方法、装置、电子设备及可读存储介质 | |
CN111325200A (zh) | 图像标注方法、装置、设备及计算机可读存储介质 | |
CN111985616B (zh) | 一种图像特征提取方法、图像检索方法、装置及设备 | |
CN111475720A (zh) | 推荐方法、装置、服务器及存储介质 | |
CN116501979A (zh) | 信息推荐方法、装置、计算机设备及计算机可读存储介质 | |
Yu et al. | Computer Image Content Retrieval considering K‐Means Clustering Algorithm | |
CN114529399A (zh) | 用户数据处理方法、装置、计算机设备和存储介质 | |
CN108335147B (zh) | 一种基于用户行为的数据分析方法及系统 | |
CN112948681A (zh) | 一种融合多维度特征的时间序列数据推荐方法 | |
CN111143533A (zh) | 一种基于用户行为数据的客服方法及系统 | |
CN112118486A (zh) | 内容项投放方法、装置、计算机设备及存储介质 |
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 | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20191231 Assignee: Beijing Intellectual Property Management Co.,Ltd. Assignor: Beijing Ruili Wisdom Technology Co.,Ltd. Contract record no.: X2023110000073 Denomination of invention: Feature extraction, recommendation, and prediction methods, devices, media, and equipment Granted publication date: 20200811 License type: Common License Record date: 20230531 |