CN116955812A - 推荐模型的训练方法、资源对象的推送方法、装置和设备 - Google Patents
推荐模型的训练方法、资源对象的推送方法、装置和设备 Download PDFInfo
- Publication number
- CN116955812A CN116955812A CN202310899436.8A CN202310899436A CN116955812A CN 116955812 A CN116955812 A CN 116955812A CN 202310899436 A CN202310899436 A CN 202310899436A CN 116955812 A CN116955812 A CN 116955812A
- Authority
- CN
- China
- Prior art keywords
- network
- resource
- feedback data
- model
- teacher
- 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
Links
- 238000012549 training Methods 0.000 title claims abstract description 170
- 238000000034 method Methods 0.000 title claims abstract description 127
- 230000008569 process Effects 0.000 claims abstract description 41
- 230000006870 function Effects 0.000 claims description 183
- 230000006399 behavior Effects 0.000 claims description 71
- 238000012216 screening Methods 0.000 claims description 58
- 238000012545 processing Methods 0.000 claims description 40
- 238000004821 distillation Methods 0.000 claims description 34
- 230000004580 weight loss Effects 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 28
- 238000003860 storage Methods 0.000 claims description 15
- 238000009826 distribution Methods 0.000 claims description 9
- 239000002131 composite material Substances 0.000 claims description 3
- 238000012546 transfer Methods 0.000 abstract description 7
- 238000006243 chemical reaction Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 22
- 238000013528 artificial neural network Methods 0.000 description 8
- 238000013140 knowledge distillation Methods 0.000 description 8
- 238000010606 normalization Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000001914 filtration Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000011084 recovery Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (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
技术领域
本公开涉及互联网技术领域,尤其涉及一种推荐模型的训练方法、资源对象的推送方法、推荐模型的训练装置、资源对象的推送装置、电子设备、存储介质和计算机程序产品。
背景技术
随着深度学习技术的发展,通过线上给用户推送资源对象的方式越来越广泛的被应用到各个互联网平台。
目前,一般是首先通过粗排模型对召回的多个资源对象进行关于推送反馈效果的初步预测排序,以筛选出对应预测排序较前的初排资源对象,再通过精排模型对初排资源对象进行关于推送反馈效果的进一步预测排序,以筛选出对应预测排序最前的目标资源对象并推送给用户账户。
在现有技术中,由于粗排模型相对于精排模型,处理的资源对象数量更多,出于系统性能考虑,粗排模型一般使用较为简单的网络模型训练得到,因而存在训练得到的粗排模型的预测精度较低,以及粗排模型和精排模型之间预测的一致性不高的问题。
发明内容
本公开提供一种推荐模型的训练方法、资源对象的推送方法、推荐模型的训练装置、资源对象的推送装置、电子设备、存储介质和计算机程序产品,以至少解决相关技术中粗排模型和精排模型之间预测的一致性不高的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种推荐模型的训练方法,包括:
获取待训练的第一资源推荐模型,并将所述第一资源推荐模型作为待训练的学生网络;所述第一资源推荐模型用于确定多个样本资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据,从多个所述样本资源对象中筛选出候选样本对象;所述第一预估反馈数据表征所述样本资源对象被待推送用户实施预设反馈行为的预测数据;
获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络;所述第二资源推荐模型用于确定多个所述候选样本对象的第二预估反馈数据,并基于所述第二预估反馈数据从多个所述候选样本对象中筛选出目标样本对象;所述第二预估反馈数据表征所述候选样本对象被所述待推送用户实施预设反馈行为的预测数据;所述第二资源推荐模型的复杂度高于所述第一资源推荐模型;
基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络,并在所述学生网络训练完成后,将对应于所述学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于所述教师网络的第二资源推荐模型确定为所述资源推荐平台的精排模型;其中,所述粗排模型用于对所述资源推荐平台的多个待推送资源对象进行第一轮筛选,所述精排模型用于对所述第一轮筛选出的多个候选资源对象进行第二轮筛选,以得到向待推送用户推荐的目标资源对象。
在一示例性实施例中,所述基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络,包括:
在每一次迭代过程中,基于当前学生网络的中间层的权重参数与当前教师网络的中间层的权重参数之间的差异,确定教师-学生网络之间的权重损失函数信息;以及
在每一次迭代过程中,基于当前学生网络、当前教师网络针对相同样本资源对象各自输出的预估反馈数据之间的差异,确定教师-学生网络之间的蒸馏损失函数信息;
根据所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息;
基于所述综合损失函数信息更新所述当前学生网络。
在一示例性实施例中,所述根据所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息,包括:
获取所述当前学生网络的第一交叉熵损失函数信息和所述当前教师网络的第二交叉熵损失函数信息;所述第一交叉熵损失函数信息表征所述当前学生网络针对第一样本资源资源对象输出的第一预估反馈数据与所述第一样本资源对象对应的第一实际反馈数据的之间的差异;所述第二交叉熵损失函数信息表征所述当前教师网络针对第二样本资源对象输出的第二预估反馈数据与所述第二样本资源对象对应的第二实际反馈数据的之间的差异;
根据所述第一交叉熵损失函数信息、所述第二交叉熵损失函数信息、所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息。
在一示例性实施例中,所述基于当前学生网络、当前教师网络针对相同样本资源对象各自输出的预估反馈数据之间的差异,确定教师-学生网络之间的蒸馏损失函数信息,包括:
针对相同样本资源对象,将第一特征数据输入所述当前学生网络,通过所述当前学生网络得出所述样本资源对象的第一预估反馈数据;以及,将第二特征数据输入所述当前教师网络,通过所述当前教师网络得出所述样本资源对象的第二预估反馈数据;其中,所述第一特征数据包括待推送用户的用户特征和资源对象特征,所述第二特征数据包括待推送用户的用户特征、资源对象特征和交叉特征;所述交叉特征为所述用户特征与所述资源对象特征之间的关联特征;
基于所述第一预估反馈数据和所述第二预估反馈数据之间的均方误差或者信息散度,确定教师-学生网络之间的蒸馏损失函数信息。
在一示例性实施例中,所述当前教师网络、所述当前学生网络中的全连接层均配置有预设指数函数;
所述通过所述当前学生网络得出所述样本资源对象的第一预估反馈数据,包括:
将所述第一特征数据输入所述当前学生网络,通过所述当前学生网络得出所述样本资源对象的第一初始预估反馈数据,并基于所述预设指数函数,对所述第一初始预估反馈数据进行处理,得到所述样本资源对象的第一预估反馈数据;
所述通过所述当前教师网络得出所述样本资源对象的第二预估反馈数据,包括:
将所述第二特征数据输入所述当前教师网络,通过所述当前教师网络得出所述样本资源对象的第二初始预估反馈数据,并基于所述预设指数函数,对所述第二初始预估反馈数据进行处理,得到所述样本资源对象的第二预估反馈数据;
其中,所述预设指数函数用于调节所述当前教师网络、所述当前学生网络中的全连接层针对多个样本资源对象对应输出的多个预估反馈数据的数据分布,使得所述数据分布趋向平滑。
在一示例性实施例中,所述基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络之前,还包括:
获取所述教师网络的网络类型和网络结构;
基于所述教师网络的网络类型和网络结构构建所述待训练的学生网络;
其中,所述待训练的学生网络与所述教师网络的网络类型相同,所述学生网络的中间层数少于所述教师网络的中间层数,以及所述学生网络的各中间层分别与所述教师网络中对应的一中间层相对应。
在一示例性实施例中,所述基于所述教师网络的网络类型和网络结构构建所述待训练的学生网络,包括:
基于所述教师网络的网络类型和网络结构,构建相同所述网络类型和所述网络结构的学生网络;
其中,所述学生网络中的各中间层分别与所述教师网络中对应的一奇数位次的中间层相对应,或者,所述学生网络中的各中间层分别与所述教师网络中对应的一偶数位次的中间层相对应。
在一示例性实施例中,所述基于当前学生网络的中间层的权重参数与当前教师网络的中间层的权重参数之间的差异,确定教师-学生网络之间的权重损失函数信息,包括:
获取所述当前学生网络中各中间层的第一权重参数,以及所述当前教师网络中各目标中间层的第二权重系数;所述目标中间层为与所述当前学生网络的中间层相对应的中间层;
基于所述第一权重系数与所述第二权重系数之间的均方误差或者信息散度,确定教师-学生网络之间的权重损失函数信息。
在一示例性实施例中,在所述获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络之前,还包括:
获取预训练样本资源对象和所述预训练样本资源对象对应的实际反馈数据;
将所述预训练样本资源对象的特征数据输入至待训练的第二资源推荐模型,得到针对所述预训练样本资源对象的预估反馈数据;所述预估反馈数据表征所述预训练样本资源对象被待推送用户实施预设反馈行为的预测数据;
基于所述预估反馈数据与所述预训练样本资源对象对应的实际反馈数据之间的差异,调整所述待训练的第二资源推荐模型,直到得到经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为预训练的教师网络。
根据本公开实施例的第二方面,提供一种资源对象的推送方法,包括:
将资源推荐平台中的多个待推送资源对象输入粗排模型,由所述粗排模型确定所述多个待推送资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据对所述多个待推送资源对象进行第一轮筛选,筛选出多个候选资源对象;所述第一预估反馈数据表征各所述待推送资源对象被待推送用户实施预设反馈行为的预测数据;
将多个所述候选资源对象输入精排模型,由所述精排模型确定多个所述候选资源对象对应的第二预估反馈数据,并基于所述第二预估反馈数据对多个所述候选资源对象进行第二轮筛选,以确定出目标资源对象;所述第二预估反馈数据表征所述候选资源对象被待推送用户实施预设反馈行为的预测数据;其中,所述粗排模型、所述精排模型基于推荐模型的训练方法得到;
将所述目标资源对象向所述待推送用户进行推荐。
根据本公开实施例的第三方面,提供一种推荐模型的训练装置,包括:
学生网络单元,被配置为执行获取待训练的第一资源推荐模型,并将所述第一资源推荐模型作为待训练的学生网络;所述第一资源推荐模型用于确定多个样本资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据,从多个所述样本资源对象中筛选出候选样本对象;所述第一预估反馈数据表征所述样本资源对象被待推送用户实施预设反馈行为的预测数据;
教师网络单元,被配置为执行获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络;所述第二资源推荐模型用于确定多个所述候选样本对象的第二预估反馈数据,并基于所述第二预估反馈数据从多个所述候选样本对象中筛选出目标样本对象;所述第二预估反馈数据表征所述候选样本对象被所述待推送用户实施预设反馈行为的预测数据;所述第二资源推荐模型的复杂度高于所述第一资源推荐模型;
模型训练单元,被配置为执行基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络,并在所述学生网络训练完成后,将对应于所述学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于所述教师网络的第二资源推荐模型确定为所述资源推荐平台的精排模型;其中,所述粗排模型用于对所述资源推荐平台的多个待推送资源对象进行第一轮筛选,所述精排模型用于对所述第一轮筛选出的多个候选资源对象进行第二轮筛选,以得到向待推送用户推荐的目标资源对象。
根据本公开实施例的第四方面,提供一种资源对象的推送装置,包括:
第一筛选单元,被配置为执行将资源推荐平台中的多个待推送资源对象输入粗排模型,由所述粗排模型确定所述多个待推送资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据对所述多个待推送资源对象进行第一轮筛选,筛选出多个候选资源对象;所述第一预估反馈数据表征各所述待推送资源对象被待推送用户实施预设反馈行为的预测数据;
第二筛选单元,被配置为执行将多个所述候选资源对象输入精排模型,由所述精排模型确定多个所述候选资源对象对应的第二预估反馈数据,并基于所述第二预估反馈数据对多个所述候选资源对象进行第二轮筛选,以确定出目标资源对象;所述第二预估反馈数据表征所述候选资源对象被待推送用户实施预设反馈行为的预测数据;其中,所述粗排模型、所述精排模型基于上述推荐模型的训练方法得到;
对象推送单元,被配置为执行将所述目标资源对象向所述待推送用户进行推荐。
根据本公开实施例的第五方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如上述任一项所述的推荐模型的训练方法,或资源对象的推送方法。
根据本公开实施例的第六方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被电子设备的处理器执行时,使得所述电子设备能够执行如上述任一项所述的推荐模型的训练方法,或资源对象的推送方法。
根据本公开实施例的第七方面,提供一种计算机程序产品,所述计算机程序产品中包括程序指令,所述程序指令被电子设备的处理器执行时,使得所述电子设备能够执行如上述任一项所述的推荐模型的训练方法,或资源对象的推送方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
该方法先通过获取待训练的第一资源推荐模型,并将第一资源推荐模型作为待训练的学生网络;然后再获取经过预训练的第二资源推荐模型,并将第二资源推荐模型作为教师网络;然后再基于教师网络训练待训练的学生网络,以在训练过程中将教师网络的至少部分暗知识迁移至学生网络,并在学生网络训练完成后,将对应于学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于教师网络的第二资源推荐模型确定为资源推荐平台的精排模型。这样,一方面利用预训练的第二资源推荐模型作为教师网络来训练学生网络,并将训练完成的学生网络作为资源推荐平台中的粗排模型,从而优化了训练流程,加快了粗排模型的训练效率;另一方面,由于教师网络是基于经过预训练的第二资源推荐模型确定的,且在训练待训练的学生网络过程中,将教师网络的暗知识迁移至学生网络,进而再将训练完成的学生网络作为粗排模型时,使得粗排模型对资源对象进行处理的方式和效率与精排模型相近,从而保证了粗排模型的输出数据和精排模型的输出数据之间的一致性,提高了粗排模型对应输出数据的精度和准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种推荐模型的训练方法的应用环境图。
图2是根据一示例性实施例示出的一种推荐模型的训练方法的流程图。
图3是根据一示例性实施例示出的一种确定预训练的教师网络步骤的流程图。
图4是根据一示例性实施例示出的一种构建待训练的学生网络步骤的流程图。
图5是根据一示例性实施例示出的一种教师-学生网络的结构图。
图6为根据一示例性实施例示出的一种训练待训练的学生网络步骤的流程图。
图7是根据一示例性实施例示出的一种教师-学生网络的模块图。
图8是根据一示例性实施例示出的一种资源对象的推送方法的流程图。
图9是根据另一示例性实施例示出的一种资源对象的推送方法的流程图。
图10是根据一示例性实施例示出的一种推荐模型的训练装置的框图。
图11为根据一示例性实施例示出的一种资源对象的推送装置的框图。
图12是根据一示例性实施例示出的一种电子设备的框图。
图13是根据一示例性实施例示出的一种计算机可读存储介质的框图。
图14是根据一示例性实施例示出的一种计算机程序产品的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例中的术语“和/或”指的是包括相关联的列举项目中的一个或多个的任何和全部的可能组合。还要说明的是:当用在本说明书中时,“包括/包含”指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件和/或组件和/或它们的组群的存在或添加。
本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
另外,本申请中尽管多次采用术语“第一”、“第二”等来描述各种操作(或各种元件或各种应用或各种指令或各种数据)等,不过这些操作(或元件或应用或指令或数据)不应受这些术语的限制。这些术语只是用于区分一个操作(或元件或应用或指令或数据)和另一个操作(或元件或应用或指令或数据)。例如,第一预估反馈数据可以被称为第二预估反馈数据,第二预估反馈数据也可以被称为第一预估反馈数据,仅仅是其两者所包括的范围不同,而不脱离本申请的范围,第一预估反馈数据和第二预估反馈数据都是推送预测模型中需要预测的反馈数据的集合,只是二者并不是由相同的推送预测模型所预测的反馈数据的集合而已。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于显示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本申请实施例提供的推荐模型的训练方法或资源对象的推送方法,可以应用于电子设备中,该电子设备可以包括如图1所示的应用环境中的终端102和/或服务器104。其中,终端102通过通信网络与服务器104进行通信。数据存储系统可以将处理的数据存储在服务器104中,或者将存储在服务器104中的处理数据发送至终端102。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。
在一些实施例中,参考图1,电子设备首先获取第一资源推荐模型,并将第一资源推荐模型作为待训练的学生网络;第一资源推荐模型用于确定多个样本资源对象各自的第一预估反馈数据,并基于第一预估反馈数据,从多个样本资源对象中筛选出候选样本对象;第一预估反馈数据表征样本资源对象被待推送用户实施预设反馈行为的预测数据;然后,电子设备再获取经过预训练的第二资源推荐模型,并将第二资源推荐模型作为预训练的教师网络;第二资源推荐模型用于确定多个候选样本对象的第二预估反馈数据,并基于第二预估反馈数据从多个候选样本对象中筛选出推荐给待推送用户的目标样本对象;第二预估反馈数据表征候选样本对象被待推送用户实施预设反馈行为的预测数据;第二资源推荐模型的复杂度高于第一资源推荐模型;然后,再基于教师网络训练学生网络,以在训练过程中将教师网络的暗知识迁移至学生网络,直到得到训练完成的学生网络;最后,再将训练完成的学生网络确定为资源推荐平台的粗排模型,以及将预训练的教师网络确定为资源推荐平台的精排模型;粗排模型用于对资源推荐平台的多个待推送资源对象进行第一轮筛选,精排模型用于对第一轮筛选出的多个候选资源对象进行第二轮筛选,以得到向待推送用户推荐的目标资源对象。
在一些实施例中,终端102(如移动终端、固定终端)可以以各种形式来实施。其中,终端102可为包括诸如移动电话、智能电话、笔记本电脑、便携式手持式设备、个人数字助理(PDA,Personal Digital Assistant)、平板电脑(PAD)等等的可以根据精排模型的反馈数据和粗排模型预测的反馈数据,将对应的目标资源对象进行推送的移动终端,终端102也可以是自动柜员机(Automated Teller Machine,ATM)、自动一体机、数字TV、台式计算机、固式计算机等等的可以根据精排模型的反馈数据和粗排模型预测的反馈数据,将对应的目标资源对象进行推送的固定终端。
下面,假设终端102是固定终端。然而,本领域技术人员将理解的是,若有特别用于移动目的的操作或者元件,根据本申请公开的实施方式的构造也能够应用于移动类型的终端102。
在一些实施例中,服务器104运行的数据处理组件可以加载正在被执行的可以包括各种附加服务器应用和/或中间层应用中的任何一种,如包括HTTP(超文本传输协议)、FTP(文件传输协议)、CGI(通用网关界面)、RDBMS(关系型数据库管理系统)等。
在一些实施例中,终端102可以用独立的数据处理器或者是多个数据处理器组成的数据处理集群来实现。服务器104可以适于运行提供前述公开中描述的各种附加服务器应用和/或中间层应用的一个或多个应用服务或软件组件。
在一些实施例中,应用服务可以包括向用户提供资源对象配置的服务界面(例如,用于用户对资源对象的数据信息进行配置的操作界面、用于向用户展示目标资源对象的展示界面),以及对应程序服务等等。其中,软件组件可以包括例如具有根据精排模型的反馈数据和粗排模型预测的反馈数据,将对应的目标资源对象进行推送功能的应用程序(SDK)或者客户端(APP)。
在一些实施例中,服务器104所提供的具有将对应的目标资源对象进行推送展示功能的应用程序或者客户端包括一个在前台向用户提供一对一应用服务的门户端口和多个位于后台进行数据处理的业务系统,以将资源对象的推送功能应用扩展到APP或者客户端,从而用户能够在任何时间任何地点进行根据精排模型的反馈数据和粗排模型预测的反馈数据,将对应的目标资源对象进行推送功能的使用和访问。
在一些实施例中,APP或者客户端的将对应的目标资源对象进行推送展示功能可为运行在用户模式以完成某项或多项特定工作的计算机程序,其可以与用户进行交互,且具有可视的用户界面。其中,APP或者客户端可以包括两部分:图形用户接口(GUI)和引擎(engine),利用这两者能够以用户界面的形式向用户提供多种应用服务的数字化客户系统。
在一些实施例中,用户可以通过终端102中的输入装置向APP或者客户端输入相应的代码数据或者控制参数,以执行服务器104中的计算机程序的应用服务,以及显示用户界面中的应用服务。
作为一种示例,当服务器需要向用户推荐一个电商产品时,则服务器104将从数据库中提取出100个电商产品,再利用粗排模型粗略计算出用户账户关于每个电商产品的预测点击率,并根据各个电商产品的预测点击率将预测点击率排在前10的10个电商产品输入到精排模型中,精排模型再对该10个电商产品精确计算预测点击率,并将该10个电商产品中预测点击率最高的1个电商产品发送至终端102,以将该个电商产品对应的产品内容展示在终端102对应的展示界面中,向用户实时地展示该电商产品的产品信息。
可选地,输入装置所对应的输入方式可以为触屏输入、按键输入、语音输入或相关控制程序输入等等。
在一些实施例中,APP或者客户端运行的操作系统可以包括各种版本的MicrosoftApple/>和/或Linux操作系统、各种商用或类/>操作系统(包括但不限于各种GNU/Linux操作系统、Google/>OS等)和/或移动操作系统,诸如/> Phone、/>OS、/>OS、/>OS操作系统,以及其它在线操作系统或者离线操作系统,在这里不做具体的限制。
在一些实施例中,如图2所示,提供了一种推荐模型的训练方法,以该方法应用于图1中的服务器104为例进行说明,该方法包括以下步骤:
步骤S11,获取待训练的第一资源推荐模型,并将第一资源推荐模型作为待训练的学生网络。
在一实施例中,第一资源推荐模型为应用于资源推荐系统中的推荐模型中的一个模型。该第一资源推荐模型用于确定多个样本资源对象各自的第一预估反馈数据,并基于第一预估反馈数据,从多个样本资源对象中筛选出候选样本对象。
具体地,在训练第一资源推荐模型的过程中,首先获取多个样本资源对象,再把各个样本资源对象输入到待训练的第一资源推荐模型中,由待训练的第一资源推荐模型对各个样本资源对象进行数据处理,以输出各样本资源对象各自的第一预估反馈数据,然后再根据第一预估反馈数据,对该多个样本资源对象进行筛选,以筛选出候选样本对象。
在一些实施例中,获取的样本资源对象为资源推荐系统中已推荐的历史资源对象,且该样本资源对象与资源推荐系统所应用的推荐领域相关。在具体实现时,可以根据系统应用的推荐领域对样本资源对象进行划分并采集,比如推荐领域为电商、音视频、自动导航或者智能运动等领域,相应的,获取的样本资源对象可以是与电商相关的推送产品样本、与音视频相关的推送音视频样本、与导航相关的推送导航样本、与运动相关的推送运动方式样本等领域的应用样本中的一类。
在一实施例中,资源推荐系统为一种用于对资源对象进行推荐评估并将资源对象推荐至用户账户的管理系统。作为示例,资源推荐系统为一电商领域中的商品推荐平台,服务器获取该商品推荐平台中已推荐过的多个推荐商品作为样本资源对象。
在一实施例中,第一预估反馈数据表征样本资源对象被待推送用户实施预设反馈行为的预测数据。
在一实施例中,第一资源推荐模型对资源对象进行的数据处理即为对资源对象进行网络推理,以对资源对象进行关于用户账户的反馈行为的预测,即预测用户账户在收到推荐的资源对象后,是否实施资源对象所对应的反馈行为。
在一些实施例中,用户账户的反馈行为由资源对象所对应的推送场景确定。例如,一资源对象为电商广告中的推荐产品,其推送场景为在线上向用户账户曝光该推荐产品,并且在该曝光的推荐产品中包括该推荐产品的详情介绍链接,若用户账户对该曝光推荐产品的详情介绍链接进行点击进入或者转化该推荐产品,则用户账户即实施了资源对象对应的反馈行为,若用户账户对该曝光推荐产品的详情介绍链接未进行点击进入或者未转化该推荐产品,则用户账户即未实施资源对象对应的反馈行为。其中,该反馈行为包括点击该详情介绍链接、转发该推荐产品、消费该推荐产品、收藏该推荐产品等等。
步骤S12:获取经过预训练的第二资源推荐模型,并将第二资源推荐模型作为教师网络。
在一实施例中,第二资源推荐模型为应用于资源推荐系统中的推荐模型中的区别于第一资源推荐模型的另一个模型。该第二资源推荐模型用于确定多个候选样本对象的第二预估反馈数据,并基于第二预估反馈数据从多个候选样本对象中筛选出推荐给待推送用户的目标样本对象。
具体地,在训练第二资源推荐模型的过程中,首先获取第一资源推荐模型筛选出候选样本对象,再把各个候选样本对象输入到待训练的第二资源推荐模型中,由待训练的第二资源推荐模型对各个候选样本对象进行数据处理,以输出各候选样本对象各自的第二预估反馈数据,然后再根据第二预估反馈数据,对该多个候选样本对象进行筛选,以筛选出目标样本对象。
在一实施例中,第二资源推荐模型对资源对象进行的数据处理即为对资源对象进行网络推理,以对资源对象进行关于用户账户的反馈行为的预测,即预测用户账户在收到推荐的资源对象后,是否实施资源对象所对应的反馈行为。
在一实施例中,第二预估反馈数据表征候选样本对象被待推送用户实施预设反馈行为的预测数据。
其中,第一资源推荐模型得到的第一反馈数据和第二资源推荐模型得到的第二反馈数据均表征资源对象在经过资源推荐系统的推荐后,被待推送用户实施预设反馈行为的预测数据。
在一实施例中,该预测数据可以为学生网络或者教师网络针对资源对象被待推送用户实施预设反馈行为所预测的概率。
其中,预测的概率包括预测训练样本被待推送用户实施预设反馈行为的第一概率值或者预测训练样本未被待推送用户实施预设反馈行为的第二概率值。
在一实施例中,待训练的推荐模型包括待训练的第一资源推荐模型和第二资源推荐模型,且第二资源推荐模型的复杂度高于第一资源推荐模型。
具体地,第二资源推荐模型为一种复杂但推理性能优越的预测模型,第一资源推荐模型为一种相较于第二资源推荐模型更简易但推理性能较弱的预测模型,其两者均可以是由大量的与推送资源相关的目标领域的训练样本训练生成的一种深度学习模型。
在一些实施例中,第一资源推荐模型和第二资源推荐模型均用于对资源对象进行推荐预测并得到预测的推荐数据。
在一些实施例中,推送资源相关的目标领域表征需要生成的预测模型的应用领域,比如将预测模型的应用领域划分为电商、音视频、导航、运动等领域。
在一些实施例中,预测模型可以是如多层的RNN(Recurrent Neural Network,循环神经网络)、CNN(Convolutional Neural Network,卷积神经网络)、Transformer(自注意力机制)或其它任意结构的网络模型,本申请对此不作限制。
步骤S13:基于教师网络训练待训练的学生网络,以在训练过程中将教师网络的至少部分暗知识迁移至学生网络,并在学生网络训练完成后,将对应于学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于教师网络的第二资源推荐模型确定为资源推荐平台的精排模型。
在一实施例中,在推荐模型的训练过程中,将第二资源推荐模型用作为教师网络和将第一资源推荐模型用作为待训练的学生网络,以通过对教师网络进行知识蒸馏得到学生网络。其中,知识蒸馏用于基于教师网络中的至少部分暗知识(包括教师网络学习到的训练信息)来训练待训练的学生网络。
在一些实施例中,知识蒸馏是基于一个教师网络和一个学生网络作为框架进行的网络训练方式,即服务器将单个复杂的教师网络学习到的知识蒸馏到简单的学生网络中,从而在一定程度上在保证学生网络的训练速度的同时有效地提升了学生网络推理的准确率。
具体地,对教师网络进行知识蒸馏即为从教师网络中提取出有用的信息和知识来作为学生网络训练过程中的指导,通过从教师网络提取的有用信息和知识(包括网络处理、网络层和权重)对学生网络进行训练学习,以将教师网络中的暗知识迁移至学生网络,从而学生网络可以获得比直接单独训练学生网络更加优良的性能。
其中,学生网络和教师网络之间的网络参数可以相似或者具有一定的规律性,其网络参数包括超参数、模型层数、模型的参数数量等等。
在某些实施例中,教师网络的数量可以包括1个也可以大于1个,即服务器可以动态地选择多个教师网络并为多个教师网络分配适合的权重比例来进行知识蒸馏,以训练待训练的学生网络,由此能够使多个教师网络将有效的知识信息进行蒸馏给学生网络,以使蒸馏学习得到的学生网络表现达到最佳,提高了用户体验。
在某些实施例中,在知识蒸馏的过程中,需要对各网络(包括学生网络和教师网络)进行多轮(epoch)网络迭代训练。其一次迭代周期表示进行一轮网络的迭代训练,即完成一次对全部样本训练集的迭代训练。其中,在每一轮迭代训练中,根据设定的迭代步长(batch_size)完成在当前迭代周期内,至少一次对样本训练集的正向传播和反向传播的过程。
在一实施例中,在学生网络训练完成后,确定的粗排模型用于对资源推荐平台的多个待推送资源对象进行第一轮筛选,以及确定的精排模型用于对第一轮筛选出的多个候选资源对象进行第二轮筛选,以得到向待推送用户推荐的目标资源对象。
在一实施例中,粗排模型执行的第一轮筛选包括确定输入的多个待推送资源对象各自的第一预估反馈数据,并基于第一预估反馈数据,从多个待推送资源对象中筛选出候选资源对象并提供给精排模型。
在一些实施例中,待推送资源对象为服务器从数据库中召回的资源对象,且其数量大于两个。
在一些实施例中,粗排模型确定多个待推送资源对象各自的第一预估反馈数据包括:服务器首先将各个待推送资源对象输入到粗排模型中进行网络推理,得到针对各个待推送资源对象的第一预估反馈数据,然后,粗排模型再根据各第一预估反馈数据之间的差异,从待推送资源对象中筛选出候选资源对象,并将候选资源对象推送给精排模型。
在一实施例中,精排模型执行的第二轮筛选包括确定输入的候选资源对象的第二预估反馈数据,并基于第二预估反馈数据从候选资源对象中筛选出推送给用户账户的目标资源对象。
其中,候选资源对象的数量包括至少两个,且候选资源对象的数量少于待推送资源对象的数量,目标资源对象的数量不大于候选资源对象的数量。
在一些实施例中,精排模型确定候选推送资源对象的第二预估反馈数据包括:服务器首先将各个候选资源对象输入到精排模型中进行网络推理,得到针对各个候选资源对象的第二预估反馈数据,然后,精排模型再根据各第二预估反馈数据之间的差异,从候选资源对象中筛选出目标资源对象,并将目标资源对象推送给用户账户。
在一实施例中,第一预估反馈数据和第二预估反馈数据均表征候选资源对象被用户账户实施预设反馈行为的预测数据。
在一实施例中,该预测数据可以为精排模型针对候选资源对象被用户账户实施预设反馈行为所预测的概率或者分类类型。
其中,预测的概率包括预测候选资源对象被用户账户实施预设反馈行为的概率值或者预测候选资源对象未被用户账户实施预设反馈行为的概率值;预测的分类类型包括预测候选资源对象被用户账户实施预设反馈行为或者预测候选资源对象未被用户账户实施预设反馈行为。
在一具体训练场景中,服务器首先从数据库中召回预设数量个预训练样本,通过该预设数量个预训练样本训练得到精排模型;然后,服务器将精排模型作为知识蒸馏学习中的教师网络,并通过该教师网络来训练待训练的学生网络,以在训练待训练的学生网络过程中对教师网络进行知识蒸馏,从而将教师网络的暗知识迁移至学生网络,得到训练完成的学生网络;然后,服务器将该训练完成的学生网络作为粗排模型,从而得到预训练完成的推送模型。
在一具体应用场景中,即在得到预训练完成的推送模型之后,服务器再从数据库中召回S1个待推送资源对象,并将该S1个待推送资源对象输入到预训练完成的粗排模型中得到对应于各待推送资源对象的第一预估反馈数据;然后,服务器基于各第一预估反馈数据,从该S1个待推送资源对象中筛选出P2(P1>P2)个候选资源对象并提供给预训练完成的精排模型得到对应于各候选资源对象的第二预估反馈数据;最后,服务器基于各第二预估反馈数据从候选资源对象中筛选出P3(P2>P3)个目标资源对象,并将目标资源对象推送给用户账户。
上述的推荐模型的训练过程中,服务器首先获取待训练的第一资源推荐模型,并将第一资源推荐模型作为待训练的学生网络;然后再获取经过预训练的第二资源推荐模型,并将第二资源推荐模型作为教师网络;然后再基于教师网络训练待训练的学生网络,以在训练过程中将教师网络的至少部分暗知识迁移至学生网络,并在学生网络训练完成后,将对应于学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于教师网络的第二资源推荐模型确定为资源推荐平台的精排模型。这样,一方面利用预训练的第二资源推荐模型作为教师网络来训练学生网络,并将训练完成的学生网络作为资源推荐平台中的粗排模型,从而优化了训练流程,加快了粗排模型的训练效率;另一方面,由于教师网络是基于经过预训练的第二资源推荐模型确定的,且在训练待训练的学生网络过程中,将教师网络的暗知识迁移至学生网络,进而再将训练完成的学生网络作为粗排模型时,使得粗排模型对资源对象进行处理的方式和效率与精排模型相近,从而保证了粗排模型的输出数据和精排模型的输出数据之间的一致性,提高了粗排模型对应输出数据的精度和准确性。
本领域技术人员可以理解地,在具体实施方式的上述方法中,所揭露的方法可以通过更为具体的方式以实现。例如,以上所描述的服务器基于教师网络训练学生网络,以在训练过程中将教师网络的暗知识迁移至学生网络的实施方式仅仅是示意性的。
示例性地,服务器将训练完成的学生网络确定为资源推荐平台的粗排模型的方式;或者服务器将预训练的教师网络确定为资源推荐平台的精排模型的方式等等,其仅仅为一种集合的方式,实际实现时可以有另外的变换方式,例如粗排模型确定的待推送资源对象的第一预估反馈数据、精排模型确定的候选资源对象各自的第二预估反馈数据之间可以结合或者可以集合到另一个系统中,或一些特征可以忽略,或不执行。
在一种示例性实施例中,参阅图3,图3为本申请中确定预训练的教师网络一实施例的流程示意图。在步骤S11之前,即服务器在获取经过预训练的第二资源推荐模型,并将第二资源推荐模型作为教师网络之前,还具体可以通过包括以下方式:
步骤a1,获取预训练样本资源对象和预训练样本资源对象对应的实际反馈数据。
在一实施例中,预训练样本包括样本资源对象和针对于样本资源对象的特征数据。
在一些实施例中,样本资源对象为各个可推送主体,如向用户账户推送曝光的各种样式的包括网络产品(如图片、音视频、商品)、线上广告或者网络服务等。
在一些实施例中,针对于样本资源对象的特征数据包括关于待推送用户的用户特征、关于样本资源对象的资源对象特征和交叉特征,其中,交叉特征为用户特征与资源对象特征之间的关联特征。
例如,用户特征可以为待推送用户的各种用户属性特征(包括职业、年龄、性别、学历、地址等)和账户属性特征(包括浏览记录、账户等级、关注列表等);资源对象特征可以为资源对象自身的对象属性特征(包括产品属性特征、服务类别特征、功能属性特征等)。交叉特征可以为用户特征与资源对象特征之间的匹配特征(包括年龄特征与功能属性特征之间的匹配特征、性别特征与产品属性特征之间的匹配特征、地址特征与服务类别特征之间的匹配特征等),和/或待推送用户与样本资源对象之间的历史应用特征(包括待推送用户对样本资源对象或者与样本资源对象相同类型的资源对象的评价特征、评分特征、留言特征、分享收藏特征等)。
步骤a2,将预训练样本资源对象的特征数据输入至待训练的第二资源推荐模型,得到针对预训练样本资源对象的预估反馈数据。
在一实施例中,预估反馈数据表征预训练样本资源对象被待推送用户实施预设反馈行为的预测数据。
在一些实施例中,服务器可以通过自动机器学习模型先自动构建待训练的资源推荐模型的网络结构(即用作教师网络的第二资源推荐模型),并设置网络结构的各初始参数,例如自动机器学习模型可以设置隐层大小、深度、卷积核大小、Transformer的深度等等,并设置网络结构相关的能够决定生成的待训练的精排模型复杂程度的参数,并且自动选择出最优的优化器参数,以得到待训练的资源推荐模型。然后,自动机器学习模型即可利用参数为初始参数的网络结构,对输入的预训练样本资源对象的特征数据进行预测,生成针对预训练样本资源对象的预估反馈数据。
可以理解的是,自动机器学习模型包括控制器,其能够通过NAS(NeuralArchitecture Search,神经网络结构搜索算法),例如强化学习或进化算法,在自动机器学习模型生成的网络结构的性能较高时,学习出性能更优的网络结构,比如在生成的网络结构的预测速度不够高时,将网络结构中影响预测速度的网络单元替换为能够使网络结构的预测速度更快的网络单元。在本实施例中,自动机器学习模型在确定构建的网络结构的各参数后,还可以确定网络结构的预测速度、准确性等性能,在生成的网络结构的性能较高时,通过NAS算法,训练出性能更优的网络结构作为待训练的资源推荐模型。
步骤a3,基于预估反馈数据与预训练样本资源对象对应的实际反馈数据之间的差异,调整待训练的第二资源推荐模型,直到得到经过预训练的第二资源推荐模型,并将第二资源推荐模型作为预训练的教师网络。
在一实施例中,实际反馈数据包括对应于预训练样本被用户账户实施预设反馈行为的实际数据和对应于预训练样本未被用户账户实施预设反馈行为的实际数据。
在一些实施例中,服务器根据预估反馈数据与对应的实际反馈数据之间的差异,确定出待训练的第二资源推荐模型当前的模型损失值。然后,服务器根据模型损失值调整待训练的第二资源推荐模型的模型参数。
其中,服务器在根据模型损失值调整模型参数时,可以采用梯度下降方法朝着使模型对应的损失值下降的方向对模型参数进行调整。
其中,服务器在根据预估反馈数据与对应的实际反馈数据之间的差异,确定模型损失值后,可以朝着使模型损失值变小的方向调整精排模型的模型参数。在对待训练的第二资源推荐模型进行训练的过程中,通过逐步地对模型参数进行调整,直到满足训练结束条件时,可以得到预训练的第二资源推荐模型,该第二资源推荐模型可以基于输入的资源对象的对象特征进行行为反馈预估,得到关于资源对象的预估反馈数据。
在一种示例性实施例中,参阅图4,图4为本申请中构建待训练的学生网络一实施例的流程示意图。在步骤S12之前,即服务器在基于教师网络训练学生网络,以在训练过程中将教师网络的至少部分暗知识迁移至学生网络之前,具体还可以包括以下方式:
步骤b1,获取教师网络的网络类型和网络结构。
在一些实施例中,网络结构可以是如多层的RNN(Recurrent Neural Network,循环神经网络)、CNN(Convolutional Neural Network,卷积神经网络)、Transformer(自注意力机制)或其它任意结构的网络模型,本申请对此不作限制。
在一些实施例中,网络类型可以是如是ResNet-34、ResNet-50等类型的神经网络。
步骤b2,基于教师网络的网络类型和网络结构构建待训练的学生网络。
其中,待训练的学生网络与教师网络的网络类型相同,学生网络的中间层数少于教师网络的中间层数,以及学生网络的各中间层分别与教师网络中对应的一中间层相对应。
在一实施例中,服务器基于教师网络的网络类型和网络结构,构建相同网络类型和网络结构的学生网络。
其中,学生网络中的各中间层分别与教师网络中对应的一奇数位次的中间层相对应,或者,学生网络中的各中间层分别与教师网络中对应的一偶数位次的中间层相对应。
在一种示例性实施例中,参阅图5,图5为本申请中教师-学生网络一实施例的网络结构示意图。在该教师-学生网络的网络结构示意图中,教师网络共包括6个中间层(即A2、A3、A4、A5、A6、A7),学生网络共包括3个中间层(即B2、B3、B4),其中,第A2层与B2层相对应,第A4层与B3层相对应,第A6层与B3层相对应,以及教师网络的输出层A8与学生网络的输出B5相对应。
在一示例性实施例中,参阅图6,图6为本申请中训练待训练的学生网络一实施例的流程示意图。在步骤S12中,即服务器基于教师网络训练学生网络,以在训练过程中将教师网络的至少部分暗知识迁移至学生网络的过程,具体还可以通过以下方式实现:
步骤S121,在每一次迭代过程中,基于当前学生网络的中间层的权重参数与当前教师网络的中间层的权重参数之间的差异,确定教师-学生网络之间的权重损失函数信息。
在一实施方式中,服务器确定教师-学生网络之间的权重损失函数信息,包括:
步骤一:获取当前学生网络中各中间层的第一权重参数,以及当前教师网络中各目标中间层的第二权重系数。
其中,目标中间层为与当前学生网络的中间层相对应的中间层。
步骤二:基于第一权重参数与第二权重参数之间的均方误差或者信息散度,确定教师-学生网络之间的权重损失函数信息。
在一种具体实现中,首先,服务器获取学生网络的各中间层的第一权重系数和对应在教师网络中相对应的各中间层的第二权重系数;然后,服务器基于预设的指数函数分别对第一权重系数和第二权重系数进行归一化处理,得到关于第一权重系数的第一处理值和关于第二权重系数的第二处理值;然后,基于第一处理值和第二处理值之间的信息散度,确定针对教师-学生网络的信息散度损失函数,并将信息散度损失函数作为权重损失函数,以确定针对教师-学生网络之间的权重损失函数信息。
其中,信息散度也可以称为信息增益、信息熵或者相对熵,信息增益表征第一处理值和第二处理值之间的KL(Kullback-Leibler divergence)散度。信息散度损失函数即为KL散度损失函数。
其中,针对教师-学生网络之间的权重损失函数信息可以基于如下表达式表征:
weight loss=KL(weightteachuer||weightstudent);
其中,weightteachuer表征关于第一权重系数的第一处理值,weightstudent表征关于第二权重系数的第二处理值,KL表征两个数据之间的信息增益。
在另一种具体实现中,首先,服务器获取学生网络的各中间层的第一权重系数和对应在教师网络中相对应的各中间层的第二权重系数;然后,基于预设的指数函数分别对第一权重系数和第二权重系数进行归一化处理,得到关于第一权重系数的第一处理值和关于第二权重系数的第二处理值;然后,基于第一处理值和第二处理值之间的均方误差,确定针对教师-学生网络的均方差损失函数;然后,将均方差损失函数和针对教师网络的交叉熵损失函数两者的之差作为权重损失函数,以确定针对教师-学生网络之间的权重损失函数信息。
其中,均方误差(Mean Square Error,MSE)表征第一处理值和第二处理值之间差值平方的均值,均方差损失函数即为MSE损失函数。
其中,针对教师-学生网络之间的权重损失函数信息可以基于如下表达式表征:
weight loss=MSE(weightteachuer,weightstudent)-H(weightteachuer);
其中,weightteachuer表征关于第一预估反馈数据的第一预测值,weightstudent表征关于第二预估反馈数据的第二预测值,MSE表征两个数据之间的均方误差。
步骤S122,在每一次迭代过程中,基于当前学生网络、当前教师网络针对相同样本资源对象各自输出的预估反馈数据之间的差异,确定教师-学生网络之间的蒸馏损失函数信息。
在一实施方式中,服务器确定教师-学生网络之间的蒸馏损失函数信息,包括:
步骤一:针对相同样本资源对象,将第一特征数据输入当前学生网络,通过当前学生网络得出样本资源对象的第一预估反馈数据;以及,将第二特征数据输入当前教师网络,通过当前教师网络得出样本资源对象的第二预估反馈数据。
其中,第一特征数据包括待推送用户的用户特征和资源对象特征,第二特征数据包括待推送用户的用户特征、资源对象特征和交叉特征;交叉特征为用户特征与资源对象特征之间的关联特征。
在一实施例中,在当前教师网络的全连接层中和当前学生网络的全连接层中均配置有预设指数函数。
在一些实施例中,服务器通过当前学生网络得出样本资源对象的第一预估反馈数据,包括:将第一特征数据输入当前学生网络,通过当前学生网络得出样本资源对象的第一初始预估反馈数据,并基于预设指数函数,对第一初始预估反馈数据进行处理,得到样本资源对象的第一预估反馈数据。
在一些实施例中,服务器通过当前教师网络得出样本资源对象的第二预估反馈数据,包括:将第二特征数据输入当前教师网络,通过当前教师网络得第二初始预估反馈数据,并基于预设指数函数,对第二初始预估反馈数据进行处理,得到样本资源对象的第二预估反馈数据。
其中,预设指数函数用于调节当前教师网络、当前学生网络中的全连接层针对多个样本资源对象对应输出的多个预估反馈数据的数据分布,使得数据分布趋向平滑。
在一些实施例中,预设指数函数为一个携带有温度系数T的soft max函数,其中,该温度系数T为服务器为教师-学生网络配置的一个控制系数,且T>1,该soft max函数用于将当前教师网络或者当前学生网络输出的各种类别的预测结果平滑化,以强化对除最大类别(正标签)之外的其他类别的关注程度。
作为一示例,若soft max函数中携带的温度系数T越大,则对应当前教师网络或者当前学生网络输出的各种类别的预测结果所对应的概率值差距变大→输出的各种类别的预测结果之间的概率分布熵变大→输出的非最大类别(负标签)的概率值变大→当前学生网络和当前教师网络之间的交叉熵的差异变大→当前学生网络从对应于当前教师网络的蒸馏损失中学到更多额外的信息(即学到更多负标签的信息)。
其中,携带有温度系数T的soft max函数可以基于如下表达式表征:
其中,qi是指:通过带有温度系数T的soft max函数计算的关于某种分类标签的概率;该分类标签的概率qi包括q1和q2;q1是指的正标签的概率,q2是指负标签的概率。
其中,zi是指:当前学生网络或者当前教师网络输出的关于待推送用户的某一种类的反馈行为(例如,点击/转化/点击后转化)的预估值。
其中,zj是指:当前学生网络或者当前教师网络输出的关于待推送用户的全部种类的反馈行为(例如,点击/转化/点击后转化)的总预估值。
步骤二:基于第一预估反馈数据和第二预估反馈数据之间的均方误差或者信息散度,确定教师-学生网络之间的蒸馏损失函数信息。
在一种具体实现中,首先,服务器获取第一预估反馈数据和第二预估反馈数据;其中,第一预估反馈数据基于第一预测值表征,第二预估反馈数据基于第二预测值表征;然后,服务器基于第一预测值和第二预测值之间的信息散度,确定针对教师-学生网络的信息散度损失函数,并将信息散度损失函数作为蒸馏损失函数,以确定针对教师-学生网络之间的蒸馏损失函数信息。
其中,第一预测值表征样本资源对象被用户账户实施预设反馈行为的概率值或者样本资源对象不被用户账户实施预设反馈行为的概率值;第二预测值表征样本资源对象被用户账户实施预设反馈行为的概率值或者样本资源对象不被用户账户实施预设反馈行为的概率值。
其中,针对教师-学生网络之间的蒸馏损失函数信息可以基于如下表达式表征:
distill loss=KL(predictteachuer||predictstudent);
其中,predictteachuer表征关于第一预估反馈数据的第一预测值,predictstudent表征关于第二预估反馈数据的第二预测值,KL表征两个数据之间的信息增益。
在另一种实施方式中,首先,服务器获取第一预估反馈数据和第二预估反馈数据;其中,第一预估反馈数据基于第一预测值表征,第二预估反馈数据基于第二预测值表征;然后,服务器基于第一预测值和第二预测值之间的均方误差,确定针对教师-学生网络的均方差损失函数;然后,将均方差损失函数和针对当前教师网络的交叉熵损失函数两者的之差作为蒸馏损失函数,以确定针对教师-学生网络之间的蒸馏损失函数信息。
其中,针对教师-学生网络之间的蒸馏损失函数信息可以基于如下表达式表征:
distill loss=MSE(predictteachuer,predictstudent)-H(predictteachuer);
其中,predictteachuer表征关于第一预估反馈数据的第一预测值,predictstudent表征关于第二预估反馈数据的第二预测值,MSE表征两个数据之间的均方误差。
步骤S123,根据蒸馏损失函数信息和权重损失函数信息,确定针对当前学生网络的综合损失函数信息。
作为一示例,服务器配置蒸馏损失函数信息对应的权重信息为A1,权重损失函数信息对应的权重信息为A2,然后,将各损失函数以及各损失函数对应的权重信息融合为一个针对待训练的学生网络对应的综合损失函数信息。
步骤S124,基于综合损失函数信息更新当前学生网络。
在一些实施例中,服务器基于综合损失函数信息来更新学生网络的网络参数,直至得到训练完成的学生网络。其中,在根据综合损失函数信息更新网络参数时,可以采用梯度下降方法朝着使网络对应的损失值下降的方向对网络参数进行更新。
在另一示例性实施例中,参阅图7,图7为本申请中教师-学生网络一实施例的模块示意图。在步骤S12中,在服务器根据蒸馏损失函数信息和权重损失函数信息,确定针对待训练的学生网络的综合损失函数信息的过程中,具体还可以通过以下方式实现:
步骤一:获取当前学生网络的第一交叉熵损失函数信息和当前教师网络的第二交叉熵损失函数信息。
在一实施例中,第一交叉熵损失函数信息表征当前学生网络针对第一样本资源对象输出的第一预估反馈数据与第一样本资源对象对应的第一实际反馈数据的之间的差异。
在一实施例中,服务器获取当前学生网络的第一交叉熵损失函数信息,包括:首先,获取样本资源对象的第一特征数据;然后,将第一特征数据输入当前学生网络,通过当前学生网络得出初始预估反馈数据,并基于针对当前学生网络中的全连接层配置的预设指数函数对初始预估反馈数据进行归一化处理,得到第一预估反馈数据;然后,基于第一预估反馈数据和样本资源对象对应的第一实际反馈数据之间的交叉熵函数,确定当前学生网络的第一交叉熵损失函数信息。
其中,第一特征数据包括用户特征和资源对象特征。
在一些实施例中,第一指数函数用于全连接层识别初始预估反馈数据为对应于样本资源对象被待推送用户实施预设反馈行为或者未被待推送用户实施预设反馈行为的第一预估反馈数据。
具体地,全连接层识别初始预估反馈数据是通过建立了一个以soft max函数为归一化处理函数的神经网络对初始预估反馈数据进行识别,以确定样本资源对象的样本标签。其中,初始预估反馈数据在经过以soft max函数为归一化处理函数的神经网络进行识别后,被表示为“0”或“1”的样本标签,标签“0”表征该样本资源对象被待推送用户实施预设反馈行为,标签“1”表征该样本资源对象未被待推送用户实施预设反馈行为。
作为一示例,第一实际反馈数据包括标签“0”或者标签“1”的样本标签,其中,标签“0”对应于样本资源对象被待推送用户实施预设反馈行为的实际反馈数据A3,标签“1”对应于样本资源对象未被待推送用户实施预设反馈行为的实际反馈数据A4。
作为另一示例,第一预估反馈数据即为粗排模型针对于当前学生网络输出的关于训练样本的学生预测结果,其中,学生预测结果包括对应于样本资源对象被待推送用户实施预设反馈行为的预估反馈数据B3,或者对应于样本资源对象未被待推送用户实施预设反馈行为的预估反馈数据B4。
其中,当前学生网络的第一交叉熵损失函数信息可基于下列表达式表征:
student loss=cross_entropy(label,predictstudent);
其中,label表征样本资源对象对应的第一实际反馈数据,predictstudent表征当前学生网络针对输入的样本资源对象输出的第一预估反馈数据,cross_entropy表征两种数据之间的交叉熵。
在一实施例中,第二交叉熵损失函数信息表征当前教师网络针对第二样本资源对象输出的第二预估反馈数据与第二样本资源对象对应的第二实际反馈数据的之间的差异。
在一实施例中,服务器获取当前教师网络的第二交叉熵损失函数信息,包括:首先,获取样本资源对象的第二特征数据;然后,将第二特征数据输入当前教师网络,通过当前教师网络得出初始预估反馈数据,并基于针对当前教师网络中的全连接层配置的预设指数函数对初始预估反馈数据进行归一化处理,得到第二预估反馈数据;然后,基于第二预估反馈数据和样本资源对象对应的第二实际反馈数据之间的交叉熵函数,确定当前教师网络的第二交叉熵损失函数信息。
其中,第二特征数据包括用户特征、资源对象特征和交叉特征;交叉特征为用户特征和资源对象特征之间的关联特征。
在一些实施例中,第二指数函数用于全连接层识别初始预估反馈数据为对应于样本资源对象被待推送用户实施预设反馈行为或者未被待推送用户实施预设反馈行为的第二预估反馈数据。
具体地,全连接层识别初始预估反馈数据是通过建立了一个以soft max函数为归一化处理函数的神经网络对初始预估反馈数据进行识别,以确定样本资源对象的样本标签。其中,初始预估反馈数据在经过以soft max函数为归一化处理函数的神经网络进行识别后,被表示为“0”或“1”的样本标签,标签“0”表征该样本资源对象被待推送用户实施预设反馈行为,标签“1”表征该样本资源对象未被待推送用户实施预设反馈行为。
作为一示例,第二实际反馈数据包括标签“0”或者标签“1”的样本标签,其中,标签“0”对应于样本资源对象被待推送用户实施预设反馈行为的实际反馈数据A1,标签“1”对应于样本资源对象未被待推送用户实施预设反馈行为的实际反馈数据A2。
作为另一示例,第二预估反馈数据即为精排模型针对于当前教师网络输出的关于训练样本的教师预测结果,其中,教师预测结果包括对应于样本资源对象被待推送用户实施预设反馈行为的预估反馈数据B1,或者对应于样本资源对象未被待推送用户实施预设反馈行为的预估反馈数据B2。
其中,当前教师网络的第二交叉熵损失函数信息可基于下列表达式表征:
teacher loss=cross_entropy(label,predictteachuer);
其中,label表征样本资源对象对应的第二实际反馈数据,predictteachuer表征当前教师网络针对输入的样本资源对象输出的第二预估反馈数据,cross_entropy表征两种数据之间的交叉熵。
步骤二:根据第一交叉熵损失函数信息、第二交叉熵损失函数信息、蒸馏损失函数信息和权重损失函数信息,以及各损失函数各自对应的权重信息,确定针对当前学生网络的综合损失函数信息。
作为一示例,服务器配置第一交叉熵损失函数信息对应的权重信息为X1,第二交叉熵损失函数信息对应的权重信息为X2,蒸馏损失函数信息对应的权重信息为X3,权重损失函数信息对应的权重信息为X4,然后,将各损失函数以及各损失函数对应的权重信息融合为一个针对当前学生网络对应的综合损失函数信息,以利用该综合损失函数信息更新当前学生网络,直至得到训练完成的学生网络。
在一些实施例中,如图8所示,图8提供了一种资源对象的推送方法的流程示意图,以该方法应用于图1中的终端102为例进行说明,该方法包括以下步骤:
步骤S21,将资源推荐平台中的多个待推送资源对象输入粗排模型,由粗排模型确定多个待推送资源对象各自的第一预估反馈数据,并基于第一预估反馈数据对多个待推送资源对象进行第一轮筛选,筛选出多个候选资源对象。
在一实施例中,待推送资源对象为终端从数据库中召回的多个可向用户账户推送的推送主体,如向用户账户推送曝光的各种样式的包括网络产品(如图片、音视频、商品)、线上广告或者网络服务等。
在一实施例中,待推送资源对象的预估反馈数据表征待推送资源对象被用户账户实施预设反馈行为的预测数据和待推送资源对象未被用户账户实施预设反馈行为的预测数据。
在一实施例中,粗排模型确定多个待推送资源对象对应的第一预估反馈数据,包括:终端将待推送资源对象的第一特征数据输入粗排模型中,由粗排模型对第一特征数据进行处理,以确定出多个待推送资源对象各自的第一预估反馈数据。
在一实施例中,待推送资源对象的第一特征数据包括:多个待推送资源对象各自的资源对象特征和待推送用户的用户特征。
在一实施例中,粗排模型执行的第一轮筛选包括基于多个待推送资源对象各自的第一预估反馈数据,从多个待推送资源对象中筛选出候选资源对象。
具体地,粗排模型首先将多个待推送资源对象各自的第一预估反馈数据和对应的资源指标值相乘,得到对应的推送能量值,然后,粗排模型按照多个待推送资源对象各自的推送能量值之间的大小顺序进行先后排序,并筛选出排序在前预设数量的候选资源对象。
其中,资源指标值是设计工程师基于待推送资源对象配置的推送参数(如,资源对象的曝光次数、曝光收益等)。
在一实施例中,推送能量值用于待推送资源对象对应的推送方再将待推送资源对象对待推送用户进行推送之后,能够获得的资源回报率。其中,推送能量值越高,其对应的资源回报率越高;推送能量值越低,其对应的资源回报率越低。
步骤S22,将多个候选资源对象输入精排模型,由精排模型确定多个候选资源对象对应的第二预估反馈数据,并基于第二预估反馈数据对多个候选资源对象进行第二轮筛选,以确定出目标资源对象。
在一些实施例中,第二预估反馈数据表征候选资源对象被待推送用户实施预设反馈行为的预测数据。
在一实施例中,精排模型确定候选资源对象对应的第二预估反馈数据,包括:终端将候选资源对象的第二特征数据输入精排模型,由精排模型确定出关于候选资源对象的第二预估反馈数据。
在一实施例中,候选资源对象的第二特征数据包括:候选资源对象的资源对象特征、待推送用户的用户特征和交叉特征;其中,交叉特征为资源对象特征与用户特征之间的关联特征。
在一实施例中,精排模型执行的第二轮筛选包括基于多个候选资源对象各自的第二预估反馈数据,从多个候选资源对象中筛选出目标资源对象。
具体地,精排模型首先将多个候选资源对象各自的第二预估反馈数据和对应的资源指标值相乘,得到对应的推送能量值,然后,服务器按照多个候选资源对象各自的推送能量值之间的大小顺序进行先后排序,并筛选出排序在最前的目标资源对象。
在一实施例中,粗排模型和精排模型是基于上述实施例中的推荐模型的训练方法得到,即以粗排模型在训练过程中作为学生网络、以精排模型作为教师网络,且粗排模型为基于教师网络训练学生网络,以在训练过程中将教师网络的至少部分暗知识迁移至学生网络的方式训练得到训练完成的学生网络。
步骤S23,将目标资源对象向待推送用户进行推荐。
在一具体应用场景中,以电商应用场景为例,电子设备先从数据库中召回S1个产品广告,并将该S1个产品广告输入到资源推荐平台中的粗排模型中进行行为反馈预估,得到对应于各产品广告的预估反馈数据X1;然后,粗排模型基于各预估反馈数据X1,从该S1个产品广告中筛选出P2(P1>P2)个产品广告并提供给资源推荐平台中的精排模型中进行行为反馈预估,得到对应于各产品广告的预估反馈数据X2;最后,精排模型基于各预估反馈数据X2从各产品广告中筛选出P3(P2>P3)个目标产品广告,并将目标产品广告推送给用户账户。
为了更清晰阐明本公开实施例提供的资源对象的推送方法,以下以一个具体的实施例对该资源对象的推送方法进行具体说明。在一示例性实施例中,参考图9,图9为根据另一示例性实施例示出的一种资源对象的推送方法的流程图,该资源对象的推送方法用于电子设备中,具体包括如下内容:
步骤S31:从数据库中提取出第一数量的候选推荐资源对象,以及各个候选推荐资源对象的特征信息。
其中,候选推荐资源对象的样式可以包括是待推荐的产品、广告、图片乃至服务等等。
其中,候选推荐资源对象的特征信息包括用户账户侧特征、推荐对象侧特征、用户/对象交叉特征。
其中,用户账户侧特征可以是用户信息(如,用户ID、用户数量、用户所在区域、属性职业、年龄、性别、学历信息等等);推荐对象侧特征可以是关于推荐资源对象的描述信息(如,宣传语、推荐理由、产品属性、所属行业、作者名称等等);用户/对象交叉特征为用户账户和推荐资源对象之间相关联的特征信息(如,历史用户账户对该推荐资源对象的评价、评分、留言等等)。
步骤S32:将第一数量的候选推荐资源对象的特征信息输入到训练完成的粗排模型中进行推荐预测,得到关于候选推荐资源对象的第一预测值。
其中,粗排模型为训练完成的推送模型中的一种,其通过学生网络表征,其用于计算候选推荐资源对象的转化预测值。
其中,学生网络为了提高线上预测的时效性,学生网络的设计较为简单,比如使用3组全连接层、relu激活函数。其中,学生网络使用较为简单的少量特征来构成,从而可以让大幅度降低线上预测的时耗,但是其预测的准确度不是很高。
其中,候选推荐资源对象的转化预测值表征在将候选推荐资源对象进行推荐之后,该候选推荐资源对象被用户账户所转化的概率。
其中,转化的概率包括被用户账户点击的概率(即CTR,Click Through Rate)、被用户账户转化使用的概率(CVR,Conversion Rate)、被用户账户点击然后转化使用的概率(CTCVR,Click Through Conversion Rate)。
步骤S33:将第一数量的候选推荐资源对象的特征信息输入到调整系统中进行转化代价的调整,得到关于各个候选推荐资源对象的第一调整转化代价。
其中,第一数量的候选推荐资源对象的特征信息还包括原始转化代价、转化预测值和预设的曝光次数。
其中,转化代价表征推荐资源对象每被用户账户转化一次,该推荐资源对象对应的推荐方需要付出的可转移资源的代价。例如,用户账户每点击/转发/收藏/消费一次推荐的电商广告,则该电商广告对应的推荐方所付出一定代价的可转移资源。
其中,电子设备将第一数量的候选推荐资源对象各自的原始转化代价、转化预测值和预设的曝光次数输入到调价系统中,以对原始转化代价进行调整,得到关于各个候选推荐资源对象调整后的第一调整转化代价。
步骤S34:将第一数量的候选推荐资源对象各自的第一预测值和对应的第一调整转化代价之间的乘积值作为各候选推荐资源对象各自的第一推荐回收值。
其中,推荐回收值基于ecpm=cvr*auto_cpa_bid*N表征;其中,cvr为推荐资源对象被用户账户转化使用的概率,当然cvr也可以为推荐资源对象被用户账户点击的概率、推荐资源对象被用户账户点击然后转化使用的概率。auto_cpa_bid为候选推荐资源对象调整后的调整转化代价。N为候选推荐资源对象预设的曝光次数。
步骤S35:将第一数量的候选推荐资源对象按照各自对应第一推荐回收值之间的大小顺序进行先后排序,并筛选出排序在前第二数量的候选推荐资源对象。
步骤S36:将第二数量的候选推荐资源对象的特征信息输入到训练完成的精排模型中进行推荐预测,得到关于候选推荐资源对象的第二预测值。
其中,该步骤S36与上述的步骤S32相似,这里不再赘述。
步骤S37:将第二数量的候选推荐资源对象的特征信息输入到调整系统中进行转化代价的调整,得到关于各个候选推荐资源对象的第二调整转化代价。
其中,该步骤S37与上述的步骤S33相似,这里不再赘述。
步骤S38:将第二数量的候选推荐资源对象各自的第二预测值和对应的第二调整转化代价之间的乘积值作为各候选推荐资源对象各自的第二推荐回收值。
其中,该步骤S38与上述的步骤S34相似,这里不再赘述。
步骤S39:将第二数量的候选推荐资源对象按照各自对应第二推荐回收值之间的大小顺序进行先后排序,并筛选出排序在最前的目标推荐资源对象,并将目标推荐资源对象推荐给用户账户。
其中,该步骤S39与上述的步骤S35相似,这里不再赘述。
上述方案,一方面利用预训练的第二资源推荐模型作为教师网络来训练学生网络,并将训练完成的学生网络作为资源推荐平台中的粗排模型,从而优化了训练流程,加快了粗排模型的训练效率;另一方面,由于教师网络是基于经过预训练的第二资源推荐模型确定的,且在训练待训练的学生网络过程中,将教师网络的暗知识迁移至学生网络,进而再将训练完成的学生网络作为粗排模型时,使得粗排模型对资源对象进行处理的方式和效率与精排模型相近,从而保证了粗排模型的输出数据和精排模型的输出数据之间的一致性,提高了粗排模型对应输出数据的精度和准确性。
应该理解的是,虽然图2-图9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图9中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。
图10是本申请实施例提供的一种推荐模型的训练装置框图。参照图10,该推荐模型的训练装置10包括:学生网络单元11、教师网络单元12和模型训练单元13。
其中,该学生网络单元11,被配置为执行获取待训练的第一资源推荐模型,并将所述第一资源推荐模型作为待训练的学生网络;所述第一资源推荐模型用于确定多个样本资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据,从多个所述样本资源对象中筛选出候选样本对象;所述第一预估反馈数据表征所述样本资源对象被待推送用户实施预设反馈行为的预测数据;
其中,该教师网络单元12,被配置为执行获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络;所述第二资源推荐模型用于确定多个所述候选样本对象的第二预估反馈数据,并基于所述第二预估反馈数据从多个所述候选样本对象中筛选出目标样本对象;所述第二预估反馈数据表征所述候选样本对象被所述待推送用户实施预设反馈行为的预测数据;所述第二资源推荐模型的复杂度高于所述第一资源推荐模型;
其中,该模型训练单元13,被配置为执行基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络,并在所述学生网络训练完成后,将对应于所述学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于所述教师网络的第二资源推荐模型确定为所述资源推荐平台的精排模型;其中,所述粗排模型用于对所述资源推荐平台的多个待推送资源对象进行第一轮筛选,所述精排模型用于对所述第一轮筛选出的多个候选资源对象进行第二轮筛选,以得到向待推送用户推荐的目标资源对象。
在一些实施例中,在基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络方面,该模型训练单元13具体用于:
在每一次迭代过程中,基于当前学生网络的中间层的权重参数与当前教师网络的中间层的权重参数之间的差异,确定教师-学生网络之间的权重损失函数信息;以及
在每一次迭代过程中,基于当前学生网络、当前教师网络针对相同样本资源对象各自输出的预估反馈数据之间的差异,确定教师-学生网络之间的蒸馏损失函数信息;
根据所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息;
基于所述综合损失函数信息更新所述当前学生网络。
在一些实施例中,在所述根据所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息的方面,该模型训练单元13具体用于:
获取所述当前学生网络的第一交叉熵损失函数信息和所述当前教师网络的第二交叉熵损失函数信息;所述第一交叉熵损失函数信息表征所述当前学生网络针对第一样本资源对象输出的第一预估反馈数据与所述第一样本资源对象对应的第一实际反馈数据的之间的差异;所述第二交叉熵损失函数信息表征所述当前教师网络针对第二样本资源对象输出的第二预估反馈数据与所述第二样本资源对象对应的第二实际反馈数据的之间的差异;
根据所述第一交叉熵损失函数信息、所述第二交叉熵损失函数信息、所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息。
在一些实施例中,在所述基于当前学生网络、当前教师网络针对相同样本资源对象各自输出的预估反馈数据之间的差异,确定教师-学生网络之间的蒸馏损失函数信息的方面,该模型训练单元13具体用于:
针对相同样本资源对象,将第一特征数据输入所述当前学生网络,通过所述当前学生网络得出所述样本资源对象的第一预估反馈数据;以及,将第二特征数据输入所述当前教师网络,通过所述当前教师网络得出所述样本资源对象的第二预估反馈数据;其中,所述第一特征数据包括待推送用户的用户特征和资源对象特征,所述第二特征数据包括待推送用户的用户特征、资源对象特征和交叉特征;所述交叉特征为所述用户特征与所述资源对象特征之间的关联特征;
基于所述第一预估反馈数据和所述第二预估反馈数据之间的均方误差或者信息散度,确定教师-学生网络之间的蒸馏损失函数信息。
在一些实施例中,所述当前教师网络、所述当前学生网络中的全连接层均配置有预设指数函数;在所述通过所述当前学生网络得出所述样本资源对象的第一预估反馈数据,和所述通过所述当前教师网络得出所述样本资源对象的第二预估反馈数据的方面,该模型训练单元13具体还用于:
将所述第一特征数据输入所述当前学生网络,通过所述当前学生网络得出所述样本资源对象的第一初始预估反馈数据,并基于所述预设指数函数,对所述第一初始预估反馈数据进行处理,得到所述样本资源对象的第一预估反馈数据;
将所述第二特征数据输入所述当前教师网络,通过所述当前教师网络得出所述样本资源对象的第二初始预估反馈数据,并基于所述预设指数函数,对所述第二初始预估反馈数据进行处理,得到所述样本资源对象的第二预估反馈数据;
其中,所述预设指数函数用于调节所述当前教师网络、所述当前学生网络中的全连接层针对多个样本资源对象对应输出的多个预估反馈数据的数据分布,使得所述数据分布趋向平滑。
在一些实施例中,在所述基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络络之前,该模型训练单元13具体还用于:
获取所述教师网络的网络类型和网络结构;
基于所述教师网络的网络类型和网络结构构建所述待训练的学生网络;
其中,所述待训练的学生网络与所述教师网络的网络类型相同,所述学生网络的中间层数少于所述教师网络的中间层数,以及所述学生网络的各中间层分别与所述教师网络中对应的一中间层相对应。
在一些实施例中,在所述基于所述教师网络的网络类型和网络结构构建所述待训练的学生网络的方面,该模型训练单元13具体还用于:
基于所述教师网络的网络类型和网络结构,构建相同所述网络类型和所述网络结构的学生网络;
其中,所述学生网络中的各中间层分别与所述教师网络中对应的一奇数位次的中间层相对应,或者,所述学生网络中的各中间层分别与所述教师网络中对应的一偶数位次的中间层相对应。
在一些实施例中,在所述基于当前学生网络的中间层的权重参数与当前教师网络的中间层的权重参数之间的差异,确定教师-学生网络之间的权重损失函数信息的方面,该模型训练单元13具体还用于:
获取所述当前学生网络中各中间层的第一权重参数,以及所述当前教师网络中各目标中间层的第二权重系数;所述目标中间层为与所述当前学生网络的中间层相对应的中间层;
基于所述第一权重系数与所述第二权重系数之间的均方误差或者信息散度,确定教师-学生网络之间的权重损失函数信息。
在一些实施例中,在所述获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络之前,该教师网络单元12具体还用于:
获取预训练样本资源对象和所述预训练样本资源对象对应的实际反馈数据;
将所述预训练样本资源对象的特征数据输入至待训练的第二资源推荐模型,得到针对所述预训练样本资源对象的预估反馈数据;所述预估反馈数据表征所述预训练样本资源对象被待推送用户实施预设反馈行为的预测数据;
基于所述预估反馈数据与所述预训练样本资源对象对应的实际反馈数据之间的差异,调整所述待训练的第二资源推荐模型,直到得到经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为预训练的教师网络。
图11是本申请实施例提供的一种资源对象的推送装置框图。参照图11,该资源对象的推送装置10A包括:第一筛选单元11A、第二筛选单元12A和对象推送单元13A。
其中,该第一筛选单元11A,被配置为执行将资源推荐平台中的多个待推送资源对象输入粗排模型,由所述粗排模型确定所述多个待推送资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据对所述多个待推送资源对象进行第一轮筛选,筛选出多个候选资源对象;所述第一预估反馈数据表征各所述待推送资源对象被待推送用户实施预设反馈行为的预测数据;
其中,该第二筛选单元12A,被配置为执行将多个所述候选资源对象输入精排模型,由所述精排模型确定多个所述候选资源对象对应的第二预估反馈数据,并基于所述第二预估反馈数据对多个所述候选资源对象进行第二轮筛选,以确定出目标资源对象;所述第二预估反馈数据表征所述候选资源对象被待推送用户实施预设反馈行为的预测数据;其中,所述粗排模型、所述精排模型基于推荐模型的训练方法得到;
其中,该对象推送单元13A,被配置为执行将所述目标资源对象向所述待推送用户进行推荐。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图12是本申请实施例提供的一种电子设备20的框图。例如,电子设备20可以为一种服务器、电子组件或者服务器阵列等等。参照图12,电子设备20包括处理器21,其进一步处理器21可以为处理器集合,其可以包括一个或多个处理器,以及电子设备20包括由存储器22所代表的存储器资源,其中,存储器22上存储有计算机程序,例如应用程序。在存储器22中存储的计算机程序可以包括一个或一个以上的每一个对应于一组可执行指令的模块。此外,处理器21被配置为执行计算机程序时实现如上述的推荐模型的训练方法,或资源对象的推送方法。
在一些实施例中,电子设备20为服务器,该服务器中的计算系统可以运行一个或多个操作系统,包括以上讨论的任何操作系统以及任何商用的服务器操作系统。该电子设备20还可以运行各种附加服务器应用和/或中间层应用中的任何一种,包括HTTP(超文本传输协议)服务器、FTP(文件传输协议)服务器、CGI(通用网关界面)服务器、超级服务器、数据库服务器等。示例性数据库服务器包括但不限于可从(国际商业机器)等商购获得的数据库服务器。
在一些实施例中,处理器21通常控制电子设备20的整体操作,诸如与显示、数据处理、数据通信和记录操作相关联的操作。处理器21可以包括一个或多个处理器来执行计算机程序,以完成上述的方法的全部或部分步骤。此外,处理器21可以包括一个或多个模块,便于处理器21和其他组件之间的交互。例如,处理器21可以包括多媒体模块,以方便利用多媒体组件控制用户电子设备和处理器21之间的交互。
在一些实施例中,处理器21中的处理器组件还可以称为CPU(Central ProcessingUnit,中央处理单元)。处理器组件可能是一种电子芯片,具有信号的处理能力。处理器组件还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器组件也可以是任何常规的处理器等。另外,处理器组件可以由集成电路芯片共同实现。
在一些实施例中,存储器22被配置为存储各种类型的数据以支持在电子设备20的操作。这些数据的示例包括用于在电子设备20上操作的任何应用程序或方法的指令、采集数据、消息、图片、视频等。存储器22可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘、光盘或石墨烯存储器。
在一些实施例中,存储器22可以为内存条、TF卡等,可以存储电子设备20中的全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器22中。在一些实施例中,它根据处理器21指定的位置存入和取出信息。在一些实施例中,有了存储器22,电子设备20才有记忆功能,才能保证正常工作。在一些实施例中,电子设备20的存储器22按用途可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。
在一些实施例中,电子设备20还可以包括:电源组件23被配置为执行电子设备20的电源管理,有线或无线网络接口24被配置为将电子设备20连接到网络,和输入输出(I/O)接口25。电子设备20可以操作基于存储在存储器22的操作系统,例如Windows Server,MacOS X,Unix,Linux,FreeBSD或类似。
在一些实施例中,电源组件23为电子设备20的各种组件提供电力。电源组件23可以包括电源管理系统,一个或多个电源,及其他与为电子设备20生成、管理和分配电力相关联的组件。
在一些实施例中,有线或无线网络接口24被配置为便于电子设备20和其他设备之间有线或无线方式的通信。电子设备20可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。
在一些实施例中,有线或无线网络接口24经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,有线或无线网络接口24还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在一些实施例中,输入输出(I/O)接口25为处理器21和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
图13是本申请实施例提供的一种计算机可读存储介质30的框图。该计算机可读存储介质30上存储有计算机程序31,其中,当计算机程序31被电子设备20的处理器21执行时,使得电子设备20能够执行如上述的模型训练方法,或资源对象推送方法。
在本申请各个实施例中的各功能单元集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在计算机可读存储介质30中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机可读存储介质30在一个计算机程序31中,包括若干指令用以使得一台计算机设备(可以是个人计算机,系统服务器,或者网络设备等)、电子设备(例如MP3、MP4等,也可以是手机、平板电脑、可穿戴设备等智能终端,也可以是台式电脑等)或者处理器(processor)以执行本申请各个实施方式方法的全部或部分步骤。
图14是本申请实施例提供的一种计算机程序产品40的框图。该计算机程序产品40中存储有程序指令41,当程序指令41被电子设备20的处理器21执行时,使得电子设备20能够执行如上述的推荐模型的训练方法,或资源对象的推送方法。
本领域内的技术人员应明白,本申请的实施例可提供有推荐模型的训练方法、资源对象的推送方法、推荐模型的训练装置10、资源对象的推送装置10A、电子设备20、计算机可读存储介质30或计算机程序产品40。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机程序指令41(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品40的形式。
本申请是参照根据本申请实施例中的推荐模型的训练方法、资源对象的推送方法、推荐模型的训练装置10、资源对象的推送装置10A、电子设备20、计算机可读存储介质30或计算机程序产品40的流程图和/或方框图来描述的。应理解可由计算机程序产品40实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序产品40到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的程序指令41产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序产品40也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机程序产品40中的程序指令41产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些程序指令41也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的程序指令41提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的,上述的各种方法、装置、电子设备、计算机可读存储介质、计算机程序产品等根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (14)
1.一种推荐模型的训练方法,其特征在于,所述方法包括:
获取待训练的第一资源推荐模型,并将所述第一资源推荐模型作为待训练的学生网络;所述第一资源推荐模型用于确定多个样本资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据,从多个所述样本资源对象中筛选出候选样本对象;所述第一预估反馈数据表征所述样本资源对象被待推送用户实施预设反馈行为的预测数据;
获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络;所述第二资源推荐模型用于确定多个所述候选样本对象的第二预估反馈数据,并基于所述第二预估反馈数据从多个所述候选样本对象中筛选出目标样本对象;所述第二预估反馈数据表征所述候选样本对象被所述待推送用户实施预设反馈行为的预测数据;所述第二资源推荐模型的复杂度高于所述第一资源推荐模型;
基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络,并在所述学生网络训练完成后,将对应于所述学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于所述教师网络的第二资源推荐模型确定为所述资源推荐平台的精排模型;其中,所述粗排模型用于对所述资源推荐平台的多个待推送资源对象进行第一轮筛选,所述精排模型用于对所述第一轮筛选出的多个候选资源对象进行第二轮筛选,以得到向待推送用户推荐的目标资源对象。
2.根据权利要求1所述的方法,其特征在于,所述基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络,包括:
在每一次迭代过程中,基于当前学生网络的中间层的权重参数与当前教师网络的中间层的权重参数之间的差异,确定教师-学生网络之间的权重损失函数信息;以及
在每一次迭代过程中,基于当前学生网络、当前教师网络针对相同样本资源对象各自输出的预估反馈数据之间的差异,确定教师-学生网络之间的蒸馏损失函数信息;
根据所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息;
基于所述综合损失函数信息更新所述当前学生网络。
3.根据权利要求2所述的方法,其特征在于,所述根据所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息,包括:
获取所述当前学生网络的第一交叉熵损失函数信息和所述当前教师网络的第二交叉熵损失函数信息;所述第一交叉熵损失函数信息表征所述当前学生网络针对第一样本资源对象输出的第一预估反馈数据与所述第一样本资源对象对应的第一实际反馈数据的之间的差异;所述第二交叉熵损失函数信息表征所述当前教师网络针对第二样本资源对象输出的第二预估反馈数据与所述第二样本资源对象对应的第二实际反馈数据的之间的差异;
根据所述第一交叉熵损失函数信息、所述第二交叉熵损失函数信息、所述蒸馏损失函数信息和所述权重损失函数信息,确定针对所述当前学生网络的综合损失函数信息。
4.根据权利要求2所述的方法,其特征在于,所述基于当前学生网络、当前教师网络针对相同样本资源对象各自输出的预估反馈数据之间的差异,确定教师-学生网络之间的蒸馏损失函数信息,包括:
针对相同样本资源对象,将第一特征数据输入所述当前学生网络,通过所述当前学生网络得出所述样本资源对象的第一预估反馈数据;以及,将第二特征数据输入所述当前教师网络,通过所述当前教师网络得出所述样本资源对象的第二预估反馈数据;其中,所述第一特征数据包括待推送用户的用户特征和资源对象特征,所述第二特征数据包括待推送用户的用户特征、资源对象特征和交叉特征;所述交叉特征为所述用户特征与所述资源对象特征之间的关联特征;
基于所述第一预估反馈数据和所述第二预估反馈数据之间的均方误差或者信息散度,确定教师-学生网络之间的蒸馏损失函数信息。
5.根据权利要求4所述的方法,其特征在于,所述当前教师网络、所述当前学生网络中的全连接层均配置有预设指数函数;
所述通过所述当前学生网络得出所述样本资源对象的第一预估反馈数据,包括:
将所述第一特征数据输入所述当前学生网络,通过所述当前学生网络得出所述样本资源对象的第一初始预估反馈数据,并基于所述预设指数函数,对所述第一初始预估反馈数据进行处理,得到所述样本资源对象的第一预估反馈数据;
所述通过所述当前教师网络得出所述样本资源对象的第二预估反馈数据,包括:
将所述第二特征数据输入所述当前教师网络,通过所述当前教师网络得出所述样本资源对象的第二初始预估反馈数据,并基于所述预设指数函数,对所述第二初始预估反馈数据进行处理,得到所述样本资源对象的第二预估反馈数据;
其中,所述预设指数函数用于调节所述当前教师网络、所述当前学生网络中的全连接层针对多个样本资源对象对应输出的多个预估反馈数据的数据分布,使得所述数据分布趋向平滑。
6.根据权利要求2所述的方法,其特征在于,所述基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络之前,还包括:
获取所述教师网络的网络类型和网络结构;
基于所述教师网络的网络类型和网络结构构建所述待训练的学生网络;
其中,所述待训练的学生网络与所述教师网络的网络类型相同,所述学生网络的中间层数少于所述教师网络的中间层数,以及所述学生网络的各中间层分别与所述教师网络中对应的一中间层相对应。
7.根据权利要求6所述的方法,其特征在于,所述基于所述教师网络的网络类型和网络结构构建所述待训练的学生网络,包括:
基于所述教师网络的网络类型和网络结构,构建相同所述网络类型和所述网络结构的学生网络;
其中,所述学生网络中的各中间层分别与所述教师网络中对应的一奇数位次的中间层相对应,或者,所述学生网络中的各中间层分别与所述教师网络中对应的一偶数位次的中间层相对应。
8.根据权利要求6所述的方法,其特征在于,所述基于当前学生网络的中间层的权重参数与当前教师网络的中间层的权重参数之间的差异,确定教师-学生网络之间的权重损失函数信息,包括:
获取所述当前学生网络中各中间层的第一权重参数,以及所述当前教师网络中各目标中间层的第二权重参数;所述目标中间层为与所述当前学生网络的中间层相对应的中间层;
基于所述第一权重参数与所述第二权重参数之间的均方误差或者信息散度,确定教师-学生网络之间的权重损失函数信息。
9.根据权利要求1所述的方法,其特征在于,在所述获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络之前,还包括:
获取预训练样本资源对象和所述预训练样本资源对象对应的实际反馈数据;
将所述预训练样本资源对象的特征数据输入至待训练的第二资源推荐模型,得到针对所述预训练样本资源对象的预估反馈数据;所述预估反馈数据表征所述预训练样本资源对象被待推送用户实施预设反馈行为的预测数据;
基于所述预估反馈数据与所述预训练样本资源对象对应的实际反馈数据之间的差异,调整所述待训练的第二资源推荐模型,直到得到经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为预训练的教师网络。
10.一种资源对象推送方法,其特征在于,包括:
将资源推荐平台中的多个待推送资源对象输入粗排模型,由所述粗排模型确定所述多个待推送资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据对所述多个待推送资源对象进行第一轮筛选,筛选出多个候选资源对象;所述第一预估反馈数据表征各所述待推送资源对象被待推送用户实施预设反馈行为的预测数据;
将多个所述候选资源对象输入精排模型,由所述精排模型确定多个所述候选资源对象对应的第二预估反馈数据,并基于所述第二预估反馈数据对多个所述候选资源对象进行第二轮筛选,以确定出目标资源对象;所述第二预估反馈数据表征所述候选资源对象被待推送用户实施预设反馈行为的预测数据;其中,所述粗排模型、所述精排模型基于权利要求1-9任一项的方法得到;
将所述目标资源对象向所述待推送用户进行推荐。
11.一种推荐模型的训练装置,其特征在于,包括:
学生网络单元,被配置为执行获取待训练的第一资源推荐模型,并将所述第一资源推荐模型作为待训练的学生网络;所述第一资源推荐模型用于确定多个样本资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据,从多个所述样本资源对象中筛选出候选样本对象;所述第一预估反馈数据表征所述样本资源对象被待推送用户实施预设反馈行为的预测数据;
教师网络单元,被配置为执行获取经过预训练的第二资源推荐模型,并将所述第二资源推荐模型作为教师网络;所述第二资源推荐模型用于确定多个所述候选样本对象的第二预估反馈数据,并基于所述第二预估反馈数据从多个所述候选样本对象中筛选出目标样本对象;所述第二预估反馈数据表征所述候选样本对象被所述待推送用户实施预设反馈行为的预测数据;所述第二资源推荐模型的复杂度高于所述第一资源推荐模型;
模型训练单元,被配置为执行基于所述教师网络训练待训练的所述学生网络,以在训练过程中将所述教师网络的至少部分暗知识迁移至所述学生网络,并在所述学生网络训练完成后,将对应于所述学生网络的第一资源推荐模型确定为资源推荐平台的粗排模型,以及将对应于所述教师网络的第二资源推荐模型确定为所述资源推荐平台的精排模型;其中,所述粗排模型用于对所述资源推荐平台的多个待推送资源对象进行第一轮筛选,所述精排模型用于对所述第一轮筛选出的多个候选资源对象进行第二轮筛选,以得到向待推送用户推荐的目标资源对象。
12.一种资源对象的推送装置,其特征在于,包括:
第一筛选单元,被配置为执行将资源推荐平台中的多个待推送资源对象输入粗排模型,由所述粗排模型确定所述多个待推送资源对象各自的第一预估反馈数据,并基于所述第一预估反馈数据对所述多个待推送资源对象进行第一轮筛选,筛选出多个候选资源对象;所述第一预估反馈数据表征各所述待推送资源对象被待推送用户实施预设反馈行为的预测数据;
第二筛选单元,被配置为执行将多个所述候选资源对象输入精排模型,由所述精排模型确定多个所述候选资源对象对应的第二预估反馈数据,并基于所述第二预估反馈数据对多个所述候选资源对象进行第二轮筛选,以确定出目标资源对象;所述第二预估反馈数据表征所述候选资源对象被待推送用户实施预设反馈行为的预测数据;其中,所述粗排模型、所述精排模型基于权利要求1-9任一项的方法得到;
对象推送单元,被配置为执行将所述目标资源对象向所述待推送用户进行推荐。
13.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如权利要求1至9中任一项所述的推荐模型的训练方法,或权利要求10所述的资源对象的推送方法。
14.一种计算机可读存储介质,所述计算机可读存储介质中包括计算机程序,其特征在于,当所述计算机程序由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至9中任一项所述的推荐模型的训练方法,或权利要求10所述的资源对象的推送方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310899436.8A CN116955812A (zh) | 2023-07-20 | 2023-07-20 | 推荐模型的训练方法、资源对象的推送方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310899436.8A CN116955812A (zh) | 2023-07-20 | 2023-07-20 | 推荐模型的训练方法、资源对象的推送方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116955812A true CN116955812A (zh) | 2023-10-27 |
Family
ID=88445707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310899436.8A Pending CN116955812A (zh) | 2023-07-20 | 2023-07-20 | 推荐模型的训练方法、资源对象的推送方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116955812A (zh) |
-
2023
- 2023-07-20 CN CN202310899436.8A patent/CN116955812A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108648049B (zh) | 一种基于用户行为区别建模的序列推荐方法 | |
US11711447B2 (en) | Method and apparatus for real-time personalization | |
Costa-Montenegro et al. | Which App? A recommender system of applications in markets: Implementation of the service for monitoring users’ interaction | |
US10796335B2 (en) | Device, method, and computer readable medium of generating recommendations via ensemble multi-arm bandit with an LPBoost | |
US9535897B2 (en) | Content recommendation system using a neural network language model | |
WO2017071251A1 (zh) | 信息推送方法和装置 | |
CN112163676B (zh) | 多任务服务预测模型训练方法、装置、设备以及存储介质 | |
CN112100489B (zh) | 对象推荐的方法、装置和计算机存储介质 | |
CN114036398B (zh) | 内容推荐和排序模型训练方法、装置、设备以及存储介质 | |
TW201333732A (zh) | 用於客製化網站之方法及系統 | |
CN112182360A (zh) | 具有有限数据可用性的个性化推荐器 | |
CN111552835B (zh) | 文件推荐方法、装置及服务器 | |
CN111339406A (zh) | 个性化推荐方法、装置、设备及存储介质 | |
CN112989146A (zh) | 向目标用户推荐资源的方法、装置、设备、介质和程序产品 | |
WO2024051707A1 (zh) | 训练推荐模型的方法、推荐资源的方法及其装置 | |
CN113327151A (zh) | 商品对象推荐方法、装置、计算机设备及存储介质 | |
CA2918915A1 (en) | Automatic computation of keyword bids for pay-per-click advertising campaigns and methods and systems incorporating the same | |
CN112381236A (zh) | 联邦迁移学习的数据处理方法、装置、设备及存储介质 | |
CN113836388A (zh) | 信息推荐方法、装置、服务器及存储介质 | |
US20220383125A1 (en) | Machine learning aided automatic taxonomy for marketing automation and customer relationship management systems | |
CN112269942B (zh) | 一种推荐对象的方法、装置、系统及电子设备 | |
CN112948701B (zh) | 信息推荐装置、方法、设备及存储介质 | |
CN116955812A (zh) | 推荐模型的训练方法、资源对象的推送方法、装置和设备 | |
CN112418442A (zh) | 联邦迁移学习的数据处理方法、装置、设备及存储介质 | |
CN113450167A (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 |