CN113536097B - 基于自动特征分组的推荐方法及装置 - Google Patents
基于自动特征分组的推荐方法及装置 Download PDFInfo
- Publication number
- CN113536097B CN113536097B CN202010294506.3A CN202010294506A CN113536097B CN 113536097 B CN113536097 B CN 113536097B CN 202010294506 A CN202010294506 A CN 202010294506A CN 113536097 B CN113536097 B CN 113536097B
- Authority
- CN
- China
- Prior art keywords
- feature
- interaction
- candidate recommended
- order
- recommended object
- 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
- 238000000034 method Methods 0.000 title claims abstract description 96
- 230000003993 interaction Effects 0.000 claims abstract description 1146
- 239000013598 vector Substances 0.000 claims description 154
- 238000012549 training Methods 0.000 claims description 86
- 238000009826 distribution Methods 0.000 claims description 60
- 238000004364 calculation method Methods 0.000 claims description 59
- 238000003062 neural network model Methods 0.000 claims description 48
- 238000013528 artificial neural network Methods 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 19
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000002452 interceptive effect Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 18
- 210000002569 neuron Anatomy 0.000 description 18
- 230000008569 process Effects 0.000 description 12
- 230000006399 behavior Effects 0.000 description 10
- 238000009827 uniform distribution Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
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/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
- G06F18/2113—Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- 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
-
- 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/042—Knowledge-based neural networks; Logical representations of neural networks
-
- 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/0499—Feedforward networks
-
- 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/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0242—Determining effectiveness of advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/045—Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了人工智能领域的一种基于自动特征分组的推荐方法,包括:获取多个候选推荐对象及其中每个候选推荐对象的多个关联特征;对每个候选推荐对象的多个关联特征进行多阶自动特征分组,得到每个候选推荐对象的多阶特征交互集合;根据每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值;根据每个候选推荐对象的交互特征贡献值计算得到每个候选推荐对象的预测分数;将预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象。本申请的推荐方法适用于各种推荐相关的应用场景。采用本申请实施例有利于提高推荐效率和准确率。
Description
技术领域
本申请涉及人工智能领域,尤其涉及一种基于自动特征分组的推荐方法及装置。
背景技术
个性化推荐***通过对用户本身和用户行为信息的分析,达到对用户行为进行准确预测的目的。良好的推荐***不仅影响到用户体验,更同时直接影响企业的收益。因此用户行为预测具有重要的意义。
在所有的用户行为预测中,广告点击率预测是用户行为预测的一个重要场景。在广告点击率预测场景中,推荐***通过分析用户对广告的点击历史,在广告商提供的候选广告中预测用户点击每个广告的可能性,并向用户展示点击可能性最高的广告,以此提高广告点击率。广告点击历史数据通常会包含非常多的信息。这些信息属于不同类别,如用户年龄、性别,城市,星期,时间,IP地址等。我们将这些具体的信息称为特征,而这些特征各自的类别称为特征类。不同特征之间存在着复杂的交互关系。如何挖掘特征与特征之间的联系,就成为了提高个性化推荐***预测正确率的一个重要挑战。
现有模型对于离散特征之间交互的处理方法可以分为三类:
方法1、完全忽视特征交互,不在模型中对特征交互进行建模;方法2、对特征交互使用神经网络等模型进行隐式建模;方法3、对特征交互通过模型结构进行显式建模,其中,根据每个交互中涉及特征的个数分为以下两种:
方法3.1、显式二阶交互模型:枚举所有的两两交互,每个交互仅仅包含2个特征;
方法3.2、显式高阶交互模型:枚举所有的高阶交互,每个交互包含多于2个特征。
方法1完全忽视了特征之间的交互;方法2使用隐式神经网络建模的做法无法较好的解释特征之间的交互情况;方法3虽然对于不同阶的特征交互进行了显式建模,但两种方法3.1和3.2都是简单的枚举出当前阶所有的特征交互,这其中会存在两个问题:其一,并不是所有的特征交互是有用的,冗余的特征交互需要模型自动鉴别出来,这可能会对模型的优化产生副作用,从而降低模型的效果;其二,在高阶时,由于其组合个数过多,直接枚举对带来巨大的训练时间开销和存储开销。
发明内容
本申请实施例提供一种基于自动特征分组的推荐方法及装置。在本申请实施例的方案中,通过对候选推荐对象的关联特征进行自动特征分组和特征交互,能够自动地寻找重要的高阶交互信息,提高了推荐的精确性。
第一方面,本申请实施例提供一种基于自动特征分组的推荐方法,包括:
获取多个候选推荐对象及多个候选推荐对象中每个候选推荐对象的多个关联特征;对多个候选推荐对象中每个候选推荐对象的多个关联特征进行多阶自动特征分组,以得到每个候选推荐对象的多阶特征交互集合,多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的每阶特征交互集合包括一个或多个特征交互组,该一个或多个特征交互组中的每个特征交互组包括该候选推荐对象的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值;根据多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到每个候选推荐对象的预测分数;将多个候选推荐对象中,预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象。
其中,候选推荐对象可以为用户历史点击过的对象,或者是与用户历史点击对象相关的对象,比如应用市场中用户点击查看过的应用或者历史下载过的应用,再比如新闻资讯中用户点击查看的新闻资讯等。
可选地,上述非线性数学运算可以为向量内积、矩阵相乘或者是其他形式的非线性数学运算。
通过对候选推荐对象的多个关联特征进行自动特征分组,能够自动地寻找重要的高阶交互信息,再利用该交互信息来进行推荐,提高了推荐的精确性。
在一个可能的实施例中,根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特征贡献值,包括:
对于多个候选推荐对象中每个候选推荐对象的多阶特征交互集合:
根据第k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到每个特征交互组第k阶的交互结果;根据每个候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到每个候选推荐对象的交互特性贡献值。
在一个可能的实施例中,根据第k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果,包括:
将第k阶特征交互集合中每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到该特征交互组第k阶的交互结果。
在一个可能的实施例中,根据第k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到该特征交互组第k阶的交互结果,包括:
对第k阶特征交互集合中每个特征交互组执行如下步骤:
获取特征交互组内每个关联特征的特征向量及该特征向量对应的权重;将该特征交互组内每个关联特征的特征向量及其对应的权重进行加权求和得到确定该特征交互组的特征值;根据该特征交互组内每个关联特征的特征向量及该特征向量对应的权重和特征交互组的特征值确定该特征交互组第k阶的交互结果。
可选地,k阶特征交互集合中第j个特征交互组的交互结果可表示为:
其中, 为/>的特征值,/>为k阶特征交互集合中第j个特征交互组,fi为候选推荐对象A的多个关联特征中第i个关联特征,ei是fi对应的维度为m的特征向量,/>为ei在第k阶特征交互集合的第j个特征交互组的权重,Rm为关联特征对应的m维的特征向量的集合。
其中,对于特征向量v的k次方操作(v)k定义为先对特征向量的每个数进行k次方的操作,得到每个数的k次方结果,然后再将所有数的k次方结果相加得到一个实数值。
通过上述设计的交互函数使得任何指定特征交互组都能生成给定阶的特征交互,该交互函数的实现高效和简单,并能够在不同的推荐任务中得到推广。
在一个可能的实施例中,根据候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象的交互特性贡献值,包括:
根据每个候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将候选推荐对象的交互特征向量输入到神经网络模型中进行计算,以得到该候选推荐对象的交互特性贡献值;其中,神经网络模型是基于全连接神经网络得到的。
通过神经网络模型对交互特征向量的进行进一步处理,能够挖掘出关联特征中潜在的难以发觉的特征交互信息,从而进一步提升推荐的精确性。
在一个可能的实施例中,对多个候选推荐对象中每个候选推荐对象的多个关联特征进行多阶自动特征分组,以得到每个候选推荐对象的多阶特征交互集合,包括:
将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合。
进一步地,将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合
对于每个候选推荐对象的第k阶特征交互,获取每个候选推荐对象的多个关联特征中的每个关联特征的分配概率,该候选推荐对象的多个关联特征中每个关联特征的分配概率为该关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据每个候选推荐对象的多个关联特征中的每个关联特征的分配概率获取每个候选推荐对象的第k阶特征交互集合。
其中,上述关联特征被分配到第k阶特征交互集合中第j个特征交互组中均匀分布、正态分布或者均方分布等,因此该关联特征的分配概率可以基于均匀分布、正态分布或者均方分布概率函数得到。
在此需要说明的是,由于基于关联特征的分配概率对该关联特征进行分组操作是一个离散过程,因此为了使该分组操作连续化,对关联特征的分配概率进行处理,得到处理后的概率,即分配值,再基于该分配值对该关联特征进行分组。
具体地,根据候选推荐对象的多个关联特征中的每个关联特征的分配概率获取候选推荐对象的第k阶特征交互集合,包括:
根据候选推荐对象的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值,该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于预设阈值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
可选地,对关联特征的分配概率进行处理的方式可以为:Gumbel-softmax操作,当然可以为其他操作。其中,分配值可通过以下来表示:
其中,α0表示不将候选推荐对象A的多个关联特征中的第i个关联特征分到第k阶特征交互集合中的第j个特征交互组中的概率,α0表示将候选推荐对象A的多个关联特征中的第i个关联特征分到第k阶特征交互集合中的第j个特征交互组中的概率;Go是服从Gumbel分布的随机数。根据/>和/>的大小关系确定是否将上述第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组。在/>和/>中,与/>之和为1,若/>较大,则选择不将多个关联特征中的第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中,若/>较大,则选择将第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中。
其中,为上述分配值。可选地,当/>大于预设阈值时,选择将第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中;当/>不大于预设阈值时,选择不将第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中。
上述预设阈值可以为0.5,0.6,0.7或者其他值,优先选择0.5。
其中,Go=-log-logu,其中u可以服从均匀分布,还可以服从均方分布或者正态分布。
通过对关联特征进行自动特征分组,能够自动地寻找重要的高阶交互信息,基于该高阶交互信息进行推荐,可提高推荐对象的精确性。
第二方面,本申请实施例提供一种基于预测模型的训练方法,包括:
获取训练样本数据,该训练样本数据包括多个候选推荐对象样本及用户点击的推荐对象样本;并获取多个候选推荐对象样本中每个候选推荐样本的多个关联特征;将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合;多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合中每阶特征交互集合包括一个或多个特征交互组,该一个或多个特征交互组中每个特征交互组包括候选推荐对象样本B的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值;根据多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到每个候选推荐对象的预测分数;根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他形式的非线性数学运算。
其中,多个候选推荐对象样本可以是在训练时专用的训练数据,也可以是在进行历史推荐时的候选推荐对象样本。
通过自动特征分组,能够在训练时自动地寻找重要的高阶交互信息,从而减少训练时的优化难度,大幅度提升预测模型的精度。
在一个可行的实施中,将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值,包括:
对于每个候选推荐对象样本的多阶特征交互集合,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果;第k阶特征交互集合为候选推荐对象样本的多阶特征交互集合中的任一阶特征交互集合;根据候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本的交互特性贡献值。
在一个可行的实施中,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果,包括:
对第k阶特征交互集合中的每个特征交互组执行如下步骤:
获取每个特征交互组内每个关联特征的特征向量及该特征向量对应的权重;将该特征交互组内每个关联特征的特征向量与该特征向量对应的权重进行加权求和得到该特征交互组的特征值;根据该特征交互组内每个关联特征的特征向量及其对应的权重和该特征交互组的特征值确定该特征交互组第k阶的交互结果。
在一个可行的实施中,根据候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本的交互特性贡献值,包括:
根据每个候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到候选推荐对象样本的交互特性贡献值,其中,神经网络模型是基于全连接神经网络得到的。
通过神经网络模型对交互特征向量的进行进一步处理,能够挖掘出关联特征中潜在的难以发觉的特征交互信息,从而进一步提升推荐的精确性。
在一个可行的实施中,根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型,包括:
根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型、特征交互模型中的参数和神经网络中的参数分别进行调整,以得到调整后的自动特征分组模型、调整后的特征交互模型和调整后的神经网络模型。
在一个可行的实施中,将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到自动特征分组模型中进行多阶自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合,包括:
对于每个候选推荐对象样本的第k阶特征交互,获取候选推荐对象样本的多个关联特征中的每个关联特征的分配概率,候选推荐对象样本的多个关联特征中每个关联特征的分配概率为该关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本的第k阶特征交互集合。
在一个可行的实施中,根据候选推荐对象样本的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本的第k阶特征交互集合,包括:
根据候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值,该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于预设阈值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
第三方面,本申请实施例提供一种基于自动特征分组的推荐装置,包括:
获取单元,用于获取多个候选推荐对象及多个候选推荐对象中每个候选推荐对象的多个关联特征;
自动特征分组单元,用于对多个候选推荐对象中每个候选推荐对象的多个关联特征进行自动特征分组,以得到每个候选推荐对象的多阶特征交互集合,多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的每阶特征交互集合包括一个或多个特征交互组,一个或多个特征交互组中的每个特征交互组包括该候选推荐对象的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;
计算单元,用于根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值;并根据多个候选推荐对象中每个候选推荐对象的交互特性贡献值计算得到每个候选推荐对象的预测分数;
确定单元,用于将多个候选对象中,预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象。
在一个可行的实施例中,在根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值的方面,计算单元具体用于:
对于多个候选推荐对象中的每个候选推荐对象的多阶特征交互集合:
根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果;根据每个候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到每个候选推荐对象的交互特性贡献值。
在一个可行的实施例中,在根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果的方面,计算单元具体用于:
将k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到每个特征交互组第k阶的交互结果。
在一个可行的实施例中,在将k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到每个特征交互组第k阶的交互结果的方面,计算单元用于:
对第k阶特征交互集合中每个特征交互组执行如下步骤:
获取每个特征交互组内每个关联特征的特征向量及该特征向量对应的权重;将该特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到该特征交互组的特征值;根据该特征交互组内每个关联特征的特征向量及该特征向量对应的权重和该特征交互组的特征值确定该特征交互组第k阶的交互结果。
在一个可行的实施例中,在根据候选推荐对象A的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象A的交互特性贡献值的方面,计算单元用于:
根据每个候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到该候选推荐对象的交互特性贡献值;其中,神经网络模型是基于全连接神经网络得到的。
在一个可行的实施例中,自动特征分组单元具体用于:
将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合。
具体地,自动特征分组单元具体用于:
对于每个候选推荐对象的第k阶特征交互,获取每个候选推荐对象A的多个关联特征中的每个关联特征的分配概率,该候选推荐对象的多个关联特征中每个关联特征的分配概率为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据每个候选推荐对象的多个关联特征中的每个关联特征的分配概率获取每个候选推荐对象A的第k阶特征交互集合。
进一步地,在根据候选推荐对象的多个关联特征中的每个关联特征的分配概率获取候选推荐对象A的第k阶特征交互集合的方面,自动特征分组单元具体用于:
根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值;该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于;,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他非线性数学运算。
第四方面,本申请实施例提供一种预测模型训练设备,包括:
获取单元,用于获取训练样本数据,该训练样本数据包括多个候选推荐对象样本及用户点击的推荐对象样本;并获取多个候选推荐对象样本中每个候选推荐样本的多个关联特征;
自动特征分组单元,用于将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合;多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合中每阶特征交互集合包括一个或多个特征交互组,一个或多个特征交互组中每个特征交互组包括候选推荐对象样本的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;
计算单元,用于将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值;并根据多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到每个候选推荐对象的预测分数;
调整单元,用于根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他非线性数学运算。
在一个可行的实施例中,在将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值的方面,计算单元具体用于:
对于每个候选推荐对象样本的多阶特征交互集合,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果;第k阶特征交互集合为候选推荐对象样本的多阶特征交互集合中的任一阶特征交互集合;根据候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本B的交互特性贡献值。
在一个可行的实施例中,在根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果的方面,计算单元具体用于:
对第k阶特征交互集合中的每个特征交互组执行如下步骤:
获取每特征交互组内每个关联特征的特征向量及该特征向量对应的权重;将该特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到该特征交互组的特征值;根据该特征交互组内每个关联特征的特征向量及该特征向量对应的权重和该特征交互组的特征值确定该特征交互组第k阶的交互结果。
在一个可行的实施例中,在根据候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本的交互特性贡献值的方面,计算单元具体用于:
根据每个候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到候选推荐对象样本的交互特性贡献值,其中,神经网络模型是基于全连接神经网络得到的。
在一个可行的实施例中,调整单元具体用于:
根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型、特征交互模型中的参数和神经网络中的参数分别进行调整,以得到调整后的自动特征分组模型、调整后的特征交互模型和调整后的神经网络模型。
可选地,自动特征分组单元具体用于:
对于每个候选推荐对象样本的第k阶特征交互,获取候选推荐对象样本的多个关联特征中的每个关联特征的分配概率,候选推荐对象样本的多个关联特征中每个关联特征的分配概率为该关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本的第k阶特征交互集合。
在一个可行的实施例中,根据候选推荐对象样本的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本的第k阶特征交互集合的方面,自动特征分组单元具体用于:
根据候选推荐对象样本的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值;该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于预设阈值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
第五方面,本申请实施例提供另一种基于自动特征分组的推荐装置,包括:
存储器,用于存储指令;以及
至少一台处理器,与所述存储器耦合;
其中,当所述至少一台处理器执行所述指令时,所述指令致使所述处理器执行如第一方面所述的部分或者全部方法。
第六方面,本申请实施例提供另一种预测模型的训练设备,包括:
存储器,用于存储指令;以及
至少一台处理器,与所述存储器耦合;
其中,当所述至少一台处理器执行所述指令时,所述指令致使所述处理器执行如第二方面所述的部分或者全部方法。
第七方面,本申请实施例提供一种芯片***,该芯片***应用于电子设备;所述芯片***包括一个或多个接口电路,以及一个或多个处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述电子设备执行如第一方面或者第二方面所述的部分或者全部方法。
第八方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如第一方面或第二方面所述的部分或者全部方法。
第九方面,本申请实施例提供一种计算机程序产品,包括计算机指令,当所述计算机指令在推荐装置上运行时,使得所述推荐装置执行如第一方面或第二方面所述的部分或者全部方法。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种推荐***架构示意图;
图1b为本申请实施例提供的另一种推荐***架构的示意图;
图1c为本申请实施例提供的另一种推荐***架构的示意图;
图2为本申请实施例提供的一种基于自动特征分组的推荐方法的流程示意图;
图3为一种神经网络模型示意图;
图4为本申请实施例提供的一种推荐装置的结构示意图;
图5为本申请实施例提供的另一种推荐装置的结构示意图;
图6为本申请实施例提供的一种预测模型训练方法的流程示意图;
图7为本申请实施例提供的另一种推荐装置的结构示意图;
图8为本申请实施例提供的一种预测模型训练设备的结构示意图;
图9为本申请实施例提供的另一种推荐装置的结构示意图;
图10为本申请实施例提供的另一种预测模型训练设备的结构示意图。
具体实施方式
首先需要说明的是,本申请中“对多个对象(比如说M个对象)中的每个对象进行第一操作”与“对多个对象中的第j个对象进行第一操作,其中,j=1,2,…,M”两者所表达的意思相同。
下面结合附图对本申请的实施例进行描述。
参见图1a,图1a为本申请实施例提供的一种推荐***的架构示意图。如图1a所示,该推荐***包括预测模型、学习模块和日志数据库。
每当用户触发一个请求,推荐***会将该请求以及对应的信息输入到预测模型中。预测模型会根据输入的各个特征对用户行为进行预测,并给出每个行为的预测分数,推荐***会根据预测分数找到用户最有可能的行为并进行推荐。同时用户的实际行为(比如点击推荐对象或者未点击推荐对象)会存入到日志数据库中作为训练数据,通过学习模块不断更新预测模型的参数,提高模型的预测效果。本申请对应于推荐***的预测模型部分。
比如用户打开手机应用市场就会触发应用市场给出推荐应用,应用市场就会根据用户历史的下载记录,应用自身特征,时间、地点等环境特征等等信息,预测用户下载给定的各个候选应用的可能性。根据计算得到的结果可以将用户最可能下载的应用展示出来,以供用户下载,从而达到提高应用的下载率的效果。而用户的每次点击也会存入日志并通过学习模块对预测模型的参数进行训练与更新。
参见附图1b,本申请实施例提供了另一种推荐***架构100。数据采集设备150用于从网络中采集多个训练样本数据和训练样本数据的多个关联特征并存入数据库130,其中,每个训练样本数据包括多个推荐对象样本及用户点击的推荐对象样本;训练设备120基于数据库130中维护的训练样本数据及其多个关联特征训练得到预测模型101。计算模块111根据预测模型101得到候选推荐对象的预测分数,预测分数越高,候选推荐对象被用户点击的可能性越高;然后基于预测分数判断是否向用户推荐上述候选推荐对象。下面将更详细地描述训练设备120如何基于训练样本数据及其多个关联特征得到预测模型101。
其中,预测模型包括自动特征分组模型、特征交互模型、神经网络模型和预测整合模型,训练设备120通过自动特征分组模型对多个候选推荐对象样本中的每个候选推荐对象样本的多个关联特征进行分组,得到该候选推荐对象样本的多阶特征交互集合,多阶特征交互集合中每阶特征交互集合中包括一个或多个特征交互组,每个特征交互组中包括该候选推荐对象样本的多个关联特征中的至少一个;训练设备120通过特征交互模型对多个候选推荐对象样本中的每个候选推荐对象样本对的多阶特征交互集合中的特征交互组内的多个关联特征进行交互,以得到该候选推荐对象样本的交互特征向量;训练设备120通过神经网络模型对输入的每个候选推荐对象样本的特征交互向量进行计算得到该候选推荐对象样本的交互特性贡献值,训练设备120通过预测整合模型和交互特征贡献值得到上述每个候选推荐对象样本的预测分数。
在训练设备120对预测模型进行训练的过程中,按照上述过程,根据多个候选推荐对象样本中每个候选推荐对象样本的多个关联特征得到该候选推荐对象样本的预测分数,然后基于预测分数及用户点击的推荐对象样本调整预测模型中的各个参数,得到调整后的预测模型;按照上述过程循环往复多次,可得到最终的预测模型。
由于是对自动特征分组模型、特征交互模型、神经网络模型和预测整合模型同时进行训练,上述训练过程可以看成是一个联合训练的过程。
训练设备120得到的预测模型101可以应用不同的***或设备中。在附图1b中,执行设备110配置有I/O接口112,与外部设备进行数据交互,比如向用户设备140发送目标推荐对象,“用户”可以通过用户设备140向I/O接口112输出用户的反馈信息,该反馈信息为用户点击的推荐对象。
计算模块111使用预测模型101进行推荐。具体地,计算模块111获取多个推荐对象及其每个候选推荐对象的多个关联特征后,将每个候选推荐对象的多个关联特征输入到预测模型中进行计算,以得到该候选推荐对象的预测分数;再将预测分数中较高的一个或多个对应的候选推荐对象确定为目标推荐对象。
最后,若执行设备110确定向用户推荐上述目标推荐对象,则通过I/O接口112将目标推荐对象返回给用户设备140,以提供给用户。
更深层地,训练设备120可以针对不同的目标,基于不同的数据生成相应的预测模型101,以给用户提供更佳的结果。
在附图1b中所示情况下,用户可以在用户设备140查看执行设备110输出的目标推荐对象,具体的呈现形式可以是显示、声音、动作等具体方式。用户设备140也可以作为数据采集端将采集到训练样本数据存入数据库130。
值得注意的,附图1b仅是本申请实施例提供的一种***架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。
训练设备120从数据库130中获取采样得到一个或多个回合的推荐信息,该推荐信息包括目标推荐对象和用户反馈信息,并根据该一个或多个回合的推荐信息训练预测模型101。
在一个可能的实施例中,上述预测模型101的训练是离线进行的,即训练设备120和数据库独立于用户设备140和执行设备110;比如训练设备120是一个第三方服务器,在执行设备110在进行工作之前,从第三方服务器中获取上述预测模型101。
在一个可能的实施例中,上述训练设备120与执行设备110集成在一起的,且执行设备110置于用户设备140中的。
参见附图1c,本申请实施例提供了另一种推荐***架构示意图。如图1c所示,该推荐***架构包括用户设备210、推荐装置220和预测装置230。
当用户在触发一个推荐指令后,比如用户打开用户设备210上的应用商店,用户设备210向推荐装置220发送推荐请求。推荐装置220接收到推荐请求后,向预测装置230发送候选推荐对象,比如各种应用;预测装置230根据预测模型101获取各个应用的预测分数,并将各个应用的预测分数发送至推荐装置220;推荐装置230根据各个应用的预测分数向用户设备210发送推荐的应用。
用户设备210记录用户点击的应用,并将该应用通过推荐装置220反馈至预测装置230,或者直接反馈至预测装置230,预测装置230根据用户点击的应用及该应用的预测分数训练预测模型。
参见图2,图2为本申请实施例提供的一种基于自动特征分组的推荐方法的流程示意图。如图2所示,该方法包括:
S201、获取多个候选推荐对象及多个候选推荐对象中每个候选推荐对象的多个关联特征。
其中,比如候选推荐对象为用户历史点击过的对象,或者是与用户历史点击对象相关的对象。比如应用市场中,候选推荐对象为用户点击查看过的应用或者用户历史下载过的应用,或者与用户历史点击下载过的或者点击查看的应用的类型相同的应用。再比如新闻资讯中,候选推荐对象为用户点击查看的新闻资讯或者与用户点击查看过的新闻资讯的类型相同的新闻资讯。
候选推荐对象的关联特征包括候选推荐对象的属性,比如候选推荐对象为广告,则广告的属性包括广告类型、广告品牌、广告的展示地点和时间等;候选推荐对象的关联特征还可以包括用户的属性,比如用户的性别和年龄等信息。当然候选推荐对象的关联特征还包括其他相关信息,在此不再一一列举。
假设候选推荐对象为广告,则广告的关联特征可以包括展示广告的地点、时间和广告品牌;再比如候选推荐对象为新闻资讯,则新闻资讯的关联特征可以包括展示新闻资讯的地点、时间、新闻资讯简介、用户类型等。
举例说明,以两条简单的广告点击数据为例:
北京,周二,17:00,耐克
上海,周日,11:20,肯德基
北京、耐克等是具体的关联特征,而上海、北京为城市这一特征类下的具体特征。上述数据分别表示广告展示的地点、星期、时间、广告品牌。因此第二行展示了在周日上午11:20向上海的一位用户推送了一次肯德基广告。
在此需要说明的是,候选推荐对象及其多个关联特征可以是从推荐装置的日志数据库中获取的,还可以是从用户终端中获取的。
采用这些数据按照图1b所述的方式对预测模型进行训练。
S202、对多个候选推荐对象的每个候选推荐对象的多个关联特征进行自动特征分组,以得到该候选推荐对象的多阶特征交互集合。
其中,上述多个候选推荐对象中任一个候选推荐对象A的多阶特征交互集合中的每阶特征交互集合包括一个或多个特征交互组,该一个或多个特征交互组中的每个特征交互组包括上述候选推荐对象A的多个关联特征中的至少一个。
在此需要说明的是,多阶特征交互集合中k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数。
可选地,在一个可行的实施例中,对多个候选推荐对象中每个候选推荐对象的多个关联特征进行自动特征分组,以得到该候选推荐对象的多阶特征交互集合,包括:
将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合。
具体地,将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合,具体包括:
对于候选推荐对象A的第k阶特征交互,获取候选推荐对象A的多个关联特征中的每个关联特征的分配概率,候选推荐对象A的多个关联特征中的每个关联特征的分配概率为该关联特征被分配到第k阶特征交互集合中第j个特征交互中的概率,第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象A的第k阶特征交互集合。
其中,上述关联特征被分配到第k阶特征交互集合中第j个特征交互组中均匀分布、正态分布或者均方分布等,因此该关联特征的分配概率可以基于均匀分布、正态分布或者均方分布概率函数得到。
在此需要说明的是,由于基于关联特征的分配概率对该关联特征进行分组操作是一个离散过程,因此为了使该分组操作连续化,对关联特征的分配概率进行处理,得到处理后的分配值,再基于分配值对该关联特征进行分组。
其中,上述关联特征被分配到第k阶特征交互集合中第j个特征交互组中均匀分布、正态分布或者均方分布等,因此该关联特征的分配概率可以基于均匀分布、正态分布或者均方分布概率函数得到。
在此需要说明的是,由于基于关联特征的分配概率对该关联特征进行分组操作是一个离散过程,因此为了使该分组操作连续化,对关联特征的分配概率进行处理,得到处理后的概率,即分配值,再基于分配值对该关联特征进行分组。
可选地,对关联特征的分配概率进行处理的方式可以为:Gumbel-softmax操作,当然可以为其他操作。其中,分配值可通过以下公式来表示:
其中,α0表示不将候选推荐对象A的多个关联特征中的第i个关联特征分到第k阶特征交互集合中的第j个特征交互组中的概率,α1表示将候选推荐对象A的多个关联特征中的第i个关联特征分到第k阶特征交互集合中的第j个特征交互组中的概率;Go是服从Gumbel分布的随机数。在训练过程中可以通过以下公式从均匀分布U(0,1)进行采样:
Go=-log-log u
其中u服从均匀分布U(0,1),在连续化分组操作后,将根据和/>的大小关系确定是否将上述第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组。在和/>中,/>与/>之和为1,若/>较大,则选择不将候选推荐对象的多个关联特征中的第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中,若较大,则选择将上述第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中。
其中,为上述分配值。可选地,当/>大于预设阈值时,选择将第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中;当/>不大于预设阈值时,选择不将第i个关联特征分配到第k阶特征交互集合中的第j个特征交互组中。
上述预设阈值可以为0.5,0.6,0.7或者其他值,优先选择0.5。
在此需要说明的是,上述公式可以看成自动特征分组模型。
经过对候选推荐对象A的多个关联特征进行自动特征分组后,在每一阶得到不同的特征交互组,如假设候选推荐对象A的多个关联特征包括:年龄,性别,小时,最近看过的电影,最近下载的视频,喜欢的明星,在第2阶的特征交互集合中,设定3个特征交互组,可能的分组结果如下所示:
特征交互组1:{年龄,性别,喜欢的明星}
特征交互组2:{小时,最近下载的视频,最近看过的电影}
特征交互组3:{喜欢的明星,最近看过的电影,年龄}。
S203、根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到该候选推荐对象的交互特征贡献值。
具体地,对于候选推荐对象A的多阶特征交互集合,根据多阶特征交互集合中的第k阶特征交互集合中的每个特征交互组的多个关联特征计算得到每个特征交互组第k阶的交互结果,所述第k阶特征交互集合为多阶特征交互集合中的任一阶;根据多阶特征交互集合中的特征交互组对应阶的特征交互结果计算得到交互特征贡献值。
可选地,根据多阶特征交互集合中的第k阶特征交互集合中的每个特征交互组的多个关联特征计算得到每个特征交互组的第k阶的交互结果可以具体包括:
将多阶特征交互集合中的第k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到该每个特征交互组的第k阶的交互结果。
具体地,将多阶特征交互集合中的第k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到该每个特征交互组第k阶的交互结果,包括:
获取第k阶特征交互集合中的第j个特征交互组内每个关联特征的特征向量及其对应的权重;第j个特征交互组为所述第k阶特征交互集合中的任一个特征交互组;根据第j个特征交互组内每个关联特征的特征向量及其对应的权重确定第j个特征交互组的特征值;根据第j个特征交互组内每个关联特征的特征向量及其对应的权重、和第j个特征交互组的特征值确定第j个特征交互组第k阶的交互结果。
可选地,上述第j个特征交互组第k阶的交互结果可表示为:
其中,为/>的特征值,/>为k阶特征交互集合中第j个特征交互组,fi为候选推荐对象A的多个关联特征中第i个关联特征,ei是fi对应的维度为m的特征向量,/>为ei在第k阶特征交互集合的第j个特征交互组的权重,Rm为关联特征对应的m维的特征向量的集合。
其中,对于特征向量v的k次方操作(v)k定义为先对特征向量的每个数进行k次方的操作,得到每个数的k次方结果,然后再将所有数的k次方结果相加得到一个实数值。
对于任意的特征分组,通过上述公式计算特征交互组内部特征的在给定阶的交互关系,如二阶特征交互集合中的某个特征交互组为{喜欢的明星,最近看过的电影,年龄},该特征交互组的特征值可表示为:
可以看出,上述特征交互组中的参与非线性数学运算的关联特征的个数为2,并且非线性数学运算为向量内积。
再比如,三阶特征交互集合中的某个特征交互组为{年龄,性别,喜欢的明星},则该特征交互组的特征值可表示为:
可以看出,上述特征交互组中的参与非线性数学运算的关联特征的个数为3,并且非线性数学运算为向量内积。
在获取候选推荐对象A的多阶特征交互集合中特征交互组对应阶的交互结果后,根据多阶特征交互集合中的特征交互组对应阶的交互结果获取候选推荐对象A的交互特征向量;将候选推荐对象A的交互特征向量输入到神经网络模型中进行计算,以得到交互特性贡献值;其中该神经网络模型是基于全连接神经网络得到的。
比如,候选推荐对象A有3阶特征交互集合,每阶特征交互集合包括2个特征交互组,其中1阶特征交互集合中2个特征交互组的特征值分别为和/>2阶特征交互集合中2个特征交互组的特征值分别为/>和/>3阶特征交互集合中2个特征交互组的特征值分别为/>和/>则3阶特征交互集合对应的交互特征向量为/>然后再将该交互特征向量/>输入到上述神经网络模型中进行计算,以得到候选推荐对象A的交互特性贡献值。
在获取候选推荐对象A的交互特性向量后,将该交互特性向量作为上述神经网络模型的输入,通过逐层计算各个神经元节点的数值,最终神经网络模型输出的为上述候选推荐对象的交互特性贡献值。
如图3所示,神经网络的输入层是整个网络的最底层,输出层是最上层。神经网络中每层神经元与相邻层的一个或者多个神经元相连,每条连边均包含一个权重和偏置。在计算时,神经网络从输入层开始从底层向上层计算,每个神经元由与之相连接的下一层神经元决定;每个相连的下层神经元对该神经元的贡献由下层神经元的数值乘以对应连边的权重后再加上偏置得到;所有下层神经元的贡献值求和后通过激活函数(通常是一个从全体实数映射到固定区间的非线性函数,保证每个神经元的数值在固定范围内)计算得到本层神经元的数值。重复上述过程直到计算得到输出层神经元的数值,该数值就是整个神经网络的输出。神经网络的输出就是上述特***互贡献值。
S204、根据多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到该候选推荐对象的预测分数,并将多个候选推荐对象中,预测分数较高的一个或多个候选推荐对象确定为目标推荐对象。
可选地,每个候选推荐对象的预测分数为该候选推荐对象的交互特性贡献值。
可选的,当上述k大于1时,上述候选推荐对象A的交互特征贡献值中未涵盖该候选推荐对象A的一阶特征交互信息,因此候选推荐对象A的预测分数可以是根据该候选推荐对象的交互特征贡献值和一阶贡献值进行加权求和得到的。
可选地,可以通过以下方式获取候选推荐对象A的一阶贡献值:
获取候选推荐对象A的多个关联特征中每个关联特征的ID;并根据候选推荐对象A的多个关联特征中每个关联特征的ID获取每个关联特征的贡献值;根据候选推荐对象A的多个关联特征中每个关联特征的贡献值及基准贡献值确定一阶贡献值;其中一阶贡献值为候选推荐对象A的多个关联特征的贡献值与基准贡献值之和。
具体地,在获取候选推荐对象A的多个关联特征后,对候选推荐对象A的多个关联特征进行ID化处理,以得到候选推荐对象A的多个关联特征中每个关联特征的ID,然后基于每个关联特征的ID确定该关联特征所对应的特征类别,并基于该关联特征对应的特征类别确定该关联特征所对应的贡献值;根据多个关联特征所对应多个贡献值和基准贡献值获取上述一阶贡献值。
根据一阶贡献值和交互特性贡献值确定候选推荐对象的预测分数,其中,候选推荐对象的预测分数可以是一阶贡献值和交互特性贡献值之和,也可以是一阶贡献值和交互特性贡献值加权之和,其中权重是预先设置。
比如预测分数=k1*一阶贡献值+k2*交互特性贡献值,该公式可以看成预测整合模型,其中,k1和k2为该预测模型中的参数。
按照上述方法,可以获取多个候选推荐对象中每个候选推荐对象的预测分数,再将该多个候选推荐对象中,预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象,并将该目标推荐对象推送至用户终端上。
可选地,在用户点击目标推荐对象中的一个时,用户终端将用户点击的推荐对象反馈至推荐装置,用于后续预测模型的训练。
通过利用自动机器学习的技术,将重要的关联特征放到对应特征交互组中,再单独对每个特征交互组使用设计的交互函数生成给定阶的特征值。本方法能够自动从关联特征中自动的寻找重要的特征组合,同时去除掉无用的特征组合,避免了现有技术中根据原始特征进行枚举得到给定阶交互的操作,简化了模型的参数复杂度。同时,相比于现有技术,本申请提出的交互函数能够非常高效的计算出每个特征交互组给定阶的特征值,使得可以应用在实际场景中。
对本申请的技术进行了线下实验,对比了现有的几种技术(逻辑回归(logisticregression,LR)技术,梯度提升决策树(gradient boosting decision tree,GBDT)技术,FM,FFM,AFM,DeepFM,IPNN,PIN,xDeepFM,FGCNN)。使用了三个公开数据集:Criteo数据集,Avazu数据集,iPinyou数据集。Criteo数据集包含了一个月的广告点击纪录,在本次实验中,选择了第6天的数据到作为训练集,第13天数据作为测试集,同时对负例进行降采样,使最终数据集中正负样本比为1:1;对于Avazu数据集,随机选取了公开数据集80%的数据作为训练集,剩下的20%为测试集,同时删除了数据样本中出现次数少于20的类别;iPinyou数据集本身较小且提供了训练集与测试集,因此在本次实验中可直接使用。选取业界公认的测试指标AUC和Logloss。经过测试,得到以下几个结论:
1、本申请在多个真实数据集上都取得了最好的实验结果,相比第二的FGCNN模型在AUC上均有0.07%-0.5%的提升。
2、从特征建模的角度进行分析,本申请的预测模型相比xDeepFM,PIN,FGCNN等业界最好的模型,能够自动从数据中选择重要的高阶特征组合,而非进行枚举,使得预测模型在训练和使用时能够专注优化选择的特征交互,提高模型的性能。同时本申请的预测模型相比其他模型在训练时能够缓和过拟合的现象。
可以看出,在本申请的方案中,通过自动特征分组,能够自动的寻找关联特征中重要的高阶交互信息,提高了推荐的精确性;通过设计的交互函数,使得任何指定分组都能生成给定阶的特征交互,该交互函数的实现高效和简单,并能够在不同的推荐任务中得到推广;通过神经网络对交互特征向量进行进一步处理,能够挖掘出关联特征中潜在的难以发掘的特征交互信息,进一步提升推荐的精确性。
在此需要指出的是,针对不同的推荐场景,比如新闻资讯,APP应用商店等,自动特征分组能够通过不同的技术方案进行实现,以实现特定的模型需求,提高模型的可拓展性。
参见图4,图4为本申请实施例提供的一种预测模型的训练方法的流程示意图。如图4所示,该方法包括:
S401、获取训练样本数据,该训练样本数据包括多个候选推荐对象样本及用户点击的推荐对象样本;并获取多个候选推荐对象样本中每个候选推荐样本的多个关联特征。
S402、将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合。
其中,多个候选推荐对象样本中任一个候选推荐对象样本B的多阶特征交互集合中每阶特征交互集合包括一个或多个特征交互组,该一个或多个特征交互组中每个特征交互组包括候选推荐对象样本B的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他形式的非线性数学运算。
其中,多个候选推荐对象样本可以是在训练时专用的训练数据,也可以是在进行历史推荐时的候选推荐对象样本。
可选地,将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到自动特征分组模型中进行多阶自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合,包括:
对于候选推荐对象样本B的第k阶特征交互,获取候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率,候选推荐对象样本B的多个关联特征中每个关联特征的分配概率为该关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本B的第k阶特征交互集合。
进一步地,根据候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本B的第k阶特征交互集合,包括:
根据候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值,该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于预设阈值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
S403、将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值。
可选地,在一个可行的实施中,将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值,包括:
对于候选推荐对象样本B的多阶特征交互集合,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果;第k阶特征交互集合为候选推荐对象样本B的多阶特征交互集合中的任一阶特征交互集合;根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本B的交互特性贡献值。
可选地,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果,包括:
获取第k阶特征交互集合中的第j个特征交互组内每个关联特征的特征向量及其对应的权重;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;将第j个特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到第j个特征交互组的特征值;根据第j个特征交互组内每个关联特征的特征向量及其对应的权重和第j个特征交互组的特征值确定第j个特征交互组第k阶的交互结果。
可选地,根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本B的交互特性贡献值,包括:
根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到候选推荐对象样本B的交互特性贡献值,其中,神经网络模型是基于全连接神经网络得到的。
S404、根据多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到每个候选推荐对象的预测分数。
S405、根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型。
可选地,根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型,包括:
根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型、特征交互模型中的参数和神经网络中的参数分别进行调整,以得到调整后的自动特征分组模型、调整后的特征交互模型和调整后的神经网络模型。
在此需要说明的是,步骤S402-S404的具体描述可参见步骤S202-S204的相关描述,在此不再叙述。
参见图5,图5为本申请实施例提供的一种基于自动特征分组的推荐装置的结构示意图。如图5所示,该推荐装置500包括:
数据生成模块501,用于根据从日志中获得推荐对象,同时采集预测时刻的环境信息,按照预先定义的格式提取各个关联特征,并得到关联特征的ID。
宽度模型模块502:根据数据生成模块501给出的关联特征及ID,获取每个关联特征的贡献值和基准贡献值;然后将每个关联特征的贡献值以及基准贡献值相加,得到一阶贡献值。
特征交互模块503:该模块功能有两个:自动特征分组和特征交互;自动特征分组:将数据生成模块501给出的候选推荐对象的多个关联特征,分配到每阶特征交互集合的特征交互组中;特征交互:会基于设计好的交互函数,生成每阶特征交互集合的特征交互组的特征值;
神经网络模块504:将特征交互模块503生成的特征交互组的特征值输入到多层神经网络中,计算得到交互特性贡献值。
预测结果整合模块505:该模块分别接受来自宽度模型模块502输出的第一贡献值以及神经网络模块504的输出交互特性贡献值,将两者根据权重相加,输出最终的预测分数。
具体地,如图6所示,
数据生成模块501在接收到预测请求后,从日志文件中抽取候选推荐对象的关联特征,比如对应用户与广告的特征数据以及环境特征数据。对所有关联特征均进行ID化处理,得到在各自的特征类别中拥有唯一的ID。所有关联特征ID根据预先定义好的特征顺序(如第一个特征指星期,第二个特征指地点等)进行排列,组合生成一个特征ID序列,以满足宽度模型模块502和特征交互模块503输入需求。
宽度模型模块502预先根据历史数据在学习模块的训练下得到的并存储了所有关联特征对于预测结果的贡献值;同时宽度模型模块502还存储了基准贡献值。宽度模型模块502在接收到数据生成模块501生成的特征ID序列后,根据特征ID在整个序列中的位置确定ID对应的特征类别,并根据对应的特征类别找到ID代表的特征所对应的贡献值。然后宽度模型模块502将基于ID序列索引得到的关联特征的贡献值及基准贡献值求和,得到一阶贡献值。
特征交互模块503,利用AutoML技术对关联特征进行自动特征分组,为每一阶找到重要的特征交互组;再根据交互函数,每一阶特征交互组的特征值;然后基于每一阶特征交互组的特征值得到交互特性向量。
在此需要说明的是,特征交互模块503的具体执行步骤可参见上述步骤S202和S203的相关描述,在此不再叙述。
神经网络模型504,将特征交互模块503输出的交互特性向量输入到训练好的多层神经网络进行计算,以得到交互特征贡献值。该神经网络模型是基于全连接神经网络得到的。
预测结果整合模块505,根据权重对宽度模型模块502输出的一阶贡献值和神经网络模块504输出的特征交互贡献值进行加权求和,以得到预测分数。
在一个具体的应用场景中,以推荐广告为例进行说明。
为了简化场景,将候选推荐对象的关联特征的数量减少到5个,分别是广告、广告类别、用户、城市以及时间,而本申请的输出就是用户点击广告行为的预测分数,该预测分越高时,则向用户推荐该广告的可能性越高。
假定广告特征对应的ID为7,广告类别对应的ID为12,用户对应的ID为35,城市对应的ID为48,,时间对应的ID为8,则经过数据生成模块501之后,生成的ID序列为7,12,35,48,8。
宽度模型模块502根据得到的ID序列,首先从存储数据中索引出广告ID为7、广告类型ID为12、用户ID为35、城市ID为48以及时间ID为8分别对应的贡献值c0,7,c1,12,c2,35,c3,48以及c4,8。这里的下标第一位表示特征的类别,即特征在ID序列中的位置,而第二位则表示特征在具体特征类别中的ID号。不同类别的特征可以有相同的ID号,相同类别的不同特征ID则互不相同且唯一。除了每个特征对应的贡献值以外,宽度模型模块502还存储着基准贡献值cg。最终宽度模型模块502的输出(即一阶贡献值)为:
out502=c0,7+c1,12+c2,35+c3,48+c4,8
特征交互模块503处理过程:首先根据将5个关联特征,将其分到每一阶的不同的特征交互组中,如下:
·一阶的特征交互组为{广告,广告类型},{用户,城市}
·二阶的特征交互组为{广告,广告类型,用户},{城市,广告};
·三阶的特征交互组为:{广告,广告类型,用户},{广告,用户,城市}。
在得到分组后,从存储数据中索引出广告ID为7、广告类型ID为12、用户ID为35、城市ID为48以及时间ID为8的特征对应的特征向量e0,7,e1,12,e2,35,e3,48和e4,8。这里的下标含义与宽度模型模块502中类似。随后,将特征向量,映射到对应每一阶的特征分组中:
·一阶:{e0,7,e1,12},{e2,35,e3,48}
·二阶:{e0,7,e1,12,e2,35},{e3,48,e0,7};
·三阶:{e0,7,e1,12,e2,35},{e0,7,e2,35,e3,48}。
根据以下公式计算得到每一阶的不同特征交互组的交互结果:
其中,为第k阶的第j个特征交互组的交互结果,/>为第k阶的第j个特征交互组的特征值,/>为第k阶特征交互集合中的第j个特征交互组,fi为上述5个关联特征中的第i个特征,ei为fi对应的维度为m的向量,/>为ei在/>中的权重。
按照上述公式,可得到每一阶中每个特征交互组的交互结果,比如第一阶的第1个特征交互组的交互结果为:第二阶的第1个特征交互组的交互结果为:第三阶的第1个特征交互组的交互结果为;/>
在此需要说明的是,对于一阶的特征交互组,其交互结果是一个向量,而对于二阶及更高阶的特征交互组,其对应的交互结果是一个值。
最终特征交互模块503将不同阶的特征交互组的交互结果拼接成一个向量:
向量Vfeature可称为交互特征向量。在得到交互特性向量Vfeature之后,将该向量输入到神经网络模型模块504中;
神经网络模块504会根据训练得到的神经网络模型对交互特性向量进行计算,以得到特征交互贡献值。具体地,训练好的神经网络模型是指训练的神经网络中的权重和偏置,根据训练好的权重和偏置逐层计算,最终计算得到输出层的神经元数值为特征交互贡献值。
如果用rh来表示第h层的神经元,Wh为第h层神经元与第h+1层神经元连边的权重,bh为对应连边的偏置,A为激活函数,那么神经网络第h层的神经元计算公式如下:
rh+1=A(Whrh+bh)
如果神经网络共有H层,那么最终输出层的神经元数值就是特征交互贡献值,也就是神经网络模块504的输出:
out504=rH=A(WH-1rH-1+bH-1)
预测结果整合模块505处理过程:在获取宽度模型模块502的输出结果out502以及神经网络模块504的输出结果out504后,根据预先训练得到的权重k502,k504对两个模块的输出结果进行加权求和,得到对城市48的用户35在时刻8对广告类型12的广告7的点击的预测分数:
p=out502*k502+out504*k504
最后可根据预测分数确定是否向用户推荐广告类型12的广告7,或者根据预测分数确定是否向城市48的用户35在时刻8推荐广告类型12的广告7。
参见图7,图7为本申请实施例提供的另一种基于自动特征分组的推荐装置的结构示意图。如图7所示,该推荐装置700包括:
获取单元701,用于获取多个候选推荐对象及多个候选推荐对象中每个候选推荐对象的多个关联特征;
自动特征分组单元702,用于对多个候选推荐对象中每个候选推荐对象的多个关联特征进行自动特征分组,以得到每个候选推荐对象的多阶特征交互集合,多个候选推荐对象中任一个候选推荐对象A的多阶特征交互集合中的每阶特征交互集合包括一个或多个特征交互组,一个或多个特征交互组中的每个特征交互组包括候选推荐对象A的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;
计算单元703,用于根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值;并根据多个候选推荐对象中每个候选推荐对象的交互特性贡献值计算得到每个候选推荐对象的预测分数;
确定单元704,用于将多个候选对象中,预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象。
在一个可行的实施例中,在根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值的方面,计算单元703具体用于:
对于候选推荐对象A的多阶特征交互集合,根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果;根据多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象A的交互特性贡献值。
在一个可行的实施例中,在根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果的方面,计算单元703具体用于:
将k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到每个特征交互组第k阶的交互结果。
在一个可行的实施例中,在将k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到每个特征交互组第k阶的交互结果的方面,计算单元703用于:
获取第k阶特征交互集合中的第j个特征交互组内每个关联特征的特征向量及其对应的权重;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;将第j个特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到第j个特征交互组的特征值;根据第j个特征交互组内每个关联特征的特征向量及其对应的权重、和第j个特征交互组的特征值确定第j个特征交互组第k阶的交互结果。
在一个可行的实施例中,在根据候选推荐对象A的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象A的交互特性贡献值的方面,计算单元703用于:
根据候选推荐对象A的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到候选推荐对象A的交互特性贡献值;其中,神经网络模型是基于全连接神经网络得到的。
在一个可行的实施例中,自动特征分组单元702具体用于:
将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合。
具体地,自动特征分组单元702具体用于:
对于候选推荐对象A的第k阶特征交互,获取候选推荐对象A的多个关联特征中的每个关联特征的分配概率,候选推荐对象A的多个关联特征中每个关联特征的分配概率为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象A的第k阶特征交互集合。
进一步地,在根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象A的第k阶特征交互集合的方面,自动特征分组单元702具体用于:
根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值,该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于预设阈值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他非线性数学运算。
需要说明的是,上述各单元(获取单元701、自动特征分组单元702、计算单元703和确定单元704)用于执行上述步骤S201-S204所示方法的相关内容。
在本实施例中,推荐装置700是以单元的形式来呈现。这里的“单元”可以指特定专用集成电路(application-specific integrated circuit,ASIC),执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。此外,以上推荐装置700中的获取单元701、自动特征分组单元702、计算单元703和确定单元704可通过图9所示的推荐装置的处理器900来实现。
参见图8,图8为本申请实施例提供的一种预测模型的训练设备的结构示意图。如图8所示,该训练设备800包括:
获取单元801,用于获取训练样本数据,该训练样本数据包括多个候选推荐对象样本及用户点击的推荐对象样本;并获取多个候选推荐对象样本中每个候选推荐样本的多个关联特征;
自动特征分组单元802,用于将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合;多个候选推荐对象样本中任一个候选推荐对象样本B的多阶特征交互集合中每阶特征交互集合包括一个或多个特征交互组,一个或多个特征交互组中每个特征交互组包括候选推荐对象样本B的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;
计算单元803,用于将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值;并根据多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到每个候选推荐对象的预测分数;
调整单元804,用于根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他非线性数学运算。
在一个可行的实施例中,在将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值的方面,计算单元803具体用于:
对于候选推荐对象样本B的多阶特征交互集合,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果;第k阶特征交互集合为候选推荐对象样本B的多阶特征交互集合中的任一阶特征交互集合;根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本B的交互特性贡献值。
在一个可行的实施例中,在根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果的方面,计算单元803具体用于:
获取第k阶特征交互集合中的第j个特征交互组内每个关联特征的特征向量及其对应的权重;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;将第j个特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到第j个特征交互组的特征值;根据第j个特征交互组内每个关联特征的特征向量及其对应的权重、和第j个特征交互组的特征值确定第j个特征交互组第k阶的交互结果。
在一个可行的实施例中,在根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本B的交互特性贡献值的方面,计算单元803具体用于:
根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到候选推荐对象样本B的交互特性贡献值,其中,神经网络模型是基于全连接神经网络得到的。
在一个可行的实施例中,调整单元804具体用于:
根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型、特征交互模型中的参数和神经网络中的参数分别进行调整,以得到调整后的自动特征分组模型、调整后的特征交互模型和调整后的神经网络模型。
可选地,自动特征分组单元802具体用于:
对于候选推荐对象样本B的第k阶特征交互,获取候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率,候选推荐对象样本B的多个关联特征中每个关联特征的分配概率为该关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本B的第k阶特征交互集合。
在一个可行的实施例中,根据候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本B的第k阶特征交互集合的方面,自动特征分组单元802具体用于:
根据候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值,该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于预设阈值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
需要说明的是,上述各单元(获取单元801、自动特征分组单元802、计算单元803和调整单元804)用于执行上述步骤S401-S405所示方法的相关内容。
在本实施例中,训练设备700是以单元的形式来呈现。这里的“单元”可以指特定专用集成电路(application-specific integrated circuit,ASIC),执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。此外,以上训练设备700中的获取单元801、自动特征分组单元802、计算单元803和调整单元804可通过图10所示的训练设备的处理器1000来实现。
如图9所示的推荐装置可以以图9中的结构来实现,该推荐装置包括至少一个处理器901,至少一个存储器902以及至少一个通信接口903。处理器901、存储902和通信接口903通过通信总线连接并完成相互间的通信。
通信接口903,用于与其他设备或通信网络通信,如以太网,无线接入网(radioaccess network,RAN),无线局域网(wireless local area networks,WLAN)等。
存储器902可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,所述存储器902用于存储执行以上方案的应用程序代码,并由处理器901来控制执行。所述处理器901用于执行所述存储器902中存储的应用程序代码。
存储器902存储的代码可执行以上提供的一种基于自动特征分组的推荐方法。
处理器901还可以采用或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的基于自动特征分组的推荐方法。
处理器901还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的推荐方法的各个步骤可以通过处理器901中的硬件的集成逻辑电路或者软件形式的指令完成。在实现过程中,本申请的状态生成模型和选择策略的训练方法的各个步骤可以通过处理器901中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器901还可以是通用处理器、数字信号处理器(digital signal processing,DSP)、ASIC、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及模块框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器902,处理器901读取存储器902中的信息,结合其硬件完成本申请实施例的推荐方法或模型训练方法。
通信接口903使用例如但不限于收发器一类的收发装置,来实现推荐装置或训练装置与其他设备或通信网络之间的通信。例如,可以通过通信接口903获取推荐相关数据或训练数据,或者向用户设备发送推荐对象及接收用户针对推荐对象的反馈信息。
总线可包括在装置各个部件(例如,存储器902、处理器901、通信接口903)之间传送信息的通路。在一种可能的实施例中,处理器901具体执行以下步骤:
获取多个候选推荐对象及多个候选推荐对象中每个候选推荐对象的多个关联特征;对多个候选推荐对象中每个候选推荐对象的多个关联特征进行自动特征分组,以得到每个候选推荐对象的多阶特征交互集合,多个候选推荐对象中任一个候选推荐对象A的多阶特征交互集合中的每阶特征交互集合包括一个或多个特征交互组,一个或多个特征交互组中的每个特征交互组包括候选推荐对象A的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值;并根据多个候选推荐对象中每个候选推荐对象的交互特性贡献值计算得到每个候选推荐对象的预测分数;将多个候选对象中,预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象。
在一个可行的实施例中,在根据多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到每个候选推荐对象的交互特性贡献值的方面,处理器901具体执行以下步骤:
对于候选推荐对象A的多阶特征交互集合,根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果;根据多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象A的交互特性贡献值。
在一个可行的实施例中,在根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果的方面,处理器901具体执行以下步骤:
将k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到每个特征交互组第k阶的交互结果。
在一个可行的实施例中,在将k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到每个特征交互组第k阶的交互结果的方面,处理器901具体执行以下步骤:
获取第k阶特征交互集合中的第j个特征交互组内每个关联特征的特征向量及其对应的权重;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;将第j个特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到第j个特征交互组的特征值;根据第j个特征交互组内每个关联特征的特征向量及其对应的权重、和第j个特征交互组的特征值确定第j个特征交互组第k阶的交互结果。
在一个可行的实施例中,在根据候选推荐对象A的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象A的交互特性贡献值的方面,处理器901具体执行以下步骤:
根据候选推荐对象A的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到候选推荐对象A的交互特性贡献值;其中,神经网络模型是基于全连接神经网络得到的。
在一个可行的实施例中,自动特征分组单元具体用于:
将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合。
具体地,在将多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到每个候选推荐对象的多阶特征交互集合的方面,处理器901具体执行以下步骤:
对于候选推荐对象A的第k阶特征交互,获取候选推荐对象A的多个关联特征中的每个关联特征的分配概率,候选推荐对象A的多个关联特征中每个关联特征的分配概率为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象A的第k阶特征交互集合。
进一步地,在根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象A的第k阶特征交互集合的方面,处理器901具体执行以下步骤:
根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值,该分配值为每个关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;若该关联特征的分配值大于预设阈值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的分配值不大于预设阈值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他非线性数学运算。
如图10所示的训练设备可以以图10中的结构来实现,该训练设备包括至少一个处理器1001,至少一个存储器1002以及至少一个通信接口1003。处理器1001、存储1002和通信接口1003通过通信总线连接并完成相互间的通信。
通信接口1003,用于与其他设备或通信网络通信,如以太网,无线接入网(radioaccess network,RAN),无线局域网(wireless local area networks,WLAN)等。
存储器1002可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,所述存储器1002用于存储执行以上方案的应用程序代码,并由处理器1001来控制执行。所述处理器1001用于执行所述存储器1002中存储的应用程序代码。
存储器1002存储的代码可执行以上提供的一种预测模型的训练方法。
处理器1001还可以采用或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的基于自动特征分组的推荐方法。
处理器1001还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的推荐方法的各个步骤可以通过处理器1001中的硬件的集成逻辑电路或者软件形式的指令完成。在实现过程中,本申请的状态生成模型和选择策略的训练方法的各个步骤可以通过处理器1001中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1001还可以是通用处理器、数字信号处理器(digital signal processing,DSP)、ASIC、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及模块框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1002,处理器1001读取存储器1002中的信息,结合其硬件完成本申请实施例的推荐方法或模型训练方法。
通信接口1003使用例如但不限于收发器一类的收发装置,来实现推荐装置或训练装置与其他设备或通信网络之间的通信。例如,可以通过通信接口1003获取推荐相关数据或训练数据,或者向用户设备发送推荐对象及接收用户针对推荐对象的反馈信息。
总线可包括在装置各个部件(例如,存储器1002、处理器1001、通信接口1003)之间传送信息的通路。在一种可能的实施例中,处理器1001具体执行以下步骤:
获取训练样本数据,该训练样本数据包括多个候选推荐对象样本及用户点击的推荐对象样本;并获取多个候选推荐对象样本中每个候选推荐样本的多个关联特征;
将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合;多个候选推荐对象样本中任一个候选推荐对象样本B的多阶特征交互集合中每阶特征交互集合包括一个或多个特征交互组,一个或多个特征交互组中每个特征交互组包括候选推荐对象样本B的多个关联特征中的至少一个;多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;
将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值;并根据多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到每个候选推荐对象的预测分数;
根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型。
可选地,非线性数学运算可以为向量内积、矩阵相乘或者其他非线性数学运算。
在一个可行的实施例中,在将多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到每个候选推荐对象样本的交互特征贡献值的方面,处理器1001具体执行以下步骤:
对于候选推荐对象样本B的多阶特征交互集合,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果;第k阶特征交互集合为候选推荐对象样本B的多阶特征交互集合中的任一阶特征交互集合;根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本B的交互特性贡献值。
在一个可行的实施例中,在根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果的方面,处理器1001具体执行以下步骤:
获取第k阶特征交互集合中的第j个特征交互组内每个关联特征的特征向量及其对应的权重;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;将第j个特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到第j个特征交互组的特征值;根据第j个特征交互组内每个关联特征的特征向量及其对应的权重、和第j个特征交互组的特征值确定第j个特征交互组第k阶的交互结果。
在一个可行的实施例中,在根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到候选推荐对象样本B的交互特性贡献值的方面,1001具体执行以下步骤:
根据候选推荐对象样本B的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;将交互特征向量输入到神经网络模型中进行计算,以得到候选推荐对象样本B的交互特性贡献值,其中,神经网络模型是基于全连接神经网络得到的。
在一个可行的实施例中,在根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型的方面,处理器1001具体执行以下步骤:
根据最大预测分数对应的候选推荐对象样本和用户点击对象样本对自动特征分组模型、特征交互模型中的参数和神经网络中的参数分别进行调整,以得到调整后的自动特征分组模型、调整后的特征交互模型和调整后的神经网络模型。
可选地,在将多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到每个候选推荐对象样本的多阶特征交互集合的方面,处理器1001具体执行以下步骤:
对于候选推荐对象样本B的第k阶特征交互,获取候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率,候选推荐对象样本B的多个关联特征中每个关联特征的分配概率为该关联特征被分配到第k阶特征交互集合中第j个特征交互组中的概率;第j个特征交互组为第k阶特征交互集合中的任一个特征交互组;根据候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本B的第k阶特征交互集合。
在一个可行的实施例中,根据候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率获取候选推荐对象样本B的第k阶特征交互集合的方面,处理器1001具体执行以下步骤:
根据候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率确定该关联特征的第一分配值和第二分配值;若该关联特征的第一分配值大于第二分配值,则将该关联特征分配到k阶特征交互集合中的第j个特征交互组中;若该关联特征的第一分配值不大于第二分配值,则不将该关联特征分配到k阶特征交互集合中的第j个特征交互组中。
本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述方法实施例中记载的任何一种推荐方法或者预测模型训练方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、ROM、RAM、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上上述,本说明书内容不应理解为对本申请的限制。
Claims (34)
1.一种基于自动特征分组的推荐方法,其特征在于,包括:
获取多个候选推荐对象及所述多个候选推荐对象中每个候选推荐对象的多个关联特征;
对所述多个候选推荐对象中每个候选推荐对象的多个关联特征进行多阶自动特征分组,以得到所述每个候选推荐对象的多阶特征交互集合,所述多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的每阶特征交互集合包括一个或多个特征交互组,所述一个或多个特征交互组中的每个特征交互组包括所述候选推荐对象的多个关联特征中的至少一个;所述多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;所述非线性数学运算为向量内积或者矩阵相乘;
根据所述多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到所述每个候选推荐对象的交互特性贡献值;
根据所述多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到所述每个候选推荐对象的预测分数;
将所述多个候选推荐对象中,预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象;
所述对所述多个候选推荐对象中每个候选推荐对象的多个关联特征进行多阶自动特征分组,以得到所述每个候选推荐对象的多阶特征交互集合,包括:对于所述每个候选推荐对象的第k阶特征交互,获取所述候选推荐对象的多个关联特征中的每个关联特征的分配概率,根据所述候选推荐对象的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象的第k阶特征交互集合。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到所述每个候选推荐对象的交互特征贡献值,包括:
对于每个所述候选推荐对象的多阶特征交互集合:
根据第k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到所述每个特征交互组第k阶的交互结果;
根据所述候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象的交互特性贡献值。
3.根据权利要求2所述的方法,其特征在于,所述根据第k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到所述每个特征交互组第k阶的交互结果,包括:
将所述第k阶特征交互集合中每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到所述每个特征交互组第k阶的交互结果。
4.根据权利要求2所述的方法,其特征在于,所述将所述第k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到该特征交互组第k阶的交互结果,包括:
对所述第k阶特征交互集合中的每个特征交互组执行如下步骤:
获取所述交互组内每个关联特征的特征向量及所述特征向量对应的权重;
将所述特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到所述特征交互组的特征值;
根据所述特征交互组内每个关联特征的特征向量及所述特征向量对应的权重、和所述特征交互组的特征值确定所述特征交互组第k阶的交互结果。
5.根据权利要求2-4任一项所述的方法,其特征在于,所述根据所述候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象的交互特性贡献值,包括:
根据所述每个候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;
将所述交互特征向量输入到神经网络模型中进行计算,以得到所述候选推荐对象的交互特性贡献值;其中,所述神经网络模型是基于全连接神经网络得到的。
6.根据权利要求1所述的方法,其特征在于,所述对所述多个候选推荐对象中每个候选推荐对象的多个关联特征进行多阶自动特征分组,以得到所述每个候选推荐对象的多阶特征交互集合,包括:
将所述多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到所述每个候选推荐对象的多阶特征交互集合。
7.根据权利要求6所述的方法,其特征在于,所述候选推荐对象的多个关联特征中每个关联特征的分配概率为所述每个关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;所述第j个特征交互组为所述第k阶特征交互集合中的任一个特征交互组。
8.根据权利要求7所述的方法,其特征在于,所述根据所述候选推荐对象的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象的第k阶特征交互集合,包括:
根据所述候选推荐对象的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值;所述分配值为所述每个关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;
若该关联特征的分配值大于预设阈值,则将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中;
若该关联特征的分配值不大于所述预设阈值,则不将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中。
9.一种预测模型训练方法,其特征在于,包括:
获取训练样本数据,所述训练样本数据包括多个候选推荐对象样本及用户点击的推荐对象样本;并获取所述多个候选推荐对象样本中每个候选推荐样本的多个关联特征;
将所述多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到所述每个候选推荐对象样本的多阶特征交互集合;所述多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合中每阶特征交互集合包括一个或多个特征交互组,所述一个或多个特征交互组中每个特征交互组包括所述候选推荐对象样本的多个关联特征中的至少一个;所述多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;所述非线性数学运算为向量内积或者矩阵相乘;
将所述多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到所述每个候选推荐对象样本的交互特征贡献值;
根据所述多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到所述每个候选推荐对象的预测分数;
根据最大预测分数对应的候选推荐对象样本和所述用户点击对象样本对所述自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型;
所述将所述多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到所述每个候选推荐对象样本的多阶特征交互集合,包括:对于所述每个候选推荐对象样本的第k阶特征交互,获取所述候选推荐对象样本的多个关联特征中的每个关联特征的分配概率,根据所述候选推荐对象的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象样本的第k阶特征交互集合。
10.根据权利要求9所述的方法,其特征在于,所述将所述多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到所述每个候选推荐对象样本的交互特征贡献值,包括:
对于每个所述候选推荐对象样本的多阶特征交互集合:
根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果;
根据所述候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象样本的交互特性贡献值。
11.根据权利要求10所述的方法,其特征在于,所述根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果,包括:
对所述第k阶特征交互集合中的每个特征交互组执行如下步骤:
获取所述特征交互组内每个关联特征的特征向量及所述特征向量对应的权重;
将所述特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到所述特征交互组的特征值;
根据所述特征交互组内每个关联特征的特征向量及所述特征向量对应的权重、和所述特征交互组的特征值确定所述特征交互组第k阶的交互结果。
12.根据权利要求10或11所述的方法,其特征在于,所述根据所述候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象样本的交互特性贡献值,包括:
根据所述每个候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;
将所述交互特征向量输入到神经网络模型中进行计算,以得到所述候选推荐对象样本的交互特性贡献值,其中,所述神经网络模型是基于全连接神经网络得到的。
13.根据权利要求12所述的方法,其特征在于,所述根据最大预测分数对应的候选推荐对象样本和所述用户点击对象样本对所述自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型,包括:
根据最大预测分数对应的候选推荐对象样本和所述用户点击对象样本对所述自动特征分组模型、所述特征交互模型中的参数和所述神经网络中的参数分别进行调整,以得到调整后的自动特征分组模型、调整后的特征交互模型和调整后的神经网络模型。
14.根据权利要求9所述的方法,其特征在于,所述候选推荐对象样本的多个关联特征中每个关联特征的分配概率为该关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;所述第j个特征交互组为所述第k阶特征交互集合中的任一个特征交互组。
15.根据权利要求14所述的方法,其特征在于,所述根据所述候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象样本B的第k阶特征交互集合,包括:
根据所述候选推荐对象样本的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值;所述分配值为所述每个关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;
若该关联特征的分配值大于预设阈值,则将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中;
若该关联特征的分配值不大于所述预设阈值,则不将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中。
16.一种基于自动特征分组的推荐装置,其特征在于,包括:
获取单元,用于获取多个候选推荐对象及所述多个候选推荐对象中每个候选推荐对象的多个关联特征;
自动特征分组单元,用于对所述多个候选推荐对象中每个候选推荐对象的多个关联特征进行自动特征分组,以得到所述每个候选推荐对象的多阶特征交互集合,所述多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的每阶特征交互集合包括一个或多个特征交互组,所述一个或多个特征交互组中的每个特征交互组包括所述候选推荐对象的多个关联特征中的至少一个;所述多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;所述非线性数学运算为向量内积或者矩阵相乘;
计算单元,用于根据所述多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到所述每个候选推荐对象的交互特性贡献值;并根据多个候选推荐对象中每个候选推荐对象的交互特性贡献值计算得到所述每个候选推荐对象的预测分数;
确定单元,用于将所述多个候选对象中,预测分数较高的一个或多个对应的候选推荐对象确定为目标推荐对象;
所述自动特征分组单元具体用于:对于所述每个候选推荐对象A的第k阶特征交互,获取所述候选推荐对象A的多个关联特征中的每个关联特征的分配概率,根据所述候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象A的第k阶特征交互集合。
17.根据权利要求16所述的装置,其特征在于,在所述根据所述多个候选推荐对象中每个候选推荐对象的多阶特征交互集合中的多个关联特征计算得到所述每个候选推荐对象的交互特性贡献值的方面,所述计算单元具体用于:
对于每个所述候选推荐对象的多阶特征交互集合:
根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果;
根据所述多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象的交互特性贡献值。
18.根据权利要求17所述的装置,其特征在于,在所述根据k阶特征交互集合中的每个特征交互组中的多个关联特征计算得到该特征交互组第k阶的交互结果的方面,所述计算单元具体用于:
将所述k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到所述每个特征交互组第k阶的交互结果。
19.根据权利要求18所述的装置,其特征在于,在所述将所述k阶特征交互集合中的每个特征交互组中的多个关联特征输入到特征交互模型中进行计算,以得到所述每个特征交互组第k阶的交互结果的方面,所述计算单元用于:
对所述第k阶特征交互集合中的每个特征交互组执行如下步骤:
获取所述交互组内每个关联特征的特征向量及所述特征向量对应的权重;
将所述特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到所述特征交互组的特征值;
根据所述特征交互组内每个关联特征的特征向量及所述特征向量对应的权重、和所述特征交互组的特征值确定所述特征交互组第k阶的交互结果。
20.根据权利要求17-19任一项所述的装置,其特征在于,在根据所述候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象的交互特性贡献值的方面,所述计算单元用于:
根据所述每个候选推荐对象的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;
将所述交互特征向量输入到神经网络模型中进行计算,以得到所述候选推荐对象的交互特性贡献值;其中,所述神经网络模型是基于全连接神经网络得到的。
21.根据权利要求16所述的装置,其特征在于,所述自动特征分组单元具体用于:
将所述多个候选推荐对象中每个候选推荐对象的多个关联特征输入到自动特征分组模型中进行处理,以得到所述每个候选推荐对象的多阶特征交互集合。
22.根据权利要求21所述的装置,其特征在于,所述候选推荐对象A的多个关联特征中每个关联特征的分配概率为所述每个关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;所述第j个特征交互组为所述第k阶特征交互集合中的任一个特征交互组。
23.根据权利要求22所述的装置,其特征在于,在所述根据所述候选推荐对象A的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象A的第k阶特征交互集合的方面,所述自动特征分组单元具体用于:
根据所述候选推荐对象A的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值;所述分配值为所述每个关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;
若该关联特征的分配值大于预设阈值,则将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中;
若该关联特征的第一分配值不大于所述预设阈值,则不将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中。
24.一种预测模型训练设备,其特征在于,包括:
获取单元,用于获取训练样本数据,所述训练样本数据包括多个候选推荐对象样本及用户点击的推荐对象样本;并获取所述多个候选推荐对象样本中每个候选推荐样本的多个关联特征;
自动特征分组单元,用于将所述多个候选对象样本中每个候选推荐对象样本的多个关联特征输入到多阶自动特征分组模型中进行自动特征分组,以得到所述每个候选推荐对象样本的多阶特征交互集合;所述多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合中每阶特征交互集合包括一个或多个特征交互组,所述一个或多个特征交互组中每个特征交互组包括所述候选推荐对象样本B的多个关联特征中的至少一个;所述多阶特征交互集合中的k阶特征交互集合中的每个特征交互组中,参与非线性数学运算的关联特征的数量为k,k为大于0的整数;所述非线性数学运算为向量内积或者矩阵相乘;
计算单元,用于将所述多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到所述每个候选推荐对象样本的交互特征贡献值;并根据所述多个候选推荐对象中每个候选推荐对象的交互特征贡献值计算得到所述每个候选推荐对象的预测分数;
调整单元,用于根据最大预测分数对应的候选推荐对象样本和所述用户点击对象样本对所述自动特征分组模型和特征交互模型中的参数分别进行调整,以得到调整后的自动特征分组模型和调整后的特征交互模型;
所述自动特征分组单元具体用于:
对于所述每个候选推荐对象样本的第k阶特征交互,获取所述候选推荐对象样本的多个关联特征中的每个关联特征的分配概率,根据所述候选推荐对象的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象样本的第k阶特征交互集合。
25.根据权利要求24所述的训练设备,其特征在于,在所述将所述多个候选推荐对象样本中每个候选推荐对象样本的多阶特征交互集合输入到特征交互模型中进行计算,以得到所述每个候选推荐对象样本的交互特征贡献值的方面,所述计算单元具体用于:
对于每个所述候选推荐对象样本的多阶特征交互集合,根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果;所述第k阶特征交互集合为所述候选推荐对象样本的多阶特征交互集合中的任一阶特征交互集合;
根据所述候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象样本的交互特性贡献值。
26.根据权利要求25所述的训练设备,其特征在于,在所述根据第k阶特征交互集合中的每个特征交互组中的关联特征计算得到该特征交互组第k阶的交互结果的方面,所述计算单元具体用于:
对所述第k阶特征交互集合中的每个特征交互组执行如下步骤:
获取所述特征交互组内每个关联特征的特征向量及所述特征向量对应的权重;
将所述特征交互组内每个关联特征的特征向量与其对应的权重进行加权求和得到所述特征交互组的特征值;
根据所述特征交互组内每个关联特征的特征向量及所述特征向量对应的权重、和所述特征交互组的特征值确定所述特征交互组第k阶的交互结果。
27.根据权利要求25或26所述的训练设备,其特征在于,在所述根据所述候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果计算得到所述候选推荐对象样本的交互特性贡献值的方面,所述计算单元具体用于:
根据所述每个候选推荐对象样本的多阶特征交互集合中的特征交互组对应阶的交互结果获取交互特征向量;
将所述交互特征向量输入到神经网络模型中进行计算,以得到所述候选推荐对象样本的交互特性贡献值,其中,所述神经网络模型是基于全连接神经网络得到的。
28.根据权利要求27所述的训练设备,其特征在于,所述调整单元具体用于:
根据最大预测分数对应的候选推荐对象样本和所述用户点击对象样本对所述自动特征分组模型、所述特征交互模型中的参数和所述神经网络中的参数分别进行调整,以得到调整后的自动特征分组模型、调整后的特征交互模型和调整后的神经网络模型。
29.根据权利要求24所述的训练设备,其特征在于,所述候选推荐对象样本的多个关联特征中每个关联特征的分配概率为该关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;所述第j个特征交互组为所述第k阶特征交互集合中的任一个特征交互组。
30.根据权利要求29所述的训练设备,其特征在于,在所述根据所述候选推荐对象样本B的多个关联特征中的每个关联特征的分配概率获取所述候选推荐对象样本B的第k阶特征交互集合的方面,所述自动特征分组单元具体用于:
根据所述候选推荐对象样本的多个关联特征中的每个关联特征的分配概率确定该关联特征的分配值;所述分配值为所述每个关联特征被分配到所述第k阶特征交互集合中第j个特征交互组中的概率;
若该关联特征的分配值大于预设阈值,则将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中;
若该关联特征的分配值不大于所述预设阈值,则不将该关联特征分配到所述k阶特征交互集合中的第j个特征交互组中。
31.一种基于自动特征分组的推荐装置,其特征在于,包括:
存储器,用于存储指令;以及
处理器,与所述存储器耦合;
其中,当所述处理器执行所述指令时,执行如权利要求1-8任一项所述的方法。
32.一种预测模型训练设备,其特征在于,包括:
存储器,用于存储指令;以及
处理器,与所述存储器耦合;
其中,当所述处理器执行所述指令时,执行如权利要求9-15任一项所述的方法。
33.一种芯片***,其特征在于,所述芯片***应用于电子设备;所述芯片***包括一个或多个接口电路,以及一个或多个处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述电子设备执行如权利要求1-15中任意一项所述方法。
34.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-15任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010294506.3A CN113536097B (zh) | 2020-04-14 | 2020-04-14 | 基于自动特征分组的推荐方法及装置 |
PCT/CN2021/070847 WO2021208535A1 (zh) | 2020-04-14 | 2021-01-08 | 基于自动特征分组的推荐方法及装置 |
EP21789516.8A EP4131031A4 (en) | 2020-04-14 | 2021-01-08 | RECOMMENDATION METHOD AND DEVICE BASED ON AUTOMATIC CHARACTERISTIC GROUPING |
US17/964,117 US20230031522A1 (en) | 2020-04-14 | 2022-10-12 | Recommendation method and apparatus based on automatic feature grouping |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010294506.3A CN113536097B (zh) | 2020-04-14 | 2020-04-14 | 基于自动特征分组的推荐方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113536097A CN113536097A (zh) | 2021-10-22 |
CN113536097B true CN113536097B (zh) | 2024-03-29 |
Family
ID=78084022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010294506.3A Active CN113536097B (zh) | 2020-04-14 | 2020-04-14 | 基于自动特征分组的推荐方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230031522A1 (zh) |
EP (1) | EP4131031A4 (zh) |
CN (1) | CN113536097B (zh) |
WO (1) | WO2021208535A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11568317B2 (en) | 2020-05-21 | 2023-01-31 | Paypal, Inc. | Enhanced gradient boosting tree for risk and fraud modeling |
KR20210147672A (ko) * | 2020-05-29 | 2021-12-07 | 삼성전자주식회사 | 전자장치 및 그 제어방법 |
CN114648070B (zh) * | 2022-03-24 | 2023-06-13 | 支付宝(杭州)信息技术有限公司 | 关键行为抽取网络、关键属性抽取网络的训练方法及装置 |
CN116051118B (zh) * | 2023-03-01 | 2023-06-16 | 支付宝(杭州)信息技术有限公司 | 行为时序模型的分析方法及装置 |
CN116740578B (zh) * | 2023-08-14 | 2023-10-27 | 北京数慧时空信息技术有限公司 | 基于用户选择的遥感影像推荐方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109902222A (zh) * | 2018-11-30 | 2019-06-18 | 华为技术有限公司 | 一种推荐方法及装置 |
CN109902849A (zh) * | 2018-06-20 | 2019-06-18 | 华为技术有限公司 | 用户行为预测方法及装置、行为预测模型训练方法及装置 |
WO2019120578A1 (en) * | 2017-12-22 | 2019-06-27 | Huawei Technologies Co., Ltd. | Client, server, and client-server system adapted for generating personalized recommendations |
CN110019163A (zh) * | 2017-12-05 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 对象特征的预测、推荐的方法、***、设备和存储介质 |
CN110765363A (zh) * | 2019-09-27 | 2020-02-07 | 复旦大学 | 一种基于高斯分布表示的深度推荐模型 |
-
2020
- 2020-04-14 CN CN202010294506.3A patent/CN113536097B/zh active Active
-
2021
- 2021-01-08 EP EP21789516.8A patent/EP4131031A4/en active Pending
- 2021-01-08 WO PCT/CN2021/070847 patent/WO2021208535A1/zh unknown
-
2022
- 2022-10-12 US US17/964,117 patent/US20230031522A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110019163A (zh) * | 2017-12-05 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 对象特征的预测、推荐的方法、***、设备和存储介质 |
WO2019120578A1 (en) * | 2017-12-22 | 2019-06-27 | Huawei Technologies Co., Ltd. | Client, server, and client-server system adapted for generating personalized recommendations |
CN109902849A (zh) * | 2018-06-20 | 2019-06-18 | 华为技术有限公司 | 用户行为预测方法及装置、行为预测模型训练方法及装置 |
CN109902222A (zh) * | 2018-11-30 | 2019-06-18 | 华为技术有限公司 | 一种推荐方法及装置 |
CN110765363A (zh) * | 2019-09-27 | 2020-02-07 | 复旦大学 | 一种基于高斯分布表示的深度推荐模型 |
Also Published As
Publication number | Publication date |
---|---|
EP4131031A4 (en) | 2023-06-21 |
EP4131031A1 (en) | 2023-02-08 |
US20230031522A1 (en) | 2023-02-02 |
CN113536097A (zh) | 2021-10-22 |
WO2021208535A1 (zh) | 2021-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113536097B (zh) | 基于自动特征分组的推荐方法及装置 | |
CN109902849B (zh) | 用户行为预测方法及装置、行为预测模型训练方法及装置 | |
WO2020135535A1 (zh) | 一种推荐模型训练方法及相关装置 | |
CN110717098B (zh) | 基于元路径的上下文感知用户建模方法、序列推荐方法 | |
CN111291266A (zh) | 基于人工智能的推荐方法、装置、电子设备及存储介质 | |
EP4181026A1 (en) | Recommendation model training method and apparatus, recommendation method and apparatus, and computer-readable medium | |
CN111611488B (zh) | 基于人工智能的信息推荐方法、装置、电子设备 | |
CN111506820B (zh) | 推荐模型、方法、装置、设备及存储介质 | |
CN110909182A (zh) | 多媒体资源搜索方法、装置、计算机设备及存储介质 | |
CN116010684A (zh) | 物品推荐方法、装置及存储介质 | |
Grolman et al. | Utilizing transfer learning for in-domain collaborative filtering | |
CN111797320A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN112269943A (zh) | 一种信息推荐***及方法 | |
WO2023087933A1 (zh) | 内容推荐方法、装置、设备、存储介质及程序产品 | |
CN115203557A (zh) | 内容推荐模型的生成方法、装置、设备、存储介质及产品 | |
CN115564532A (zh) | 序列推荐模型的训练方法及装置 | |
CN115080856A (zh) | 推荐方法及装置、推荐模型的训练方法及装置 | |
CN114820085B (zh) | 用户筛选方法、相关装置及存储介质 | |
CN112000888B (zh) | 信息推送方法、装置、服务器及存储介质 | |
CN118296222A (zh) | 交互参数处理方法、装置、计算机设备和存储介质 | |
CN117454956A (zh) | 项目推荐模型的训练方法、项目推荐方法及相关设备 | |
Tella | A Movie Recommendation System Based on Game Theoretic Approach | |
CN115203558A (zh) | 内容推荐方法、装置、设备、存储介质及程序产品 | |
CN116541601A (zh) | 提升推荐***近线召回能力的方法、装置、设备及介质 | |
CN117540260A (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 |