本公开提供了一种时序特征获取方法及装置。该方法包括:确定用于机器学习模型训练的至少一个时序特征;从输入表中获取用于得到至少一个时序特征中每个时序特征所需的属性值,其中,输入表包括用于机器学习模型训练所需的原始数据,输入表中每行对应一条训练数据且有唯一的ID,输入表中每列对应训练数据的不同属性;基于预设的操作指令以及每个时序特征所需的属性值,并行处理得到至少一个时序特征;根据输入表中每行的ID将至少一个时序特征进行拼接,得到用于机器学习模型训练的时序特征表。表。表。
【技术实现步骤摘要】
时序特征获取方法及装置
[0001]本申请涉及机器学习领域,以下描述涉及一种时序特征获取方法及装置。
技术介绍
[0002]在机器学习场景,时序特征计算是非常重要的特征抽取过程,一般情况下,一个模型的特征会包含多个时序特征,其常使用SQL的window函数来表达。但大部分SQL执行引擎,如Spark大数据处理框架,对于多个时序特征的处理都是串行执行的,每个时序特征的计算都要等待上个时序特征计算完成后才可以开始计算。这种串行实现的方式,不仅计算效率低,整个特征工程和机器学习时间随着时序特征的数量增加而大幅增加,而且单个时序特征计算不能很好利用集群硬件资源,导致项目的成本大大增加。
技术实现思路
[0003]本公开的示例性实施例可至少解决上述问题,也可不解决上述问题。
[0004]根据本公开的第一方面,提供了一种时序特征获取方法,包括:确定用于机器学习模型训练的至少一个时序特征;从输入表中获取用于得到至少一个时序特征中每个时序特征所需的属性值,其中,输入表包括用于机器学习模型训练所需的原始数据,输入表中每行对应一条训练数据且有唯一的ID,输入表中每列对应训练数据的不同属性;基于预设的操作指令以及每个时序特征所需的属性值,并行处理得到至少一个时序特征;根据输入表中每行的ID将至少一个时序特征进行拼接,得到用于机器学习模型训练的时序特征表。
[0005]可选地,从输入表中获取用于得到至少一个时序特征中每个时序特征所需的属性值,包括:基于预设的筛选指令,从输入表中筛选出用于得到每个时序特征所需的列,其中,预设的筛选指令指示了每个时序特征所需的属性;基于筛选的每个时序特征所需的列,获取每个时序特征所需的属性值。
[0006]可选地,根据输入表中每行的ID将至少一个时序特征进行拼接,得到用于机器学习模型训练的时序特征表,包括:将至少一个时序特征中每个时序特征对应的取值,按输入表中每行的ID进行排列得到每个时序特征对应的列向量;将每个时序特征对应的列向量进行拼接,得到用于机器学习模型训练的时序特征表。
[0007]可选地,在根据输入表中每行的ID将至少一个时序特征进行拼接,得到用于机器学习模型训练的时序特征表之后,还包括:基于预设的提取指令,从时序特征表和输入表中提取目标列并进行拼接得到样本表,其中,预设的提取指令指示了机器学习模型训练所需的属性和时序特征;基于样本表对机器学习模型进行训练。
[0008]可选地,预设的操作指令、预设的筛选指令和预设的提取指令是通过解析预先编码的结构化查询语言获取的。
[0009]根据本公开的第二方面,提供了一种时序特征获取装置,其中,装置包括:确定节点,被配置为确定用于机器学习模型训练的至少一个时序特征;筛选节点,被配置为从输入表中获取用于得到至少一个时序特征中每个时序特征所需的属性值,其中,输入表包括用
于机器学习模型训练所需的原始数据,输入表中每行对应一条训练数据且有唯一的ID,输入表中每列对应训练数据的不同属性;时序特征计算节点,被配置为基于预设的操作指令以及每个时序特征所需的属性值,并行处理得到至少一个时序特征;数据合并节点,被配置为根据输入表中每行的ID将至少一个时序特征进行拼接,得到用于机器学习模型训练的时序特征表。
[0010]可选地,筛选节点,还被配置为基于预设的筛选指令,从输入表中筛选出用于得到每个时序特征所需的列,其中,预设的筛选指令指示了每个时序特征所需的属性;基于筛选的每个时序特征所需的列,获取每个时序特征所需的属性值。
[0011]可选地,数据合并节点,还被配置为将至少一个时序特征中每个时序特征对应的取值,按输入表中每行的ID进行排列得到每个时序特征对应的列向量;将每个时序特征对应的列向量进行拼接,得到用于机器学习模型训练的时序特征表。
[0012]可选地,数据合并节点,被配置为在根据输入表中每行的ID将至少一个时序特征进行拼接,得到用于机器学习模型训练的时序特征表之后,基于预设的提取指令,从时序特征表和输入表中提取目标列并进行拼接得到样本表,其中,预设的提取指令指示了机器学习模型训练所需的属性和时序特征;基于样本表对机器学习模型进行训练。
[0013]可选地,预设的操作指令、预设的筛选指令和预设的提取指令是通过解析预先编码的结构化查询语言获取的。
[0014]根据本公开的第三方面,提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个计算装置运行时,促使至少一个计算装置执行如上的时序特征获取方法。
[0015]根据本公开的第四方面,提供一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,指令在被至少一个计算装置运行时,促使至少一个计算装置执行如上的时序特征获取方法。
[0016]根据本示例性实施例的时序特征获取方法及装置,对多个时序特征的处理是并行执行的,可以降低整体的计算时长且能够充分的利用硬件资源,再有,为输入表中的每行添加唯一的标识,以保证并行执行得到的多个时序特征进行拼接时每行数据不串行,即保证并行执行得到的时序特征与串行执行得到时序特征一致,可以直接用于后续的机器学习训练。
附图说明
[0017]通过结合附图,从实施例的下面描述中,本专利技术这些和/或其它方面及优点将会变得清楚,并且更易于理解,其中:
[0018]图1是相关技术中时序特征获取方法的架构图;
[0019]图2示出根据本公开示例性实施例的时序特征获取方法的流程图;
[0020]图3是示出根据本公开示例性实施例的时序特征获取方法的架构图;
[0021]图4示出根据本公开示例性实施例的时序特征获取装置的框图。
具体实施方式
[0022]提供参照附图的以下描述以帮助对由权利要求及其等同物限定的本专利技术的实施例的全面理解。包括各种特定细节以帮助理解,但这些细节仅被视为是示例性的。因此,本
领域的普通技术人员将认识到在不脱离本专利技术的范围和精神的情况下,可对描述于此的实施例进行各种改变和修改。此外,为了清楚和简洁,省略对公知的功能和结构的描述。
[0023]在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括A和B之中的至少一个”即包括如下三种并列的情况:(1)包括A;(2)包括B;(3)包括A和B。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
[0024]目前,主流的SQL执行引擎,如Spark大数据执行引擎,会根据SQL内容,生成一个SQL计划图,并根据SQL计划图进行资源调度和计算,架构图如图1所示,可以看出,主流的SQL执行引擎对于多时序特征的计算,生成的执行计划都是串行的,每一个时序特征计算都要等上一个时序特征计算完成后才开始,虽然保证了多时序特征最终计算的正确性,但也导致整体计算时间长,硬件资源也无法本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种时序特征获取方法,其中,所述方法包括:确定用于机器学习模型训练的至少一个时序特征;从输入表中获取用于得到所述至少一个时序特征中每个时序特征所需的属性值,其中,所述输入表包括用于机器学习模型训练所需的原始数据,所述输入表中每行对应一条训练数据且有唯一的ID,所述输入表中每列对应训练数据的不同属性;基于预设的操作指令以及所述每个时序特征所需的属性值,并行处理得到所述至少一个时序特征;根据所述输入表中每行的ID将所述至少一个时序特征进行拼接,得到用于所述机器学习模型训练的时序特征表。2.根据权利要求1中所述的时序特征获取方法,其中,所述从输入表中获取用于得到所述至少一个时序特征中每个时序特征所需的属性值,包括:基于预设的筛选指令,从所述输入表中筛选出用于得到所述每个时序特征所需的列,其中,所述预设的筛选指令指示了每个时序特征所需的属性;基于筛选的所述每个时序特征所需的列,获取所述每个时序特征所需的属性值。3.根据权利要求1中所述的方法,其中,所述根据所述输入表中每行的ID将所述至少一个时序特征进行拼接,得到用于所述机器学习模型训练的时序特征表,包括:将所述至少一个时序特征中每个时序特征对应的取值,按所述输入表中每行的ID进行排列得到所述每个时序特征对应的列向量;将所述每个时序特征对应的列向量进行拼接,得到用于所述机器学习模型训练的时序特征表。4.根据权利要求1中所述的方法,其中,在根据所述输入表中每行的ID将所述至少一个时序特征进行拼接,得到用于所述机器学习模型训练的时序特征表之后,还包括:基于预设的提取指令,从所述时序特征表和所述输入表中提取目标列并进行拼接得到样本表,其中,所述预设的提取指令指示了所述机器学习模型训练所需的属性和时序特征;基于所述样本表对所述机器学习模型进行训练。5.根据权利要求4中所述的方法,其中,所述预设的操作指令、...
【专利技术属性】
技术研发人员:陈迪豪,王太泽,陈靓,邓龙,
申请(专利权)人:第四范式北京技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。