CN110633078B - 一种实现自动生成特征计算代码的方法及装置 - Google Patents

一种实现自动生成特征计算代码的方法及装置 Download PDF

Info

Publication number
CN110633078B
CN110633078B CN201910891732.7A CN201910891732A CN110633078B CN 110633078 B CN110633078 B CN 110633078B CN 201910891732 A CN201910891732 A CN 201910891732A CN 110633078 B CN110633078 B CN 110633078B
Authority
CN
China
Prior art keywords
calculation
configuration
information
configurable
feature
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
Application number
CN201910891732.7A
Other languages
English (en)
Other versions
CN110633078A (zh
Inventor
张青
周振华
何雪
吕自荟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
4Paradigm Beijing Technology Co Ltd
Original Assignee
4Paradigm Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 4Paradigm Beijing Technology Co Ltd filed Critical 4Paradigm Beijing Technology Co Ltd
Priority to CN201910891732.7A priority Critical patent/CN110633078B/zh
Publication of CN110633078A publication Critical patent/CN110633078A/zh
Priority to PCT/CN2020/114877 priority patent/WO2021052260A1/zh
Application granted granted Critical
Publication of CN110633078B publication Critical patent/CN110633078B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种实现自动生成特征计算代码的方法及装置,涉及人工智能技术领域;主要技术方案包括:根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息;基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。

Description

一种实现自动生成特征计算代码的方法及装置
技术领域
本发明涉及人工智能技术领域,特别是涉及一种实现自动生成特征计算代码的方法及装置。
背景技术
随着数据挖掘技术的不断发展,机器学习逐渐成为分析和处理海量数据的重要手段,而特征工程是机器学习的关键环节,特征工程是利用数据领域的相关知识来创建能够使机器学习模型达到最佳性能的特征的过程,可见,特征的质量会影响机器学习模型的效果好坏。
目前,特征工程通常根据建模人员的专业技能,手动识别数据,根据模型的算法和应用场景,建模人员根据经验、自身的编程能力和算法能力手动编码出相应的特征计算代码,使用建模人员编码出的代码进行特征计算。可见,整个特征计算代码的编码需要大量的人力介入,且受限于建模人员的编程能力和算法能力,机器学习的特征计算的门槛较高。因此,现有的方式,特征的计算代码编码工作量较大。
发明内容
有鉴于此,本发明提出了一种实现自动生成特征计算代码的方法及装置,主要目的在于实现特征计算代码的自动生成,从而降低特征计算代码编码的工作量。
第一方面,本发明提供了一种实现自动生成特征计算代码的方法,该方法包括:
根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;
响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息;
基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;
调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
第二方面,本发明提供了一种实现自动生成特征计算代码的装置,该装置包括:
第一展示单元,用于根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;
获取单元,用于响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息;
生成单元,用于基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;
转换单元,用于调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
第三方面,本发明提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的实现自动生成特征计算代码的方法。
第四方面,本发明提供了一种存储管理设备,所述存储管理设备包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于运行所述程序以执行第一方面所述的实现自动生成特征计算代码的方法。
借由上述技术方案,本发明提供的实现自动生成特征计算代码的方法和装置,通过预设的关于可配置控件的分类和层级关系,向用户展示包含可配置控件的图形用户界面。然后响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息。基于用户输入的配置信息与特征计算逻辑知识库中与可配置控件相应的计算逻辑信息,生成配置文件。调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码,从而得到执行特征计算的计算代码。可见,本发明提供的方案中通过包含可配置控件的图形用户界面与用户交互,引导用户输入配置信息,并根据用户输入的配置信息和特征计算逻辑知识库中涉及特征计算的计算逻辑信息便可得到进行特征计算的特征计算代码。整个特征计算代码的形成过程中无需用户手动编写计算代码,因此,本发明提供的方案能够实现特征计算代码的自动生成,降低特征计算代码编码的工作量。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明一个实施例提供的一种实现自动生成特征计算代码的方法的流程图;
图2示出了本发明一个实施例提供的一种图形用户界面的示意图;
图3示出了本发明一个实施例提供的一种包含可配置控件的图形用户界面的示意图;
图4示出了本发明另一个实施例提供的一种图形用户界面的示意图;
图5示出了本发明例另一个实施例提供的一种包含可配置控件的图形用户界面的示意图;
图6示出了本发明例又一个实施例提供的一种包含可配置控件的图形用户界面的示意图;
图7示出了本发明例又一个实施例提供的一种包含可配置控件的图形用户界面的示意图;
图8示出了本发明例一个实施例提供的一种可配置控件的配置页面的示意图;
图9示出了本发明例另一个实施例提供的一种可配置控件的配置页面的示意图;
图10示出了本发明例又一个实施例提供的一种可配置控件的配置页面的示意图;
图11示出了本发明例又一个实施例提供的一种可配置控件的配置页面的示意图;
图12示出了本发明另一个实施例提供的一种实现自动生成特征计算代码的方法的流程图;
图13示出了本发明一个实施例提供的一种逻辑展示界面的示意图;
图14示出了本发明一个实施例提供的一种实现自动生成特征计算代码的装置的组成框图;
图15示出了本发明另一个实施例提供的一种实现自动生成特征计算代码的装置的组成框图。
具体实施方式
下面将参照附图更加详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,本发明实施例提供了一种实现自动生成特征计算代码的方法,该方法主要包括:
101、根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息。
在实际应用中,特征是从数据中抽取出来的对结果预测有用的信息,其是机器学习过程的基础,因此特征计算是机器学习过程中的一个重要环节。为了筛选出符合机器学习要求的特征,本实施例采用可配置控件来配置与特征计算相关的配置信息,从而完成特征计算。
本实施例中所述的可配置控件用于指引用户配置与特征计算相关的配置信息。在用户需要配置与特征计算相关的配置信息时,可根据可配置控件的分类和层级关系,向用户展示包含可配置控件的图形用户界面,通过图形用户界面与用户交互,引导用户输入配置信息。需要说明的是,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息。其中,计算逻辑信息用于与用户输入的配置信息相结合形成特征计算代码。当通过包含可配置控件的图形用户界面获取到用户输入的配置信息时,结合配置信息和可配置控件相应的计算逻辑信息得到目标特征计算代码。
本实施例中所述的可配置控件的分类可以基于具体的业务要求设定,且可配置控件至少包括如下两种:
第一种,拼表类可配置控件。
拼表类可配置控件用于配置双表拼接的配置信息,拼表类可配置控件能够将多表拼接转化为多个双表拼接的操作。需要说明的是,当单表自己和自己拼接时,双表拼接中所涉及到的两个数据表为同一个数据表。
拼表类可配置控件的具体类型本实施例不作具体限定,拼表类可配置控件至少包括如下三种:横向直接拼接控件、横向聚合拼接控件和纵向拼接控件。
具体的,横向直接拼接控件,其对应于特征计算逻辑知识库中的一套将副表中满足拼接条件的一个或多个字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称和拼接条件。需要说明的是,具有主表名称的主表中每条数据对应具有副表名称的副表中的一条数据。
示例性的,横向直接拼接控件的配置页面上可输入的配置信息为:主表名称“表-1”,副表名称“表-2”,拼接条件“拼接product-id”,下面以表-1至表-3说明横向直接拼接控件相应的计算逻辑,若执行与横向直接拼接控件相应的逻辑,则将“表-2”的字段“product-id”对应的特征添加到“表-1”中形成“表-3”。需要说明的是,当主表中某个字段的特征在副表中不存在对应的特征时,在主表相应的位置处记录为NULL。
表-1
User_id age
peter 15
mary 20
Tom 21
表-2
Trans_id User_id product-id
1 peter 15
2 mary 16
表-3
User_id age product-id
peter 15 15
mary 20 16
tom 21 null
具体的,横向聚合拼接控件,其对应于所述特征计算逻辑知识库中一套采用聚合方法对副表中至少一个聚合字段对应的特征进行聚合,得到拼接字段对应的特征,并将拼接字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、聚合方法、拼接字段和多个聚合字段。
按照聚合方式不同,横向聚合拼接控件至少可以细分为:时间关系拼接控件和分组关系拼接控件。其中,时间关系拼接控件的配置页面上可输入的配置信息包括:主表名称、副表名称、主表时间字段、副表时间字段和拼接条件,依据这些配置信息能够按照时间关系拼离当前最近的一条数据。分组关系拼接控件的配置页面上可输入的配置信息包括:主表名称、副表名称、分组key和聚合方法,依据这些配置信息能够先对副表基于某个字段key做聚合,然后基于该key将聚合结果拼到主表。
示例性的,横向聚合拼接控件的配置页面上可输入的配置信息为:主表名称“表-1”,副表名称“表-4”,聚合方法“统计交易次数”,聚合字段为“User_id”,拼接字段“product-count”。若执行与横向聚合拼接控件相应的逻辑,则采用聚合方法“统计交易次数”对副表“表-4”中聚合字段为“User_id”进行次数统计,得到拼接字段“product-count”对应的特征,并将拼接字段对应的特征添加到主表“表-1”中,形成“表-5”。
表-4
Trans_id User_id product-id
1 peter 15
2 mary 16
3 mary 17
表-5
User_id age product-count
peter 15 1
mary 20 2
Tom 21 null
具体的,纵向拼接控件,其对应于所述特征计算逻辑知识库中一套用于对副表中纵向拼接字段对应的特征进行合并,形成一列新的特征,并根据新列特征来源要求确定是否添加新列特征来源的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、纵向拼接字段和新列特征来源要求。需要说明的是,主表和副表可以为同一个数据表。纵向拼接一般在时序统计特征之前执行。
示例性的,纵向拼接控件的配置页面上可输入的配置信息为:主表名称“表-6”、副表名称“表-7”、纵向拼接字段“ID”、“date”和新列特征来源要求为“添加新列特征来源”。该新列特征来源用于说明特征的来源表。若执行与纵向拼接控件相应的逻辑,则对主表“表-6”和副表“表-7”中的纵向拼接字段“ID”和“date”对应的特征分别进行合并。对主表“表-6”和副表“表-7”中的其他字段(其他字段指代的是非纵向拼接字段)对应的特征保留,形成“表-8”。从“表-8”可以看出对于来自表-6的数据行,amt字段用空值填充,对于来自表-7的数据行,label字段用空值填充,同时增加新列source字段来标识source字段对应特征的数据来源。
表-6
ID date label
3 2019/1/2 1
6 2019/1/4 0
3 2019/1/6 0
表-7
ID date amt
3 2019/1/1 100
6 2019/1/3 200
3 2019/1/5 300
表-8
ID date label amt source
3 2019/1/2 1 null 表-6
6 2019/1/4 0 null 表-6
3 2019/1/6 0 null 表-6
3 2019/1/1 null 100 表-7
6 2019/1/3 null 200 表-7
3 2019/1/5 null 300 表-7
第二种,特征计算类可配置控件。
特征计算类可配置控件用于配置单表特征计算的配置信息。通常特征计算类可配置控件的每次操作都是对一个表的字段做特征,涉及多张表时,一般可以先对单表做特征衍生,然后拼表,或者先拼表再做特征衍生。
特征计算类可配置控件的具体类型本实施例不作具体限定,特征计算类可配置控件至少包括如下三种:行内特征计算控件、全表分组统计特征计算控件和历史时窗统计特征计算控件。
具体的,行内特征计算控件,其对应于所述特征计算逻辑知识库中一套用于依据计算方法对数据表中的一行特征进行特征衍生计算,得到新的特征的计算逻辑信息,其配置页面上可输入的配置信息包括:计算方法和数据表名称。其中,衍生计算至少包括如下几种:
一是,单个字段值的变换,比如字段类型转换、时间字段取日期等。其中,字段类型转换至少包括int/bigInt、float/double、string、date/timestamp和fillNull。时间字段取日期至少包括month、date、hour、min、weekday和weekend。数值类型至少包括round、floor、bin、log、mod、lineartrans和pow。类别/文本类型至少包括mapping、eliminatechar、split、splitByKey和sub_str。list/dict类型至少包括order_by_key、order_by_value、top、range、map和get_values。
二是、对多个字段做组合变换,比如数值字段之间的四则运算,复数kernel变换等。其中,时间类型至少包括time_diff。数值类型至少包括diff、sum、times和ratio。类别/文本类型至少包括concat和combine。
具体的,全表分组统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段;其中,聚合计算的方法至少包括如下几种:
一是、取过去最近1条记录的值(last):取最近1条记录之前,可以对历史数据设置筛选条件至少为:a)last_value:取指定字段最近1条记录的取值,结果为scalar;b)last_group_value:按某个字段分组后取指定字段个组中最近1条记录的取值,结果为dict;c)last_diff:指定字段最近1条记录的取值和当前值的比较(比较方法支持可配置diff、ratio、combine),输出scalar;d)last_group_diff:按某个字段分组后,取指定字段各组中过去最近1条记录的取值和当前值的比较(比较方法支持可配置diff、ratio、combine),输出dict。
二是、取最近N条记录的值(lastN):取最近N条记录计算特征是前,可以对历史数据设置筛选条件至少为:a)lastN_list:序列化(行为模式特征,LR版反欺诈模型中用到),输出set,pair,seq;b)、lastN_avg:移动平均值;c)lastN_corr:两列数值的相关系数;d)lastN_sum:移动求和;e)lastN_std:标准差。
三是、取过去1个时间段的值(window):计算特征之前,可以对窗口中的历史数据设置筛选条件至少为:
a)总体聚合:1)W_count:历史窗口计数;2)W_countdistinct:历史窗口统计不同取值种类数;3)W_entropy:历史窗口熵;4)W_sum:历史窗口求和;5)W_avg:历史窗口求平均;6)W_max:历史窗口求最大值;7)W_min:历史窗口求最小值;8)W_std:历史窗口求标准差;9)W_quantile:取窗口内某个分为数的取值;10)W_ifexist:判断当前值是否在历史窗口中出现过;11)W_existcount:统计当前值在历史窗口中出现过的次数;12)W_count_ratio:统计当前值在历史窗口中出现次数占总次数的比例;13)W_quantile_position:当前值在窗口内所处的分为数位置;
b)分组聚合:1)W_group_count:分组计数;2)W_group_count_ratio:分组计数并计算每个类别的占比;3)W_group_sum:分组求和;4)W_group_sum_ratio:分组求和并计算每个类别的占比;5)W_group_avg:分组求平均;6)W_group_max:分组求最大值;7)W_group_min:分组求最小值。
四是、取过去N个时间段的值(windowN):计算特征之前,可以对窗口中的历史数据设置筛选条件至少为:
a)序列化:1)WN_countdistinct:历史窗口统计不同取值种类数;2)WN_first:历史窗口中第1条数据;3)WN_entropy:历史窗口的entropy;4)WN_sum:历史窗口的和;5)WN_max:历史窗口的最大值;6)WN_min:历史窗口的最小值;7)WN_std:历史窗口的标准差;8)WN_ifexist:判断当前值是否在历史窗口中出现过;9)WN_existcount:统计当前值在历史窗口中出现过的次数;10)WN_count_ratio:统计当前值在历史窗口中出现次数占总次数的比例;11)WN_quantile_position:当前值在窗口内所处的分为数位置。
b)窗口趋势:1)W2_avg_trend:两个窗口平均值的变化趋势;2)W2_count_trend:两个窗口计数的变化趋势;3)W2_sum_trend:两个窗口求和的变化趋势;4)W2_std_trend:两个窗口波动的变化趋势。
具体的,历史时窗统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并基于数据表中行与行之间的时间关系,对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段。其中,聚合计算至少包括:group_by_count“分组计数”、group_by_sum“分组求和”、group_by_max“分组取最大值”、group_by_avg“分组取平均值”、group_by_min“分组取最小值”和group_by_pop“分组取出现次数做多的值”。
本实施例中,在用户需要配置与特征计算相关的配置信息时,可根据可配置控件的分类和层级关系,向用户展示包含可配置控件的图形用户界面,通过图形用户界面与用户交互,引导用户输入配置信息。具体的,根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面的具体过程可以包括如下步骤:在初始时,向用户展示包含属于第一层级的可配置控件的图形用户界面,其中,属于第一层级的可配置控件属于一个或多个分类;响应于进入下一级界面的触发条件,向用户展示包含属于第二层级的可配置控件的图形用户界面,其中,属于第二层级的可配置控件属于一个或多个分类;以此类推,向用户展示包含属于不同级的可配置控件的图形用户界面。
具体的,在初始时,向用户展示包含属于第一层级的可配置控件的图形用户界面的方法为至少包括如下两种:
第一种,预设界面上展示有全部可配置控件的标识按钮供用户点选,当至少一个标识按钮被点选时,将被点选标识按钮对应的可配置控件作为第一层级的可配置控件,并向用户展示包含属于第一层级的可配置控件的图形用户界面供用户输入配置信息。
示例性的,如图2所示,20区域内为展示的全部可配置控件的标识按钮:横向直接拼接控件的标识按钮“left_join”、横向聚合拼接控件的标识按钮“ga_join”、纵向拼接控件的标识按钮“union”、行内特征计算控件的标识按钮“行内特征”、全表分组统计特征计算控件的标识按钮“分组统计”和历史时窗统计特征计算控件的标识按钮“历史时窗统计”。当“left_join”被点选时,如图3所示,将横向直接拼接控件作为第一层级的可配置控件,并向用户展示包含属于将横向直接拼接控件(图3中的30区域即为横向直接拼接控件)的图形用户界面。图3中,输入表1为“主表”、输入表2为“副表”、输出表即为设定针对横向直接拼接的特征计算完成后输出表,关联条件即为“拼接条件”。
第二种,预设界面上以下拉框的形式提供可配置控件的标识供用户选择,当至少一个标识被定位在下拉框中时,将被定位的标识对应的可配置控件作为第一层级的可配置控件,并向用户展示包含属于第一层级的可配置控件的图形用户界面供用户输入配置信息。
示例性的,如图4所示,40区域内为以下拉框,当下拉框被选中时,展示41区域中的可配置控件的标识供用户选择。如图5所示,当行内特征计算控件的标识“行内特征”定位在40区域内时,将行内特征计算控件作为第一层级的可配置控件,并向用户展示包含属于将行内特征计算控件(图5中的42区域即为行内特征计算控件)的图形用户界面。
本实施例中,当第一层级的可配置控件不能满足特征计算的要求时,用户可以一级挨一级向下触发,直到展示出满足特征计算要求的各层级的可配置控件为止。
示例性的,如图6所示,当向用户展示包含属于第一层级的可配置控件“left_join”的图形用户界面之后,行内特征计算控件的标识按钮“行内特征”被用户点选时,则行内特征计算控件的标识按钮“行内特征”被用户点选即为进入下一级界面的触发条件,则响应于进入下一级界面的触发条件,向用户展示包含属于第二层级的可配置控件“行内特征计算控件”的图形用户界面。之后,历史时窗统计特征计算控件的标识按钮“历史时窗统计”被用户点选时,则历史时窗统计特征计算控件的标识按钮“历史时窗统计”被用户点选即为进入下一级界面的触发条件,则响应于进入下一级界面的触发条件,向用户展示包含属于第三层级的可配置控件“历史时窗统计特征计算控件”的图形用户界面。同理,如图7所示,为依次将“行内特征”、“历史统计”和“left_join”定位到下拉框中所形成的图形用户界面。
本实施例中,为了明确特征计算所涉及的表格,那么在向用户展示包含至少一个可配置控件的图形用户界面之前,提示用户输入本次特征计算所涉及到的初始数据表的表名称。若通过图形用户界面获取的表名称的数量仅为一个时,则说明特征计算时仅需要对单表做特征衍生,因此仅向用户展示包含至少一个特征计算类可配置控件的图形用户界面,供用户在特征计算类可配置控件的配置页面上配置与特征计算类相关的配置信息。若通过图形用户界面获取的表名称的数量为两个或多个时,则说明特征计算时需要进行双表拼接操作,因此仅向用户展示包含至少一个拼表类可配置控件的图形用户界面,供用户在拼表类可配置控件的配置页面上配置与拼表类相关的配置信息。若通过图形用户界面获取的表名称的数量为两个或多个时,则说明特征计算时既需要进行双表拼接操作又需要对单表做特征衍生,则向用户展示包括至少一个拼表类可配置控件和至少一个特征计算类可配置控件的图形用户界面,供用户在拼表类可配置控件的配置页面上配置与拼表类相关的配置信息和供用户在特征计算类可配置控件的配置页面上配置与特征计算类相关的配置信息。
102、响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息。
本实施例中,展示该一个或多个可配置控件分别的配置页面的方式至少包括如下两种:
第一种,为了让用户可以同时观看到全部的可配置控件,方便用户在配置页面输入配置信息时可以观看到上一层级或下一层级可配置控件的配置信息,则在图形用户界面的配置区域互不覆盖地排列展示该一个或多个可配置控件分别的配置页面。
示例性的,如图6和图7所示,在图形用户界面的配置区域互不覆盖地排列展示三个可配置控件分别的配置页面。
第二种,为了减少各可配置控件的配置页面在图形用户界面的展示空间,则各可配置控件的配置页面叠加展示。需要说明的是,各配置页面均可通过预设的切换键切换为用户当前可见的配置页面。
在本实施例中,通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息的过程至少包括:针对每一个可配置控件均执行:在初始时,通过可配置控件的配置页面中的已有配置项目获取用户输入的一级配置信息;响应于在配置页面中添加下一级配置项目的触发条件,在配置界面中向用户展示第二层级的配置项目,通过第二层级的配置项目获取用户输入的二级配置信息;以此类推,在配置界面中向用户展示不同层级的配置项目,并通过各层级配置项目获取用户输入的各级配置信息。当针对全部配置信息获取完毕的按钮的触发时,配置信息获取完毕。
示例性的,图8为行内特征计算控件的配置页面,当输入表名称和输出表名称配置完毕后,且“转换字段”和“计算行内字段”被点选时,则确定满足在配置页面中添加下一级配置项目的触发条件,则响应于在配置页面中添加下一级配置项目的触发条件。如图9所示,在配置界面中向用户展示第二层级的配置项目。
示例性的,图10为历史时窗统计特征计算控件的配置页面,当“添加方法”和“添加子窗口”被点选时,则确定满足在配置页面中添加下一级配置项目的触发条件,则响应于在配置页面中添加下一级配置项目的触发条件,如图11所示,在配置页面中向用户展示第二层级的配置项目。
在本实施例中,响应于用户在可配置控件的配置页面上输入完配置信息,根据该配置信息和该可配置控件对应的计算逻辑信息,推断出该可配置控件对应的结果数据表的字段信息,并向用户展示推断出的字段信息。其展示推断出字段信息的目的是提示用户该字段信息对应的表可以作为下一个层级的可配置控件的输入使用。
本实施例中,可配置控件的配置页面上可输入的配置信息包括:输入数据表名称、输入数据表的参与计算的字段信息以及计算逻辑相关参数。其中,输入数据表名称用于执行特征计算的原始数据表。输入数据表的参与计算的字段信息用户确定参与特征计算的特征。示例性的,图3中的可配置控件的配置页面上输入的配置信息为:输入数据表1名称“admin”、输入数据表2名称“admin”。
103、基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件。
在本实施例中,配置文件的生成方法至少包括:从特征计算逻辑知识库中调取与可配置控件相应的计算逻辑信息;基于各可配置控件的层级关系,确定各可配置控件的计算逻辑信息的排列顺序,并基于排列顺序整合各可配置控件的计算逻辑信息和配置信息,形成配置文件。本实施例中对配置文件的类型不作具体限定,可选的,配置文件为json格式的文件。
在本实施例中,生成的配置文件中,多个可配置控件之间通过各自的输入输出数据表进行关联。各可配置控件的计算逻辑信息的排列顺序,便是基于各多个可配置控件之间通过各自的输入输出数据表的关联关系确定的。
104、调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
本实施例中,目标特征计算代码的具体过程至少包括:调用目标特征计算代码的代码编译器读取配置文件中的数据,对读取的数据进行词法和语法的分析,并转化为汇编代码。之后把汇编代码翻译成目标机器指令,对目标机器指令进行链接处理,形成目标特征计算代码。
本发明实施例提供的实现自动生成特征计算代码的方法,通过预设的关于可配置控件的分类和层级关系,向用户展示包含可配置控件的图形用户界面。然后响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息。基于用户输入的配置信息与特征计算逻辑知识库中与可配置控件相应的计算逻辑信息,生成配置文件。调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码,从而得到执行特征计算的计算代码。可见,本发明实施例提供的方案中通过包含可配置控件的图形用户界面与用户交互,引导用户输入配置信息,并根据用户输入的配置信息和特征计算逻辑知识库中涉及特征计算的计算逻辑信息便可得到进行特征计算的特征计算代码。整个特征计算代码的形成过程中无需用户手动编写计算代码,因此,本发明实施例提供的方案能够实现特征计算代码的自动生成,降低特征计算代码编码的工作量。
进一步的,根据图1所示的方法,本发明的另一个实施例还提供了一种实现自动生成特征计算代码的方法,如图12所示,所述方法主要包括:
201、根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息。
202、响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息。
203、基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件。
204、在预设的逻辑展示界面,展示所述配置文件相应的计算逻辑信息。
本实施例中,为了使用户能够及时了解计算逻辑信息的调用进度以及为了使用户能够查看和检查计算逻辑信息,则在生成配置文件之后,在预设的逻辑展示界面展示配置文件相应的计算逻辑信息,使用户预览计算逻辑信息,当计算逻辑信息存在错误,可以响应于用户在逻辑展示界面上修改计算逻辑信息的操作,更新计算逻辑信息。
在本实施例中,在预设的逻辑展示界面,展示配置文件相应的计算逻辑信息的方法至少包括如下两种:
第一种,单独向用户展示包含计算逻辑信息的逻辑展示界面。
第二种,同时向用户展示包含计算逻辑信息的逻辑展示界面和向用户展示包含至少一个可配置控件的图形用户界面,以便用户可以基于用户在可配置控件中输入的配置信息校对计算逻辑信息的正确性。
示例性的,如图13所示,包含区域51、区域52和区域53三个可配置控件的图形用户界面。区域54为包含计算逻辑信息的逻辑展示界面。用户可以基于用户在可配置控件中输入的配置信息校对计算逻辑信息的正确性。
205、若接收到针对展示的计算逻辑信息的修改信息时,基于所述修改信息更新所述配置文件,并执行204。
本实施例中,在用户需要对计算逻辑信息修改时,则用户直接在逻辑展示界面中对计算逻辑信息进行修改。响应于用户在逻辑展示界面上对计算逻辑信息的修改操作,获取修改信息,并根据修改信息更新配置文件,使得配置文件更为符合用户的特征计算要求。
206、若接收到针对展示的计算逻辑信息的确认信息时,调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
本实施例中,在用户确定展示的计算逻辑信息无问题时,可以触发逻辑展示界面上的“编译”按钮(图13中的541即为编译按钮)。响应于用户选择“编译”按钮的操作,调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
207、对所述目标特征计算代码进行校验,在检验通过时,执行208;在检验不通过时,执行210。
在本实施例中,为了保证目标特征计算代码可以正确和顺利的完成特征计算,则需要对目标特征计算代码进行校验。其中,目标特征计算代码的校验过程为校验代码语法正确性的过程。
208、向用户展示所述目标特征计算代码。
在本实施例中,向用户展示目标特征计算代码的目的是为了使得用户可以明确的了解到特征计算代码,并再次为用户提供校验和修改特征计算代码的机会。
209、将所述目标特征计算代码发送至计算引擎以执行相应的特征计算流程,并结束当前流程。
本实施例中,在目标特征计算代码校验通过时,说明目标特征计算代码可以正确的完成特征计算,则利用目标特征计算代码执行特征计算。计算的过程是对与可配置控件中配置相关的表进行特征计算,待计算完成时,向用户展示特征计算结果。
在本实施例中,为了掌握目标特征计算代码进行特征计算的时机和进度,则将目标特征计算代码发送至计算引擎,由计算引擎执行相应的特征计算流程。
210、发出错误提示信息。
本实施例中,在目标特征计算代码校验不通过时,说明目标特征计算代码可能存在问题,则发出错误提示信息,以便用户根据错误提示信息对目标特征计算代码进行异常处理。
进一步的,依据上述方法实施例,本发明的另一个实施例还提供了一种实现自动生成特征计算代码的装置,如图14所示,所述装置包括:
第一展示单元61,用于根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;
获取单元62,用于响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息;
生成单元63,用于基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;
转换单元64,用于调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
本发明实施例提供的实现自动生成特征计算代码的装置,通过预设的关于可配置控件的分类和层级关系,向用户展示包含可配置控件的图形用户界面。然后响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息。基于用户输入的配置信息与特征计算逻辑知识库中与可配置控件相应的计算逻辑信息,生成配置文件。调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码,从而得到执行特征计算的计算代码。可见,本发明实施例提供的方案中通过包含可配置控件的图形用户界面与用户交互,引导用户输入配置信息,并根据用户输入的配置信息和特征计算逻辑知识库中涉及特征计算的计算逻辑信息便可得到进行特征计算的特征计算代码。整个特征计算代码的形成过程中无需用户手动编写计算代码,因此,本发明实施例提供的方案能够实现特征计算代码的自动生成,降低特征计算代码编码的工作量。
可选的,如图15所示,所述第一展示单元61包括:
第一展示模块611,用于在初始时,向用户展示包含属于第一层级的可配置控件的图形用户界面,其中,属于第一层级的可配置控件属于一个或多个分类;
第二展示模块612,用于响应于进入下一级界面的触发条件,向用户展示包含属于第二层级的可配置控件的图形用户界面,其中,属于第二层级的可配置控件属于一个或多个分类;以此类推,向用户展示包含属于不同级的可配置控件的图形用户界面。
可选的,如图15所示,所述获取单元62包括:
第三展示模块621,用于在所述图形用户界面的配置区域互不覆盖地排列展示该一个或多个可配置控件分别的配置页面。
可选的,可配置控件的配置页面上可输入的配置信息包括:输入数据表名称、输入数据表的参与计算的字段信息以及计算逻辑相关参数。
可选的,在所述生成的配置文件中,多个可配置控件之间通过各自的输入输出数据表进行关联。
可选的,如图15所示,该装置进一步包括:
处理单元65,用于响应于用户在可配置控件的配置页面上输入完配置信息,根据该配置信息和该可配置控件对应的计算逻辑信息,推断出该可配置控件对应的结果数据表的字段信息,并向用户展示推断出的字段信息。
可选的,所述可配置控件包括:拼表类可配置控件和特征计算类可配置控件。
可选的,所述拼表类可配置控件包括:
横向直接拼接控件,其对应于所述特征计算逻辑知识库中的一套将副表中满足拼接条件的一个或多个字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称和拼接条件;
横向聚合拼接控件,其对应于所述特征计算逻辑知识库中一套采用聚合方法对副表中至少一个聚合字段对应的特征进行聚合,得到拼接字段对应的特征,并将拼接字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、聚合方法、拼接字段和多个聚合字段;
纵向拼接控件,其对应于所述特征计算逻辑知识库中一套对副表中纵向拼接字段对应的特征进行合并,形成一列新的特征,并根据新列特征来源要求确定是否添加新列特征来源的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、纵向拼接字段和新列特征来源要求。
可选的,所述特征计算类可配置控件包括:
行内特征计算控件,其对应于所述特征计算逻辑知识库中一套用于依据计算方法对数据表中的一行特征进行特征衍生计算,得到新的特征的计算逻辑信息;其配置页面上可输入的配置信息包括:计算方法和数据表名称;
全表分组统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段;
历史时窗统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并基于数据表中行与行之间的时间关系,对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段。
可选的,如图15所示,该装置进一步包括:
第二展示单元66,用于在所述生成单元63生成配置文件之后,在预设的逻辑展示界面,展示所述配置文件相应的计算逻辑信息。
可选的,如图15所示,该装置进一步包括:
接收单元67,用于若接收到针对展示的计算逻辑信息的确认信息时,触发所述转换单元64调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码;
更新单元68,用于若接收到针对展示的计算逻辑信息的修改信息时,基于所述修改信息更新所述生成单元生成的所述配置文件。
可选的,如图15所示,该装置进一步包括:
执行单元69,同于对所述转换单元64转换成的所述目标特征计算代码进行校验;在检验通过时,基于所述目标特征计算代码执行特征计算;在检验不通过时,则发出错误提示信息。
可选的,如图15所示,该装置进一步包括:
第三展示单元70,用于向用户展示所述目标特征计算代码。
可选的,如图15所示,该装置进一步包括:
发送单元71,用于将所述目标特征计算代码发送至计算引擎以执行相应的特征计算流程。
本发明实施例提供的实现自动生成特征计算代码的装置中,各个功能模块运行过程中所采用的方法详解可以参见图1、图10方法实施例的对应方法详解,在此不再赘述。
进一步的,依据上述实施例,本发明的另一个实施例还提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述中任意一项所述的实现自动生成特征计算代码的方法。
进一步的,依据上述实施例,本发明的另一个实施例还提供了一种存储管理设备,所述存储管理设备包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于运行所述程序以执行上述中任意一项所述的实现自动生成特征计算代码的方法。
本发明实施例公开了:
A1、一种实现自动生成特征计算代码的方法,包括:
根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;
响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息;
基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;
调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
A2、根据A1所述的方法,所述根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面包括:
在初始时,向用户展示包含属于第一层级的可配置控件的图形用户界面,其中,属于第一层级的可配置控件属于一个或多个分类;
响应于进入下一级界面的触发条件,向用户展示包含属于第二层级的可配置控件的图形用户界面,其中,属于第二层级的可配置控件属于一个或多个分类;
以此类推,向用户展示包含属于不同级的可配置控件的图形用户界面。
A3、根据A1所述的方法,所述展示该一个或多个可配置控件分别的配置页面包括:
在所述图形用户界面的配置区域互不覆盖地排列展示该一个或多个可配置控件分别的配置页面。
A4、根据A1所述的方法,可配置控件的配置页面上可输入的配置信息包括:输入数据表名称、输入数据表的参与计算的字段信息以及计算逻辑相关参数;
在所述生成的配置文件中,多个可配置控件之间通过各自的输入输出数据表进行关联。
A5、根据A1所述的方法,该方法进一步包括:
响应于用户在可配置控件的配置页面上输入完配置信息,根据该配置信息和该可配置控件对应的计算逻辑信息,推断出该可配置控件对应的结果数据表的字段信息,并向用户展示推断出的字段信息。
A6、根据A1所述的方法,所述可配置控件包括:拼表类可配置控件和特征计算类可配置控件。
A7、根据A6所述的方法,所述拼表类可配置控件包括:
横向直接拼接控件,其对应于所述特征计算逻辑知识库中的一套将副表中满足拼接条件的一个或多个字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称和拼接条件;
横向聚合拼接控件,其对应于所述特征计算逻辑知识库中一套采用聚合方法对副表中至少一个聚合字段对应的特征进行聚合,得到拼接字段对应的特征,并将拼接字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、聚合方法、拼接字段和多个聚合字段;
纵向拼接控件,其对应于所述特征计算逻辑知识库中一套用于对副表中纵向拼接字段对应的特征进行合并,形成一列新的特征,并根据新列特征来源要求确定是否添加新列特征来源的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、纵向拼接字段和新列特征来源要求。
A8、根据A6所述的方法,所述特征计算类可配置控件包括:
行内特征计算控件,其对应于所述特征计算逻辑知识库中一套用于依据计算方法对数据表中的一行特征进行特征衍生计算,得到新的特征的计算逻辑信息;其配置页面上可输入的配置信息包括:计算方法和数据表名称;
全表分组统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段;
历史时窗统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并基于数据表中行与行之间的时间关系,对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段。
A9、根据A1所述的方法,在生成配置文件之后,该方法进一步包括:
在预设的逻辑展示界面,展示所述配置文件相应的计算逻辑信息。
A10、根据A9所述的方法,该方法进一步包括:
若接收到针对展示的计算逻辑信息的确认信息时,调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码;
若接收到针对展示的计算逻辑信息的修改信息时,基于所述修改信息更新所述配置文件。
A11、根据A1所述的方法,在调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码之后,该方法进一步包括:
对所述目标特征计算代码进行校验;
在检验通过时,基于所述目标特征计算代码执行特征计算;
在检验不通过时,则发出错误提示信息。
A12、根据A1所述的方法,该方法进一步包括:
向用户展示所述目标特征计算代码;
和/或,
将所述目标特征计算代码发送至计算引擎以执行相应的特征计算流程。
B1、一种实现自动生成特征计算代码的装置,包括:
第一展示单元,用于根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;
获取单元,用于响应于用户在图形用户界面上选一个或多个可配置控件的操作,展示该一个或多个可配置控件分别的配置页面,以及通过该一个或多个可配置控件分别的配置页面获取用户输入的配置信息;
生成单元,用于基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;
转换单元,用于调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
B2、根据B1所述的装置,所述第一展示单元包括:
第一展示模块,用于在初始时,向用户展示包含属于第一层级的可配置控件的图形用户界面,其中,属于第一层级的可配置控件属于一个或多个分类;
第二展示模块,用于响应于进入下一级界面的触发条件,向用户展示包含属于第二层级的可配置控件的图形用户界面,其中,属于第二层级的可配置控件属于一个或多个分类;以此类推,向用户展示包含属于不同级的可配置控件的图形用户界面。
B3、根据B1所述的装置,所述获取单元包括:
第三展示模块,用于在所述图形用户界面的配置区域互不覆盖地排列展示该一个或多个可配置控件分别的配置页面。
B4、根据B1所述的装置,可配置控件的配置页面上可输入的配置信息包括:输入数据表名称、输入数据表的参与计算的字段信息以及计算逻辑相关参数;
在所述生成的配置文件中,多个可配置控件之间通过各自的输入输出数据表进行关联。
B5、根据B1所述的装置,该装置进一步包括:
处理单元,用于响应于用户在可配置控件的配置页面上输入完配置信息,根据该配置信息和该可配置控件对应的计算逻辑信息,推断出该可配置控件对应的结果数据表的字段信息,并向用户展示推断出的字段信息。
B6、根据B1所述的装置,所述可配置控件包括:拼表类可配置控件和特征计算类可配置控件。
B7、根据B6所述的装置,所述拼表类可配置控件包括:
横向直接拼接控件,其对应于所述特征计算逻辑知识库中的一套将副表中满足拼接条件的一个或多个字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称和拼接条件;
横向聚合拼接控件,其对应于所述特征计算逻辑知识库中一套采用聚合方法对副表中至少一个聚合字段对应的特征进行聚合,得到拼接字段对应的特征,并将拼接字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、聚合方法、拼接字段和多个聚合字段;
纵向拼接控件,其对应于所述特征计算逻辑知识库中一套对副表中纵向拼接字段对应的特征进行合并,形成一列新的特征,并根据新列特征来源要求确定是否添加新列特征来源的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、纵向拼接字段和新列特征来源要求。
B8、根据B6所述的装置,所述特征计算类可配置控件包括:
行内特征计算控件,其对应于所述特征计算逻辑知识库中一套用于依据计算方法对数据表中的一行特征进行特征衍生计算,得到新的特征的计算逻辑信息;其配置页面上可输入的配置信息包括:计算方法和数据表名称;
全表分组统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段;
历史时窗统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并基于数据表中行与行之间的时间关系,对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段。
B9、根据B1所述的装置,该装置进一步包括:
第二展示单元,用于在所述生成单元生成配置文件之后,在预设的逻辑展示界面,展示所述配置文件相应的计算逻辑信息。
B10、根据B9所述的装置,该装置进一步包括:
接收单元,用于若接收到针对展示的计算逻辑信息的确认信息时,触发所述转换单元调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码;
更新单元,用于若接收到针对展示的计算逻辑信息的修改信息时,基于所述修改信息更新所述生成单元生成的所述配置文件。
B11、根据B1所述的装置,该装置进一步包括:
执行单元,同于对所述转换单元转换成的所述目标特征计算代码进行校验;在检验通过时,基于所述目标特征计算代码执行特征计算;在检验不通过时,则发出错误提示信息。
B12、根据B1所述的装置,该装置进一步包括:
第三展示单元,用于向用户展示所述目标特征计算代码;
和/或,
发送单元,用于将所述目标特征计算代码发送至计算引擎以执行相应的特征计算流程。
C1、一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行A1至A12中任意一项所述的实现自动生成特征计算代码的方法。
D1、一种存储管理设备,所述存储管理设备包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于运行所述程序以执行A1至A12中任意一项所述的实现自动生成特征计算代码的方法。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的深度神经网络模型的运行方法、装置及框架中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (26)

1.一种实现自动生成特征计算代码的方法,其特征在于,包括:
根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;
响应于用户在图形用户界面上选择一个或多个可配置控件的操作,展示该一个或多个可配置控件分别对应的配置页面,以及通过该一个或多个可配置控件分别对应的配置页面获取用户输入的配置信息;
基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;
调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
2.根据权利要求1所述的方法,其特征在于,所述根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面包括:
在初始时,向用户展示包含属于第一层级的可配置控件的图形用户界面,其中,属于第一层级的可配置控件属于一个或多个分类;
响应于进入下一级界面的触发条件,向用户展示包含属于第二层级的可配置控件的图形用户界面,其中,属于第二层级的可配置控件属于一个或多个分类;
以此类推,向用户展示包含属于不同级的可配置控件的图形用户界面。
3.根据权利要求1所述的方法,其特征在于,所述展示该一个或多个可配置控件分别对应的配置页面包括:
在所述图形用户界面的配置区域互不覆盖地排列展示该一个或多个可配置控件分别对应的配置页面。
4.根据权利要求1所述的方法,其特征在于,可配置控件的配置页面上可输入的配置信息包括:输入数据表名称、输入数据表的参与计算的字段信息以及计算逻辑相关参数;
在所述生成的配置文件中,多个可配置控件之间通过各自的输入输出数据表进行关联。
5.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
响应于用户在可配置控件的配置页面上输入完配置信息,根据该配置信息和该可配置控件对应的计算逻辑信息,推断出该可配置控件对应的结果数据表的字段信息,并向用户展示推断出的字段信息。
6.根据权利要求1所述的方法,其特征在于,所述可配置控件包括:拼表类可配置控件和特征计算类可配置控件。
7.根据权利要求6所述的方法,其特征在于,所述拼表类可配置控件包括:
横向直接拼接控件,其对应于所述特征计算逻辑知识库中的一套将副表中满足拼接条件的一个或多个字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称和拼接条件;
横向聚合拼接控件,其对应于所述特征计算逻辑知识库中一套采用聚合方法对副表中至少一个聚合字段对应的特征进行聚合,得到拼接字段对应的特征,并将拼接字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、聚合方法、拼接字段和多个聚合字段;
纵向拼接控件,其对应于所述特征计算逻辑知识库中一套用于对副表中纵向拼接字段对应的特征进行合并,形成一列新的特征,并根据新列特征来源要求确定是否添加新列特征来源的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、纵向拼接字段和新列特征来源要求。
8.根据权利要求6所述的方法,其特征在于,所述特征计算类可配置控件包括:
行内特征计算控件,其对应于所述特征计算逻辑知识库中一套用于依据计算方法对数据表中的一行特征进行特征衍生计算,得到新的特征的计算逻辑信息;其配置页面上可输入的配置信息包括:计算方法和数据表名称;
全表分组统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段;
历史时窗统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并基于数据表中行与行之间的时间关系,对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段。
9.根据权利要求1所述的方法,其特征在于,在生成配置文件之后,该方法进一步包括:
在预设的逻辑展示界面,展示所述配置文件相应的计算逻辑信息。
10.根据权利要求9所述的方法,其特征在于,该方法进一步包括:
若接收到针对展示的计算逻辑信息的确认信息时,调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码;
若接收到针对展示的计算逻辑信息的修改信息时,基于所述修改信息更新所述配置文件。
11.根据权利要求1所述的方法,其特征在于,在调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码之后,该方法进一步包括:
对所述目标特征计算代码进行校验;
在检验通过时,基于所述目标特征计算代码执行特征计算;
在检验不通过时,则发出错误提示信息。
12.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
向用户展示所述目标特征计算代码;
和/或,
将所述目标特征计算代码发送至计算引擎以执行相应的特征计算流程。
13.一种实现自动生成特征计算代码的装置,其特征在于,包括:
第一展示单元,用于根据预设的关于可配置控件的分类和层级关系,向用户展示包含至少一个可配置控件的图形用户界面,其中,每个可配置控件对应于特征计算逻辑知识库中的一套涉及特征计算的计算逻辑信息;
获取单元,用于响应于用户在图形用户界面上选择一个或多个可配置控件的操作,展示该一个或多个可配置控件分别对应的配置页面,以及通过该一个或多个可配置控件分别对应的配置页面获取用户输入的配置信息;
生成单元,用于基于用户输入的配置信息与特征计算逻辑知识库中的相应的计算逻辑信息,生成配置文件;
转换单元,用于调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码。
14.根据权利要求13所述的装置,其特征在于,所述第一展示单元包括:
第一展示模块,用于在初始时,向用户展示包含属于第一层级的可配置控件的图形用户界面,其中,属于第一层级的可配置控件属于一个或多个分类;
第二展示模块,用于响应于进入下一级界面的触发条件,向用户展示包含属于第二层级的可配置控件的图形用户界面,其中,属于第二层级的可配置控件属于一个或多个分类;以此类推,向用户展示包含属于不同级的可配置控件的图形用户界面。
15.根据权利要求13所述的装置,其特征在于,所述获取单元包括:
第三展示模块,用于在所述图形用户界面的配置区域互不覆盖地排列展示该一个或多个可配置控件分别对应的配置页面。
16.根据权利要求13所述的装置,其特征在于,可配置控件的配置页面上可输入的配置信息包括:输入数据表名称、输入数据表的参与计算的字段信息以及计算逻辑相关参数;
在所述生成的配置文件中,多个可配置控件之间通过各自的输入输出数据表进行关联。
17.根据权利要求13所述的装置,其特征在于,该装置进一步包括:
处理单元,用于响应于用户在可配置控件的配置页面上输入完配置信息,根据该配置信息和该可配置控件对应的计算逻辑信息,推断出该可配置控件对应的结果数据表的字段信息,并向用户展示推断出的字段信息。
18.根据权利要求13所述的装置,其特征在于,所述可配置控件包括:拼表类可配置控件和特征计算类可配置控件。
19.根据权利要求18所述的装置,其特征在于,所述拼表类可配置控件包括:
横向直接拼接控件,其对应于所述特征计算逻辑知识库中的一套将副表中满足拼接条件的一个或多个字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称和拼接条件;
横向聚合拼接控件,其对应于所述特征计算逻辑知识库中一套采用聚合方法对副表中至少一个聚合字段对应的特征进行聚合,得到拼接字段对应的特征,并将拼接字段对应的特征添加到主表中的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、聚合方法、拼接字段和多个聚合字段;
纵向拼接控件,其对应于所述特征计算逻辑知识库中一套对副表中纵向拼接字段对应的特征进行合并,形成一列新的特征,并根据新列特征来源要求确定是否添加新列特征来源的计算逻辑信息;其配置页面上可输入的配置信息包括:主表名称、副表名称、纵向拼接字段和新列特征来源要求。
20.根据权利要求18所述的装置,其特征在于,所述特征计算类可配置控件包括:
行内特征计算控件,其对应于所述特征计算逻辑知识库中一套用于依据计算方法对数据表中的一行特征进行特征衍生计算,得到新的特征的计算逻辑信息;其配置页面上可输入的配置信息包括:计算方法和数据表名称;
全表分组统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段;
历史时窗统计特征计算控件,其对应于所述特征计算逻辑知识库中一套用于按照数据分组规则对数据表中的特征分组,并基于数据表中行与行之间的时间关系,对目标字段的特征纵向做多行的聚合计算的计算逻辑信息;其配置页面上可输入的配置信息包括:数据表名称、数据分组规则和目标字段。
21.根据权利要求13所述的装置,其特征在于,该装置进一步包括:
第二展示单元,用于在所述生成单元生成配置文件之后,在预设的逻辑展示界面,展示所述配置文件相应的计算逻辑信息。
22.根据权利要求21所述的装置,其特征在于,该装置进一步包括:
接收单元,用于若接收到针对展示的计算逻辑信息的确认信息时,触发所述转换单元调用目标特征计算代码的代码编译器将配置文件转换成目标特征计算代码;
更新单元,用于若接收到针对展示的计算逻辑信息的修改信息时,基于所述修改信息更新所述生成单元生成的所述配置文件。
23.根据权利要求13所述的装置,其特征在于,该装置进一步包括:
执行单元,同于对所述转换单元转换成的所述目标特征计算代码进行校验;在检验通过时,基于所述目标特征计算代码执行特征计算;在检验不通过时,则发出错误提示信息。
24.根据权利要求13所述的装置,其特征在于,该装置进一步包括:
第三展示单元,用于向用户展示所述目标特征计算代码;
和/或,
发送单元,用于将所述目标特征计算代码发送至计算引擎以执行相应的特征计算流程。
25.一种计算机可读存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求12中任意一项所述的实现自动生成特征计算代码的方法。
26.一种存储管理设备,其特征在于,所述存储管理设备包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于运行所述程序以执行权利要求1至权利要求12中任意一项所述的实现自动生成特征计算代码的方法。
CN201910891732.7A 2019-09-20 2019-09-20 一种实现自动生成特征计算代码的方法及装置 Active CN110633078B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910891732.7A CN110633078B (zh) 2019-09-20 2019-09-20 一种实现自动生成特征计算代码的方法及装置
PCT/CN2020/114877 WO2021052260A1 (zh) 2019-09-20 2020-09-11 实现自动生成特征计算代码的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910891732.7A CN110633078B (zh) 2019-09-20 2019-09-20 一种实现自动生成特征计算代码的方法及装置

Publications (2)

Publication Number Publication Date
CN110633078A CN110633078A (zh) 2019-12-31
CN110633078B true CN110633078B (zh) 2020-12-15

Family

ID=68971902

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910891732.7A Active CN110633078B (zh) 2019-09-20 2019-09-20 一种实现自动生成特征计算代码的方法及装置

Country Status (2)

Country Link
CN (1) CN110633078B (zh)
WO (1) WO2021052260A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110633078B (zh) * 2019-09-20 2020-12-15 第四范式(北京)技术有限公司 一种实现自动生成特征计算代码的方法及装置
CN113760352A (zh) * 2021-07-01 2021-12-07 北京房江湖科技有限公司 代码文件生成方法、电子设备、存储介质及程序产品
CN116069304B (zh) * 2023-04-06 2023-07-14 紫光同芯微电子有限公司 一种程序数据生成方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357942A (zh) * 2017-09-04 2017-11-17 山东达创网络科技股份有限公司 一种源代码辅助生成工具及其生成方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722372B (zh) * 2012-05-25 2015-04-22 上海学智科技有限公司 一种通过分类配置自动生成代码的方法及系统
US10255063B2 (en) * 2013-03-15 2019-04-09 Microsoft Technology Licensing, Llc Providing source control of custom code for a user without providing source control of host code for the user
CN110442417A (zh) * 2016-01-08 2019-11-12 第四范式(北京)技术有限公司 特征抽取方法、机器学习方法及其装置
CN107705199B (zh) * 2017-08-07 2021-04-13 创新先进技术有限公司 特征计算代码的生成方法和装置
CN107562461B (zh) * 2017-09-08 2021-09-03 北京京东尚科信息技术有限公司 特征计算系统及方法、存储介质和电子设备
US10346142B1 (en) * 2017-12-21 2019-07-09 Sas Institute Inc. Automated streaming data model generation
CN108228183B (zh) * 2018-01-12 2022-07-12 北京三快在线科技有限公司 前端界面代码生成方法、装置、电子设备及存储介质
CN109144648B (zh) * 2018-08-21 2020-06-23 第四范式(北京)技术有限公司 统一地执行特征抽取的方法及系统
CN109635162A (zh) * 2018-12-18 2019-04-16 北京九章云极科技有限公司 一种数据处理系统及方法
CN110045982A (zh) * 2019-03-28 2019-07-23 宋子杰 一种基于源代码聚合的嵌入式系统配置方法
CN110633078B (zh) * 2019-09-20 2020-12-15 第四范式(北京)技术有限公司 一种实现自动生成特征计算代码的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357942A (zh) * 2017-09-04 2017-11-17 山东达创网络科技股份有限公司 一种源代码辅助生成工具及其生成方法

Also Published As

Publication number Publication date
WO2021052260A1 (zh) 2021-03-25
CN110633078A (zh) 2019-12-31

Similar Documents

Publication Publication Date Title
CN108021363B (zh) 可视化游戏逻辑编辑方法及系统
CN110633078B (zh) 一种实现自动生成特征计算代码的方法及装置
CN112394922B (zh) 决策配置方法、业务决策方法和决策引擎系统
US10540436B2 (en) Evaluating rules applied to data
US9262851B2 (en) Heat mapping of defects in software products
US10169215B2 (en) Method and system for analyzing test cases for automatically generating optimized business models
CN106599039B (zh) 一种支持关系数据库数据自由组合嵌套的统计表述方法
US20150293755A1 (en) System and automated method for configuring a predictive model and deploying it on a target platform
US20090271351A1 (en) Rules engine test harness
US20090313201A1 (en) Method and system for capturing business rules for automated decision procession
US20080270337A1 (en) Rule processing system
US11385898B2 (en) Task orchestration method for data processing, orchestrator, device and readable storage medium
CN105095329B (zh) 一种人口数据校核方法
CN111008707A (zh) 自动化建模方法、装置及电子设备
US10365995B2 (en) Composing future application tests including test action data
CN115756901A (zh) 一种业务决策处理方法及其规则引擎系统
CN109447787A (zh) 征信报告自动解析方法、装置、计算机设备以及存储介质
JP6223866B2 (ja) 表示情報生成装置、プログラム実行状況表示システム、方法およびプログラム
US20200327125A1 (en) Systems and methods for hierarchical process mining
CN112732242A (zh) 宽表加工脚本的生成方法及装置
US20230177443A1 (en) Systems and methods for automated modeling of processes
CN115345600B (zh) 一种rpa流程的生成方法和装置
CN110457023A (zh) 任务创建方法、装置、存储介质及电子设备
CN115270923A (zh) 一种基于场景的可视化智能决策方法及系统
EP3786810A1 (en) Automatic generation of computing artifacts for data analysis

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