CN110413867B - 用于内容推荐的方法及系统 - Google Patents

用于内容推荐的方法及系统 Download PDF

Info

Publication number
CN110413867B
CN110413867B CN201810397319.0A CN201810397319A CN110413867B CN 110413867 B CN110413867 B CN 110413867B CN 201810397319 A CN201810397319 A CN 201810397319A CN 110413867 B CN110413867 B CN 110413867B
Authority
CN
China
Prior art keywords
candidate
content data
content
machine learning
recommendation
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
Application number
CN201810397319.0A
Other languages
English (en)
Other versions
CN110413867A (zh
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.)
4Paradigm Beijing Technology Co Ltd
Original Assignee
4Paradigm Beijing Technology 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 4Paradigm Beijing Technology Co Ltd filed Critical 4Paradigm Beijing Technology Co Ltd
Priority to CN201810397319.0A priority Critical patent/CN110413867B/zh
Publication of CN110413867A publication Critical patent/CN110413867A/zh
Application granted granted Critical
Publication of CN110413867B publication Critical patent/CN110413867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

提供了一种用于内容推荐的方法及系统,所述方法包括:获取分别与多个候选推荐内容对应的多条候选内容数据记录;针对每条候选内容数据记录,通过以下处理来获得其所对应的候选推荐内容的推荐指数:获取与每条候选内容数据记录相应的序列特征,其中,序列特征在利用第一机器学习模型针对每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取;产生与每条候选内容数据记录相应的预测样本,其中,序列特征被用作预测样本所包括的特征之一;利用第二机器学习模型,针对预测样本来预测每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数;提供多个候选推荐内容各自的推荐指数。

Description

用于内容推荐的方法及系统
技术领域
本申请总体说来涉及人工智能领域,更具体地讲,涉及一种用于内容推荐的方法及系统。
背景技术
随着海量数据的出现,人工智能技术迅速发展,而机器学习是人工智能发展到一定阶段的必然产物,其致力于通过计算的手段,从大量数据中挖掘有价值的潜在信息。
在计算机系统中,“经验”通常以“数据”形式存在。每条数据记录可被看作关于一个事件或对象的描述,并且每条数据记录包括反映事件或对象在某方面的表现或性质的各个事项,这些事项可被称之为数据的“属性”。如何利用原始数据记录的属性获得适宜的机器学习样本,会对机器学习模型的效果产生很大的影响。
内容推荐是机器学习的一个重要应用场景,其致力于利用机器学习进行海量数据挖掘来向用户推荐其感兴趣的个性化内容。通常,内容运营商在向用户推荐特定内容时,会期望预测该特定内容在推荐后被用户接受的可能性,然后根据预测结果相应地执行内容推荐。然而,不适宜的特征提取或特征处理方式(例如,基于数据统计的特征提取方式)常常使得原始数据记录本身或原始数据记录之间隐藏的潜在的预测价值不能被有效地利用,从而导致即使耗费大量的人力和时间成本,预测结果也不够理想,进而导致内容推荐的有效性不高,所推荐的内容很可能不被用户接受。
发明内容
根据本申请示例性实施例,提供了一种用于内容推荐的方法,所述方法可包括:获取分别与多个候选推荐内容对应的多条候选内容数据记录;针对每条候选内容数据记录,通过以下处理来获得其所对应的候选推荐内容的推荐指数:获取与所述每条候选内容数据记录相应的序列特征,其中,所述序列特征在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取;产生与所述每条候选内容数据记录相应的预测样本,其中,所述序列特征被用作所述预测样本所包括的特征之一;利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数;以及提供所述多个候选推荐内容各自的推荐指数。
可选地,在所述方法中,所述多个候选推荐内容可以是针对特定用户而筛选出的,并且所述预测样本可包括所述特定用户的特征。此外,预测步骤可包括预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被所述特定用户接受的概率。
可选地,所述方法还可包括:基于提供的所述多个候选推荐内容各自的推荐指数确定所述多个候选推荐内容中的哪些候选推荐内容将被推荐。
可选地,所述方法还可包括:获取关于实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈,并基于所述真实反馈来更新第一机器学习模型和/或第二机器学习模型。
可选地,第一机器学习模型可具有循环结构,所述序列特征可包括第一机器学习模型针对所述一系列连续内容数据记录执行预测的过程中所产生的内部状态,其中,所述一系列连续内容数据记录可包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录,或者,所述一系列连续内容数据记录可包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录连同所述每条候选内容数据记录。
可选地,在所述方法中,所述序列特征可通过以下处理被提取:将所述每条候选内容数据记录所涉及的一系列连续内容数据记录依次输入第一机器学习模型,并提取第一机器学习模型在所述一系列连续内容数据记录之中的最后一个内容数据记录被输入第一机器学习模型之后产生的内部状态,作为所述序列特征。
可选地,在所述方法中,所述在先内容数据记录可与连续在推荐后被接受的在先候选推荐内容对应。第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容来预测下一连续在推荐后被接受的候选推荐内容,或者,第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容和接下来连续出现的下一候选推荐内容来预测所述下一候选推荐内容在推荐后被接受的概率。
可选地,第一机器学习模型可包括多个第一机器学习子模型,其中,每个第一机器学习子模型可被事先训练为针对一系列连续内容数据记录的对应属性特征来执行预测;或者,第一机器学习模型可作为单个机器学习模型,被事先训练为针对一系列连续内容数据记录的全部属性特征来执行预测。
可选地,在所述方法中,在所述对应属性特征或所述全部属性特征包括多个属性特征的情况下,所述多个属性特征各自的特征向量可经由仿射变换而映射到统一的特征空间。
可选地,在所述方法中,在属性特征同时具有多个取值的情况下,所述属性特征的特征向量值可通过将与所述多个取值相应的特征向量值进行最大值池化、加权平均或均值池化而得到。
可选地,在所述方法中,所述候选推荐内容可涉及以下项之中的至少一项:资讯、音乐、视频、广告。
可选地,第一机器学习模型可具有循环神经网络结构。可选地,所述循环神经网络结构可包括简单循环神经网络结构、长短期记忆网络结构和门控循环单元结构之一。
可选地,所述方法可在云端执行或者在本地执行。
根据本申请另一示例性实施例,提供一种用于内容推荐的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行如上所述的方法的计算机程序。
根据本申请另一示例性实施例,提供一种用于内容推荐的计算装置,所述计算装置可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令被所述处理器执行时,促使处理器执行如上所述的方法。
根据本申请另一示例性实施例,提供一种用于内容推荐的系统,所述系统可包括:数据记录获取装置,被配置为获取分别与多个候选推荐内容对应的多条候选内容数据记录;推荐指数获得装置,被配置为获得所述多个候选推荐内容各自的推荐指数,其中,针对每条候选内容数据记录,推荐指数获得装置通过以下处理来获得其所对应的候选推荐内容的推荐指数:获取与所述每条候选内容数据记录相应的序列特征,其中,所述序列特征在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取;产生与所述每条候选内容数据记录相应的预测样本,其中,所述序列特征被用作所述预测样本所包括的特征之一;利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数;推荐指数提供装置,被配置为提供所述多个候选推荐内容各自的推荐指数。
可选地,所述多个候选推荐内容是针对特定用户而筛选出的,并且所述预测样本包括所述特定用户的特征。可选地,推荐指数获得装置可在预测处理中预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被所述特定用户接受的概率。
可选地,所述系统还可包括:推荐内容确定装置,被配置为基于提供的所述多个候选推荐内容各自的推荐指数确定所述多个候选推荐内容中的哪些候选推荐内容将被推荐。
可选地,所述系统还可包括:机器学习模型更新装置,被配置为获取关于实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈,并基于所述真实反馈来更新第一机器学习模型和/或第二机器学习模型。
可选地,第一机器学习模型可具有循环结构,所述序列特征可包括第一机器学习模型针对所述一系列连续内容数据记录执行预测的过程中所产生的内部状态,其中,所述一系列连续内容数据记录包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录,或者,所述一系列连续内容数据记录包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录连同所述每条候选内容数据记录。
可选地,所述序列特征可通过以下处理被提取:将所述每条候选内容数据记录所涉及的一系列连续内容数据记录依次输入第一机器学习模型,并提取第一机器学习模型在所述一系列连续内容数据记录之中的最后一个内容数据记录被输入第一机器学习模型之后产生的内部状态,作为所述序列特征。
可选地,所述在先内容数据记录可与连续在推荐后被接受的在先候选推荐内容对应。并且,可选地,第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容来预测下一连续在推荐后被接受的候选推荐内容,或者,第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容和接下来连续出现的下一候选推荐内容来预测所述下一候选推荐内容在推荐后被接受的概率。
可选地,第一机器学习模型可包括多个第一机器学习子模型,其中,每个第一机器学习子模型可被事先训练为针对一系列连续内容数据记录的对应属性特征来执行预测;或者,第一机器学习模型可作为单个机器学习模型,被事先训练为针对一系列连续内容数据记录的全部属性特征来执行预测。
可选地,在所述对应属性特征或所述全部属性特征包括多个属性特征的情况下,所述多个属性特征各自的特征向量可经由仿射变换而映射到统一的特征空间。
可选地,在属性特征同时具有多个取值的情况下,所述属性特征的特征向量值可通过将与所述多个取值相应的特征向量值进行最大值池化、加权平均或均值池化而得到。
可选地,所述候选推荐内容可涉及以下项之中的至少一项:资讯、音乐、视频、广告。
可选地,第一机器学习模型具有循环神经网络结构。可选地,所述循环神经网络结构可包括简单循环神经网络结构、长短期记忆网络结构和门控循环单元结构之一。
可选地,所述系统可部署在云端或者部署在本地。
根据本申请示例性实施例的用于内容推荐的方法和系统,通过获取与候选内容数据记录相应的序列特征,并将序列特征用作与候选内容数据记录相应的预测样本所包括的特征之一,从而可更加自动地利用机器学习模型预测候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,进而提高内容推荐的效率。
附图说明
从下面结合附图对本申请实施例的详细描述中,本申请的这些和/或其他方面和优点将变得更加清楚并更容易理解,其中:
图1示出根据本申请示例性实施例的用于内容推荐的系统的框图;
图2示出根据本申请示例性实施例的推荐指数获得装置的框图;
图3示出根据本申请另一示例性实施例的用于内容推荐的系统的框图;
图4示出根据本申请示例性实施例的用于内容推荐的方法的流程图;
图5示出根据本申请示例性实施例的用于获得候选推荐内容的推荐指数的处理的流程图;
图6示出根据本申请另一示例性实施例的用于内容推荐的方法的流程图;
图7示出根据本申请示例性实施例的包含用于内容推荐的系统的网络环境的示意图。
具体实施方式
为了使本领域技术人员更好地理解本申请,下面结合附图和具体实施方式对本申请的示例性实施例作进一步详细说明。
这里,为便于更好地理解本申请,首先对本申请中所涉及的部分知识进行解释。在机器学习领域,往往通过将经验数据提供给机器学习算法来训练“机器学习模型”,以确定构成机器学习模型的理想参数。通常,可针对不同的“预测目标”来训练或产生不同的机器学习模型,而产生或训练好的机器学习模型可被应用于在面对新的待预测数据时提供针对相应预测目标的判断,即,预测结果。不论是训练机器学习模型,还是利用训练好的机器学习模型进行预测,数据都需要转换为包括各种特征的机器学习样本。另外,机器学习算法可包括“有监督机器学习算法”、“无监督机器学习算法”或“半监督机器学习算法”。需要说明的是,在本申请中,除非另有明确说明,否则,本申请的示例性实施例对具体的机器学习算法并不进行特定限制。
图1示出根据本申请示例性实施例的用于内容推荐的系统100(在下文中,为描述方便,将其简称为内容推荐系统100)的框图。内容推荐系统100可包括数据记录获取装置110、推荐指数获得装置120和推荐指数提供装置130。
具体说来,数据记录获取装置110可获取分别与多个候选推荐内容对应的多条候选内容数据记录。这里,候选推荐内容可以是期望推荐给用户的任何内容,例如,候选推荐内容可涉及资讯、音乐、视频和广告中的至少一个,但不限于此。此外,候选推荐内容可以是经过筛选而得到的候选推荐内容,例如,这里的所述多个候选推荐内容可以是针对特定用户而筛选的,或者,也可以是针对特定用户群体或特定用户类别而筛选的,或者,也可以是不考虑用户而仅从内容本身出发而筛选的。作为示例,候选推荐内容可采用冷启动的方式来筛选,例如,候选推荐内容可基于用户的基本属性信息、用户的社交关系、用户的设备信息和/或启动页设置信息等来筛选。这里,用户的基本属性信息可包括例如用户的年龄、性别、手机号、注册账号等;用户的社交关系可包括例如通讯录中的好友关系、用户好友信息等;用户的设备信息可包括例如设备的位置信息、存储的图片信息和应用程序安装列表等;启动页设置信息可包括例如用户在应用第一次被使用时在启动页设置选项中填写的感兴趣内容类别、对内容类别的评分等。可选地,如果预先已经获取到用户的一些历史行为记录,则也可基于用户的历史行为记录来初步筛选针对不同用户的候选推荐内容。这里,用户的历史行为记录可包括例如用户历史上的内容收藏记录、内容评论记录、内容分享记录和内容搜索记录等。
候选内容数据记录与候选推荐内容对应,其可以是在线产生的数据记录、预先生成并存储的数据记录,也可以是通过输入装置或传输媒介而从外部数据源(例如,服务器、数据库等)接收的数据记录。需要说明的是,在本申请中,所提及的任何内容数据记录均可涉及任何内容在至少一个方面的表现或性质,即,内容数据记录可涉及任何内容的至少一个属性信息。例如,候选内容数据记录可涉及候选推荐内容的至少一个属性信息。作为示例,如果候选推荐内容是资讯,则与候选推荐内容对应的候选内容数据记录可例如涉及资讯的以下属性信息:资讯的主题、资讯的关键词和资讯的展示位置等。
此外,需要说明的是,在无明确限定的情况下,关于“内容数据记录”的描述可适用于本申请中提及的任何内容数据记录,例如,候选内容数据记录、连续内容数据记录、在先内容数据记录等。
另外,数据记录获取装置110可获取不同来源的结构化或非结构化内容数据记录(例如,候选内容数据记录),例如,文本数据或数值数据等。获取的候选内容数据记录可用于形成机器学习的预测样本的特征的一部分,以参与针对与候选推荐内容有关的预测目标利用机器学习模型执行的预测处理。候选内容数据记录可来源于期望获取与候选推荐内容有关的预测结果的任何实体,例如,来源于期望获取预测结果的内容提供商、互联网(例如,社交网站)、移动运营商、APP运营商等,也可来源于所述实体之外的其他内容提供者。需要说明的是,除了获取候选内容数据记录之外,数据记录获取装置110还可获取与候选内容数据记录对应的其他数据记录(例如,将被推荐内容的用户的年龄、职业、个人偏好等),以在后续形成携带更多信息的与候选内容数据记录相应的预测样本。
数据记录获取装置110可获取通过输入装置输入到数据记录获取装置110的候选内容数据记录,或者其可根据已经获取的数据来自动生成候选内容数据记录,或者其可从网络上(例如,网络上的存储介质(例如,数据仓库))来获取候选内容数据记录。此外,诸如服务器的中间数据交换装置可有助于数据记录获取装置110从外部数据源获取相应的数据记录。这里,获取的候选内容数据记录还可被进一步转换为容易处理的格式。
此外,候选内容数据记录可例如以数据表的形式被存储在本地存储介质或具有数据存储功能的云计算平台(包括但不限于公有云和私有云等)中。通常,数据表的一行可对应一条内容数据记录,数据表的一列可对应一个属性字段。如上所述,数据表中的每条内容数据记录可包括一个或多个属性信息(即,属性字段)。属性字段可用于形成属性特征,而属性特征可被作为样本的组成特征,并且属性特征可以是属性字段本身或属性字段的局部、属性字段的组合、或属性字段经过处理(或运算)而得到的结果。这里,作为示例,可将不同用户的候选内容数据记录整合在同一数据表中,并且每条候选内容数据记录的属性字段中均可包含例如用户ID的用户标识字段。需要说明的是,候选内容数据记录既可包括某个相对完整的数据表中的全部属性信息,也可仅包括某个相对完整的数据表中的一部分属性信息,例如,数据记录获取装置110可从上述数据表中抽取出候选内容数据记录。此外,数据记录获取装置110获取的候选内容数据记录可被存储在内容推荐系统100中。
推荐指数获得装置120可获得所述多个候选推荐内容各自的推荐指数。具体而言,针对数据记录获取装置110获取的每条候选内容数据记录,推荐指数获得装置120可通过以下处理来获得其所对应的候选推荐内容的推荐指数:首先,推荐指数获得装置120可获取与所述每条候选内容数据记录相应的序列特征,其中,所述序列特征在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取;其次,推荐指数获得装置120可产生与所述每条候选内容数据记录相应的预测样本,其中,所述序列特征被用作所述预测样本所包括的特征之一;最后,推荐指数获得装置120可利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数。
这里,为方便描述,假设以上获取序列特征的处理、产生预测样本的处理以及预测处理可由推荐指数获得装置120包括的对应的操作单元分别执行,然而,本领域技术人员清楚的是,以上处理也可在推荐指数获得装置120本身在不进行任何具体的单元划分或者各单元之间并无明确划界的情况下执行。
图2示出根据示例性实施例的推荐指数获得装置120的框图。以下,将参照图2对推荐指数获得装置120进行详细描述。参照图2,推荐指数获得装置120可包括序列特征获取单元210、预测样本产生单元220和推荐指数预测单元230。
具体而言,序列特征获取单元210可获取与所述每条候选内容数据记录相应的序列特征。这里,所述序列特征可在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取。此外,作为可选方式,序列特征获取单元210获取的序列特征可与其对应的候选内容数据记录一起被存储在内容推荐系统100中。
根据本申请示例性实施例,这里的一系列连续内容数据记录可对应于具有某种连续性(例如,行为或行为所针对的内容在时间上的连续性)的一系列内容,例如,用户在开启某资讯类的App之后,截至退出该App之前连续点击的资讯。实践中,为了便于数据收集,也可人为地进行时间划分,并将划分的单位时间区间内的内容视为具有连续性,例如,可将一天24小时内出现(例如,展现给用户)的内容(或展现的内容数据记录之中用户点击的内容)视为连续内容。或者,也可人为地进行数量划分,例如,将在时间上顺序出现的预设数量的内容认为是连续出现的一系列内容。
具体地,每条候选内容数据记录所涉及的一系列连续内容数据记录可包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录,或者,所述一系列连续内容数据记录可包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录连同所述每条候选内容数据记录。作为示例,在先内容数据记录可通过用于获取候选内容数据记录的数据记录获取装置110来获取,或者,可通过序列特征获取单元210来获取,或者,也可通过其他具有数据获取功能的单元或装置来获取,本申请对此不作限制,例如,在先内容数据记录可从用户本身的客户端或相关的内容提供商等获取。此外,与候选内容数据记录类似,在先内容数据记录也可以数据表的形式被存储。
如上所述,候选内容数据记录可与候选推荐内容对应,相应地,在先内容数据记录可与在先推荐的任意内容(根据需要,其既可包括在推荐后被接受的在先候选推荐内容,也可包括在推荐后未被接受的在先候选推荐内容,还可包括上述两者,即,任何实际上被推荐了的在先候选推荐内容)对应。作为示例,如果候选推荐内容是资讯,则在每条候选内容数据记录之前连续出现的在先内容数据记录可对应于内容提供商在与所述每条候选内容数据记录对应的资讯之前接续地推荐给用户且被用户点击的至少一条资讯。然而,需要说明的是,以上的用户的点击行为仅是候选推荐内容在推荐后被接受的一种行为表现,本领域技术人员清楚的是,本申请中的“被接受”并不仅限于用户的点击行为,而是根据推荐内容的不同,可以是能够表明用户对于推荐给其的内容的接受的任何主动行为,例如,收藏行为、分享行为、播放行为等。
此外,如上所述,候选推荐内容可以是针对特定用户而筛选出的,在这种情况下,相应地,这里的在先内容数据记录也需要是针对该特定用户的在每条候选内容数据记录之前连续出现的在先内容数据记录。例如,当需要利用第一机器学习模型针对特定用户的一系列连续内容数据记录执行预测时,数据记录获取装置110可例如通过该特定用户的标识信息(例如,数据表中该特定用户的标识字段)来获取与针对该特定用户筛选出的多个候选推荐内容对应的多条候选内容数据记录,并获取针对该特定用户的在每条候选内容数据记录之前连续出现的在先内容数据记录,从而可针对该特定用户执行预测。
如上所述,序列特征是在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取的,因此,接下来,将对这里的第一机器学习模型进行描述。
根据示例性实施例,第一机器学习模型可具有循环结构,使得能够学习出连续内容数据记录之间的特性或规律。通常,不同的机器学习模型可具有不同的结构,例如,线性结构、循环结构等。具有循环结构的机器学习模型往往适于处理具有序列规律的一系列连续数据(也可称为,序列数据),并可基于序列数据提供关于预测目标的预测结果。优选地,第一机器学习模型可具有循环神经网络结构。作为示例,循环神经网络结构可包括简单循环神经网络结构、长短期记忆网络(LSTM)结构和门控循环单元结构之一。例如,第一机器学习模型可以是普通的RNN(Recurrent Neural Network)。然而,本领域技术人员清楚的是,循环神经网络结构不限于此,而是可包括现在已知的或将来可能出现的任何循环神经网络结构。
根据示例性实施例,在序列特征获取单元210获取与每条候选内容数据记录对应的序列特征之前,第一机器学习模型已被事先训练完成。具体地,第一机器学习模型可被事先训练为针对一系列连续内容数据记录来执行预测,以提供与预测目标有关的预测结果。如上所述,候选内容数据记录可与候选推荐内容对应,在先内容数据记录可与连续在推荐后被接受的在先候选推荐内容对应,在这种情况下,可利用上述被事先训练的第一机器学习模型针对每条候选内容数据记录所涉及的一系列连续内容数据记录执行相应的预测(例如,预测下一连续在推荐后被接受的候选推荐内容,或者预测下一候选推荐内容在推荐后被接受的概率)来提取与所述每条候选内容数据记录相应的序列特征。作为示例,第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容来预测下一连续在推荐后被接受的候选推荐内容,或者,第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容和接下来连续出现的下一候选推荐内容来预测所述下一候选推荐内容在推荐后被接受的概率。
另外,需要说明的是,以上提及的第一机器学习模型既可以是单个机器学习模型,也可以包括多个第一机器学习子模型。在第一机器学习模型是单个机器学习模型的情况下,第一机器学习模型可被事先训练为针对一系列连续内容数据记录的全部属性特征来执行预测。这里,全部属性特征可以是基于内容数据记录的属性字段(属性信息)产生的全部属性特征,其既可以是内容数据记录的全部属性字段本身,也可以是内容数据记录的部分或全部属性字段通过一定的处理或运算而得到的全部属性特征。可选地,根据另一示例性实施例,第一机器学习模型可包括多个第一机器学习子模型,每个第一机器学习子模型可被事先训练为针对一系列连续内容数据记录的对应属性特征来执行预测。对应属性特征可指基于内容数据记录的属性字段而形成的部分属性特征,其既可以是内容数据记录的部分属性字段本身,也可以是部分或全部属性字段通过一定的处理或运算而得到的部分属性特征。在这种情况下,每个第一机器学习子模型均有其各自所针对的对应属性特征,并且每个第一机器学习子模型所针对的对应属性特征的数量可以相同或不同。例如,假设候选推荐内容是资讯并且与候选推荐内容对应的候选内容数据记录可涉及资讯的以下属性信息:资讯的主题、资讯的关键词和资讯的展示位置,在直接将属性信息作为属性特征的情况下,可针对每个属性信息来训练一个第一机器学习子模型;或者,可通过将属性信息进行分组来训练多个第一机器学习子模型,例如,可针对主题这一属性信息来训练一个第一机器学习子模型,并针对关键词和展示位置这两个属性信息来训练另一个第一机器学习子模型;或者,可针对以上三个属性信息仅训练单个第一机器学习模型。
另外,需要说明的是,每个第一机器学习子模型既可以是相同类型的具有循环结构的机器学习模型,或者可以是不同类型的具有循环结构的机器学习模型。例如,假设第一机器学习模型包括三个第一机器学习子模型,则这三个机器学习子模型中的每个机器学习子模型可分别是例如简单循环神经网络结构、长短期记忆网络结构和门控循环单元结构中的任意一个。需要说明的是,本申请中第一机器学习模型可包括的第一机器学习子模型的数量不限于此,而且每个第一机器学习子模型的类型也不限于此。
根据示例性实施例,无论是在第一机器学习模型作为单个机器学习模型的情况下所描述的全部属性特征,还是在第一机器学习模型包括多个第一机器学习子模型的情况下所描述的对应属性特征,其均可包括一个或多个属性特征。
这里,在全部属性特征或对应属性特征包括多个属性特征的情况下,所述多个属性特征各自的特征向量可经由仿射变换而映射到统一的特征空间。
此外,在属性特征同时具有多个取值的情况下,所述属性特征的特征向量值可通过将与所述多个取值相应的特征向量值进行最大值池化、加权平均或均值池化而得到。
通过上述方式,能够更全面或有效地刻画连续内容数据记录,以便于更好地学习出它们之间的特性或规律,从而用作相应的序列特征。
根据本申请示例性实施例,序列特征可包括第一机器学习模型在针对所述一系列连续内容数据记录执行预测的过程中所产生的内部状态。在第一机器学习模型针对一系列连续内容数据记录执行预测的过程中,第一机器学习模型的内部状态(中间或最终运算结果)会随着输入的内容数据记录而不断变化,该内部状态在本申请示例性实施例中可被用于反映与每条候选内容数据记录相应的序列特性。
作为示例,序列特征可通过以下处理被提取:将所述每条候选内容数据记录所涉及的一系列连续内容数据记录依次输入第一机器学习模型,并提取第一机器学习模型在所述一系列连续内容数据记录之中的最后一个内容数据记录被输入第一机器学习模型之后产生的内部状态,作为所述序列特征。根据示例性实施例,这里的最后一个内容数据记录可以是在所述每条候选内容数据记录之前连续出现的在先内容数据记录中的最后一个在先内容数据记录。也就是说,此时,每条候选内容数据记录所涉及的一系列连续内容数据记录包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录,而不包括所述每条候选内容数据记录本身。此时,当所述每条候选内容数据记录是所述一系列连续内容数据记录中的第一个内容数据记录(即,不存在每条候选内容数据记录所涉及的一系列连续内容数据记录)时,此时的内部状态可被设置为默认值,例如,被设置为一个值为零(或值为内部状态均值)的向量。可选地,根据另一示例性实施例,这里的最后一个内容数据可以是每条候选内容数据记录本身,也就是说,此时,每条候选内容数据记录所涉及的一系列连续内容数据记录除包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录之外还包括所述每条候选内容数据记录本身。
这里,根据所述最后一个内容数据记录的不同,序列特征的获取方式也可有所不同。具体而言,如果所述最后一个内容数据记录是在每条候选内容数据记录之前连续出现的在先内容数据记录中的最后一个在先内容数据记录,则序列特征获取单元210可通过查找历史状态表中的内部状态记录来获取第一机器学习模型在所述最后一个在先内容数据记录被输入第一机器学习模型之后产生的内部状态,作为与所述每条候选内容数据记录相应的序列特征。这里,历史状态表可记录有第一机器学习模型在每个在先内容数据记录被输入到第一机器学习模型中之后产生的内部状态,或者可仅记录第一机器学习模型在每条候选内容数据记录之前的最后一个在先内容数据记录被输入到第一机器学习模型之后产生的内部状态。例如,仍然以候选推荐内容是资讯为例,在所述在先内容数据记录与连续在推荐后被接受的在先资讯对应的情况下,在内容提供商持续不断地将资讯推荐给用户时,对于用户实际点击了的资讯,可获取这些点击资讯所对应的内容数据记录,在其被输入事先训练的第一机器学习模型以执行预测(例如,可预测下一资讯)时,第一机器学习模型会产生或更新相应的内部状态,并且该内部状态可被记录在历史状态表中。与之前描述内容数据记录时所提及的数据表类似,可针对不同用户建立统一的历史状态表,并且表中的每条内部状态记录可用例如用户ID的用户标识字段来标识。
与所述最后一个内容数据记录是在先内容数据记录的情况不同,如果所述最后一个内容数据记录是每条候选内容数据记录本身,则所述每条候选内容数据记录本身也需要被输入第一机器学习模型以执行预测,而此时的内部状态是:在所述每条候选内容数据记录之前连续出现的在先内容数据记录已经被依次输入第一机器学习模型的情况下,再将所述每条候选内容数据记录输入第一机器学习模型执行预测的过程中第一机器学习模型所产生的内部状态。
具有循环结构的第一机器学习模型在执行预测的过程中所产生的内部状态往往可以反映动态时序行为,从而可作为序列特征被用于后续的预测处理。
需要说明的是,序列特征获取单元210既可通过查找历史状态表来获得由其他单元或装置利用第一机器学习模型执行预测的过程中提取的序列特征(也就是说,序列特征获取单元210本身可并不执行利用第一机器学习模型执行预测以提取序列特征的操作),或者,也可由序列特征提取单元210本身执行利用第一机器学习模型执行预测以提取序列特征的操作,本申请对此不作限制。
预测样本产生单元220可产生与所述每条候选内容数据记录相应的预测样本。根据示例性实施例,由序列特征获取单元210获取的与每条候选内容数据记录相应的序列特征可被用作所述预测样本所包括的特征之一。这里,预测样本产生单元220可将序列特征与所述每条候选内容数据记录对应的一个或多个特征进行拼接或组合来产生预测样本。与所述每条候选内容数据记录对应的一个或多个特征既可基于每条候选内容数据记录本身的属性字段来形成,也可基于来自于有助于预测的其他数据记录的属性字段而形成,或者可基于每条候选内容数据记录的属性字段和其他数据记录的属性字段两者来形成。应注意,本申请示例性实施例对预测样本的特征组成并不加以限制。可选地,在预测样本中,序列特征可单独存在,也可与其他特征进行组合,或经过进一步的特征处理。作为示例,预测样本既可包括输入第一机器学习模型的属性特征,也可不包括所述属性特征。此外,需要说明的是,这里的预测样本的特征既可以是属性字段本身,也可以是属性字段通过特征工程处理而得到的特征。此外,与每条候选内容数据记录对应的预测样本的特征可来源于相同或不同的数据源。如上所述,数据记录获取装置110获取的多条候选内容数据记录所对应的多个候选推荐内容可以是针对用户而筛选出的,在这种情况下,预测样本除包括与每条候选内容数据记录对应的序列特征之外,还可包括所述特定用户的特征。在这种情况下,所述特定用户的特征与序列特征可来源于相同或不同的数据源,而且,如果所述特定用户的特征包括多个特征,则所述多个特征也可来源于相同或不同的数据源。此外,作为示例,产生的预测样本可被存储在内容推荐系统100中。
在预测样本被产生的情况下,推荐指数预测单元230可利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数。如上所述,候选推荐内容可以是针对特定用户而筛选出的,相应地,推荐指数预测单元230可利用第二机器学习模型针对所述预测样本预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被所述特定用户接受的概率。
这里,第二机器学习模型是已经训练完成的机器学习模型,并且被事先训练为针对提供给其的预测样本来预测与所述预测样本对应的候选推荐内容在推荐后被接受的概率。根据示例性实施例,第二机器学习模型可以是逻辑回归模型、支持向量机、梯度提升决策树或深度神经网络等。然而,需要说明的是,在本申请中,第二机器学习模型不限于以上示例,而是可以是任何机器学习模型,只是该机器学习模型的预测样本中包括以上所描述的序列特征。
以上已经结合图2描述了推荐指数获得装置120。根据示例性实施例,推荐指数获得装置120可获取与每条候选内容数据记录相应的序列特征,并将序列特征用作与所述每条候选内容数据记录相应的预测样本所包括的特征之一,从而可更加自动地有效预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率。
返回参照图1,在推荐指数获得装置120获得了所述多个候选推荐内容各自的推荐指数之后,推荐指数提供装置130可提供所述多个候选推荐内容各自的推荐指数。作为示例,推荐指数提供装置130可将所述多个候选推荐内容各自的推荐指数提供给内容推荐系统100中包括的其他装置(例如,将参照图3描述的推荐内容确定装置),或者可将推荐指数提供给外部装置或外部系统(例如,期望获得候选推荐内容的推荐指数的内容运营商的内容运营系统)。此外,推荐指数提供装置130可以以预定格式(例如,数据列表、图表等)提供所述多个候选推荐内容各自的推荐指数,并且可直接将推荐指数以预定格式显示在装置的界面上。然而,需要说明的是,本申请对推荐指数提供装置130提供推荐指数所针对的对象、提供推荐指数的方式、以及推荐指数的表示形式均不做限制。
根据示例性实施例,内容推荐系统100可部署在云端或部署在本地。内容推荐系统100可部署在例如公有云、私有云或混合云上,并可向期望获得相应预测结果的实体(例如,内容运营商)提供与内容推荐有关的机器学习服务。可选地,内容推荐系统100也可部署在本地,例如,内容运营商的本地系统。
根据示例性实施例的以上描述的内容推荐系统100,通过机器学习模型来获取反映内容数据记录之间的时序规律或特性的序列特征,并将序列特征用作预测推荐指数的特征之一,从而可在不必对推荐业务进行深入理解的情况下,有效预测关于候选推荐内容的推荐指数。
图3示出根据本申请另一示例性实施例的用于内容推荐的系统300(以下简称为内容推荐系统300)的框图。在图3所示的系统300中,除了可包括图1所示的数据记录获取装置110、推荐指数获得装置120和推荐指数提供装置130之外,还可进一步包括推荐内容确定装置140和机器学习模型更新装置150。需要说明的是,虽然图3示出了内容推荐系统300可进一步包括推荐内容确定装置140和机器学习模型更新装置150两者,然而内容推荐系统300可进一步仅包括推荐内容确定装置140或机器学习模型更新装置150。由于以上已经参照图2描述了数据记录获取装置110、推荐指数获得装置120和推荐指数提供装置130,因此,这里不再赘述。接下来,将重点对推荐内容确定装置140和机器学习模型更新装置150进行描述。此外,需要说明的是,内容推荐系统300除可包括图3所示出的装置之外,还可包括例如存储装置(未示出)等的其他装置。例如,存储装置可存储内容推荐系统300获取的与候选推荐内容对应的候选内容数据记录、与候选内容数据记录相应的序列特征、和/或内容推荐系统300产生的与候选内容数据记录相应的预测样本,以用于后续的机器学习模型更新处理。
如上所述,推荐指数提供装置130可将所述多个候选推荐内容各自的推荐指数提供给内容推荐系统300中包括的其他装置,例如,推荐内容确定装置140。推荐内容确定装置140可基于提供的所述多个候选推荐内容各自的推荐指数确定所述多个候选推荐内容中的哪些候选推荐内容将被推荐。作为示例,可将多个候选推荐内容各自的推荐指数由高到低进行排序,并将推荐指数的排名在预定范围内的候选推荐内容确定为将被推荐的候选推荐内容。或者,除考虑候选推荐内容的推荐指数之外,还可结合其他预定的筛选规则(例如,候选推荐内容所属类别的优先级等)来确定将被推荐的候选推荐内容。在确定了将被推荐的候选推荐内容之后,内容推荐系统300可将确定结果发送给用于执行内容推荐的系统(例如,内容运营商的内容运营系统)以便于该系统根据确定结果相应地执行内容推荐。可选地,内容推荐系统300也可根据确定结果直接执行相应的内容推荐。
机器学习模型更新装置150可获取关于实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈,并基于所述真实反馈来更新第一机器学习模型和/或第二机器学习模型。在实际推荐的候选推荐内容是针对特定用户的情况下,这里的真实反馈可以是关于实际推荐的候选推荐内容在被推荐之后是否被该特定用户接受的真实反馈。这里,机器学习模型(第一机器学习模型和/或第二机器学习模型)的更新可以是重新学习或训练机器学习模型(即,摈弃原有的模型参数,重新通过训练获得新的模型参数),也可以是在利用当前机器学习模型的历史训练结果的基础上进行增量学习(即,修改原有的模型参数)。作为示例,机器学习模型更新装置150可每隔预定时间段(例如,一天等)从内容运营商的内容运营系统集中获取上述真实反馈,也可实时地获取上述真实反馈,从而基于上述真实反馈来更新机器学习模型。
在更新时,实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈可被用作用于更新机器学习模型的训练样本的标记。例如,为了更新第二机器学习模型,在获取到实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈之后,机器学习模型更新装置150可获取与该实际推荐的候选推荐内容对应的候选内容数据记录以及与该候选内容数据记录相应的序列特征,并产生与该候选内容数据记录相应的训练样本,其中,所述序列特征被用作训练样本所包括的特征之一,并且该实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈可被用作训练样本的标记。如上所述,由于该实际推荐的候选内容可以是经过内容推荐系统300执行预测之后才被推荐的候选内容,因此,内容推荐系统300事实上之前已经获取并存储了与该实际推荐的候选内容对应的候选内容数据记录以及与该候选内容数据记录相应的序列特征,甚至已经存储了产生的与该实际推荐的候选内容相应的预测样本。此时,在不需要增加或改变训练样本所包括的特征的情况下,之前存储的与该实际推荐的候选内容相应的预测样本可直接被用作用于更新第二机器学习模型的训练样本,并且该训练样本的标记是该实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈。可选地,如果需要增加训练样本的特征,则机器学习样本更新装置150可重新产生与之前存储的与和该实际推荐的候选推荐内容对应的候选内容数据记录相应的训练样本。此外,如果第一机器学习模型已被更新,则在第二机器学习模型的更新过程中,可将利用更新后的第一机器学习模型执行预测的过程中提取的序列特征作为用于第二机器学习模型更新的训练样本的特征之一。在获得了训练样本之后,机器学习模型更新装置150可基于由训练样本组成的训练样本集重新学习或训练第二机器学习模型,或者可基于由训练样本组成的训练样本集在原有的第二机器学习模型的历史训练结果的基础上对第二机器学习模型进行增量学习。
如果要对第一机器学习模型进行更新,则机器学习学习模型更新装置150可基于序列训练样本的集合来更新第一机器学习模型。这里,序列训练样本可基于与实际推荐的一系列连续内容相应的一系列连续内容数据记录,其中,关于所述一系列连续内容在推荐后是否被接受的真实反馈已经被机器学习模型更新装置150获取。这里,所述一系列连续内容数据记录可具有相同长度或不同长度(即,可包含相同数量的内容数据记录或可包含不同数量的内容数据记录)。
这里,序列训练样本所基于的一系列连续内容数据记录可对应于任意连续性的真实反馈已经被获取的至少一条内容,比如,用户在某资讯类App于前台运行期间连续点击的资讯内容。根据示例性实施例,可直接采集用户的真实连续点击资讯,或者,可将用户的点击资讯按照预设时间间隔(或预设数量)进行划分,并将单个预设时间间隔内的点击资讯(或在时间上连续出现的预设数量的点击资讯)视为一系列连续内容。这里,可根据具体应用场景来限定何为连续内容(例如,仅将连续推荐的内容之中被点击的内容作为连续内容,而排出掉夹杂在中间的未点击内容)。
此外,序列训练样本之间可由分隔符进行连接,进一步地,使用分隔符连接的序列训练样本的连续内容数据记录集合可被进一步划分为不同的批次(batch),并且,每个批次可具有相同或不同的批次规模(batch size)。作为示例,每个批次可包括相同数量的连续内容数据记录,并且分隔符本身可被视为是一个内容数据记录。在针对特定序列预测目标(例如,持续估算下一连续在推荐后被接受的候选推荐内容)的第一机器学习模型的训练过程中,每一批次所包括的连续内容数据记录可依次被输入第一机器学习模型,通过识别输入的分隔符,第一机器学习模型可判断出与单个序列训练样本对应的一系列连续内容数据记录的结束,作为示例,可不将与分隔符相应的预测损失计入最终的损失函数。
此外,根据示例性实施例,序列训练样本可基于一系列连续候选推荐内容数据记录,相应地,机器学习模型更新装置150可基于序列训练样本的集合将第一机器学习模型更新为针对一系列连续在推荐后被接受的在先候选推荐内容和接下来连续出现的下一候选推荐内容来预测所述下一候选推荐内容在推荐后被接受的概率,在这种情况下,与序列训练样本中的最后一个候选内容数据记录对应的候选内容在推荐后是否被接受的真实反馈可被用作该序列训练样本的标记。需要说明的是,如果第一机器学习模型包括多个第一机器学习子模型,则机器学习模型更新装置150可按照类似的方式,相应地更新多个第一机器学习子模型,第一机器学习子模型的具体更新过程与以上描述类似,只是每个第一机器学习子模型对输入的数据记录执行的特征处理和/或采用的具体机器学习算法等有所差异,这里将不再对其进行赘述。
通过机器学习模型的更新,可使机器学习模型不断适应于新近出现的数据记录,从而便于提供更准确的预测结果,因此,根据图3所示的包括机器学习模型更新装置150的内容推荐系统300有助于进一步提高内容推荐的准确性。
需要说明的是,尽管本申请在描述内容推荐系统时并未提及内容推荐系统包括机器学习模型训练装置,但是本领域技术人员清楚的是,可选地,内容推荐系统也可包括用于训练第一机器学习模型和第二机器学习模型的训练装置,并且该训练装置可以是与以上所描述的机器学习模型更新装置150相同或不同的装置。此外,第一机器学习模型和第二机器学习模型的训练过程可与更新过程类似,本领域技术人员通过以上描述完全可了解到如何训练第一机器学习模型和第二机器学习模型,训练过程中所使用的训练样本与执行预测时的预测样本在形式上可具有一致性或被处理为具有一致性,不同之处在于,训练所使用的数据记录是历史上真实存在的数据记录,并且其在有监督学习的情况下具有相应的标记,而利用第一机器学习模型和第二机器学习模型执行预测所使用的数据记录是待预测的新的内容数据记录,因此,这里不再赘述第一机器学习模型和第二机器学习模型的训练过程。
以上已经结合图1至图3对根据本申请示例性实施例的用于内容推荐的系统进行了描述。在下文中,将参照图4至图6对根据本申请示例性实施例的用于内容推荐的方法进行描述。
图4示出根据本申请示例性实施例的用于内容推荐的方法的流程图。
这里,作为示例,图4所示的方法可由图1所示的内容推荐系统100来执行,也可完全通过计算机程序以软件方式实现,还可通过特定配置的计算装置来执行。为了描述方便,假设图4所示的方法由图1所示的内容推荐系统100来执行,并假设内容推荐系统100可具有图1所示的配置。
参照图4,在步骤S410,数据记录获取装置110可获取分别与多个候选推荐内容对应的多条候选内容数据记录。这里,作为示例,数据记录获取装置110可通过手动、半自动或全自动的方式来批量地获取与多个候选推荐内容对应的多条候选内容数据记录,或对获取的候选内容数据记录进行处理,使得处理后的候选内容数据记录具有适当的格式或形式。例如,数据记录获取装置110可通过输入装置(例如,工作站)接收操作者(例如,来自期望获得预测结果的实体的操作者)手动输入的候选内容数据记录。此外,数据记录获取装置110可通过全自动的方式从数据源系统地取出候选内容数据记录,例如,通过以软件、固件、硬件或其组合实现的定时器机制来系统地请求数据源并从响应中得到所请求的数据记录。所述数据源可包括一个或多个数据库或服务器。数据记录获取装置110可经由内部网络和/或外部网络来实现候选内容数据记录的获取,而候选内容数据记录可以是经过加密的数据记录。在服务器、数据库、网络等被配置为彼此通信的情况下,可在没有人工干预的情况下自动进行数据获取,但应注意,在这种方式下仍旧可存在一定的用户输入操作。半自动方式介于手动方式与全自动方式之间。半自动方式与全自动方式的区别在于由用户激活的触发机制代替了例如定时器机制。在这种情况下,在接收到特定的用户输入的情况下,才产生提取数据的请求。每次获取数据时,优选地,可将捕获的数据存储在非易失性存储器中。作为示例,可利用数据仓库来存储在获取期间采集的或进一步处理后的候选内容数据记录。
根据示例性实施例,候选推荐内容可以是期望推荐给用户的任何内容,例如,候选推荐内容可涉及资讯、音乐、视频和广告中的至少一个,但不限于此。此外,候选推荐内容可以是经过筛选而得到的候选推荐内容,并且,这里的所述多个候选推荐内容可以是针对特定用户而筛选的,或者,也可以是针对特定用户群体或特定用户类别而筛选的。以上已经参照图1对候选推荐内容和候选内容数据记录进行了描述,这里不再赘述。
在获取到分别与多个候选推荐内容对应的多条候选内容数据记录之后,在步骤S420,推荐指数获得装置120可获得所述多个候选推荐内容各自的推荐指数。具体而言,针对每条候选内容数据记录,推荐指数获得装置120均可执行用于获得其所对应的候选推荐内容的推荐指数的处理。为便于理解,以下将参照图5对用于获得候选推荐内容的推荐指数的处理进行详细描述。
图5示出根据本申请示例性实施例的用于获得候选推荐内容的推荐指数的处理的流程图。图5所示的处理可由图2所示的推荐指数获得装置120来执行,也可完全通过计算机程序以软件方式实现,还可通过特定配置的计算装置来执行。为了描述方便,假设图5所示的处理由图2所示的推荐指数获得装置120来执行,并假设推荐指数获得装置120具有图2所示的组成单元。
参照图5,在步骤S4210,序列特征获取单元210可获取与所述每条候选内容数据记录相应的序列特征。这里,所述序列特征可在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取。以上已在图1的描述中对“一系列连续内容数据记录”进行了解释,这里不再赘述。
根据示例性实施例,每条候选内容数据记录所涉及的一系列连续内容数据记录可包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录,或者,所述一系列连续内容数据记录可包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录连同所述每条候选内容数据记录。如上所述,候选内容数据记录可与候选推荐内容对应,相应地,在先内容数据记录可与在先候选推荐内容对应。可选地,在先内容数据记录可与连续在推荐后被接受的在先候选推荐内容对应。此外,如上所述,候选推荐内容可以是针对特定用户而筛选出的,在这种情况下,相应地,这里的在先内容数据记录也需要是针对该特定用户的在每条候选内容数据记录之前连续出现的在先内容数据记录。
根据示例性实施例,第一机器学习模型可具有循环结构,优选地,第一机器学习模型可具有循环神经网络结构。作为示例,循环神经网络结构可包括简单循环神经网络结构、长短期记忆网络(LSTM)结构和门控循环单元结构之一。此外,第一机器学习模型可被事先训练为针对一系列连续内容数据记录来执行预测,以提供与预测目标有关的预测结果。作为示例,第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容来预测下一连续在推荐后被接受的候选推荐内容,或者,第一机器学习模型可被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容和接下来连续出现的下一候选推荐内容来预测所述下一候选推荐内容在推荐后被接受的概率。如上所述,候选内容数据记录可与候选推荐内容对应,在先内容数据记录可与连续在推荐后被接受的在先候选推荐内容对应,在这种情况下,可利用上述被事先训练的第一机器学习模型针对每条候选内容数据记录所涉及的一系列连续内容数据记录执行相应的预测(例如,预测下一连续在推荐后被接受的候选推荐内容,或者预测下一候选推荐内容在推荐后被接受的概率)来提取与所述每条候选内容数据记录相应的序列特征。
根据示例性实施例,序列特征可包括第一机器学习模型针对所述一系列连续内容数据记录执行预测的过程中所产生的内部状态。作为示例,在步骤S4210,序列特征获取单元210可将所述每条候选内容数据记录所涉及的一系列连续内容数据记录依次输入第一机器学习模型,并提取第一机器学习模型在所述一系列连续内容数据记录之中的最后一个内容数据记录被输入第一机器学习模型之后产生的内部状态,作为所述序列特征。在这个过程中,每当一个连续内容数据记录被输入到第一机器学习模型,第一机器学习模型的内部状态将被更新。这里,最后一个数据记录可以是在所述每条候选内容数据记录之前连续出现的在先内容数据记录中的最后一个在先内容数据记录,或者,最后一个数据记录可以是所述每条候选内容数据记录本身(也就是说,所述每条候选内容数据记录本身也需要被输入第一机器学习模型)。需要说明的是,在步骤S4210,序列特征获取单元210本身可不执行上述将一系列连续内容数据记录依次输入第一机器学习模型并提取相应的内部状态的操作,而是可直接获取其他单元或其他装置通过上述操作所提取的序列特征。例如,在步骤S4210,序列特征获取单元210可通过查找历史状态表的形式获取通过以上处理提取的与每条候选数据记录相应的序列特征。这里,历史状态表可针对多个用户保存其各自对应的上述内部状态。
作为示例,当第一机器学习模型是普通RNN时,内部状态可以是对应于所述最后一个内容数据记录的特征向量x被输入RNN之后,RNN的状态更新函数的输出h。作为另一示例,当第一机器学习模型是LSTM时,内部状态可以是对应于所述最后一个内容数据记录的特征向量x被输入LSTM之后,LSTM模型中的元胞状态(Cell State)和/或隐藏状态(HiddenState)。
此外,当所述每条候选内容数据记录所涉及的一系列连续内容数据记录仅包括在先内容数据记录,而所述每条候选内容数据记录是所述一系列连续内容数据记录中的第一个内容数据记录(即,不存在所述每条候选内容数据记录所涉及的一系列连续内容数据记录)时,此时,在步骤S4210,序列特征获取单元210可将所述内部状态设置为默认值,例如,设置为一个值为零(或内部状态均值)的向量。
根据示例性实施例,第一机器学习模型既可以是单个机器学习模型,也可以包括多个第一机器学习子模型。例如,第一机器学习模型可作为单个机器学习模型,被事先训练为针对一系列连续内容数据记录的全部属性特征来执行预测。或者,在第一机器学习模型包括多个第一机器学习子模型的情况下,每个第一机器学习子模型被事先训练为针对一系列连续内容数据记录的对应属性特征来执行预测。由于已经在参照图1的描述中对全部属性特征以及对应属性特征进行了解释,因此,这里不再赘述。根据示例性实施例,在所述对应属性特征或所述全部属性特征包括多个属性特征的情况下,所述多个属性特征各自的特征向量经由仿射变换而映射到统一的特征空间。此外,如果属性特征同时具有多个取值的情况下,所述属性特征的特征向量值可通过将与所述多个取值相应的特征向量值进行最大值池化、加权平均或均值池化而得到。
例如,假设第一机器学习模型是RNN并且上述一系列连续内容数据记录包括在每条候选内容数据记录之前连续出现的在先内容数据记录,每个在先内容数据记录对应单个属性特征x,该属性特征包括多个取值,则RNN针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程可表示为如下的等式:
Figure BDA0001644868580000241
Figure BDA0001644868580000242
Figure BDA0001644868580000243
et=et,maxpooling或et,weighted或et,average
Figure BDA0001644868580000244
Figure BDA0001644868580000245
Figure BDA0001644868580000246
其中,N为t时刻输入的属性特征xt的取值个数,
Figure BDA0001644868580000247
是t时刻与该属性特征的第i个取值相应的特征向量,Wt,i为t时刻该属性特征的第i个取值的权重,et,maxpooling表示对与N个取值对应的特征向量进行最大值池化后得到的特征向量,et,weighted表示对与N个取值对应的特征向量进行加权平均后得到的特征向量,et,average表示对与N个取值对应的特征向量进行均值池化后得到的特征向量,et为t时刻RNN的输入(为上述三者et,maxpooling、et,weighted和et,average之一),ht为t时刻RNN的内部状态,
Figure BDA0001644868580000248
为RNN的状态更新函数,p()为条件概率(即,在t时刻的特征xt的情况下预测出t+1时刻的特征的概率),loss为预测损失,ll()为指示函数,当括号内条件满足时为1,不满足时为0。
例如,假设候选推荐内容是资讯并且与候选推荐内容对应的候选内容数据记录可包括资讯的主题、关键词和展示位置这三种属性信息,并且主题具有多个取值,例如,主题可包括以下取值:体育、明星、娱乐。此时,可通过将与体育对应的特征向量值、与明星相应的特征向量值和与娱乐相应的特征向量值进行最大值池化、加权平均或均值池化来得到与主题这一属性信息对应的属性特征。此外,与主题对应的属性特征、与关键词对应的属性特征以及与展示位置对应的属性特征可经由仿射变换而映射到统一的特征空间。根据上述特征处理方式,能够更全面或有效地刻画连续内容数据记录,以便于更好地学习出它们之间的特性或规律,从而用作相应的序列特征。
如上所述,第一机器学习模型可包括多个第一机器学习子模型,在这种情况下,作为示例,在步骤S4210,序列特征获取单元210可将每条候选内容数据记录所涉及的一系列连续内容数据记录的对应属性特征依次输入对应的第一机器学习子模型,并提取各个第一机器学习子模型在最后一个内容数据记录的对应属性特征被输入到各第一机器学习模型之后产生的内部状态。在这种情况下,获取的各第一机器学习子模型的内部状态可被拼接或组合,以作为与每条候选内容数据记录相应的序列特征。
在步骤S4220,预测样本产生单元220可产生与所述每条候选内容数据记录相应的预测样本。这里,在步骤S410获取的序列特征可被用作预测样本所包括的特征之一。根据示例性实施例,在步骤S4220,预测样本产生单元220可将序列特征与在步骤S410获取的每条候选内容数据记录对应的一个或多个特征进行拼接或组合来产生与所述每条候选内容数据记录相应的预测样本。根据示例性实施例,如果第一机器学习模型包括多个第一机器学习子模型,则通过每个第一机器学习子模型获取的序列特征可分别被拼接到与所述每条候选内容数据记录对应的一个或多个特征,以产生与所述每条候选内容数据记录相应的预测样本。这里,与所述每条候选内容数据记录对应的一个或多个特征既可基于所述每条候选内容数据记录本身的属性字段来形成,也可基于来自于有助于预测的其他数据记录的属性字段来形成,或者可基于所述每条候选内容数据记录的属性字段和其他数据记录的属性字段两者来形成。此外,需要说明的是,这里的预测样本的特征既可以是属性字段本身,也可以是属性字段通过特征工程处理而得到的特征。
如上参照图3所述,数据记录获取装置110在步骤S410获取的多条候选内容数据记录所对应的多个候选推荐内容可以是针对用户而筛选出的,在这种情况下,相应地,在步骤S4220产生的预测样本除包括与每条候选内容数据记录对应的序列特征之外,还可包括所述特定用户的特征。此外,所述特定用户的特征与序列特征可来源于相同或不同的数据源。
接下来,在步骤S4230,推荐指数预测单元230可利用第二机器学习模型,针对在步骤S4220产生的预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数。根据示例性实施例,第二机器学习模型可以是逻辑回归模型、支持向量机、梯度提升决策树或深度神经网络等。然而,需要说明的是,在本申请中,第二机器学习模型可以是任何机器学习模型,只是该机器学习模型的预测样本中包括上文所述的序列特征。如上所述,候选推荐内容可以是针对特定用户而筛选的,相应地,在步骤S4230,推荐指数预测单元230可利用第二机器学习模型预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被所述特定用户接受的概率。
通过针对每条候选内容数据记录执行图5所示的方法,推荐指数获得装置120可在步骤S420获得多个候选推荐内容各自的推荐指数。
返回参照图4,在获得了多个候选推荐内容各自的推荐指数之后,在步骤S430,推荐指数提供装置130可提供所述多个候选推荐内容各自的推荐指数。作为示例,在步骤S430,推荐指数提供装置130可将所述多个候选推荐内容各自的推荐指数提供给内容推荐系统本身所包括的其他装置(例如,参照图3描述的推荐内容确定装置140),或者可将推荐指数提供给外部装置或外部系统(例如,期望获得候选推荐内容的推荐指数的内容运营商的内容运营系统)。此外,在步骤S430,推荐指数提供装置130可以以预定格式(例如,数据列表、图表等)提供所述多个候选推荐内容各自的推荐指数,并且可直接将推荐指数以预定格式显示在装置的界面上。然而,推荐指数被提供给的对象、推荐指数的提供方式、以及推荐指数的表示形式均不限于上述示例。
根据示例性实施例,图4所示的方法既可以在云端(例如,公有云、私有云或混合云)执行,也可以在本地执行(例如,内容运营商的本地系统)。此外,上述用于内容推荐的方法既可以由内容运营商构建的系统执行,也可以由专门提供机器学习服务的实体来执行以向期望向用户推荐适宜内容的实体(例如,内容运营商)提供与内容推荐有关的服务。
根据上述用于内容推荐的方法,通过机器学习模型来获取能够反映一系列连续内容数据记录之间的时序规律或特性的序列特征,并将其用作与每条候选内容数据记录相应的预测样本的特征之一来执行预测,可在不必对推荐业务进行深入理解的情况下,有效预测关于候选推荐内容的推荐指数。
图6示出根据本申请另一示例性实施例的用于内容推荐的方法的流程图。在图6所示的方法中,除了上述步骤S410、步骤S420和步骤S430之外还包括步骤S440。以上已经参照图4对步骤S410、步骤S420和步骤S430进行了描述,这里不再赘述。如以上参照图3所述,用于内容推荐的系统还可包括推荐内容确定装置140。
在步骤S440,推荐内容确定装置140可基于在步骤S430提供的所述多个候选推荐内容各自的推荐指数确定所述多个候选推荐内容中的哪些候选推荐内容将被推荐。作为示例,在步骤S440,推荐内容确定装置140可将多个候选推荐内容各自的推荐指数由高到低进行排列,并将推荐指数的排名在预定范围内的候选推荐内容确定为将被推荐的候选推荐内容。或者,除考虑候选推荐内容的推荐指数之外,还可结合其他预定的筛选规则(例如,候选推荐内容所属类别的优先级等)确定将被推荐的候选推荐内容。随后,确定结果可被发送给用于执行内容推荐的系统以便于该系统根据确定结果相应地执行内容推荐,或者,可选地,所述方法还可包括基于确定结果执行内容推荐的操作(未示出)。
此外,由于随着时间的推移,影响候选推荐内容的推荐指数预测的因素可能会发生变化,因此,为持续获得更准确的预测结果,根据另一示例性实施例,图4或图6所述的方法还可包括更新机器学习模型的步骤(未示出)。如以上参照图3所述,内容推荐系统300还可包括机器学习模型更新装置150。具体地,机器学习模型更新装置150可获取关于实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈,并基于所述真实反馈来更新第一机器学习模型和/或第二机器学习模型。作为示例,在实际推荐的候选推荐内容是针对特定用户的情况下,这里的真实反馈可以是关于实际推荐的候选推荐内容在被推荐之后是否被该特定用户接受的真实反馈。这里,机器学习模型(第一机器学习模型和/或第二机器学习模型)的更新可以是重新学习或训练机器学习模型(即,摈弃原有的模型参数,重新通过训练获得相应的模型参数),也可以是在利用当前机器学习模型的历史训练结果的基础上进行增量学习(即,修改原有的模型参数),并且更新机器学习模型的操作可每隔预定时间段(例如,一天、一周或一个月等)被执行。关于第一机器学习模型和第二机器学习模型的更新,由于以上已经在参照图3描述机器学习模型更新装置150时进行过描述,因此这里不再赘述。
此外,与参照图4描述的用于内容推荐的方法类似,上述参照图6所述的方法也既可在云端执行,也可在本地执行。通过以上描述的用于内容推荐的方法,可有助于进一步提高内容推荐的准确性。
以上已参照图1至图6描述了根据本申请示例性实施例的用于内容推荐的方法及系统。然而,应理解的是:图1至图3所示出的系统、装置及其单元可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些系统、装置或单元可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。此外,这些系统、装置或单元所实现的一个或多个功能也可由物理实体设备(例如,处理器、客户端或服务器等)中的组件来统一执行。
此外,上述方法可通过记录在计算可读介质上的程序来实现,例如,根据本申请的示例性实施例,可提供一种用于内容推荐的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行以下方法步骤的计算机程序:获取分别与多个候选推荐内容对应的多条候选内容数据记录;针对每条候选内容数据记录,通过以下处理来获得其所对应的候选推荐内容的推荐指数:获取与所述每条候选内容数据记录相应的序列特征,其中,所述序列特征在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取;产生与所述每条候选内容数据记录相应的预测样本,其中,所述序列特征被用作所述预测样本所包括的特征之一;利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数;以及提供所述多个候选推荐内容各自的推荐指数。
上述计算机可读介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这些附加步骤和进一步处理的内容已经在参照图4到图6进行相关方法的描述过程中提及,因此这里为了避免重复将不再进行赘述。
应注意,根据本申请示例性实施例的用于内容推荐的系统可完全依赖计算机程序的运行来实现相应的功能,即,各个装置在计算机程序的功能架构中与各步骤相应,使得整个系统通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。
另一方面,图1到图3所示的各个装置或单元也可以通过硬件、软件、固件、中间件、微代码或其任意组合来实现。当以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。
例如,本申请的示例性实施例还可以实现为计算装置,该计算装置包括存储部件和处理器,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行用于内容推荐的方法。
具体说来,所述计算装置可以部署在服务器或客户端中,也可以部署在分布式网络环境中的节点装置上。此外,所述计算装置可以是PC计算机、平板装置、个人数字助理、智能手机、web应用或其他能够执行上述指令集合的装置。
这里,所述计算装置并非必须是单个的计算装置,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。计算装置还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子装置。
在所述计算装置中,处理器可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
根据本申请示例性实施例的用于内容推荐的方法中所描述的某些操作可通过软件方式来实现,某些操作可通过硬件方式来实现,此外,还可通过软硬件结合的方式来实现这些操作。
处理器可运行存储在存储部件之一中的指令或代码,其中,所述存储部件还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,所述网络接口装置可采用任何已知的传输协议。
存储部件可与处理器集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储部件可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储部件和处理器可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器能够读取存储在存储部件中的文件。
此外,所述计算装置还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。计算装置的所有组件可经由总线和/或网络而彼此连接。
根据本申请示例性实施例的用于内容推荐的方法所涉及的操作可被描述为各种互联或耦合的功能块或功能示图。然而,这些功能块或功能示图可被均等地集成为单个的逻辑装置或按照非确切的边界进行操作。
例如,如上所述,根据本申请示例性实施例的用于内容推荐的计算装置可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行下述步骤:获取分别与多个候选推荐内容对应的多条候选内容数据记录;针对每条候选内容数据记录,通过以下处理来获得其所对应的候选推荐内容的推荐指数:获取与所述每条候选内容数据记录相应的序列特征,其中,所述序列特征在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录执行预测的过程中被提取;产生与所述每条候选内容数据记录相应的预测样本,其中,所述序列特征被用作所述预测样本所包括的特征之一;利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数;以及提供所述多个候选推荐内容各自的推荐指数。
接下来,为便于更好地理解本申请,示例性地简要描述包含根据本申请示例性实施例的包含上述内容推荐系统的网络环境。
图7是示出根据本申请示例性实施例的包含内容推荐系统的推荐网络700的示意图。
参照图7,推荐网络700可包括内容推荐系统710、用户端设备720、内容运营系统730和第三方信息源740(可选)。这里,内容运营系统730旨在向用户端设备720推荐更容易被接受的内容(例如,资讯、音乐、视频等),为此,内容运营系统730可将与多个候选推荐内容对应的多条候选内容数据记录提供给内容推荐系统710,以便内容推荐系统710利用机器学习模型来预测用户端设备720的用户接受各个候选推荐内容的概率(即,各个候选推荐内容的推荐指数)。这里,预测装置710可以是以上参照图1和图3所描述的内容推荐系统,或者可以是以上所描述的用于内容推荐的计算装置。具体说来,内容推荐系统710可由内容运营商自己构建,或者也可由专门的提供机器学习服务的实体来提供。相应地,内容推荐系统710既可设置在云端(如公有云、私有云或混合云),也可设置在内容运营商的本地系统。这里,为方便描述,假设内容推荐系统710被设置在公有云端。
用户端设备720可以是任何终端装置,例如,个人计算机、智能电话、TV等,但不限于此。此外,用户端设备720可通过安装在其上的应用等接收或访问由内容运营系统730推荐的内容,例如,展示在应用中的具体内容或推送的通知消息等。
第三方信息源740可为内容推荐系统710和/或内容运营系统730提供信息。例如,第三方信息源740可以是内容运营系统730的关联实体、业务伙伴或完全与内容运营系统730独立的第三方(例如,单纯的数据提供者),在这种情况下,内容运营系统730可基于合作协议或以付费购买的方式从第三方信息源740获取与候选推荐内容对应的其他信息(例如,将被推荐内容的用户的年龄、职业、个人偏好等),并可将获取的信息进行加工处理之后存储在例如数据仓库中。此外,第三方信息源740也可为内容推荐系统710提供利用机器学习模型执行预测所需的信息,例如,如上所述的与候选推荐内容对应的其他信息也可被直接提供给内容推荐系统710,而不是被提供给内容运营系统730。这里,第三方信息源740可以以一个单独的中央服务器的形式存在,也可以以通过网络连接的多个服务器的形式存在,还可以以大量的个人设备的形式存在,或者以云服务器的形式存在,然而,第三方信息源740的存在形式不限于此。另外,需要说明的是,推荐网络700并不必然包括第三方信息源740,例如,内容运营系统730本身可能拥有足够的信息数据。
在图7所示的推荐网络700中,在内容运营系统730期望向用户端设备720中的特定用户(例如,用户端设备1的用户)推荐内容时,内容运营系统730可从其本地服务器或云端的数据仓库获取针对该特定用户的多个候选推荐内容,并进一步获取与所述多个候选推荐内容对应的多条候选内容数据记录(如上所述,这里的候选内容数据记录可包括关于候选推荐内容的属性信息,并还可包括从第三方信息源740获取的内容属性信息),并将获取的候选内容数据记录发送给内容推荐系统710。这里,内容运营系统730可批量地获取针对多个用户的候选推荐内容数据记录,并将其批量地发送给内容推荐系统710。此外,内容运营系统730可在其所拥有的内容资源中初步筛选期望推荐给特定用户的候选推荐内容。例如,内容运营系统730可根据用户在其客户端的基本注册信息(例如,用户的性别、年龄、职业、地域等)以及用户在其客户端上的历史行为记录(例如,历史内容收藏记录、内容评论记录、内容分享记录、内容搜索记录、观看或收听内容播放的完整度等)来初步判断该特定用户可能偏好的内容类别,并从大量内容资源中初步筛选出属于该内容类别的多个内容,作为将由内容推荐系统710执行推荐指数预测的多个候选推荐内容。
随后,内容推荐系统710针对接收到的与多个候选推荐内容对应的多条候选内容数据记录,可利用机器学习模型来预测每个候选推荐内容在被推荐给该特定用户后被接受的概率,以作为每个候选推荐内容的推荐指数。之后,内容推荐系统710可将针对该特定用户的所述多个候选推荐内容的各自的推荐指数发送给内容运营系统730。内容运营系统730可基于所述多个候选推荐内容的推荐指数确定最终向该特定用户推荐哪些候选内容,并执行相应的内容推荐。可选地,内容推荐系统710可基于所述多个候选推荐内容的推荐指数确定向该用户推荐哪些候选内容,然后将确定结果发送给内容运营系统730以便于内容运营系统根据确定结果执行相应的内容推荐,或者内容推荐系统710在预先获得内容运营系统730授权的情况下也可直接基于确定结果执行向特定用户的内容推荐(在这种情况下,内容推荐系统710还需额外获取各个候选推荐内容)。在内容被推荐给该特定用户之后,内容推荐系统710可获取关于实际推荐的内容在推荐后是否被该特定用户所接受的真实反馈,例如,内容运营系统730可采集该特定用户的日志数据记录,并从日志数据记录中获得关于实际推荐的内容在推荐后是否被该特定用户所接受的真实反馈,然后将真实反馈发送给内容推荐系统710。此外,内容推荐系统710可基于获取的真实反馈来更新相应的机器学习模型(如上所述的第一机器学习模型和/或第二机器学习模型),以便于利用更新后的机器学习模型提供更准确的预测结果。这里,机器学习模型的更新可以是重新学习或训练机器学习模型,也可以是在利用当前机器学习模型的历史训练结果的基础上进行增量学习。
需要说明的是,以上参照图7描述的推荐网络700并不限于包括以上描述的组件,而是可根据需要增加或删除一些组件,并且以上组件也可被组合。此外,各组件之间的连接方式也不限于图7所示的连接方式。
以上描述了本申请的各示例性实施例,应理解,上述描述仅是示例性的,并非穷尽性的,本申请不限于所披露的各示例性实施例。在不偏离本申请的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本申请的保护范围应该以权利要求的范围为准。

Claims (30)

1.一种用于内容推荐的方法,包括:
获取分别与多个候选推荐内容对应的多条候选内容数据记录;
针对每条候选内容数据记录,通过以下处理来获得其所对应的候选推荐内容的推荐指数:获取与所述每条候选内容数据记录相应的序列特征,其中,所述序列特征在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录的属性特征执行预测的过程中被提取,其中,所述序列特征包括第一机器学习模型针对所述一系列连续内容数据记录执行预测的过程中所产生的内部状态;产生与所述每条候选内容数据记录相应的预测样本,其中,所述预测样本的特征包括所述序列特征;利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数;以及
提供所述多个候选推荐内容各自的推荐指数。
2.如权利要求1所述的方法,其中,所述多个候选推荐内容是针对特定用户而筛选出的,并且所述预测样本包括所述特定用户的特征,
其中,预测步骤包括:预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被所述特定用户接受的概率。
3.如权利要求1所述的方法,还包括:基于提供的所述多个候选推荐内容各自的推荐指数确定所述多个候选推荐内容中的哪些候选推荐内容将被推荐。
4.如权利要求1所述的方法,还包括:获取关于实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈,并基于所述真实反馈来更新第一机器学习模型和/或第二机器学习模型。
5.如权利要求1所述的方法,其中,第一机器学习模型具有循环结构,其中,所述一系列连续内容数据记录包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录,或者,所述一系列连续内容数据记录包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录连同所述每条候选内容数据记录。
6.如权利要求5所述的方法,其中,所述序列特征通过以下处理被提取:
将所述每条候选内容数据记录所涉及的一系列连续内容数据记录依次输入第一机器学习模型,并提取第一机器学习模型在所述一系列连续内容数据记录之中的最后一个内容数据记录被输入第一机器学习模型之后产生的内部状态,作为所述序列特征。
7.如权利要求5所述的方法,其中,所述在先内容数据记录与连续在推荐后被接受的在先候选推荐内容对应,其中,
第一机器学习模型被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容来预测下一连续在推荐后被接受的候选推荐内容,或者,第一机器学习模型被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容和接下来连续出现的下一候选推荐内容来预测所述下一候选推荐内容在推荐后被接受的概率。
8.如权利要求1所述的方法,其中,第一机器学习模型包括多个第一机器学习子模型,其中,每个第一机器学习子模型被事先训练为针对一系列连续内容数据记录的对应属性特征来执行预测;或者,第一机器学习模型作为单个机器学习模型,被事先训练为针对一系列连续内容数据记录的全部属性特征来执行预测。
9.如权利要求8所述的方法,其中,在所述对应属性特征或所述全部属性特征包括多个属性特征的情况下,所述多个属性特征各自的特征向量经由仿射变换而映射到统一的特征空间。
10.如权利要求8所述的方法,其中,在属性特征同时具有多个取值的情况下,所述属性特征的特征向量值通过将与所述多个取值相应的特征向量值进行最大值池化、加权平均或均值池化而得到。
11.根据权利要求8到10之中的任何一个所述的方法,其中,所述候选推荐内容涉及以下项之中的至少一项:资讯、音乐、视频、广告。
12.如权利要求5所述的方法,其中,第一机器学习模型具有循环神经网络结构。
13.如权利要求12所述的方法,其中,所述循环神经网络结构包括简单循环神经网络结构、长短期记忆网络结构和门控循环单元结构之一。
14.如权利要求1所述的方法,其中,所述方法在云端执行或者在本地执行。
15.一种用于内容推荐的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行如权利要求1至14中的任一权利要求所述的方法的计算机程序。
16.一种用于内容推荐的计算装置,包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令被所述处理器执行时,促使处理器执行如权利要求1至14中的任一权利要求所述的方法。
17.一种用于内容推荐的系统,包括:
数据记录获取装置,被配置为获取分别与多个候选推荐内容对应的多条候选内容数据记录;
推荐指数获得装置,被配置为获得所述多个候选推荐内容各自的推荐指数,其中,针对每条候选内容数据记录,推荐指数获得装置通过以下处理来获得其所对应的候选推荐内容的推荐指数:获取与所述每条候选内容数据记录相应的序列特征,其中,所述序列特征在利用第一机器学习模型针对所述每条候选内容数据记录所涉及的一系列连续内容数据记录的属性特征执行预测的过程中被提取,其中,所述序列特征包括第一机器学习模型针对所述一系列连续内容数据记录执行预测的过程中所产生的内部状态;产生与所述每条候选内容数据记录相应的预测样本,其中,所述预测样本的特征包括所述序列特征;利用第二机器学习模型,针对所述预测样本来预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被接受的概率,以作为所述候选推荐内容的推荐指数;
推荐指数提供装置,被配置为提供所述多个候选推荐内容各自的推荐指数。
18.如权利要求17所述的系统,其中,所述多个候选推荐内容是针对特定用户而筛选出的,并且所述预测样本包括所述特定用户的特征,
其中,推荐指数获得装置在预测处理中预测所述每条候选内容数据记录所对应的候选推荐内容在推荐后被所述特定用户接受的概率。
19.如权利要求17所述的系统,还包括:推荐内容确定装置,被配置为基于提供的所述多个候选推荐内容各自的推荐指数确定所述多个候选推荐内容中的哪些候选推荐内容将被推荐。
20.如权利要求17所述的系统,还包括:机器学习模型更新装置,被配置为获取关于实际推荐的候选推荐内容在被推荐之后是否被接受的真实反馈,并基于所述真实反馈来更新第一机器学习模型和/或第二机器学习模型。
21.如权利要求17所述的系统,其中,第一机器学习模型具有循环结构,其中,所述一系列连续内容数据记录包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录,或者,所述一系列连续内容数据记录包括在所述每条候选内容数据记录之前连续出现的在先内容数据记录连同所述每条候选内容数据记录。
22.如权利要求21所述的系统,其中,所述序列特征通过以下处理被提取:将所述每条候选内容数据记录所涉及的一系列连续内容数据记录依次输入第一机器学习模型,并提取第一机器学习模型在所述一系列连续内容数据记录之中的最后一个内容数据记录被输入第一机器学习模型之后产生的内部状态,作为所述序列特征。
23.如权利要求21所述的系统,其中,所述在先内容数据记录与连续在推荐后被接受的在先候选推荐内容对应,其中,
第一机器学习模型被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容来预测下一连续在推荐后被接受的候选推荐内容,或者,第一机器学习模型被事先训练为针对一系列连续在推荐后被接受的在先候选推荐内容和接下来连续出现的下一候选推荐内容来预测所述下一候选推荐内容在推荐后被接受的概率。
24.如权利要求17所述的系统,其中,第一机器学习模型包括多个第一机器学习子模型,其中,每个第一机器学习子模型被事先训练为针对一系列连续内容数据记录的对应属性特征来执行预测;或者,第一机器学习模型作为单个机器学习模型,被事先训练为针对一系列连续内容数据记录的全部属性特征来执行预测。
25.如权利要求24所述的系统,其中,在所述对应属性特征或所述全部属性特征包括多个属性特征的情况下,所述多个属性特征各自的特征向量经由仿射变换而映射到统一的特征空间。
26.如权利要求24所述的系统,其中,在属性特征同时具有多个取值的情况下,所述属性特征的特征向量值通过将与所述多个取值相应的特征向量值进行最大值池化、加权平均或均值池化而得到。
27.如权利要求24到26之中的任何一个所述的系统,其中,所述候选推荐内容涉及以下项之中的至少一项:资讯、音乐、视频、广告。
28.如权利要求21所述的系统,其中,第一机器学习模型具有循环神经网络结构。
29.如权利要求28所述的系统,其中,所述循环神经网络结构包括简单循环神经网络结构、长短期记忆网络结构和门控循环单元结构之一。
30.如权利要求17所述的系统,其中,所述系统部署在云端或者部署在本地。
CN201810397319.0A 2018-04-28 2018-04-28 用于内容推荐的方法及系统 Active CN110413867B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810397319.0A CN110413867B (zh) 2018-04-28 2018-04-28 用于内容推荐的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810397319.0A CN110413867B (zh) 2018-04-28 2018-04-28 用于内容推荐的方法及系统

Publications (2)

Publication Number Publication Date
CN110413867A CN110413867A (zh) 2019-11-05
CN110413867B true CN110413867B (zh) 2022-11-08

Family

ID=68347014

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810397319.0A Active CN110413867B (zh) 2018-04-28 2018-04-28 用于内容推荐的方法及系统

Country Status (1)

Country Link
CN (1) CN110413867B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026971B (zh) * 2019-12-25 2023-05-02 腾讯科技(深圳)有限公司 内容的推送方法及装置、计算机存储介质
CN113573106B (zh) * 2020-04-28 2023-03-21 北京达佳互联信息技术有限公司 用于多媒体信息的模型更新方法、装置及服务器
CN112364238B (zh) * 2020-10-12 2023-04-07 山东大学 一种基于深度学习的用户兴趣点推荐方法与系统
CN113032676B (zh) * 2021-03-31 2022-11-08 上海天旦网络科技发展有限公司 基于微反馈的推荐方法和系统
CN115047797A (zh) * 2022-05-27 2022-09-13 青岛海尔科技有限公司 结合行为偏好的设备操作方法及装置、存储介质
CN115238194A (zh) * 2022-08-24 2022-10-25 掌阅科技股份有限公司 书籍推荐方法、计算设备及计算机存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107911719A (zh) * 2017-10-30 2018-04-13 中国科学院自动化研究所 视频动态推荐装置
CN107947921A (zh) * 2017-11-22 2018-04-20 上海交通大学 基于递归神经网络和概率上下文无关文法的密码生成系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589319B2 (en) * 2010-12-02 2013-11-19 At&T Intellectual Property I, L.P. Adaptive pairwise preferences in recommenders
CN105869024A (zh) * 2016-04-20 2016-08-17 北京小米移动软件有限公司 商品的推荐方法及装置
CN106326413A (zh) * 2016-08-23 2017-01-11 达而观信息科技(上海)有限公司 一种个性化视频推荐系统及方法
CN106407381B (zh) * 2016-09-13 2019-10-25 北京百度网讯科技有限公司 一种基于人工智能的推送信息的方法和装置
CN106447463A (zh) * 2016-10-21 2017-02-22 南京大学 一种基于马尔科夫决策过程模型的商品推荐方法
CN107169574A (zh) * 2017-05-05 2017-09-15 第四范式(北京)技术有限公司 利用嵌套机器学习模型来执行预测的方法及系统
CN107621891A (zh) * 2017-09-28 2018-01-23 北京新美互通科技有限公司 一种文本输入方法、装置及电子设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107911719A (zh) * 2017-10-30 2018-04-13 中国科学院自动化研究所 视频动态推荐装置
CN107947921A (zh) * 2017-11-22 2018-04-20 上海交通大学 基于递归神经网络和概率上下文无关文法的密码生成系统

Also Published As

Publication number Publication date
CN110413867A (zh) 2019-11-05

Similar Documents

Publication Publication Date Title
CN110413867B (zh) 用于内容推荐的方法及系统
CN110321422B (zh) 在线训练模型的方法、推送方法、装置以及设备
CN109919316B (zh) 获取网络表示学习向量的方法、装置和设备及存储介质
CN108763502B (zh) 信息推荐方法和系统
US10277696B2 (en) Method and system for processing data used by creative users to create media content
CN110909182B (zh) 多媒体资源搜索方法、装置、计算机设备及存储介质
US10949000B2 (en) Sticker recommendation method and apparatus
CN109688479B (zh) 一种弹幕显示方法、弹幕显示装置和弹幕显示服务器
CN109471978B (zh) 一种电子资源推荐方法及装置
CN110543598A (zh) 信息推荐方法、装置及终端
CN112989169B (zh) 目标对象识别方法、信息推荐方法、装置、设备及介质
CN112104505B (zh) 应用推荐方法、装置、服务器和计算机可读存储介质
CN114265981A (zh) 推荐词确定方法、装置、设备及存储介质
CN112182460B (zh) 资源的推送方法和装置、存储介质及电子装置
CN112287799A (zh) 基于人工智能的视频处理方法、装置及电子设备
CN113836388A (zh) 信息推荐方法、装置、服务器及存储介质
CN114491093B (zh) 多媒体资源推荐、对象表征网络的生成方法及装置
CN112269942B (zh) 一种推荐对象的方法、装置、系统及电子设备
CN115795156A (zh) 物料召回和神经网络训练方法、装置、设备及存储介质
CN114357242A (zh) 基于召回模型的训练评估方法及装置、设备、存储介质
CN114528474A (zh) 推荐对象确定方法、装置、电子设备及存储介质
CN109299351B (zh) 内容推荐方法和装置、电子设备及计算机可读介质
CN114554253B (zh) 一种资源推荐方法、装置、电子设备和存储介质
CN115203577B (zh) 对象推荐方法、对象推荐模型的训练方法及装置
CN111079006B (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