CN116910567B - 推荐业务的在线训练样本构建方法及相关装置 - Google Patents
推荐业务的在线训练样本构建方法及相关装置 Download PDFInfo
- Publication number
- CN116910567B CN116910567B CN202311170753.2A CN202311170753A CN116910567B CN 116910567 B CN116910567 B CN 116910567B CN 202311170753 A CN202311170753 A CN 202311170753A CN 116910567 B CN116910567 B CN 116910567B
- Authority
- CN
- China
- Prior art keywords
- sample
- target
- service data
- task
- data
- 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
- 238000010276 construction Methods 0.000 title claims abstract description 171
- 238000012549 training Methods 0.000 title claims abstract description 149
- 238000000605 extraction Methods 0.000 claims abstract description 209
- 238000000034 method Methods 0.000 claims abstract description 75
- 230000008569 process Effects 0.000 claims abstract description 26
- 230000000875 corresponding effect Effects 0.000 claims description 213
- 230000006399 behavior Effects 0.000 claims description 87
- 238000012545 processing Methods 0.000 claims description 64
- 230000002776 aggregation Effects 0.000 claims description 36
- 238000004220 aggregation Methods 0.000 claims description 36
- 238000004140 cleaning Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 19
- 230000002596 correlated effect Effects 0.000 claims description 16
- 238000011156 evaluation Methods 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 16
- 238000011161 development Methods 0.000 abstract description 12
- 238000005516 engineering process Methods 0.000 description 30
- 238000010586 diagram Methods 0.000 description 19
- 238000010801 machine learning Methods 0.000 description 14
- 230000003993 interaction Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 5
- 230000002085 persistent effect Effects 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012856 packing Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例提供了一种推荐业务的在线训练样本构建方法及相关装置,涉及人工智能、云计算等领域。该方法包括:获取开发人员上传的配置文件和预先配置好的第一样本构建代码文件;然后,将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,从而通过第二样本构建代码文件执行在线训练样本构建处理。开发人员可以配置样本特征抽取任务和样本标签抽取任务的相关工作流即可,可以解决构建在线训练样本的代码文件的开发效率过低的技术问题,以实现提高构建在线训练样本的代码文件的开发效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及人工智能技术领域,具体而言,本申请涉及一种推荐业务的在线训练样本构建方法及相关装置。
背景技术
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如利用推荐模型实现推荐业务。推荐业务可以是推荐资讯或者推荐商品等。为了提高推荐的准确性,通常采用在线增量学习的生成实时的训练样本,从而实时地对推荐模型进行调整。
在相关技术中,针对不同推荐业务,都需要单独开发一套用来构建在线训练样本的代码文件,从而在实现推荐业务时利用推荐业务对应的代码文件构建在线训练样本,进而实时地对推荐业务对应的推荐模型进行调整。
然而,针对不同推荐业务,都需要单独开发一套用来构建在线训练样本的代码文件,开发效率较低。
发明内容
本申请实施例提供了一种推荐业务的在线训练样本构建方法及相关装置,用于解决构建在线训练样本的代码文件的开发效率过低的技术问题,以实现提高构建在线训练样本的代码文件的开发效率。
一方面,本申请提供了一种推荐业务的在线训练样本构建方法,包括:
获取上传的配置文件,配置文件用于配置样本特征抽取任务对应的第一抽取规则和样本标签抽取任务对应的第二抽取规则;
获取预先配置好的第一样本构建代码文件,第一样本构建代码文件指示在线训练样本构建任务的通用工作流,在线训练样本构建任务包括样本特征抽取任务和样本标签抽取任务;
将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,以通过第二样本构建代码文件执行在线训练样本构建处理,在线训练样本构建处理包括:
从第一数据源获取第一业务数据,并基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,第一业务数据指示向目标对象推荐的推荐业务对应的推荐内容,目标样本特征包括推荐内容的目标推荐内容特征;
从第二数据源获取第二业务数据,并基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,第二业务数据指示目标对象针对推荐内容的行为,目标样本标签信息包括目标对象的目标行为信息;
对于每一目标样本标签信息,将目标样本标签信息与目标样本特征进行关联,目标样本标签信息用于生成对应的目标样本标签,以基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本。
可选的,在线训练样本构建任务还包括样本拼接任务,方法还包括:
获取配置的样本拼接任务对应的拼接任务参数,拼接任务参数包括用于指示具备执行样本拼接任务的任务处理能力的硬件资源;
为样本拼接任务分配硬件资源;
将目标样本标签信息与目标样本特征进行关联,包括:
通过硬件资源将目标样本标签信息与目标样本特征进行关联。
可选的,在线训练样本构建处理还包括:
分别确定第一数据源和第二数据源各自对应的业务数据获取速率,并分别确定第一数据源和第二数据源各自对应的权重;
基于第一数据源对应的业务数据获取速率和权重以及第二数据源对应的业务数据获取速率和权重进行加权计算,得到样本拼接任务对应的目标业务数据获取速率;
若目标业务数据获取速率大于硬件资源对应的接收速率阈值,则对分配的硬件资源进行调整;
将目标样本标签信息与目标样本特征进行关联,包括:
通过调整后的硬件资源将目标样本标签信息与目标样本特征进行关联,其中,调整后的硬件资源所指示的任务处理能力强于分配的硬件资源所指示的任务处理能力。
可选的,第一数据源对应的权重或第二数据源对应的权重中的至少一项是通过以下方式确定的:
获取预置的权重评估参数,权重评估参数包括目标对象所使用的目标终端显示推荐内容的显示区域大小或目标终端显示的推荐内容数量中的至少一项;
基于权重评估参数确定第一数据源对应的权重或第二数据源对应的权重中的至少一项;
其中,显示区域大小与第一数据源对应的权重正相关且与第二数据源对应的权重负相关;显示的推荐内容数量与第一数据源对应的权重正相关且与第二数据源对应的权重负相关。
可选的,配置文件包括用于配置样本特征抽取任务的第一配置子文件和用于配置样本标签抽取任务的第二配置子文件,方法还包括:
获取新的配置子文件,新的配置子文件包括新的第一配置子文件或新的第二配置子文件中的至少一项,新的配置子文件是通过响应于针对第一配置界面的目标配置控件的触发操作,展示第二配置界面,并通过第二配置界面获取被上传的文件,目标配置控件为第一配置界面中的样本特征提取任务对应的配置控件或样本标签提取任务对应的配置控件中的至少一项;
将新的配置子文件替换配置文件中目标配置控件对应的配置子文件,得到新的第二样本构建代码文件,以通过新的第二样本构建代码文件执行在线训练样本构建处理。
可选的,配置文件还用于配置样本特征抽取任务对应的第一数据清洗规则或样本标签抽取任务对应的第二数据清洗规则中的至少一项,在线训练样本构建处理还包括以下的至少一项:
基于第一数据清洗规则对第一业务数据进行清洗,以基于第一抽取规则对清洗后的第一业务数据进行抽取;
基于第二数据清洗规则对第二业务数据进行清洗,以基于第二抽取规则对清洗后的第二业务数据进行抽取。
可选的,配置文件还用于配置样本特征抽取任务关联的第一维表或样本标签抽取任务关联的第二维表中的至少一项,第一维表包括第三业务数据,第二维表包括第四业务数据,第三业务数据和第四业务数据来源于第一数据源和第二数据源之外,在线训练样本构建处理还包括以下的至少一项:
获取第一维表,并将第一维表中的第三业务数据与第一业务数据进行合并,得到第一目标业务数据,以在基于第一抽取规则对第一业务数据进行抽取时,基于第一抽取规则对第一目标业务数据进行抽取;
获取第二维表,并将第二维表中的第四业务数据与第二业务数据进行合并,得到第二目标业务数据,以在基于第二抽取规则对第二业务数据进行抽取时,基于第二抽取规则对第二目标业务数据进行抽取。
可选的,目标样本标签是通过以下方式生成的:
确定在线训练样本所应用的推荐模型的模型属性;
基于模型属性生成目标样本标签信息对应的目标样本标签。
可选的,配置文件还用于配置样本标签抽取任务对应的行为聚合窗口的时间阈值,在线训练样本构建处理,还包括:
基于时间阈值将获取的第二业务数据分配至至少一个行为聚合窗口,其中,一个行为聚合窗口包括一个或多个第二业务数据,多个第二业务数据中数据生成时间相邻的任意两个第二业务数据之间的数据生成时间差小于或等于时间阈值;
基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,包括:
对于每一行为聚合窗口,基于第二抽取规则对行为聚合窗口中的第二业务数据进行抽取,以得到行为聚合窗口对应的目标样本标签信息。
可选的,第一抽取规则包括待抽取的第一目标字段标识,第一业务数据包括对应有第一字段标识的推荐内容特征,基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,包括:
将与第一目标字段标识一致的第一字段标识所对应的推荐内容特征作为目标样本特征;
第二抽取规则包括待抽取的第二目标字段标识,第二业务数据包括对应有第二字段标识的行为信息,基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,包括:
将与第二目标字段标识一致的第二字段标识所对应的行为信息作为目标样本标签信息。
可选的,推荐内容包括目标对象所使用的目标终端显示的推荐内容和未显示的推荐内容,基于第一抽取规则对第一业务数据进行抽取,包括:
确定显示的推荐内容的更新频率;
若显示的推荐内容的更新频率为第一更新频率,则基于第一抽取规则对第一业务数据进行抽取;
若显示的推荐内容的更新频率为第二更新频率,则基于第一抽取规则对第一业务数据中显示的推荐内容对应的部分数据进行抽取;
其中,第一更新频率大于第二更新频率。
可选的,基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,包括:
将第一抽取规则和第一业务数据发送至离线特征服务模块,以通过离线特征服务模块基于第一抽取规则对第一业务数据进行抽取,离线特征服务模块用于抽取不同推荐业务各自对应的样本特征;
从离线特征服务模块输出的候选样本特征集中提取推荐业务对应的目标样本特征。
另一方面,本申请实施例还提供了一种推荐业务的在线训练样本构建装置,包括:
第一获取模块,用于获取上传的配置文件,配置文件用于配置样本特征抽取任务对应的第一抽取规则和样本标签抽取任务对应的第二抽取规则;
第二获取模块,用于获取预先配置好的第一样本构建代码文件,第一样本构建代码文件指示在线训练样本构建任务的通用工作流,在线训练样本构建任务包括样本特征抽取任务和样本标签抽取任务;
样本构建模块,用于将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,以通过第二样本构建代码文件执行在线训练样本构建处理,样本构建模块在执行在线训练样本构建处理时,用于:
从第一数据源获取第一业务数据,并基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,第一业务数据指示向目标对象推荐的推荐业务对应的推荐内容,目标样本特征包括推荐内容的目标推荐内容特征;
从第二数据源获取第二业务数据,并基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,第二业务数据指示目标对象针对推荐内容的行为,目标样本标签信息包括目标对象的目标行为信息;
对于每一目标样本标签信息,将目标样本标签信息与目标样本特征进行关联,目标样本标签信息用于生成对应的目标样本标签,以基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本。
另一方面,本申请实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,处理器执行计算机程序以实现本申请任一实施例的方法的步骤。
另一方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本申请任一实施例的方法的步骤。
另一方面,本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现本申请任一实施例的方法的步骤。
本申请实施例通过获取上传的配置文件和预先配置好的第一样本构建代码文件;将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,以通过第二样本构建代码文件执行在线训练样本构建处理,从而从第一数据源获取第一业务数据,并基于配置文件配置的第一抽取规则对第一业务数据进行抽取,以得到目标样本特征;以及从第二数据源获取第二业务数据,并基于配置文件配置的第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息;然后,对于每一目标样本标签信息,将目标样本标签信息与目标样本特征进行关联,目标样本标签信息用于生成对应的目标样本标签,以基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本,由于在线训练样本构建任务的通用工作流已经配置为第一样本构建代码文件,则开发人员可以配置样本特征抽取任务和样本标签抽取任务的相关工作流即可,可以解决构建在线训练样本的代码文件的开发效率过低的技术问题,以实现提高构建在线训练样本的代码文件的开发效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种推荐业务的在线训练样本构建系统的框架示意图;
图2为本申请实施例提供的一种相关技术中构建在线训练样本的代码文件的示意图;
图3为本申请实施例提供的一种推荐业务的在线训练样本构建方法的应用场景示意图;
图4为本申请实施例提供的一种推荐业务的在线训练样本构建方法的流程示意图;
图5为本申请实施例提供的一种第一配置界面的界面示意图;
图6为本申请实施例提供的一种第二配置界面的界面示意图;
图7为本申请实施例提供的一种行为聚合的结果示意图;
图8为本申请实施例提供的一种在线训练样本构建任务的框架示意图;
图9为本申请实施例提供的一种实时样本数据流链路示意图的示意图;
图10为本申请实施例提供的一种推荐系统中目标对象与推荐内容之间的行为交互时序图;
图11为本申请实施例提供的一种推荐业务的在线训练样本构建装置的结构示意图;
图12为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或 “耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”指示实现为“A”,或者实现为“A”,或者实现为“A和B”。“多个”指的是不少于两个。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请实施例可能会用到的一些术语进行解释:
机器学习平台:机器学习平台是为机器学习相关技术提供的一站式服务的平台,机器学习平台提供模型,特征,样本管理以及任务调度等相关功能。
特征:特征指机器学习中,描述一个实例的属性,作为模型的输入。
样本:包含特征以及模型侧的标签(Label),用于训练机器学习模型。
特征库:特征库是特征的集合,用于管理特征,与特征是多对多的逻辑映射关系,特征库包含若干用户在机器学习平台上注册,并填写特征工程抽取配置后的特征。
样本特征集:样本特征集包含若干个特征库中若干个特征,用于确定训练样本需要包含哪些特征。
特征集:特征集是样本特征集的子集,特征集的特征可以从正式样本集中已上线的特征中进行勾选,特征集标识(Identity document,id)在训练模型时使用,每个特征集一般和模型一一对应,特征集勾选的特征即为该模型实际使用的特征。
特征服务:与本发明配套的基础服务,可以根据样本特征集id或模型特征集id拉取到本次请求所需特征,用于模型推理和模型训练。
画布:画布是工作流技术,以工作流为底座,串联样本调度任务,支持节点可视化和拉起任务调度。
请参阅图1,图1为本申请实施例提供的一种推荐业务的在线训练样本构建系统的框架示意图。如图1所示的系统可以包括终端102和服务器104,终端102和服务器104可以通信连接。其中,开发人员可以将配置好的配置文件通过终端102进行上传,然后将配置文件添加至预先配置好的第一样本构建代码文件,得到第二样本构建代码文件,则运行第二样本构建代码文件可以构建实时的在线训练样本。
可选的,本实施例中的第一样本构建代码文件可以配置在终端102或服务器104中,第二样本构建代码文件可以在终端102或服务器104中运行,在此不做限定。
可选的,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备或便携式可穿戴设备等中的至少一项,物联网设备可为智能音箱、智能电视、智能空调或智能车载设备等中的至少一项。便携式可穿戴设备可为智能手表或智能手环等中的至少一项。数据存储系统可以存储服务器104需要处理的数据,例如存储第一样本构建代码文件。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104可以配置有机器学习平台。
请参阅图2,图2为本申请实施例提供的一种相关技术中构建在线训练样本的代码文件的示意图。
如图2所示,对于每一业务场景(以下也称推荐业务),都需要技术人员在业务场景的代码仓库下根据业务逻辑编写对应的代码,手动编译打JAR包上传到调度平台上调度执行。
由此可知,针对不同推荐业务,都需要单独开发一套用来构建在线训练样本的代码文件,开发效率较低。
具体的,在实际开发中,对于一个从零开始的推荐业务来说,在没有通用组件的帮助下,开发一套实时样本的数据管线(Pipeline)是繁琐耗时,且效率低下的,后续维护迭代训练样本的成本也比较高,对没有流数据处理背景的开发人员来说就更加困难。详细地说:
1.开发人员没有流式数据处理的背景,传统推荐算法人员具备的技术栈一般是python和sql,没有写过java/scala代码或者对分布式流处理引擎(Flink引擎)不熟悉,从零开始学习Flink引擎的接口(API)比较困难,上手门槛较高。
2.实时样本Pipeline中包含多个阶段,如源数据处理,样本Label信息抽取,特征获取,特征Label信息拼接等,在整个过程中会涉及通过HTTP/ RPC与外部服务和存储进行交互,有较重的工程工作,工程工作相关门槛对算法人员也比较高,且这部份工作有一部份是通用的,可以复用。
3.一个场景/业务以写代码的方式搭建一条实时样本Pipeline,数据处理等业务逻辑几乎全部硬编码(hard code)在代码中,一条数据Pipeline可以达到上万行代码,十分凌乱,后续新加入参与迭代的开发人员想掌握数据业务逻辑就需要把这块所有的代码全部看一遍,无疑是低效的。
针对相关技术中所存在的上述至少一个技术问题或需要改善的地方,本申请提出一种推荐业务的在线训练样本构建方法及相关装置,本申请实施例可以基于领域特定(Domain Specific Language,DSL)语言实现。本申请实施例通过获取上传的配置文件和预先配置好的第一样本构建代码文件;将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,以通过第二样本构建代码文件执行在线训练样本构建处理,从而从第一数据源获取第一业务数据,并基于配置文件配置的第一抽取规则对第一业务数据进行抽取,以得到目标样本特征;以及从第二数据源获取第二业务数据,并基于配置文件配置的第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息;然后,对于每一目标样本标签信息,将目标样本标签信息与目标样本特征进行关联,目标样本标签信息用于生成对应的目标样本标签,以基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本,可以解决构建在线训练样本的代码文件的开发效率过低的技术问题,以实现提高构建在线训练样本的代码文件的开发效率。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
可选的,本申请实施例可以涉及人工智能(Artificial Intelligence,AI)技术领域。例如,利用推荐模型向目标对象推荐内容。
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互系统、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。人工智能领域模型训练的重要技术,预训练模型,即是从自然语言处理(Nature Language processing,NLP)领域的大语言模型(Large Language Model)发展而来。大语言模型在大量的文本数据上进行训练,可以执行广泛的任务,包括文本总结、翻译、情感分析等等。LLM的特点是规模庞大,包含数十亿的参数,帮助它们学习语言数据中的复杂模式。这些模型通常基于深度学习架构,如转化器,这有助于它们在各种NLP任务上取得令人印象深刻的表现。其中,本申请实施例中的初始生成式语言模型可以是一种大语言模型。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。预训练模型是深度学习的最新发展成果,融合了以上技术。其中,本申请实施例可以通过机器学习的方式,将目标场景数据注入预先训练好的初始生成式语言模型,得到目标语言模型。
可选的,本申请实施例还可以涉及云技术。例如,本申请实施例的第一样本构建代码文件和第二样本构建代码文件可以部署在云端运行。又例如推荐模型可以部署在云端。
其中,云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。而云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和目标业务访问功能的一个存储系统。
需要说明的是,在本申请的可选实施例中,所涉及到的对象数据(例如对象的行为数据),当本申请中的实施例运用到具体产品或技术中时,需要获得对象许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。也就是说,本申请实施例中如果涉及到与对象有关的数据,需要经由对象授权同意、相关部门授权同意、且符合国家和地区的相关法律法规和标准的情况下获取的。实施例中如涉及个人信息,所有个人信息的获取需要获得个人的同意,如涉及到敏感信息,需要征得信息主体的单独同意,实施例也是需要在对象授权同意的情况下实施。
首先,对本申请实施例的技术方案的应用场景进行举例说明。请参阅图3,图3为本申请实施例提供的一种推荐业务的在线训练样本构建方法的应用场景示意图。
如图3所示,可以通过推荐模型确定要向目标对象推荐的推荐内容,然后在目标对象所使用的目标终端显示推荐内容的部分或全部内容。可选的,推荐内容可以是推荐的资讯、推荐的商品、推荐的歌曲或推荐的视频等中的至少一项,在此不做限定。然后,目标对象可能会针对显示的推荐内容产生一些行为。具体的,若目标对象产生了一些针对推荐内容的行为,则可以得到目标对象针对推荐内容的一些行为数据。可选的,目标对象针对显示的推荐内容所产生的行为例如可以是点击显示的推荐内容,以浏览推荐内容的具体细节;又例如可以是推荐内容的切换操作,以切换目标终端所显示的推荐内容等。
然后,可以利用本申请实施例的技术方案,基于推荐内容和目标对象针对推荐内容的行为,构建实时的在线训练样本对推荐模型进行调整,则推荐模型后续确定的推荐内容也更准确。
请参阅图4,图4为本申请实施例提供的一种推荐业务的在线训练样本构建方法的流程示意图。图4所示的推荐业务的在线训练样本构建方法可以由电子设备来执行,电子设备可以包括终端或服务器中的至少一项。如图4所示的推荐业务的在线训练样本构建方法可以包括:
S410、获取上传的配置文件,配置文件用于配置样本特征抽取任务对应的第一抽取规则和样本标签抽取任务对应的第二抽取规则。
其中,配置文件可以是开发人员编写代码,然后将编写的代码进行编译后打JAR包得到的。可选的,配置文件可以是开发人员在终端上传的。具体的,本实施例中,配置文件可以是开发人员编写业务逻辑相关的SQL + 配置完成数据处理以及字段抽取得到的文件。其中,样本特征抽取任务可以是指进行样本特征抽取处理的任务,第一抽取规则定义了如何抽取样本特征。样本标签抽取任务可以是指进行样本标签抽取处理的任务,第二抽取规则定义了如何抽取样本标签信息。
S420、获取预先配置好的第一样本构建代码文件,第一样本构建代码文件指示在线训练样本构建任务的通用工作流,在线训练样本构建任务包括样本特征抽取任务和样本标签抽取任务。
在本实施例中,具体的,一个完整的在线训练样本构建任务一般会有比较复杂的工作流,例如获取源数据,对源数据处理清洗、样本特征抽取、样本标签(Label)信息抽取、特征Label信息拼接关联等,在整个过程中还会涉及通过超文本传输协议(HypertextTransfer Protocol,HTTP)HTTP或远程过程调用(RPC)与外部服务和存储进行交互等处理逻辑。然而,在此在线训练样本构建任务中,针对不同推荐业务来说,有一部份的任务处理逻辑是通用的,也即工作流包括通用的工作流,通用的工作流可以复用;而另一部分任务处理逻辑是各推荐业务独有的,也即工作流包括独特的工作流,需要单独配置。因此,本申请实施例中的第一样本构建代码文件可以指示在线训练样本构建任务的通用工作流。可选的,第一样本构建代码文件可以是基于不同推荐业务的通用任务处理逻辑编写的通用代码,然后将编写的通用代码进行编译后打JAR包得到的文件。
具体的,在线训练样本的开发一般是使用Flink/Storm等流式数据处理引擎来完成。
S430、将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,以通过第二样本构建代码文件执行在线训练样本构建处理。
在本实施例中,由于配置文件是针对推荐业务独有的任务处理逻辑所编写得到的,而第一样本构建代码文件是基于不同推荐业务的通用任务处理逻辑编写得到的,则将配置文件添加至第一样本构建代码文件后得到的第二样本构建代码文件,定义了在线训练样本构建任务完整工作流。
其中,通过第二样本构建代码文件执行在线训练样本构建处理可以包括:
S431、从第一数据源获取第一业务数据,并基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,第一业务数据指示向目标对象推荐的推荐业务对应的推荐内容,目标样本特征包括推荐内容的目标推荐内容特征。
在本实施例中,可选的,推荐模型生成的实时推荐内容也可以实时存储在第一数据源中,则可以从第一数据源获取指示向目标对象推荐的推荐业务对应的推荐内容的第一业务数据,然后,基于配置文件所配置的第一抽取规则对第一业务数据进行抽取,从而得到用于构建在线训练样本的目标样本特征。可选的,第一数据源可以是分布式消息发布(pulsar)数据源。
S432、从第二数据源获取第二业务数据,并基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,第二业务数据指示目标对象针对推荐内容的行为,目标样本标签信息包括目标对象的目标行为信息。
在本实施例中,可选的,当目标对象针对推荐内容产生了一定的行为后,可以得到针对推荐内容的行为数据,从而将行为数据存储到第二数据源中,则可以从第二数据源获取指示目标对象针对推荐内容的行为的第二业务数据,然后,基于配置文件所配置的第二抽取规则对第二业务数据进行抽取,从而得到目标样本标签信息。
可选的,第一数据源和第二数据源可以是不同的数据源。
S433、对于每一目标样本标签信息,将目标样本标签信息与目标样本特征进行关联。
在本实施例中,将目标样本标签信息与目标样本特征进行关联,从而可以确定目标对象的产生的行为是针对哪些推荐内容的。
S434、基于目标样本标签信息生成对应的目标样本标签,并基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本。
在本实施例中,可选的,目标样本标签可以是[0,1]之间的数。具体的,目标样本标签与具体的目标行为有关。示例性的,若目标对象针对显示的推荐内容所产生的行为是点击显示的推荐内容,以浏览推荐内容的具体细节,则说明目标对象对该内容比较感兴趣,则该行为对应的标签为1;又例如目标对象针对显示的推荐内容所产生的行为是推荐内容的切换操作,以切换目标终端所显示的推荐内容等,则说明目标对象对该内容没那么感兴趣,则该行为对应的标签为大于0小于1的数,在此不做限定。
具体的,在基于目标样本标签信息生成对应的目标样本标签后,则可以基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本。
本实施例的技术方案,通过获取上传的配置文件和预先配置好的第一样本构建代码文件;将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,以通过第二样本构建代码文件执行在线训练样本构建处理,从而从第一数据源获取第一业务数据,并基于配置文件配置的第一抽取规则对第一业务数据进行抽取,以得到目标样本特征;以及从第二数据源获取第二业务数据,并基于配置文件配置的第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息;然后,对于每一目标样本标签信息,将目标样本标签信息与目标样本特征进行关联,目标样本标签信息用于生成对应的目标样本标签,以基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本,由于在线训练样本构建任务的通用工作流已经配置为第一样本构建代码文件,则对于不同推荐任务,开发人员可以配置样本特征抽取任务和样本标签抽取任务的相关独特工作流即可,可以解决构建在线训练样本的代码文件的开发效率过低的技术问题,以实现提高构建在线训练样本的代码文件的开发效率。
需要说明的是,在线训练样本构建任务还可以包括样本拼接任务。
在一种可能的实现方式中,用于执行样本拼接任务的硬件资源可以是固定的,配置在第一样本构建代码文件中。
在另一种可能的实现方式中,硬件资源可以是开发人员配置的。可选的,在本实施例中,方法还包括:
获取配置的样本拼接任务对应的拼接任务参数,拼接任务参数包括用于指示具备执行样本拼接任务的任务处理能力的硬件资源;
为样本拼接任务分配硬件资源;
将目标样本标签信息与目标样本特征进行关联,包括:
通过硬件资源将目标样本标签信息与目标样本特征进行关联。
其中,拼接任务参数可以是开发人员配置的任务参数。具体的,配置的拼接任务参数包括指示具备执行样本拼接任务的任务处理能力的硬件资源。可选的,硬件资源包括但不限于中央处理器(Central Processing Unit,CPU)频率、CPU核心数或运行内存大小等中的至少一项。在本实施例中,按照拼接任务参数中的硬件资源将目标样本标签信息与目标样本特征进行关联。可选的,还可以通过硬件资源生成目标样本标签信息对应的目标样本标签,以及基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本。可选的,拼接任务参数还可以包括第一数据源和第二数据源的地址。
本实施例的技术方案,通过开发人员配置拼接任务参数,则可以根据需要调整拼接任务参数,可以提高在线训练样本构建的灵活性。
在一些示例的情形中,由于第一业务数据的生成速率和第二业务数据的生成速率并不是固定的,因此,可能存在某些时刻,配置的硬件资源不足,进而导致在线训练样本的生成效率不足。
因此,在一种可能的实现方式中,在线训练样本构建处理还包括:
分别确定第一数据源和第二数据源各自对应的业务数据获取速率,并分别确定第一数据源和第二数据源各自对应的权重;
基于第一数据源对应的业务数据获取速率和权重以及第二数据源对应的业务数据获取速率和权重进行加权计算,得到样本拼接任务对应的目标业务数据获取速率;
若目标业务数据获取速率大于硬件资源对应的接收速率阈值,则对分配的硬件资源进行调整;
将目标样本标签信息与目标样本特征进行关联,包括:
通过调整后的硬件资源将目标样本标签信息与目标样本特征进行关联,其中,调整后的硬件资源所指示的任务处理能力强于分配的硬件资源所指示的任务处理能力。
在本实施例中,生成的第一业务数据实时传输至第一数据源中存储,因此,第一数据源对应的业务数据获取速率可以相当于第一业务数据的生成速率,第二数据源对应的业务数据获取速率可以相当于第二业务数据的生成速率。其中,接收速率阈值可以是在不造成第一业务数据和第二业务数据拥堵的情况下,硬件资源所对应的最大速率。
本实施例的技术方案,通过分别确定第一数据源和第二数据源各自对应的业务数据获取速率,并分别确定第一数据源和第二数据源各自对应的权重;基于第一数据源对应的业务数据获取速率和权重以及第二数据源对应的业务数据获取速率和权重进行加权计算,得到样本拼接任务对应的目标业务数据获取速率;若目标业务数据获取速率大于硬件资源对应的接收速率阈值,则对分配的硬件资源进行调整,以通过调整后的硬件资源将目标样本标签信息与目标样本特征进行关联,可以减少因配置的硬件资源不足,进而导致在线训练样本的生成效率不足的情况,从而提高在线训练样本的生成效率。可选的,若样本拼接任务对应的目标业务数据获取速率小于接收速率阈值,则可以将当前硬件资源调整回配置的硬件资源,可以减少硬件资源的开销。
需要说明的是,第一数据源和第二数据源各自对应的权重可以是固定的,预先配置好的,也可以根据实际情况实时确定的。
在一种可能的实现方式中,第一数据源对应的权重或第二数据源对应的权重中的至少一项是通过以下方式确定的:
获取预置的权重评估参数,权重评估参数包括目标对象所使用的目标终端显示推荐内容的显示区域大小或目标终端显示的推荐内容数量中的至少一项;
基于权重评估参数确定第一数据源对应的权重或第二数据源对应的权重中的至少一项;
其中,显示区域大小与第一数据源对应的权重正相关且与第二数据源对应的权重负相关;显示的推荐内容数量与第一数据源对应的权重正相关且与第二数据源对应的权重负相关。
在本实施例中,具体的,推荐模型每一次生成的推荐内容的总数量可能是相同的,但是由于终端或者是目标对象的内容显示设置等情况的不同,则不同终端每一次显示的推荐内容数量可能不同。
因此,本实施例通过目标对象所使用的目标终端显示推荐内容的显示区域大小或目标终端显示的推荐内容数量中的至少一项来确定第一数据源对应的权重或第二数据源对应的权重中的至少一项。
具体的,显示区域越大,则目标对象一次性能看到的显示的推荐内容也越多,则第一业务数据的更新可能越频繁,因此,第一数据源对应的权重也要设置的大一些,从而提高第一数据源对应的业务数据获取速率对于目标业务数据获取速率的影响程度。显示区域越大,则目标对象产生的行为可能越少,也即第二业务数据的更新可能越不频繁,因此,第二数据源对应的权重也要设置的小一些,从而降低第二数据源对应的业务数据获取速率对于目标业务数据获取速率的影响程度。
此外,显示的推荐内容数量越多,则目标对象一次性能看到的显示的推荐内容也越多,则第一业务数据的更新可能越频繁,因此,第一数据源对应的权重也要设置的大一些,从而提高第一数据源对应的业务数据获取速率对于目标业务数据获取速率的影响程度。显示的推荐内容数量越多,则目标对象产生的行为可能越少,也即第二业务数据的更新可能越不频繁,因此,第二数据源对应的权重也要设置的小一些,从而降低第二数据源对应的业务数据获取速率对于目标业务数据获取速率的影响程度。
需要说明的是,在本实施例中,可以是当推荐模型本次生成的所有推荐内容都被浏览后才更新新的推荐内容,而在更新新的推荐内容之前,已经通过本次推荐内容所生成的在线训练样本对推荐模型进行了更新。
本实施例的技术方案,通过目标终端显示推荐内容的显示区域大小或目标终端显示的推荐内容数量中的至少一项,确定第一数据源对应的权重或第二数据源对应的权重中的至少一项,由此可以提高目标业务数据获取速率的计算准确性,进而提高是否需要对分配的硬件资源进行调整的评估准确性,从而进一步保证在线训练样本的生成效率。
在一种可能的实现方式中,配置文件包括用于配置样本特征抽取任务的第一配置子文件和用于配置样本标签抽取任务的第二配置子文件,方法还包括:
获取新的配置子文件,新的配置子文件包括新的第一配置子文件或新的第二配置子文件中的至少一项,新的配置子文件是通过响应于针对第一配置界面的目标配置控件的触发操作,展示第二配置界面,并通过第二配置界面获取被上传的文件,目标配置控件为第一配置界面中的样本特征提取任务对应的配置控件或样本标签提取任务对应的配置控件中的至少一项;
将新的配置子文件替换配置文件中目标配置控件对应的配置子文件,得到新的第二样本构建代码文件,以通过新的第二样本构建代码文件执行在线训练样本构建处理。
请参阅图5和图6。图5为本申请实施例提供的一种第一配置界面的界面示意图。图6为本申请实施例提供的一种第二配置界面的界面示意图。
结合图5来说,第一配置界面中的样本特征提取任务对应的配置控件或样本标签提取任务对应的配置控件。第一配置界面和第二配置界面可以是以画布为基础构建的。若需要更换新的第一配置子文件,则通过针对样本特征提取任务对应的配置控件的触发操作,展示第二配置界面,开发人员在第二界面上传新的第一配置子文件,然后,将新的第一配置子文件替换旧的第一配置子文件。同理,若需要更换新的第二配置子文件,则通过针对样本标签提取任务对应的配置控件的触发操作,展示第二配置界面,开发人员在第二界面上传新的第二配置子文件,然后,将新的第二配置子文件替换旧的第二配置子文件。可选的,触发操作可以是点击操作,也可以是拖曳操作等,在此不做限定。
可以理解的是,本实施例中第一配置子文件和第二配置子文件所能够配置的处理逻辑可以参照本申请任一实施例的描述,在此不做赘述。
可选的,第一配置界面还包括样本拼接任务对应的配置控件。当需要人工切换拼接任务参数时,则可以通过针对样本拼接任务对应的配置控件的触发操作,配置新的拼接任务参数。
在本实施例中,上述实时样本流相关任务封装为通用模板节点,整合在机器学习平台上。新接入推荐业务时,在资源与数据申请就绪的前提下,开发人员可以通过拖拽节点,使用本发明设计的DSL 语言,快速搭建起实时训练样本,无需手写Flink代码打包调度。特征请求抽取和Label抽取计算节点可以采用DSL语言抽象做配置化抽象,只需上传配置文件。样本特征拼接节点采用了本申请实施例对应第一样本构建代码文件,第一样本构建代码文件包括通用拼接组件,只需配置节点运行资源,无需额外开发。
本实施例的技术方案,开发人员可以通过针对第一配置界面的目标配置控件的触发操作就可以更换新的配置子文件,则更换新的配置子文件的方式易于操作。此外,由于样本特征提取任务对应的第一配置子文件和样本标签提取任务对应的第二配置子文件是独立的,因此可以选择更新样本特征提取任务或样本标签提取任务中的至少一项任务的配置子文件,可以减少更新配置子文件所需要的时间,提高配置子文件的更新效率。
在一种可能的实现方式中,配置文件还用于配置样本特征抽取任务对应的第一数据清洗规则或样本标签抽取任务对应的第二数据清洗规则中的至少一项,在线训练样本构建处理还包括以下的至少一项:
基于第一数据清洗规则对第一业务数据进行清洗,以基于第一抽取规则对清洗后的第一业务数据进行抽取;
基于第二数据清洗规则对第二业务数据进行清洗,以基于第二抽取规则对清洗后的第二业务数据进行抽取。
在本实施例中,开发人员也可以自定义第一数据清洗规则或第二数据清洗规则中的至少一项数据清洗规则,通过配置文件进行配置。
本实施例的技术方案,通过配置文件配置样本特征抽取任务对应的第一数据清洗规则或样本标签抽取任务对应的第二数据清洗规则中的至少一项,可以提高数据清洗的灵活性。
可以理解的是,数据越多则生成的在线训练样本越准确。因此,在一种可能的实现方式中,配置文件还用于配置样本特征抽取任务关联的第一维表或样本标签抽取任务关联的第二维表中的至少一项,第一维表包括第三业务数据,第二维表包括第四业务数据,第三业务数据和第四业务数据来源于第一数据源和第二数据源之外,在线训练样本构建处理还包括以下的至少一项:
获取第一维表,并将第一维表中的第三业务数据与第一业务数据进行合并,得到第一目标业务数据,以在基于第一抽取规则对第一业务数据进行抽取时,基于第一抽取规则对第一目标业务数据进行抽取;
获取第二维表,并将第二维表中的第四业务数据与第二业务数据进行合并,得到第二目标业务数据,以在基于第二抽取规则对第二业务数据进行抽取时,基于第二抽取规则对第二目标业务数据进行抽取。
在本实施例中,第一目标业务数据是将第一维表中的第三业务数据与第一业务数据进行合并得到的,则第一目标业务数据包括第一业务数据和第三业务数据,则在基于第一抽取规则对第一业务数据进行抽取时,可以基于第一抽取规则对第一目标业务数据进行抽取,从而提高抽取的目标样本特征的准确性。同理,第二目标业务数据是将第二维表中的第四业务数据与第二业务数据进行合并得到的,即第二目标业务数据包括第二业务数据和第四业务数据,则在在基于第二抽取规则对第二业务数据进行抽取时,基于第二抽取规则对第二目标业务数据进行抽取。在本实施例中,第一维表和第二维表可以存储在维表数据库中。
可选的,第三业务数据可以是指示目标对象的对象特征的数据。对象特征可以是反映目标对象的特性的特征,例如对象的喜好等,在此不做限定。在本实施例中,从对第一业务数据进行抽取时,还可以得到目标对象特征,则目标样本特征还包括目标对象特征,则得到的目标样本特征也更准确。可选的,第四业务数据可以指示目标对象的年龄的数据。在本实施例中,从第二业务数据进行抽取时,还可以得到目标对象的年龄信息,则目标样本标签信息还包括目标对象的年龄信息,则可以基于目标对象的目标行为信息和年龄信息来生成目标样本标签,则得到的目标样本标签也更准确。
本实施例的技术方案,通过配置文件配置样本特征抽取任务关联的第一维表或样本标签抽取任务关联的第二维表中的至少一项,可以提高构建的在线训练样本的准确性。
在一种可能的实现方式中,生成目标样本标签信息对应的目标样本标签可以包括:
确定在线训练样本所应用的推荐模型的模型属性;
基于模型属性生成目标样本标签信息对应的目标样本标签。
在本实施例中,具体的,对于同样的目标样本标签信息,不同推荐模型所对应的目标样本标签可能是不同的,例如,推荐点击模型和推荐购买模型所对应的目标样本标签可能是不同的。模型属性可以是推荐模型的类型,也可以是推荐模型的用途等属性,在此不做限定。
本实施例的技术方案,通过确定在线训练样本所应用的推荐模型的模型属性;基于模型属性生成目标样本标签信息对应的目标样本标签,可以提高目标样本标签的准确性,进而提高得到的在线训练样本的准确性。
在一种可能的实现方式中,配置文件还用于配置样本标签抽取任务对应的行为聚合窗口的时间阈值,在线训练样本构建处理,还包括:
基于时间阈值将获取的第二业务数据分配至至少一个行为聚合窗口,其中,一个行为聚合窗口包括一个或多个第二业务数据,多个第二业务数据中数据生成时间相邻的任意两个第二业务数据之间的数据生成时间差小于或等于时间阈值;
基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,包括:
对于每一行为聚合窗口,基于第二抽取规则对行为聚合窗口中的第二业务数据进行抽取,以得到行为聚合窗口对应的目标样本标签信息。
请参阅图7,图7为本申请实施例提供的一种行为聚合的结果示意图。如图7所示,一个行为聚合窗口内可以包括一个或多个第二业务数据。若一个行为聚合窗口内包括多个第二业务数据,则一个行为聚合窗口内的多个业务数据中,数据生成时间相邻的任意两个第二业务数据之间的数据生成时间差小于或等于时间阈值。
在本实施例中,还可以通过配置文件配置样本标签抽取任务对应的行为聚合窗口的时间阈值,可以提高在线训练样本构建的灵活性。此外,可以分析目标对象的习惯,并根据目标对象的习惯来设置对应的时间阈值,使得聚合的行为更贴合目标对象的习惯,从而提高在线训练样本构建的准确性。
在一种可能的实现方式中,第一抽取规则包括待抽取的第一目标字段标识,第一业务数据包括对应有第一字段标识的推荐内容特征,基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,包括:
将与第一目标字段标识一致的第一字段标识所对应的推荐内容特征作为目标样本特征;
第二抽取规则包括待抽取的第二目标字段标识,第二业务数据包括对应有第二字段标识的行为信息,基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,包括:
将与第二目标字段标识一致的第二字段标识所对应的行为信息作为目标样本标签信息。
在本实施例中,可以根据需要抽取相应字段的推荐内容特征或者行为信息等。
具体的,第一目标字段标识可以是应用程序标识,也即抽取特定来自特定应用程序的推荐内容特征。第二目标字段标识可以是应用程序标识,也即抽取特定来自特定应用程序的行为信息。可选的,第一目标字段标识和第二目标字段标识也可以不同,例如第二目标字段标识可以是行为属性字段标识,例如是点击行为标识或者是购买行为标识等,在此不做限定。
在一种可能的实现方式中,推荐内容包括目标对象所使用的目标终端显示的推荐内容和未显示的推荐内容,基于第一抽取规则对第一业务数据进行抽取,包括:
确定显示的推荐内容的更新频率;
若显示的推荐内容的更新频率为第一更新频率,则基于第一抽取规则对第一业务数据进行抽取;
若显示的推荐内容的更新频率为第二更新频率,则基于第一抽取规则对第一业务数据中显示的推荐内容对应的部分数据进行抽取;
其中,第一更新频率大于第二更新频率。
在本实施例中,具体的,若输入推荐模型的业务特征更新频率频繁,例如显示的推荐内容的更新频率频繁,则对一致性要求高,则可以对完整的第一业务数据进行抽取,此时推荐内容对应的时间最接近推荐的时间;如果业务特征更新频率较慢,推荐内容曝光时间和推理时间十分接近,此时可以对第一业务数据中显示的推荐内容对应的部分数据进行抽取,减少计算资源,节约计算开销。
可选的,在本实施例中,可以是目标对象所使用的目标终端显示推荐内容的显示区域越小,则更新越频繁;也可以是目标终端显示的推荐内容数量越少,则更新越频繁。
在一种可能的实现方式中,基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,包括:
将第一抽取规则和第一业务数据发送至离线特征服务模块,以通过离线特征服务模块基于第一抽取规则对第一业务数据进行抽取,离线特征服务模块用于抽取不同推荐业务各自对应的样本特征;
从离线特征服务模块输出的候选样本特征集中提取推荐业务对应的目标样本特征。
在本实施例中,具体的,实时样本数据流中,需要将样本特征与样本标签信息关联起来,目前通常采用的做法是特征请求快照(Request Snopshot)的方式,即保存请求时推理的样本特征,在样本标签信息完成抽取归因后进行关联。实际线上服务推理中,为了做到更少的计算更快的响应,推理时刻只会拉取和计算当前推理模型所需的特征,由于不同模型之间使用的特征不同,模型特征间的差集不为空,只保留当前模型推理特征去关联拼接的样本供其他模型训练可能会有效果差异。为了达到一份样本,所有推理模型共同使用的目的,本申请实施例提供了离线特征服务模块,该离线特征服务与在线特征服务共用相同的特征工程抽取配置,保证了离线训练和在线推理计算逻辑一致性,与在线特征服务不同的是,离线特征服务使用样本特征集来请求,因此离线特征服务返回的候选样本特征集是所有推理模型使用的样本特征的全集,实现了构建适用于不同推理模型的在线训练样本构建的适应性。此外,当前推理模型还可以利用其他推理模型输出的样本特征,从而提高构建在线训练样本的准确性。
为了更好地理解本方案,以下实施例在以上任一实施例的基础上,对本申请实施例的技术方案进行说明。
请参阅图8-10。图8为本申请实施例提供的一种在线训练样本构建任务的框架示意图。图9为本申请实施例提供的一种实时样本数据流链路示意图的示意图。图10为本申请实施例提供的一种推荐系统中目标对象与推荐内容之间的行为交互时序图。
同时,结合配置文件的样例进行说明:
{
"inputs": [
{"srcName": "log_1", "pulsarSourceID": 0, "pulsarDbName": "default","pulsarTableName": "log_1", "sourceServerUrl": "pulsar://demo.com:6650", "inTopic": "persistent://source/mid_pulsar", "subscription": "", "consumerToken": ""},
{
"srcName": "log_2",
"pulsarSourceID": 103,
"pulsarDbName": "default",
"pulsarTableName": "log_2",
"sourceServerUrl": "pulsar://sz-broker.demo.com:6650",
"inTopic": "persistent://demo/mmdata/log_2",
"subscription": "",
"consumerToken": ""
},
{
"srcName": "log_3",
"pulsarSourceID": 103,
"pulsarDbName": "default",
"pulsarTableName": "log_3",
"sourceServerUrl": "pulsar://sz-broker.demo.com:6650",
"inTopic": "persistent://demo/mmdata/log_3",
"subscription": ""
},
{
"srcName": "log_4",
"pulsarSourceID": 103,
"pulsarDbName": "default",
"pulsarTableName": "log_4",
"sourceServerUrl": "pulsar://sz-broker.demo.com:6650",
"inTopic": "persistent://demo/mmdata/log_4",
"subscription": "",
"consumerToken": ""
}],
"flinkSqls": [
{"tableName": "mid_log_1",
"sql": "SELECT logid_, uin_, noticeid_, timestamp_,view,click, 0 astime_, 0 as active_flag,msgtype,interactive, '' as uintid,session_id, 0 astop1_staytime,content_id,msgid,biz_subtype, ftime FROM log_1"},
{
"tableName": "mid_log_2",
"sql": "SELECT logid_, uin_,noticeid_, timestamp_, 0 as view, 0 asclick, time_, active_flag, 0 as msgtype, '' as interactive, uintid,session_id, actionstatus_, actionid_, ftime FROM log_2"
},
{
"tableName": "mid2_log_2",
"sql": "SELECT logid_, uin_, noticeid_, timestamp_, view, click,time_, active_flag, msgtype, interactive, uintid, session_id, top1_staytime,'' as content_id, '' as msgid, '' as biz_subtype, ftime FROM mid_log_2 "
},
{
"tableName": "mid_log_3",
"sql": "SELECT logid_, uin_, '' as noticeid_, timestamp_, 0 as view,0 as click, time_, active_flag, 0 as msgtype, '' as interactive, '' asuintid,session_id, 0 as top1_staytime, '' as content_id, '' as msgid, '' asbiz_subtype, ftime FROM log_3"
},
{
"tableName": "mid_log_4",
"sql": "SELECT logid_, uin_, CAST(noticeid_ AS STRING) as noticeid_,timestamp_, 0 as view, 0 as click, 0 as time_,active_flag, 0 as msgtype, ''as interactive, '' as uintid,session_id, 0 as top1_staytime , '' as content_id, '' as msgid, '' as biz_subtype, ftime FROM log_4"
},
{
"tableName": "mid_union_table",
"sql": "(SELECT * FROM mid2_log_2 ) UNION ALL (SELECT * FROM mid_log_1) UNION ALL (SELECT * FROM mid_log_3) UNION ALL (SELECT * FROM mid_log_4)"
},
{
"tableName": "mid_target_table",
"sql": "SELECT uin_, sum(view) as view, sum(click) as clickFROM mid_union_table group by SESSION(ftime, INTERVAL '300' second(3)), uin_, itemid"
}
],
"output": {
"fields": [
{"name": "uin", "srcName": "uin"},
{"name": "item_id", "srcName": "itemid"},
{"name": "timestamp", "srcName": "timestamp_"},
{"name": "LabelField",
"subObj": [
{"name": "view", "srcName": "view"},
{"name": "click", "srcName": "click"}
]}],
"pulsarOut": {
"sinkSeverUrl": "pulsar://demo.com:6650",
"producerToken": "",
"outTopic": "persistent://app/mid_pulsar"
}
}
}
在本实施例中,如图8所示:
数据源层:对应配置DSL中的inputs项,完成输入数据源的注册,供逻辑计算层SQL处理使用。
逻辑计算层:任务实际的执行逻辑,包括业务数据处理层,以及任务逻辑处理层。业务数据处理层作为实时样本通用的数据处理层,对应配置DSL中的flinksqls项,使用FlinkSQL完成业务逻辑相关的过滤以及维表关联,窗口聚合等操作,输出一张目的动态宽表。任务逻辑层执行任务职责相关的逻辑,对于下发曝光日志抽取任务,会根据宽表构造请求调用离线特征服务获得特征,进行特征拉取操作;对于样本Label计算任务,会进行Label信息构造操作,对应配置DSL中ouput的fields项,通用配置完成对宽表的字段抽取,获得模型训练定义Label所需的相关字段。
输出层:逻辑计算层最终计算的输出的目的地,对应配置DSL中output的其他字段,完成输出数据源的注册。下发/曝光日志特征抽取任务输出到Hbase,样本Label计算输出到Pulsar中,供拼接任务消费。Label计算任务的输出还可以输出到Clickhouse中,进行实时数据分析。
如图9所示,将实时样本处理抽象为三个核心的Flink任务节点,用户只需完成三个Flink任务的数据处理配置编写以及任务参数配置,即可输出实时样本供模型训练使用。其中,曝光/下发日志特征请求抽取任务和实时样本Label计算任务包含业务逻辑,需要额外编写对应的配置文件;样本特征拼接任务只包含通用逻辑,只需要配置任务参数。对于曝光/下发日志抽取任务和实时样本Label任务两个配置任务。
具体地,对实时样本数据流中三个核心的flink任务逻辑细节进行介绍:
1. 下发/曝光日志特征请求抽取任务
实时样本数据流中,需要将特征与样本标签Label关联起来,业界通常采用的做法是特征请求快照(Request Snopshot)的方式,即保存请求时推理的特征,在样本Label完成抽取归因后进行关联。实际线上服务推理中,为了做到更少的计算更快的响应,推理时刻只会拉取和计算当前命中实验组使用模型所需的特征,由于不同模型之间使用的特征不同,模型特征间的差集不为空,只保留当前模型推理特征去关联拼接的样本供其他模型训练可能会有效果差异。为了达到一份样本,所有模型共同使用的目的,本发明提供了离线特征服务模块,该服务与在线特征服务共用相同的特征工程抽取配置,保证了离线训练和在线推理计算逻辑一致性,与在线特征服务不同的是,离线特征服务使用样本特征集来请求,因此返回特征是所有模型使用特征的全集,实现了训练样本中包含所有模型需要的特征。
因此,业务需要提供上报一份下发或曝光日志,在日志中上报目标对象、推荐业务信息以及推理请求的上下文特征,下发/曝光日志抽取任务通过日志复现出推理请求的请求,进行离线特征服务的调用,将特征回包写入分布式面向列的开源数据库(Hbase),供后续样本特征拼接任务进行关联拼接。
业务在本任务中选择对下发日志还是曝光日志进行抽取取决于业务需求。若业务特征更新频率频繁,对一致性要求高,可以使用下发日志触发离线特征服务,下发时刻最接近推理时间;如果业务特征更新频率较慢,曝光时间和推理时间十分接近,可以选择使用曝光日志触发离线特征服务,减少离线特征服务计算业务数量,减少计算资源,节约成本。
使用方法:
编写配置,使用SQL完成下发/曝光日志字段抽取,完成基础信息以及特征相关字段抽取。
2. 样本Label抽取计算任务
样本Label抽取计算即对应样本打标的过程,根据上报的行为日志,抽取目标对象对推荐业务(item)表现出的行为信息。出于多目标建模的需求以及样本跨场景服复用的考虑,可以没有在该任务直接计算确认最终模型侧的Label(0,1),而是将目标对象与推荐业务的多种行为保存在一个json文件中,在模型中根据json进行最终Label的定义,满足不同模型建模不同目标的需求。对于数据处理,行为聚合归因,同样是使用Flink SQL进行,这有以下优势:
1.Fink SQL使用的语法与平常使用的SQL几乎一致,几乎没有上手难度,用户可以很容易地进行数据处理口径的编写。
2.对于样本行为聚合窗口逻辑,Fink SQL的行为聚合窗口(session window)可以聚合到达时间小于时间阈值(session gap时间)的元素,分配在一个窗口内,大于gap时间里没有新元素到来时则向下游发射一条数据,这种机制天然符合大部份场景下行为聚合的逻辑,开发人员只需掌握session window的使用语法即可聚合多流行为信息。
使用方法:
与任务1的配置类似,开发人员配置输入数据源信息,使用Flink SQL根据业务口径处理源数据,并根据计算后的实时动态中间表进行Label字段抽取,行为字段根据配置被抽取到LabelField字段中,LabelField用于保存本条样本聚合的所有行为,下游模型训练可以根据LabelField中的字段来定义出不同的Label,实现不同目标的模型的训练以及多目标模型建模的需求。
3. 样本特征拼接任务
样本拼接任务作为一个不包含业务逻辑的通用节点,可以不需要额外编写业务数据处理逻辑,只需在任务节点上配置任务2输出pulsar,任务1输出的hbase等配置参数即可拉起拼接任务,完成样本的特征和Label信息关联,写入到p3,供模型实时消费训练。
可选的,还可以将在线训练样本存储在HDFS这种不可变的文件存储中,然后对模型进行离线训练。可选的,特征服务可以进一步加工成模型可以理解的数据格式。检测服务可以检测任务里面的字段和调用是否异常。状态服务可以记录业务需要的信息,例如目标对象的历史行为信息。
在本实施例中,抽象了实时训练样本数据流从上报数据到最终模型训练样本的流程,提出了一种低代码配置化开发实时样本的形式,将实时样本数据流根据功能职责拆分成独立的子任务,基于Flink计算引擎设计与实现了配置化的实时样本任务。使用效果上,开发人员不再需要学习与开发完整的Flink流式处理业务逻辑代码,打包并上传到调度平台上进行调度。通过本发明只需编写业务逻辑相关的SQL + 配置完成数据处理与字段抽取,进行实时样本PPL的搭建,降低了实时样本PPL搭建的门槛。
图11为本申请实施例提供的一种推荐业务的在线训练样本构建装置的结构示意图,如图11所示,本实施例的推荐业务的在线训练样本构建装置110可以包括第一获取模块1101、第二获取模块1102和样本构建模块1103:
第一获取模块1101,用于获取上传的配置文件,配置文件用于配置样本特征抽取任务对应的第一抽取规则和样本标签抽取任务对应的第二抽取规则;第二获取模块1102,用于获取预先配置好的第一样本构建代码文件,第一样本构建代码文件指示在线训练样本构建任务的通用工作流,在线训练样本构建任务包括样本特征抽取任务和样本标签抽取任务;样本构建模块1103,用于将配置文件添加至第一样本构建代码文件,得到第二样本构建代码文件,以通过第二样本构建代码文件执行在线训练样本构建处理,样本构建模块1103在执行在线训练样本构建处理时,用于:
从第一数据源获取第一业务数据,并基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征,第一业务数据指示向目标对象推荐的推荐业务对应的推荐内容,目标样本特征包括推荐内容的目标推荐内容特征;从第二数据源获取第二业务数据,并基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息,第二业务数据指示目标对象针对推荐内容的行为,目标样本标签信息包括目标对象的目标行为信息;对于每一目标样本标签信息,将目标样本标签信息与目标样本特征进行关联,目标样本标签信息用于生成对应的目标样本标签,以基于目标样本标签信息对应的目标样本标签和目标样本标签信息关联的目标样本特征构建推荐业务的在线训练样本。
可选的,在线训练样本构建任务还包括样本拼接任务,第一获取模块1101还用于获取配置的样本拼接任务对应的拼接任务参数,拼接任务参数包括用于指示具备执行样本拼接任务的任务处理能力的硬件资源;为样本拼接任务分配硬件资源;样本构建模块1103在将目标样本标签信息与目标样本特征进行关联时,可以用于:
通过硬件资源将目标样本标签信息与目标样本特征进行关联。
可选的,样本构建模块1103在执行在线训练样本构建处理时,还可以用于:
分别确定第一数据源和第二数据源各自对应的业务数据获取速率,并分别确定第一数据源和第二数据源各自对应的权重;基于第一数据源对应的业务数据获取速率和权重以及第二数据源对应的业务数据获取速率和权重进行加权计算,得到样本拼接任务对应的目标业务数据获取速率;若目标业务数据获取速率大于硬件资源对应的接收速率阈值,则对分配的硬件资源进行调整;
样本构建模块1103在将目标样本标签信息与目标样本特征进行关联时,可以用于:
通过调整后的硬件资源将目标样本标签信息与目标样本特征进行关联,其中,调整后的硬件资源所指示的任务处理能力强于分配的硬件资源所指示的任务处理能力。
可选的,样本构建模块1103还用于:
获取预置的权重评估参数,权重评估参数包括目标对象所使用的目标终端显示推荐内容的显示区域大小或目标终端显示的推荐内容数量中的至少一项;基于权重评估参数确定第一数据源对应的权重或第二数据源对应的权重中的至少一项;其中,显示区域大小与第一数据源对应的权重正相关且与第二数据源对应的权重负相关;显示的推荐内容数量与第一数据源对应的权重正相关且与第二数据源对应的权重负相关。
可选的,配置文件包括用于配置样本特征抽取任务的第一配置子文件和用于配置样本标签抽取任务的第二配置子文件,第一获取模还用于:
获取新的配置子文件,新的配置子文件包括新的第一配置子文件或新的第二配置子文件中的至少一项,新的配置子文件是通过响应于针对第一配置界面的目标配置控件的触发操作,展示第二配置界面,并通过第二配置界面获取被上传的文件,目标配置控件为第一配置界面中的样本特征提取任务对应的配置控件或样本标签提取任务对应的配置控件中的至少一项;将新的配置子文件替换配置文件中目标配置控件对应的配置子文件,得到新的第二样本构建代码文件,以通过新的第二样本构建代码文件执行在线训练样本构建处理。
可选的,配置文件还用于配置样本特征抽取任务对应的第一数据清洗规则或样本标签抽取任务对应的第二数据清洗规则中的至少一项,样本构建模块1103在执行在线训练样本构建处理时,还用于以下的至少一项:
基于第一数据清洗规则对第一业务数据进行清洗,以基于第一抽取规则对清洗后的第一业务数据进行抽取;基于第二数据清洗规则对第二业务数据进行清洗,以基于第二抽取规则对清洗后的第二业务数据进行抽取。
可选的,配置文件还用于配置样本特征抽取任务关联的第一维表或样本标签抽取任务关联的第二维表中的至少一项,第一维表包括第三业务数据,第二维表包括第四业务数据,第三业务数据和第四业务数据来源于第一数据源和第二数据源之外,样本构建模块1103在执行在线训练样本构建处理时,还用于以下的至少一项:
获取第一维表,并将第一维表中的第三业务数据与第一业务数据进行合并,得到第一目标业务数据,以在基于第一抽取规则对第一业务数据进行抽取时,基于第一抽取规则对第一目标业务数据进行抽取;获取第二维表,并将第二维表中的第四业务数据与第二业务数据进行合并,得到第二目标业务数据,以在基于第二抽取规则对第二业务数据进行抽取时,基于第二抽取规则对第二目标业务数据进行抽取。
可选的,样本构建模块1103在基于目标样本标签信息生成对应的目标样本标签时,可以用于:
确定在线训练样本所应用的推荐模型的模型属性;基于模型属性生成目标样本标签信息对应的目标样本标签。
可选的,配置文件还用于配置样本标签抽取任务对应的行为聚合窗口的时间阈值,样本构建模块1103在执行在线训练样本构建处理时,还可以用于:
基于时间阈值将获取的第二业务数据分配至至少一个行为聚合窗口,其中,一个行为聚合窗口包括一个或多个第二业务数据,多个第二业务数据中数据生成时间相邻的任意两个第二业务数据之间的数据生成时间差小于或等于时间阈值;
样本构建模块1103在基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息时,可以用于:
对于每一行为聚合窗口,基于第二抽取规则对行为聚合窗口中的第二业务数据进行抽取,以得到行为聚合窗口对应的目标样本标签信息。
可选的,第一抽取规则包括待抽取的第一目标字段标识,第一业务数据包括对应有第一字段标识的推荐内容特征,样本构建模块1103在基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征时,可以用于:
将与第一目标字段标识一致的第一字段标识所对应的推荐内容特征作为目标样本特征;
第二抽取规则包括待抽取的第二目标字段标识,第二业务数据包括对应有第二字段标识的行为信息,样本构建模块1103在基于第二抽取规则对第二业务数据进行抽取,以得到目标样本标签信息时,可以用于:
将与第二目标字段标识一致的第二字段标识所对应的行为信息作为目标样本标签信息。
可选的,推荐内容包括目标对象所使用的目标终端显示的推荐内容和未显示的推荐内容,样本构建模块1103在基于第一抽取规则对第一业务数据进行抽取时,可以用于:
确定显示的推荐内容的更新频率;若显示的推荐内容的更新频率为第一更新频率,则基于第一抽取规则对第一业务数据进行抽取;若显示的推荐内容的更新频率为第二更新频率,则基于第一抽取规则对第一业务数据中显示的推荐内容对应的部分数据进行抽取;其中,第一更新频率大于第二更新频率。
可选的,样本构建模块1103在基于第一抽取规则对第一业务数据进行抽取,以得到目标样本特征时,可以用于:
将第一抽取规则和第一业务数据发送至离线特征服务模块,以通过离线特征服务模块基于第一抽取规则对第一业务数据进行抽取,离线特征服务模块用于抽取不同推荐业务各自对应的样本特征;从离线特征服务模块输出的候选样本特征集中提取推荐业务对应的目标样本特征。
本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现本申请任一实施例的方法的步骤。
在一个可选实施例中提供了一种电子设备,如图12所示,图12所示的电子设备1200包括:处理器1201和存储器1203。其中,处理器1201和存储器1203相连,如通过总线1202相连。可选地,电子设备1200还可以包括收发器1204,收发器1204可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器1204不限于一个,该电子设备1200的结构并不构成对本申请实施例的限定。
处理器1201可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1201也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线1202可包括一通路,在上述组件之间传送信息。总线1202可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线1202可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1203可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器1203用于存储执行本申请实施例的计算机程序,并由处理器1201来控制执行。处理器1201用于执行存储器1203中存储的计算机程序,以实现前述方法实施例所示的步骤。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。
Claims (15)
1.一种推荐业务的在线训练样本构建方法,其特征在于,包括:
获取上传的映射推荐业务的相关工作流的配置文件,所述配置文件用于配置样本特征抽取任务对应的第一抽取规则和样本标签抽取任务对应的第二抽取规则;
获取预先配置好的第一样本构建代码文件,所述第一样本构建代码文件指示不同推荐业务的在线训练样本构建任务的通用工作流,所述在线训练样本构建任务包括所述样本特征抽取任务和所述样本标签抽取任务;
将所述配置文件添加至所述第一样本构建代码文件,得到第二样本构建代码文件,以通过所述第二样本构建代码文件执行在线训练样本构建处理,所述第二样本构建代码文件指示在线训练样本构建任务的完整工作流;
所述在线训练样本构建处理包括:
从第一数据源获取第一业务数据,并基于所述第一抽取规则对所述第一业务数据进行抽取,以得到目标样本特征,所述第一业务数据指示向目标对象推荐的所述推荐业务对应的推荐内容,所述目标样本特征包括所述推荐内容的目标推荐内容特征;
从第二数据源获取第二业务数据,并基于所述第二抽取规则对所述第二业务数据进行抽取,以得到目标样本标签信息,所述第二业务数据指示所述目标对象针对所述推荐内容的行为,所述目标样本标签信息包括所述目标对象的目标行为信息;
对于每一目标样本标签信息,将所述目标样本标签信息与所述目标样本特征进行关联,所述目标样本标签信息用于生成对应的目标样本标签,以基于所述目标样本标签信息对应的目标样本标签和所述目标样本标签信息关联的目标样本特征构建所述推荐业务的在线训练样本。
2.根据权利要求1所述的方法,其特征在于,所述在线训练样本构建任务还包括样本拼接任务,所述方法还包括:
获取配置的所述样本拼接任务对应的拼接任务参数,所述拼接任务参数包括用于指示具备执行所述样本拼接任务的任务处理能力的硬件资源;
为所述样本拼接任务分配所述硬件资源;
所述将所述目标样本标签信息与所述目标样本特征进行关联,包括:
通过所述硬件资源将所述目标样本标签信息与所述目标样本特征进行关联。
3.根据权利要求2所述的方法,其特征在于,所述在线训练样本构建处理还包括:
分别确定所述第一数据源和所述第二数据源各自对应的业务数据获取速率,并分别确定所述第一数据源和所述第二数据源各自对应的权重;
基于所述第一数据源对应的业务数据获取速率和权重以及所述第二数据源对应的业务数据获取速率和权重进行加权计算,得到所述样本拼接任务对应的目标业务数据获取速率;
若所述目标业务数据获取速率大于所述硬件资源对应的接收速率阈值,则对分配的硬件资源进行调整;
所述将所述目标样本标签信息与所述目标样本特征进行关联,包括:
通过调整后的硬件资源将所述目标样本标签信息与所述目标样本特征进行关联,其中,所述调整后的硬件资源所指示的任务处理能力强于所述分配的硬件资源所指示的任务处理能力。
4.根据权利要求3所述的方法,其特征在于,所述第一数据源对应的权重或所述第二数据源对应的权重中的至少一项是通过以下方式确定的:
获取预置的权重评估参数,所述权重评估参数包括所述目标对象所使用的目标终端显示所述推荐内容的显示区域大小或所述目标终端显示的推荐内容数量中的至少一项;
基于所述权重评估参数确定所述第一数据源对应的权重或所述第二数据源对应的权重中的至少一项;
其中,所述显示区域大小与所述第一数据源对应的权重正相关且与所述第二数据源对应的权重负相关;所述显示的推荐内容数量与所述第一数据源对应的权重正相关且与所述第二数据源对应的权重负相关。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述配置文件包括用于配置所述样本特征抽取任务的第一配置子文件和用于配置所述样本标签抽取任务的第二配置子文件,所述方法还包括:
获取新的配置子文件,所述新的配置子文件包括新的第一配置子文件或新的第二配置子文件中的至少一项,所述新的配置子文件是通过响应于针对第一配置界面的目标配置控件的触发操作,展示第二配置界面,并通过所述第二配置界面获取被上传的文件,所述目标配置控件为所述第一配置界面中的样本特征抽取任务对应的配置控件或所述样本标签抽取任务对应的配置控件中的至少一项;
将所述新的配置子文件替换所述配置文件中所述目标配置控件对应的配置子文件,得到新的第二样本构建代码文件,以通过所述新的第二样本构建代码文件执行在线训练样本构建处理。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述配置文件还用于配置所述样本特征抽取任务对应的第一数据清洗规则或所述样本标签抽取任务对应的第二数据清洗规则中的至少一项,所述在线训练样本构建处理还包括以下的至少一项:
基于所述第一数据清洗规则对所述第一业务数据进行清洗,以基于所述第一抽取规则对清洗后的第一业务数据进行抽取;
基于所述第二数据清洗规则对所述第二业务数据进行清洗,以基于所述第二抽取规则对清洗后的第二业务数据进行抽取。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述配置文件还用于配置所述样本特征抽取任务关联的第一维表或所述样本标签抽取任务关联的第二维表中的至少一项,所述第一维表包括第三业务数据,所述第二维表包括第四业务数据,所述第三业务数据和所述第四业务数据来源于所述第一数据源和所述第二数据源之外,所述在线训练样本构建处理还包括以下的至少一项:
获取所述第一维表,并将所述第一维表中的第三业务数据与所述第一业务数据进行合并,得到第一目标业务数据,以在基于所述第一抽取规则对所述第一业务数据进行抽取时,基于所述第一抽取规则对所述第一目标业务数据进行抽取;
获取所述第二维表,并将所述第二维表中的所述第四业务数据与所述第二业务数据进行合并,得到第二目标业务数据,以在基于所述第二抽取规则对所述第二业务数据进行抽取时,基于所述第二抽取规则对所述第二目标业务数据进行抽取。
8.根据权利要求1-4任一项所述的方法,其特征在于,所述目标样本标签是通过以下方式生成的:
确定在线训练样本所应用的推荐模型的模型属性;
基于所述模型属性生成所述目标样本标签信息对应的目标样本标签。
9.根据权利要求1-4任一项所述的方法,其特征在于,所述配置文件还用于配置所述样本标签抽取任务对应的行为聚合窗口的时间阈值,所述在线训练样本构建处理,还包括:
基于所述时间阈值将获取的所述第二业务数据分配至至少一个行为聚合窗口,其中,一个所述行为聚合窗口包括一个或多个第二业务数据,所述多个第二业务数据中数据生成时间相邻的任意两个第二业务数据之间的数据生成时间差小于或等于所述时间阈值;
基于所述第二抽取规则对所述第二业务数据进行抽取,以得到目标样本标签信息,包括:
对于每一行为聚合窗口,基于所述第二抽取规则对所述行为聚合窗口中的所述第二业务数据进行抽取,以得到所述行为聚合窗口对应的目标样本标签信息。
10.根据权利要求1-4任一项所述的方法,其特征在于,所述第一抽取规则包括待抽取的第一目标字段标识,所述第一业务数据包括对应有第一字段标识的推荐内容特征,所述基于所述第一抽取规则对所述第一业务数据进行抽取,以得到目标样本特征,包括:
将与所述第一目标字段标识一致的第一字段标识所对应的推荐内容特征作为所述目标样本特征;
所述第二抽取规则包括待抽取的第二目标字段标识,所述第二业务数据包括对应有第二字段标识的行为信息,所述基于所述第二抽取规则对所述第二业务数据进行抽取,以得到目标样本标签信息,包括:
将与所述第二目标字段标识一致的第二字段标识所对应的行为信息作为所述目标样本标签信息。
11.根据权利要求1-4任一项所述的方法,其特征在于,所述推荐内容包括所述目标对象所使用的目标终端显示的推荐内容和未显示的推荐内容,所述基于所述第一抽取规则对所述第一业务数据进行抽取,包括:
确定所述显示的推荐内容的更新频率;
若所述显示的推荐内容的更新频率为第一更新频率,则基于所述第一抽取规则对所述第一业务数据进行抽取;
若所述显示的推荐内容的更新频率为第二更新频率,则基于所述第一抽取规则对所述第一业务数据中所述显示的推荐内容对应的部分数据进行抽取;
其中,所述第一更新频率大于所述第二更新频率。
12.根据权利要求1-4任一项所述的方法,其特征在于,所述基于所述第一抽取规则对所述第一业务数据进行抽取,以得到目标样本特征,包括:
将所述第一抽取规则和所述第一业务数据发送至离线特征服务模块,以通过所述离线特征服务模块基于所述第一抽取规则对所述第一业务数据进行抽取,所述离线特征服务模块用于抽取不同推荐业务各自对应的样本特征;
从所述离线特征服务模块输出的候选样本特征集中抽取所述推荐业务对应的目标样本特征。
13.一种推荐业务的在线训练样本构建装置,其特征在于,包括:
第一获取模块,用于获取上传的映射推荐业务的相关工作流的配置文件,所述配置文件用于配置样本特征抽取任务对应的第一抽取规则和样本标签抽取任务对应的第二抽取规则;
第二获取模块,用于获取预先配置好的第一样本构建代码文件,所述第一样本构建代码文件指示不同推荐业务的在线训练样本构建任务的通用工作流,所述在线训练样本构建任务包括所述样本特征抽取任务和所述样本标签抽取任务;
样本构建模块,用于将所述配置文件添加至所述第一样本构建代码文件,得到第二样本构建代码文件,以通过所述第二样本构建代码文件执行在线训练样本构建处理,所述第二样本构建代码文件指示在线训练样本构建任务的完整工作流;
所述样本构建模块在执行所述在线训练样本构建处理时,用于:
从第一数据源获取第一业务数据,并基于所述第一抽取规则对所述第一业务数据进行抽取,以得到目标样本特征,所述第一业务数据指示向目标对象推荐的所述推荐业务对应的推荐内容,所述目标样本特征包括所述推荐内容的目标推荐内容特征;
从第二数据源获取第二业务数据,并基于所述第二抽取规则对所述第二业务数据进行抽取,以得到目标样本标签信息,所述第二业务数据指示所述目标对象针对所述推荐内容的行为,所述目标样本标签信息包括所述目标对象的目标行为信息;
对于每一目标样本标签信息,将所述目标样本标签信息与所述目标样本特征进行关联,所述目标样本标签信息用于生成对应的目标样本标签,以基于所述目标样本标签信息对应的目标样本标签和所述目标样本标签信息关联的目标样本特征构建所述推荐业务的在线训练样本。
14.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-12任一项所述方法的步骤。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-12任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311170753.2A CN116910567B (zh) | 2023-09-12 | 2023-09-12 | 推荐业务的在线训练样本构建方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311170753.2A CN116910567B (zh) | 2023-09-12 | 2023-09-12 | 推荐业务的在线训练样本构建方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116910567A CN116910567A (zh) | 2023-10-20 |
CN116910567B true CN116910567B (zh) | 2024-03-15 |
Family
ID=88367187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311170753.2A Active CN116910567B (zh) | 2023-09-12 | 2023-09-12 | 推荐业务的在线训练样本构建方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116910567B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117556263B (zh) * | 2024-01-10 | 2024-04-23 | 阿里云计算有限公司 | 样本构建方法、代码生成方法、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674408A (zh) * | 2019-09-30 | 2020-01-10 | 北京三快在线科技有限公司 | 业务平台、训练样本的实时生成方法及装置 |
CN112925947A (zh) * | 2021-02-22 | 2021-06-08 | 百果园技术(新加坡)有限公司 | 一种训练样本处理方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3722954B1 (en) * | 2013-06-24 | 2023-09-06 | Cylance Inc. | Automated system for generative multimodel multiclass classification and similarity analysis using machine learning |
US10705835B2 (en) * | 2015-12-03 | 2020-07-07 | International Business Machines Corporation | Transparent multi-architecture support in a container based cloud |
US10678613B2 (en) * | 2017-10-31 | 2020-06-09 | Seven Bridges Genomics Inc. | System and method for dynamic control of workflow execution |
-
2023
- 2023-09-12 CN CN202311170753.2A patent/CN116910567B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674408A (zh) * | 2019-09-30 | 2020-01-10 | 北京三快在线科技有限公司 | 业务平台、训练样本的实时生成方法及装置 |
CN112925947A (zh) * | 2021-02-22 | 2021-06-08 | 百果园技术(新加坡)有限公司 | 一种训练样本处理方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
人工智能视域下协同过滤推荐系统的工程训练平台;许晓飞等;《实验技术与管理》;20190420(第04期);第109-113页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116910567A (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wu et al. | Ai-generated content (aigc): A survey | |
WO2023061087A1 (zh) | 信息推荐方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN110781321B (zh) | 一种多媒体内容推荐方法及装置 | |
Tao et al. | Modelling of combinable relationship-based composition service network and the theoretical proof of its scale-free characteristics | |
CN109919316A (zh) | 获取网络表示学习向量的方法、装置和设备及存储介质 | |
CN110598070B (zh) | 应用类型识别方法及装置、服务器及存储介质 | |
US11132510B2 (en) | Intelligent management and interaction of a communication agent in an internet of things environment | |
CN112182359B (zh) | 推荐模型的特征管理方法及系统 | |
CN116910567B (zh) | 推荐业务的在线训练样本构建方法及相关装置 | |
CN109189935B (zh) | 一种基于知识图谱的app传播分析方法及系统 | |
CN110188210A (zh) | 一种基于图正则化与模态独立的跨模态数据检索方法及系统 | |
CN112256537A (zh) | 模型运行状态的展示方法、装置、计算机设备和存储介质 | |
CN115756642A (zh) | 一种业务流程配置方法、装置、设备及存储介质 | |
Zimmermann et al. | Multiple perspectives of digital enterprise architecture | |
CN116720489B (zh) | 页面填充方法及装置、电子设备和计算机可读存储介质 | |
Symeonaki et al. | Conversational user interface integration in controlling iot devices applied to smart agriculture: analysis of a chatbot system design | |
KR102243275B1 (ko) | 오프라인 오브젝트에 관한 콘텐츠 자동 생성 방법, 장치 및 컴퓨터 판독가능 저장 매체 | |
US10970490B2 (en) | Automatic evaluation of artificial intelligence-based processes | |
CN116595191A (zh) | 一种交互式低代码知识图谱的构建方法及装置 | |
US11288322B2 (en) | Conversational agents over domain structured knowledge | |
Lili | A Mobile Terminal‐Based College English Teaching Evaluation Method | |
US20220207384A1 (en) | Extracting Facts from Unstructured Text | |
CN113344604A (zh) | 一种基于用户行为数据及流计算的用户细分方法 | |
Cerone | Refinement mining: Using data to sift plausible models | |
de Leoni et al. | Investigating the Influence of Data-Aware Process States on Activity Probabilities in Simulation Models: Does Accuracy Improve? |
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 |