CN115455276A - 推荐对象的方法、装置、计算机设备和存储介质 - Google Patents

推荐对象的方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN115455276A
CN115455276A CN202110639633.7A CN202110639633A CN115455276A CN 115455276 A CN115455276 A CN 115455276A CN 202110639633 A CN202110639633 A CN 202110639633A CN 115455276 A CN115455276 A CN 115455276A
Authority
CN
China
Prior art keywords
user
value
target
recommendation
candidate
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.)
Pending
Application number
CN202110639633.7A
Other languages
English (en)
Inventor
陈昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110639633.7A priority Critical patent/CN115455276A/zh
Publication of CN115455276A publication Critical patent/CN115455276A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及人工智能技术,提供了一种推荐对象的方法、装置、计算机设备和存储介质。所述方法包括:从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;相对意愿值,是任意用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值,意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,确定每一候选推荐对象对应的预测推荐结果;按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象。采用本方法能够实现对象的精准推荐。

Description

推荐对象的方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种推荐对象的方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了越来越多的人机交互场景。例如,用户通过与日常使用的对象进行交互,如在应用程序中的运行的小程序、公众号、访问的网页等,极大地方便了用户日常的公务、出行、购物以及信息验证等方方面面的业务办理与日常生活。其中,交互的对象在交互界面的显示方式一般为系统默认的固定排序或者是由用户自主设定。
然而,传统的对象推荐方式一般向用户推荐的是用户最近使用过的对象,基于这种对象推荐方式,并不能准确地表达用户对每一个对象的使用意愿,从而导致存在推荐结果不够准确。
发明内容
基于此,有必要针对上述技术问题,提供一种能够对对象进行精准推荐的推荐对象的方法、装置、计算机设备和存储介质。
一种推荐对象的方法,所述方法包括:
从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;所述相对意愿值,是任意用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值,所述意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;
针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果;
按照所述预测推荐结果,从所述候选推荐对象筛选出目标推荐对象,并基于所述目标用户标识推荐所述目标推荐对象。
在其中一个实施例中,所述推荐对象的方法还包括:
按照更新周期,基于每一更新周期内每一用户标识对应的已使用对象和未使用对象,对所述特征集合中的对象特征和用户特征进行更新。
一种推荐对象的装置,所述装置包括:
特征获取模块,用于从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;所述相对意愿值,是任意用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值,所述意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;
推荐结果预测模块,用于针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果;
对象推荐模块,用于按照所述预测推荐结果,从所述候选推荐对象筛选出目标推荐对象,并基于所述目标用户标识推荐所述目标推荐对象。
在其中一个实施例中,所述推荐对象的装置还包括模型确定模块;
所述模型确定模块,用于获取与目标用户标识所匹配的目标场景模式数据,确定与所述目标场景模式数据相对应的预测模型;
所述推荐结果预测模块,还用于针对每一候选推荐对象,将相应的所述对象特征和所述目标用户特征输入所述预测模型,得到每一所述候选推荐对象对应的预测推荐结果。
在其中一个实施例中,所述推荐对象的装置还包括数据获取模块和模型查找模块;
所述数据获取模块,用于获取与目标用户标识所匹配的目标场景模式数据;
所述模型查找模块,用于从基于场景模式数据构建的候选多层感知模型中,查找与所述目标场景模式数据相匹配的目标多层感知模型;
所述推荐结果预测模块,还用于针对每一候选推荐对象,将相应的所述对象特征和所述目标用户特征输入所述目标多层感知模型,基于所述目标多层感知模型进行多层感知的映射处理,确定每一所述候选推荐对象对应的预测推荐结果。
在其中一个实施例中,所述推荐对象的装置还包括数据排列组合模块和多层感知模型构建模块:
所述数据排列组合模块,用于对每一场景模式维度各自对应的候选场景模式数据进行排列组合,得到多组场景模式数据;
所述多层感知模型构建模块,用于针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的候选多层感知模型。
在其中一个实施例中,所述多层感知模型构建模块包括初始模型构建模块以及模型优化模块;
所述初始模型构建模块,用于针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的初始多层感知模型;
所述模型优化模块,用于基于相应场景模式数据对应的每一样本对象的预测推荐结果和实际结果计算对应的损失值,基于所述损失值进行误差反向传播,优化所述初始多层感知模型的初始多层感知参数,得到每一组场景模式数据对应的候选多层感知模型。
在其中一个实施例中,所述目标场景模式数据包括与所述目标用户标识对应的地域属性和与所述地域属性对应的状态时间;
所述数据获取模块包括地理位置信息获取模块、地域属性和状态时间确定模块;
所述地理位置信息获取模块,用于获取所述目标用户标识对应的终端在响应用户交互操作时采集的地理位置信息;
所述地域属性和状态时间确定模块,用于基于所述地理位置信息得到对应的状态时间,并确定所述地理位置信息所对应地域的地域属性。
在其中一个实施例中,所述目标推荐对象包括用于在母应用的运行环境中运行的目标推荐子应用;
所述地理位置信息获取模块,还用于当所述目标用户标识对应的终端所运行的母应用进入子应用访问页面时,获取所述终端所采集的地理位置信息;
所述对象推荐模块,还用于将所述目标推荐子应用的推荐信息推送至所述目标用户标识对应的终端,以使所述终端执行对所述目标推荐子应用进行预加载和在所述子应用访问页面显示所述目标推荐子应用中的至少一种处理。
在其中一个实施例中,所述推荐对象的装置还包括特征初始化模块、意愿值确定模块以及特征优化模块;
所述特征初始化模块,用于对特征集合进行随机初始化,得到每一用户标识对应的初始用户特征以及每一对象对应的初始对象特征;
所述意愿值确定模块,用于针对每一用户标识,基于相应的初始用户特征与相应已使用对象以及未使用对象各自对应的初始对象特征,得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值;
所述特征优化模块,用于对所述初始用户特征和所述初始对象特征进行特征优化,直至各用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值的累积值最大化。
在其中一个实施例中,所述意愿值确定模块包括对象分类模块以及意愿值计算模块;
所述对象分类模块,用于获取每一用户标识所对应的对象使用记录数据,确定每一用户标识对应的已使用对象;针对每一用户标识,从全量对象集合中去除相应用户标识对应的已使用对象,得到每一用户标识对应的未使用对象;
所述意愿值计算模块,用于针对每一用户标识,对相应的初始用户特征与相应已使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于已使用对象的意愿值,并对相应的初始用户特征与相应未使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于未使用对象的意愿值。
在其中一个实施例中,所述特征优化模块,还用于基于调用的损失函数,对所述初始用户特征和所述初始对象特征进行特征优化,以使得所述损失函数的函数值最小化,所述损失函数的函数值与各用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值的累计值负相关;
所述特征获取模块,还用于从使得损失函数的函数值最小化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
在其中一个实施例中,所述特征优化模块包括偏导处理模块和初始特征优化模块;
所述偏导处理模块,用于调用损失函数,基于所述初始用户特征和所述初始对象特征对所述损失函数求偏导,得到偏导数;
所述初始特征优化模块,用于基于所述偏导数,对所述初始用户特征和所述初始对象特征进行特征优化,以使得所述损失函数的函数值最小化。
在其中一个实施例中,所述推荐对象的装置还包括损失函数的函数值计算模块;
所述损失函数的函数值计算模块,用于针对每一由用户标识、所述用户标识对应的已使用对象和未使用对象所构成的三元组,基于各三元组对应的sigmoid函数值的负自然对数的累计值以及用户特征矩阵和对象特征矩阵各自对应的参考范数,累加得到损失函数的函数值;其中,所述三元组对应的sigmoid函数值,是将相应用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值输入所述损失函数中的sigmoid函数得到的输出值;所述用户特征矩阵是各用户特征所构成的矩阵;所述对象特征矩阵是各对象特征所构成的矩阵;所述参考范数与特征矩阵的范数正相关。
在其中一个实施例中,所述推荐对象的装置还包括:特征集合更新模块,用于按照更新周期,基于每一更新周期内每一用户标识对应的已使用对象和未使用对象,对所述特征集合中的对象特征和用户特征进行更新。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;所述相对意愿值,是任意用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值,所述意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;
针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果;
按照所述预测推荐结果,从所述候选推荐对象筛选出目标推荐对象,并基于所述目标用户标识推荐所述目标推荐对象。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;所述相对意愿值,是任意用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值,所述意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;
针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果;
按照所述预测推荐结果,从所述候选推荐对象筛选出目标推荐对象,并基于所述目标用户标识推荐所述目标推荐对象。
上述推荐对象的方法、装置、计算机设备和存储介质,通过从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;相对意愿值,是任意用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值,意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关,以使得目标用户特征和对象特征的特征表达更为精确化,进而针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,准确地得到每一候选推荐对象对应的预测推荐结果;按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象,从而实现对象的准确推荐。
附图说明
图1为一个实施例中推荐对象的方法的应用环境图;
图2为一个实施例中推荐对象的方法的流程示意图;
图3为一个实施例中多层感知机的结构示意图;
图4为一个实施例中进入子应用访问页面的页面示意图;
图5为另一个实施例中子应用访问页面的页面示意图;
图6为另一个实施例中推荐对象的方法的流程示意图
图7为又一个实施例中推荐对象的方法的流程示意图;
图8为一个实施例中推荐对象的方法对应的功能模块的结构框图;
图9为一个实施例中对每一个候选对象进行预测的数据处理流程的示意图;
图10为一个实施例中展示推荐的小程序的页面示意图;
图11为一个实施例中推荐对象的装置的结构框图;
图12为一个实施例中计算机设备的内部结构图;
图13为一个实施例中输入输出装置的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的方案可以涉及人工智能(Artificial Intelligence,简称为AI)、机器学习(Machine Learning,简称为ML)等技术。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。基于人工智能和机器学习等技术,能够从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;相对意愿值,是任意用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值,意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关,以使得目标用户特征和对象特征的特征表达更为精确化,进而针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,准确地得到每一候选推荐对象对应的预测推荐结果;按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象,从而实现对象的准确推荐。
本申请提供的推荐对象的方法,可以应用于如图1所示的应用环境中。其中,该应用环境中提供了计算机设备,例如服务器104或终端102。该推荐对象的方法可应用于服务器104或终端102,还可以应用于包括终端102和服务器104的系统,并通过终端102和服务器104的交互实现。以该推荐对象的方法可应用于服务器104为例,服务器104从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;相对意愿值,是任意用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值,意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;服务器104针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,确定每一候选推荐对象对应的预测推荐结果;服务器104按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并将目标推荐对象推荐至目标用户标识所在的终端102。终端102可以接收目标推荐对象的推荐信息并自动展示该目标推荐对象,或基于用户操作展示该目标推荐对象,如图1所示,目标推荐对象可以是用于在应用程序中运行的小程序。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、便携式可穿戴设备和车载终端,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种推荐对象的方法,以该方法应用于计算机设备为例进行说明,包括以下步骤:
步骤202,从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
其中,相对意愿值,是任意用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值。意愿值用于描述用户对于对象的使用意愿。若用户对于某一对象的使用意愿越强烈,则对应的意愿值也越高,若用户对于某一对象的使用意愿越低,则对应的意愿值也越低。意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关。例如,以用户可使用的对象为可在应用程序的运行环境中运行的小程序为例,基于从使得相对意愿值的累积值最大化的特征集合中获取的用户u的用户特征和小程序i的小程序特征,如果用户u经常使用小程序i,则用户u的用户特征与小程序i的对象特征的点乘结果即意愿值的取值较大,也就是说明用户u经常使用小程序i。反之如果u很少使用或未使用过小程序i,则相应的点乘结果即意愿值的取值较小,相应地,用户使用过的小程序与未使用过的小程序之间的意愿值的差值即相对意愿的取值也会较大,从而确保从使得相对意愿值的累积值最大化的特征集合中获取的用户特征和对象特征能够准确地表征用户对于对象的使用意愿。
特征集合包括各用户标识对应的用户特征以及各对象对应的对象特征。用户标识表示用户的登录身份,不同的用户具有不同的身份标识,同一用户基于不同的账户登录也具有不同的用户标识。用户特征是指基于用户标识对于对象使用情况的特征化表示。对象是可供用户可使用的应用,具体地,对象可以是可在应用程序的运行环境中运行的子应用。对象标识是指对于对象的被使用情况的特征化表示。
特征集合中的用户特征和对象特征可以通过对全量用户和全量对象进行关联关系分析和特征优化得到。全量用户是指可使用任意对象的各个用户构成的集合,全量对象是指可被用户使用的对象构成的集合。对全量用户和全量对象进行关联关系分析是指基于任一用户对任一对象的是否具有使用行为,对全量用户中的每一个用户和全量对象中的每一个对象进行分析的过程。特征优化是指基于随机初始化的初始特征进行优化的过程。需要说明的是,特征集合中的用户标识和对象标识是基于随机初始化的用户特征和对象特征,以使得相对意愿值的累积值最大化为目标经过特征优化处理得到的,并不是基于每一用户使用对象的数据直接得到的。进一步地,特征集合具体可以是全部用户标识分别对应的用户特征以及全部对象分别对应的对象特征,以使得能够确保在计算得到的相对意愿值的累积值的准确性,从而提高用户标识对应的用户特征以及对象对应的对象特征的准确性。
目标用户标识是指需要进行对象推荐的用户所对应的标识。计算机设备可以通过用户的交互操作识别对应的用户标识,以确定目标用户标识,也可以通过配置的触发条件以及用户信息确定目标用户标识。例如,当用户进行交互操作时,计算机设备通过响应用户的交互操作,确定目标用户标识。再例如,当终端满足配置的触发条件时,根据终端所登录用户的用户信息,确定目标用户标识。通过用户标识匹配,可以从特征集合中查找得到与目标用户标识对应的目标用户特征。
候选推荐对象是指荐给用户的目标推荐对象的可供选择范围中的对象。具体可以是用户可使用的全部对象,包括用户使用过的对象和用户未使用过的对象。
具体地,计算机设备从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。在一个具体的应用中,计算机设备基于当前登录用户所对应的目标用户标识,从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征,并从该特征集合中获取每一个候选对象各自对应的对象特征。
步骤204,针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,确定每一候选推荐对象对应的预测推荐结果。
候选推荐对象是指推荐给目标用户标识所对应的用户的可选推荐对象。具体地。特征集合中每一个对象特征所对应的对象均可作为候选推荐对象。计算机设备针对每一个候选推荐对象对应的对象特征和目标用户标识所对应的用户特征构成的组合,分别进行预测。预测过程可以是:至少根据相应的对象特征和目标用户特征进行多层感知的映射处理,确定每一候选推荐对象对应的预测推荐结果。进一步地,预测过程还可以基于目标用户标识对应的用户特征、场景模式特征以及与针对的候选推荐对象所对应的对象特征,进行多层感知的映射处理。其中,场景模式特征是指与目标用户标识所匹配的场景模式数据的特征化表示,场景模式数据可以实时采集得到也可以从预先存储的数据中获取。例如,实时采集得到可以是变化的信息如时间地点等,预先存储的数据可以是周期性变化的信息,例如用户对于对象的使用情况等。
多层感知的映射处理是指基于多个维度的数据映射到单一数据上的过程。具体地,多层感知的映射处理可以通过多层感知机(又称人工神经网络模型)来实现。如图3所示,多层感知机包括除了输入输出层,中间可以有多个隐藏层,多层感知机层与层之间是全连接的。具体来说,多层感知机的最底层是输入层,中间是隐藏层,最后是输出层。隐藏层的神经元与输入层是全连接的,假设输入层用向量X表示,图3中的X1、X2、……Xn分别表示输入层中n个输入单元的输出,隐藏层的输出用向量m表示,图3中的m1、m2、……mi分别表示隐藏层中i个神经元的输出。隐藏层的输出m可以用f(W1X+b1)表示,W1是输入层与隐藏层之间的连接系数,b1是输入层到隐藏层的偏置,函数f可以是常用的sigmoid函数或者tanh(hyperbolic tangent function,双曲正切函数)函数。其中,sigmoid函数可用于表示隐藏层神经元输出,sigmoid函数的取值范围为(0,1),可以将一个实数映射到(0,1)的区间,用来做二分类,其表达式为:sigmoid(x)=1/(1+e-x)。tanh函数为双曲正弦函数(sinh)与双曲余弦函数(cosh)的比值,可将一个实数映射到(-1,1)的区间,其表达式为:tanh(x)=sinh(x)/cosh(x)=(ex-e-x)/(ex+e-x)。隐藏层到输出层是一个多类别的逻辑回归,也即softmax回归,输出层的输出为:softmax(W2m+b2),m表示隐藏层的输出f(W1X+b1),W2是隐藏层与输出层之间的连接系数,b2是隐藏层到输出层的偏置。多层感知的映射处理实质上是至少将用户特征和对象特征作为多层感知机的输入数据,基于多层感知机中各层的参数,进行映射处理,得到的输出结果即为针对的候选推荐对象在对应场景模式下的预测推荐结果。
其中,多层感知机中各层的参数包括各个层之间的连接权重以及偏置,包括W1、b1、W2、b2等。多层感知机中各层的参数的确定可以通过模型训练得到,具体训练过程包括:首先随机初始化多层感知机的所有参数,然后迭代地训练,不断地计算梯度和更新参数,直到满足训练结束条件为止,训练结束条件可以是准确度满足准确度要求、误差满足误差要求或是迭代次数满足次数要求等条件中的至少一个。
预测推荐结果可以是推荐概率,也可以是基于推荐概率确定的推荐等级。例如,5个候选推荐对象其推荐概率分别为0.5、0.6、0.7、0.75、0.9。再例如,按照大于等于0.8和小于0.8分为两个等级,分别对应于可推荐等级和不推荐等级。
步骤206,按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象。
其中,目标推荐对象是推荐给目标用户标识对应的目标用户,以便目标用户进行使用的对象。计算机设备根据每一候选推荐对象的预测推荐结果,从候选推荐对象中筛选出预测推荐结果满足推荐要求的目标推荐对象。
其中,可以是推荐概率也可以是基于推荐概率确定的推荐等级。以预测推荐结果为推荐概率为例,满足推荐要求的目标推荐对象可以是推荐概率大于预设概率的候选推荐对象,也可以是按推荐概率进行排序后,从排序结果中选择的符合推荐数量的候选推荐对象。例如,5个候选推荐对象其推荐概率分别为0.5、0.6、0.7、0.75、0.9。若推荐要求为推荐概率大于0.8,则目标推荐对象为推荐概率为0.9的候选推荐对象,若推荐要求为推荐概率较大的前2个候选推荐对象,则目标推荐对象为推荐概率为0.85和0.9的候选推荐对象。
基于目标用户标识推荐目标推荐对象,可以是将目标推荐对象对应的推荐信息推送至目标用户标识对应的终端,以便终端进行进一步地处理,例如对目标推荐对象的展示,再例如,对目标推荐对象的预加载等,通过直观展示推荐的目标推荐对象或是提高对象的加载速度等方式,提升用户对对象的使用体验。
上述推荐对象的方法,通过从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;相对意愿值,是任意用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值,意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关,以使得目标用户特征和对象特征的特征表达更为精确化,进而针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,准确地得到每一候选推荐对象对应的预测推荐结果;按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象,从而实现对象的准确推荐。
在一个实施例中,推荐对象的方法还包括:获取与目标用户标识所匹配的目标场景模式数据,确定与目标场景模式数据相对应的预测模型。
其中,场景模式数据用于描述目标用户标识对应的场景模式,场景模式数据是对场景模式的具体描述。场景模式表征用户当前所处场景,场景模式具体可以对应一个数据维度或是至少两个数据维度的用户信息,具体的维度和维度数量可以通过对象推荐时需要考虑的数据维度进行选择和设定。
预测模型是指对输入的数据进行预测推荐的神经网络模型。具体地,预测模型可以是基于目标场景模式数据构建的将输入的多个数据集映射到单一的输出的数据集上神经网络模型。例如多层感知模型等。多层感知模型用于对模型的输入数据进行多层感知的映射处理,从而输出预测推荐结果。在一个应用实例中,基于特定的特征数据,构建得到对应的多层感知模型。
进一步地,针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,确定每一候选推荐对象对应的预测推荐结果,包括:针对每一候选推荐对象,将相应的对象特征和目标用户特征输入预测模型,得到每一候选推荐对象对应的预测推荐结果。
具体地,计算机设备获取与目标用户标识所匹配的目标场景模式数据,基于场景模式数据与预测模型之间的对应关系,确定与目标场景模式数据相对应的预测模型,计算机设备针对每一候选推荐对象,基于与目标场景模式数据相对应的预测模型,对相应的对象特征和目标用户特征进行预测处理,确定每一候选推荐对象对应的预测推荐结果。
在本实施例中,计算机设备针对每一候选推荐对象,基于与目标场景模式数据相对应的预测模型,对相应的对象特征和目标用户特征进行预测处理,能够结合场景模式,准确获得每一候选推荐对象在场景模式下的预测推荐结果,按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象,能够实现与场景模式匹配的对象的准确筛选与推荐。
在一个实施例中,推荐对象的方法还包括:
获取与目标用户标识所匹配的目标场景模式数据,确定与目标场景模式数据相对应的多层感知参数,针对每一候选推荐对象,基于多层感知参数,对相应的对象特征和目标用户特征进行多层感知的映射处理,得到每一候选推荐对象对应的预测推荐结果。
其中,多层感知参数是进行多层感知的映射处理所需要的参数。具体地,计算机设备针对每一候选推荐对象,至少基于多层感知参数,对相应的对象特征和目标用户特征进行多层感知的映射处理,确定每一候选推荐对象对应的预测推荐结果。多层感知参数可以基于特定的特征数据构建得到。例如,多层感知参数可以是多层感知模型中的参数,
对于不同的场景模式数据,可以对应不同的多层感知参数,场景模式数据与多层感知参数可以是一一对应的关系,当确定了目标场景模式数据之后,可以基于场景模式数据与多层感知参数之间的对应关系,确定与目标场景模式数据相对应的多层感知参数。
在本实施例中,计算机设备针对每一候选推荐对象,基于与目标场景模式数据相对应的多层感知参数,对相应的对象特征和目标用户特征进行多层感知的映射处理,能够结合场景模式对应的多层感知参数,准确获得每一候选推荐对象在场景模式下的预测推荐结果,按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象,能够实现与场景模式匹配的对象的准确筛选与推荐。
进一步地,推荐对象的方法还包括:获取与目标用户标识所匹配的目标场景模式数据,从基于场景模式数据构建的候选多层感知模型中,查找与目标场景模式数据相对应的目标多层感知模型;针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,确定每一候选推荐对象对应的预测推荐结果,包括:针对每一候选推荐对象,将相应的对象特征和目标用户特征输入目标多层感知模型,基于目标多层感知模型进行多层感知的映射处理,确定每一候选推荐对象对应的预测推荐结果。
其中,多层感知模型,是一种前馈人工神经网络模型,其将输入的多个数据集映射到单一的输出的数据集上。多层感知模型可以基于特定的特征数据构建得到。在一个具体的应用中,计算机设备基于每一场景模式对应的场景模式数据,将场景模式数据对应的特征向量输入模型函数,得到该场景模式数据所对应的多层感知模型。其中,模型函数的自变量是输入的特征向量,因变量是多层感知模型。例如,场景模式数据对应的特征向量被构建为离散向量e,则基于模型函数,输入离散向量e,输出一个神经网络MLP(MultilayerPerceptron,多层感知机),即MLP=f(e)。
目标多层感知模型是基于目标场景模式数据对应的特征数据构建的模型,用于对输入的数据进行多层感知的映射处理。对于输入的对象特征和目标用户特征,目标多层感知模型基于模型中的多层感知参数进行多层感知的映射处理,得到该对象特征所对应的候选推荐对象的预测推荐结果。
具体地,计算机设备获取与目标用户标识所匹配的目标场景模式数据,从基于场景模式数据构建的候选多层感知模型中,查找与目标场景模式数据相对应的目标多层感知模型,将用户特征、对象特征作为基于场景模式特征所构建的多层感知机的输入数据,基于多层感知机中各层的多层感知参数,进行映射处理,得到的输出结果即为针对的候选推荐对象在对应场景模式下的预测推荐结果。
在本实施例中,计算机设备针对每一候选推荐对象,基于与目标场景模式数据相对应的多层感知模型,对输入的相应的对象特征和目标用户特征进行多层感知的映射处理,能够结合场景模式进行多层感知的映射处理,准确获得每一候选推荐对象在场景模式下的预测推荐结果,按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象,能够实现与场景模式匹配的对象的准确筛选与推荐。
在一个实施例中,推荐对象的方法还包括:对每一场景模式维度各自对应的候选场景模式数据进行排列组合,得到多组场景模式数据;针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的候选多层感知模型。
其中,场景模式维度是预先规划的与场景模型关联的数据维度,场景维度的数量可以是一个,可以不少于两个,场景模式维度的具体数量可以根据实际应用场景的需要进行设定。每一场景模式维度可以有一个或多个的候选场景模式数据。例如,时间维度的按一周七天划分可以对应7个候选时间数据,按一天按24小时划分可以分为24个候选时间数据,再例如,地域属性维度对应的候选数据可以根据实际的场景需要进行设定,例如商圈,医院、地铁站、机场、火车站等地域属性等。基于不同维度的候选场景模式数据进行排列组合,可以得到多组场景模式数据。针对每一组场景模式数据,均可以构建对应的离散向量,基于离散向量可以得到对应的神经网络MLP。
具体地,计算机设备获取每一场景模式维度各自对应的候选场景模式数据,按照场景模式维度,对候选场景模式数据进行排列组合,得到每一种组合结果对应的一组场景模式数据;计算机设备针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的候选多层感知模型。
在本实施例中,通过按场景模式维度对候选场景模式数据进行排列组合,能够基于场景模式维度的组合,得到多个与场景模式数据对应的多层感知模型,能够结合多维的场景模式进行多层感知的映射处理,准确获得每一候选推荐对象在场景模式下的预测推荐结果。
在一个实施例中,针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的候选多层感知模型,包括:针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的初始多层感知模型;基于相应场景模式数据对应的每一样本对象的预测推荐结果和实际结果计算对应的损失值,基于损失值进行误差反向传播,优化初始多层感知模型的初始多层感知参数,得到每一组场景模式数据对应的候选多层感知模型。
其中,初始多层感知模型是指基于一组场景模式数据直接构建的多层感知模型,初始多层感知模型可以通过参数优化,得到预测结果更为准确的多层感知模型。样本对象是指同时具有预测推荐结果和真实结果的对象。其中,预测推荐结果的获取过程与上述各实施例中的处理过程相同,不再赘述。真实结果包括用户已使用该对象和用户未使用该对象两种情况。
具体地,计算机设备针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的初始多层感知模型;基于相应场景模式数据对应的每一样本对象的预测推荐结果和实际结果计算对应的损失值,基于损失值进行误差反向传播,优化初始多层感知模型的初始多层感知参数,得到每一组场景模式数据对应的候选多层感知模型。在一个应用实例中,通过将某一场景模式数据对应的样本对象的预测值
Figure BDA0003106783380000171
与真实值yui(取值为0或1,分别表示实际未使用或实际已使用)相对比,计算其损失值如
Figure BDA0003106783380000172
在得到损失值后,通过误差反向传播对用于得到预测值
Figure BDA0003106783380000173
的MLP模型f(e)中的参数进行优化,进而得到该场景模式数据对应的多层感知模型。
在本实施例中,通过计算预测推荐结果和实际结果对应的损失值,进行误差反向传播,能够对初始多层感知模型中的多层感知参数进行优化,以提高多层感知模型的预测准确性。
在一个实施例中,目标场景模式数据包括与目标用户标识对应的地域属性和与地域属性对应的状态时间;获取与目标用户标识所匹配的目标场景模式数据,包括:获取目标用户标识对应的终端在响应用户交互操作时采集的地理位置信息;基于地理位置信息得到对应的状态时间,并确定地理位置信息所对应地域的地域属性。
其中,目标场景模式数据可以是用户的POI(point of interest,兴趣点)信息和时间中的至少一种数据,其中,POI信息可以是具体所在的地理位置或是地域属性等,时间信息可以是星期几、几点钟等。
地域是指对地理区域进行划分的结果,地域属性用于描述划分的地理区域的共同特征。例如,地域具体可以是基于其所能实现的职能进行划分的,例如商圈、医院、地铁站、机场或是火车站等,也可以是基于行政区域进行划分的,例如北京、上海或是广州等。其中地域属性可以是单一指定维度的特征,如职能属性,也可以是多维度的属性,例如广州地铁站。更进一步的,还可以精确到实现职能的具体单位。例如,A市第一医院、B市中心商场等。
与地域属性对应的状态时间是指在获取地域属性的过程中得到的用于表征用户当前所处状态对应的时间。在实施例中,若计算机设备为终端,则状态时间可以是终端采集到地理位置信息时获取的系统时间,若计算机设备为服务器,则状态时间可以是在终端将获取地理位置信息传送至服务器是携带的时间信息,还可以是服务器接收到地理位置信息时获取的系统时间,还可以是服务器基于地理位置信息得到地域属性时对应的时间。
地理位置信息用于表征用户当前所处的位置,地理位置信息是一种随用户的移动而变化的信息。用户交互操作是指用户与终端之间的交互操作。用户交互操作是一种由用户主动触发的行为。终端在响应用户交互操作时采集地理位置信息,可以准确限定终端采集地理位置信息的时机,实现终端在有需要的时候进行地理位置信息的采集,避免终端造成不必要的数据处理资源的浪费。
具体地,计算机设备获取目标用户标识对应的终端在响应用户交互操作时采集的地理位置信息,服务器基于地理位置信息得到对应的状态时间,并确定地理位置信息所对应地域的地域属性。
在本实施例中,通过将目标用户标识对应的地域属性和与地域属性对应的状态时间作为目标场景模式数据,能够从时间和地域两个维度来考虑用户当前所处的场景,基于与用户当前所处的场景所对应的预测模型,能够准确地预测出用户当前对每一个候选推荐对象的预测推荐结果,进而向用户推荐与用户当前所处的场景匹配且最有可能使用的对象,进而实现对象的预加载或是推荐展示,为用户获取并使用对象提供了便利。
在一个实施例中,目标推荐对象包括用于在母应用的运行环境中运行的目标推荐子应用。获取目标用户标识对应的终端在响应用户交互操作时采集的地理位置信息,包括:当目标用户标识对应的终端所运行的母应用进入子应用访问页面时,获取终端所采集的地理位置信息;基于目标用户标识推荐目标推荐对象,包括:将目标推荐子应用的推荐信息推送至目标用户标识对应的终端,以使终端执行对目标推荐子应用进行预加载和在子应用访问页面显示目标推荐子应用中的至少一种处理。
其中,子应用是指用于在母应用的运行环境中运行的程序,不需要下载安装即可使用,母应用是在终端通过下载安装应用程序包在终端运行的程序。子应用访问页面是指在母应用中直接通过在母应用中的操作,如页面下滑、子应用搜索或是图标触发,进入的包括目标推荐子应用的显示页面,子应用访问页面可以如图4所示。在实际应用中,如图5所示,为便于用户选择,在子应用访问页面除了显示推荐子应用、还可以显示最近使用子应用以及用户自定义的子应用(我的子应用)。
终端运行的母应用进入子应用访问页面可以是用户通过执行预设的交互操作。在一个具体应用中,在运行的母应用通过响应用户的页面下拉操作进入子应用访问页面,终端在检测在母应用的页面下拉操作时,采集终端当前所处位置的地理位置信息。在另一个具体应用中,运行的母程序的主页面可以包括子应用访问页面,当进入该母程序的主页面时即为进入子应用访问页面。
预加载是指在数据全部加载之前,对一些主要内容进行加载的过程,以减少等待的时间。以避免内容过于庞大,导致的页面长时间的展现为一片空白的情况出现。
在一个具体的实施例中,推荐子应用的方法包括:当目标用户标识对应的终端所运行的母应用进入子应用访问页面时,计算机设备获取与目标用户标识匹配的用于描述目标用户标识所对应场景模式的场景模式数据,从场景模式数据提取场景模式特征,对每一候选推荐子应用,基于目标用户标识对应的用户特征、场景模式特征以及与针对的候选推荐子应用所对应的子应用特征,进行多层感知的映射处理,获得每一候选推荐子应用在场景模式下的预测推荐结果,将目标推荐子应用的推荐信息推送至目标用户标识对应的终端,以使终端执行对目标推荐子应用进行预加载和在子应用访问页面显示目标推荐子应用中的至少一种处理。
通过上述推荐对象的方法,可以使得在母应用的运行环境中运行的子应用得到精准地推荐。具体来说,以在微信等母应用的运行环境中运行的子应用为小程序为例,相较于传统的小程序展示方式,如第一种:通过产品经理按照固定的排序顺序(例如小程序的开发顺序)来对小程序进行排列;第二种:用户将某一小程序使用较多的小程序放在常用菜单中;第三种:将用户最近使用的小程序置顶放到用户菜单中的处理方式。上述这些处理方式,都存在一定的局限性,例如第一种方式,由于小程序数量繁多,如果按照固定顺序排序的话,会存在用户难以查找所需小程序。第二种方式允许用户按照自身的使用习惯调整小程序的排序,但是该方法仅限于常用的小程序,对于由于出差、出行、外卖、购物或是短视频等突然产生的或者循环产生的小程序需求无法满足。对于第三种方式,由于用户使用小程序可能具有周期性、地点性、特殊性,仅保存最近使用的小程序,并不能从根本上改善用户体验,从而导致在应用到实际使用时,仍需要较为复杂的操作或现场扫码才能在终端打开用户需要的小程序,例如地铁扫码,机场扫防疫码等,在使用上带来较多不变。
在本实施例中,通过在目标用户标识对应的终端所运行的母应用进入子应用访问页面时,获取用于描述目标用户标识对应的场景模式的场景模式数据,限定了场景模式数据的获取时机,避免终端的数据处理资源浪费,计算机设备获取从场景模式数据所提取的场景模式特征,以准确得到与目标用户标识匹配的场景模式特征,针对每一候选推荐子应用,基于与场景模式数据对应的多层感知模型,对目标用户标识对应的用户特征与针对的候选推荐子应用所对应的子应用特征进行多层感知的映射处理,准确获得每一候选推荐子应用在场景模式下的预测推荐结果,按照预测推荐结果,从候选推荐子应用筛选出目标推荐子应用,并基于目标用户标识推荐目标推荐子应用,能够实现与场景模式匹配的子应用的准确筛选与推荐。
在一个实施例中,如图6所示,推荐对象的方法包括步骤602至步骤612。
步骤602,对特征集合进行随机初始化,得到每一用户标识对应的初始用户特征以及每一对象对应的初始对象特征。
步骤604,针对每一用户标识,基于相应的初始用户特征与相应已使用对象以及未使用对象各自对应的初始对象特征,得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值。
步骤606,对初始用户特征和初始对象特征进行特征优化,直至各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累积值最大化。
步骤608,从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
步骤610,针对每一候选推荐对象,至少根据相应的对象特征和目标用户特征,确定每一候选推荐对象对应的预测推荐结果。
步骤612,按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并基于目标用户标识推荐目标推荐对象。
其中,特征集合是全量用户特征与全量对象特征构成的集合。每一个用户特征对应一个用户标识,每一个对象特征对应一个对象。随机初始化是指对特征集合中的全量用户特征与全量对象特征均进行随机的特征初始化处理。在一个具体应用中,随机初始化服从正太分布,以对随机初始化处理后得到的初始用户特征和初始对象特征的特征取值进行约束,确保随机初始化的合理性。在一个实施例中,随机初始化服从以“0”为中心,以0.5为标准差的正态分布,进而确保初始用户特征和初始对象特征的分布在合理区间。
用户标识对应于已使用对象的意愿值可以是基于用户标识对应的用户特征与已使用对象的对象特征进行点乘处理得到的结果。用户标识对应于为使用对象的意愿值可以是基于用户标识对应的用户特征与未使用对象的对象特征进行点乘处理得到的结果。针对于同一用户标识对应用户的每一个已使用对象以及每一个未使用对象,均可通过用户特征与对象特征的特征计算结果,得到用户对于该对象的使用意愿值,特征计算可以是向量点乘或是矩阵元素对应乘积求和等。
具体地,计算机设备基于相应的初始用户特征与相应已使用对象以及未使用对象各自对应的初始对象特征,得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值,通过累计各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值,可以得到初始的累积值。通过对初始用户特征和初始对象特征进行特征优化,进而改变每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值,直至使得各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累积值最大化。
在本实施例中,通过对特征集合中的用户特征和对象特征进行随机的初始化,并对得到的初始用户特征和初始对象特征进行优化,直至使得各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累积值最大化,从而确保得到的用户特征和对象特征实现了相对意愿最大化,从而能够基于用户特征和对象特征准确地描述每一用户对每一对象的使用意愿,以提高预测推荐结果的准确性,实现准确可靠的对象推荐。
在一个实施例中,推荐对象的方法还包括:获取每一用户标识所对应的对象使用记录数据,确定每一用户标识对应的已使用对象;针对每一用户标识,从全量对象集合中去除相应用户标识对应的已使用对象,得到每一用户标识对应的未使用对象。
进一步地,针对每一用户标识,基于相应的初始用户特征与相应已使用对象以及未使用对象各自对应的初始对象特征,得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值,包括:针对每一用户标识,对相应的初始用户特征与相应已使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于已使用对象的意愿值,并对相应的初始用户特征与相应未使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于未使用对象的意愿值。
其中,对象使用记录数据是指用于记录每一用户对于对象的使用情况的数据。基于对象使用记录数据可以对全量对象进行划分,得到已使用对象集合和未使用对象集合。例如,在对象使用记录数据中,对于用户使用过的对象,记录为1,对于用户未使用过的对象,记录为0,按照1和0对全量对象进行划分,得到用户标识对应的已使用对象集合和未使用对象集合。再例如,基于对象使用记录数据,从全部对象集合中去处用户使用过的对象,即可得到用户未使用过的对象的集合。用户特征与对象特征的特征维度数量相同,均可通过N(N为自然数)维向量来表示。向量点乘是指将两个向量按照对应的元素进行相乘再相加的计算过程。
具体地,计算机设备基于终端存储的每一用户标识所对应的对象使用记录数据,确定每一用户标识对应的已使用对象和未使用对象;基于随机初始化得到的特征维度数量相同的初始用户特征和初始对象特征,针对每一用户标识,对相应的初始用户特征与相应已使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于已使用对象的意愿值,并对相应的初始用户特征与相应未使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于未使用对象的意愿值。
在本实施例中,通过每一用户标识所对应的对象使用记录数据能够快速便捷地获取每一用户标识对应的已使用对象和未使用对象,基于随机初始化得到的特征维度数量相同的初始用户特征和初始对象特征通过向量点乘处理,能够简化数据处理过程,快速地得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值。
在一个实施例中,对初始用户特征和初始对象特征进行特征优化,以使得个用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累积值最大化包括:基于调用的损失函数,对初始用户特征和初始对象特征进行特征优化,以使得损失函数的函数值最小化,损失函数的函数值与各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累计值负相关;
从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征,包括:从使得损失函数的函数值最小化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
其中,损失函数是将随机事件或其有关随机变量的取值映射为非负实数以表示该随机事件的“风险”或“损失”的函数。通过损失函数可以表达各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累计值,损失函数的函数值与差值的累计值负相关是指累计值越大,损失函数的函数值越小,换言之,相对意愿值的累积值最大化即为损失函数的函数值最小化。
可以理解,若损失函数的函数值与各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累计值正相关,则对初始用户特征和初始对象特征进行特征优化,以使得个用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累积值最大化包括:基于调用的损失函数,对初始用户特征和初始对象特征进行特征优化,以使得损失函数的函数值最大化。
具体地,计算机设备基于调用的损失函数,对初始用户特征和初始对象特征进行特征优化,以使得损失函数的函数值最小化,损失函数的函数值与各用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值的累计值负相关,从使得损失函数的函数值最小化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
在本实施例中,基于损失函数对初始用户特征和初始对象特征进行特征优化,能够基于损失函数的函数特性,快速求解出优化的用户特征以及优化的对象特征,提高优化处理效率。
在一个实施例中,基于调用的损失函数,对初始用户特征和初始对象特征进行特征优化,以使得损失函数的函数值最小化,包括:
调用损失函数,基于初始用户特征和初始对象特征对损失函数求偏导,得到偏导数;基于偏导数,对初始用户特征和初始对象特征进行特征优化,以使得损失函数的函数值最小化。
其中,一个多变量的函数的偏导数,是它关于其中一个变量的导数而保持其他变量恒定。偏导数反映的是函数沿坐标轴正方向的变化率。通过基于初始用户特征和初始对象特征对损失函数求偏导,分别得到初始用户特征对应的偏导数以及初始对象特征对应的偏导数。通过将偏导数取值置“0”,对初始用户特征和初始对象特征进行优化,从而得到使得损失函数的函数值最小化的用户特征和对象特征。
在本实施例中,通过对损失函数求偏导的方式,能够快速地求解出初始用户特征和初始对象特征的优化结果,提高对初始用户特征和初始对象特征进行优化的处理效率。
在一个实施例中,推荐对象的方法还包括:针对每一由用户标识、用户标识对应的已使用对象和未使用对象所构成的三元组,基于各三元组对应的sigmoid函数值的负自然对数的累计值以及用户特征矩阵和对象特征矩阵各自对应的参考范数,累加得到损失函数的函数值。
其中,三元组对应的sigmoid函数值,是将相应用户标识对应于已使用对象的意愿值与用户标识对应于未使用对象的意愿值间的差值输入损失函数中的sigmoid函数得到的输出值;用户特征矩阵是各用户特征所构成的矩阵;对象特征矩阵是各对象特征所构成的矩阵;参考范数是特征矩阵的范数与参考系数的乘积。
具体地,可以将损失函数定义为如下形式
Figure BDA0003106783380000251
Figure BDA0003106783380000252
其中,ei是小程序i的向量表示,ej是小程序i的向量表示,eu是用户u的向量表示,小程序i是用户使用过的小程序,小程序j是用户没有使用过的小程序,σ是指sigmoid函数,||U||f和||I||f是指用户特征构成的用户矩阵U和对象特征构成的对象矩阵I的Frobenius范数。Frobenius范数是指将矩阵中各元素的平方和累加再开方所得到的结果。λ是Frobenius范数的参考系数,用于对象矩阵和用户矩阵进行约束,λ具体的取值范围可以是10-3~10-6,优选的可取10-5。通过对损失函数求偏导来对U和I进行优化,最终通过最小化损失函数,得到最终的用户矩阵U和对象矩阵I。
在本实施例中,计算机设备通过针对每一由用户标识、用户标识对应的已使用对象和未使用对象所构成的三元组,基于各三元组对应的sigmoid函数值的负自然对数的累计值以及用户特征矩阵和对象特征矩阵各自对应的参考范数,累加得到损失函数的函数值,基于三元组进行差值累加,能够避免在计算差值的累计值发生数据遗漏,提高累计结果的精确性。
在一个实施例中,推荐对象的方法还包括:按照更新周期,基于每一更新周期内每一用户标识对应的已使用对象和未使用对象,对特征集合中的对象特征和用户特征进行更新。
其中,更新周期是针对特征集合而言的周期,更新周期可以是根据实际应用需要进行设定,例如设定更新周期为一个月或是一个星期等。具体地,计算机设备当检测到当前时间与上一次更新时间的时间差达到更新周期时,获取该更新周期内每一用户标识对应的已使用对象和未使用对象,基于每一更新周期内每一用户标识对应的已使用对象和未使用对象,对特征集合中的对象特征和用户特征进行更新,确保特征集合中的对象特征和用户特征具有较优的时效性,能准确反映每一用户在该时间段内使用对象的情况,进而便于向用户准确推荐对应的对象。
在一个实施例中,如图7所示,提供了一种推荐对象的方法,具体包括以下步骤:
步骤702,按更新周期对特征集合进行随机初始化,得到每一用户标识对应的初始用户特征以及每一对象对应的初始对象特征。
步骤704,获取每一用户标识对应的对象使用记录数据,确定每一用户标识对应的已使用对象;针对每一用户标识,从全量对象集合中去除相应用户标识对应的已使用对象,得到每一用户标识对应的未使用对象。
步骤706,针对每一用户标识,对相应的初始用户特征分别与相应已使用对象对应的初始对象特征以及相应未使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值。
步骤708,针对每一由用户标识、用户标识对应的已使用对象和未使用对象所构成的三元组,将相应用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值输入所述损失函数中的sigmoid函数。
步骤710,基于各三元组对应的sigmoid函数值的负自然对数的累计值以及用户特征矩阵和对象特征矩阵各自对应的参考范数,累加得到损失函数的函数值。
步骤712,基于初始用户特征和初始对象特征对损失函数求偏导,得到偏导数,基于偏导数,对初始用户特征和初始对象特征进行特征优化,以使得损失函数的函数值最小化。
步骤714,从使得损失函数的函数值最小化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
步骤716,对状态时间维度以及地域属性维度各自对应的候选场景模式数据进行排列组合,得到多组场景模式数据。
步骤718,针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的初始多层感知模型。
步骤720,基于相应场景模式数据对应的每一样本对象的预测推荐结果和实际结果计算对应的损失值,基于损失值进行误差反向传播,优化初始多层感知模型的初始多层感知参数,得到每一组场景模式数据对应的候选多层感知模型。
步骤722,当目标用户标识对应的终端所运行的母应用进入子应用访问页面时,获取终端所采集的地理位置信息,基于地理位置信息得到对应的状态时间,并确定地理位置信息所对应地域的地域属性。
步骤724,从候选多层感知模型中,查找与状态时间以及地域属性相匹配的目标多层感知模型。
步骤726,针对每一候选推荐对象,将相应的对象特征和目标用户特征输入目标多层感知模型,基于目标多层感知模型进行多层感知的映射处理,确定每一候选推荐对象对应的预测推荐结果。
步骤728,按照预测推荐结果,从候选推荐对象筛选出目标推荐对象,并将目标推荐子应用的推荐信息推送至目标用户标识对应的终端,以使终端执行对目标推荐子应用进行预加载和在子应用访问页面显示目标推荐子应用中的至少一种处理。
本申请还提供一种应用场景,该应用场景应用上述的推荐对象的方法。具体地,推荐对象的方法可以应用于腾讯文档、微信、QQ、腾讯云等小程序服务提供平台。以推荐对象为微信中运行的小程序为例,随着小程序的推出,极大的方便了公民日常的公务,出行,购物,疫情防控等方方面面的业务办理与日常生活。但是微信的小程序仍然只有固定的排序或者最近使用或者是由用户自主添加常用小程序。因此在实际使用时,仍需要较为复杂的操作或现场扫码才能选择需要的小程序。如:地铁扫码,机场扫防疫码等,在使用上带来较多不变。本申请所提供的推荐对象的方法能够解决上述问题,基于实际应用场景实现小程序的精准推荐。该推荐对象的方法在该应用场景的应用如下:
如图8所示,本申请所提供的推荐对象的方法可基于用户-小程序关系建模模块、应用场景建模模块、基于场景的用户-小程序建模重训练模块以及小程序推荐模块来实现。各模块的处理过程如下:
模块一:用户-小程序关系建模模块
用户-小程序关系建模模块对用户-小程序的使用行为进行建模。也就是为每个用户和小程序分别构建表示向量,假设有N个用户,则eu表示用户u的向量表示,同样的有M个小程序,ei则表示第i个小程序的向量表示,该模块建模后的用户小程序向量表示的物理意义为如果用户u经常使用小程序i,则用户u向量与小程序i的向量点乘结果也就是
Figure BDA0003106783380000288
值较大,也就是说明用户u经常使用小程序i。反之如果u很少使用小程序i,则相应的点乘结果应尽可能小。
在本申请中,提出了相对意愿这一概念,由于小程序的使用具有特殊性,用户没有使用过的小程序不代表用户不会使用,而是说,相对来说用户当前没有一个强烈的需求使用该小程序,或者说,用户当前使用该小程序的意愿并不突出,也就是低于使用其他小程序的意愿。基于此,通过以下方式,对用户小程序行为进行如下形式的建模,称之为相对意愿。具体地,针对一个用户u抽取两个小程序i和j,其中小程序i是用户使用过的小程序,小程序j是用户没有使用过的小程序。
将相对意愿表示为如下形式,
Figure BDA0003106783380000281
该公式的含义是指,模型预测出的用户使用他想使用的小程序的意愿减去,模型预测出的(用户使用他没有使用过的小程序的意愿),即为相对意愿。通过最大化相对意愿可以提升模型预测的准确性。
通过如下方式获取数据集:
Figure BDA0003106783380000282
其中,
Figure BDA0003106783380000283
是指用户u真实使用过小程序的集合,相应的
Figure BDA0003106783380000284
是指从全部小程序集合中去除用户真实使用过的小程序的集合。
建模模型的过程如下:
如上,通过将用户和小程序的向量计算点乘来计算用户和小程序的关系。因此将用户建模为矩阵
Figure BDA0003106783380000285
同样的,小程序被建模为
Figure BDA0003106783380000286
其中U的维度为N*D,其中D是向量表示的维度,I的维度为M*D。
因此所有用户的小程序预测结果可以通过
Figure BDA0003106783380000287
来进行预测,相应的,首先对U和I进行随机初始化,随后通过损失函数以及优化算法对其进行优化。
损失函数定义为如下形式:
Figure BDA0003106783380000291
其中σ是指sigmoid函数,||U||f和||I||f是指矩阵U和矩阵I的Frobenius范数。通过对损失函数求偏导来对U和I进行优化,最终通过最小化损失函数,得到最终的用户矩阵U和小程序表示矩阵I。
模块二:场景模式建模模块
场景模式建模模块用于将用户所处的场景用特征化的形式表达出来,如POI信息、时间特征等。这类信息是离散的数值,如星期几,现在几点,当前地块属性信息(如商圈,医院、地铁站、机场、火车站)。这些信息为离散信息。因此通过这些离散信息输出一个神经网络,并通过该神经网络,针对上文中的用户嵌入向量和小程序嵌入向量进行预测。典型的,离散信息被构建为离散向量e,将离散向量e输入预设的模型函数,输出一个神经网络MLP。即MLP=f(e)。
模块三:推荐算法模块
如图9所示,每当得到一个用户u、场景e、小程序i三元组的时候,首先通过输入场景e的信息通过神经网络生产函数生成一个MLP网络f(e),随后将用户特征以及小程序特征输入到该神经网络中得到预测到的用户和小程序的关系预测值。典型的
Figure BDA0003106783380000292
模块四:建模预测模块
在通过如上述公式计算出
Figure BDA0003106783380000293
之后,我们通过与真实值yui(取值为0或1,分别表示实际未使用或实际已使用)相对比,计算其损失如
Figure BDA0003106783380000294
在得到损失值后,我们通过误差反向传播对f(e)中的参数进行优化。
模块一中的特征集合为每月训练一次并存储保存下来全网用户以及小程序的嵌入向量。在用户发生请求的时候,通过基于f(e)构建的MLP,输入用户向量与小程序向量,得到每一小程序对应的预测结果,对所有小程序的预测结果进行排序,并返回排序最高的几个小程序推荐给用户。
以该方法应用到微信为例,在如图10中左图所示,用户下滑小程序界面时,获取用户对应的现状数据,基于图9所示的数据处理流程,得到每一个候选小程序的推荐结果。随后对候选集中的小程序进行排序和筛选,得到推荐小程序,并将推荐小程序在用户终端进行展示,展示页面如图10中右图所示。
应该理解的是,虽然图2、图6、图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图6、图7中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图11所示,提供了一种推荐对象的装置1100,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:特征获取模块1102、推荐结果预测模块1104和对象推荐模块1106,其中:
特征获取模块1102,用于从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;所述相对意愿值,是任意用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值,所述意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关。
推荐结果预测模块1104,用于针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果。
对象推荐模块1106,用于按照所述预测推荐结果,从所述候选推荐对象筛选出目标推荐对象,并基于所述目标用户标识推荐所述目标推荐对象。
在其中一个实施例中,所述推荐对象的装置还包括模型确定模块;
所述模型确定模块,用于获取与目标用户标识所匹配的目标场景模式数据,确定与所述目标场景模式数据相对应的预测模型;
所述推荐结果预测模块,还用于针对每一候选推荐对象,将相应的所述对象特征和所述目标用户特征输入所述预测模型,得到每一所述候选推荐对象对应的预测推荐结果。
在其中一个实施例中,所述推荐对象的装置还包括数据获取模块和模型查找模块;
所述数据获取模块,用于获取与目标用户标识所匹配的目标场景模式数据;
所述模型查找模块,用于从基于场景模式数据构建的候选多层感知模型中,查找与所述目标场景模式数据相匹配的目标多层感知模型;
所述推荐结果预测模块,还用于针对每一候选推荐对象,将相应的所述对象特征和所述目标用户特征输入所述目标多层感知模型,基于所述目标多层感知模型进行多层感知的映射处理,确定每一所述候选推荐对象对应的预测推荐结果。
在其中一个实施例中,推荐对象的装置还包括数据排列组合模块和多层感知模型构建模块:
所述数据排列组合模块,用于对每一场景模式维度各自对应的候选场景模式数据进行排列组合,得到多组场景模式数据;
所述多层感知模型构建模块,用于针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的候选多层感知模型。
在其中一个实施例中,所述多层感知模型构建模块包括初始模型构建模块以及模型优化模块;
所述初始模型构建模块,用于针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的初始多层感知模型;
所述模型优化模块,用于基于相应场景模式数据对应的每一样本对象的预测推荐结果和实际结果计算对应的损失值,基于所述损失值进行误差反向传播,优化所述初始多层感知模型的初始多层感知参数,得到每一组场景模式数据对应的候选多层感知模型。
在其中一个实施例中,所述目标场景模式数据包括与所述目标用户标识对应的地域属性和与所述地域属性对应的状态时间;
所述数据获取模块包括地理位置信息获取模块、地域属性和状态时间确定模块;
所述地理位置信息获取模块,用于获取所述目标用户标识对应的终端在响应用户交互操作时采集的地理位置信息;
所述地域属性和状态时间确定模块,用于基于所述地理位置信息得到对应的状态时间,并确定所述地理位置信息所对应地域的地域属性。
在其中一个实施例中,所述目标推荐对象包括用于在母应用的运行环境中运行的目标推荐子应用;
所述地理位置信息获取模块,还用于当所述目标用户标识对应的终端所运行的母应用进入子应用访问页面时,获取所述终端所采集的地理位置信息;
所述对象推荐模块,还用于将所述目标推荐子应用的推荐信息推送至所述目标用户标识对应的终端,以使所述终端执行对所述目标推荐子应用进行预加载和在所述子应用访问页面显示所述目标推荐子应用中的至少一种处理。
在其中一个实施例中,推荐对象的装置还包括特征初始化模块、意愿值确定模块以及特征优化模块;
所述特征初始化模块,用于对特征集合进行随机初始化,得到每一用户标识对应的初始用户特征以及每一对象对应的初始对象特征;
所述意愿值确定模块,用于针对每一用户标识,基于相应的初始用户特征与相应已使用对象以及未使用对象各自对应的初始对象特征,得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值;
所述特征优化模块,用于对所述初始用户特征和所述初始对象特征进行特征优化,直至各用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值的累积值最大化。
在其中一个实施例中,所述意愿值确定模块包括对象分类模块以及意愿值计算模块;
所述对象分类模块,用于获取每一用户标识所对应的对象使用记录数据,确定每一用户标识对应的已使用对象;针对每一用户标识,从全量对象集合中去除相应用户标识对应的已使用对象,得到每一用户标识对应的未使用对象;
所述意愿值计算模块,用于针对每一用户标识,对相应的初始用户特征与相应已使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于已使用对象的意愿值,并对相应的初始用户特征与相应未使用对象对应的初始对象特征进行向量点乘处理,得到每一用户标识对应于未使用对象的意愿值。
在其中一个实施例中,所述特征优化模块,还用于基于调用的损失函数,对所述初始用户特征和所述初始对象特征进行特征优化,以使得所述损失函数的函数值最小化,所述损失函数的函数值与各用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值的累计值负相关;
所述特征获取模块,还用于从使得损失函数的函数值最小化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
在其中一个实施例中,所述特征优化模块包括偏导处理模块和初始特征优化模块;
所述偏导处理模块,用于调用损失函数,基于所述初始用户特征和所述初始对象特征对所述损失函数求偏导,得到偏导数;
所述初始特征优化模块,用于基于所述偏导数,对所述初始用户特征和所述初始对象特征进行特征优化,以使得所述损失函数的函数值最小化。
在其中一个实施例中,推荐对象的装置还包括损失函数的函数值计算模块,用于针对每一由用户标识、所述用户标识对应的已使用对象和未使用对象所构成的三元组,基于各三元组对应的sigmoid函数值的负自然对数的累计值以及用户特征矩阵和对象特征矩阵各自对应的参考范数,累加得到损失函数的函数值;其中,所述三元组对应的sigmoid函数值,是将相应用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值输入所述损失函数中的sigmoid函数得到的输出值;所述用户特征矩阵是各用户特征所构成的矩阵;所述对象特征矩阵是各对象特征所构成的矩阵;所述参考范数与特征矩阵的范数正相关。
在其中一个实施例中,推荐对象的装置还包括:特征集合更新模块,用于按照更新周期,基于每一更新周期内每一用户标识对应的已使用对象和未使用对象,对所述特征集合中的对象特征和用户特征进行更新。
关于推荐对象的装置的具体实施例可以参见上文中对于推荐对象的方法的实施例,在此不再赘述。上述推荐对象的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图12所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储按周期更新的特征集合中的特征数据以及基于各场景模型构建的多层感知模型。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种推荐对象的方法。
在另一个实施例中,提供了一种计算机设备,该计算机设备可以是输入输出装置,其内部结构图可以如图13所示。该输入输出装置包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该输入输出装置的处理器用于提供计算和控制能力。该输入输出装置的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该输入输出装置的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种推荐对象的方法。该输入输出装置的显示屏可以是液晶显示屏或者电子墨水显示屏,该输入输出装置的输入装置可以是显示屏上覆盖的触摸层,也可以是输入输出装置外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图12和图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (15)

1.一种推荐对象的方法,其特征在于,所述方法包括:
从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;所述相对意愿值,是任意用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值,所述意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;
针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果;
按照所述预测推荐结果,从所述候选推荐对象筛选出目标推荐对象,并基于所述目标用户标识推荐所述目标推荐对象。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取与目标用户标识所匹配的目标场景模式数据,确定与所述目标场景模式数据相对应的预测模型;
所述针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果,包括:
针对每一候选推荐对象,将相应的所述对象特征和所述目标用户特征输入所述预测模型,得到每一所述候选推荐对象对应的预测推荐结果。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取与目标用户标识所匹配的目标场景模式数据,从基于场景模式数据构建的候选多层感知模型中,查找与所述目标场景模式数据相匹配的目标多层感知模型;
所述针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果,包括:
针对每一候选推荐对象,将相应的所述对象特征和所述目标用户特征输入所述目标多层感知模型,基于所述目标多层感知模型进行多层感知的映射处理,确定每一所述候选推荐对象对应的预测推荐结果。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
对每一场景模式维度各自对应的候选场景模式数据进行排列组合,得到多组场景模式数据;
针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的候选多层感知模型。
5.根据权利要求4所述的方法,其特征在于,所述针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的候选多层感知模型,包括:
针对每一组场景模式数据,提取相应的场景模式特征进行模型构建,得到每一组场景模式数据对应的初始多层感知模型;
基于相应场景模式数据对应的每一样本对象的预测推荐结果和实际结果计算对应的损失值,基于所述损失值进行误差反向传播,优化所述初始多层感知模型的初始多层感知参数,得到每一组场景模式数据对应的候选多层感知模型。
6.根据权利要求2至5中任意一项所述的方法,其特征在于,所述目标场景模式数据包括与所述目标用户标识对应的地域属性和与所述地域属性对应的状态时间;
所述获取与目标用户标识所匹配的目标场景模式数据,包括:
获取所述目标用户标识对应的终端在响应用户交互操作时采集的地理位置信息;
基于所述地理位置信息得到对应的状态时间,并确定所述地理位置信息所对应地域的地域属性。
7.根据权利要求6所述的方法,其特征在于,所述目标推荐对象包括用于在母应用的运行环境中运行的目标推荐子应用;
所述获取所述目标用户标识对应的终端在响应用户交互操作时采集的地理位置信息,包括:
当所述目标用户标识对应的终端所运行的母应用进入子应用访问页面时,获取所述终端所采集的地理位置信息;
所述基于所述目标用户标识推荐所述目标推荐对象,包括:
将所述目标推荐子应用的推荐信息推送至所述目标用户标识对应的终端,以使所述终端执行对所述目标推荐子应用进行预加载和在所述子应用访问页面显示所述目标推荐子应用中的至少一种处理。
8.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:
获取每一用户标识所对应的对象使用记录数据,确定每一用户标识对应的已使用对象;
针对每一用户标识,从全量对象集合中去除相应用户标识对应的已使用对象,得到每一用户标识对应的未使用对象。
9.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:
对特征集合进行随机初始化,得到每一用户标识对应的初始用户特征以及每一对象对应的初始对象特征;
针对每一用户标识,基于相应的初始用户特征与相应已使用对象以及未使用对象各自对应的初始对象特征,得到每一用户标识对应于已使用对象的意愿值以及对应于未使用对象的意愿值;
对所述初始用户特征和所述初始对象特征进行特征优化,直至各用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值的累积值最大化。
10.根据权利要求9所述的方法,其特征在于,所述对所述初始用户特征和所述初始对象特征进行特征优化,以使得个用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值的累积值最大化包括:
基于调用的损失函数,对所述初始用户特征和所述初始对象特征进行特征优化,以使得所述损失函数的函数值最小化,所述损失函数的函数值与各用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值的累计值负相关;
所述从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征,包括:
从使得损失函数的函数值最小化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征。
11.根据权利要求10所述的方法,其特征在于,所述基于调用的损失函数,对所述初始用户特征和所述初始对象特征进行特征优化,以使得所述损失函数的函数值最小化,包括:
调用损失函数,基于所述初始用户特征和所述初始对象特征对所述损失函数求偏导,得到偏导数;
基于所述偏导数,对所述初始用户特征和所述初始对象特征进行特征优化,以使得所述损失函数的函数值最小化。
12.根据权利要求10所述的方法,其特征在于,所述方法还包括:
针对每一由用户标识、所述用户标识对应的已使用对象和未使用对象所构成的三元组,基于各三元组对应的sigmoid函数值的负自然对数的累计值以及用户特征矩阵和对象特征矩阵各自对应的参考范数,累加得到损失函数的函数值;
其中,所述三元组对应的sigmoid函数值,是将相应用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值输入所述损失函数中的sigmoid函数得到的输出值;所述用户特征矩阵是各用户特征所构成的矩阵;所述对象特征矩阵是各对象特征所构成的矩阵;所述参考范数与特征矩阵的范数正相关。
13.一种推荐对象的装置,其特征在于,所述装置包括:
特征获取模块,用于从使得相对意愿值的累积值最大化的特征集合中,获取目标用户标识对应的目标用户特征以及每一个候选对象各自对应的对象特征;所述相对意愿值,是任意用户标识对应于已使用对象的意愿值与所述用户标识对应于未使用对象的意愿值间的差值,所述意愿值与相应用户标识对应的用户特征正相关,并与相应对象的对象特征正相关;
推荐结果预测模块,用于针对每一候选推荐对象,至少根据相应的所述对象特征和所述目标用户特征,确定每一所述候选推荐对象对应的预测推荐结果;
对象推荐模块,用于按照所述预测推荐结果,从所述候选推荐对象筛选出目标推荐对象,并基于所述目标用户标识推荐所述目标推荐对象。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
15.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
CN202110639633.7A 2021-06-08 2021-06-08 推荐对象的方法、装置、计算机设备和存储介质 Pending CN115455276A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110639633.7A CN115455276A (zh) 2021-06-08 2021-06-08 推荐对象的方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110639633.7A CN115455276A (zh) 2021-06-08 2021-06-08 推荐对象的方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN115455276A true CN115455276A (zh) 2022-12-09

Family

ID=84295194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110639633.7A Pending CN115455276A (zh) 2021-06-08 2021-06-08 推荐对象的方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN115455276A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117198488A (zh) * 2023-11-08 2023-12-08 天津中医药大学第一附属医院 一种基于物联网的针灸器械使用效率评估系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117198488A (zh) * 2023-11-08 2023-12-08 天津中医药大学第一附属医院 一种基于物联网的针灸器械使用效率评估系统
CN117198488B (zh) * 2023-11-08 2024-01-26 天津中医药大学第一附属医院 一种基于物联网的针灸器械使用效率评估系统

Similar Documents

Publication Publication Date Title
CN109062962B (zh) 一种融合天气信息的门控循环神经网络兴趣点推荐方法
CN109992710A (zh) 点击率预估方法、系统、介质和计算设备
CN111091196B (zh) 客流数据确定方法、装置、计算机设备和存储介质
WO2022016556A1 (zh) 一种神经网络蒸馏方法以及装置
Chen et al. Next POI recommendation based on location interest mining with recurrent neural networks
Hu et al. Nonnegative matrix tri-factorization with user similarity for clustering in point-of-interest
Huynh et al. Context-similarity collaborative filtering recommendation
Zhang et al. cgail: Conditional generative adversarial imitation learning—an application in taxi drivers’ strategy learning
CN111797861A (zh) 信息处理方法、装置、存储介质及电子设备
CN114417174B (zh) 内容推荐方法、装置、设备及计算机存储介质
CN115456707A (zh) 提供商品推荐信息的方法、装置及电子设备
CN115545103A (zh) 异常数据识别、标签识别方法和异常数据识别装置
CN115952355A (zh) 基于时空幂律注意力的下一兴趣点推荐系统
Sang et al. LSVP: A visual based deep neural direction learning model for point-of-interest recommendation on sparse check-in data
CN113869943A (zh) 物品推荐方法、装置、设备以及存储介质
CN115455276A (zh) 推荐对象的方法、装置、计算机设备和存储介质
CN115730125A (zh) 对象识别方法、装置、计算机设备和存储介质
Quan et al. An optimized task assignment framework based on crowdsourcing knowledge graph and prediction
CN116957678A (zh) 一种数据处理方法和相关装置
CN116910357A (zh) 一种数据处理方法及相关装置
CN115758271A (zh) 数据处理方法、装置、计算机设备和存储介质
CN114358186A (zh) 一种数据处理方法、装置及计算机可读存储介质
CN115482019A (zh) 一种活动关注度预测方法、装置、电子设备和存储介质
CN113822291A (zh) 一种图像处理方法、装置、设备及存储介质
CN111414538A (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