CN110968767B - 排序引擎训练方法及装置、业务卡排序方法及装置 - Google Patents
排序引擎训练方法及装置、业务卡排序方法及装置 Download PDFInfo
- Publication number
- CN110968767B CN110968767B CN201811136714.XA CN201811136714A CN110968767B CN 110968767 B CN110968767 B CN 110968767B CN 201811136714 A CN201811136714 A CN 201811136714A CN 110968767 B CN110968767 B CN 110968767B
- Authority
- CN
- China
- Prior art keywords
- engine
- service
- sequencing
- target
- strategy
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 134
- 238000012549 training Methods 0.000 title claims abstract description 122
- 238000012163 sequencing technique Methods 0.000 claims abstract description 114
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 87
- 238000000605 extraction Methods 0.000 claims abstract description 9
- 238000011068 loading method Methods 0.000 claims description 23
- 238000011156 evaluation Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 13
- 238000007781 pre-processing Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 17
- 238000007477 logistic regression Methods 0.000 description 10
- 238000010801 machine learning Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000004140 cleaning Methods 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 235000020785 dietary preference Nutrition 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种排序引擎训练方法及装置、业务卡排序方法及装置,该排序引擎训练方法包括:按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;根据预设配置的特征相关性算法,计算提取到的特征的权重;按照计算出的权重确定目标业务场景对应的特征组合;基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型;根据训练结果确定目标业务场景的排序引擎模型。本申请改善了排序引擎的训练方法,使得经训练得到的排序引擎能够应用于多种应用场景,普适性较强。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种排序引擎训练方法及装置、业务卡排序方法及装置。
背景技术
随着互联网的发展,提供给用户的APP应用种类越来越丰富,用户可以根据自身需求而在手机等用户终端上安装诸如打车APP、外卖APP、新闻APP等各种类型的APP应用,APP应用通常会主动给用户推送一些业务消息以吸引用户使用。诸如,APP应用的后台服务器可以将多种业务消息以卡片列表的形式呈现在用户终端上,卡片列表上按照一定顺序依次排列有多张业务卡片,每张业务卡片都显示有与业务消息相关的图片和文案,点击该卡片则可以跳转至相应的网页链接,从而为用户详细的介绍或办理相关业务。
经数据分析,业务卡片在列表上的排列顺序是影响用户点击率的主要因素之一,因此如何对卡片列表上的业务卡片进行合理排序,对于APP应用的运营者而言至关重要。然而,现有的排序引擎大多只能针对特定的应用场景,一旦更换应用场景则无法适用,应用范围狭窄单一。
发明内容
有鉴于此,本申请实施例提供了一种排序引擎训练方法及装置、业务卡排序方法及装置,改善了排序引擎的训练方法,使得经训练得到的排序引擎能够应用于多种应用场景,普适性较强。
主要包括以下几个方面:
第一方面,本申请实施例提供了一种排序引擎训练方法,该训练方法应用于服务器,包括:按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;根据预设配置的特征相关性算法,计算提取到的特征的权重;按照计算出的权重确定目标业务场景对应的特征组合;基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型;根据训练结果确定目标业务场景的排序引擎模型。
在本发明较佳的实施例中,上述方法还包括:提供各类配置信息对应的输入接口;其中,配置信息的类别包括以下至少之一:特征类、样本数据类、特征相关性算法类和排序引擎模型类;按照输入接口对应的配置信息类别,加载输入接口接收到的配置信息。
在本发明较佳的实施例中,上述按照预先配置的特征集,对目标业务场景的样本数据进行特征提取的步骤之前,方法还包括:对目标业务场景的样本初始数据进行预处理,得到目标业务场景的样本数据;其中,预处理包括:数据噪声去除处理和/或数据格式化处理。
在本发明较佳的实施例中,上述预设配置的特征相关性算法包括:FM算法和/或树模型算法。
在本发明较佳的实施例中,上述按照计算出的权重确定目标业务场景对应的特征组合的步骤,包括:将权重大于设定权重阈值的特征,添加至目标业务场景对应的特征组合中;或者,按照权重由大到小的顺序选取预设数目的特征,组成目标业务场景对应的特征组合。
在本发明较佳的实施例中,上述基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型的步骤,包括:如果预先配置的排序引擎模型为多个,将特征组合和样本数据分别输入每个排序引擎模型进行训练。
在本发明较佳的实施例中,上述根据训练结果确定目标业务场景的排序引擎模型的步骤,包括:将训练结果中性能最优的训练结果对应的排序引擎模型,确定为目标业务场景的排序引擎模型。
在本发明较佳的实施例中,上述方法还包括:将目标业务场景的排序引擎模型提供给目标应用,以使目标应用通过排序引擎模型对目标业务卡进行排序。
在本发明较佳的实施例中,上述方法还包括:获取排序后的目标业务卡的点击信息;根据点击信息确定排序引擎模型的评价参数;基于评价参数调整排序引擎模型的权重参数和/或结构。
在本发明较佳的实施例中,上述方法还包括:根据调整后的排序引擎模型生成调整文件;将调整文件下发给目标应用,以使目标应用使用调整文件更新排序引擎模型。
在本发明较佳的实施例中,上述方法还包括:提供策略配置接口;通过策略配置接口接收配置策略;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略;将配置策略下发至目标应用,以使目标应用基于配置策略调整目标业务卡的排序。
第二方面,本申请实施例还提供了一种排序引擎训练装置,该训练装置应用于服务器,包括:特征引擎模块,用于按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;并根据预设配置的特征相关性算法,计算提取到的特征的权重;以及按照计算出的权重确定目标业务场景对应的特征组合;算法引擎模块,用于基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型;根据训练结果确定目标业务场景的排序引擎模型。
在本发明较佳的实施例中,上述特征引擎模块包括:特征配置单元,用于提供第一输入接口,并将第一输入接口接收到的特征加载至特征集中;样本采样单元,用于提供第二输入接口,并将第二输入接口接收到的样本数据加载至业务场景对应的样本空间;算法配置单元,用于提供第三输入接口,并将第三输入接口接收到的特征相关性算法加载至特征算法空间;算法引擎模块包括:引擎配置单元,用于提供第四输入接口,并将第四输入接口接收到的排序引擎模型加载至引擎算法空间。
在本发明较佳的实施例中,上述特征引擎模块包括:数据预处理单元,用于对目标业务场景的样本初始数据进行预处理,得到目标业务场景的样本数据;其中,预处理包括:数据噪声去除处理和/或数据格式化处理。
在本发明较佳的实施例中,上述预设配置的特征相关性算法包括:FM算法和/或数模型算法。
在本发明较佳的实施例中,上述特征引擎模块包括:特征组合单元,用于将权重大于设定权重阈值的特征,添加至目标业务场景对应的特征组合中;或者,用于按照权重由大到小的顺序选取预设数目的特征,组成目标业务场景对应的特征组合。
在本发明较佳的实施例中,上述算法引擎模块还包括:模型训练单元,用于当预先配置的排序引擎模型为多个时,将特征组合和样本数据分别输入每个排序引擎模型进行训练。
在本发明较佳的实施例中,上述算法引擎模块还用于将训练结果中性能最优的训练结果对应的排序引擎模型,确定为目标业务场景的排序引擎模型。
在本发明较佳的实施例中,上述算法引擎模块还包括:动态加载单元,用于将目标业务场景的排序引擎模型提供给目标应用,以使目标应用通过排序引擎模型对目标业务卡进行排序。
在本发明较佳的实施例中,上述算法引擎模块还包括:模型评价单元,用于获取排序后的目标业务卡的点击信息,根据点击信息确定排序引擎模型的评价参数;并基于评价参数调整排序引擎模型的权重参数和/或结构。
在本发明较佳的实施例中,上述动态加载单元还用于:根据调整后的排序引擎模型生成调整文件;将调整文件下发给目标应用,以使目标应用使用调整文件更新排序引擎模型。
在本发明较佳的实施例中,上述装置还包括:策略引擎模块,用于提供策略配置接口,通过策略配置接口接收配置策略;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略;动态加载单元还用于将配置策略下发至目标应用,以使目标应用基于配置策略调整目标业务卡的排序。
第三方面,本申请实施例还提供了一种业务卡排序方法,该方法应用于服务器的客户端,包括:获取当前用户在目标业务场景下对应的特征;其中,目标业务场景包含多张待排序的业务卡,特征包括用户特征、用户所处场景的上下文特征和业务卡特征;将获取的特征输入至预先训练好的排序引擎,通过排序引擎对各个业务卡进行排序;其中,排序引擎为第一方面任一项方法得到的。
在本发明较佳的实施例中,上述方法还包括:向当前用户展示排序后的业务卡。
在本发明较佳的实施例中,上述通过排序引擎对各个业务卡进行排序的步骤,包括:通过排序引擎对各个业务卡打分,并根据各个业务卡对应的分值,对各个业务卡排序。
在本发明较佳的实施例中,上述根据各个业务卡对应的分值,对各个业务卡排序的步骤,包括:按照默认的排序方式和各个业务卡对应的分值,对各个业务卡排序;其中,默认的排序方式为按照分值由高到低的顺序,从上至下排序业务卡;或者,按照分值由高到低的顺序,从中间向两边排序业务卡。
在本发明较佳的实施例中,上述方法还包括:如果预先保存有目标业务场景对应的配置策略,按照配置策略调整排序后的业务卡的位置;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略。
在本发明较佳的实施例中,上述方法还包括:如果接收到服务器下发的调整文件,使用调整文件更新排序引擎模型。
在本发明较佳的实施例中,上述业务卡包括运营卡、功能卡、会员卡和拉新卡中的一种或多种。
第四方面,本申请实施例还提供了一种业务卡排序装置,该装置应用于服务器的客户端,包括:特征获取模块,用于获取当前用户在目标业务场景下对应的特征;其中,目标业务场景包含多张待排序的业务卡,特征包括用户特征、用户所处场景的上下文特征和业务卡特征;引擎排序模块,用于将获取的特征输入至预先训练好的排序引擎,通过排序引擎对各个业务卡进行排序;其中,排序引擎为应用第一方面任一项方法得到的。
在本发明较佳的实施例中,上述装置还包括:展示模块,用于向当前用户展示排序后的业务卡。
在本发明较佳的实施例中,上述引擎排序模块用于:通过排序引擎对各个业务卡打分,并根据各个业务卡对应的分值,对各个业务卡排序。
在本发明较佳的实施例中,上述引擎排序模块用于:按照默认的排序方式和各个业务卡对应的分值,对各个业务卡排序;其中,默认的排序方式为按照分值由高到低的顺序,从上至下排序业务卡;或者,按照分值由高到低的顺序,从中间向两边排序业务卡。
在本发明较佳的实施例中,上述装置还包括:位置调整模块,用于如果预先保存有目标业务场景对应的配置策略,按照配置策略调整排序后的业务卡的位置;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略。
在本发明较佳的实施例中,上述装置还包括:引擎更新模块,用于如果接收到服务器下发的调整文件,使用调整文件更新排序引擎模型。
在本发明较佳的实施例中,上述业务卡包括运营卡、功能卡、会员卡和拉新卡中的一种或多种。
第五方面,本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,当网络侧设备运行时,处理器与存储器之间通过总线通信,机器可读指令被处理器执行时执行上述第一方面任一种可能的实施方式中的步骤,或者执行上述第三方面任一种可能的实施方式中的步骤。
第六方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面任一种可能的实施方式中的步骤,或者执行上述第三方面任一种可能的实施方式中的步骤。
本申请实施例提供了一种排序引擎训练方法及装置、业务卡排序方法及装置、电子设备及存储介质,首先能够按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;然后根据预先配置的特征相关性算法计算提取到的特征的权重,并按照计算出的权重确定目标业务场景对应的特征组合;进而可基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型;从而根据训练结果确定目标业务场景的排序引擎模型。相比于针对单一业务场景对排序引擎进行训练的传统方式,本申请实施例提供的这种方式可以根据预先配置的特征集对任何业务场景下的样本数据进行特征提取以及特征组合,进而基于特征组合训练引擎,得到目标业务场景的排序引擎模型。本申请实施例有效改善了排序引擎的训练方法,使得经训练得到的排序引擎能够适应于多种应用场景,普适性较强。
为使本申请实施例的上述目的、特征和优点能更明显易懂,下面将结合实施例,并配合所附附图,作详细说明。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种排序引擎训练方法流程图;
图2a示出了本申请实施例所提供的一种排序前的业务列表示意图;
图2b示出了本申请实施例所提供的一种排序后的业务列表示意图;
图3示出了本申请实施例所提供的第一种排序引擎训练装置的结构框图;
图4示出了本申请实施例所提供的第二种排序引擎训练装置的结构框图;
图5示出了本申请实施例所提供的第三种排序引擎训练装置的结构框图;
图6示出了本申请实施例所提供的第四种排序引擎训练装置的结构框图;
图7示出了本申请实施例所提供的一种业务卡排序方法流程图;
图8示出了本申请实施例所提供的另一种业务卡排序方法流程图;
图9示出了本申请实施例所提供的一种业务卡排序装置的结构框图;
图10示出了本申请实施例所提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。以下对本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例下述一种排序引擎训练方法及装置、业务卡排序方法及装置、电子设备及存储介质可以应用于任何需要对业务消息进行排序的应用APP,比如,可以应用于打车软件、地图定位、外卖平台等,能够普遍适用于多种业务场景。本申请实施例并不对具体的应用场景作限制,任何使用本申请实施例提供的方法对排序引擎进行训练,以及采用本申请实施例提供的排序引擎对业务卡进行排序的方案均在本申请保护范围内。以下对本申请实施例进行详细介绍。
参见图1所示的一种排序引擎训练方法流程图,该训练方法应用于服务器,该服务器可以是应用APP的服务器,也可以是专门为各应用APP提供排序业务的第三方服务器;该方法包括以下步骤:
步骤S102,按照预先配置的特征集,对目标业务场景的样本数据进行特征提取。
在具体实施时,可以为各种业务场景都预先配置相应的特征并形成特征集,以便为了训练得到业务场景对应的排序引擎时,能够针对该业务场景从特征集中直接提取相应的特征。诸如,外卖场景对应的特征包括外卖APP的用户年龄、性别、饮食喜好等用户自身特征。而目标业务场景的样本数据可以是使用者直接输入给执行排序引擎训练方法的服务器的,也可以是使用者将目标业务场景的样本初始数据输入给该服务器,然后由该服务器对样本初始数据进一步处理而得到的。考虑到同一特征的不同数值分布通常也会对模型的训练结果有所影响,因此预先配置的特征也可以采用离散化处理方式,对诸如年龄等可离散的特征设定离散区间和离散步长。
本申请实施例提供的特征集的配置化程度较高,便于针对多种业务场景均可进行相应的特征提取,诸如,对不同模型的特征进行隔离配置,不同模型的特征可对应不同的流量分桶,有助于灵活地对排序引擎进一步开发和扩展,适用于不同业务场景。
步骤S104,根据预先配置的特征相关性算法,计算提取到的特征的权重。通过特征相关性算法可以计算出每个特征的权重,权重是特征与业务场景的相关程度,权重越大,特征与业务场景的关联性越大。诸如,在外卖场景中,年龄特征的权重通常大于饮食喜好权重。
步骤S106,按照计算出的权重确定目标业务场景对应的特征组合。诸如,可以基于权重挑选出与业务场景的相关程度高于一定程度的特征,并将挑选出的特征组合形成业务场景对应的特征组合。
步骤S108,基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型。
外卖场景的特征组合包括用户的年龄和性别,结合样本数据形成“年龄-25岁”“性别-女”等训练数据,通过训练数据训练预先配置的至少一个排序引擎模型。排序引擎模型又可理解为一种机器学习模型,不同的排序引擎模型所采用的排序算法不同,诸如,LR(Logistic Regression,逻辑回归)模型和XGBOOST(Extreme Gradient Boosting,极端梯度提升树)模型的排序原理不同。排序引擎模型可以根据训练数据进行无监督特征学习、半监督特征学习或有监督特征学习,通过对训练数据的学习,确定排序引擎模型的结构和参数。
在实际应用中,排序引擎模型可能有一个或多个,如果预先配置的排序引擎模型为多个,将特征组合和样本数据分别输入每个排序引擎模型进行训练。通过这种方式,可分析不同排序引擎模型对于同一业务场景的表现性能,从而有助于找到适合于该业务场景的排序引擎模型。
步骤S110,根据训练结果确定目标业务场景的排序引擎模型。
可以理解的是,训练的排序引擎模型不同,得到的训练结果也有所不同。因此,可以根据训练结果最终确定目标业务场景所采用的排序引擎模型,诸如,将性能最优的训练结果对应的排序引擎模型,确定为目标业务场景的排序引擎模型。
本申请实施例提供的上述排序引擎训练方法,首先能够按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;然后根据预先配置的特征相关性算法计算提取到的特征的权重,并按照计算出的权重确定目标业务场景对应的特征组合;进而可基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型;从而根据训练结果确定目标业务场景的排序引擎模型。相比于针对单一业务场景对排序引擎进行训练的传统方式,本申请实施例提供的这种方式可以根据预先配置的特征集对任何业务场景下的样本数据进行特征提取以及特征组合,进而基于特征组合训练引擎,得到目标业务场景的排序引擎模型。本申请实施例有效改善了排序引擎的训练方法,使得经训练得到的排序引擎能够适应于多种应用场景,普适性较强。
为了使本申请实施例提供的排序引擎训练方法能够针对任何业务场景均可训练得到相应的排序引擎模型,在具体实施时,上述排序引擎训练方法还包括:提供各类配置信息对应的输入接口;其中,配置信息的类别包括以下至少之一:特征类、样本数据类、特征相关性算法类和排序引擎模型类;按照输入接口对应的配置信息类别,加载输入接口接收到的配置信息。也即,使用者可以根据自身需求而确定特征集、训练排序引擎模型的样本数据、用于选择特征的特征相关性算法、以及选用的排序引擎模型的类型等,然后将各类配置信息分别输入到对应的接口。服务器通过输入接口接收相应的配置信息,并加载接收到的配置信息。通过这种方式,可以较好地提升可扩展性,使用者可针对任何所需的业务场景(也即,前述目标业务场景)而将相关配置信息输入至执行引擎训练方法的服务器中,通过该服务器对排序引擎模型进行训练,得到目标业务场景所需的排序引擎模型。
目标业务场景的样本数据可以采用对目标业务场景的样本初始数据进行预处理的方式得到,其中,预处理包括:数据噪声去除处理和/或数据格式化处理。具体而言,噪声去除处理又可称之为数据清洗处理,以清除初始数据中大量无用的数据。此外,为了便于对数据进行分析,本申请实施例还可以将样本初始数据进行格式化处理,以统一为预设格式。诸如,将性别统一采用数字标识,男性以1标识,女性以2标识等。当然,如果初始样本数据中的用户性别缺失,则可以采用0标识。以上仅为示例,在具体实施时可以根据实际情况而灵活设置,比如将缺失值填充为中位数或众数。
在获取了样本数据,并提取出样本数据的特征之后,为了计算各特征与目标业务场景的相关程度,本实施例提供的特征相关性算法可以采用FM(Factorization Machine,因子分解机)算法和/或树模型算法。
其中,FM算法是一种基于矩阵分解的机器学习算法,其最大的特点是对于稀疏的数据具有很好的学习能力,对于很多应用APP的业务场景而言大多都具有特征稀疏的现象,因此更适用于FM算法,本实施例通过FM算法计算各特征的权重,从而基于权重能够有效的确定特征与业务场景的相关程度,进而可将具有一定相关程度的多个特征形成该业务场景对应的特征组合。树模型算法又可理解为Tree系列算法,与线性模型不同之处在于,树模型算法能够很好的表达非线性关系,能够对连续和离散特征进行处理,精确率更高。因此本申请实施例可采用树模型算法计算特征权重,从而确定各业务场景对应的特征组合。在实际应用中,可采用诸如CART(Classification And Regression Tree,分类和回归树)等决策树算法实现,在此不进行限制。
在上述按照计算出的权重确定目标业务场景对应的特征组合的步骤中,可以采用如下方式:
方式一:将权重大于设定权重阈值的特征,添加至目标业务场景对应的特征组合中。
方式二:按照权重由大到小的顺序选取预设数目的特征,组成目标业务场景对应的特征组合。
诸如,从目标业务场景的样本数据中提取出A、B、C、D、E特征。通过特征相关性算法的计算,得到A特征的权重为85%、B特征的权重为93%、C特征的权重为37%、D特征的权重为69%、E特征的权重为21%。如果采用上述方式一,假设权重阈值为70%,则确定该目标业务场景的特征组合包括A特征和B特征。如果采用上述方式二,假设选取三个特征,则按照权重由大到小的顺序确定该目标业务场景的特征组合包括A特征、B特征和D特征。
在得到目标业务场景的特征组合之后,即可基于特征组合与样本数据,生成训练数据,并由训练数据对预先配置好的排序引擎模型进行训练,并根据训练结果确定目标业务场景的排序引擎模型。在根据训练结果确定目标业务场景的排序引擎模型之后,本申请实施例提供的上述方法还包括:将目标业务场景的排序引擎模型提供给目标应用,以使目标应用通过排序引擎模型对目标业务卡进行排序。如果执行排序引擎训练方法的服务器为第三方服务器,则可以将排序引擎模型发送给目标应用的服务器。如果执行排序引擎训练方法的服务器就是目标应用的服务器,则可以直接采用训练得到的排序引擎模型对目标业务卡进行排序。通过上述方式,即可将排序引擎模型加载至目标应用中。
上述目标业务卡的类型通常由目标应用自行设定,诸如可以包括运营卡、功能卡、会员卡和拉新卡等。不同业务卡的类型不同,其上体现的文案也不同。诸如,运营卡主要体现目标应用的相关运营业务消息;功能卡主要体现目标应用可提供的功能;会员卡主要体现用户的入会邀请信息;拉新卡主要体现邀请新用户加入的信息。向用户推送业务卡的目的在于让用户通过业务卡进一步了解并使用目标应用的相关业务,从而有效增加目标应用的用户量,并促进用户使用目标应用。
为便于理解,以下提供了目标应用在客户端上显示的业务列表形式,具体可参见图2a所示的一种排序前的业务列表示意图,在该业务列表上示意出由上至下的顺序依次为:运营卡片、功能卡片、会员卡片和拉新卡片。采用本申请实施例训练得到的排序引擎模型后,对图2a中的业务列表进行调整,可参见图2b所示的一种排序后的业务列表示意图,在该业务列表上示意出由上至下的顺序依次为:会员卡片、运营卡片、拉新卡片和功能卡片。在该种排序策略中,会员卡片的重要程度最高。
通常而言,业务卡的排列顺序与业务卡的点击量有着直接关联性,诸如排列在业务列表上的靠前位置或者便于用户点触的位置的业务卡的点击量可能会大于排在其它位置的业务卡的点击量。为了能够获知训练得到的排序引擎模型的排序性能,并对排序性能不佳的排序引擎模型进行更新,以便更准确合理地为目标应用的业务卡进行排序,上述方法还可以参照如下步骤执行:
(1)获取排序后的目标业务卡的点击信息。通常而言,用户点击业务卡时,该业务卡将会跳转到可呈现更多相关业务消息的特定界面。具体实现时,目标应用的服务器可以监测特定界面的跳转次数,从而获取到排序后的目标业务卡的点击信息。其中,该点击信息可以为用户点击量。
(2)根据点击信息确定排序引擎模型的评价参数。排序引擎模型在给业务卡进行排序时大多是采用机器学习算法进行排序,诸如,将业务卡按照机器学习算法学习到的重要程度由上至下依次排列,得到排列结果,以期望按照这样的排列结果得到期望的点击量。然后可根据获取的实际点击量与期望的点击量的相符程度对排序引擎模型进行评价,在一种实施方式中,前述评价参数可包括实际点击信息与期望点击信息的相符程度(可以理解为排序结果的准确性)。具体实施时,可以以等级进行评价,评价等级可以为A级~D级,当然也可以采用分数进行评价,评价等级可以为0~10分。以上仅为示例,不应当被视为限制。
(3)基于评价参数调整排序引擎模型的权重参数和/或结构。
在对排序引擎模型的权重参数和/或结构进行调整之后,上述方法还可以包括:根据调整后的排序引擎模型生成调整文件;将调整文件下发给目标应用,以使目标应用使用调整文件更新排序引擎模型。一种方式中,调整文件中可以包含有排序引擎模型的调整参数,目标应用可基于调整参数直接更改已存储的排序引擎模型。在另一种方式中,调整文件直接包含有调整后的排序引擎模型,目标应用可以将已存储的排序引擎模型整体替换为调整后的排序引擎模型。通过上述方式,即可将调整后的排序引擎模型动态加载至目标应用中。相比于现有排序引擎通常需要扫描指定文件,并根据文件最新修改日期判断文件是否更新,效率低下的问题,本申请实施例提供的上述方式可以将调整文件实时发送给目标应用,诸如,对于每个排序引擎模型文件,都可启用一个go协程进行监测,一旦监测到文件发生变化,则可根据调整后的排序引擎模型生成调整文件,并将调整文件动态加载至内存中。
由于排序引擎模型是基于用户特征,采用机器学习算法对业务卡片的排列顺序进行预测的,考虑到还可能存在产品强需求,因此本申请实施例还引入了排序结果干预机制,以便能够根据应用需求对排序引擎模型的排序结果进行相应调整。具体实施时,本申请实施例可以提供策略配置接口;通过策略配置接口接收配置策略;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略、排序方式策略和指定位置策略;然后将配置策略下发至目标应用,以使目标应用基于配置策略调整目标业务卡的排序。
其中,无论指定业务卡经排序引擎模型进行排序后在业务列表中是何种位置,如果采用置顶策略,则将该指定业务卡固定设置在业务列表的首位。同理,如果采用沉底策略,则将该指定业务卡固定设置在业务列表的末位。如果采用退场策略,则令该指定业务卡离开业务列表。当然,还可为给业务列表上的各业务卡根据需求而人工设置其它排序方式或者指定位置。将配置策略下发给目标应用后,即可使目标应用基于配置策略调整目标业务卡的排序。通过这种方式,可以较好地实现个性化定制,满足不同应用运营者的需求。
综上所述,本申请实施例提供的上述排序引擎训练方法,可灵活适用于多种业务场景,支持多业务线的排序。而且可预先设置有多种排序引擎模型,支持多个机器学习算法,有助于找到最适合目标业务场景的排序引擎模型,以便于针对该目标业务场景得到最佳的排序结果。
对应于前述排序引擎训练方法,本实施例提供了一种排序引擎训练装置,该训练装置应用于服务器,参见图3所示的第一种排序引擎训练装置的结构框图,包括:
特征引擎模块32,用于按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;并根据预设配置的特征相关性算法,计算提取到的特征的权重;以及按照计算出的权重确定目标业务场景对应的特征组合。在一种实施方式中,上述预设配置的特征相关性算法包括:FM算法和/或数模型算法。
算法引擎模块34,用于基于特征组合和样本数据,训练预先配置的至少一个排序引擎模型;根据训练结果确定目标业务场景的排序引擎模型。
本申请实施例提供的上述排序引擎训练装置,相比于针对单一业务场景对排序引擎进行训练的传统方式,可以根据预先配置的特征集对任何业务场景下的样本数据进行特征提取以及特征组合,进而基于特征组合训练引擎,得到目标业务场景的排序引擎模型。本申请实施例有效改善了排序引擎的训练方法,使得经训练得到的排序引擎能够适应于多种应用场景,普适性较强。
参见图4所示的第二种排序引擎训练装置的结构框图,图4在图3的基础上,进一步示意出特征引擎模块32包括:
特征配置单元321,用于提供第一输入接口,并将第一输入接口接收到的特征加载至特征集中。
样本采样单元322,用于提供第二输入接口,并将第二输入接口接收到的样本数据加载至业务场景对应的样本空间。
算法配置单元323,用于提供第三输入接口,并将第三输入接口接收到的特征相关性算法加载至特征算法空间。
算法引擎模块34包括引擎配置单元341,用于提供第四输入接口,并将第四输入接口接收到的排序引擎模型加载至引擎算法空间。
通过上述方式,排序引擎训练装置给用户提供了各类配置信息对应的输入接口,可根据需求将预先配置的信息加载到相应的功能空间中。
此外,还示意出特征引擎模块32包括数据预处理单元324,用于对目标业务场景的样本初始数据进行预处理,得到目标业务场景的样本数据;其中,预处理包括:数据噪声去除处理和/或数据格式化处理。
在图4中,还示意出特征引擎模块32包括特征组合单元325,用于将权重大于设定权重阈值的特征,添加至目标业务场景对应的特征组合中;或者,用于按照权重由大到小的顺序选取预设数目的特征,组成目标业务场景对应的特征组合。
在图4中,同时示意出上述算法引擎模块34包括:模型训练单元342,用于当预先配置的排序引擎模型为多个时,将特征组合和样本数据分别输入每个排序引擎模型进行训练。
此外,算法引擎模块34还用于将训练结果中性能最优的训练结果对应的排序引擎模型,确定为目标业务场景的排序引擎模型。
进一步,算法引擎模块34还包括:动态加载单元343和模型评价单元344,其中,动态加载单元343用于将目标业务场景的排序引擎模型提供给目标应用,以使目标应用通过排序引擎模型对目标业务卡进行排序。在具体应用时,动态加载单元343还用于:根据调整后的排序引擎模型生成调整文件;将调整文件下发给目标应用,以使目标应用使用调整文件更新排序引擎模型。
模型评价单元344,用于获取排序后的目标业务卡的点击信息,根据点击信息确定排序引擎模型的评价参数;并基于评价参数调整排序引擎模型的权重参数和/或结构。
参见图5所示的第三种排序引擎训练装置的结构框图,图5在图4的基础上,还示意出该排序引擎训练装置包括策略引擎模块36,用于提供策略配置接口,通过策略配置接口接收配置策略;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略。
基于此,算法引擎模块34中的动态加载单元342还用于将配置策略下发至目标应用,以使目标应用基于配置策略调整目标业务卡的排序。
本申请实施例给出了排序引擎训练装置的具体示例,参见图6所示的第四种排序引擎训练装置的结构框图,在统一排序平台上,设置有特征引擎、算法引擎和策略引擎。
其中,特征引擎中包含有如下功能单元:特征配置化单元、特征离散化单元、数据预处理单元、数据清洗单元、特征选择单元、特征组合单元、用户画像和样本采样单元。
具体而言,特征引擎可以先通过样本采样单元针对目标业务场景进行样本采样,然后通过数据清洗单元对采样的样本进行数据清洗,再通过数据预处理单元将清洗后的数据预处理成统一格式,再按照特征配置化单元中配置的特征提取样本的特征。其中,对于诸如年龄等可离散化特征,可以通过特征离散化单元进行特征离散化,得到多个离散特征。诸如可将年龄的离散化区间设置为[0,100],离散步长设置为10。之后可通过特征选择单元采用诸如计算提取出样本特征的权重的方式挑选相关特征,并通过特征组合单元将挑选出的特征进行组合,将特征组合作为目标业务场景的用户画像。可以理解的是,图6中的特征引擎中所包含的各功能单元仅是示例性说明,在实际应用中,可以包含比上述功能单元更多的单元,或者仅采用上述功能单元中的部分单元。
算法引擎中包含有如下功能单元:LR模型单元、XGBOOST模型单元、模型训练单元、定期更新单元、动态加载单元、模型预测单元、模型评价单元和模型融合单元。其中,LR模型单元中存储有预先配置的LR排序引擎模型,XGBOOST模型单元中存储有预先配置的XGBOOST排序引擎模型;当然,算法引擎中仅是简单示意出LR模型单元、XGBOOST模型单元,在实际应用中,还可以配置有其它排序引擎模型,不应当被视为限制。算法引擎可通过模型训练单元,基于目标业务场景的特征组合、样本数据以及用户人流量等多种因素对至少一个排序引擎模型进行训练,确定目标业务场景的排序引擎模型。在实际应用中,同一个业务场景对应的排序引擎模型也可能因用户量等其它因素不同而不同,诸如,一个有100w用户群的业务场景对应A模型,一个每天仅有50w用户群的业务场景对应B模型。算法引擎还可通过模型预测单元采用训练得到的排序引擎模型预测业务卡顺序。模型评价单元还可根据真实用户使用排序后的界面的结果(诸如点击量)而对排序引擎模型进行评价,并由定期更新单元基于实际使用情况对排序引擎模型进行结构/参数的更新。可以理解的是,定期更新单元可以按设定时长进行更新、设定时长可以灵活设置,诸如周、天、时等。
此外,算法引擎中的模型融合单元,可以抽象出各个排序引擎模型的相似点,进而支持多个排序引擎模型。诸如,LR模型主要体现为训练产出对应的权重,其对应的特征数据需要通过格式化为onehot编码;
XGBOOST模型主要体现为训练产出的树形结构,其对应的特征数据为libsvm格式,抽取出LR模型和XGBOOST模型的相似点,可以基于该相似点支持更多的算法引擎模型。在实际应用中,可以将线上流量分为实验桶和基准桶,将实验桶进一步划分为LR桶和XGBOOST桶。通过多模型融合,能够比较出LR模型和XGBOOST模型的性能优劣,有助于根据比较结果采取相应措施进行改进。
前述特征引擎和算法引擎主要是基于机器学习算法对业务卡片进行排序,考虑到业务的复杂性,图6中还示意出了可实现个性化排序的策略引擎,策略引擎中简单示意出具有如下功能单元:置顶单元、沉底单元、退场单元和产品策略过滤单元。不同的功能单元可用于执行不同的位置调整策略,诸如,将指定业务卡在业务列表上置顶、沉底或设置于其它固定位置,或者将多张业务卡按照分值大小由中间向两边排序等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
综上所述,本实施例提供的上述排序引擎训练方法及装置,通过预先配置特征,提升特征配置化程度,配置的多种特征能够灵活适用于各种业务场景,可支持多业务场景排序,普适性更强。而且由于本实施例可预先配置有多种排序引擎模型,能够采用可插拔的方式支持多种机器学习算法,从而有助于找到最适合实际业务场景的预测算法,提升排序效果。另外,通过动态加载方式,可以使模型得以及时更新,相比于现有技术的轮询方式而言,进一步提升了模型更新效率,增强了模型可靠性。进一步,本申请实施例还提供了个性化定制的策略引擎,进而满足用户的实际需求。综上所述,经本实施例提供的训练方法所得的排序引擎具有较好的排序性能,而且可横向拓展,灵活性非常强,可普遍适用于各种应用的业务场景。
本申请实施例进一步提供了一种业务卡排序方法,该方法应用于服务器的客户端,参见图7所示的一种业务卡排序方法流程图,具体包括如下步骤:
步骤S702,获取当前用户在目标业务场景下对应的特征;其中,目标业务场景包含多张待排序的业务卡,特征包括用户特征、用户所处场景的上下文特征和业务卡特征。
其中,用户特征可以为用户的年龄、性别等用户自身特征;用户所处场景的上下文特征可以为场景特征,诸如,天气特征、所在区域的位置特征等;业务卡特征可以为业务卡本身特征,诸如业务卡的卡片大小或颜色、业务卡提供的功能、业务卡的推出时间等各种与业务卡自身相关的特征。可以理解的是,对于一个公司或部门,其所对应的多种业务场景具有一定程度的通用性,对于同一业务场景而言,诸如用户特征、用户所处场景的上下文特征和业务卡特征等特征近乎可以复用。因此我们可以基于目标业务场景获取相应的特征,以便排序引擎能够基于获取的特征进行排序。通过配置上述特征,也有助于加快排序引擎在排序过程中的特征收敛速度,提升排序效率。
步骤S704,将获取的特征输入至预先训练好的排序引擎,通过排序引擎对各个业务卡进行排序;其中,排序引擎为应用前述排序引擎训练方法得到的。
通过本实施例提供的上述方法,首先获取到当前用户在目标业务场景下的特征,从而采用预先训练好的排序引擎,基于获取的特征对各个业务卡进行排序,以便生成与当前用户对应的业务列表。不同用户对应的特征不同,因此展示给不同用户的业务列表也不相同,从而实现千人千面的列表展示效果。
在具体实施时,可参见图8所示的另一种业务卡排序方法流程图,具体包括如下步骤:
步骤S802,获取当前用户在目标业务场景下对应的特征;其中,目标业务场景包含多张待排序的业务卡,目标业务场景下对应的特征可以包括用户特征、用户所处场景的上下文特征和业务卡特征等。
步骤S804,将获取的特征输入至预先训练好的排序引擎,通过排序引擎对各个业务卡打分,并根据各个业务卡对应的分值,对各个业务卡排序。诸如,业务卡的分数越高,说明该业务卡越有可能吸引用户对其进行点击,因此业务卡在业务列表中的位置越关键。
具体实施时,可以按照默认的排序方式和各个业务卡对应的分值,对各个业务卡排序。其中,默认的排序方式为按照分值由高到低的顺序,从上至下排序业务卡;或者,按照分值由高到低的顺序,从中间向两边排序业务卡。诸如,业务列表中需要呈现5张业务卡。业务卡A、B、C、D、E的分数分别为82、73、89、92和61,如果采用分值由高到低排序,则业务列表由高至低依次排序为业务卡D、C、A、B、E;如果采用案子分支从中间向两边排序,则在一种实施方式中,业务列表由高至低依次排序可以为业务卡B、A、D、C、E;其中,分值最高的D位于业务列表的中间位置,分值次高的A和C,分别位于D的两侧;分值最低的B和E,分别位于列表的两端。
步骤S806,如果预先保存有目标业务场景对应的配置策略,按照配置策略调整排序后的业务卡的位置;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略。
上述配置策略可以是目标应用的运营者预先在执行排序引擎训练方法的服务器上进行配置,然后由服务器下发给客户端,以便结合配置策略以及排序引擎模型的排序结果进行综合排序,得到合理的业务列表。
步骤S808,向当前用户展示经排序后的业务卡。其中,业务卡可以包括诸如运营卡、功能卡、会员卡和拉新卡中的一种或多种。
通过上述方式,采用预先训练好的排序引擎模型基于当前用户在目标业务场景下的特征为各个业务卡打分,并根据各个业务卡分值对各业务卡进行排序,而且还可以基于配置策略调整排序后的业务卡位置,以满足应用运营者的需求,从而尽可能地吸引用户点击重要的业务卡,了解或使用相关业务。
此外,上述方法还包括:如果接收到服务器下发的调整文件,使用调整文件更新排序引擎模型。可以理解的是,为了使排序引擎模型较好地满足需求,服务器也会根据采集到的诸如点击信息等反馈情况而定期更新排序引擎模型的结构/参数等,生成调整文件,并将调整文件下发给客户端,客户端从而可基于该调整文件及时更新当前存储的排序引擎模型,以便更好地提升排序效果,满足应用运营者的需求。
对应于前述业务卡排序方法,本申请实施例还提供了一种业务卡排序装置,该装置应用于服务器的客户端,参见图9所示的一种业务卡排序装置的结构框图,包括如下模块:
特征获取模块92,用于获取当前用户在目标业务场景下对应的特征;其中,目标业务场景包含多张待排序的业务卡,特征包括用户特征、用户所处场景的上下文特征和业务卡特征。
引擎排序模块94,用于将获取的特征输入至预先训练好的排序引擎,通过排序引擎对各个业务卡进行排序;其中,排序引擎为应用第一方面任一项方法得到的。
通过本实施例提供的上述装置,首先获取到当前用户在目标业务场景下的特征,从而采用预先训练好的排序引擎,基于获取的特征对各个业务卡进行排序,以便生成与当前用户对应的业务列表。不同用户对应的特征不同,因此展示给不同用户的业务列表也不相同,从而实现千人千面的列表展示效果。
在一种实施方式中,上述装置还包括:展示模块,用于向当前用户展示排序后的业务卡。
上述引擎排序模块可进一步用于:通过排序引擎对各个业务卡打分,并根据各个业务卡对应的分值,对各个业务卡排序。具体实施时,上述引擎排序模块用于:按照默认的排序方式和各个业务卡对应的分值,对各个业务卡排序;其中,默认的排序方式为按照分值由高到低的顺序,从上至下排序业务卡;或者,按照分值由高到低的顺序,从中间向两边排序业务卡。
此外,上述装置还可以包括位置调整模块,用于如果预先保存有目标业务场景对应的配置策略,按照配置策略调整排序后的业务卡的位置;其中,配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略。
在另一种实施方式中,上述装置还包括:引擎更新模块,用于如果接收到服务器下发的调整文件,使用调整文件更新排序引擎模型。
参见图10所示的一种电子设备的结构示意图,具体包括处理器100,存储器101,总线102和通信接口103,处理器100、通信接口103和存储器101通过总线102连接;处理器100用于执行存储器101中存储的可执行模块,例如计算机程序。
其中,存储器101可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线102可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器101用于存储程序,处理器100在接收到执行指令后,执行程序,前述本申请实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器100中,或者由处理器100实现。
处理器100可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器100中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器100可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器101,处理器100读取存储器101中的信息,结合其硬件完成上述方法的步骤。
服务器及用户终端均可采用上述电子设备实现,诸如,本实施例提供的排序引擎训练方法和/或业务卡排序方法可以由上述电子设备执行,亦或,本实施例提供的排序引擎训练装置和业务卡排序装置可以设置于上述电子设备侧。
进一步,本实施例还提供了一种计算机存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如前述任一排序引擎训练方法,或者执行如前述任一业务卡排序方法。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (38)
1.一种排序引擎训练方法,其特征在于,所述训练方法应用于服务器,包括:
按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;
根据预先配置的特征相关性算法,计算提取到的特征的权重;
按照计算出的权重确定所述目标业务场景对应的特征组合;
基于所述特征组合和所述样本数据,训练预先配置的至少一个排序引擎模型;
根据训练结果确定所述目标业务场景的排序引擎模型。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
提供各类配置信息对应的输入接口;其中,所述配置信息的类别包括以下至少之一:特征类、样本数据类、特征相关性算法类和排序引擎模型类;
按照所述输入接口对应的配置信息类别,加载所述输入接口接收到的配置信息。
3.如权利要求1所述的方法,其特征在于,所述按照预先配置的特征集,对目标业务场景的样本数据进行特征提取的步骤之前,所述方法还包括:
对目标业务场景的样本初始数据进行预处理,得到所述目标业务场景的样本数据;其中,所述预处理包括:数据噪声去除处理和/或数据格式化处理。
4.如权利要求1所述的方法,其特征在于,所述预先配置的特征相关性算法包括:FM算法和/或树模型算法。
5.如权利要求1所述的方法,其特征在于,所述按照计算出的权重确定所述目标业务场景对应的特征组合的步骤,包括:
将权重大于设定权重阈值的特征,添加至所述目标业务场景对应的特征组合中;或者,
按照权重由大到小的顺序选取预设数目的特征,组成所述目标业务场景对应的特征组合。
6.如权利要求1所述的方法,其特征在于,所述基于所述特征组合和所述样本数据,训练预先配置的至少一个排序引擎模型的步骤,包括:
如果预先配置的排序引擎模型为多个,将所述特征组合和所述样本数据分别输入每个所述排序引擎模型进行训练。
7.如权利要求1所述的方法,其特征在于,所述根据训练结果确定所述目标业务场景的排序引擎模型的步骤,包括:
将所述训练结果中性能最优的训练结果对应的排序引擎模型,确定为所述目标业务场景的排序引擎模型。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:将所述目标业务场景的排序引擎模型提供给目标应用,以使所述目标应用通过所述排序引擎模型对目标业务卡进行排序。
9.如权利要求8所述的方法,其特征在于,所述方法还包括:
获取排序后的所述目标业务卡的点击信息;
根据所述点击信息确定所述排序引擎模型的评价参数;
基于所述评价参数调整所述排序引擎模型的权重参数和/或结构。
10.如权利要求9所述的方法,其特征在于,所述方法还包括:
根据调整后的排序引擎模型生成调整文件;
将所述调整文件下发给所述目标应用,以使所述目标应用使用所述调整文件更新所述排序引擎模型。
11.如权利要求8所述的方法,其特征在于,所述方法还包括:
提供策略配置接口;
通过所述策略配置接口接收配置策略;其中,所述配置策略至少包括以下之一:置顶策略、沉底策略、退场策略、排序方式策略和指定位置策略;
将所述配置策略下发至所述目标应用,以使所述目标应用基于所述配置策略调整所述目标业务卡的排序。
12.一种排序引擎训练装置,其特征在于,所述训练装置应用于服务器,包括:
特征引擎模块,用于按照预先配置的特征集,对目标业务场景的样本数据进行特征提取;并
根据预设配置的特征相关性算法,计算提取到的特征的权重;以及按照计算出的权重确定所述目标业务场景对应的特征组合;
算法引擎模块,用于基于所述特征组合和所述样本数据,训练预先配置的至少一个排序引擎模型;根据训练结果确定所述目标业务场景的排序引擎模型。
13.如权利要求12所述的装置,其特征在于,所述特征引擎模块包括:
特征配置单元,用于提供第一输入接口,并将所述第一输入接口接收到的特征加载至特征集中;
样本采样单元,用于提供第二输入接口,并将所述第二输入接口接收到的样本数据加载至业务场景对应的样本空间;
算法配置单元,用于提供第三输入接口,并将所述第三输入接口接收到的特征相关性算法加载至特征算法空间;
所述算法引擎模块包括:引擎配置单元,用于提供第四输入接口,并将所述第四输入接口接收到的排序引擎模型加载至引擎算法空间。
14.如权利要求12所述的装置,其特征在于,所述特征引擎模块包括:
数据预处理单元,用于对目标业务场景的样本初始数据进行预处理,得到所述目标业务场景的样本数据;其中,所述预处理包括:数据噪声去除处理和/或数据格式化处理。
15.如权利要求12所述的装置,其特征在于,所述预先配置的特征相关性算法包括:FM算法和/或数模型算法。
16.如权利要求12所述的装置,其特征在于,所述特征引擎模块包括:特征组合单元,用于将权重大于设定权重阈值的特征,添加至所述目标业务场景对应的特征组合中;或者,用于按照权重由大到小的顺序选取预设数目的特征,组成所述目标业务场景对应的特征组合。
17.如权利要求12所述的装置,其特征在于,所述算法引擎模块还包括:
模型训练单元,用于当预先配置的排序引擎模型为多个时,将所述特征组合和所述样本数据分别输入每个所述排序引擎模型进行训练。
18.如权利要求12所述的装置,其特征在于,所述算法引擎模块还用于将所述训练结果中性能最优的训练结果对应的排序引擎模型,确定为所述目标业务场景的排序引擎模型。
19.如权利要求12所述的装置,其特征在于,所述算法引擎模块还包括:
动态加载单元,用于将所述目标业务场景的排序引擎模型提供给目标应用,以使所述目标应用通过所述排序引擎模型对目标业务卡进行排序。
20.如权利要求19所述的装置,其特征在于,所述算法引擎模块还包括:
模型评价单元,用于获取排序后的所述目标业务卡的点击信息,根据所述点击信息确定所述排序引擎模型的评价参数;并基于所述评价参数调整所述排序引擎模型的权重参数和/或结构。
21.如权利要求20所述的装置,其特征在于,所述动态加载单元还用于:根据调整后的排序引擎模型生成调整文件;将所述调整文件下发给所述目标应用,以使所述目标应用使用所述调整文件更新所述排序引擎模型。
22.如权利要求19所述的装置,其特征在于,所述装置还包括:策略引擎模块,用于提供策略配置接口,通过所述策略配置接口接收配置策略;其中,所述配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略;
所述动态加载单元还用于将所述配置策略下发至所述目标应用,以使所述目标应用基于所述配置策略调整所述目标业务卡的排序。
23.一种业务卡排序方法,其特征在于,所述方法应用于服务器的客户端,包括:获取当前用户在目标业务场景下对应的特征;其中,所述目标业务场景包含多张待排序的业务卡,所述特征包括用户特征、用户所处场景的上下文特征和业务卡特征;
将获取的所述特征输入至预先训练好的排序引擎,通过所述排序引擎对各个所述业务卡进行排序;其中,所述排序引擎为应用权利要求1-11任一项所述方法得到的。
24.如权利要求23所述的方法,其特征在于,所述方法还包括:
向所述当前用户展示排序后的所述业务卡。
25.如权利要求23所述的方法,其特征在于,所述通过所述排序引擎对各个所述业务卡进行排序的步骤,包括:
通过所述排序引擎对各个所述业务卡打分,并根据各个所述业务卡对应的分值,对各个所述业务卡排序。
26.如权利要求25所述的方法,其特征在于,所述根据各个所述业务卡对应的分值,对各个所述业务卡排序的步骤,包括:
按照默认的排序方式和各个所述业务卡对应的分值,对各个所述业务卡排序;其中,所述默认的排序方式为按照分值由高到低的顺序,从上至下排序所述业务卡;或者,按照分值由高到低的顺序,从中间向两边排序所述业务卡。
27.如权利要求23所述的方法,其特征在于,所述方法还包括:
如果预先保存有所述目标业务场景对应的配置策略,按照所述配置策略调整排序后的所述业务卡的位置;其中,所述配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略。
28.如权利要求23所述的方法,其特征在于,所述方法还包括:如果接收到服务器下发的调整文件,使用所述调整文件更新所述排序引擎模型。
29.如权利要求23所述的方法,其特征在于,所述业务卡包括运营卡、功能卡、会员卡和拉新卡中的一种或多种。
30.一种业务卡排序装置,其特征在于,所述装置应用于服务器的客户端,包括:
特征获取模块,用于获取当前用户在目标业务场景下对应的特征;其中,所述目标业务场景包含多张待排序的业务卡,所述特征包括用户特征、用户所处场景的上下文特征和业务卡特征;
引擎排序模块,用于将获取的所述特征输入至预先训练好的排序引擎,通过所述排序引擎对各个所述业务卡进行排序;其中,所述排序引擎为应用权利要求1-11任一项所述方法得到的。
31.如权利要求30所述的装置,其特征在于,所述装置还包括:
展示模块,用于向所述当前用户展示排序后的所述业务卡。
32.如权利要求30所述的装置,其特征在于,所述引擎排序模块用于:
通过所述排序引擎对各个所述业务卡打分,并根据各个所述业务卡对应的分值,对各个所述业务卡排序。
33.如权利要求32所述的装置,其特征在于,所述引擎排序模块用于:
按照默认的排序方式和各个所述业务卡对应的分值,对各个所述业务卡排序;其中,所述默认的排序方式为按照分值由高到低的顺序,从上至下排序所述业务卡;或者,按照分值由高到低的顺序,从中间向两边排序所述业务卡。
34.如权利要求30所述的装置,其特征在于,所述装置还包括:
位置调整模块,用于如果预先保存有所述目标业务场景对应的配置策略,按照所述配置策略调整排序后的所述业务卡的位置;其中,所述配置策略至少包括以下之一:置顶策略、沉底策略、退场策略接口、排序方式策略和指定位置策略。
35.如权利要求30所述的装置,其特征在于,所述装置还包括:
引擎更新模块,用于如果接收到服务器下发的调整文件,使用所述调整文件更新所述排序引擎模型。
36.如权利要求30所述的装置,其特征在于,所述业务卡包括运营卡、功能卡、会员卡和拉新卡中的一种或多种。
37.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1~11任一所述的方法,或者执行如权利要求23~29任一所述的方法。
38.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1~11任一所述的方法,或者执行如权利要求23~29任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811136714.XA CN110968767B (zh) | 2018-09-28 | 2018-09-28 | 排序引擎训练方法及装置、业务卡排序方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811136714.XA CN110968767B (zh) | 2018-09-28 | 2018-09-28 | 排序引擎训练方法及装置、业务卡排序方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110968767A CN110968767A (zh) | 2020-04-07 |
CN110968767B true CN110968767B (zh) | 2023-03-31 |
Family
ID=70026714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811136714.XA Active CN110968767B (zh) | 2018-09-28 | 2018-09-28 | 排序引擎训练方法及装置、业务卡排序方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110968767B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111752555B (zh) * | 2020-05-18 | 2021-08-20 | 南京认知物联网研究院有限公司 | 业务场景驱动的视觉洞察支撑***、客户端和方法 |
CN112637295B (zh) * | 2020-12-15 | 2023-04-28 | 平安普惠企业管理有限公司 | 业务对象的推送方法、装置、设备及存储介质 |
CN112799949A (zh) * | 2021-02-04 | 2021-05-14 | 上海销氪信息科技有限公司 | 一种模型优化方法、装置、***及设备 |
CN112907134B (zh) * | 2021-03-26 | 2024-04-19 | 北京赛博云睿智能科技有限公司 | 不同业务场景的人机可视化交互分析与操控***及方法 |
CN113469739B (zh) * | 2021-06-25 | 2024-05-28 | 广州宸祺出行科技有限公司 | 一种用于网约车的打车需求的预测方法及*** |
CN113256180B (zh) * | 2021-07-07 | 2022-05-27 | 杭州实在智能科技有限公司 | 一种基于机器学习的客服工单信息智能动态加载方法和*** |
CN113486332A (zh) * | 2021-07-22 | 2021-10-08 | 华控清交信息科技(北京)有限公司 | 一种计算节点、隐私计算***及算法引擎的加载方法 |
CN114943577B (zh) * | 2022-04-22 | 2024-04-09 | 北京金堤科技有限公司 | 一种对服务卡片排序的方法、装置、存储介质和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077306A (zh) * | 2013-03-28 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 一种搜索引擎的结果排序方法及*** |
CN105718493A (zh) * | 2014-12-05 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 基于决策树的搜索结果排序方法及其装置 |
CN106446213A (zh) * | 2016-09-30 | 2017-02-22 | 北京百度网讯科技有限公司 | 基于人工智能的服务排序方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10318701B2 (en) * | 2016-01-19 | 2019-06-11 | Ford Motor Company | Resolving configuration conflicts using a multi-valued decision diagram |
-
2018
- 2018-09-28 CN CN201811136714.XA patent/CN110968767B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077306A (zh) * | 2013-03-28 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 一种搜索引擎的结果排序方法及*** |
CN105718493A (zh) * | 2014-12-05 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 基于决策树的搜索结果排序方法及其装置 |
CN106446213A (zh) * | 2016-09-30 | 2017-02-22 | 北京百度网讯科技有限公司 | 基于人工智能的服务排序方法和装置 |
Non-Patent Citations (4)
Title |
---|
A large-scale study of the effect of training set characteristics over learning-to-rank algorithms;Evangelos Kanoulas et al;《Proceedings of the 34th international ACM SIGIR conference on Research and development in Information Retrieval》;20110724;第1243-1244页 * |
Product characteristic weighting for designer from online reviews: an ordinal classification approach;Jian Jin et al;《 Proceedings of the 2012 Joint EDBT/ICDT Workshops》;20120330;第33-40页 * |
基于深度学习的专家列表排序方法研究;魏斯超;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150115;第2015年卷(第01期);第I138-1576页 * |
领域问答***答案排序研究;宗焕云;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120515;第2012年卷(第05期);第I138-1618页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110968767A (zh) | 2020-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110968767B (zh) | 排序引擎训练方法及装置、业务卡排序方法及装置 | |
US11574139B2 (en) | Information pushing method, storage medium and server | |
CN109345302B (zh) | 机器学习模型训练方法、装置、存储介质和计算机设备 | |
CN109408703B (zh) | 信息推荐方法及其***、装置、电子设备、存储介质 | |
CN110162717B (zh) | 一种推荐好友的方法和设备 | |
CN110489578B (zh) | 图片处理方法、装置及计算机设备 | |
CN112231584B (zh) | 基于小样本迁移学习的数据推送方法、装置及计算机设备 | |
CN110413867B (zh) | 用于内容推荐的方法及*** | |
CN109344314B (zh) | 一种数据处理方法、装置及服务器 | |
CN107968842B (zh) | 基于分布式***的新闻推送方法、装置及设备 | |
CN111491202B (zh) | 一种视频发布方法、装置、设备和存储介质 | |
CN109558544B (zh) | 排序方法及装置、服务器和存储介质 | |
CN109377401B (zh) | 一种数据处理方法、装置、***、服务器及存储介质 | |
CN114223012A (zh) | 推送对象确定方法、装置、终端设备及存储介质 | |
CN110675179A (zh) | 营销信息处理方法、装置、电子设备及可读存储介质 | |
CN114238764A (zh) | 基于循环神经网络的课程推荐方法、装置及设备 | |
CN114528474A (zh) | 推荐对象确定方法、装置、电子设备及存储介质 | |
CN108205540B (zh) | 信息浏览的方法、装置和*** | |
CN117235371A (zh) | 视频推荐方法、模型训练方法及装置 | |
CN113836388A (zh) | 信息推荐方法、装置、服务器及存储介质 | |
CN112182460A (zh) | 资源的推送方法和装置、存储介质及电子装置 | |
CN114357292B (zh) | 模型训练方法、设备和存储介质 | |
CN113076450B (zh) | 一种目标推荐列表的确定方法和装置 | |
JP6129815B2 (ja) | 情報処理装置、方法及びプログラム | |
CN113221016A (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 |