CN112101562B - 机器学习建模过程的实现方法和*** - Google Patents
机器学习建模过程的实现方法和*** Download PDFInfo
- Publication number
- CN112101562B CN112101562B CN201910525815.4A CN201910525815A CN112101562B CN 112101562 B CN112101562 B CN 112101562B CN 201910525815 A CN201910525815 A CN 201910525815A CN 112101562 B CN112101562 B CN 112101562B
- Authority
- CN
- China
- Prior art keywords
- machine learning
- data
- execution
- entity
- modeling process
- 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
- 238000010801 machine learning Methods 0.000 title claims abstract description 348
- 238000000034 method Methods 0.000 title claims abstract description 348
- 230000008569 process Effects 0.000 title claims abstract description 275
- 238000005516 engineering process Methods 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 120
- 238000011156 evaluation Methods 0.000 claims description 87
- 230000009471 action Effects 0.000 claims description 72
- 238000012545 processing Methods 0.000 claims description 64
- 238000013499 data model Methods 0.000 claims description 61
- 238000005457 optimization Methods 0.000 claims description 36
- 230000003993 interaction Effects 0.000 claims description 23
- 238000012549 training Methods 0.000 claims description 16
- 230000002452 interceptive effect Effects 0.000 claims description 14
- 238000012986 modification Methods 0.000 claims description 12
- 230000004048 modification Effects 0.000 claims description 12
- 238000007726 management method Methods 0.000 claims description 8
- 238000012854 evaluation process Methods 0.000 claims description 5
- 238000012360 testing method Methods 0.000 claims description 5
- 238000011161 development Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000010845 search algorithm Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 235000000332 black box Nutrition 0.000 description 2
- 244000085682 black box Species 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Machine Translation (AREA)
Abstract
提供了一种机器学习建模过程的实现方法和***。获取用户针对至少部分机器学习建模过程设定的配置信息,所述配置信息用于表征所述至少部分机器学习建模过程的执行策略,所述配置信息包括执行策略已确定的第一部分和执行策略待确定的第二部分;利用自动机器学习技术确定所述第二部分的执行策略;基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果。由此,通过结合人与机器的优势,可以大大提高机器学习过程的实现效率。
Description
技术领域
本发明总体说来涉及机器学习领域,更具体地说,涉及一种机器学习建模过程的实现方法,机器学习建模过程的实现***和存储介质。
背景技术
在传统机器学习建模过程中,需要机器学习专家人工确定所有决策。确定决策的过程往往依赖于人的机器学习经验以及对业务的理解,并且经常需要进行穷举与试错。这一方面需要专门的机器学习人才,另一方面需要大量的人力资源。而在决策空间较大的场景中,通过人工的方式往往无法有效地找到较优的决策。总而言之,传统机器学习建模过程需要专门的人才,消耗大量人力且效率低下。
自动机器学习(AutoML)技术的目的是使用自动化的数据驱动方式来确定机器学习解决方案。自动机器学习技术虽然能够在一定程度上解决传统机器学习对机器学习人才需求量大、人力资源消耗大的问题,但是现有的自动机器学习技术的搜索效率有限,在计算资源受限、决策空间较大、数据量较大的场景中很难获得较好效果。
发明内容
本发明的示例性实施例旨在克服现有的自动机器学习算法的效率低下问题。
根据本发明的第一个方面,提出了一种机器学习建模过程的实现方法,包括:获取用户针对至少部分机器学习建模过程设定的配置信息,配置信息用于表征至少部分机器学习建模过程的执行策略,配置信息包括执行策略已确定的第一部分和执行策略待确定的第二部分;利用自动机器学习技术确定第二部分的执行策略;基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,利用自动机器学习技术确定第二部分的执行策略的步骤包括:对第二部分的决策空间中多个取值不同的执行策略进行评测,决策空间用于表征第二部分的执行策略的取值集合;将评测结果较好的执行策略确定为第二部分的执行策略。
可选地,对第二部分的决策空间中多个取值不同的执行策略进行评测的步骤包括:按照第一部分的执行策略以及赋值后的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;对结果进行评测;根据评测结果重新为第二部分的执行策略赋值;重复上述流程,直到满足预定条件,得到所述第二部分的多个取值不同的执行策略的评测结果。
可选地,该方法还包括:获取数据描述信息,数据描述信息描述了一种或多种数据、数据的属性以及数据和/或属性的关系;基于数据描述信息,得到用于结构化地表征数据、属性以及关系的数据模型。
可选地,该方法还包括:向用户输出建议信息,建议信息用于表征针对数据模型的可行操作。
可选地,数据描述信息是用户基于第一规则语言编写的,基于数据描述信息,得到用于结构化地表征数据、属性以及关系的数据模型的步骤包括:使用能够识别第一规则语言的读取函数读取数据描述信息,并基于数据描述信息得到数据模型。
可选地,配置信息是用户根据数据模型设定的,配置信息用于表征基于数据模型所表征的数据和/或属性实现至少部分机器学习建模过程的执行策略。
可选地,利用自动机器学习技术确定第二部分的执行策略的步骤包括:步骤A1、基于数据模型,获取执行至少部分机器学习建模过程所需的数据;步骤A2、为第二部分的执行策略赋值;步骤A3、按照第一部分的执行策略以及赋值后的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;步骤A4、对结果进行评测;基于上述步骤A1至步骤A4,得到第二部分的多个取值不同的执行策略的评测结果,将评测结果较好的执行策略确定为第二部分的执行策略。
可选地,基于上述步骤A1至步骤A4,得到第二部分的多个取值不同的执行策略的评测结果,将评测结果较好的执行策略确定为第二部分的执行策略的步骤包括:步骤A5、根据评测结果重新为第二部分的执行策略赋值;重复上述步骤A3至步骤A5,直到满足预定条件,将评测结果较好的执行策略确定为第二部分的执行策略。
可选地,基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果的步骤包括:基于数据模型,获取执行至少部分机器学习建模过程所需的数据;基于第一部分的执行策略和所确定的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,至少部分机器学习建模过程包括以下至少一项:数据拼接过程;数据拆分过程;特征生成过程;模型建立过程;模型训练过程;模型测试过程;模型评估过程;模型应用过程。
可选地,配置信息是用户基于第二规则语言编写的,或者配置信息是用户通过对向用户展示的用于对至少部分机器学习建模过程进行设置的交互界面执行的操作生成的。
可选地,第一部分包括一个或多个第一执行步骤,第一执行步骤包括第一输入、第一处理函数以及第一输出,并且/或者第二部分包括一个或多个第二执行步骤,第二执行步骤包括第二输入、第二处理函数以及第二输出,第二输入、第二处理函数以及第二输出中至少一个待确定。
可选地,第一输入包括一个或多个第一实体,第一实体用于表征机器学习领域中具有预定含义的对象,并且/或者第一实体能够执行预定的动作,第二输入包括一个或多个第二实体,第二实体用于表征机器学习领域中具有预定含义的对象,并且/或者第二实体能够执行预定的动作。
可选地,该方法还包括:向用户展示第一实体和/或第二实体;并且/或者接收用户针对第一实体和/或第二实体的修改。
可选地,第一实体和/或第二实体包括以下至少一种:数据实体,用于表征机器学习语境下的数据,能够执行获取实际数据的动作;属性实体,用于表征数据实体的属性,能够执行获取属性所对应的实际数据的动作;常量实体,用于表征常量,存储了常量的值;变量实体,用于表征变量,存储了变量的值;模型实体,用于表征机器学习语境下的模型,能够执行训练模型和/或使用模型进行预测的动作。
可选地,第二实体还包括决策实体,决策实体用于表征期望由机器确定的决策,能够执行生成决策和/或获取最优决策的动作。
可选地,配置信息还包括执行策略已确定的优化步骤,优化步骤的输入包括至少部分机器学习建模过程的结果,优化步骤的处理函数为目标定义函数,目标定义函数用于对结果进行评测,以得到目标实体,目标实体用于表征评测结果,目标实体能够执行优化和/或计算评测结果的动作。
可选地,利用自动机器学习技术确定第二部分的执行策略的步骤包括:执行所述优化步骤,其中,执行所述优化步骤包括:步骤B1、对执行至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;步骤B2、对决策实体执行生成决策动作,以得到决策实体的取值;步骤B3、按照第一部分的执行策略以及赋值后的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;步骤B4、对所述目标实体执行计算评测结果的动作;基于上述步骤B1至步骤B4,得到所述决策实体的多个取值的评测结果,将评测结果较好的取值确定为所述决策实体的最优决策。
可选地,基于上述步骤B1至步骤B4,得到所述决策实体的多个取值的评测结果,将评测结果较好的取值确定为所述决策实体的最优决策的步骤包括:步骤B5、基于评测结果确定决策实体的下一轮取值;重复上述步骤B2至步骤B5,直到满足预定条件,将评测结果较好的取值确定为决策实体的最优决策。
可选地,基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果的步骤包括:对执行至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;获取决策实体的最优决策;按照第一部分的执行策略和所确定的第二部分的执行策略,针对实际数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,第一处理函数和/或第二处理函数包括以下至少一项:数据处理函数;特征工程函数;建模函数;自动机器学习函数;共享与重用函数;版本管理函数;模型应用函数。
可选地,该方法还包括:在执行至少部分机器学习建模过程的过程中,实时向用户输出当前执行结果;并且/或者在执行至少部分机器学习建模过程的过程中,获取用户针对配置信息做出的调整,并基于调整后的配置信息执行至少部分机器学习建模过程。
可选地,该方法还包括:将配置信息翻译为后端引擎对应的语言或指令。
可选地,后端引擎包括计算图引擎和执行引擎,该方法还包括:由计算图引擎基于语言或指令生成第一计算图,第一计算图用于表征确定第二部分的执行策略的实现流程,利用自动机器学习技术确定第二部分的执行策略的步骤包括:由计算图引擎通过调用执行引擎执行第一计算图,确定第二部分的执行策略。
可选地,该方法还包括:由计算图引擎基于语言或指令生成第二计算图,第二计算图用于表征至少部分机器学习建模过程的实现流程,基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果的步骤包括:由计算图引擎通过调用执行引擎执行第二计算图,得到与至少部分机器学习建模过程对应的结果。
可选地,执行引擎包括以下至少一项:优化引擎;机器学习引擎;自动机器学习引擎。
根据本发明的第二个方面,还提出了一种机器学习建模过程的实现***,包括:交互装置,用于获取用户针对至少部分机器学习建模过程设定的配置信息,配置信息用于表征至少部分机器学习建模过程的执行策略,配置信息包括执行策略已确定的第一部分和执行策略待确定的第二部分;机器学习处理装置,用于利用自动机器学习技术确定第二部分的执行策略,以及基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,所述机器学习处理装置:对所述第二部分的决策空间中多个取值不同的执行策略进行评测,所述决策空间用于表征所述第二部分的执行策略的取值集合;将评测结果较好的执行策略确定为所述第二部分的执行策略。
可选地,机器学习处理装置:按照第一部分的执行策略以及赋值后的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;对结果进行评测;根据评测结果重新为第二部分的执行策略赋值;重复上述流程,直到满足预定条件,得到所述第二部分的多个取值不同的执行策略的评测结果。
可选地,交互装置还用于获取数据描述信息,数据描述信息描述了一种或多种数据、数据的属性以及数据和/或属性的关系,以及基于数据描述信息,得到用于结构化地表征数据、属性以及关系的数据模型。
可选地,交互装置还用于向用户输出建议信息,建议信息用于表征针对数据模型的可行操作。
可选地,数据描述信息是用户基于第一规则语言编写的,交互装置使用能够识别第一规则语言的读取函数读取数据描述信息,并基于数据描述信息得到数据模型。
可选地,配置信息是用户根据数据模型设定的,配置信息用于表征基于数据模型所表征的数据和/或属性实现至少部分机器学习建模过程的执行策略。
可选地,机器学习处理装置:执行步骤A1、基于数据模型,获取执行至少部分机器学习建模过程所需的数据;执行步骤A2、为第二部分的执行策略赋值;执行步骤A3、按照第一部分的执行策略以及赋值后的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;执行步骤A4、对结果进行评测;基于上述步骤A1至步骤A4,得到所述第二部分的多个取值不同的执行策略的评测结果,将评测结果较好的执行策略确定为所述第二部分的执行策略。
可选地,机器学习处理装置:执行步骤A5、根据评测结果重新为第二部分的执行策略赋值;重复执行上述步骤A3至步骤A5,直到满足预定条件,将评测结果较好的执行策略确定为第二部分的执行策略。
可选地,机器学习处理装置基于数据模型,获取执行至少部分机器学习建模过程所需的数据,以及基于第一部分的执行策略和所确定的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,至少部分机器学习建模过程包括以下至少一项:数据拼接过程;数据拆分过程;特征生成过程;模型建立过程;模型训练过程;模型测试过程;模型评估过程;模型应用过程。
可选地,配置信息是用户基于第二规则语言编写的,或者配置信息是用户通过对向用户展示的用于对至少部分机器学习建模过程进行设置的交互界面执行的操作生成的。
可选地,第一部分包括一个或多个第一执行步骤,第一执行步骤包括第一输入、第一处理函数以及第一输出,并且/或者第二部分包括一个或多个第二执行步骤,第二执行步骤包括第二输入、第二处理函数以及第二输出,第二输入、第二处理函数以及第二输出中至少一个待确定。
可选地,第一输入包括一个或多个第一实体,第一实体用于表征机器学习领域中具有预定含义的对象,并且/或者第一实体能够执行预定的动作,第二输入包括一个或多个第二实体,第二实体用于表征机器学习领域中具有预定含义的对象,并且/或者第二实体能够执行预定的动作。
可选地,交互装置还向用户展示第一实体和/或第二实体;并且/或者交互装置还接收用户针对第一实体和/或第二实体的修改。
可选地,第一实体和/或第二实体包括以下至少一种:数据实体,用于表征机器学习语境下的数据,能够执行获取实际数据的动作;属性实体,用于表征数据实体的属性,能够执行获取属性所对应的实际数据的动作;常量实体,用于表征常量,存储了常量的值;变量实体,用于表征变量,存储了变量的值;模型实体,用于表征机器学习语境下的模型,能够执行训练模型和/或使用模型进行预测的动作。
可选地,第二实体还包括决策实体,决策实体用于表征期望由机器确定的决策,能够执行生成决策和/或获取最优决策的动作。
可选地,配置信息还包括执行策略已确定的优化步骤,优化步骤的输入包括至少部分机器学习建模过程的结果,优化步骤的处理函数为目标定义函数,目标定义函数用于对结果进行评测,以得到目标实体,目标实体用于表征评测结果,目标实体能够执行优化和/或计算评测结果的动作。
可选地,机器学习处理装置执行所述优化步骤,执行所述优化步骤包括:执行步骤B1、对执行至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;执行步骤B2、对决策实体执行生成决策动作,以得到决策实体的取值;执行步骤B3、按照第一部分的执行策略以及赋值后的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;执行步骤B4、对所述目标实体执行计算评测结果的动作;基于上述步骤B1至步骤B4,得到所述决策实体的多个取值的评测结果,将评测结果较好的取值确定为所述决策实体的最优决策。
可选地,所述机器学习处理装置:执行步骤B5、基于评测结果确定决策实体的下一轮取值;重复执行上述步骤B2至步骤B5,直到满足预定条件,将评测结果较好的取值确定为决策实体的最优决策。
可选地,机器学习处理装置:对执行至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;获取决策实体的最优决策;按照第一部分的执行策略和所确定的第二部分的执行策略,针对实际数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,第一处理函数和/或第二处理函数包括以下至少一项:数据处理函数;特征工程函数;建模函数;自动机器学习函数;共享与重用函数;版本管理函数;模型应用函数。
可选地,交互装置还用于在执行至少部分机器学习建模过程的过程中,实时向用户输出当前执行结果;并且/或者交互装置还用于在执行至少部分机器学习建模过程的过程中,获取用户针对配置信息做出的调整,后端引擎用于基于调整后的配置信息执行至少部分机器学习建模过程。
可选地,机器学习处理装置包括解释器和后端引擎,解释器用于将配置信息翻译为后端引擎对应的语言或指令,后端引擎用于基于语言或指令,确定第二部分的执行策略,以及基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,后端引擎包括计算图引擎和执行引擎,由计算图引擎基于语言或指令生成第一计算图,第一计算图用于表征确定第二部分的执行策略的实现流程,由计算图引擎通过调用执行引擎执行第一计算图,确定第二部分的执行策略。
可选地,由计算图引擎基于语言或指令生成第二计算图,第二计算图用于表征至少部分机器学习建模过程的实现流程,由计算图引擎通过调用执行引擎执行第二计算图,得到与至少部分机器学习建模过程对应的结果。
可选地,执行引擎包括以下至少一项:优化引擎;机器学习引擎;自动机器学习引擎。
根据本发明的第三个方面,还提出了一种包括至少一个计算装置和至少一个存储指令的存储装置的***,其中,指令在被至少一个计算装置运行时,促使至少一个计算装置执行如本发明第一个方面述及的方法。
根据本发明的第四个方面,还提出了一种存储指令的计算机可读存储介质,其中,当指令被至少一个计算装置运行时,促使至少一个计算装置执行如本发明第一个方面述及的方法。
根据本发明示例性实施例的机器学习建模过程的实现方法和***,通过参考用户的机器学习经验以及对业务的理解,从用户设定的配置信息中获取用户能够确定执行策略的第一部分;对于用户无法确定执行策略的第二部分,再利用自动机器学习技术确定该部分的执行策略;从而可以将人与机器的优势结合起来,提高机器学习过程的实现效率。
附图说明
从下面结合附图对本发明实施例的详细描述中,本发明的这些和/或其他方面和优点将变得更加清楚并更容易理解,其中:
图1示出了根据本发明示例性实施例的机器学习建模过程的实现方法的流程图;
图2示出了根据本发明示例性实施例的机器学习开发***的架构图;
图3示出了根据本发明示例性实施例的原始的本体模型的生成过程示意图;
图4示出了通过对图3所示的本体模型执行操作实现的机器学习建模过程的一个解决方案的示意性流程图;
图5示出了基于图4构建的计算图的示意图;
图6示出了基于图4构建的另一种计算图的示意图;
图7示出了根据本发明示例性实施例的机器学习建模过程的实现***的结构框图。
具体实施方式
为了使本领域技术人员更好地理解本发明,下面结合附图和具体实施方式对本发明的示例性实施例作进一步详细说明。
图1示出了根据本发明示例性实施例的机器学习建模过程的实现方法的流程图。其中,图1所示的方法可完全通过计算机程序以软件方式实现,还可通过特定配置的计算装置来执行图1所示的方法。
参见图1,在步骤S110,获取用户针对至少部分机器学习建模过程设定的配置信息。
至少部分机器学习建模过程可以是完整的机器学习建模过程,也可以是机器学习建模过程中的部分流程。作为示例,至少部分机器学习建模过程可以包括但不限于数据拼接过程、数据拆分过程、特征生成过程、模型建立过程、模型训练过程、模型测试过程、模型评估过程、模型应用过程等诸多过程中的一项或多项。
配置信息用于表征至少部分机器学习建模过程的执行策略,配置信息包括执行策略已确定的第一部分和执行策略待确定的第二部分。第一部分是指用户基于自身的机器学习经验以及对业务的理解,能够确定执行策略的部分,第二部分是指用户自身无法确定、需要借助机器确定执行策略的部分。
举例来说,假设至少部分机器学习建模过程包括特征生成过程和模型建立过程,用户知道选取何种特征工程函数能够得到较好的特征,但不知道选取何种模型结构,那么第一部分可以是指执行策略已确定的特征生成过程,第二部分可以是指执行策略待确定的模型建立过程。
作为示例,第一部分可以包括一个或多个执行步骤(为了便于区分,可以称为第一执行步骤),第一执行步骤包括第一输入、第一处理函数以及第一输出,并且/或者第二部分可以包括一个或多个执行步骤(为了便于区分,可以称为第二执行步骤),第二执行步骤包括第二输入、第二处理函数以及第二输出,第二输入、第二处理函数以及第二输出中至少一个待确定。其中,不同的执行步骤(第一执行步骤/第二执行步骤)间具有预定的执行顺序。作为示例,可以在配置信息中标明各个执行步骤的执行顺序。第一处理函数和/或第二处理函数可以包括但不限于数据处理函数、特征工程函数、建模函数、自动机器学习函数、共享与重用函数、版本管理函数、模型应用函数中的一项或多项。
对于第二部分,用户可以基于对业务的理解以及根据以往的建模经验指定一个决策空间,由机器在用户指定的决策空间内搜索较优的执行策略;或者用户也可以不指定决策空间,而是由机器在可行的决策空间内搜索较优的执行策略。
本发明述及的配置信息可以是指多种形式的信息,也即用户可以通过多种方式设定配置信息。
作为本发明的一个示例,配置信息可以是用户基于预定规则的语言(为了便于区分,可以称为“第二规则语言”)编写的。其中,第二规则语言可以是指符合预定规则形式的语言。例如,第二规则语言可以是指领域专用语言(Domain Specific Language,简称DSL)。关于领域专用语言可以参见下文相关描述,此处暂不赘述。
作为本发明的另一个示例,配置信息也可以是用户通过对向用户展示的用于对至少部分机器学习建模过程进行设置的交互界面执行的操作生成的。换言之,用户可以通过可视化操作(如拖拽)的方式来设定配置信息。例如,用户可以通过在交互界面中搭建用于表征至少部分机器信息建模过程的执行策略的流程图的方式,来设定配置信息,也即配置信息可以是用户在交互界面中搭建的流程图。
另外配置信息也可以是指用户通过其他方式设定的,对此本发明不再赘述。
在步骤S120,利用自动机器学习技术确定第二部分的执行策略。
可以利用自动机器学习技术在第二部分对应的决策空间内搜索较优的执行策略,以确定第二部分的执行策略。其中,在用户指定了第二部分的决策空间的情况下,可以利用自动机器学习技术在用户指定的决策空间内搜索较优的执行策略,作为第二部分的执行策略。在用户未指定第二部分的决策空间的情况下,可以利用自动机器学习技术在可行的决策空间内搜索较优的执行策略,作为第二部分的执行策略。
在本发明中,可以利用优化算法、搜索算法等多种算法在第二部分的决策空间内确定一个较优的执行策略。其中,决策空间用于表征第二部分的执行策略的取值集合,该决策空间可以是由用户指定的,也可以是由机器确定的。例如,可以对第二部分的决策空间中多个取值不同的执行策略进行评测,然后将评测结果较好的执行策略确定为第二部分的执行策略。
作为示例,可以按照第一部分的执行策略以及赋值后的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;对结果进行评测;根据评测结果重新为第二部分的执行策略赋值;重复上述流程,直到满足预定条件,得到第二部分的多个取值不同的执行策略的评测结果,然后可以将评测结果较好的执行策略确定为第二部分的执行策略。此处述及的预定条件可以是预先设定的标准,如可以是执行次数或者评测结果达到预定阈值。另外此处述及的预定条件也可以是用户做出的终止操作,也即可以由用户终止迭代过程。
在确定了第二部分的执行策略后,至少部分机器学习建模过程的整个执行流程也就确定了。因此在确定了第二部分的执行策略后,可以执行步骤S130,基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
综上,针对现有自动机器学习技术的效率低下问题,本发明可以参考用户的机器学习经验以及对业务的理解,从用户设定的配置信息中获取用户能够确定执行策略的第一部分。对于用户无法确定执行策略的第二部分,再利用自动机器学习技术确定该部分的执行策略。由此,本发明可以将人与机器的优势结合起来,从而可以提高机器学习过程的实现效率。
并且现有的自动机器学习技术大多以黑盒(blackbox)的形式完成一项或多项机器学习功能,用户难以进行干涉。在本发明中,用户可以根据自身的机器学习经验以及对业务的理解,灵活地确定哪些是由人工可以确定的执行策略,哪些是需要机器确定的执行策略。由此,本发明可以实现从完全自动化(即全部执行策略均由机器确定)到完全人工(即用户可以确定全部执行策略)。
根据上文描述可知,用户设定的配置信息一般不能直接被后端引擎识别,为此本发明提出,可以将配置信息翻译为后端引擎对应的语言或指令,以便后端引擎能够基于翻译后的语言或指令执行步骤S120和/或步骤S130。
作为示例,后端引擎可以包括计算图引擎和执行引擎,执行引擎可以包括但不限于优化引擎、机器学习引擎以及自动机器学习引擎中的一个或多个,并且不同的引擎对应的语言类型可以相同,也可以不同。
可以由计算图引擎基于语言或指令生成第一计算图,第一计算图用于表征确定第二部分的执行策略的实现流程,可以由计算图引擎通过调用执行引擎执行第一计算图,确定第二部分的执行策略。
还可以由计算图引擎基于语言或指令生成第二计算图,第二计算图用于表征至少部分机器学习建模过程的实现流程,可以由计算图引擎通过调用执行引擎执行第二计算图,得到与至少部分机器学习建模过程对应的结果。
在现有技术中,大部分自动机器学习算法只能考虑具有严谨定义的指标(例如可以用显示、明确的方法计算的指标),但是实际业务中很多重要指标(如是否发生数据泄露、结果的可解释性)难以给出严谨定义。导致自动机器学习算法无法考虑这些指标,难以产生符合实际业务需求的结果。并且现有技术大多以黑盒(blackbox)的形式完成一项或多项机器学习功能,用户难以进行干涉。
为了解决该问题,本发明提出,在执行步骤S120和/或步骤S130的过程中,还可以实时向用户输出当前执行结果;并且/或者在执行步骤S120和/或步骤S130的过程中,还可以获取用户针对配置信息做出的调整,并基于调整后的配置信息执行至少部分机器学习建模过程。由此,本发明可以允许用户随时查看执行结果,便于用户基于自己对业务的理解判断当前的方案能否得到符合业务需求的结果,而不强求用户给出目标的严谨定义,从而可以提高机器学习建模过程的可控性。
现有的自动机器学习算法是基于具体数据来确定解决方案的,在将利用自动机器学习算法确定的解决方案应用到具体场景中时,由于具体场景中的数据和确定解决方案时所使用的数据的存储形式可能不一致,使得还需要根据数据的实际存储形式对解决方案进行修改,实现起来较为繁琐。
为了解决该问题,本发明提出,可以获取数据描述信息,数据描述信息描述了一种或多种数据、数据的属性以及数据和/或属性的关系,基于数据描述信息,得到用于结构化地表征数据、属性以及关系的数据模型。
此处述及的数据表征的是一种数据实体,如可以是交易数据、用户数据、物品数据等等。属性用于描述数据的特性,可以是指数据中的一个字段,例如一条用户数据可以包括年龄、性别、职业等多个字段,因此用户数据可以包括但不限于年龄、性别、职业等多个属性。数据描述信息中针对属性的描述可以包括该属性是从何处获取的,也即属性所对应的实际数据的存储方式,例如某个属性对应于哪个文件中的哪一列。数据和/或属性的关系包括数据与数据的关系、数据与属性的关系以及属性与属性的关系。
需要说明的是,在本发明中,数据与属性之间并无严格界限,属性本身也可以认为是一种数据,如何看待属性取决于实际应用中是强调其作为数据的属性,还是作为数据。
在本发明中,数据描述信息可以是用户基于预定规则的语言(为了便于区分,可以称为“第一规则语言”)编写的。关于第一规则语言的具体形式,本发明不做限定。根据上文描述可知,数据描述信息中包含了数据和/或属性间的逻辑关系以及实际数据的存储方式,因此通过对数据描述信息进行解析,就可以得到能够结构化地表征数据、属性以及关系的数据模型,其中数据模型中还可以包括数据的实际存储位置。作为示例,可以使用能够识别第一规则语言的读取函数读取数据描述信息,并基于数据描述信息得到数据模型。
配置信息可以是用户根据数据模型设定的、用于表征基于数据模型所表征的数据和/或属性实现至少部分机器学习建模过程的执行策略。例如,可以向用户展示数据模型,以便用户根据数据模型设定配置信息。
可选地,还可以输出建议信息,建议信息用于表征针对数据模型的可行操作。由此,用户在设定配置信息时可以参考向其展示的建议信息。例如,可以根据数据模型(主要是数据及其关系)给出一个包含全部或部分可行操作的集合(此处述及的可行操作是指针对当前数据模型的合法的、具体的操作,例如:以某些数据和变量/常量为输入,调用某个特定的特征工程函数,生成一个或一组属性)作为建议策略。用户可以查看、修改、采纳该建议策略中的全部或部分操作。
通过将数据模型作为用户与实际数据间的接口,在底层完成不同存储形式的数据向数据模型的转换,从而可以让用户设定配置信息时,可以专注于数据的含义以及业务逻辑而不需要考虑其实际的存储形式,减少方案部署时因数据存储形式的不一致而对方案的修改。
也就是说,在数据的存储形式发生变化时,只需要修改数据模型描述信息,导入新的数据模型描述信息就可以完成针对这些改变的修改,而不需要修改配置信息。或者在使用的数据的存储形式发生变化时,可以直接修改数据模型中发生变化的部分,在这种情况下,也不需要修改配置信息。
为了更好地体现数据模型的效果,下面就基于数据模型设定配置信息时,步骤S120、步骤S130的实现过程进行示例性说明。
作为示例,步骤S120可以包括:步骤A1、基于数据模型,获取执行至少部分机器学习建模过程所需的数据;步骤A2、为第二部分的执行策略赋值;步骤A3、按照第一部分的执行策略以及赋值后的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;步骤A4、对结果进行评测。
由此可以得到第二部分的赋值后的执行策略的评测结果。基于步骤A1至步骤A4的评测流程,可以利用优化算法、搜索算法等多种算法在第二部分的决策空间内确定一个较优的执行策略。例如,可以基于上述步骤A1至步骤A4,进一步得到第二部分的多个取值不同的执行策略的评测结果,然后将评测结果较好的执行策略确定为第二部分的执行策略。可选地,基于上述步骤A1至步骤A4,得到所述第二部分的多个取值不同的执行策略的评测结果,将评测结果较好的执行策略确定为所述第二部分的执行策略的步骤可以包括:步骤A5、根据评测结果重新为第二部分的执行策略赋值;重复上述步骤A3至步骤A5,直到满足预定条件,将评测结果较好的执行策略确定为第二部分的执行策略。
作为示例,步骤S130可以包括:基于数据模型,获取执行至少部分机器学习建模过程所需的数据;基于第一部分的执行策略和所确定的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可以看到,步骤S120、步骤S130的执行过程中,是根据数据模型获取实际数据的。因此,在实际数据的存储位置发生变化时,仅需要更新数据模型,无需修改步骤S120、步骤S130的执行策略。由此,在利用本发明确定了机器学习建模过程的解决方案后,将方案部署到线上时,即使数据存储形式发生了变化,也无需对方案本身进行修改。
如上文所述,可以基于领域专用语言编写配置信息。下面就基于领域专用语言编写配置信息时,本发明的实现过程进行示例性说明。
本发明述及的领域专用语言是指专注于机器学习领域的语言,该语言定义了多种实体和一系列函数(functions)。
实体用于表征机器学习领域中具有预定含义的对象,并且/或者实体能够执行预定的动作。例如实体可以包括但不限于数据实体、属性实体、常量实体、变量实体、模型实体、决策实体、目标实体。其中,数据实体用于表征机器学习语境下的数据,能够执行获取实际数据的动作;属性实体用于表征数据实体的属性,能够执行获取属性所对应的实际数据的动作;常量实体用于表征常量,存储了常量的值;变量实体用于表征变量,存储了变量的值;模型实体用于表征机器学习语境下的模型,能够执行训练模型和/或使用模型进行预测的动作;决策实体用于表征期望由机器确定的决策,能够执行生成决策和/或获取最优决策的动作;目标实体用于表征评测结果,目标实体能够执行优化和/或计算评测结果的动作。
一系列函数是指能够实现预定功能的函数,用户可以通过调用特定的函数实现特定的功能。作为示例,一系列函数能够实现的功能可以包括但不限于数据处理、特征工程、建模、模型应用、交互式机器学习与自动机器学习解决方案开发、自动机器学习技术的应用、本体模型的创建、修改、重用与版本维护。
如上文,第一部分包括一个或多个第一执行步骤,第一执行步骤包括第一输入、第一处理函数以及第一输出,并且/或者第二部分包括一个或多个第二执行步骤,第二执行步骤包括第二输入、第二处理函数以及第二输出,第二输入、第二处理函数以及第二输出中至少一个待确定。
因此,在基于领域专用语言编写配置信息时,第一输入可以包括一个或多个实体(为了便于区分,可以称为第一实体),第一实体用于表征机器学习领域中具有预定含义的对象,并且/或者第一实体能够执行预定的动作。第二输入可以包括一个或多个实体(为了便于区分,可以称为第二实体),第二实体用于表征机器学习领域中具有预定含义的对象,并且/或者第二实体能够执行预定的动作。
第一实体和/或第二实体可以包括但不限于数据实体、属性实体、常量实体、变量实体、模型实体中的一种或多种。
第二执行步骤是指执行策略待确定的步骤,因此第二实体还可以包括决策实体。也就是说,可以利用决策实体来标识出需要由机器确定执行策略的部分。可选地,决策实体可以包括决策的取值范围,以便机器在该取值范围内确定决策实体的最优决策。
配置信息还可以包括执行策略已确定的优化步骤,优化步骤的输入包括至少部分机器学习建模过程的结果,优化步骤的处理函数为目标定义函数,目标定义函数用于对结果进行评测,以得到目标实体。其中,目标实体可以是用户从已有的多个目标实体中选择的目标实体,也可以是由用户定义的目标实体。
由此,步骤S120包括:执行优化步骤,其中,执行优化步骤的流程包括:步骤B1、对执行至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;步骤B2、对决策实体执行生成决策动作,以得到决策实体的取值;步骤B3、按照第一部分的执行策略以及赋值后的第二部分的执行策略,针对数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果;步骤B4、对目标实体执行计算评测结果的动作。
由此可以得到决策实体赋值后评测结果。基于步骤B1至步骤B4,可以利用优化算法、搜索算法等多种算法在决策实体的取值空间内确定一个较优的取值。例如可以基于上述步骤B1至步骤B4,得到决策实体的多个取值的评测结果,将评测结果较好的取值确定为决策实体的最优决策。其中,原始数据实体、原始属性实体是指原本存在的,而非是经过函数处理生成的。
作为示例,基于上述步骤B1至步骤B4,得到决策实体的多个取值的评测结果,将评测结果较好的取值确定为决策实体的最优决策的步骤可以包括:步骤B5、基于评测结果确定决策实体的下一轮取值;重复上述步骤B2至步骤B5,直到满足预定条件,将评测结果较好的取值确定为决策实体的最优决策。
步骤S130包括:对执行至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;获取决策实体的最优决策;按照第一部分的执行策略和所确定的第二部分的执行策略,针对实际数据执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
可选地,在整个执行过程中,可以向用户展示第一实体和/或第二实体;并且/或者接收用户针对第一实体和/或第二实体的修改。由此,可以使得机器学习建模过程可控。
应用例
图2示出了根据本发明示例性实施例的机器学习开发***的架构图。可以由图2所示的机器学习开发***执行本发明的机器学习建模过程的实现方法。
如图2所示,机器学习开发***自上往下依次是交互式开发界面、领域专用语言、解释器、后端引擎以及数据管理***。其中,越上层越容易被用户接触。
交互式开发界面是用户与机器交互,共同开发机器学习或自动机器学习解决方案的界面。交互式开发界面的功能可以包含但不限于:本体模型的可视化功能;机器学习解决方案开发过程中的决策建议功能(向用户建议可行的操作、可能较优的决策等);后台运行代码及随时查看运行进度与结果(或中间结果)的功能。
领域专用语言是指专注于机器学习领域的语言,是用户与机器交互用户用于开发、修改、维护、重用解决方案的编程语言。
如图2所示,领域专用语言主要包括本体模型和一系列函数。其中,图2示出的本体模型是指基于领域专用语言实现的针对至少部分机器学习建模过程的机器学习解决方案。图2中示出的本体模型主要由实体、关系以及属性构成。该本体模型可以既作为用户与后端引擎之间的交互媒介,也可以作为用户进行开发迭代、版本管理、分享以及重用的载体。关于实体、属性、关系以及一系列函数可以参见上文相关描述,此处不再赘述。
解释器主要用于将领域专用语言解释为不同后端引擎的语言或指令,如可执行代码。
后端引擎包含部分现有(包含自研的)的机器学习引擎、自动机器学习引擎、优化引擎、计算图引擎,并在未来可以接入其他引擎。
数据管理***可以用于实现数据的存储、访问以及转移。
图3示出了根据本发明示例性实施例的原始的本体模型的生成过程示意图。图3示出的本体模型,也即上文述及的数据模型,图3中示出的本体模型描述文件也即上文述及的数据模型描述文件。
参见图3,可以由与本发明述及的领域专用语言对应的读取函数,通过读取符合特定格式的本体模型描述文件,得到原始的本体模型。该描述性文件描述了本体中的实体、属性以及关系。此处尤其需要注意属性描述。属性描述声明了每一个实体的每一个属性所对应的实际数据的存储位置(例如,某个文件的某一列)。这些信息会记录在本体模型的每一个属性中。当全部和部分数据的存储位置或形式发生改变时,用户只需要修改描述文件(或重载一个新的描述性文件),就可以完成针对这些改变(数据的存储位置或形式发生改变)的修改,而不需要修改本体模型。另一种可选方法是直接修改本体模型中属性所存储的信息,在这种情况下,不需要修改本体模型的其他部分。
图4示出了通过对图3所示的本体模型执行操作实现的机器学习建模过程的一个解决方案的示意性流程图。其中图4中本体模型(图3所示的本体模型)之外的部分均可以视为用户根据本体模型设定的配置信息。也就是说,原始的本体模型和用户设定的配置信息构成了一个完整的机器学习解决方案,例如图4所示的解决方案。其中,图4所示的解决方案可以视为是基于领域专用语言构造的完整的本体模型,该本体模型是指用于表征完整的机器学习解决方案,不同于图3所示的仅用于表示数据结构的本体模型(也即数据模型)。
图4中的矩形表示实体,圆形标识属性、菱形表示函数,箭头连线表示关系,圆头连线链接实体与对应的属性。实线的形状以及连线表示原始的本体模型(也即图3所示的本体模型),虚线的形状以及连线表示后续操作生成的实体、关系和属性。数字表示操作的顺序,例如标数值1的为一个特征工程函数,以及它的三个输入和一个输出,这表示对本体模型的第一个操作是执行该特征工程函数,并且该函数有三个输入和一个输出。
如图4所示,在本实施例中,原始的本体模型涉及两种关系:1)普通的关系,例如关系1、关系2、关系3等;2)由函数构成的关系,如由数字1表示出的:“属性实体3是由特征工程函数,以数据实体3、数据实体4、常量/变量实体1和决策实体1为输入生成的输出”这一关系。
图4中的1、2、3、4这四个步骤依次对原始的本体模型进行了修改。可以暂时忽略这些操作涉及的决策实体,将其简单认为是某个实体即可,同样可以暂时忽略步骤5、6,将在下文详述。这里将分步解释每个步骤的效果:
步骤1:以数据实体3、数据实体4、常量/变量实体1、决策实体1为输入,调用特诊工程函数,生成一个作为输出的属性实体3;
步骤2:以属性实体3为输入,调用增加属性函数,修改数据实体1;
步骤3:以步骤2之后的数据实体1、变量/常量实体2为输入,调用数据划分函数,输出数据实体5和数据实体6;
步骤4:以数据实体5、决策实体2为输入,调用建模函数,生成一个作为输出的模型实体1。
图4中的决策实体1和决策实体2代表由用户指定的,希望交由机器决定的决策。在指定的时候,决策实体处于“待定”状态。为了让机器能够做出正确的决策,用户还需要告知机器一个目标,令其以优化这个目标为目的,确定每一个决策。为了描述优化目标并执行优化,用户设定了5、6两个操作(对应于上文述及的优化步骤)。
步骤5:以模型实体1、数据实体6为输入,调用目标定义函数,输出目标实体1(代表,例如,模型的精度);
步骤6:令目标实体1执行调用优化函数,作出针对决策实体1和决策实体2的决策。
在执行步骤6后,所有与目标实体1相关(下文详述)的决策实体将获得一个确定的值(对应机器作出的决策),并且其状态变为“确定”。
在确定了决策实体的取值后,就可以执行步骤7,训练模型。
下面就图4所示的机器学习解决方案的执行流程进行说明。
(1)决策实体的确定
可以由计算图引擎构建图5所示的计算图(对应于上文述及的第一计算图)。
需要注意的是,图5所示的计算图中的决策实体1、决策实体2当前都处于待定状态;计算图中的目标实体1当前都处于待优化状态;计算图中的模型实体1当前都处于待训练状态;计算图中的数据实体1、数据实体3、数据实体4是原始数据实体。
一旦图4中的步骤6被执行,目标实体1执行其“优化”动作,这个动作将导致:
1.计算图引擎逆着虚线箭头方向找到所有原始数据实体(数据实体1、3、4)、原始属性实体(图中未体现)、决策实体(决策实体1、2);
2.对1中找到的所有原始数据实体(数据实体1、3、4)、原始属性实体(图中未体现),执行它们的“获得实际数据”动作;
3.对1中找到的所有决策实体(决策实体1、2),执行它们的“生成决策”动作(这一动作的具体行为由后端引擎中的优化引擎的算法决定)
4.顺箭头顺序执行计算图,执行过程中的每一个函数(功能由其底层的机器学习引擎或自动机器学习引擎实现),执行过程中每一个生成数据实体和生成属性实体的“获得实际数据”动作(生成数据实体和生成属性实体的“获得实际数据”与原始实体不同,后者主要是根据描述文件获得对应的实际数据,而前者则需要进行计算图描述的计算,期间会利用到原始实体的实际数据),并对执行过程中经过的模型实体(模型实体1)执行其“训练”动作。对每个模型,如果以其为起点逆虚线箭头方向,可以找到状态为“待定”的决策实体,则保留其状态为“待训练”;否则设置其状态为“已训练”
5.对执行“优化”的目标实体本身,执行其“计算当前值”动作,优化引擎将获得这个值,以给出下一组候选决策。
6.重复执行3~5直到优化引擎或用户中止该流程,每次,决策实体的“生成决策”动作将根据优化引擎的算法产生不同的值。
上述流程结束后,与目标实体1的所有决策实体(决策实体1、2)作出了决策。此时决策实体1、2状态变为“确定”。
(2)模型训练过程
在执行图4中步骤6之后,所有与模型实体1相关(即与目标实体1相关的,因为目标实体1是基于模型实体1定义的)的决策实体都已变为“确定”状态。此时用户可以执行图4中示出的步骤7,令模型实体1执行“训练函数”,并根据结果修改模型实体1。
作为示例,可以构建出图6所示的计算图(对应于上文述及的第二计算图,不包含所有加粗部分,忽略了目标实体1,因为它已与模型训练无关)。需注意图6中的决策实体1、2处于“确定”状态,但是模型实体1仍处于“待训练”状态。
一旦步骤7被执行,模型实体1执行其“训练”动作,这个动作将导致:
1.以模型实体1为起点,逆虚线箭头找到所有原始数据实体(数据实体1、3、4)、原始属性实体(图中未体现)、决策实体(决策实体1、2);
2.对1中找到的所有原始数据实体(数据实体1、3、4)、原始属性实体(图中未体现),执行它们的“获得实际数据”动作;
3.对1中找到的所有决策实体(决策实体1、2),执行它们的“获取最优决策”动作;
4.顺箭头顺序执行计算图,执行过程中的每一个函数(功能由其底层的机器学习引擎或自动机器学习引擎实现,执行过程中每一个生成数据实体和生成属性实体的“获得实际数据”动作,执行过程中经过的模型实体(模型实体1)执行其“训练”动作,并将其状态设置为“已训练”。
上述流程结束后,模型实体1处于“已训练”状态。完成图4所示的解决方案的开发。
需要说明的是,图5中通过数据划分函数划分得到的数据实体5和数据实体6是分别作为训练数据和验证数据的。图6中通过数据划分函数划分得到的数据实体5和数据实体6是均作为参与模型训练的训练数据的,也即可以认为数据实体6是一个空数据,通过数据划分函数,将所有数据都划分到了数据实体5中。
自动机器学习的最大特点是根据实际任务(往往依赖于实际数据)来确定某些决策。在本发明中,为了开发一个自动机器学习解决方案,用户只需要将其认为重要的决策设定为决策实体,并且在发布、分享、部署与解决方案对应的本体模型(例如与图4所示的解决方案对应的本体模型)前保证这些决策实体处于“待定”状态。面对新的实际任务时,执行对应目标实体的“优化”动作,这样就可以令这些决策针对实际数据作出调整。
用户可以通过本发明涉及的交互式开发界面,以交互方式进行以图4为例的机器学习或自动机器学习解决方案的开发。开交互式界面支持所有本发明涉及的领域专业语言,并且可以提供以下功能。
1)获取反馈功能:用户可以查看每一个实体的具体定义及其所有属性、查看数据实体和属性实体对应的实际数据、查看模型实体/决策实体/目标实体的状态、查看变量/常量实体的值等功能。可选地,交互式开发界面可以用图形形式展示本体模型(这里的本体模型可以是原始的本体模型,也可以是与整个解决方案对应的完整本体模型)、属性实体(数据实体的属性)。对属性实体(包含数据实体的属性)可以通过图形形式展示其产生过程。
2)获取建议功能:本发明涉及的领域专门语言提供一系列自动机器学习函数,可以根据原始的本体模型(主要是数据实体及其关系)给出一个包含全部或部分可行操作的集合(此处可行操作指一种基于当前本体模型合法的、具体的操作,例如:以某些数据实体和变量/常量实体为输入,调用某个特定的特征工程函数,生成一个或一组属性主体)作为变量实体。用户可以查看、修改、采纳该变量实体中的全部或部分操作。由此,可以便于用户针对原始的本体模型设置机器学习解决方案。
本发明还可以将图4所示的本体模型导出为文件,或将文件导入为对应的本体模型。因为本体模型(例如图4所示)包含了完整的机器学习或自动机器学习方案,所以导出和导入本体模型就可以支持方案的分享与重用。
可选地,本体模型还可以包含版本管理功能,支持分支(branch)、检查不同(diff)、合并(merge)、查看历史(log)等操作。这些操作的含义可以参见git。因为本体模型可以对应于一个计算图,所以理论上可以实现通过比较两个计算图之间的区别、合并两个计算图来实现版本管理。
本发明的机器学习建模过程的实现方法,还可以实现为一种机器学习建模过程的实现***。图7示出了根据本发明示例性实施例的机器学习建模过程的实现***的结构框图。其中,机器学习建模过程的实现***的功能单元可以由实现本发明原理的硬件、软件或硬件和软件的结合来实现。本领域技术人员可以理解的是,图7所描述的功能单元可以组合起来或者划分成子单元,从而实现上述发明的原理。因此,本文的描述可以支持对本文描述的功能单元的任何可能的组合、或者划分、或者更进一步的限定。
下面就机器学习建模过程的实现***可以具有的功能单元以及各功能单元可以执行的操作做简要说明,对于其中涉及的细节部分可以参见上文相关描述,这里不再赘述。
参见图7,机器学习建模过程的实现***700包括交互装置710和机器学习处理装置720。
交互装置710用于获取用户针对至少部分机器学习建模过程设定的配置信息,配置信息用于表征至少部分机器学习建模过程的执行策略,配置信息包括执行策略已确定的第一部分和执行策略待确定的第二部分。关于配置信息可以参见上文相关描述,此处不再赘述。
作为示例,交互装置710还用于获取数据描述信息,数据描述信息描述了一种或多种数据、数据的属性以及数据和/或属性的关系,以及基于数据描述信息,得到用于结构化地表征数据、属性以及关系的数据模型。关于数据描述信息、数据模型可以参见上文相关描述,此处不再赘述。
数据描述信息可以是用户基于第一规则语言编写的,交互装置710可以使用能够识别第一规则语言的读取函数读取数据描述信息,并基于数据描述信息得到数据模型。
可选地,交互装置710还用于向用户输出建议信息,建议信息用于表征针对数据模型的可行操作。
配置信息可以是用户根据数据模型设定的,配置信息用于表征基于数据模型所表征的数据和/或属性实现至少部分机器学习建模过程的执行策略。
机器学习处理装置720用于利用自动机器学习技术确定第二部分的执行策略,以及基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。关于机器学习处理装置720确定第二部分的执行策略的具体过程,可以参见上文相关描述,此处不再赘述。
作为示例,机器学习处理装置720可以包括解释器和后端引擎,解释器用于将配置信息翻译为后端引擎对应的语言或指令,后端引擎用于基于语言或指令,确定第二部分的执行策略,以及基于第一部分的执行策略和所确定的第二部分的执行策略,执行至少部分机器学习建模过程,得到与至少部分机器学习建模过程对应的结果。
后端引擎可以包括计算图引擎和执行引擎,执行引擎可以包括优化引擎、机器学习引擎、自动机器学习引擎中的一项或多项。
可以由计算图引擎基于语言或指令生成第一计算图,第一计算图用于表征确定第二部分的执行策略的实现流程,由计算图引擎通过调用执行引擎执行第一计算图,确定第二部分的执行策略。
还可以由计算图引擎基于语言或指令生成第二计算图,第二计算图用于表征至少部分机器学习建模过程的实现流程,并由计算图引擎通过调用执行引擎执行第二计算图,得到与至少部分机器学习建模过程对应的结果。
应该理解,根据本发明示例性实施例的机器学习建模过程的实现***700的具体实现方式可参照结合图1描述的相关具体实现方式来实现,在此不再赘述。
以上参照图1到图7描述了根据本发明示例性实施例的机器学习建模过程的实现方法、机器学习建模过程的实现***。应理解,上述方法可通过记录在计算可读介质上的程序来实现,例如,根据本发明的示例性实施例,可提供一种存储指令的计算机可读存储介质,其中,在所述计算机可读介质上记录有用于执行图1示出的机器学习建模过程的实现方法的计算机程序。
上述计算机可读介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序除了可用于执行除了图1示出的步骤之外,还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这些附加步骤和进一步处理的内容已经参照图1进行了描述,这里为了避免重复将不再进行赘述。
应注意,根据本发明示例性实施例的机器学习建模过程的实现***,可完全依赖计算机程序的运行来实现相应的功能,即,各个装置与计算机程序的功能架构中与各步骤相应,使得整个***通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。
另一方面,图7所示的各个装置也可以通过硬件、软件、固件、中间件、微代码或其任意组合来实现。当以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。
例如,本发明的示例性实施例还可以实现为计算装置,该计算装置包括存储部件和处理器,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行机器学习建模过程的实现方法。
具体说来,所述计算装置可以部署在服务器或客户端中,也可以部署在分布式网络环境中的节点装置上。此外,所述计算装置可以是PC计算机、平板装置、个人数字助理、智能手机、web应用或其他能够执行上述指令集合的装置。
这里,所述计算装置并非必须是单个的计算装置,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。计算装置还可以是集成控制***或***管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子装置。
在所述计算装置中,处理器可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器***、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
根据本发明示例性实施例的机器学习建模过程的实现方法中所描述的某些操作可通过软件方式来实现,某些操作可通过硬件方式来实现,此外,还可通过软硬件结合的方式来实现这些操作。
处理器可运行存储在存储部件之一中的指令或代码,其中,所述存储部件还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,所述网络接口装置可采用任何已知的传输协议。
存储部件可与处理器集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储部件可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库***可使用的其他存储装置。存储部件和处理器可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器能够读取存储在存储部件中的文件。
此外,所述计算装置还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。计算装置的所有组件可经由总线和/或网络而彼此连接。
根据本发明示例性实施例的机器学习建模过程的实现方法所涉及的操作可被描述为各种互联或耦合的功能块或功能示图。然而,这些功能块或功能示图可被均等地集成为单个的逻辑装置或按照非确切的边界进行操作。
例如,如上所述,根据本发明示例性实施例的机器学习建模过程的实现***可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行上文述及的机器学习建模过程的实现方法。
以上描述了本发明的各示例性实施例,应理解,上述描述仅是示例性的,并非穷尽性的,本发明不限于所披露的各示例性实施例。在不偏离本发明的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本发明的保护范围应该以权利要求的范围为准。
Claims (48)
1.一种机器学习建模过程的实现方法,用于对交易数据、用户数据或物品数据进行处理,方法包括:
获取用户针对至少部分机器学习建模过程设定的配置信息,所述配置信息用于表征所述至少部分机器学习建模过程的执行策略,所述配置信息包括执行策略已确定的第一部分和执行策略待确定的第二部分;
利用自动机器学习技术确定所述第二部分的执行策略;
基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,针对数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果,所述数据为执行所述至少部分机器学习建模过程所需的数据;
在针对数据执行所述至少部分机器学习建模过程的过程中,实时向用户输出当前执行结果;并且,在针对数据执行所述至少部分机器学习建模过程的过程中,获取用户针对所述配置信息做出的调整,并基于调整后的配置信息针对数据执行所述至少部分机器学习建模过程,
其中,所述利用自动机器学习技术确定所述第二部分的执行策略的步骤包括:对所述第二部分的决策空间中多个取值不同的执行策略进行评测,所述决策空间用于表征所述第二部分的执行策略的取值集合;将评测结果较好的执行策略确定为所述第二部分的执行策略,
方法还包括:获取数据描述信息,所述数据描述信息描述了一种或多种数据、所述数据的属性以及所述数据和/或所述属性的关系;基于所述数据描述信息,得到用于结构化地表征所述数据、所述属性以及所述关系的数据模型,
所述数据描述信息是用户基于第一规则语言编写的,基于所述数据描述信息,得到用于结构化地表征所述数据、所述属性以及所述关系的数据模型的步骤包括:使用能够识别所述第一规则语言的读取函数读取所述数据描述信息,并基于所述数据描述信息得到所述数据模型。
2.根据权利要求1所述的方法,其中,所述对所述第二部分的决策空间中多个取值不同的执行策略进行评测的步骤包括:
按照所述第一部分的执行策略以及赋值后的第二部分的执行策略,执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果;
对所述结果进行评测;
根据评测结果重新为所述第二部分的执行策略赋值;
重复上述流程,直到满足预定条件,得到所述第二部分的多个取值不同的执行策略的评测结果。
3.根据权利要求1所述的方法,还包括:
向用户输出建议信息,所述建议信息用于表征针对所述数据模型的可行操作。
4.根据权利要求1所述的方法,其中,
所述配置信息是用户根据所述数据模型设定的,所述配置信息用于表征基于所述数据模型所表征的数据和/或属性实现所述至少部分机器学习建模过程的执行策略。
5.根据权利要求4所述的方法,其中,所述利用自动机器学习技术确定所述第二部分的执行策略的步骤包括:
步骤A1、基于所述数据模型,获取执行所述至少部分机器学习建模过程所需的数据;
步骤A2、为所述第二部分的执行策略赋值;
步骤A3、按照所述第一部分的执行策略以及赋值后的第二部分的执行策略,针对所述数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果;
步骤A4、对所述结果进行评测;
基于上述步骤A1至步骤A4,得到所述第二部分的多个取值不同的执行策略的评测结果,将评测结果较好的执行策略确定为所述第二部分的执行策略。
6.根据权利要求5所述的方法,其中,基于上述步骤A1至步骤A4,得到所述第二部分的多个取值不同的执行策略的评测结果,将评测结果较好的执行策略确定为所述第二部分的执行策略的步骤包括:
步骤A5、根据评测结果重新为所述第二部分的执行策略赋值;
重复上述步骤A3至步骤A5,直到满足预定条件,将评测结果较好的执行策略确定为所述第二部分的执行策略。
7.根据权利要求4所述的方法,其中,基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,针对数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果的步骤包括:
基于所述数据模型,获取执行所述至少部分机器学习建模过程所需的数据;
基于所述第一部分的执行策略和所确定的第二部分的执行策略,针对所述数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果。
8.根据权利要求1所述的方法,其中,所述至少部分机器学习建模过程包括以下至少一项:
数据拼接过程;
数据拆分过程;
特征生成过程;
模型建立过程;
模型训练过程;
模型测试过程;
模型评估过程;
模型应用过程。
9.根据权利要求1所述的方法,其中,
所述配置信息是用户基于第二规则语言编写的,或者
所述配置信息是用户通过对向所述用户展示的用于对所述至少部分机器学习建模过程进行设置的交互界面执行的操作生成的。
10.根据权利要求1所述的方法,其中,
所述第一部分包括一个或多个第一执行步骤,所述第一执行步骤包括第一输入、第一处理函数以及第一输出,并且/或者
所述第二部分包括一个或多个第二执行步骤,所述第二执行步骤包括第二输入、第二处理函数以及第二输出,所述第二输入、所述第二处理函数以及所述第二输出中至少一个待确定。
11.根据权利要求10所述的方法,其中,
所述第一输入包括一个或多个第一实体,所述第一实体用于表征机器学习领域中具有预定含义的对象,并且/或者所述第一实体能够执行预定的动作,
所述第二输入包括一个或多个第二实体,所述第二实体用于表征机器学习领域中具有预定含义的对象,并且/或者所述第二实体能够执行预定的动作。
12.根据权利要求11所述的方法,还包括:
向用户展示所述第一实体和/或所述第二实体;并且/或者
接收用户针对所述第一实体和/或所述第二实体的修改。
13.根据权利要求11所述的方法,其中,所述第一实体和/或所述第二实体包括以下至少一种:
数据实体,用于表征机器学习语境下的数据,能够执行获取实际数据的动作;
属性实体,用于表征所述数据实体的属性,能够执行获取所述属性所对应的实际数据的动作;
常量实体,用于表征常量,存储了所述常量的值;
变量实体,用于表征变量,存储了所述变量的值;
模型实体,用于表征机器学习语境下的模型,能够执行训练模型和/或使用模型进行预测的动作。
14.根据权利要求13所述的方法,其中,所述第二实体还包括决策实体,所述决策实体用于表征期望由机器确定的决策,能够执行生成决策和/或获取最优决策的动作。
15.根据权利要求14所述的方法,其中,所述配置信息还包括执行策略已确定的优化步骤,所述优化步骤的输入包括所述至少部分机器学习建模过程的结果,所述优化步骤的处理函数为目标定义函数,所述目标定义函数用于对所述结果进行评测,以得到目标实体,所述目标实体用于表征评测结果,所述目标实体能够执行优化和/或计算评测结果的动作。
16.根据权利要求15所述的方法,其中,所述利用自动机器学习技术确定所述第二部分的执行策略的步骤包括:执行所述优化步骤,其中,执行所述优化步骤包括:
步骤B1、对执行所述至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;
步骤B2、对所述决策实体执行生成决策动作,以得到所述决策实体的取值;
步骤B3、按照所述第一部分的执行策略以及赋值后的第二部分的执行策略,针对所述数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果;
步骤B4、对所述目标实体执行计算评测结果的动作;
基于上述步骤B1至步骤B4,得到所述决策实体的多个取值的评测结果,将评测结果较好的取值确定为所述决策实体的最优决策。
17.根据权利要求16所述的方法,其中,基于上述步骤B1至步骤B4,得到所述决策实体的多个取值的评测结果,将评测结果较好的取值确定为所述决策实体的最优决策的步骤包括:
步骤B5、基于所述评测结果确定所述决策实体的下一轮取值;
重复上述步骤B2至步骤B5,直到满足预定条件,将评测结果较好的取值确定为所述决策实体的最优决策。
18.根据权利要求16所述的方法,其中,基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,针对数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果的步骤包括:
对执行所述至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;
获取所述决策实体的最优决策;
按照所述第一部分的执行策略和所确定的第二部分的执行策略,针对所述实际数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果。
19.根据权利要求10所述的方法,其中,所述第一处理函数和/或所述第二处理函数包括以下至少一项:
数据处理函数;
特征工程函数;
建模函数;
自动机器学习函数;
共享与重用函数;
版本管理函数;
模型应用函数。
20.根据权利要求1所述的方法,还包括:
将所述配置信息翻译为后端引擎对应的语言或指令;
基于所述语言或指令,确定所述第二部分的执行策略,以及基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果。
21.根据权利要求20所述的方法,其中,所述后端引擎包括计算图引擎和执行引擎,该方法还包括:
由所述计算图引擎基于所述语言或指令生成第一计算图,所述第一计算图用于表征确定所述第二部分的执行策略的实现流程,
所述利用自动机器学习技术确定所述第二部分的执行策略的步骤包括:由所述计算图引擎通过调用所述执行引擎执行所述第一计算图,确定所述第二部分的执行策略。
22.根据权利要求21所述的方法,还包括:
由所述计算图引擎基于所述语言或指令生成第二计算图,所述第二计算图用于表征所述至少部分机器学习建模过程的实现流程,
基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果的步骤包括:由所述计算图引擎通过调用所述执行引擎执行所述第二计算图,得到与所述至少部分机器学习建模过程对应的结果。
23.根据权利要求21所述的方法,其中,所述执行引擎包括以下至少一项:
优化引擎;
机器学习引擎;
自动机器学习引擎。
24.一种机器学习建模过程的实现***,用于对交易数据、用户数据或物品数据进行处理,***包括:
交互装置,用于获取用户针对至少部分机器学习建模过程设定的配置信息,所述配置信息用于表征所述至少部分机器学习建模过程的执行策略,所述配置信息包括执行策略已确定的第一部分和执行策略待确定的第二部分;
机器学习处理装置,用于利用自动机器学习技术确定所述第二部分的执行策略,以及基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,针对数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果,所述数据为执行所述至少部分机器学习建模过程所需的数据,
所述交互装置还用于在针对数据执行所述至少部分机器学习建模过程的过程中,实时向用户输出当前执行结果;并且所述交互装置还用于在针对数据执行所述至少部分机器学习建模过程的过程中,获取用户针对所述配置信息做出的调整,所述机器学习处理装置用于基于调整后的配置信息执行所述至少部分机器学习建模过程,
其中,所述机器学习处理装置:对所述第二部分的决策空间中多个取值不同的执行策略进行评测,所述决策空间用于表征所述第二部分的执行策略的取值集合;将评测结果较好的执行策略确定为所述第二部分的执行策略,
所述交互装置还用于获取数据描述信息,所述数据描述信息描述了一种或多种数据、所述数据的属性以及所述数据和/或所述属性的关系,以及基于所述数据描述信息,得到用于结构化地表征所述数据、所述属性以及所述关系的数据模型,所述数据描述信息是用户基于第一规则语言编写的,所述交互装置使用能够识别所述第一规则语言的读取函数读取所述数据描述信息,并基于所述数据描述信息得到所述数据模型。
25.根据权利要求24所述的实现***,其中,所述机器学习处理装置:
按照所述第一部分的执行策略以及赋值后的第二部分的执行策略,执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果;
对所述结果进行评测;
根据评测结果重新为所述第二部分的执行策略赋值;
重复上述流程,直到满足预定条件,得到所述第二部分的多个取值不同的执行策略的评测结果。
26.根据权利要求24所述的实现***,其中,所述交互装置还用于向用户输出建议信息,所述建议信息用于表征针对所述数据模型的可行操作。
27.根据权利要求24所述的实现***,其中,
所述配置信息是用户根据所述数据模型设定的,所述配置信息用于表征基于所述数据模型所表征的数据和/或属性实现所述至少部分机器学习建模过程的执行策略。
28.根据权利要求27所述的实现***,其中,所述机器学习处理装置:
执行步骤A1、基于所述数据模型,获取执行所述至少部分机器学习建模过程所需的数据;
执行步骤A2、为所述第二部分的执行策略赋值;
执行步骤A3、按照所述第一部分的执行策略以及赋值后的第二部分的执行策略,针对所述数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果;
执行步骤A4、对所述结果进行评测;
基于上述步骤A1至步骤A4,得到所述第二部分的多个取值不同的执行策略的评测结果,将评测结果较好的执行策略确定为所述第二部分的执行策略。
29.根据权利要求28所述的实现***,其中,所述机器学习处理装置:
执行步骤A5、根据评测结果重新为所述第二部分的执行策略赋值;
重复执行上述步骤A3至步骤A5,直到满足预定条件,将评测结果较好的执行策略确定为所述第二部分的执行策略。
30.根据权利要求27所述的实现***,其中,所述机器学习处理装置基于所述数据模型,获取执行所述至少部分机器学习建模过程所需的数据,以及基于所述第一部分的执行策略和所确定的第二部分的执行策略,针对所述数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果。
31.根据权利要求24所述的实现***,其中,所述至少部分机器学习建模过程包括以下至少一项:
数据拼接过程;
数据拆分过程;
特征生成过程;
模型建立过程;
模型训练过程;
模型测试过程;
模型评估过程;
模型应用过程。
32.根据权利要求24所述的实现***,其中,
所述配置信息是用户基于第二规则语言编写的,或者
所述配置信息是用户通过对向所述用户展示的用于对所述至少部分机器学习建模过程进行设置的交互界面执行的操作生成的。
33.根据权利要求24所述的实现***,其中,
所述第一部分包括一个或多个第一执行步骤,所述第一执行步骤包括第一输入、第一处理函数以及第一输出,并且/或者
所述第二部分包括一个或多个第二执行步骤,所述第二执行步骤包括第二输入、第二处理函数以及第二输出,所述第二输入、所述第二处理函数以及所述第二输出中至少一个待确定。
34.根据权利要求33所述的实现***,其中,
所述第一输入包括一个或多个第一实体,所述第一实体用于表征机器学习领域中具有预定含义的对象,并且/或者所述第一实体能够执行预定的动作,
所述第二输入包括一个或多个第二实体,所述第二实体用于表征机器学习领域中具有预定含义的对象,并且/或者所述第二实体能够执行预定的动作。
35.根据权利要求34所述的实现***,其中,
所述交互装置还向用户展示所述第一实体和/或所述第二实体;并且/或者
所述交互装置还接收用户针对所述第一实体和/或所述第二实体的修改。
36.根据权利要求34所述的实现***,其中,所述第一实体和/或所述第二实体包括以下至少一种:
数据实体,用于表征机器学习语境下的数据,能够执行获取实际数据的动作;
属性实体,用于表征所述数据实体的属性,能够执行获取所述属性所对应的实际数据的动作;
常量实体,用于表征常量,存储了所述常量的值;
变量实体,用于表征变量,存储了所述变量的值;
模型实体,用于表征机器学习语境下的模型,能够执行训练模型和/或使用模型进行预测的动作。
37.根据权利要求36所述的实现***,其中,所述第二实体还包括决策实体,所述决策实体用于表征期望由机器确定的决策,能够执行生成决策和/或获取最优决策的动作。
38.根据权利要求37所述的实现***,其中,所述配置信息还包括执行策略已确定的优化步骤,所述优化步骤的输入包括所述至少部分机器学习建模过程的结果,所述优化步骤的处理函数为目标定义函数,所述目标定义函数用于对所述结果进行评测,以得到目标实体,所述目标实体用于表征评测结果,所述目标实体能够执行优化和/或计算评测结果的动作。
39.根据权利要求38所述的实现***,其中,所述机器学习处理装置执行所述优化步骤,执行所述优化步骤包括:
执行步骤B1、对执行所述至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;
执行步骤B2、对所述决策实体执行生成决策动作,以得到所述决策实体的取值;
执行步骤B3、按照所述第一部分的执行策略以及赋值后的第二部分的执行策略,针对所述数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果;
执行步骤B4、对所述目标实体执行计算评测结果的动作;
基于上述步骤B1至步骤B4,得到所述决策实体的多个取值的评测结果,将评测结果较好的取值确定为所述决策实体的最优决策。
40.根据权利要求39所述的实现***,其中,所述机器学习处理装置:
执行步骤B5、基于所述评测结果确定所述决策实体的下一轮取值;
重复执行上述步骤B2至步骤B5,直到满足预定条件,将评测结果较好的取值确定为所述决策实体的最优决策。
41.根据权利要求40所述的实现***,其中,所述机器学习处理装置:
对执行所述至少部分机器学习建模过程所需的原始数据实体和/或原始属性实体,执行获取实际数据动作,以得到对应的实际数据;
获取所述决策实体的最优决策;
按照所述第一部分的执行策略和所确定的第二部分的执行策略,针对所述实际数据执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果。
42.根据权利要求33所述的实现***,其中,所述第一处理函数和/或所述第二处理函数包括以下至少一项:
数据处理函数;
特征工程函数;
建模函数;
自动机器学习函数;
共享与重用函数;
版本管理函数;
模型应用函数。
43.根据权利要求24所述的实现***,其中,所述机器学习处理装置包括解释器和后端引擎,
所述解释器用于将所述配置信息翻译为所述后端引擎对应的语言或指令,
所述后端引擎用于基于所述语言或指令,确定所述第二部分的执行策略,以及基于所述第一部分的执行策略和所确定的所述第二部分的执行策略,执行所述至少部分机器学习建模过程,得到与所述至少部分机器学习建模过程对应的结果。
44.根据权利要求43所述的实现***,其中,所述后端引擎包括计算图引擎和执行引擎,
由所述计算图引擎基于所述语言或指令生成第一计算图,所述第一计算图用于表征确定所述第二部分的执行策略的实现流程,
由所述计算图引擎通过调用所述执行引擎执行所述第一计算图,确定所述第二部分的执行策略。
45.根据权利要求44所述的实现***,其中,
由所述计算图引擎基于所述语言或指令生成第二计算图,所述第二计算图用于表征所述至少部分机器学习建模过程的实现流程,
由所述计算图引擎通过调用所述执行引擎执行所述第二计算图,得到与所述至少部分机器学习建模过程对应的结果。
46.根据权利要求44所述的实现***,其中,所述执行引擎包括以下至少一项:
优化引擎;
机器学习引擎;
自动机器学习引擎。
47.一种包括至少一个计算装置和至少一个存储指令的存储装置的***,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如权利要求1到23中的任一权利要求所述的方法。
48.一种存储指令的计算机可读存储介质,其中,当所述指令被至少一个计算装置运行时,促使所述至少一个计算装置执行如权利要求1到23中的任一权利要求所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910525815.4A CN112101562B (zh) | 2019-06-18 | 2019-06-18 | 机器学习建模过程的实现方法和*** |
US17/620,474 US20220351049A1 (en) | 2019-06-18 | 2020-06-18 | Method and System for Realizing Machine Learning Modeling Process |
PCT/CN2020/096807 WO2020253775A1 (zh) | 2019-06-18 | 2020-06-18 | 机器学习建模过程的实现方法和*** |
EP20827785.5A EP3989131A4 (en) | 2019-06-18 | 2020-06-18 | METHOD AND SYSTEM FOR REALIZING A MACHINE LEARNING MODELING PROCESS |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910525815.4A CN112101562B (zh) | 2019-06-18 | 2019-06-18 | 机器学习建模过程的实现方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112101562A CN112101562A (zh) | 2020-12-18 |
CN112101562B true CN112101562B (zh) | 2024-01-30 |
Family
ID=73749054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910525815.4A Active CN112101562B (zh) | 2019-06-18 | 2019-06-18 | 机器学习建模过程的实现方法和*** |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220351049A1 (zh) |
EP (1) | EP3989131A4 (zh) |
CN (1) | CN112101562B (zh) |
WO (1) | WO2020253775A1 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10678244B2 (en) | 2017-03-23 | 2020-06-09 | Tesla, Inc. | Data synthesis for autonomous control systems |
US11893393B2 (en) | 2017-07-24 | 2024-02-06 | Tesla, Inc. | Computational array microprocessor system with hardware arbiter managing memory requests |
US10671349B2 (en) | 2017-07-24 | 2020-06-02 | Tesla, Inc. | Accelerated mathematical engine |
US11157441B2 (en) | 2017-07-24 | 2021-10-26 | Tesla, Inc. | Computational array microprocessor system using non-consecutive data formatting |
US11409692B2 (en) | 2017-07-24 | 2022-08-09 | Tesla, Inc. | Vector computational unit |
US11561791B2 (en) | 2018-02-01 | 2023-01-24 | Tesla, Inc. | Vector computational unit receiving data elements in parallel from a last row of a computational array |
US11215999B2 (en) | 2018-06-20 | 2022-01-04 | Tesla, Inc. | Data pipeline and deep learning system for autonomous driving |
US11361457B2 (en) | 2018-07-20 | 2022-06-14 | Tesla, Inc. | Annotation cross-labeling for autonomous control systems |
US11636333B2 (en) | 2018-07-26 | 2023-04-25 | Tesla, Inc. | Optimizing neural network structures for embedded systems |
US11562231B2 (en) | 2018-09-03 | 2023-01-24 | Tesla, Inc. | Neural networks for embedded devices |
SG11202103493QA (en) | 2018-10-11 | 2021-05-28 | Tesla Inc | Systems and methods for training machine models with augmented data |
US11196678B2 (en) | 2018-10-25 | 2021-12-07 | Tesla, Inc. | QOS manager for system on a chip communications |
US11816585B2 (en) | 2018-12-03 | 2023-11-14 | Tesla, Inc. | Machine learning models operating at different frequencies for autonomous vehicles |
US11537811B2 (en) | 2018-12-04 | 2022-12-27 | Tesla, Inc. | Enhanced object detection for autonomous vehicles based on field view |
US11610117B2 (en) | 2018-12-27 | 2023-03-21 | Tesla, Inc. | System and method for adapting a neural network model on a hardware platform |
US10997461B2 (en) | 2019-02-01 | 2021-05-04 | Tesla, Inc. | Generating ground truth for machine learning from time series elements |
US11150664B2 (en) | 2019-02-01 | 2021-10-19 | Tesla, Inc. | Predicting three-dimensional features for autonomous driving |
US11567514B2 (en) | 2019-02-11 | 2023-01-31 | Tesla, Inc. | Autonomous and user controlled vehicle summon to a target |
US10956755B2 (en) | 2019-02-19 | 2021-03-23 | Tesla, Inc. | Estimating object properties using visual image data |
EP4172824A4 (en) * | 2020-06-25 | 2024-04-03 | Hitachi Vantara LLC | AUTOMATED MACHINE LEARNING: UNIFIED, CUSTOMIZABLE AND EXTENDABLE SYSTEM |
US20220207444A1 (en) * | 2020-12-30 | 2022-06-30 | International Business Machines Corporation | Implementing pay-as-you-go (payg) automated machine learning and ai |
WO2022169770A1 (en) * | 2021-02-05 | 2022-08-11 | Savvi Ai Inc. | Systems and methods for managing, distributing and deploying a recursive decisioning system based on continuously updating machine learning models |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407999A (zh) * | 2016-08-25 | 2017-02-15 | 北京物思创想科技有限公司 | 结合规则来进行机器学习的方法及*** |
CN107169573A (zh) * | 2017-05-05 | 2017-09-15 | 第四范式(北京)技术有限公司 | 利用复合机器学习模型来执行预测的方法及*** |
CN107392319A (zh) * | 2017-07-20 | 2017-11-24 | 第四范式(北京)技术有限公司 | 生成机器学习样本的组合特征的方法及*** |
CN107844837A (zh) * | 2017-10-31 | 2018-03-27 | 第四范式(北京)技术有限公司 | 针对机器学习算法进行算法参数调优的方法及*** |
CN108197251A (zh) * | 2017-12-29 | 2018-06-22 | 百度在线网络技术(北京)有限公司 | 一种大数据运行维护分析方法、装置及服务器 |
CN108710949A (zh) * | 2018-04-26 | 2018-10-26 | 第四范式(北京)技术有限公司 | 用于创建机器学习建模模板的方法及*** |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8327414B2 (en) * | 2007-06-21 | 2012-12-04 | Motorola Solutions, Inc. | Performing policy conflict detection and resolution using semantic analysis |
US20130031035A1 (en) * | 2011-07-31 | 2013-01-31 | International Business Machines Corporation | Learning admission policy for optimizing quality of service of computing resources networks |
US20180165604A1 (en) * | 2016-12-09 | 2018-06-14 | U2 Science Labs A Montana | Systems and methods for automating data science machine learning analytical workflows |
CN109389412B (zh) * | 2017-08-02 | 2022-03-04 | 创新先进技术有限公司 | 一种训练模型的方法、装置、服务设备以及用户设备 |
US10685175B2 (en) * | 2017-10-21 | 2020-06-16 | ScienceSheet Inc. | Data analysis and prediction of a dataset through algorithm extrapolation from a spreadsheet formula |
CN108921300A (zh) * | 2018-06-21 | 2018-11-30 | 第四范式(北京)技术有限公司 | 执行自动机器学习的方法和装置 |
CN109408591B (zh) * | 2018-10-12 | 2021-11-09 | 北京聚云位智信息科技有限公司 | 支持sql驱动的ai与特征工程的决策型分布式数据库*** |
US20190171950A1 (en) * | 2019-02-10 | 2019-06-06 | Kumar Srivastava | Method and system for auto learning, artificial intelligence (ai) applications development, operationalization and execution |
-
2019
- 2019-06-18 CN CN201910525815.4A patent/CN112101562B/zh active Active
-
2020
- 2020-06-18 WO PCT/CN2020/096807 patent/WO2020253775A1/zh unknown
- 2020-06-18 EP EP20827785.5A patent/EP3989131A4/en active Pending
- 2020-06-18 US US17/620,474 patent/US20220351049A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407999A (zh) * | 2016-08-25 | 2017-02-15 | 北京物思创想科技有限公司 | 结合规则来进行机器学习的方法及*** |
CN107169573A (zh) * | 2017-05-05 | 2017-09-15 | 第四范式(北京)技术有限公司 | 利用复合机器学习模型来执行预测的方法及*** |
CN107392319A (zh) * | 2017-07-20 | 2017-11-24 | 第四范式(北京)技术有限公司 | 生成机器学习样本的组合特征的方法及*** |
CN107844837A (zh) * | 2017-10-31 | 2018-03-27 | 第四范式(北京)技术有限公司 | 针对机器学习算法进行算法参数调优的方法及*** |
CN108197251A (zh) * | 2017-12-29 | 2018-06-22 | 百度在线网络技术(北京)有限公司 | 一种大数据运行维护分析方法、装置及服务器 |
CN108710949A (zh) * | 2018-04-26 | 2018-10-26 | 第四范式(北京)技术有限公司 | 用于创建机器学习建模模板的方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN112101562A (zh) | 2020-12-18 |
WO2020253775A1 (zh) | 2020-12-24 |
US20220351049A1 (en) | 2022-11-03 |
EP3989131A1 (en) | 2022-04-27 |
EP3989131A4 (en) | 2023-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112101562B (zh) | 机器学习建模过程的实现方法和*** | |
CN111652380B (zh) | 针对机器学习算法进行算法参数调优的方法及*** | |
US11327935B2 (en) | Intelligent data quality | |
Hegedüs et al. | A model-driven framework for guided design space exploration | |
KR102170968B1 (ko) | 머신 러닝 기반의 근사모델 구축 방법 및 시스템 | |
CN107766946B (zh) | 生成机器学习样本的组合特征的方法及*** | |
EP4024203A1 (en) | System performance optimization | |
CN111913713B (zh) | 一种基于服务调用追踪的异构服务集成方法 | |
JP2016100005A (ja) | リコンサイル方法、プロセッサ及び記憶媒体 | |
US20200167660A1 (en) | Automated heuristic deep learning-based modelling | |
EP3701403B1 (en) | Accelerated simulation setup process using prior knowledge extraction for problem matching | |
Gransden et al. | SEPIA: search for proofs using inferred automata | |
US20240143611A1 (en) | Query-based database linkage distributed deep learning system, and method therefor | |
CN111898766B (zh) | 基于自动机器学习的以太坊燃料限制预测方法及装置 | |
US11620550B2 (en) | Automated data table discovery for automated machine learning | |
US20240086165A1 (en) | Systems and methods for building and deploying machine learning applications | |
US20210142197A1 (en) | Methods and systems for diverse instance generation in artificial intelligence planning | |
US10547565B2 (en) | Automatic determination and just-in-time acquisition of data for semantic reasoning | |
CN103971191A (zh) | 工作线程管理方法和设备 | |
WO2022252694A1 (zh) | 神经网络优化方法及其装置 | |
US12020008B2 (en) | Extensibility recommendation system for custom code objects | |
US20230229735A1 (en) | Training and implementing machine-learning models utilizing model container workflows | |
US20230315535A1 (en) | Dynamic factoring and composing workflows | |
Shahsavari et al. | Semantic Constraint and QoS-Aware Large-Scale Web Service Composition | |
KR20240053911A (ko) | 소스코드 자동 생성 시스템 기반의 인공지능 협업 시스템 및 서비스 방법 |
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 |