发明内容
本公开要解决的一个技术问题是提供一种能够提高信息推荐的精准度的信息推荐方案。
根据本公开的第一个方面,提供了一种信息推荐方法,包括:获取用户针对终端执行的操作信息;基于操作信息,使用预先训练好的识别模型对用户进行识别,以识别出用户所属的类别;以及向用户推荐与其所属的类别相匹配的信息。
优选地,获取用户针对终端执行的操作信息的步骤可以包括:获取用户在单元操作轮次中针对终端执行的操作信息
优选地,单元操作轮次包括针对终端执行的操作间隔低于第一预定时间间隔的操作,或者单元操作轮次包括第二预定时间间隔内针对终端执行的所有操作。
优选地,该信息推荐方法还可以包括:生成针对至少一种类别的信息推荐集合,其中,向用户推荐与其所属的类别相匹配的信息的步骤可以包括:从与用户所属的类别对应的信息推荐集合中选取用户之前未浏览的信息进行推荐。
优选地,生成针对至少一种类别的信息推荐集合的步骤可以包括:根据属于同一类别的多个用户的第一历史行为数据,计算第一历史行为数据涉及的信息集合中不同信息之间的相似度;基于用户的第二历史行为数据,确定用户的信息偏好集合;基于信息偏好集合和不同信息之间的相似度,计算用户对其所属的类别所对应的第一信息集合中各个信息的兴趣度;将兴趣度高于第一预定阈值的信息作为用户的信息推荐集合。
优选地,两个信息之间的相似度与所述多个用户中同时浏览了这两个信息的用户的个数正相关,并且分别与所述多个用户中浏览所述两个信息中一个信息的用户的个数以及所述多个用户中浏览所述两个信息中另一个信息的用户的个数负相关。
优选地,计算用户对其所属的类别所对应的第一信息集合中不同信息的兴趣度的步骤包括:对于第一信息集合中的第一信息,从第一信息集合中选取与第一信息的相似度超过第二预定阈值的第二信息,以得到第二信息集合;将用户对信息偏好集合和第二信息集合的交集中各个第二信息的子兴趣度的总和,作为用户对第一信息的兴趣度,其中,子兴趣度分别与用户对第二信息的偏好度以及第一信息与第二信息之间的相似度正相关。
优选地,生成针对至少一种类别的信息推荐集合的步骤可以包括:根据属于同一类别的一个或多个用户的历史行为数据和/或人口统计学特征,确定类别的兴趣偏好标签;针对类别生成与兴趣偏好标签相匹配的信息推荐集合。
优选地,生成针对至少一种类别的信息推荐集合的步骤可以包括:将统计得到的属于同一类别的一个或多个用户的历史浏览信息,作为信息推荐集合。
优选地,操作信息可以包括以下一项或多项:用户针对终端执行的操作行为;用户执行操作时传感器采集的数据;以及用户执行操作过程中发出的语音数据。
根据本公开的第二个方面,还提供了一种识别模型训练方法,包括:基于用户针对终端执行的操作信息,获取训练样本;使用一个或多个训练样本训练识别模型,其中识别模型用于根据终端的操作信息,识别终端的用户所属的类别。
优选地,操作信息是用户在单元操作轮次中针对终端做出的。
优选地,单元操作轮次包括针对终端执行的操作间隔低于第一预定时间间隔的操作,或者单元操作轮次包括第二预定时间间隔内针对终端执行的所有操作。
优选地,获取训练样本的步骤可以包括:从操作信息中提取一个或多个操作特征,以得到包含操作特征的训练样本。
优选地,操作信息包括以下一项或多项:用户针对终端执行的操作行为、用户执行操作时传感器采集的数据、用户执行操作过程中发出的语音数据,并且/或者,操作特征包括以下一项或多项:行为偏好特征、时间偏好特征、声音特征、按键特征。
优选地,终端为智能电视,或者安装在智能电视上的客户端应用,并且类别为根据影视喜好类型划分的。
根据本公开的第三个方面,还提供了一种信息推荐方法,包括:使用本公开的第二个方面述及的识别模型训练方法训练识别模型;使用训练好的识别模型对终端的用户进行识别,以识别出用户所属的类别;以及向用户推荐与其所属的类别相匹配的信息。
根据本公开的第四个方面,还提供了一种信息推荐装置,包括:操作信息获取装置,用于获取用户针对终端执行的操作信息;第二识别装置,用于基于操作信息,使用预先训练好的识别模型对用户进行识别;以及第二信息推荐装置,用于向用户推荐与其所属的类别相匹配的信息。
优选地,操作信息获取装置获取用户在单元操作轮次中针对终端执行的操作信息。
优选地,单元操作轮次包括针对终端执行的操作间隔低于第一预定时间间隔的操作,或者单元操作轮次包括第二预定时间间隔内针对终端执行的所有操作。
优选地,信息推荐装置还可以包括:信息推荐集合生成装置,用于生成针对至少一种类别的信息推荐集合,其中,第二信息推荐装置用于从与用户所属的类别对应的信息推荐集合中选取用户之前未浏览的信息进行推荐。
优选地,信息推荐集合生成装置可以包括:相似度计算模块,用于根据属于同一类别的多个用户的第一历史行为数据,计算第一历史行为数据涉及的第一信息集合中不同信息之间的相似度;信息偏好集合生成模块,用于基于用户的第二历史行为数据,确定用户的信息偏好集合;兴趣度计算模块,用于基于信息偏好集合和不同信息之间的相似度,计算用户对其所属的类别对应的第一信息集合中各个信息的兴趣度;信息推荐集合生成模块,用于将兴趣度高于第一预定阈值的信息作为用户的信息推荐集合。
优选地,两个信息之间的相似度与所述多个用户中同时浏览了这两个信息的用户的个数正相关,分别与所述多个用户中浏览所述两个信息中一个信息的用户的个数以及所述多个用户中浏览所述两个信息中另一个信息的用户的个数负相关。
优选地,所述兴趣度计算模块包括:第二信息集合确定模块,用于对于所述第一信息集合中的第一信息,从所述第一信息集合中选取与所述第一信息的相似度超过第二预定阈值的第二信息,以得到第二信息集合;兴趣度确定模块,用于将所述用户对所述信息偏好集合和所述第二信息集合的交集中各个第二信息的子兴趣度的总和,作为所述用户对所述第一信息的兴趣度,其中,所述子兴趣度分别与所述用户对所述第二信息的偏好度以及所述第一信息与所述第二信息之间的相似度正相关。
优选地,信息推荐集合生成装置用于根据属于同一类别的一个或多个用户的历史行为数据和/或人口统计学特征,确定至少一种类别的兴趣偏好标签,并针对类别生成与兴趣偏好标签相匹配的信息推荐集合。
优选地,信息推荐集合生成装置用于将统计得到的属于同一类别的一个或多个用户的历史浏览信息,作为信息推荐集合。
优选地,操作信息包括以下一项或多项:用户针对所述终端执行的操作行为;用户执行操作时传感器采集的数据;以及用户执行操作过程中发出的语音数据。
根据本公开的第五个方面,还提供了一种识别模型训练装置,包括:训练样本获取装置,用于基于用户针对终端执行的操作信息,获取训练样本;第一模型训练装置,用于使用一个或多个训练样本训练识别模型,其中识别模型用于根据终端的操作信息,识别终端的用户所属的类别。
优选地,训练样本获取装置基于用户在单元操作轮次中针对终端执行的操作信息,获取训练样本。
优选地,单元操作轮次包括针对终端执行的操作间隔低于第一预定时间间隔的操作,或者单元操作轮次包括第二预定时间间隔内针对终端执行的所有操作。
优选地,训练样本获取装置从操作信息中提取一个或多个操作特征,以得到包含操作特征的训练样本。
优选地,操作信息包括以下一项或多项:用户针对终端执行的操作行为、用户执行操作时传感器采集的数据、用户执行操作过程中发出的语音数据,并且/或者,操作特征包括以下一项或多项:行为偏好特征、时间偏好特征、声音特征、按键特征。
优选地,终端为智能电视,或者安装在智能电视上的客户端应用,并且类别为根据影视喜好类型划分的。
根据本公开的第六个方面,还提供了一种信息推荐装置,包括:第二模型训练装置,用于使用根据本公开的第二个方面述及的识别模型训练方法训练识别模型;第一识别装置,用于使用预先训练好的识别模型对终端的用户进行识别,以识别出用户所属的类别;以及第一信息推荐装置,用于向用户推荐与其所属的类别相匹配的信息。
根据本公开的第七个方面,还提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行本公开的第一个方面、第二个方面以及第三个方面中任何一方面述及的方法。
根据本公开的第八个方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被终端的处理器执行时,使处理器执行本公开的第一个方面、第二个方面以及第三个方面中任何一方面述及的方法。
利用本公开的识别模型训练方案训练出的识别模型,能够基于终端的操作信息对终端用户进行识别,从而可以根据识别结果向用户推荐与其所属类别相匹配的信息,进而可以提高信息推荐的精准度,提升用户体验。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
【概述】
考虑到终端的使用对象可能不限于某一固定用户,本公开提出,在为用户推荐信息时,可以对终端的用户(即终端的使用对象)进行识别,识别出用户所属的类别,以便根据识别结果向其推荐与其所属的类别相匹配的信息。与现有的推荐方案相比,可以减少推荐失准的情况发生,提高信息推荐的精准度。
本公开述及的“类别”并非特指用户在现实世界中的角色、身份,而可以是对用户的行为偏好进行概括的虚拟类别。因此,本公开述及的对终端的用户进行识别,并不是识别出用户在现实世界中的具体身份,而是识别出用户在行为偏好上所属的类别。
以终端为智能电视机为例,智能电视机面向的使用对象可能是家庭内的所有成员,如可能是外公外婆、爷爷奶奶、幼童这三个群体,而这三个群体在电视上的行为分布可能只有两个类别,一个类别更倾向于观看“家庭伦理剧”,另一个类别更倾向于观看“少儿动画片”。这种情况下,对电视机的用户进行识别,不是识别出用户是孩童,还是爷爷奶奶,亦或外公外婆,而是识别出用户是属于更倾向于观看“家庭伦理剧”的类别A,还是属于更倾向于观看“少儿动画片”的类别B。
为了能够对终端当前的使用对象(即用户)进行精准识别,本公开进一步提出了一种模型训练方案,利用本公开的模型训练方案训练得到的识别模型能够根据用户针对终端执行的操作信息,识别用户所属的类别。
由此,在为终端的使用对象(即用户)推荐信息时,可以利用预先训练好的识别模型对终端的用户进行识别(可以是实时识别,即对终端的当前用户进行识别),根据识别结果,可以向用户推荐与其所属的类别相匹配的信息。从而提高了个性化推荐的准确率,提升了用户体验。并且,在识别过程中并不需要用户做任何额外操作,例如不需要用户登录账号,根据用户实时执行的操作信息,即可自动实现对用户的识别。
需要说明的是,本公开述及的终端可以是指智能手机、IPAD、计算机、智能电视机、电视机顶盒、智能音箱等多种能够通过人机交互的方式向用户提供个性化信息服务的电子设备。也可以是指安装这这类电子设备中的客户端应用,例如可以是安装在智能电视机中的腾讯视频、爱奇艺视频等视频应用。
也就是说,本公开的方案可以作为此类电子设备的系统级应用,嵌入在此类电子设备中,以为用户提供较为精准的信息推荐服务。也可以适用于安装在这类电子设备中的用于为用户提供信息服务的第三方应用,以使得第三方应用所推荐的信息更加精准。
下面对本公开的技术方案所涉及的各个方面分别进行描述。
【模型训练】
图1是示出了根据本公开一实施例的识别模型训练方法的示意性流程图。
参见图1,在步骤S110,基于用户在单元操作轮次中针对终端执行的操作信息,获取训练样本。
本公开述及的“单元操作轮次”与互联网技术中的“session”的概念类似。session可以视为为特定用户创建的标识,用于标识这个用户,并且跟踪用户在本次访问中的行为记录。在本公开中,单元操作轮次可以视为为单个用户创建的标识,可以标识单个用户,即单元操作轮次中的操作信息可以视为单个用户(或者说同一用户)做出的。
在本公开中,单元操作轮次可以表示针对终端执行的单次连续操作。其中,单次连续操作可以是指终端从启动到关闭用户针对终端执行的操作,也可以是指操作间隔低于预定阈值的一系列操作,还可以是指固定时间段内针对终端执行的所有操作。
也就是说,可以将针对终端执行的操作间隔低于预定时间间隔(为了便于区分,此处称为第一预定时间间隔)的一系列“连续”操作视为单元操作轮次。也可以将在预定时间间隔(为了便于区分,此处称为第二预定时间间隔)内针对终端执行的所有操作视为单元操作轮次。
第一预定时间间隔和第二预定时间间隔的具体数值可以根据实际情况或者经验设定。例如,以智能电视机为例,针对电视机执行的操作间隔低于一分钟或数分钟的一系列操作一般是由同一用户做出的,因此可以将第一预定时间间隔设为5min,针对终端执行的操作间隔低于5min的一系列操作可以视为单元操作轮次。再例如,仍以智能电视机为例,单个用户的单次观影时长一般大于45min,因此也可以将第二预定时间间隔设为 30min,在30min内针对电视机执行的所有操作可以视为单元操作轮次。
本公开述及的操作信息可以包括但不限于一项或多项:用户针对终端提供的信息执行的具体操作行为(例如点击、播放、收藏、转发、分享、删除等)、用户执行操作时传感器(如按键传感器、触控板传感器、遥控杆传感器等)采集的数据、用户执行操作时触摸屏采集的数据、用户执行操作时发出的语音数据等等。
作为本公开的一个示例,可以从终端的日志文件中获取用户针对终端执行的操作信息。并且,在从日志文件获取操作信息的过程中,还可以对日志文件进行清洗,过滤掉其中的异常操作或因服务器异常导致的无效日志等等。
由于单元操作轮次中针对终端执行的操作信息可以视为同一用户做出的,因此可以基于单个单元操作轮次中针对终端执行的操作信息,获取单个训练样本。也就是说,可以以单元操作轮次为粒度获取训练样本,如此可以使得所获取的单个训练样本可以大概率地对应于一个用户,从而使得基于训练样本最终训练得到的识别模型也能够以单元操作轮次中的操作信息为识别粒度,对单元操作轮次对应的用户所属的类别进行识别。
并且为了便于类别的识别,在基于单元操作轮次中的操作信息生成训练样本时,可以以单元操作轮次为粒度,对单元操作轮次中的操作信息进行特征抽取,以得到一个或多个特征维度下的操作特征,由此可以减少类别识别过程的噪音,提高类别识别的鲁棒性。
作为示例,针对单元操作轮次中的操作信息,可以从以下一个或多个特征维度进行特征抽取。
(1)行为偏好特征
单元操作轮次中用户通过终端浏览的信息一般对应于一个或多个分类标签,根据这些标签信息,可以通过回归模型或综合打分的方法,对用户针对终端展示的信息执行的点击、播放、收藏、转发、分享等行为数据进行分类汇总,得到用户的行为偏好标签及分值。可以从中选取分值较高的行为偏好标签作为该单元操作中的操作信息的行为偏好特征。
(2)时间偏好特征
可以将一天按照小时粒度划分为清晨、早上、中午、下午、傍晚、晚上、深夜等若干时间段。根据单元操作轮次对应的时间,可以抽取得到相应的时间偏好特征。
作为本公开的一个示例,也可以通过统计模型的方法为对单元操作轮次中的操作信息对应的操作时间进行打分,以得到时间偏好特征。
(3)声音特征
针对单元操作轮次中采集的用户发出的语音数据,可以对语音数据中的声音特征信息进行提取,以得到声音特征。其中,提取的声音特征可以是音调特征、音量特征、声纹特征中的一种或多种。以声纹特征为例,可以采取声纹识别技术对用户的语音特征信息进行提取,以得到声纹特征。如本领域技术人员所公知,也可以通过其它声音处理技术获取声音数据中的音调特征、音量特征等语音特征,此处不再赘述。
(4)按键/手势特征
针对单元操作轮次中用户执行操作时按键传感器采集的数据,可以按照先验知识对用户的按键习惯进行归类提取,以得到按键特征。例如,老年人操作遥控器按键比较迟缓无力,年轻人则操作更快(操作间的间隔较短),按键力度也更大。因此可以通过分析按键传感器采集的数据,得到能够反映按键力度和/或按键速度的按键特征。
另外,在用户通过触摸屏针对终端执行操作时,针对单元操作轮次中用户执行操作时触摸屏采集的数据,也可以使用类似的方法获取手势特征。例如,老年人通过触摸屏执行操作的手势操作可能较为迟缓、无力,年轻人的手势操作则较为敏捷,因此可以通过分析触摸屏采集的数据,得到能够反映手势操作的灵敏性的手势特征。
在步骤S120,使用一个或多个训练样本训练识别模型。
由于训练样本是基于单元操作轮次中用户针对终端执行的操作信息得到的,能够在一定程度上反映单个用户的行为偏好。因此利用多个训练样本训练得到的识别模型能够根据终端在当前的单元操作轮次中的操作信息,识别用户所属的类别。
关于类别可以参见上文相关说明。需要注意的是,在利用训练样本训练识别模型时,训练样本可以是带标记(label,即类别)的训练样本,也可以是无标记的训练样本,还可以是部分带标记部分无标记的训练样本。即可以标明训练样本所属的类别,采用有监督学习的方式进行训练。也可以不标出训练样本所属的类别,采用无监督学习方式进行训练。还可以同时使用未标记训练样本和带标记的训练样本,采用半监督学习方式进行训练。
因此,在利用训练好的识别模型基于用户在单元操作轮次中针对终端执行的操作信息对用户进行识别时,可以识别出用户具体所属类别的类别名称,也可以不识别出具体类别名称,而是类似分类的方式,识别出用户所属的类别。
例如,图2所示,以终端为智能电视机或者安装在智能电视上的客户端应用为例,最终训练得到的识别模型可能仅用于识别两种类别,类别1 和类别2。并且类别1和类别2可以是利用聚类的方式,通过对多个训练样本中的样本特征划分得到的,例如可以是根据影视喜好类型划分的。
关于无监督学习、有监督学习和半监督学习的具体训练原理为本领域技术人员所公知,下面简要描述下无监督学习、有监督学习和半监督学习在本公开中的应用。
1.无监督学习
如本领域技术人员所公知,无监督学习在学习时并不知道其分类结果,也没有受到监督式增强(告诉它何种学习是正确的),它可以自动从样本数据中找出潜在的类别规则。
在本公开中,可以通过聚类的方法,根据训练样本中的样本特征,将多个训练样本划分到相应的类别中。另外,也可以通过图聚类的方法,根据训练样本对应的单元操作轮次中的操作行为(如点击、播放、收藏等),对训练样本进行划分。
2.有监督学习
如本领域技术人员所公知,有监督学习可以由训练资料中学到或建立一个模式(函数/learning model),并依此模式推测新的实例。
在本公开中,可以通过产品的形式,让用户自行填写信息,以得到带标注(label)的样本。另外,也可以对不同单元操作轮次中的操作信息进行人工标注,以得到带标记的训练样本。在本公开中,训练样本的标记为类别,为训练样本进行标注,即为训练样本标注其所属的类别。
3.半监督学习
如本领域技术人员所公知,是监督学习与无监督学习相结合的一种学习方法。半监督学习可以使用大量的未标记训练样本,以及同时使用带标记的训练样本,训练模型。
模型的具体训练过程不再赘述。需要再次强调的是,本公开训练得到的识别模型不是对终端的用户在现实世界中的具体身份进行识别,而是基于用户在单元操作轮次内针对终端执行的操作信息,识别出用户在行为偏好上所属的类别,由此可以向用户推荐与其所属的类别相匹配的信息,从而可以提高推荐的精准度,提升用户体验。
【信息推荐】
图3是示出了根据本公开一实施例的信息推荐方法的示意性流程图。
参见图3,在步骤S310,获取用户在单元操作轮次中针对终端执行的操作信息。
关于单元操作轮次、终端、操作信息的解释可以参见上文相关描述,此处不再赘述。
需要说明的是,可以获取用户在单元操作轮次中针对终端执行的所有操作信息,也可以获取其中部分操作信息。并且此处述及的用户可以优选地是指终端的当前使用对象,即当前用户。
在步骤S320,基于操作信息,使用预先训练好的识别模型对用户进行识别,以识别出用户所属的类别。
此处述及的识别模型可以是利用上文述及的训练方法训练得到的。
在步骤S330,向用户推荐与其所属的类别相匹配的信息。
由此,本公开通过采集终端当前的操作数据,利用机器学习技术预先训练好的识别模型,可以对终端用户所属的类别进行实时判断。根据判断结果,可以向用户推荐与其所属的类别相匹配的个性化信息。如此,一方面,向用户推荐的信息考虑了用户所属的类别,避免了推荐不准的情况发生,提高了个性化推荐的准确率。另一方面,达成这一效果利用的都是用户已有的行为信息,不需要用户额外的设置和输入(例如登录账号),在不影响用户的正常操作的前提下,可以提升用户体验。
需要说明的是,本公开的信息推荐方法可以响应于用户针对终端上执行的操作信息而触发。例如,响应于用户针对终端执行的操作信息,可以利用本公开的信息推荐方法识别当前用户的类别,向当前用户推荐与其所属的类别相匹配的信息;并且响应于终端的再次被执行的操作信息,可以再次利用本公开的信息推荐方法对当前用户进行识别,如此通过实时识别,可以提高推荐的精准度。另外,在基于本公开的信息推荐方案识别用户的类型后,也可以在终端下次被启用时,基于上次识别结果,进行信息推荐。
【信息推荐集合】
针对至少一种类别,例如针对每种类别,还可以通过多种方式生成相应的信息推荐集合,以便在为终端的用户推荐信息时,可以根据识别结果,从相应的信息推荐集合中选取合适的信息进行推荐。
方式一
图4是示出了根据本公开一实施例的生成信息推荐集合的方法的示意性流程图。
参见图4,在步骤S410,根据属于同一类别的多个用户的第一历史行为数据,计算第一历史行为数据涉及的信息集合(为了便于区分,可以称为“第一信息集合”)中不同信息之间的相似度。
第一历史行为数据可以在识别模型训练阶段获取,也可以在利用训练好的识别模型对终端的用户进行在线识别的过程中获取。也就是说,可以将识别模型训练过程中属于同一类别的多个训练样本所对应的历史行为数据作为该类别的第一历史行为数据,也可以在对终端的用户进行在线识别的过程中,将识别为同一类别的多个用户的历史行为数据作为第一历史行为数据。
本公开述及的历史行为数据包括但不限于用户的信息浏览记录、浏览信息时执行的点击、删除、收藏等操作。
可以通过多种方式计算第一信息集合中不同信息(可以是部分信息,也可以是任意两个信息)之间的相似度,例如可以根据信息在文本含义层面或者信息所属的类别层面的相关性确定相似度,如可以将文本含义相近或所属的类别相近的信息视为强相关,反之为弱相关。
作为本公开的一个示例,第一信息集合中任意两个信息之间的相似度可以与所述多个用户中同时浏览了这两个信息的用户的个数正相关,并且分别与所述多个用户中浏览这两个信息中其中一个信息的用户的个数以及所述多个用户中浏览这两个信息中另一个信息的用户的个数负相关。
例如,可以通过如下方式计算不同信息之间的相似度,
其中,wij表示信息i和信息j之间的相似度,N(i)表示所述多个用户中浏览信息i的第一用户集合,N(j)表示所述多个用户中浏览信息j的第二用户集合,|N(i)∩N(j)|表示第一用户集合和第二用户集合中共同浏览信息i和信息j的用户数,|N(i)|表示第一用户集合中的用户数,|N(j)|表示第二用户集合中的用户数。
在步骤S420,基于用户的第二历史行为数据,确定用户的信息偏好集合。
此处述及的用户是指待向其推荐信息的用户,可以直接将用户浏览的频次较高的信息作为用户的信息偏好集合,也可以通过统计的方法计算用户的第二历史行为数据涉及的信息集合中各信息的偏好度,可以将偏好度排名靠前的预定数量的信息作为用户的信息偏好集合。当然还可以通过其它方式生成用户的信息偏好集合,此处不再赘述。
作为示例,可以通过如下方式计算用户对信息的偏好度r,
其中,T为用户针对信息的所有行为类型,t为不同的行为类型,qt为行为类型t下的行为次数,Wt为行为类型t对应的行为权重。其中,行为类型和行为次数均可以从用户的历史行为数据中获取。不同行为类型的行为权重可以预先通过赋值确定。
在步骤S430,基于信息偏好集合和不同信息之间的相似度,计算用户对其所属的类别对应的第一信息集合中其它信息的兴趣度。
作为示例,对于第一信息集合中的第一信息(可以是每个第一信息),可以从第一信息集合中选取与第一信息的相似度超过第二预定阈值的第二信息,以得到第二信息集合。可以将用户对信息偏好集合和第二信息集合的交集中各个第二信息的子兴趣度的总和,作为用户对所述第一信息的兴趣度,其中,子兴趣度分别与用户对第二信息的偏好度以及第一信息与第二信息之间的相似度正相关。
例如,可以使用如下方式计算用户对其它信息的兴趣度,
其中,Puj表示用户u对信息j的兴趣度,N(u)表示用户u的信息偏好集合,S(j,K)表示与信息j的相似度超过第二预定阈值的K个信息的集合, wij表示信息i和信息j之间的相似度,rui表示用户u对信息i的偏好度。其中,偏好度rui可以按照上述偏好度的计算公式计算得到。
在步骤S440,将兴趣度高于第一预定阈值的信息作为用户的信息推荐集合,或者也可以将兴趣度排名靠前的若干信息作为用户的信息推荐集合。
方式二
可以根据属于同一类别的用户的历史浏览记录和/或人口统计学特征,确定类别的兴趣偏好标签,如此针对至少一种类别(例如每种类别)可以生成与兴趣偏好标签相匹配的信息推荐集合。
具体来说,用户浏览的信息一般具有一个或多个标签,因此可以根据属于同一类别的一个或多个用户的历史浏览记录,确定类别的兴趣偏好标签。另外,也可以通过属于同一类别的一个或多个用户的语音输入、按键等信息推断出属于同一类别的用户的人口统计学特征(如性别、年龄段),而不同的人口统计学特征本身具有一定的兴趣偏好标签,因此可以根据属于同一类别的用户的历史浏览记录和/或人口统计学特征,确定类别的兴趣偏好标签,从而针对特定类别可以生成与其兴趣偏好标签相匹配的信息推荐集合。
方式三
可以基于统计规则,将统计得到的属于同一类别的用户的历史浏览信息,直接作为信息推荐集合。
需要说明的是,本公开述及的属于同一类别的用户,也可以是在模型训练过程中获取的,也可以是在后续利用训练好的识别模型对终端的用户进行识别的过程中获取的。
至此,上文中已经参考图1至4详细描述了本公开的识别模型训练方法和信息推荐方法。下面参考图5至图7描述本公开的识别模型训练装置和信息推荐装置。
【识别模型训练装置】
图5是示出了本公开的识别模型训练装置的结构的示意性框图。其中,有关内容的细节与上文中参考图1、图2的描述相同,在此不再赘述。
如图5所示,识别模型训练装置500可以包括训练样本获取装置510 和第一模型训练装置520。
训练样本获取装置510可以基于用户针对终端执行的操作信息,获取训练样本。优选地,可以基于用户在单元操作轮次中针对终端执行的操作信息,获取训练样本。其中,训练样本获取装置510可以从操作信息中提取一个或多个操作特征,以得到包含操作特征的训练样本。
第一模型训练装置520用于使用一个或多个训练样本训练识别模型,其中识别模型用于根据终端的操作信息,识别终端的用户所属的类别。
训练样本可以是带标记(即类别)的训练样本,也可以是无标记的训练样本。其中,标记可以由用户标注,也可以人工标注。由此,第一 模型训练装置520在训练识别模型时,可以采用无监督学习方式进行训练,也可以采用有监督方式进行训练,还可以采用半监督方式进行训练。
关于单元操作轮次、操作信息、操作特征以及训练过程可以参见上文相关说明,此处不再赘述。
作为示例,终端可以为智能电视,或者安装在智能电视上的客户端应用,类别可以是根据影视喜好类型划分的,例如可以划分为倾向观看“家庭伦理剧”的类别A和倾向观看“少儿动画片”的类别B。
【信息推荐装置】
图6是示出了本公开的信息推荐装置的结构的示意性框图。其中,有关内容的细节与上文中参考图3、图4的描述相同,在此不再赘述。
如图6所示,信息推荐装置600可以包括第二模型训练装置610、第一识别装置620以及第一信息推荐装置630。
第二模型训练装置610用于可以使用本公开述及的识别模型训练方法训练识别模型。
第一识别装置620可以使用预先训练好的识别模型对终端的用户进行识别,以识别出用户所属的类别。
第一信息推荐装置630可以向用户推荐与其所属的类别相匹配的信息。
信息推荐过程可以参见上文图3、图4的相关描述,此处不再赘述。
图7是示出了本公开另一实施例的信息推荐装置的结构的示意性框图。
如图7所示,信息推荐装置700可以包括操作信息获取装置710、第二识别装置720以及第二信息推荐装置730。
操作信息获取装置710用于获取用户针对终端执行的操作信息。例如可以以单元操作轮次为粒度,获取用户在单元操作轮次中针对终端执行的操作信息。
第二识别装置720用于基于操作信息,使用预先训练好的识别模型对用户进行识别。
第二信息推荐装置730用于向用户推荐与其所属的类别相匹配的信息。
如图7所示,信息推荐装置700还可以可选地包括图中虚线框所示的信息推荐集合生成装置740。
信息推荐集合生成装置740可以用于生成针对至少一种(例如每种) 类别的信息推荐集合。第二信息推荐装置730可以从与用户所属的类别对应的信息推荐集合中选取用户之前未浏览的信息进行推荐。
如图7所示,信息推荐集合生成装置740可以包括相似度计算模块 741、信息偏好集合生成模块743、兴趣度计算模块745以及信息推荐集合生成模块747。
相似度计算模块741可以根据属于同一类别的多个用户的第一历史行为数据,计算第一历史行为数据涉及的信息集合中不同信息之间的相似度。
作为示例,两个信息之间的相似度与所述多个用户中同时浏览了这两个信息的用户的个数正相关,分别与所述多个用户中浏览所述两个信息中一个信息的用户的个数以及所述多个用户中浏览所述两个信息中另一个信息的用户的个数负相关。
例如,相似度计算模块741可以使用如下计算方式计算不同信息之间的相似度,
其中,wij表示信息i和信息j之间的相似度,N(i)表示属于同一类别的多个用户中浏览信息i的第一用户集合,N(j)表示属于同一类别的多个用户中浏览信息j的第二用户集合,|N(i)∩N(j)|表示第一用户集合和第二用户集合中共同浏览信息i和信息j的用户数,|N(i)|表示第一用户集合中的用户数,|N(j)|表示第二用户集合中的用户数。
信息偏好集合生成模块743可以基于用户的第二历史行为数据,确定用户的信息偏好集合。
此处可以直接将用户浏览的频次较高的信息作为用户的信息偏好集合,也可以通过统计的方法计算用户的第二历史行为数据涉及的信息集合中各信息的偏好度,可以将偏好度排名靠前的预定数量的信息作为用户的信息偏好集合。当然还可以通过其它方式生成用户的信息偏好集合,此处不再赘述。
作为示例,可以通过如下方式计算用户对信息的偏好度r,
其中,T为用户针对信息的所有行为类型,t为不同的行为类型,qt为行为类型t下的行为次数,Wt为行为类型t对应的行为权重。其中,行为类型和行为次数均可以从用户的历史行为数据中获取。
兴趣度计算模块745可以基于信息偏好集合和不同信息之间的相似度,计算用户对其所属的类别对应的第一信息集合中其它信息的兴趣度。
作为示例,兴趣度计算模块745可以包括第二信息集合确定模块(图中未示出)和兴趣度确定模块(图中未示出)。对于第一信息集合中的第一信息,第二信息集合确定模块可以从第一信息集合中选取与第一信息的相似度超过第二预定阈值的第二信息,以得到第二信息集合。兴趣度确定模块可以将用户对信息偏好集合和第二信息集合的交集中各个第二信息的子兴趣度的总和,作为用户对第一信息的兴趣度,其中,子兴趣度分别与用户对第二信息的偏好度以及第一信息与第二信息之间的相似度正相关。
例如,兴趣度计算模块745可以使用如下公式计算用户对其它信息的兴趣度,
其中,Puj表示用户u对信息j的兴趣度,N(u)表示用户u的信息偏好集合,S(j,K)表示与信息j的相似度超过第二预定阈值的K个信息的集合, wij表示信息i和信息j之间的相似度,rui表示用户u对信息i的偏好度。
信息推荐集合生成模块747可以将兴趣度高于第一预定阈值的信息作为用户的信息推荐集合。
作为本公开的另一个可选实施例,信息推荐集合生成装置740还可以根据属于同一类别的一个或多个用户的历史行为数据和/或人口统计学特征,确定类别的兴趣偏好标签,针对类别生成与兴趣偏好标签相匹配的信息推荐集合。
作为本公开的另一个可选实施例,信息推荐集合生成装置740还可以将统计得到的属于同一类别的一个或多个用户的历史浏览信息,直接作为信息推荐集合。
【计算设备】
根据本公开还提供了一种可以用于执行本公开的识别模型训练方法和信息推荐方法的计算设备。
图8是可以用于执行本公开的识别模型训练方法和信息推荐方法的计算设备的示意性框图。
如图8所示,该计算设备800可以包括处理器810和存储器830。存储器830上存储有可执行代码。当处理器810执行该可执行代码时,使得处理器810执行上面描述的识别模型训练方法或信息推荐方法。
上文中已经参考附图详细描述了根据本公开的信息推荐及模型训练方法和装置、计算设备。
此外,根据本公开的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本公开的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本公开还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被终端(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本公开的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本公开的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。