CN111898032A - 基于人工智能的信息推荐方法、装置、电子设备及存储介质 - Google Patents
基于人工智能的信息推荐方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111898032A CN111898032A CN202010823688.9A CN202010823688A CN111898032A CN 111898032 A CN111898032 A CN 111898032A CN 202010823688 A CN202010823688 A CN 202010823688A CN 111898032 A CN111898032 A CN 111898032A
- Authority
- CN
- China
- Prior art keywords
- information
- interest
- recommended
- term interest
- target 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 109
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 41
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000009826 distribution Methods 0.000 claims abstract description 294
- 230000007774 longterm Effects 0.000 claims abstract description 157
- 238000012545 processing Methods 0.000 claims abstract description 76
- 238000012216 screening Methods 0.000 claims abstract description 26
- 238000007499 fusion processing Methods 0.000 claims abstract description 20
- 238000012549 training Methods 0.000 claims description 101
- 239000013598 vector Substances 0.000 claims description 77
- 230000003993 interaction Effects 0.000 claims description 56
- 238000013507 mapping Methods 0.000 claims description 49
- 230000008569 process Effects 0.000 claims description 48
- 238000005070 sampling Methods 0.000 claims description 43
- 230000006399 behavior Effects 0.000 claims description 37
- 230000002452 interceptive effect Effects 0.000 claims description 36
- 230000015654 memory Effects 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 14
- 230000007613 environmental effect Effects 0.000 claims description 12
- 230000004927 fusion Effects 0.000 claims description 9
- 230000002123 temporal effect Effects 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 92
- 230000009471 action Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 13
- 230000002787 reinforcement Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 5
- 238000012163 sequencing technique Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000013515 script Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005728 strengthening Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001680 brushing effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
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/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/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- 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
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于人工智能的信息推荐方法、装置、电子设备及计算机可读存储介质;方法包括:对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息;对目标对象的对象特征以及上下文环境特征进行融合处理,得到目标对象的状态特征;基于目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布;从多个待推荐信息中,确定符合兴趣信息分布的待推荐信息;基于符合目标对象的兴趣信息分布的待推荐信息,执行针对目标对象的推荐操作。通过本发明,能够均衡短期兴趣以及长期兴趣,从而提高信息推荐的准确性。
Description
技术领域
本发明涉及人工智能技术,尤其涉及一种基于人工智能的信息推荐方法、装置、电子设备及计算机可读存储介质。
背景技术
人工智能(Artificial Intelligence,AI)是计算机科学的一个综合技术,通过研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,例如自然语言处理技术以及机器学习/深度学习等几大方向,随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
推荐***是人工智能领域的重要应用之一,能够在信息过载的环境中帮助用户发现可能令他们感兴趣的信息,并将信息推送给对它们感兴趣的用户。
虽然,相关技术中的推荐***可以向用户推荐用户可能感兴趣的信息。但是,相关技术中的推荐***向用户提供的推荐信息过于极端(过于偏向长期兴趣或者过于偏向短期兴趣),由此导致的无效推荐浪费了推荐***的资源,导致对通信资源的挤占。
发明内容
本发明实施例提供一种基于人工智能的信息推荐方法、装置、电子设备及计算机可读存储介质,能够均衡短期兴趣以及长期兴趣,从而提高信息推荐的准确性。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种基于人工智能的信息推荐方法,包括:
对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息;
对目标对象的对象特征以及上下文环境特征进行融合处理,得到所述目标对象的状态特征;
基于所述目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布;
从所述多个待推荐信息中,确定符合所述兴趣信息分布的待推荐信息;
基于符合所述目标对象的兴趣信息分布的待推荐信息,执行针对所述目标对象的推荐操作。
上述技术方案中,所述对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息,包括:
基于所述目标对象的对象特征以及上下文环境特征,对所述待筛选信息集合中的多个信息进行预测处理,得到所述多个信息的筛选概率;
对所述多个待筛选信息进行基于所述筛选概率的降序排序,将排序在前的多个信息作为待推荐信息。
上述技术方案中,所述方法还包括:
基于所述目标对象的历史交互行为数据,构建用于训练兴趣分布预测模型的状态特征样本;
通过所述兴趣分布预测模型对所述状态特征样本进行预测处理,得到与多个基于长期兴趣和短期兴趣的兴趣信息分布分别对应的概率以及新状态特征样本;
将所述状态特征样本、所述基于长期兴趣和短期兴趣的兴趣信息分布、所述新状态特征样本、对应的所述概率以及所述状态特征样本的进程状态进行组合,得到组合样本;
基于所述组合样本,对所述兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型。
上述技术方案中,所述基于所述目标对象的历史交互行为数据,构建用于训练兴趣分布预测模型的状态特征样本,包括:
对所述目标对象的历史交互行为数据进行遍历处理,得到所述目标对象的多个历史交互信息;
针对所述多个历史交互信息中的任一历史交互信息执行以下处理:
基于所述历史交互信息以及对应的历史推荐信息,确定对应的对象特征以及上下文环境特征;
对所述对应的对象特征以及上下文环境特征进行融合处理,得到对应所述历史交互信息的状态特征样本。
上述技术方案中,所述基于所述组合样本,对所述兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型,包括:
将组合样本存入经验回放集合,对所述经验回放集合进行随机采样,并通过对应所述兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标;
根据所述目标训练总指标以及通过所述兴趣分布预测模型得到的训练指标,构建所述兴趣分布预测模型的损失函数;
更新所述兴趣分布预测模型的参数直至所述状态特征样本的进程状态为终止状态,将所述进程状态为终止状态时所述兴趣分布预测模型的更新的参数,作为训练后的所述兴趣分布预测模型的参数。
上述技术方案中,所述通过对应所述兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标,包括:
针对任一所述采样结果执行以下处理:
当所述采样结果中的所述状态特征样本的进程状态为终止状态时,将所述采样结果中的所述概率确定为所述采样结果对应的目标训练总指标;
当所述采样结果中的所述状态特征样本的进程状态为非终止状态时,通过所述兴趣分布预测模型,将最大训练指标所对应的基于长期兴趣和短期兴趣的兴趣信息分布确定为目标兴趣信息分布,并
通过对应所述兴趣分布预测模型的目标训练模型确定所述目标兴趣信息分布对应的目标训练指标;
结合所述采样结果中的所述概率以及所述目标训练指标,得到所述采样结果对应的目标训练总指标。
本发明实施例提供一种信息推荐装置,包括:
筛选模块,用于对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息;
融合模块,用于对目标对象的对象特征以及上下文环境特征进行融合处理,得到所述目标对象的状态特征;
预测模块,用于基于所述目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布;
处理模块,用于从所述多个待推荐信息中,确定符合所述兴趣信息分布的待推荐信息;基于符合所述目标对象的兴趣信息分布的待推荐信息,执行针对所述目标对象的推荐操作。
上述技术方案中,所述融合模块还用于对目标对象的对象特征以及上下文环境特征进行拼接处理,将拼接结果作为所述目标对象的状态特征;或者,
对所述目标对象的对象特征以及上下文环境特征进行加权求和,将加权求和结果作为所述目标对象的状态特征。
上述技术方案中,所述装置还包括:
获取模块,用于获取所述目标对象的对象特征;
其中,所述对象特征包括以下至少之一:所述目标对象的偏好特征;用于表征所述目标对象的基本信息的属性特征;用于表征所述目标对象所使用设备的设备特征;
获取所述目标对象的上下文环境特征;
其中,所述目标对象的上下文环境特征包括以下至少之一:用于表征所述目标对象的历史交互信息的历史交互特征;用于表征所述目标对象的交互时间的时间特征;用于表征所述目标对象的历史推荐信息的历史推荐特征。
上述技术方案中,所述预测模块还用于调用兴趣预测模型执行以下处理:
对所述目标对象的状态特征进行编码处理,得到所述状态特征的编码向量;
对所述状态特征的编码向量进行映射处理,得到基于长期兴趣和短期兴趣的兴趣信息分布。
上述技术方案中,所述预测模块还用于对所述目标对象的状态特征进行高维向量编码处理,得到对应所述状态特征的高维向量;
对所述高维向量进行低维向量编码处理,得到对应所述状态特征的低维向量,并
将所述低维向量作为所述状态特征的编码向量;
其中,所述高维向量的维度大于所述低维向量的维度。
上述技术方案中,所述预测模块还用于对所述状态特征的编码向量进行非线性映射处理,得到短期兴趣信息分布的概率分布;
将所述概率分布中最大概率所对应的短期兴趣信息分布确定为所述目标对象的短期兴趣信息分布,并
确定与所述短期兴趣信息分布对应的长期兴趣信息分布;
结合所述短期兴趣信息分布与所述长期兴趣信息分布,得到基于长期兴趣和短期兴趣的兴趣信息分布。
上述技术方案中,所述兴趣预测模型包括多个级联的全连接层;所述预测模块还用于通过所述多个级联的全连接层的第一个全连接层,对所述状态特征的编码向量进行所述第一个全连接层的非线性映射处理;
将所述第一个全连接层的映射结果输出到后续级联的全连接层,以在所述后续级联的全连接层中继续进行非线性映射处理和映射结果输出,直至输出到最后一个全连接层;
将所述最后一个全连接层输出的映射结果作为短期兴趣信息分布的概率分布。
上述技术方案中,所述处理模块还用于基于所述兴趣信息分布,确定符合短期兴趣的第一待推荐信息数量以及符合长期兴趣的第二待推荐信息数量;
其中,所述兴趣信息分布的类型包括:符合短期兴趣的待推荐信息在所有待推荐信息中的占比;符合短期兴趣的待推荐信息的数量;
从所述多个待推荐信息中,确定符合短期兴趣的第一待推荐信息数量的待推荐信息,并
确定符合长期兴趣的第二待推荐信息数量的待推荐信息。
上述技术方案中,所述处理模块还用于针对所述多个待推荐信息中的任一待推荐信息执行以下处理:
确定符合短期兴趣的标准信息与所述待推荐信息的相似度;
基于所述符合短期兴趣的标准信息分别与多个所述待推荐信息的相似度,对所述多个待推荐信息进行降序排序,选取出排序在前的所述第一待推荐信息数量的待推荐信息;
针对所述多个待推荐信息中的任一待推荐信息执行以下处理:
确定符合长期兴趣的标准信息与所述待推荐信息的相似度;
基于所述符合长期兴趣的标准信息分别与多个所述待推荐信息的相似度,对所述多个待推荐信息进行降序排序,选取出排序在前的所述第二待推荐信息数量的待推荐信息。
上述技术方案中,所述装置还包括:
预处理模块,用于对所述目标对象的历史交互行为数据进行遍历处理,以确定所述历史交互行为数据中符合短期兴趣的历史交互信息序列;
对所述符合短期兴趣的历史交互信息序列进行融合处理,得到符合短期兴趣的标准信息;
对所述目标对象的历史交互行为数据进行遍历处理,以确定所述历史交互行为数据中符合长期兴趣的历史交互信息序列;
对所述符合长期兴趣的历史交互信息序列进行融合处理,得到符合长期兴趣的标准信息。
上述技术方案中,所述筛选模块还用于基于所述目标对象的对象特征以及上下文环境特征,对所述待筛选信息集合中的多个信息进行预测处理,得到所述多个信息的筛选概率;
对所述多个待筛选信息进行基于所述筛选概率的降序排序,将排序在前的多个信息作为待推荐信息。
上述技术方案中,所述装置还包括:
训练模块,用于基于所述目标对象的历史交互行为数据,构建用于训练兴趣分布预测模型的状态特征样本;
通过所述兴趣分布预测模型对所述状态特征样本进行预测处理,得到与多个基于长期兴趣和短期兴趣的兴趣信息分布分别对应的概率以及新状态特征样本;
将所述状态特征样本、所述基于长期兴趣和短期兴趣的兴趣信息分布、所述新状态特征样本、对应的所述概率以及所述状态特征样本的进程状态进行组合,得到组合样本;
基于所述组合样本,对所述兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型。
上述技术方案中,所述训练模块还用于对所述目标对象的历史交互行为数据进行遍历处理,得到所述目标对象的多个历史交互信息;
针对所述多个历史交互信息中的任一历史交互信息执行以下处理:
基于所述历史交互信息以及对应的历史推荐信息,确定对应的对象特征以及上下文环境特征;
对所述对应的对象特征以及上下文环境特征进行融合处理,得到对应所述历史交互信息的状态特征样本。
上述技术方案中,所述训练模块还用于将组合样本存入经验回放集合,对所述经验回放集合进行随机采样,并通过对应所述兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标;
根据所述目标训练总指标以及通过所述兴趣分布预测模型得到的训练指标,构建所述兴趣分布预测模型的损失函数;
更新所述兴趣分布预测模型的参数直至所述状态特征样本的进程状态为终止状态,将所述进程状态为终止状态时所述兴趣分布预测模型的更新的参数,作为训练后的所述兴趣分布预测模型的参数。
上述技术方案中,所述训练模块还用于针对任一所述采样结果执行以下处理:
当所述采样结果中的所述状态特征样本的进程状态为终止状态时,将所述采样结果中的所述概率确定为所述采样结果对应的目标训练总指标;
当所述采样结果中的所述状态特征样本的进程状态为非终止状态时,通过所述兴趣分布预测模型,将最大训练指标所对应的基于长期兴趣和短期兴趣的兴趣信息分布确定为目标兴趣信息分布,并
通过对应所述兴趣分布预测模型的目标训练模型确定所述目标兴趣信息分布对应的目标训练指标;
结合所述采样结果中的所述概率以及所述目标训练指标,得到所述采样结果对应的目标训练总指标。
本发明实施例提供一种用于信息推荐的电子设备,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的基于人工智能的信息推荐方法。
本发明实施例提供一种计算机可读存储介质,存储有可执行指令,用于被处理器执行时,实现本发明实施例提供的基于人工智能的信息推荐方法。
本发明实施例具有以下有益效果:
通过目标对象的对象特征以及上下文环境特征,得到基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐信息,从而均衡长期兴趣和短期兴趣,使得待推荐信息满足目标对象的长期兴趣和短期兴趣,提高信息推荐的准确性,以充分利用推荐***的资源,避免通信资源的浪费。
附图说明
图1是本发明实施例提供的推荐***的应用场景示意图;
图2是本发明实施例提供的用于信息推荐的电子设备的结构示意图;
图3A-3D是本发明实施例提供的基于人工智能的信息推荐方法的流程示意图;
图4是本发明实施例提供的兴趣预测模型的结构示意图;
图5是本发明实施例提供的新闻应用界面示意图;
图6是本发明实施例提供的购物应用界面示意图;
图7是本发明实施例提供的强化学习方法的流程示意图;
图8是相关技术提供的排序模型的结构示意图;
图9是本发明实施例提供的个性化新闻推荐***的示意图;
图10是本发明实施例提供的多层感知器的结构示意图;
图11是本发明实施例提供的推荐模型的训练示意图;
图12是本发明实施例提供的深度双Q网络的架构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)目标对象:当前使用推荐***的对象(例如真实用户或者计算机程序模拟出的虚拟用户),例如真实用户A当前使用新闻推荐***刷新闻,则真实用户A为目标对象。
2)推荐***:自动联系用户和物品的一种工具,能够在信息过载的环境中帮助用户发现令他们感兴趣的信息,也能将信息推送给对它们感兴趣的用户。新闻个性化推荐是根据用户的画像或者阅读历史,向用户推荐他们可能感兴趣的新闻。
3)强化学习(Reinforcement Learning,RL):又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
为了解决上述问题,本发明实施例提供了一种基于人工智能的信息推荐方法、装置、电子设备及计算机可读存储介质,能够均衡短期兴趣以及长期兴趣,提高推荐的准确性。
本发明实施例所提供的基于人工智能的信息推荐方法,可以由终端/服务器独自实现;也可以由终端和服务器协同实现,例如终端独自承担下文所述的基于人工智能的信息推荐方法,或者,终端向服务器发送针对目标用户的信息推荐请求,服务器根据接收的针对目标用户的信息推荐请求执行基于人工智能的信息推荐方法,并向终端发送符合兴趣信息分布的待推荐信息。
本发明实施例提供的用于信息推荐的电子设备可以是各种类型的终端设备或服务器,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云计算服务的云服务器;终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本发明在此不做限制。
以服务器为例,例如可以是部署在云端的服务器集群,向用户开放人工智能云服务(AI as a Service,AIaaS),AIaaS平台会把几类常见的AI服务进行拆分,并在云端提供独立或者打包的服务,这种服务模式类似于一个AI主题商城,所有的用户都可以通过应用程序编程接口的方式来接入使用AIaaS平台提供的一种或者多种人工智能服务。
例如,其中的一种人工智能云服务可以为信息推荐服务,即云端的服务器封装有本发明实施例提供的信息推荐的程序。用户通过终端(运行有客户端,例如新闻客户端、视频客户端等)调用云服务中的信息推荐服务,以使部署在云端的服务器调用封装的信息推荐的程序,通过目标对象的对象特征以及上下文环境特征,得到基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐信息,以响应信息推荐请求,例如,对于新闻应用,基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐新闻,以快速响应新闻推荐请求,从而目标用户可以浏览到符合目标用户长期兴趣以及短期兴趣的新闻,避免推荐的新闻都偏向长期兴趣或者短期兴趣,提高用户体验感;对于视频应用,基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐视频,以快速响应视频推荐请求,从而目标用户可以浏览到符合目标用户长期兴趣以及短期兴趣的视频,避免推荐的视频都偏向长期兴趣或者短期兴趣,提高用户体验感。
参见图1,图1是本发明实施例提供的推荐***10的应用场景示意图,终端200通过网络300连接服务器100,网络300可以是广域网或者局域网,又或者是二者的组合。
终端200(运行有客户端,例如新闻客户端、购物客户端等)可以被用来获取针对目标用户的信息推荐请求,例如,当目标用户打开新闻应用后,终端自动获取针对目标用户的新闻推荐请求。
在一些实施例中,终端中运行的客户端中可以植入有信息推荐插件,用以在客户端本地实现基于人工智能的信息推荐方法。例如,终端200获取针对目标用户的信息推荐请求后,调用信息推荐插件,以实现基于人工智能的信息推荐方法,通过目标对象的对象特征以及上下文环境特征,得到基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐信息,以响应信息推荐请求,例如,对于新闻应用,目标用户滑动新闻页面时,则自动获取针对目标用户的新闻推荐请求,并基于目标对象的对象特征以及上下文环境特征,得到基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐新闻,以响应新闻推荐请求,从而目标用户可以浏览到符合目标用户长期兴趣以及短期兴趣的新闻,避免推荐的新闻都偏向长期兴趣或者短期兴趣,提高用户体验感。
在一些实施例中,终端200获取针对目标用户的信息推荐请求后,调用服务器100的信息推荐接口(可以提供为云服务的形式,即信息推荐服务),服务器100基于目标对象的对象特征以及上下文环境特征,得到基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐信息,以响应信息推荐请求,例如,对于购物应用,目标用户滑动商品页面时,则自动获取针对目标用户的商品推荐请求,基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐商品,以快速响应商品推荐请求,从而目标用户可以浏览到符合目标用户长期兴趣以及短期兴趣的商品,避免推荐的商品都偏向长期兴趣或者短期兴趣,提高用户体验感。
下面说明本发明实施例提供的用于信息推荐的电子设备的结构,参见图2,图2是本发明实施例提供的用于信息推荐的电子设备500的结构示意图,以电子设备500是服务器为例说明,图2所示的用于信息推荐的电子设备500包括:至少一个处理器510、存储器550以及至少一个网络接口520。电子设备500中的各个组件通过总线***530耦合在一起。可理解,总线***530用于实现这些组件之间的连接通信。总线***530除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线***530。
处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本发明实施例描述的存储器550旨在包括任意适合类型的存储器。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。
在一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作***551,包括用于处理各种基本***服务和执行硬件相关任务的***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块553,用于经由一个或多个(有线或无线)网络接口520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
在一些实施例中,本发明实施例提供的信息推荐装置可以采用软件方式实现,例如,可以是上文所述的终端中的信息推荐插件,可以是上文所述的服务器中信息推荐服务。当然,不局限于此,本发明实施例提供的信息推荐装置可以提供为各种软件实施例,包括应用程序、软件、软件模块、脚本或代码在内的各种形式。
图2示出了存储在存储器550中的信息推荐装置555,其可以是程序和插件等形式的软件,例如信息推荐插件,并包括一系列的模块,包括筛选模块5551、融合模块5552、预测模块5553、处理模块5554、获取模块5555、预处理模块5556以及训练模块5557;其中,筛选模块5551、融合模块5552、预测模块5553、处理模块5554、获取模块5555以及预处理模块5556用于实现本发明实施例提供的信息推荐功能,训练模块5557用于实现对兴趣分布预测模型的训练功能。
如前,本发明实施例提供的基于人工智能的信息推荐方法可以由各种类型的电子设备实施。参见图3A,图3A是本发明实施例提供的基于人工智能的信息推荐方法的流程示意图,结合图3A示出的步骤进行说明。
在下面的步骤中,待推荐信息可以是文本、图文、视频等数据,例如,针对新闻应用,待推荐信息可以为图文形式的消息;针对视频应用,待推荐信息可以为视频形式的数据。
在下面的步骤中,对象特征(用户画像信息)包括以下至少之一:目标对象的偏好特征,例如品类偏好、偏好标签等;用于表征目标对象的基本信息的属性特征,例如,用户年龄、性别等;用于表征目标对象所使用设备的设备特征,例如用户所使用的机型等。
其中,目标对象的上下文环境特征包括以下至少之一:用于表征目标对象的历史交互信息的历史交互特征,例如,用户的历史点击信息等;用于表征目标对象的交互时间的时间特征,例如,用户访问时间;用于表征目标对象的历史推荐信息的历史推荐特征,例如,上一屏幕展示的历史推荐信息。
在步骤101中,对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息。
其中,待筛选信息集合包括各种待筛选信息,例如,针对新闻应用,待筛选信息可以为图文形式的消息;针对视频应用,待筛选信息可以为视频形式的数据。
例如,目标对象在滑动页面时,终端自动获取针对目标对象的信息推荐请求,并将针对目标对象的信息推荐请求发送至服务器,服务器根据针对目标对象的信息推荐请求,对待筛选信息集合中的信息进行粗筛,以得到可能推荐的多个待推荐信息,以便后续对待推荐信息进行精筛,以更加准确地进行信息推荐。
在一些实施例中,对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息,包括:基于目标对象的对象特征以及上下文环境特征,对待筛选信息集合中的多个信息进行预测处理,得到多个信息的筛选概率;对多个待筛选信息进行基于筛选概率的降序排序,将排序在前的多个信息作为待推荐信息。
例如,针对新闻应用,在召回阶段(粗筛阶段),需要从海量新闻(待筛选信息集合)中抽取出目标用户可能感兴趣的新闻。通过目标用户的用户画像信息以及上下文环境特征,对海量新闻中的信息进行预测,得到多个信息的预测点击率(筛选概率),基于信息的预测点击率,对所有待筛选信息进行降序排序,由于预测点击率越大,对应的信息越重要,用户越偏向该信息,则将前N个信息确定为待推荐信息,其中,N为自然数,根据实际应用需求进行设置。
在步骤102中,对目标对象的对象特征以及上下文环境特征进行融合处理,得到目标对象的状态特征。
其中,步骤101与步骤102并没有明显的先后顺序。服务器接收到针对目标对象的信息推荐请求后,根据针对目标对象的信息推荐请求,获取当前的目标对象的对象特征以及上下文环境特征,并融合目标对象的对象特征以及上下文环境特征,以得到目标对象的状态特征,以便后续根据状态特征预测目标对象的兴趣信息分布,均衡目标对象的短期兴趣以及长期兴趣。
在一些实施例中,对目标对象的对象特征以及上下文环境特征进行融合处理,得到目标对象的状态特征,包括:对目标对象的对象特征以及上下文环境特征进行拼接处理,将拼接结果作为目标对象的状态特征;或者,对目标对象的对象特征以及上下文环境特征进行加权求和,将加权求和结果作为目标对象的状态特征。
例如,在服务器获得当前的目标对象的对象特征以及上下文环境特征后,需要融合目标对象的对象特征以及上下文环境特征,以获取目标对象当前的状态特征,其中融合方式可以是拼接、加和等。由于对象特征以及上下文环境特征的重要性不同,即对后续兴趣分布预测的影响不同,因此,可以为对象特征以及上下文环境特征设置对应的权重,当对象特征对兴趣分布预测的影响大时,则为对象特征设置大权重,当上下文环境特征对兴趣分布预测的影响大时,则为上下文环境特征设置大权重,最后,基于对象特征的权重以及上下文环境特征的权重,对对象特征以及上下文环境特征进行加权求和,以得到目标对象的状态特征。
在步骤103中,基于目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布。
其中,长期兴趣的统计周期大于短期兴趣的统计周期。例如,在服务器得到目标对象的状态特征后,可以通过兴趣分布预测模型,结合目标对象的状态特征进行兴趣分布预测处理,以得到基于长期兴趣和短期兴趣的兴趣信息分布,后续基于兴趣信息分布对待推荐信息进行筛选,以得到用于信息推荐的包含短期兴趣以及长期兴趣的推荐信息,以进行信息推荐。其中,兴趣信息分布的类型包括:符合短期兴趣的待推荐信息在所有待推荐信息中的占比;符合短期兴趣的待推荐信息的数量。
参见图3B,图3B是本发明实施例提供的基于人工智能的信息推荐方法的一个可选的流程示意图,图3B示出图3A中的步骤103可以通过图3B示出的步骤1031至步骤1032实现:在步骤1031中,调用兴趣预测模型执行以下处理:对目标对象的状态特征进行编码处理,得到状态特征的编码向量;在步骤1032中,对状态特征的编码向量进行映射处理,得到基于长期兴趣和短期兴趣的兴趣信息分布。
例如,如图4所示,在服务器得到目标对象的状态特征后,调用兴趣预测模型,通过兴趣预测模型执行以下处理:通过兴趣预测模型中的嵌入查找层对目标对象的状态特征进行编码处理,得到该状态的编码向量,然后通过兴趣预测模型中的全连接层对状态特征的编码向量进行映射,以得到基于长期兴趣和短期兴趣的兴趣信息分布。
在一些实施例中,对目标对象的状态特征进行编码处理,得到状态特征的编码向量,包括:对目标对象的状态特征进行高维向量编码处理,得到对应状态特征的高维向量;对高维向量进行低维向量编码处理,得到对应状态特征的低维向量,并将低维向量作为状态特征的编码向量;其中,高维向量的维度大于低维向量的维度。
承接上述示例,在服务器得到目标对象的状态特征后,需要将目标对象的状态特征转化为词向量,可以先对目标对象的状态特征进行高维向量编码,例如独热码(one-hot)编码,以得到对应状态特征的高维向量,该高维向量用于准确表征状态特征,避免遗漏信息;然后,对高维向量进行低维向量编码,例如,将高位向量与低维嵌入矩阵相乘,以实现降维功能,得到对应状态特征的低维向量,并将低维向量作为状态特征的编码向量,从而通过低维度的向量准确地表征状态特征,以节约后续服务器的计算资源。
参见图3C,图3C是本发明实施例提供的基于人工智能的信息推荐方法的一个可选的流程示意图,图3C示出图3B中的步骤1032可以通过图3C示出的步骤10321至步骤10323实现:在步骤10321中,对状态特征的编码向量进行非线性映射处理,得到短期兴趣信息分布的概率分布;在步骤10322中,将概率分布中最大概率所对应的短期兴趣信息分布确定为目标对象的短期兴趣信息分布,并确定与短期兴趣信息分布对应的长期兴趣信息分布;在步骤10323中,结合短期兴趣信息分布与长期兴趣信息分布,得到基于长期兴趣和短期兴趣的兴趣信息分布。
承接上述示例,在服务器得到状态特征的编码向量后,通过兴趣预测模型中的全连接层对状态特征的编码向量进行非线性映射,得到短期兴趣信息分布的概率分布,例如,兴趣信息分布为符合短期兴趣的待推荐信息在所有待推荐信息中的占比,则短期兴趣信息分布的概率分布为占比的概率分布,例如符合短期兴趣的待推荐信息在所有待推荐信息中占40%(概率分布中的概率为30%)、符合短期兴趣的待推荐信息在所有待推荐信息中占50%(概率分布中的概率为30%)、符合短期兴趣的待推荐信息在所有待推荐信息中占60%(概率分布中的概率为60%),则将符合短期兴趣的待推荐信息在所有待推荐信息中占60%,确定为目标对象的短期兴趣信息分布,并将符合长期兴趣的待推荐信息在所有待推荐信息中占40%确定为长期兴趣信息分布,因此基于长期兴趣和短期兴趣的兴趣信息分布为[符合短期兴趣的待推荐信息在所有待推荐信息中占60%,符合长期兴趣的待推荐信息在所有待推荐信息中占40%]。
例如,兴趣信息分布为符合短期兴趣的待推荐信息的数量,则短期兴趣信息分布的概率分布为数量的概率分布,例如符合短期兴趣的待推荐信息的数量为3(概率分布中的概率为30%)、符合短期兴趣的待推荐信息的数量为4(概率分布中的概率为30%)、符合短期兴趣的待推荐信息的数量为5(概率分布中的概率为60%),则将符合短期兴趣的待推荐信息的数量为5,确定为目标对象的短期兴趣信息分布,由于某终端的屏幕中只能显示7个待推荐信息,则将符合长期兴趣的待推荐信息的数量为2确定为长期兴趣信息分布,因此,基于长期兴趣和短期兴趣的兴趣信息分布为[符合短期兴趣的待推荐信息的数量为5,符合长期兴趣的待推荐信息的数量为2]。
在一些实施例中,为了获取准确的短期兴趣信息分布的概率分布,对状态特征的编码向量进行非线性映射处理,得到短期兴趣信息分布的概率分布,包括:通过多个级联的全连接层的第一个全连接层,对状态特征的编码向量进行第一个全连接层的非线性映射处理;将第一个全连接层的映射结果输出到后续级联的全连接层,以在后续级联的全连接层中继续进行非线性映射处理和映射结果输出,直至输出到最后一个全连接层;将最后一个全连接层输出的映射结果作为短期兴趣信息分布的概率分布。
承接上述示例,兴趣预测模型包括多个级联的全连接层,其中,多个全连接层可以分别对应不同的映射处理。例如,该兴趣预测包括3全连接层,通过第1个全连接层对状态特征的编码向量进行非线性映射处理,以得到第1个全连接层的映射结果,并将第1个全连接层的映射结果输出至第2个全连接层,通过第2个全连接层对第1个全连接层的映射结果进行非线性映射处理,以得到第2个全连接层的映射结果,并将第2个全连接层的映射结果输出至第3个全连接层,通过第3个全连接层对第2个全连接层的映射结果进行非线性映射处理,得到第3个全连接层的映射结果,并将第3个全连接层的映射结果作为短期兴趣信息分布的概率分布。通过层级的非线性映射操作,可以层级地状态特征,以免遗漏重要兴趣信息,从而得到准确的短期兴趣信息分布的概率分布,以得到准确的兴趣信息分布,以便后续根据兴趣信息分布进行准确的信息推荐,向用户推荐合适的信息。
在步骤104中,从多个待推荐信息中,确定符合兴趣信息分布的待推荐信息。
在服务器得到待推荐信息以及基于短期兴趣和长期兴趣的兴趣信息分布后,对多个待推荐信息进行精筛,将筛选出的符合兴趣信息分布的待推荐信息确定为推荐信息,以根据推荐信息进行信息推荐,向目标用户推荐符合短期兴趣和长期兴趣的推荐信息。
在一些实施例中,从多个待推荐信息中,确定符合兴趣信息分布的待推荐信息,包括:基于兴趣信息分布,确定符合短期兴趣的第一待推荐信息数量以及符合长期兴趣的第二待推荐信息数量;从多个待推荐信息中,确定符合短期兴趣的第一待推荐信息数量的待推荐信息,并确定符合长期兴趣的第二待推荐信息数量的待推荐信息。
其中,兴趣信息分布的类型包括:符合短期兴趣的待推荐信息在所有待推荐信息中的占比;符合短期兴趣的待推荐信息的数量。当兴趣信息分布为符合短期兴趣的待推荐信息的数量时,由于目标用户所使用的终端的一屏中只能显示固定数量的待推荐信息,因此,根据符合短期兴趣的待推荐信息的数量(第一待推荐信息数量),可以确定符合长期兴趣的待推荐信息的数量(第二待推荐信息数量),从而可以从多个待推荐信息中,确定符合短期兴趣的第一待推荐信息数量的待推荐信息,以及符合长期兴趣的第二待推荐信息数量的待推荐信息。
当兴趣信息分布为符合短期兴趣的待推荐信息在所有待推荐信息中的占比时,由于目标用户所使用的终端的一屏中只能显示固定数量的待推荐信息,因此,根据符合短期兴趣的待推荐信息在所有待推荐信息中的占比,可以确定符合短期兴趣的第一待推荐信息数量以及符合长期兴趣的第二待推荐信息数量,例如符合短期兴趣的待推荐信息在所有待推荐信息中的占比为60%、符合长期兴趣的待推荐信息在所有待推荐信息中的占比为40%、一屏中能显示10个待推荐信息,则符合短期兴趣的第一待推荐信息数量为6、符合长期兴趣的第二待推荐信息数量为4。从而可以从多个待推荐信息中,确定符合短期兴趣的第一待推荐信息数量的待推荐信息,以及符合长期兴趣的第二待推荐信息数量的待推荐信息。
在一些实施例中,确定符合短期兴趣的第一待推荐信息数量的待推荐信息,包括:针对多个待推荐信息中的任一待推荐信息执行以下处理:确定符合短期兴趣的标准信息与待推荐信息的相似度;基于符合短期兴趣的标准信息分别与多个待推荐信息的相似度,对多个待推荐信息进行降序排序,选取出排序在前的第一待推荐信息数量的待推荐信息。
承接上述示例,在服务器确定符合短期兴趣的第一待推荐信息数量后,首先确定符合短期兴趣的标准信息,该符合短期兴趣的标准信息用于判断待推荐信息是否符合短期兴趣。然后,确定符合短期兴趣的标准信息与待推荐信息的余弦相似度,并基于符合短期兴趣的标准信息分别与多个待推荐信息的相似度,对多个待推荐信息进行降序排序,将排序在前的第一待推荐信息数量的待推荐信息确定为推荐信息,以进行后续的信息推荐。
另外,在服务器确定符合短期兴趣的第一待推荐信息数量后,在多个待推荐信息中确定符合短期兴趣的待推荐信息,并从符合短期兴趣的待推荐信息中随机抽取第一待推荐信息数量的待推荐信息。
在一些实施例中,确定符合短期兴趣的标准信息与待推荐信息的相似度之前,还包括:对目标对象的历史交互行为数据进行遍历处理,以确定历史交互行为数据中符合短期兴趣的历史交互信息序列;对符合短期兴趣的历史交互信息序列进行融合处理,得到符合短期兴趣的标准信息。
承接上述示例,为了确定符合短期兴趣的标准信息,可以先获取目标对象的历史交互行为数据(即目标对象与电子设备进行交互所生成的行为数据,例如,目标用户的历史点击行为数据、目标用户的历史观看数据等),然后确定历史交互行为数据中的历史交互信息的时间戳,并根据时间戳,对历史交互行为数据中所有的历史交互信息进行降序排序,确定排序在前的M个历史交互信息,即该M个历史交互信息符合短期兴趣,例如最近1天的历史交互信息符合短期兴趣。该M个历史交互信息的集合确定为符合短期兴趣的历史交互信息序列,最后对符合短期兴趣的历史交互信息序列进行融合处理(例如,平均处理、拼接处理、加和处理等),以得到符合短期兴趣的标准信息。
在一些实施例中,确定符合长期兴趣的第二待推荐信息数量的待推荐信息,包括:针对多个待推荐信息中的任一待推荐信息执行以下处理:确定符合长期兴趣的标准信息与待推荐信息的相似度;基于符合长期兴趣的标准信息分别与多个待推荐信息的相似度,对多个待推荐信息进行降序排序,选取出排序在前的第二待推荐信息数量的待推荐信息。
承接上述示例,在服务器确定符合长期兴趣的第二待推荐信息数量后,首先确定符合长期兴趣的标准信息,该符合长期兴趣的标准信息用于判断待推荐信息是否符合长期兴趣。然后,确定符合长期兴趣的标准信息与待推荐信息的余弦相似度,并基于符合长期兴趣的标准信息分别与多个待推荐信息的相似度,对多个待推荐信息进行降序排序,将排序在前的第二待推荐信息数量的待推荐信息确定为推荐信息,以进行后续的信息推荐。
另外,在服务器确定符合长期兴趣的第二待推荐信息数量后,在多个待推荐信息中确定符合长期兴趣的待推荐信息,并从符合长期兴趣的待推荐信息中随机抽取第二待推荐信息数量的待推荐信息。
在一些实施例中,确定符合长期兴趣的标准信息与待推荐信息的相似度之前,还包括:对目标对象的历史交互行为数据进行遍历处理,以确定历史交互行为数据中符合长期兴趣的历史交互信息序列;对符合长期兴趣的历史交互信息序列进行融合处理,得到符合长期兴趣的标准信息。
承接上述示例,为了确定符合长期兴趣的标准信息,可以先获取目标对象的历史交互行为数据(即目标对象与电子设备进行交互所生成的行为数据,例如,目标用户的历史点击行为数据、目标用户的历史观看数据等),然后确定历史交互行为数据中的历史交互信息的时间戳,将时间戳处于预设时间段的历史交互信息作为符合长期兴趣的历史交互信息序列,例如最近一周的历史交互信息的集合作为符合长期兴趣的历史交互信息序列。最后对符合短期兴趣的历史交互信息序列进行融合处理(例如,平均处理、拼接处理、加和处理等),以得到符合短期兴趣的标准信息。
在步骤105中,基于符合目标对象的兴趣信息分布的待推荐信息,执行针对目标对象的推荐操作。
在服务器确定了符合目标对象的兴趣信息分布的待推荐信息,可以根据符合目标对象的兴趣信息分布的待推荐信息,响应针对目标对象的信息推荐请求,在终端的显示界面上以预设的显示方式显示待推荐信息,以执行针对目标对象的推荐操作,例如,在符合目标对象的兴趣信息分布的待推荐信息中,将符合短期兴趣的待推荐信息以及符合长期兴趣的待推荐信息进行交叉推荐,或者,先推荐符合短期兴趣的待推荐信息,再推荐符合长期兴趣的待推荐信息。
如图5所示,对于新闻应用,当服务器获得符合目标对象的兴趣信息分布的待推荐新闻后,以响应针对目标用户的新闻推荐请求,在目标用户滑动新闻页面时,在新闻页面依次呈现待推荐新闻,从而目标用户可以浏览符合目标用户长期兴趣和短期兴趣的新闻,例如,符合短期兴趣的新闻包括[短期兴趣的新闻1,短期兴趣的新闻2,短期兴趣的新闻3],符合长期兴趣的新闻包括[长期兴趣的新闻1,长期兴趣的新闻2],则新闻页面501显示短期兴趣的新闻1、新闻页面502显示短期兴趣的新闻2、新闻页面503显示短期兴趣的新闻3、新闻页面504显示长期兴趣的新闻1、新闻页面505显示长期兴趣的新闻2。
如图6所示,对于购物应用,当服务器获得符合目标对象的兴趣信息分布的待推荐商品后,以响应针对目标用户的商品推荐请求,在目标用户滑动商品页面时,在商品页面依次呈现待推荐商品,从而目标用户可以浏览符合目标用户长期兴趣和短期兴趣的商品,例如,符合短期兴趣的商品包括[短期兴趣的商品1,短期兴趣的商品2,短期兴趣的商品3],符合长期兴趣的商品包括[长期兴趣的商品1,长期兴趣的商品2],则商品页面601显示短期兴趣的商品1、新闻页面602显示长期兴趣的商品1、商品页面603显示短期兴趣的商品2、商品页面604显示长期兴趣的新闻2、商品页面605显示短期兴趣的新闻3。
在一些实施例中,需要对兴趣分布预测模型(预测模型)进行训练,以便通过兴趣分布预测模型获取基于短期兴趣以及长期兴趣的兴趣信息分布。如图7所示,通过强化学习的方式实现对兴趣分布预测模型进行训练,兴趣分布预测模型处于对学习器的行为进行执行和评判的环境中,其中,学习器根据输入的状态(状态特征样本)以及奖励值,输出动作(基于长期兴趣和短期兴趣的兴趣信息分布),同时,环境将执行学习器输出的动作,并根据动作改变状态,以产生新的状态特征,并反馈一个奖励值给学习器。学习器选择一个兴趣信息分布用于环境,环境接受该兴趣信息分布后状态特征发生变化,同时产生一个强化信号(奖励值或惩罚值)反馈给学习器,学习器根据强化信号和环境当前状态特征再选择下一个兴趣信息分布,选择的原则是使受到正强化(奖励值)的概率增大。选择的兴趣信息分布不仅影响立即强化值,而且影响环境下一时刻的状态特征及最终的强化值。具体的训练过程如下:
参见图3D,图3D是本发明实施例提供的兴趣分布预测模型的训练方法的一个可选的流程示意图:在步骤106中,基于目标对象的历史交互行为数据,构建用于训练兴趣分布预测模型的状态特征样本;在步骤107中,通过兴趣分布预测模型对状态特征样本进行预测处理,得到与多个基于长期兴趣和短期兴趣的兴趣信息分布分别对应的概率以及新状态特征样本;在步骤108中,将状态特征样本、基于长期兴趣和短期兴趣的兴趣信息分布、新状态特征样本、对应的概率以及状态特征样本的进程状态进行组合,得到组合样本;在步骤109中,基于组合样本,对兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型。
例如,为了训练兴趣分布预测模型,首先,需要从目标对象的历史交互行为数据中,抽取用于训练兴趣分布预测模型的状态特征样本。然后,初始化兴趣分布预测模型的参数、以及对应兴趣分布预测模型的目标训练网络的参数,其中,在初始化过程中,兴趣分布预测模型的参数与目标训练网络的参数相同,目标训练网络用于训练兴趣分布预测模型的参数。在兴趣分布预测模型的每次迭代训练过程中执行以下处理:通过兴趣分布预测模型对状态特征样本进行预测处理,以得到与多个基于长期兴趣和短期兴趣的兴趣信息分布分别对应的概率(奖励值)以及新状态特征样本,并结合贪婪机制从多个兴趣信息分布确定出预测的兴趣信息分布,并得到新状态特征样本和对应状态特征样本的概率(奖励值),并组合状态特征样本、基于长期兴趣和短期兴趣的兴趣信息分布、新状态特征样本、对应的概率以及状态特征样本的进程状态,以得到组合样本,基于多个组合样本,以不断累积更多的奖励的方式,训练兴趣分布预测模型,以得到训练后的兴趣分布预测模型,并通过训练后的兴趣分布预测模型获取基于短期兴趣以及长期兴趣的兴趣信息分布。
在一些实施例中,为了获取状态特征样本,可以对目标对象的历史交互行为数据进行遍历处理,得到目标对象的多个历史交互信息;针对多个历史交互信息中的任一历史交互信息执行以下处理:基于历史交互信息以及对应的历史推荐信息,确定对应的对象特征以及上下文环境特征;对对应的对象特征以及上下文环境特征进行融合处理,得到对应历史交互信息的状态特征样本。
在一些实施例中,在获得组合样本后,基于组合样本,以不断学习增大奖励的方式更新兴趣分布预测模型的参数。因此,基于组合样本,对兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型,包括:将组合样本存入经验回放集合,对经验回放集合进行随机采样,并通过对应兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标;根据目标训练总指标以及通过兴趣分布预测模型得到的训练指标,构建兴趣分布预测模型的损失函数;更新兴趣分布预测模型的参数直至状态特征样本的进程状态为终止状态,将进程状态为终止状态时兴趣分布预测模型的更新的参数,作为训练后的兴趣分布预测模型的参数。
例如,将组合样本存入经验回放集合,并从经验回放集合中随机采样多个采样结果(组合样本),通过对应兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标(目标价值,包括立即奖励值以及未来奖励值),根据目标训练总指标以及通过兴趣分布预测模型得到的训练指标,构建兴趣分布预测模型的损失函数,将目标训练总指标以及训练指标代入损失函数中,以通过梯度反向传播更新兴趣分布预测模型的参数直至状态特征样本的进展状态为终止状态。
在一些实施例中,通过结合兴趣分布预测模型以及目标训练模型,得到准确的目标训练总指标。即通过对应兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标,包括:针对任一采样结果执行以下处理:当采样结果中的状态特征样本的进程状态为终止状态时,将采样结果中的概率确定为采样结果对应的目标训练总指标;当采样结果中的状态特征样本的进程状态为非终止状态时,通过兴趣分布预测模型,将最大训练指标所对应的基于长期兴趣和短期兴趣的兴趣信息分布确定为目标兴趣信息分布,并通过对应兴趣分布预测模型的目标训练模型确定目标兴趣信息分布对应的目标训练指标;结合采样结果中的概率以及目标训练指标,得到采样结果对应的目标训练总指标。
例如,本发明实施例结合强化学习方法训练兴趣分布预测模型,其中,兴趣分布预测模型以及目标训练模型构成深度双Q网络模型。深度双Q网络模型的输入为:迭代轮数T,状态特征维度n,动作集A,步长α,衰减因子γ,探索率∈,兴趣分布预测模型(Q网络),与兴趣分布预测模型对应的目标训练网络(目标网络Q′),批量梯度下降的样本数m,目标网络Q′参数更新频率C;深度双Q网络模型的输出是Q网络参数。
其训练流程如下步骤所示:在步骤1中,随机初始化所有状态和动作对应的价值Q(与奖励值R存在联系),随机初始化当前Q网络的所有参数w,初始化目标网络Q′的参数w′=w,清空经验回放的集合D;在步骤2中,从迭代轮数1开始进行迭代,迭代过程如下:初始化当前状态序列的第一个状态,获取对应该状态的特征向量φ(S);在Q网络中使用φ(S)作为输入,得到Q网络的所有动作(兴趣信息分布)对应的Q值输出,用基于探索率∈的贪婪法在当前Q值输出中选择对应的动作A(目标兴趣信息分布);在状态S执行当前动作A,得到新状态S′,对应新状态S′的特征向量φ(S′)和动作A的奖励值R(概率),以及当前是否为终止状态(is_end);将{φ(S),A,R,φ(S′),是否为终止状态(is_end)}这个组合样本存入经验回放集合D;将上述步骤的新状态变为了当前状态,即S=S′;从经验回放集合D中采样m个采样结果{φ(Sj),Aj,Rj,φ(S′j),是否为终止状态(is_endj)},j=1,2,…m,参见以下公式(1)计算当前目标Q值yj(目标训练总指标):
通过使用均方差损失函数以及神经网络的梯度反向传播来更新兴趣分布预测模型的所有参数w,如果S′是终止状态,即这里是最后一刷推荐信息,则当前迭代完毕,否则重复上述正向传递过程,实际应用中,为了算法较好的收敛,探索率∈需要随着迭代的进行而变小。
下面,将说明本发明实施例在一个实际的应用场景中的示例性应用。
本发明实施例可以应用于各种推荐的应用场景中,如图1所示,终端200通过网络300连接部署在云端的服务器100,在终端200上安装新闻应用,获取针对目标用户的新闻推荐请求后,调用服务器100的信息推荐接口,服务器100根据针对目标用户的新闻推荐请求,基于长期兴趣和短期兴趣的兴趣信息分布,并确定出符合兴趣信息分布的待推荐新闻,以快速响应新闻推荐请求,从而目标用户可以浏览到符合目标用户长期兴趣以及短期兴趣的新闻,避免推荐的新闻都偏向长期兴趣或者短期兴趣,提高用户体验感。
新闻个性化推荐是根据用户的兴趣特点和阅读行为,向用户推荐感兴趣的新闻。新闻个性化推荐***,包含四个模块:用户画像模块、召回模块、点击通过率(Click-Through-Rate,CTR)预估模块以及重排模块。召回模块用于筛选好粗排的文章(召回文章)后,将粗排的文章输出至CTR预估模块,CTR预估模块对这些召回文章进行精排序,再经过重排模块,最终推荐给用户。在整个推荐过程当中,CTR预估模块起到了举足轻重的作用。CTR预估模块依赖于排序模型,排序模型的优劣决定了推荐结果的准确性。
相关技术中,如图8所示,将用户的长期兴趣特征和短期兴趣特征、文章侧特征(例如文章分类,文章标签,文章点击数,文章曝光量,文章作者,文章调性等)以及上下文环境特征输入到排序模型中进行训练,以预测文章的被点击概率。
由于事先并不知道用户长期兴趣和短期兴趣对下次阅读的影响有多大,因此在计算用户的兴趣特征时按照等权平均的方式获取用户的整体兴趣特征,从而出现一些问题:1)推荐的内容太过偏于用户的长期兴趣,但是该兴趣已经很久远了,或者用户之前短期关注的某个突发事件,现在已经不喜欢了;2)推荐的内容太过偏向于短期兴趣,给用户推荐的内容越来越窄,内容多样性较差,影响到用户体验。
为了解决上述问题,本发明实施例提出了一种基于强化学习的均衡长短期兴趣的推荐模型(基于人工智能的信息推荐方法),调整短期兴趣文章占比,以学习到用户对于长短期兴趣的偏好程度,从而捕捉到用户对于长短期兴趣的均衡点,实时准确的反映到推荐模型当中,尽最大可能的去满足所有用户的需求,力求做到更好的用户体验。
如图9所示,个性化新闻推荐包括召回和排序两个阶段,两个阶段各司其职,分别完成不同的任务,而且各自的侧重点也不一样。召回阶段主要完成重要内容的过滤,其重点是如何快速有效的从海量新闻当中抽取出用户可能感兴趣的内容,难点是海量数据的匹配问题(直接面对海量新闻和海量用户),计算的复杂度是个必须考虑的问题。而排序阶段的重点在于全面准确的预估用户对召回的少量新闻的感兴趣的程度即CTR。
本发明实施例提出的一种基于强化学习的均衡长期兴趣和短期兴趣的推荐模型,采用强化学习的深度双Q网络(Double Deep Q Network,DDQN)模型,获取短期兴趣文章占比,以学习用户对于短期兴趣的需求程度,捕捉用户对于长期兴趣和短期兴趣的均衡点,并实时准确的反映到推荐模型当中,尽最大可能的去满足所有用户的需求,力求做到更好的用户体验。
其中,强化学习中,动作(action)表示每屏中符合短期兴趣的文章的篇数,动作空间(action space)为action可选择的范围;奖励(reward)表示获得的页面浏览量(pageview,pv)/播放数(Video View,vv),旧状态(old_state)表示采取该action前的环境以及用户的特征表示(用户画像),新状态(new_state)表示采取该action后的环境以及用户的特征表示,终止状态(is_terminal)表示最后一刷新闻。
如图10所示,Q网络采用多层感知器(Multi-Layer Perceptron,MLP),状态(state)经过其嵌入查找层,得到对应的编码向量,并经过多层全连接层进行映射处理,其中,最后一层全连接层输出为action以及对应的奖励。其中,本发明中的Q网络并不局限于多层感知结构,也可以采用其他的网络形式。
如图11所示,下面介绍本发明实施例的基于强化学习的均衡长期兴趣和短期兴趣的推荐模型的训练过程,其训练流程如下所示:
步骤a):计算用户的点击通过率(CTR r0),并初始化模型参数(例如,长短期兴趣的权重),以得到短期兴趣推荐占比a1;
步骤b):当用户有反馈动作(例如点击操作、滑动操作等)后,重新计算用户的CTRr1,并更新用户画像s1,得到新的用户画像s2;
步骤c):根据CTR的变化量,对模型参数进行迭代优化(更新长短期兴趣的权重),以得到短期兴趣推荐占比a2;
步骤d):当用户有反馈动作后,重新计算用户的CTR r2,并更新用户画像s2,得到新的用户画像s3;
步骤e):重复进行步骤b、步骤c以及步骤d,直至到达停止条件,例如用户停止反馈。
本发明实施例的推荐模型可以采用DDQN模型,下面介绍DDQN的训练方法,参见图12,图12是本发明实施例提供的DDQN模型的架构图,其中,DDQN模型的输入为:迭代轮数T,状态特征维度n,动作集A,步长α,衰减因子γ,探索率∈,Q网络(兴趣分布预测模型),与Q网络对应的目标网络Q′(目标训练网络),批量梯度下降的样本数m,目标网络Q′参数更新频率C;DDQN模型的输出是Q网络参数。其训练流程如下所示:
步骤1、随机初始化所有状态和动作对应的价值Q(与奖励R存在联系),随机初始化当前Q网络的所有参数w,初始化目标网络Q′的参数w′=w,清空经验回放的集合D;
步骤2、从迭代轮数1开始进行迭代,迭代过程如下:
步骤21)初始化当前状态序列的第一个状态,获取对应该状态的特征向量φ(S);
步骤22)在Q网络中使用φ(S)作为输入,得到Q网络的所有动作(actionspace中的各个action)对应的Q值输出,用基于探索率∈的贪婪法在当前Q值输出中选择对应的动作A;
步骤23)在状态S执行当前动作A,得到新状态S′,对应新状态S′的特征向量φ(S′)和动作A的奖励R,以及当前是否为终止状态(is_end);
步骤24)将{φ(S),A,R,φ(S′),是否为终止状态(is_end)}这个五元组存入经验回放集合D;
步骤25)将上述步骤的新状态变为了当前状态,即S=S′;
步骤26)从经验回放集合D中采样m个样本{φ(Sj),Aj,Rj,φ(S′j),是否为终止状态(is_endj)},j=1,2,…m,参见以下公式(2)计算当前目标Q值yj:
步骤27)使用均方差损失函数,通过神经网络的梯度反向传播来更新预测器网络的所有参数w,其中均方差损失函数参见公式(3):
步骤28)如果T与C的模值为1,则更新目标网络Q′参数w′=w,即定期更新目标网络Q′参数,Q网络会在每次迭代过程中进行更新,但是只在T与C的模值为1时才会将当前的Q网络的参数赋予给目标网络Q′;
步骤29)如果S′是终止状态,即这里是最后一刷推荐信息,则当前迭代完毕,否则重复上述正向传递过程。
实际应用中,为了算法较好的收敛,探索率∈需要随着迭代的进行而变小,这里不再是直接在目标网络Q′里面找各个动作中最大的Q值,而是先在当前网络Q中先找出最大Q值对应的动作,即参见公式(4):
amax(S′j,w)=argmaxa′Q(φ(S′j),a,w) (4)
然后利用这个选择出来的动作amax(S′j,w)在目标网络Q′里面去计算目标Q值,参见公式(5):
yj=Rj+γQ′(φ(S′j),amax(S′j,w),w′) (5)
将公式(4)和公式(5)综合起来即为公式(2)。
在排序阶段中,本发明实施例调用基于强化学习的均衡长期兴趣和短期兴趣的推荐模型,对展示结果中的符合短期兴趣的文章的占比进行调整,根据模型学习出的用户对于长期兴趣和短期兴趣的均衡点,决定当前展示出现的符合短期兴趣的文章数,实时的反馈到推荐结果中,力求拿到最大的收益。
本发明实施例提出的均衡长期兴趣和短期兴趣的推荐模型对相关技术中的排序模型进行了修正,从而更好的满足了用户对于长期兴趣和短期兴趣的均衡需求,最大可能的满足了更多用户的需求,以做到更好的用户体验。
至此已经结合本发明实施例提供的服务器的示例性应用和实施,说明本发明实施例提供的基于人工智能的信息推荐方法。本发明实施例还提供信息推荐装置,实际应用中,信息推荐装置中的各功能模块可以由电子设备(如终端设备、服务器或服务器集群)的硬件资源,如处理器等计算资源、通信资源(如用于支持实现光缆、蜂窝等各种方式通信)、存储器协同实现。图2示出了存储在存储器550中的信息推荐装置555,其可以是程序和插件等形式的软件,例如,软件C/C++、Java等编程语言设计的软件模块、C/C++、Java等编程语言设计的应用软件或大型软件***中的专用软件模块、应用程序接口、插件、云服务等实现方式,下面对不同的实现方式举例说明。
示例一、信息推荐装置是移动端应用程序及模块
本发明实施例中的信息推荐装置555可提供为使用软件C/C++、Java等编程语言设计的软件模块,嵌入到基于Android或iOS等***的各种移动端应用中(以可执行指令存储在移动端的存储介质中,由移动端的处理器执行),从而直接使用移动端自身的计算资源完成相关的信息推荐任务,并且定期或不定期地通过各种网络通信方式将处理结果传送给远程的服务器,或者在移动端本地保存。
示例二、信息推荐装置是服务器应用程序及平台
本发明实施例中的信息推荐装置555可提供为使用C/C++、Java等编程语言设计的应用软件或大型软件***中的专用软件模块,运行于服务器端(以可执行指令的方式在服务器端的存储介质中存储,并由服务器端的处理器运行),服务器使用自身的计算资源完成相关的信息推荐任务。
本发明实施例还可以提供为在多台服务器构成的分布式、并行计算平台上,搭载定制的、易于交互的网络(Web)界面或其他各用户界面(UI,User Interface),形成供个人、群体或单位使用的信息推荐平台等。
示例三、信息推荐装置是服务器端应用程序接口(API,Application ProgramInterface)及插件
本发明实施例中的信息推荐装置555可提供为服务器端的API或插件,以供用户调用,以执行本发明实施例的基于人工智能的信息推荐方法,并嵌入到各类应用程序中。
示例四、信息推荐装置是移动设备客户端API及插件
本发明实施例中的信息推荐装置555可提供为移动设备端的API或插件,以供用户调用,以执行本发明实施例的基于人工智能的信息推荐方法。
示例五、信息推荐装置是云端开放服务
本发明实施例中的信息推荐装置555可提供为向用户开发的信息推荐云服务,供个人、群体或单位获取推荐列表。
其中,信息推荐装置555包括一系列的模块,包括筛选模块5551、融合模块5552、预测模块5553、处理模块5554、获取模块5555、预处理模块5556以及训练模块5557。下面继续说明本发明实施例提供的信息推荐装置555中各个模块配合实现信息推荐的方案。
筛选模块5551,用于对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息;融合模块5552,用于对目标对象的对象特征以及上下文环境特征进行融合处理,得到所述目标对象的状态特征;预测模块5553,用于基于所述目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布;处理模块5554,用于从所述多个待推荐信息中,确定符合所述兴趣信息分布的待推荐信息;基于符合所述目标对象的兴趣信息分布的待推荐信息,执行针对所述目标对象的推荐操作。
在一些实施例中,所述融合模块5552还用于对目标对象的对象特征以及上下文环境特征进行拼接处理,将拼接结果作为所述目标对象的状态特征;或者,对所述目标对象的对象特征以及上下文环境特征进行加权求和,将加权求和结果作为所述目标对象的状态特征。
在一些实施例中,所述信息推荐装置555还包括:获取模块5555,用于获取所述目标对象的对象特征;其中,所述对象特征包括以下至少之一:所述目标对象的偏好特征;用于表征所述目标对象的基本信息的属性特征;用于表征所述目标对象所使用设备的设备特征;获取所述目标对象的上下文环境特征;其中,所述目标对象的上下文环境特征包括以下至少之一:用于表征所述目标对象的历史交互信息的历史交互特征;用于表征所述目标对象的交互时间的时间特征;用于表征所述目标对象的历史推荐信息的历史推荐特征。
在一些实施例中,所述预测模块5553还用于调用兴趣预测模型执行以下处理:对所述目标对象的状态特征进行编码处理,得到所述状态特征的编码向量;对所述状态特征的编码向量进行映射处理,得到基于长期兴趣和短期兴趣的兴趣信息分布。
在一些实施例中,所述预测模块5553还用于对所述目标对象的状态特征进行高维向量编码处理,得到对应所述状态特征的高维向量;对所述高维向量进行低维向量编码处理,得到对应所述状态特征的低维向量,并将所述低维向量作为所述状态特征的编码向量;其中,所述高维向量的维度大于所述低维向量的维度。
在一些实施例中,所述预测模块5553还用于对所述状态特征的编码向量进行非线性映射处理,得到短期兴趣信息分布的概率分布;将所述概率分布中最大概率所对应的短期兴趣信息分布确定为所述目标对象的短期兴趣信息分布,并确定与所述短期兴趣信息分布对应的长期兴趣信息分布;结合所述短期兴趣信息分布与所述长期兴趣信息分布,得到基于长期兴趣和短期兴趣的兴趣信息分布。
在一些实施例中,所述兴趣预测模型包括多个级联的全连接层;所述预测模块5553还用于通过所述多个级联的全连接层的第一个全连接层,对所述状态特征的编码向量进行所述第一个全连接层的非线性映射处理;将所述第一个全连接层的映射结果输出到后续级联的全连接层,以在所述后续级联的全连接层中继续进行非线性映射处理和映射结果输出,直至输出到最后一个全连接层;将所述最后一个全连接层输出的映射结果作为短期兴趣信息分布的概率分布。
在一些实施例中,所述处理模块5554还用于基于所述兴趣信息分布,确定符合短期兴趣的第一待推荐信息数量以及符合长期兴趣的第二待推荐信息数量;其中,所述兴趣信息分布的类型包括:符合短期兴趣的待推荐信息在所有待推荐信息中的占比;符合短期兴趣的待推荐信息的数量;从所述多个待推荐信息中,确定符合短期兴趣的第一待推荐信息数量的待推荐信息,并确定符合长期兴趣的第二待推荐信息数量的待推荐信息。
在一些实施例中,所述处理模块5554还用于针对所述多个待推荐信息中的任一待推荐信息执行以下处理:确定符合短期兴趣的标准信息与所述待推荐信息的相似度;基于所述符合短期兴趣的标准信息分别与多个所述待推荐信息的相似度,对所述多个待推荐信息进行降序排序,选取出排序在前的所述第一待推荐信息数量的待推荐信息;针对所述多个待推荐信息中的任一待推荐信息执行以下处理:确定符合长期兴趣的标准信息与所述待推荐信息的相似度;基于所述符合长期兴趣的标准信息分别与多个所述待推荐信息的相似度,对所述多个待推荐信息进行降序排序,选取出排序在前的所述第二待推荐信息数量的待推荐信息。
在一些实施例中,所述信息推荐装置555还包括:预处理模块5556,用于对所述目标对象的历史交互行为数据进行遍历处理,以确定所述历史交互行为数据中符合短期兴趣的历史交互信息序列;对所述符合短期兴趣的历史交互信息序列进行融合处理,得到符合短期兴趣的标准信息;对所述目标对象的历史交互行为数据进行遍历处理,以确定所述历史交互行为数据中符合长期兴趣的历史交互信息序列;对所述符合长期兴趣的历史交互信息序列进行融合处理,得到符合长期兴趣的标准信息。
在一些实施例中,所述筛选模块5551还用于基于所述目标对象的对象特征以及上下文环境特征,对所述待筛选信息集合中的多个信息进行预测处理,得到所述多个信息的筛选概率;对所述多个待筛选信息进行基于所述筛选概率的降序排序,将排序在前的多个信息作为待推荐信息。
在一些实施例中,所述信息推荐装置555还包括:训练模块5557,用于基于所述目标对象的历史交互行为数据,构建用于训练兴趣分布预测模型的状态特征样本;通过所述兴趣分布预测模型对所述状态特征样本进行预测处理,得到与多个基于长期兴趣和短期兴趣的兴趣信息分布分别对应的概率以及新状态特征样本;将所述状态特征样本、所述基于长期兴趣和短期兴趣的兴趣信息分布、所述新状态特征样本、对应的所述概率以及所述状态特征样本的进程状态进行组合,得到组合样本;基于所述组合样本,对所述兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型。
在一些实施例中,所述训练模块5557还用于对所述目标对象的历史交互行为数据进行遍历处理,得到所述目标对象的多个历史交互信息;针对所述多个历史交互信息中的任一历史交互信息执行以下处理:基于所述历史交互信息以及对应的历史推荐信息,确定对应的对象特征以及上下文环境特征;对所述对应的对象特征以及上下文环境特征进行融合处理,得到对应所述历史交互信息的状态特征样本。
在一些实施例中,所述训练模块5557还用于将组合样本存入经验回放集合,对所述经验回放集合进行随机采样,并通过对应所述兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标;根据所述目标训练总指标以及通过所述兴趣分布预测模型得到的训练指标,构建所述兴趣分布预测模型的损失函数;更新所述兴趣分布预测模型的参数直至所述状态特征样本的进程状态为终止状态,将所述进程状态为终止状态时所述兴趣分布预测模型的更新的参数,作为训练后的所述兴趣分布预测模型的参数。
在一些实施例中,所述训练模块5557还用于针对任一所述采样结果执行以下处理:当所述采样结果中的所述状态特征样本的进程状态为终止状态时,将所述采样结果中的所述概率确定为所述采样结果对应的目标训练总指标;当所述采样结果中的所述状态特征样本的进程状态为非终止状态时,通过所述兴趣分布预测模型,将最大训练指标所对应的基于长期兴趣和短期兴趣的兴趣信息分布确定为目标兴趣信息分布,并通过对应所述兴趣分布预测模型的目标训练模型确定所述目标兴趣信息分布对应的目标训练指标;结合所述采样结果中的所述概率以及所述目标训练指标,得到所述采样结果对应的目标训练总指标。
本发明实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本发明实施例上述的基于人工智能的信息推荐方法。
本发明实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本发明实施例提供的基于人工智能的信息推荐方法,例如,如图3A-3D示出的基于人工智能的信息推荐方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件***中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (15)
1.一种基于人工智能的信息推荐方法,其特征在于,包括:
对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息;
对目标对象的对象特征以及上下文环境特征进行融合处理,得到所述目标对象的状态特征;
基于所述目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布;
从所述多个待推荐信息中,确定符合所述兴趣信息分布的待推荐信息;
基于符合所述目标对象的兴趣信息分布的待推荐信息,执行针对所述目标对象的推荐操作。
2.根据权利要求1所述的方法,其特征在于,所述对目标对象的对象特征以及上下文环境特征进行融合处理,得到所述目标对象的状态特征,包括:
对目标对象的对象特征以及上下文环境特征进行拼接处理,将拼接结果作为所述目标对象的状态特征;或者,
对所述目标对象的对象特征以及上下文环境特征进行加权求和,将加权求和结果作为所述目标对象的状态特征。
3.根据权利要求1所述的方法,其特征在于,所述对目标对象的对象特征以及上下文环境特征进行融合处理,得到所述目标对象的状态特征之前,还包括:
获取所述目标对象的对象特征;
其中,所述对象特征包括以下至少之一:所述目标对象的偏好特征;用于表征所述目标对象的基本信息的属性特征;用于表征所述目标对象所使用设备的设备特征;
获取所述目标对象的上下文环境特征;
其中,所述目标对象的上下文环境特征包括以下至少之一:用于表征所述目标对象的历史交互信息的历史交互特征;用于表征所述目标对象的交互时间的时间特征;用于表征所述目标对象的历史推荐信息的历史推荐特征。
4.根据权利要求1所述的方法,其特征在于,所述基于所述目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布,包括:
调用兴趣预测模型执行以下处理:
对所述目标对象的状态特征进行编码处理,得到所述状态特征的编码向量;
对所述状态特征的编码向量进行映射处理,得到基于长期兴趣和短期兴趣的兴趣信息分布。
5.根据权利要求4所述的方法,其特征在于,所述对所述目标对象的状态特征进行编码处理,得到所述状态特征的编码向量,包括:
对所述目标对象的状态特征进行高维向量编码处理,得到对应所述状态特征的高维向量;
对所述高维向量进行低维向量编码处理,得到对应所述状态特征的低维向量,并
将所述低维向量作为所述状态特征的编码向量;
其中,所述高维向量的维度大于所述低维向量的维度。
6.根据权利要求4所述的方法,其特征在于,所述对所述状态特征的编码向量进行映射处理,得到基于长期兴趣和短期兴趣的兴趣信息分布,包括:
对所述状态特征的编码向量进行非线性映射处理,得到短期兴趣信息分布的概率分布;
将所述概率分布中最大概率所对应的短期兴趣信息分布确定为所述目标对象的短期兴趣信息分布,并
确定与所述短期兴趣信息分布对应的长期兴趣信息分布;
结合所述短期兴趣信息分布与所述长期兴趣信息分布,得到基于长期兴趣和短期兴趣的兴趣信息分布。
7.根据权利要求6所述的方法,其特征在于,
所述兴趣预测模型包括多个级联的全连接层;
所述对所述状态特征的编码向量进行非线性映射处理,得到短期兴趣信息分布的概率分布,包括:
通过所述多个级联的全连接层的第一个全连接层,对所述状态特征的编码向量进行所述第一个全连接层的非线性映射处理;
将所述第一个全连接层的映射结果输出到后续级联的全连接层,以在所述后续级联的全连接层中继续进行非线性映射处理和映射结果输出,直至输出到最后一个全连接层;
将所述最后一个全连接层输出的映射结果作为短期兴趣信息分布的概率分布。
8.根据权利要求1所述的方法,其特征在于,所述从所述多个待推荐信息中,确定符合所述兴趣信息分布的待推荐信息,包括:
基于所述兴趣信息分布,确定符合短期兴趣的第一待推荐信息数量以及符合长期兴趣的第二待推荐信息数量;
其中,所述兴趣信息分布的类型包括:符合短期兴趣的待推荐信息在所有待推荐信息中的占比;符合短期兴趣的待推荐信息的数量;
从所述多个待推荐信息中,确定符合短期兴趣的第一待推荐信息数量的待推荐信息,并
确定符合长期兴趣的第二待推荐信息数量的待推荐信息。
9.根据权利要求8所述的方法,其特征在于,
所述确定符合短期兴趣的第一待推荐信息数量的待推荐信息,包括:
针对所述多个待推荐信息中的任一待推荐信息执行以下处理:
确定符合短期兴趣的标准信息与所述待推荐信息的相似度;
基于所述符合短期兴趣的标准信息分别与多个所述待推荐信息的相似度,对所述多个待推荐信息进行降序排序,选取出排序在前的所述第一待推荐信息数量的待推荐信息;
所述确定符合长期兴趣的第二待推荐信息数量的待推荐信息,包括:
针对所述多个待推荐信息中的任一待推荐信息执行以下处理:
确定符合长期兴趣的标准信息与所述待推荐信息的相似度;
基于所述符合长期兴趣的标准信息分别与多个所述待推荐信息的相似度,对所述多个待推荐信息进行降序排序,选取出排序在前的所述第二待推荐信息数量的待推荐信息。
10.根据权利要求9所述的方法,其特征在于,
所述确定符合短期兴趣的标准信息与所述待推荐信息的相似度之前,还包括:
对所述目标对象的历史交互行为数据进行遍历处理,以确定所述历史交互行为数据中符合短期兴趣的历史交互信息序列;
对所述符合短期兴趣的历史交互信息序列进行融合处理,得到符合短期兴趣的标准信息;
所述确定符合长期兴趣的标准信息与所述待推荐信息的相似度之前,还包括:
对所述目标对象的历史交互行为数据进行遍历处理,以确定所述历史交互行为数据中符合长期兴趣的历史交互信息序列;
对所述符合长期兴趣的历史交互信息序列进行融合处理,得到符合长期兴趣的标准信息。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述目标对象的历史交互行为数据,构建用于训练兴趣分布预测模型的状态特征样本;
通过所述兴趣分布预测模型对所述状态特征样本进行预测处理,得到与多个基于长期兴趣和短期兴趣的兴趣信息分布分别对应的概率以及新状态特征样本;
将所述状态特征样本、所述基于长期兴趣和短期兴趣的兴趣信息分布、所述新状态特征样本、对应的所述概率以及所述状态特征样本的进程状态进行组合,得到组合样本;
基于所述组合样本,对所述兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型。
12.根据权利要求11所述的方法,其特征在于,所述基于所述组合样本,对所述兴趣分布预测模型进行训练处理,得到训练后的兴趣分布预测模型,包括:
将组合样本存入经验回放集合,对所述经验回放集合进行随机采样,并通过对应所述兴趣分布预测模型的目标训练模型确定每个采样结果对应的目标训练总指标;
根据所述目标训练总指标以及通过所述兴趣分布预测模型得到的训练指标,构建所述兴趣分布预测模型的损失函数;
更新所述兴趣分布预测模型的参数直至所述状态特征样本的进程状态为终止状态,将所述进程状态为终止状态时所述兴趣分布预测模型的更新的参数,作为训练后的所述兴趣分布预测模型的参数。
13.一种信息推荐装置,其特征在于,所述装置包括:
筛选模块,用于对待筛选信息集合中的信息进行筛选处理,得到多个待推荐信息;
融合模块,用于对目标对象的对象特征以及上下文环境特征进行融合处理,得到所述目标对象的状态特征;
预测模块,用于基于所述目标对象的状态特征进行兴趣分布预测处理,得到基于长期兴趣和短期兴趣的兴趣信息分布;
处理模块,用于从所述多个待推荐信息中,确定符合所述兴趣信息分布的待推荐信息;基于符合所述目标对象的兴趣信息分布的待推荐信息,执行针对所述目标对象的推荐操作。
14.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至12任一项所述的基于人工智能的信息推荐方法。
15.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至12任一项所述的基于人工智能的信息推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010823688.9A CN111898032B (zh) | 2020-08-13 | 2020-08-13 | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010823688.9A CN111898032B (zh) | 2020-08-13 | 2020-08-13 | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111898032A true CN111898032A (zh) | 2020-11-06 |
CN111898032B CN111898032B (zh) | 2024-04-30 |
Family
ID=73229571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010823688.9A Active CN111898032B (zh) | 2020-08-13 | 2020-08-13 | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111898032B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112398947A (zh) * | 2020-11-18 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 一种信息推送方法、装置、设备及计算机可读存储介质 |
CN112400515A (zh) * | 2020-11-20 | 2021-02-26 | 腾讯科技(深圳)有限公司 | 基于人工智能的植物生长环境控制方法、装置、设备及存储介质 |
CN112818216A (zh) * | 2021-01-13 | 2021-05-18 | 平安科技(深圳)有限公司 | 客户推荐方法、装置、电子设备及存储介质 |
CN113129108A (zh) * | 2021-04-26 | 2021-07-16 | 山东大学 | 基于Double DQN算法的产品推荐方法及装置 |
CN113313314A (zh) * | 2021-06-11 | 2021-08-27 | 北京沃东天骏信息技术有限公司 | 模型训练方法、装置、设备及存储介质 |
CN113343085A (zh) * | 2021-05-27 | 2021-09-03 | 北京三快在线科技有限公司 | 一种信息推荐方法、装置、存储介质及电子设备 |
CN114443956A (zh) * | 2022-01-14 | 2022-05-06 | 腾讯科技(深圳)有限公司 | 内容推荐方法以及相关设备 |
CN114470758A (zh) * | 2022-01-17 | 2022-05-13 | 上海光追网络科技有限公司 | 基于vr的人物动作数据处理方法及*** |
CN114996487A (zh) * | 2022-05-24 | 2022-09-02 | 北京达佳互联信息技术有限公司 | 媒体资源推荐方法、装置、电子设备以及存储介质 |
CN115481315A (zh) * | 2022-08-30 | 2022-12-16 | 海尔优家智能科技(北京)有限公司 | 推荐信息的确定方法和装置、存储介质及电子装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130124437A1 (en) * | 2011-11-16 | 2013-05-16 | Marco Pennacchiotti | Social media user recommendation system and method |
CN104572797A (zh) * | 2014-05-12 | 2015-04-29 | 深圳市智搜信息技术有限公司 | 基于主题模型的个性化服务推荐***和方法 |
CN110413893A (zh) * | 2019-07-31 | 2019-11-05 | 腾讯科技(北京)有限公司 | 对象推送方法、装置、计算机设备及存储介质 |
CN110489639A (zh) * | 2019-07-15 | 2019-11-22 | 北京奇艺世纪科技有限公司 | 一种内容推荐方法及装置 |
CN110941764A (zh) * | 2019-12-03 | 2020-03-31 | 腾讯科技(深圳)有限公司 | 对象推荐方法、装置、计算机设备和存储介质 |
CN111159564A (zh) * | 2019-12-31 | 2020-05-15 | 联想(北京)有限公司 | 信息推荐方法、装置、存储介质及计算机设备 |
CN111191059A (zh) * | 2019-12-31 | 2020-05-22 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、计算机存储介质及电子设备 |
CN111444428A (zh) * | 2020-03-27 | 2020-07-24 | 腾讯科技(深圳)有限公司 | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 |
-
2020
- 2020-08-13 CN CN202010823688.9A patent/CN111898032B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130124437A1 (en) * | 2011-11-16 | 2013-05-16 | Marco Pennacchiotti | Social media user recommendation system and method |
CN104572797A (zh) * | 2014-05-12 | 2015-04-29 | 深圳市智搜信息技术有限公司 | 基于主题模型的个性化服务推荐***和方法 |
CN110489639A (zh) * | 2019-07-15 | 2019-11-22 | 北京奇艺世纪科技有限公司 | 一种内容推荐方法及装置 |
CN110413893A (zh) * | 2019-07-31 | 2019-11-05 | 腾讯科技(北京)有限公司 | 对象推送方法、装置、计算机设备及存储介质 |
CN110941764A (zh) * | 2019-12-03 | 2020-03-31 | 腾讯科技(深圳)有限公司 | 对象推荐方法、装置、计算机设备和存储介质 |
CN111159564A (zh) * | 2019-12-31 | 2020-05-15 | 联想(北京)有限公司 | 信息推荐方法、装置、存储介质及计算机设备 |
CN111191059A (zh) * | 2019-12-31 | 2020-05-22 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、计算机存储介质及电子设备 |
CN111444428A (zh) * | 2020-03-27 | 2020-07-24 | 腾讯科技(深圳)有限公司 | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112398947B (zh) * | 2020-11-18 | 2022-03-08 | 腾讯科技(深圳)有限公司 | 一种信息推送方法、装置、设备及计算机可读存储介质 |
CN112398947A (zh) * | 2020-11-18 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 一种信息推送方法、装置、设备及计算机可读存储介质 |
CN112400515A (zh) * | 2020-11-20 | 2021-02-26 | 腾讯科技(深圳)有限公司 | 基于人工智能的植物生长环境控制方法、装置、设备及存储介质 |
CN112400515B (zh) * | 2020-11-20 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 基于人工智能的植物生长环境控制方法、装置、设备及存储介质 |
CN112818216A (zh) * | 2021-01-13 | 2021-05-18 | 平安科技(深圳)有限公司 | 客户推荐方法、装置、电子设备及存储介质 |
CN113129108A (zh) * | 2021-04-26 | 2021-07-16 | 山东大学 | 基于Double DQN算法的产品推荐方法及装置 |
CN113343085A (zh) * | 2021-05-27 | 2021-09-03 | 北京三快在线科技有限公司 | 一种信息推荐方法、装置、存储介质及电子设备 |
CN113313314A (zh) * | 2021-06-11 | 2021-08-27 | 北京沃东天骏信息技术有限公司 | 模型训练方法、装置、设备及存储介质 |
CN113313314B (zh) * | 2021-06-11 | 2024-05-24 | 北京沃东天骏信息技术有限公司 | 模型训练方法、装置、设备及存储介质 |
CN114443956A (zh) * | 2022-01-14 | 2022-05-06 | 腾讯科技(深圳)有限公司 | 内容推荐方法以及相关设备 |
CN114470758A (zh) * | 2022-01-17 | 2022-05-13 | 上海光追网络科技有限公司 | 基于vr的人物动作数据处理方法及*** |
CN114996487A (zh) * | 2022-05-24 | 2022-09-02 | 北京达佳互联信息技术有限公司 | 媒体资源推荐方法、装置、电子设备以及存储介质 |
CN114996487B (zh) * | 2022-05-24 | 2023-04-07 | 北京达佳互联信息技术有限公司 | 媒体资源推荐方法、装置、电子设备以及存储介质 |
CN115481315A (zh) * | 2022-08-30 | 2022-12-16 | 海尔优家智能科技(北京)有限公司 | 推荐信息的确定方法和装置、存储介质及电子装置 |
CN115481315B (zh) * | 2022-08-30 | 2024-03-22 | 海尔优家智能科技(北京)有限公司 | 推荐信息的确定方法和装置、存储介质及电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111898032B (zh) | 2024-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111898032B (zh) | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 | |
CN110781321B (zh) | 一种多媒体内容推荐方法及装置 | |
CN111291266A (zh) | 基于人工智能的推荐方法、装置、电子设备及存储介质 | |
CN111090756B (zh) | 基于人工智能的多目标推荐模型的训练方法及装置 | |
CN113516522B (zh) | 媒体资源推荐方法、多目标融合模型的训练方法及装置 | |
EP4181026A1 (en) | Recommendation model training method and apparatus, recommendation method and apparatus, and computer-readable medium | |
CN114265979B (zh) | 确定融合参数的方法、信息推荐方法和模型训练方法 | |
CN113254792B (zh) | 训练推荐概率预测模型的方法、推荐概率预测方法及装置 | |
CN110941764A (zh) | 对象推荐方法、装置、计算机设备和存储介质 | |
CN111798280B (zh) | 多媒体信息推荐方法、装置和设备及存储介质 | |
CN114764471A (zh) | 一种推荐方法、装置及存储介质 | |
CN109690581A (zh) | 用户指导***及方法 | |
CN113515690A (zh) | 内容召回模型的训练方法、内容召回方法、装置及设备 | |
CN114417174B (zh) | 内容推荐方法、装置、设备及计算机存储介质 | |
CN113780479A (zh) | 周期预测模型的训练方法及装置、周期预测方法、设备 | |
CN112989182B (zh) | 信息处理方法、装置、信息处理设备及存储介质 | |
CN117573961A (zh) | 信息推荐方法、装置、电子设备、存储介质及程序产品 | |
CN117056595A (zh) | 一种交互式的项目推荐方法、装置及计算机可读存储介质 | |
CN113836388A (zh) | 信息推荐方法、装置、服务器及存储介质 | |
CN113836390A (zh) | 资源推荐方法、装置、计算机设备及存储介质 | |
CN115017362A (zh) | 数据处理方法、电子设备及存储介质 | |
CN115329183A (zh) | 数据处理方法、装置、存储介质及设备 | |
CN115203516A (zh) | 基于人工智能的信息推荐方法、装置、设备及存储介质 | |
CN115878839A (zh) | 一种视频推荐方法、装置、计算机设备和计算机程序产品 | |
CN113836391B (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 |