发明内容
本发明实施例提供一种用于内容推荐的特征组合方法、装置、设备及存储介质,能够实现特征组合方式的自动化选择,提高基于选择的特征组合方式所得到的组合特征,进行内容智能化推荐的效果。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种用于内容推荐的特征组合方法,包括:
构建包括至少一个特征组合方式的特征组合方式集合;所述特征组合方式为针对推荐内容样本的特征的组合方式;
分别确定各所述特征组合方式的有效性,所述有效性,用于表征基于相应的特征组合方式组合得到的特征进行内容推荐的准确度;
基于各所述特征组合方式的有效性,从所述特征组合方式集合中筛选得到第一目标数量的特征组合方式作为第一候选组合方式;
基于所述第一候选组合方式及所述特征,生成至少一个第二候选组合方式;
从所述至少一个第二候选组合方式中,选择符合筛选条件的特征组合方式作为目标特征组合方式;
基于所述目标特征组合方式,对所述特征进行特征组合,得到目标组合特征,所述目标组合特征,用于供基于所述目标组合特征进行内容推荐。
本发明实施例还提供一种用于内容推荐的特征组合装置,包括:
构建模块,用于构建包括至少一个特征组合方式的特征组合方式集合;所述特征组合方式为针对推荐内容样本的特征的组合方式;
确定模块,用于分别确定各所述特征组合方式的有效性,所述有效性,用于表征基于相应的特征组合方式组合得到的特征进行内容推荐的准确度;
筛选模块,用于基于各所述特征组合方式的有效性,从所述特征组合方式集合中筛选得到第一目标数量的特征组合方式作为第一候选组合方式;
生成模块,用于基于所述第一候选组合方式及所述特征,生成至少一个第二候选组合方式;
选择模块,用于从所述至少一个第二候选组合方式中,选择符合筛选条件的特征组合方式作为目标特征组合方式;
组合模块,用于基于所述目标特征组合方式,对所述特征进行特征组合,得到目标组合特征,所述目标组合特征,用于供基于所述目标组合特征进行内容推荐。
上述方案中,所述构建模块,还用于获取多个所述特征;
确定在所述多个特征中将至少两个所述特征进行组合所得到的至少一个特征组合方式;
基于所述至少一个特征组合方式、及所述多个特征,构建所述特征组合方式集合。
上述方案中,所述确定模块,还用于分别获取各所述特征组合方式对应的第一权重值集合,所述第一权重值集合包括对应各组合特征的第一权重值,所述组合特征基于相应的特征组合方式组合得到;
基于各所述特征组合方式对应的所述第一权重值集合,分别确定相应的所述特征组合方式的有效性。
上述方案中,所述确定模块,还用于分别获取各所述特征组合方式对应的第一特征值集合,所述第一特征值集合包括对应各所述组合特征的第一特征取值;
基于各所述组合特征的第一特征取值,确定相应的组合特征的第一权重值,各所述组合特征的第一权重值构成相应的特征组合方式的第一权重值集合。
上述方案中,所述确定模块,还用于分别将各所述组合特征的第一特征取值输入至权重计算模型,得到对应各所述组合特征的第一权重值。
上述方案中,所述确定模块,还用于将标注有目标权重值的特征取值样本,输入至所述权重计算模型,输出对应所述特征取值样本的权重值;
基于输出的所述权重值及所述目标权重值,确定所述权重计算模型的损失函数的值;
基于所述损失函数的值,更新所述权重计算模型的模型参数。
上述方案中,所述确定模块,还用于分别确定所述第一特征值集合中各第一特征取值对应的正样本数量和负样本数量;
其中,所述正样本为点击状态为已点击的第一推荐内容,所述负样本为点击状态为未点击的第二推荐内容;所述第一推荐内容及所述第二推荐内容为基于所述第一特征取值进行推荐的内容;
基于各所述第一特征取值对应的所述正样本数量和负样本数量,得到相应的组合特征的第一权重值。
上述方案中,所述确定模块,还用于基于各所述第一特征取值对应的所述正样本数量和负样本数量,采用如下公式,得到相应的组合特征的第一权重值:
其中,F为特征组合方式,j为第一特征取值,w
F,j为当特征组合方式为F、第一特征取值为j时所对应的第一权重值,
为第一特征取值为j时所对应的正样本数量,
为第一特征取值为j时所对应的负样本数量。
上述方案中,所述确定模块,还用于分别将各所述第一权重值集合中的每个第一权重值进行相加,得到对应各所述特征组合方式的评分;
分别将各所述特征组合方式对应的评分与目标评分进行比较,得到对应各所述特征组合方式的比较结果;
基于对应各所述特征组合方式的比较结果,确定各所述特征组合方式的有效性。
上述方案中,所述确定模块,还用于基于各所述特征组合方式对应的所述第一权重值集合,分别确定相应的所述特征组合方式的可选性;
基于各所述特征组合方式的可选性,从所述特征组合方式集合中筛选得到第二目标数量的特征组合方式作为候选组合方式;
分别获取各所述候选组合方式对应的第二权重值集合,所述第二权重值集合包括对应各组合特征的第二权重值,所述第二权重值是基于获取的第二特征取值得到,所述组合特征基于相应的候选组合方式组合得到;
基于各所述候选组合方式对应的所述第二权重值集合,分别确定相应的所述候选组合方式的有效性。
上述方案中,所述筛选模块,还用于基于各所述特征组合方式的有效性,将所述特征组合方式按照所述有效性从大到小进行排序;
确定排序靠前的第一目标数量的特征组合方式作为第一候选组合方式。
上述方案中,所述生成模块,还用于将所述第一候选组合方式,与所述特征进行组合,得到至少一个候选特征组合方式;
基于所述至少一个候选特征组合方式、及所述第一候选组合方式,生成所述第二候选组合方式。
上述方案中,所述选择模块,还用于分别确定各所述第二候选组合方式的有效性;
基于各所述第二候选组合方式的有效性,从所述至少一个第二候选组合方式中筛选得到第三目标数量的特征组合方式作为第三候选组合方式;
基于所述第三候选组合方式及所述特征,生成至少一个第四候选组合方式;
循环执行上述操作,直至循环次数达到次数阈值;
将循环结束时所筛选得到的特征组合方式作为目标特征组合方式。
上述方案中,所述选择模块,还用于分别确定各所述第二候选组合方式的有效性;
基于各所述第二候选组合方式的有效性,从所述至少一个第二候选组合方式中筛选得到第三目标数量的特征组合方式作为第三候选组合方式;
基于所述第三候选组合方式及所述特征,生成至少一个第四候选组合方式;
循环执行上述操作,直至筛选得到的特征组合方式保持不变;
将保持不变时所对应的特征组合方式作为目标特征组合方式。
本发明实施例还提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的用于内容推荐的特征组合方法。
本发明实施例还提供一种存储介质,存储有可执行指令,所述可执行指令被处理器执行时,实现本发明实施例提供的用于内容推荐的特征组合方法。
本发明实施例具有以下有益效果:
通过各特征组合方式的有效性,从特征组合方式集合中筛选得到第一候选组合方式,再基于第一候选组合方式及特征生成多个第二候选组合方式,从而在多个第二候选组合方式中选择符合筛选条件的目标特征组合方式;这里有效性表征基于相应的特征组合方式组合得到的特征进行内容推荐的准确度,基于有效性筛选对各特征组合方式进行筛选,从而得到目标特征组合方式,以基于目标特征组合方式对应的目标组合特征进行内容推荐,能够实现特征组合方式的自动化选择,提高基于选择的特征组合方式所得到的组合特征,进行内容智能化推荐的效果。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)内容推荐,根据用户需求,在大量的待推荐内容中挑选出用户感兴趣的内容并推荐给用户;
2)预测点击率,根据用户信息和待推荐内容信息等,预估目标用户点击待推荐内容的概率;
3)特征:即为待推荐内容的原始特征,包括用户特征、内容特征中至少之一;示例性地,用户特征可包括“用户标识、用户年龄”,内容特征可包括“内容标签、内容标识”;
4)特征组合方式:对原始特征进行组合得到组合特征的方式;
5)组合特征:基于特征组合方式,对一个或多个原始特征进行组合所得到的特征。
相关技术中,在进行内容推荐时,人工特征选择方式是最常用的方法,但是其面临的问题较多。比如,重度依赖从业人员的经验,没有统一的标准;针对不同的场景,有效特征可能是不同的,单纯依靠经验可能难以得出最优的特征;速度和质量均难以得到有效地保证。
虽然当前针对上述问题,提出了一些新的解决方法,比如梯度提升决策树(Gradient Boosting Decision Tree,GBDT)方法。GBDT方法通过一系列决策树来寻找组合特征,而GBDT方法主要适用于连续特征和只有少量取值的离散特征的情况。在内容推荐时,可能包括大量的离散特征且具有大量可能的取值,从而导致模型复杂度升高无法应用与在线推荐等问题。
另外,相关技术中还提出了采用深度学习模型提取组合特征,但是当相关特征较多时,应用深度学习模型所得到的模型规模远大于传统模型,此时深度学习模型很容易因为输入数据的噪声,错误地判断某些特征为有效特征,从而导致获取的组合特征不够准确。
基于此,本发明实施例提供一种用于内容推荐的特征组合方法、装置、设备、***及存储介质,以至少解决相关技术中的上述问题,接下来分别进行说明。
下面说明本发明实施例提供的用于内容推荐的特征组合***,参见图1,图1是本发明实施例提供的用于内容推荐的特征组合的架构示意图,为实现支撑一个示例性应用,终端(包括终端200-1和终端200-2)通过网络300连接服务器100,网络300可以是广域网或者局域网,又或者是二者的组合,使用无线或有线链路实现数据传输。
服务器100,用于构建包括至少一个特征组合方式的特征组合方式集合;分别确定各特征组合方式的有效性;基于各特征组合方式的有效性,从特征组合方式集合中筛选得到第一目标数量的第一候选组合方式;基于第一候选组合方式及特征,生成至少一个第二候选组合方式;从至少一个第二候选组合方式中,选择符合筛选条件的目标特征组合方式;基于目标特征组合方式,对特征进行特征组合,得到目标组合特征;
服务器100,还用于基于目标组合特征进行内容推荐;
终端(如终端200-1),用于发送内容获取请求,呈现推荐内容。
在实际应用中,服务器100既可以为单独配置的支持各种业务的一个服务器,亦可以配置为一个服务器集群;终端(如终端200-1)可以为智能手机、平板电脑、笔记本电脑等各种类型的用户终端,还可以为可穿戴计算设备、个人数字助理(PDA)、台式计算机、蜂窝电话、媒体播放器、导航设备、游戏机、电视机、或者这些数据处理设备或其他数据处理设备中任意两个或多个的组合。
下面对本发明实施例提供的用于内容推荐的特征组合方法的电子设备的硬件结构做详细说明,参见图2,图2是本发明实施例提供的电子设备的结构示意图,图2所示的电子设备200包括:至少一个处理器210、存储器250、至少一个网络接口220和用户接口230。电子设备200中的各个组件通过总线***240耦合在一起。可理解,总线***240用于实现这些组件之间的连接通信。总线***240除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线***240。
处理器210可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口230包括使得能够呈现媒体内容的一个或多个输出装置231,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口230还包括一个或多个输入装置232,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器250可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器250可选地包括在物理位置上远离处理器210的一个或多个存储设备。
存储器250包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本发明实施例描述的存储器250旨在包括任意适合类型的存储器。
在一些实施例中,存储器250能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作***251,包括用于处理各种基本***服务和执行硬件相关任务的***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块252,用于经由一个或多个(有线或无线)网络接口220到达其他计算设备,示例性的网络接口220包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块253,用于经由一个或多个与用户接口230相关联的输出装置231(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作***设备和显示内容和信息的用户接口);
输入处理模块254,用于对一个或多个来自一个或多个输入装置232之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本发明实施例提供的用于内容推荐的特征组合装置可以采用软件方式实现,图2示出了存储在存储器250中的用于内容推荐的特征组合装置255,其可以是程序和插件等形式的软件,包括以下软件模块:构建模块2551、确定模块2552、筛选模块2553、生成模块2554、选择模块2555和组合模块2556,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分,将在下文中说明各个模块的功能。
在另一些实施例中,本发明实施例提供的用于内容推荐的特征组合装置可以采用软硬件结合的方式实现,作为示例,本发明实施例提供的用于内容推荐的特征组合装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的用于内容推荐的特征组合方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Devic e)、复杂可编程逻辑器件(CPLD,Complex ProgrammableLogic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
基于上述对本发明实施例的用于内容推荐的特征组合***及电子设备的说明,在对本发明实施例提供的用于内容推荐的特征组合方法进行说明之前,首先对本发明实施例提供的内容推荐***进行说明,参见图3和图4,图3是本发明实施例提供的内容推荐***的结构示意图,图4是本发明实施例提供的内容推荐过程中终端和服务器的交互示意图。
如图3所示,服务器接收终端发送的用户请求,从内容数据库中提取出待推荐内容,并发送到特征中心。特征中心将用户请求信息和待推荐内容信息处理后,得到原始特征(如用户标识、内容标签等),并将原始特征发送到特征组合模块。
在本发明实施例中,增加了如图3虚线框所示部分的特征自动选择单元,代替相关技术中通过人工选择方式得到组合特征,实现特征组合的自动化。这里,特征自动选择单元可以基于原始特征,筛选出最有效的特征组合方式。在实际实施时,该特征自动选择单元可以按照一定的频率定时运行,也可以根据业务人员的指令运行;根据特征中心记录的离线日志数据,选择有效的特征组合方式(如用户id-内容标签),并由此更新特征组合单元中的特征组合方式,使特征组合单元输出有效的组合特征,以基于该组合特征进行内容推荐模型的训练或线上点击率预估。从而内容推荐***调用重排序单元根据预估点击率进行排序,确定待推荐内容并返回给用户。
在进行线上内容推荐的同时,内容推荐***会将每次推荐所用到的特征、推荐结果、用户的点击情况存成日志,这些日志可以用于得到各个组合特征的每种取值(例如组合方式为用户id-内容标签,该组合方式的可能取值包括张三-篮球)的权重值,以便更新筛选得到的特征组合方式,指导后续推荐操作。
终端接收服务器(内容推荐***)返回的待推荐内容,并呈现给用户。
基于上述对本发明实施例的用于内容推荐的特征组合***及电子设备的说明,下面说明本发明实施例提供的用于内容推荐的特征组合方法。参见图5,图5是本发明实施例提供的用于内容推荐的特征组合方法的流程示意图;在一些实施例中,该用于内容推荐的特征组合方法可由终端、或服务器单独实施,或由服务器及终端协同实施,以服务器实施为例,本发明实施例提供的用于内容推荐的特征组合方法包括:
步骤501:服务器构建包括至少一个特征组合方式的特征组合方式集合。
这里,特征组合方式为针对推荐内容样本的特征的组合方式。
在实际应用中,当服务器采用上述内容推荐***进行用户内容推荐时,需要提取推荐内容样本的相关特征,比如用户特征和内容特征。在本发明实施例中,需要获取用户特征和内容特征等的相关组合特征以提高内容推荐的精确度。在生成组合特征时,则需要选择合适的特征组合方式。
在一些实施例中,可通过以下步骤,筛选有效的特征组合方式。首先,服务器可构建包括至少一个特征组合方式的特征组合方式集合。这里,特征组合方式集合中可仅包含一个特征组合方式,也可以包含多个特征组合方式。
在一些实施例中,可通过如下方式构建特征组合方式集合:获取多个特征;确定在多个特征中将至少两个特征进行组合所得到的至少一个特征组合方式;基于至少一个特征组合方式、及多个特征,构建特征组合方式集合。
在构建特征组合方式集合时,首先要获取多个特征,该特征即为包括用户特征和内容特征的原始特征,比如,该多个特征可以是用户特征“用户标识”、“用户关注的媒体”、内容特征“发文媒体”、“内容标签”等。这里,获取的原始特征也可被看作一种特殊的特征组合方式。
在获取到多个特征后,多次从该多个特征中选择至少两个特征并进行组合,以得到多个特征组合方式。示例性地,比如多个特征包括“用户标识、用户关注的媒体、发文媒体、内容标签”,任意选择两个特征进行组合,可以得到“用户标识-用户关注的媒体”、“用户标识-发文媒体”、“用户关注的媒体-内容标签”等多个特征组合方式。在实际实施时,除了可以任意选择两个特征之外,还可以任意选择三个特征进行组合,在本发明实施例中不作限定。
得到至少一个特征组合方式之后,基于该特征组合方式与多个特征、构建上述特征组合方式集合。在实际实施时,由于该多个特征可以被看作一种特殊的特征组合方式,那么可以将所得到多个特征组合方式、与多个特征均作为特征组合方式集合中的各特征组合方式,以此构建特征组合方式集合。
示例性地,多个特征包括“用户标识、用户关注的媒体、发文媒体、内容标签”,所得到的多个特征组合方式包括“用户标识-用户关注的媒体、用户标识-发文媒体、用户关注的媒体-内容标签”,那么基于此构建的特征组合方式集合为“用户标识、用户关注的媒体、发文媒体、内容标签、用户标识-用户关注的媒体、用户标识-发文媒体、用户关注的媒体-内容标签”。
在实际应用中,所获取的特征很多,可以用D1={特征1、特征2、…、特征n}表示,如果选择多个特征中的任意两个特征进行两两组合,则可以得到如D2={(特征1、特征1)、(特征1、特征2)、…、(特征1、特征n)、…、(特征n、特征n)}所示的多个特征组合方式,从而构建D=D1∪D2所示的特征组合方式集合。
由于所获取的特征有很多,在实际实施时,也可以根据一些先验知识,仅将用户特征和内容特征进行组合得到多个特征组合方式,从而降低处理器的计算量;而如果处理器的计算能力较强的话,则还可以进一步选择两个以上的特征进行组合得到特征组合方式,以使得到的特征组合方式更有效,从而提高内容推荐的准确性。
步骤502:分别确定各特征组合方式的有效性。
在构建包含多个特征组合方式的特征组合方式集合后,确定该集合中每个特征组合方式的有效性。这里,有效性是用于表征基于相应的特征组合方式组合得到的特征进行内容推荐的准确度。
在一些实施例中,可通过如下方式,确定每个特征组合方式的有效性:分别获取各特征组合方式对应的第一权重值集合;基于各特征组合方式对应的第一权重值集合,分别确定相应的特征组合方式的有效性。
在计算每个特征组合方式的有效性时,首先获取每个特征组合方式对应的第一权重值集合,从而基于该第一权重值集合,确定相应的特征组合方式的有效性。这里,第一权重值集合包括对应各组合特征的第一权重值,该组合特征是基于相应的特征组合方式组合得到的。
在一些实施例中,可通过如下方式获取各特征组合方式对应的第一权重值集合:分别获取各特征组合方式对应的第一特征值集合,该第一特征值集合包括对应各组合特征的第一特征取值;基于各组合特征的第一特征取值,确定相应的组合特征的第一权重值,各组合特征的第一权重值构成相应的特征组合方式的第一权重值集合。
在构建各特征组合方式对应的第一权重值集合时,需要先获取各特征组合方式对应的第一特征值集合。这里,第一特征值集合包括各组合特征对应的所有第一特征取值,该组合特征是基于相应的特征组合方式得到的。比如,当特征组合方式为“用户标识-内容标签”时,所对应的第一特征取值可以是“张三-搞笑、张三-时事、张三-娱乐、张三-军事”等。第一特征取值可以是基于历史日志数据提取得到的,也可以是对历史日志数据进行采样得到的部分数据。
根据各组合特征对应的第一特征取值,确定相应组合特征对应的第一权重值,从而构建包含各组合特征的第一权重值的第一权重值集合,以得到各特征组合方式的第一权重值集合。
在一些实施例中,可通过如下方式确定各组合特征的第一权重值:分别将各组合特征的第一特征取值输入至权重计算模型,得到对应各组合特征的第一权重值。
通过预先训练完成的权重计算模型,将各组合特征的第一特征取值分别输入到该权重计算模型中,从而得到各组合特征对应的第一权重值。
在一些实施例中,可通过以下方式训练得到上述权重计算模型:将标注有目标权重值的特征取值样本,输入至权重计算模型,输出对应特征取值样本的权重值;基于输出的权重值及目标权重值,确定权重计算模型的损失函数的值;基于损失函数的值,更新权重计算模型的模型参数。
在实际应用中,可以基于深度学习方法预先构建卷积神经网络模型,包括输入层、隐藏层及输出层,用于计算各特征组合的第一权重值,以得到权重计算模型。在权重计算模型构建成功后,基于采集的特征取值样本对该模型进行训练,以得到优化的权重计算模型参数。在实际实施时,进行模型训练时,所输入的特征取值样本可以是仅针对某个特征组合方式的样本,还可以是所有特征组合方式的样本,为加快模型训练速度,可以仅针对某个特征组合方式的样本进行训练。
具体地,先获取大量的特征取值样本,比如可以是对某些推荐内容的相关历史日志数据进行采样得到的。这些特征取值样本分别标注有对应的目标权重值;在进行训练之前,可以将采集的大量样本拆分为训练集和测试集,将训练集中标注有目标权重值的特征取值样本输入到预先构建的权重计算模型,以输出对应特征取值样本的权重值。
进一步地,模型训练的过程即是对模型中各参数的更新调整过程。将训练样本数据输入到权重计算模型的输入层,经过隐藏层,最后达到输出层并输出结果,由于权重计算模型的输出结果与实际结果可能有误差,则需要计算输出结果与实际值之间的误差,并将该误差从输出层向隐藏层进行反向传播,直至传播到输入层,进而在反向传播的过程中,根据误差调整模型参数的值;整个训练过程不断迭代上述步骤,直至收敛,以减小模型输出的误差。
基于此,在降低权重计算模型输出的权重值及目标权重值之间可能存在的误差时,在本发明实施例中,引入了损失函数。基于模型输出的特征取值样本的权重值及目标权重值,确定损失函数的值。
基于上述确定的损失函数的值,运用神经网络模型中的反向传播算法逐层更新权重计算模型的参数,直至损失函数收敛,以实现对权重计算模型的参数的约束和调整。从而得到计算精度高的权重计算模型,以基于该权重计算模型确定各组合特征的第一权重值。
在一些实施例中,还可通过如下方式确定各组合特征的第一权重值:分别确定第一特征值集合中各第一特征取值对应的正样本数量和负样本数量;基于各第一特征取值对应的正样本数量和负样本数量,得到相应的组合特征的第一权重值。
这里,正样本为点击状态为已点击的第一推荐内容,负样本为点击状态为未点击的第二推荐内容;第一推荐内容及第二推荐内容为基于第一特征取值进行推荐的内容;
除了采用权重计算模型计算各组合特征的第一权重值时,还可以采用统计的方式确定该第一权重值。首先获取第一特征值集合对应的所有样本,这里的样本即对应为基于第一特征取值进行推荐的推荐内容。根据推荐内容的点击状态,将所有样本划分为正样本和负样本,即将点击状态为已点击的第一推荐内容确定为正样本,将点击状态为未点击的第二推荐内容确定为负样本。
示例性地,当组合特征为“用户标识-商品类型”时,所对应的第一特征取值包括“张三-化妆品、张三-零食、张三-服饰、张三-运动鞋”,基于该每个第一特征取值进行内容推荐时,即向“张三”分别推荐“化妆品、零食、服饰和运动鞋”,如果“张三”分别点击了“化妆品、零食”,其他并未点击,那么“张三-化妆品、张三-零食”即为正样本,“张三-服饰、张三-运动鞋”即为负样本。
基于采集的样本,确定各第一特征取值对应的正样本数量和负样本数量;基于该正样本数量和负样本数量,分别确定相应的第一特征取值的第一权重值。在实际实施时,可采用如下公式计算各组合特征的第一权重值:
其中,F为特征组合方式,j为第一特征取值,w
F,j为当特征组合方式为F、第一特征取值为j时所对应的第一权重值,
为第一特征取值为j时所对应的正样本数量,
为第一特征取值为j时所对应的负样本数量。
确定各组合特征对应的第一权重值之后,基于各组合特征的第一权重值构建相应的特征组合方式对应的第一权重值集合。
在基于上述实施例得到各特征组合方式对应的第一权重值集合后,可通过如下方式确定各特征组合方式的有效性:分别将各第一权重值集合中的每个第一权重值进行相加,得到对应各特征组合方式的评分;分别将各特征组合方式对应的评分与目标评分进行比较,得到对应各特征组合方式的比较结果;基于对应各特征组合方式的比较结果,确定各特征组合方式的有效性。
当确定了每个特征组合方式对应的第一权重值集合后,进一步计算相应的特征组合方式的有效性。在实际应用中,可针对每个第一权重值集合,将该权重值集合中的每个第一权重值进行相加,从而得到相应的特征组合方式的评分。将各特征组合方式的评分与对应的目标评分进行比较,得到比较结果,从而基于该比较结果,确定相应的特征组合方式的有效性。
在实际实施时,可以通过AUC、Logloss等精度指标,计算各特征组合方式的评分与目标评分的比较结果,从而确定各特征组合方式的有效性。这里,评分用于表征基于相应的特征组合方式得到的组合特征进行推荐时,该推荐内容被用户点击的可能性。
在一些实施例中,还可通过如下方式确定各特征组合方式的有效性:基于各特征组合方式对应的第一权重值集合,分别确定相应的特征组合方式的可选性;基于各特征组合方式的可选性,从特征组合方式集合中筛选得到第二目标数量的特征组合方式作为候选组合方式;分别获取各候选组合方式对应的第二权重值集合,第二权重值集合包括对应各组合特征的第二权重值,第二权重值是基于获取的第二特征取值得到,组合特征基于相应的候选组合方式组合得到;基于各候选组合方式对应的第二权重值集合,分别确定相应的候选组合方式的有效性。
在确定各特征组合方式的有效性时,为使得到有效性更为精确,可以进行多次有效性的计算。具体地,基于第一权重值集合确定特征组合方式集合中的各特征组合方式的可选性,进而从中筛选出可选性较高的第二目标数量的特征组合方式作为候选组合方式。
基于第二权重值集合计算每个候选组合方式的有效性,这里,第二权重值集合是基于第二特征取值得到的,第二特征取值可以与第一特征取值不同,第二特征取值的数据量可以比第一特征取值的数据量大,以使计算得到的有效性更为精确。具体基于第二权重值集合得到有效性可以采用同上述基于第一权重值集合得到有效性的方法,此处不再赘述。
应用上述实施例,实现了对各特征组合方式的有效性的计算,从而实现根据有效性对特征组合方式的筛选。
步骤503:基于各特征组合方式的有效性,从特征组合方式集合中筛选得到第一目标数量的特征组合方式作为第一候选组合方式。
在上述发明实施例确定了每个特征组合方式的有效性之后,根据有效性的大小,对特征组合方式集合中的特征组合方式进行筛选,以得到第一候选组合方式。这里,第一候选组合方式可以是包含多个筛选得到的特征组合方式的集合。
在一些实施例中,可通过如下方式筛选得到上述第一候选组合方式:基于各特征组合方式的有效性,将特征组合方式按照有效性从大到小进行排序;确定排序靠前的第一目标数量的特征组合方式作为第一候选组合方式。
根据每个特征组合方式的有效性,按照有效性从大到小的顺序、对特征组合方式集合中的特征组合方式进行排序,从而根据排列顺序进行筛选。在实际实施时,可以预先设置第一目标数量,将排序靠前的第一目标数量的特征组合方式作为第一候选组合方式,示例性地,比如第一目标数量设置为50,那么则将排序靠前的前50个特征组合方式作为第一候选组合方式。
在另外一些实施例中,还可以预先设置有效性阈值。在实际实施时,则分别将每个特征组合方式的有效性与该有效性阈值进行比较,确定有效性达到该有效性阈值的每个特征组合方式作为第一候选组合方式。
步骤504:基于第一候选组合方式及特征,生成至少一个第二候选组合方式。
由于上述特征组合方式集合中不可能包含所有特征组合方式,因此为进一步筛选出更加有效的特征组合方式,在筛选得到第一候选组合方式后,对第一候选组合方式进行扩增,以得到更多的特征组合方式作为第二候选组合方式。
在一些实施例中,可通过如下方式生成至少一个第二候选组合方式:将第一候选组合方式,与特征进行组合,得到至少一个候选特征组合方式;基于至少一个候选特征组合方式、及第一候选组合方式,生成第二候选组合方式。
在实际应用中,筛选得到第一候选组合方式表示为Dout,进一步将第一候选组合方式与上述多个特征进行组合,比如,将Dout中的特征组合方式分别与一个特征进行组合,或者同时分别与两个特征进行组合等,从而得到多个特征组合方式D';进而将Dout∪D',生成多个第二候选组合方式。
应用上述实施例,基于第一候选组合方式及获取的特征,生成了更多的第二候选组合方式,从而增加了特征组合方式的多样性,以得到更多有效的特征组合方式,提供内容推荐的准确性。
步骤505:从至少一个第二候选组合方式中,选择符合筛选条件的特征组合方式作为目标特征组合方式。
在生成至少一个第二候选组合方式之后,对第二候选组合方式再次进行筛选,从至少一个第二候选组合方式中、选择符合筛选条件的特征组合方式,以作为后续进行特征组合的目标特征组合方式。具体地,还可以通过计算各第二候选组合方式的有效性来实现。这里,筛选条件可以根据需要设置,在本发明实施例中不作限制。
在一些实施例中,可通过如下方式,从至少一个第二候选组合方式中选择目标特征组合方式:分别确定各第二候选组合方式的有效性;基于各第二候选组合方式的有效性,从至少一个第二候选组合方式中筛选得到第三目标数量的特征组合方式作为第三候选组合方式;基于第三候选组合方式及特征,生成至少一个第四候选组合方式;循环执行上述操作,直至循环次数达到次数阈值;将循环结束时所筛选得到的特征组合方式作为目标特征组合方式;
或者,在另外一些实施例中,还可通过如下方式,从至少一个第二候选组合方式中选择目标特征组合方式:分别确定各第二候选组合方式的有效性;基于各第二候选组合方式的有效性,从至少一个第二候选组合方式中筛选得到第三目标数量的特征组合方式作为第三候选组合方式;基于第三候选组合方式及特征,生成至少一个第四候选组合方式;循环执行上述操作,直至筛选得到的特征组合方式保持不变;将保持不变时所对应的特征组合方式作为目标特征组合方式。
同样地,在对第二候选组合方式进行筛选时,也可通过计算有效性的方式来实现。首先,计算每个第二候选组合方式的有效性,具体地可通过上述有效性的计算方法来实现;预先设置第三目标数量,根据有效性的大小从多个第二候选组合方式中筛选得到第三目标数量的特征组合方式作为第三候选组合方式;为进一步得到更加有效的特征组合方式,还可以根据第三候选组合方式及特征,生成至少一个第四候选组合方式,从而继续基于计算有效性的方式对得到的第四候选组合方式进行筛选,以基于该第四候选组合方式及特征,生成更多候选组合方式并再次筛选。
在一些实施例中,可通过循环执行上述基于有效性筛选特征组合方式的操作,多次生成候选组合方式并筛选,以得到更加有效的目标特征组合方式,实现内容的精确推荐。
在实际应用中,可以对循环执行的循环次数设置对应的次数阈值,从而在循环执行上述操作的同时,对循环次数进行监控。当确定循环次数已经达到次数阈值时,停止执行上述操作,并将循环结束时所筛选得到的特征组合方式作为目标特征组合方式。
另外,在实际应用中,还可对循环执行上述操作的过程中,每次筛选得到的特征组合方式进行监控。当确定在循环执行的过程中,多次筛选得到特征组合方式不再变化时,则将保持不变时所对应的特征组合方式作为目标特征组合方式。具体地,可以对出现特征组合方式保持不变的次数进行监控,当确定出现次数达到预设次数阈值时,则确定特征组合方式不再变化,此时则将筛选出的特征组合方式作为目标特征组合方式。
除了可以将不再变化时对应的特征组合方式作为目标特征组合方式外,还可以对每次循环执行的过程中,所筛选得到的特征组合方式的匹配度进行监控,即,对当前筛选出的特征组合方式与前一次筛选出的特征组合方式进行匹配,得到匹配结果;当多次确定筛选得到的特征组合方式的匹配度达到匹配度阈值时,则可以将其中相匹配的特征组合方式作为目标特征组合方式。
示例性地,参见图6,图6是本发明实施例提供的筛选目标特征组合方式的流程示意图。这里,首先构建适当数量的特征组合方式作为候选;计算每个特征组合方式的有效性,并筛选出有效性较高的特征组合方式;对筛选出的特征组合方式进行扩增,即基于有效性较高的特征组合方式及原始特征,生成更多的特征组合方式;判断此时是否达到预设的循环结束条件,这里循环结束条件可以是设置循环次数阈值等;如果是,则输出所筛选的目标特征组合方式;如果否,则返回计算每个特征组合方式的有效性,从而继续筛选出有效性较高的特征组合方式,以得到目标特征组合方式。
应用上述实施例,通过循环执行基于有效性筛选特征组合方式的操作,多次生成候选组合方式并筛选,得到了更加有效的目标特征组合方式,提供了内容的推荐的准确性。
步骤506:基于目标特征组合方式,对特征进行特征组合,得到目标组合特征。
在通过上述实施例筛选得到目标特征组合方式后,即可基于该目标特征组合方式,对获取的多个特征进行组合,以得到目标组合特征。这里,目标特征组合方式可以是多个,可以基于每个目标特征组合方式对上述特征进行组合,也可以基于有效性最高的目标特征组合方式对上述特征进行组合,从而得到目标组合特征,以基于该目标组合特征进行内容推荐。
应用本发明上述实施例,通过各特征组合方式的有效性,从特征组合方式集合中筛选得到第一候选组合方式,再基于第一候选组合方式及特征生成多个第二候选组合方式,从而在多个第二候选组合方式中选择符合筛选条件的目标特征组合方式;这里有效性表征基于相应的特征组合方式组合得到的特征进行内容推荐的准确度,基于有效性筛选对各特征组合方式进行筛选,从而得到目标特征组合方式,以基于目标特征组合方式对应的目标组合特征进行内容推荐,能够实现特征组合方式的自动化选择,提高基于选择的特征组合方式所得到的组合特征,进行内容智能化推荐的效果。
下面将说明本发明实施例在一个实际的应用场景中的示例性应用。参见图7,图7为本发明实施例提供的用于内容推荐的特征组合方法的流程示意图,本发明实施例提供的用于内容推荐的特征组合方法包括:
步骤701:服务器构建特征组合方式集合。
这里,特征组合方式集合中包含多个特征组合方式,该特征组合方式是针对待推荐内容的特征的组合方式。
在构建特征组合方式集合时,可以获取多个特征,即为用户或者内容的相关原始特征,比如“用户标识、内容标签”等。将获取的多个特征进行两两组合,以生成多个特征组合方式,从而根据所获取的多个特征及多个特征组合方式,构建特征组合方式集合。
在实际实施时,还可以选取两个以上的特征进行组合,以生成更多的特征组合方式。
步骤702:获取各特征组合方式对应的第一特征值集合。
这里,第一特征值集合包括各组合特征的第一特征取值,该组合特征是基于相应的特征组合方式得到的。每个组合特征的第一特征取值可以有多个,比如组合特征为“用户标识-内容标签”时,所对应的第一特征取值可以是“张三-搞笑、张三-时事、张三-娱乐、张三-军事”等。
步骤703:确定各第一特征取值的第一权重值,以构成包含多个第一权重值的第一权重值集合。
这里,在确定各第一特征取值的第一权重值时,可采用权重计算模型的方式,也可采用统计的方式。具体的,可将第一特征取值输入到权重计算模型,以输出第一权重值;还可确定第一特征取值对应的正样本数量和负样本数量,根据正样本数量和负样本数量确定第一特征取值的第一权重值。
步骤704:将第一权重值集合中的每个第一权重值进行相加,得到各特征组合方式对应的评分。
这里,评分用于表征基于相应的特征组合方式得到的组合特征进行内容推荐时,该推荐内容被用户点击的可能性。
步骤705:将各特征组合方式对应的评分与目标评分进行比较,得到比较结果。
这里,可以通过AUC、Logloss等精度指标,计算各特征组合方式的评分与目标评分的比较结果。
步骤706:基于比较结果,确定各特征组合方式的有效性。
这里,在确定特征组合方式集合中的有效性之后,可以根据有效性对各特征组合方式进行第一次筛选,从而得到部分特征组合方式。再针对该部分特征组合方式,获取对应的第二权重值集合,这里的第二权重值集合是基于第二特征取值计算得到的,第二特征取值是针对各特征组合方式,从再次获取的历史数据中提取得到的,与第一特征取值可以不同,获取的第二特征取值的数据量可以更多,从而更加精确地确定各特征组合方式的有效性。
步骤707:基于各特征组合方式的有效性,筛选得到第一目标数量的第一候选组合方式。
这里,可以根据有效性的大小,对特征组合方式按照有效性从大到小进行排序,将排序靠前的第一目标数量的特征组合方式作为第一候选组合方式。该第一目标数量可以是固定的数值,也可以是具体的百分比。
步骤708:基于第一候选组合方式及特征,生成多个第二候选组合方式。
这里,返回步骤702。针对每个第二候选组合方式,确定各第二候选组合方式的有效性,从而基于有效性筛选得到固定数量的第三候选组合方式;基于第三候选组合方式及特征,生成多个第四候选组合方式,从而再次计算各第四候选组合方式的有效性,以实现循环执行基于有效性筛选特征组合方式的操作,多次生成候选组合方式并筛选,以得到更加有效的目标特征组合方式。
步骤709:判断是否符合循环结束条件。
如果符合循环结束条件,则输出对应的目标特征组合方式;如果不符合循环结束条件,则继续循环执行步骤702-步骤708。
这里,循环结束条件可设置为固定的循环次数阈值,当循环执行上述操作的次数达到循环次数阈值时,则结束循环,将循环结束时筛选得到的特征组合方式作为目标特征组合方式;
或者,还可以监控每次筛选得到的特征组合方式,当筛选出的特征组合方式保持不变时,则将保持不变时的特征组合方式作为目标特征组合方式。
步骤710:输出目标特征组合方式,对特征进行组合,得到目标组合特征。
步骤711:基于目标组合特征,确定待推荐内容,发送给目标终端。
步骤712:终端呈现推荐内容。
下面继续说明本发明实施例提供的用于内容推荐的特征组合装置255,在一些实施例中,用于内容推荐的特征组合装置可采用软件模块的方式实现。参见图8,图8是本发明实施例提供的用于内容推荐的特征组合装置255的结构示意图,本发明实施例提供的用于内容推荐的特征组合装置255包括:
构建模块2551,用于构建包括至少一个特征组合方式的特征组合方式集合;所述特征组合方式为针对推荐内容样本的特征的组合方式;
确定模块2552,用于分别确定各所述特征组合方式的有效性,所述有效性,用于表征基于相应的特征组合方式组合得到的特征进行内容推荐的准确度;
筛选模块2553,用于基于各所述特征组合方式的有效性,从所述特征组合方式集合中筛选得到第一目标数量的特征组合方式作为第一候选组合方式;
生成模块2554,用于基于所述第一候选组合方式及所述特征,生成至少一个第二候选组合方式;
选择模块2555,用于从所述至少一个第二候选组合方式中,选择符合筛选条件的特征组合方式作为目标特征组合方式;
组合模块2556,用于基于所述目标特征组合方式,对所述特征进行特征组合,得到目标组合特征,所述目标组合特征,用于供基于所述目标组合特征进行内容推荐。
在一些实施例中,所述构建模块2551,还用于获取多个所述特征;
确定在所述多个特征中将至少两个所述特征进行组合所得到的至少一个特征组合方式;
基于所述至少一个特征组合方式、及所述多个特征,构建所述特征组合方式集合
在一些实施例中,所述确定模块2552,还用于分别获取各所述特征组合方式对应的第一权重值集合,所述第一权重值集合包括对应各组合特征的第一权重值,所述组合特征基于相应的特征组合方式组合得到;
基于各所述特征组合方式对应的所述第一权重值集合,分别确定相应的所述特征组合方式的有效性。
在一些实施例中,所述确定模块2552,还用于分别获取各所述特征组合方式对应的第一特征值集合,所述第一特征值集合包括对应各所述组合特征的第一特征取值;
基于各所述组合特征的第一特征取值,确定相应的组合特征的第一权重值,各所述组合特征的第一权重值构成相应的特征组合方式的第一权重值集合。
在一些实施例中,所述确定模块2552,还用于分别将各所述组合特征的第一特征取值输入至权重计算模型,得到对应各所述组合特征的第一权重值。
在一些实施例中,所述确定模块2552,还用于将标注有目标权重值的特征取值样本,输入至所述权重计算模型,输出对应所述特征取值样本的权重值;
基于输出的所述权重值及所述目标权重值,确定所述权重计算模型的损失函数的值;
基于所述损失函数的值,更新所述权重计算模型的模型参数。
在一些实施例中,所述确定模块2552,还用于分别确定所述第一特征值集合中各第一特征取值对应的正样本数量和负样本数量;
其中,所述正样本为点击状态为已点击的第一推荐内容,所述负样本为点击状态为未点击的第二推荐内容;所述第一推荐内容及所述第二推荐内容为基于所述第一特征取值进行推荐的内容;
基于各所述第一特征取值对应的所述正样本数量和负样本数量,得到相应的组合特征的第一权重值。
在一些实施例中,所述确定模块2552,还用于基于各所述第一特征取值对应的所述正样本数量和负样本数量,采用如下公式,得到相应的组合特征的第一权重值:
其中,F为特征组合方式,j为第一特征取值,w
F,j为当特征组合方式为F、第一特征取值为j时所对应的第一权重值,
为第一特征取值为j时所对应的正样本数量,
为第一特征取值为j时所对应的负样本数量。
在一些实施例中,所述确定模块2552,还用于分别将各所述第一权重值集合中的每个第一权重值进行相加,得到对应各所述特征组合方式的评分;
分别将各所述特征组合方式对应的评分与目标评分进行比较,得到对应各所述特征组合方式的比较结果;
基于对应各所述特征组合方式的比较结果,确定各所述特征组合方式的有效性。
在一些实施例中,所述确定模块2552,还用于基于各所述特征组合方式对应的所述第一权重值集合,分别确定相应的所述特征组合方式的可选性;
基于各所述特征组合方式的可选性,从所述特征组合方式集合中筛选得到第二目标数量的特征组合方式作为候选组合方式;
分别获取各所述候选组合方式对应的第二权重值集合,所述第二权重值集合包括对应各组合特征的第二权重值,所述第二权重值是基于获取的第二特征取值得到,所述组合特征基于相应的候选组合方式组合得到;
基于各所述候选组合方式对应的所述第二权重值集合,分别确定相应的所述候选组合方式的有效性。
在一些实施例中,所述筛选模块2553,还用于基于各所述特征组合方式的有效性,将所述特征组合方式按照所述有效性从大到小进行排序;
确定排序靠前的第一目标数量的特征组合方式作为第一候选组合方式。
在一些实施例中,所述生成模块2554,还用于将所述第一候选组合方式,与所述特征进行组合,得到至少一个候选特征组合方式;
基于所述至少一个候选特征组合方式、及所述第一候选组合方式,生成所述第二候选组合方式。
在一些实施例中,所述选择模块2555,还用于分别确定各所述第二候选组合方式的有效性;
基于各所述第二候选组合方式的有效性,从所述至少一个第二候选组合方式中筛选得到第三目标数量的特征组合方式作为第三候选组合方式;
基于所述第三候选组合方式及所述特征,生成至少一个第四候选组合方式;
循环执行上述操作,直至循环次数达到次数阈值;
将循环结束时所筛选得到的特征组合方式作为目标特征组合方式。
在一些实施例中,所述选择模块2555,还用于分别确定各所述第二候选组合方式的有效性;
基于各所述第二候选组合方式的有效性,从所述至少一个第二候选组合方式中筛选得到第三目标数量的特征组合方式作为第三候选组合方式;
基于所述第三候选组合方式及所述特征,生成至少一个第四候选组合方式;
循环执行上述操作,直至筛选得到的特征组合方式保持不变;
将保持不变时所对应的特征组合方式作为目标特征组合方式。
本发明实施例还提供一种电子设备,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的用于内容推荐的特征组合方法。
本发明实施例还提供一种存储介质,存储有可执行指令,所述可执行指令被处理器执行时,实现本发明实施例提供的用于内容推荐的特征组合方法。
在一些实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件***中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。