一种可视化机器学习训练模型的建模系统和方法与流程

文档序号:11251493阅读:1694来源:国知局
本发明属于大数据机器学习
技术领域
:,具体涉及一种可视化机器学习训练器,主要用于帮助用户实现快速的模型训练。
背景技术
::现有的机器学习模型的创建过程非常繁琐,其创建过程通常包括:特征分析、模型训练、模型验证、模型调优、模型导出和模型加载。其中,每个阶段都需要独立进行编码,尤其是创建和分析过程非常繁琐及耗时,需要数据分析师及工程师投入大量的时间。另外,由于每个阶段的交换数据格式不统一,导致模型训练非常耗时,无法实现体系化结果验证。技术实现要素:为了解决现有技术的上述问题,本发明提供一种可视化机器学习训练模型的建模方法,其可以实现高质量的机器学习建模,包括实现可视化的流程设计、可视化的模型验证、可视化的查看中间结果,可以让数据分析师在不进行编码的情况下进行机器学习的训练,可以加快模型的训练。本发明还提供一种可视化机器学习训练模型的建模系统,其可以实现高质量的机器学习建模,包括实现可视化的流程设计、可视化的模型验证、可视化的查看中间结果,可以让数据分析师在不进行编码的情况下进行机器学习的训练,可以加快模型的训练。为了达到上述目的,本发明采用的主要技术方案包括:一种可视化机器学习训练模型的建模方法,其包括如下步骤:s1、选择预定的图形化算法组件,并拖拽至设计区来建立图形化算法组件中的算法之间的数据流向,以此生成流程描述语言;s2、对流程描述语言进行解析,根据节点类名及属性创建相应的学习组件,并生成相应的spark学习管道;s3、将学习管道提交到spark集群上进行模型训练。借助上述方案,本发明的可视化机器学习训练模型的建模方法,其可以实现高质量的机器学习建模,包括实现可视化的流程设计、可视化的模型验证、可视化的中间结果查看,可以让数据分析师在不进行编码的情况下进行机器学习的训练,可以显著加快模型的训练效率。其中,步骤s1中,图形化算法组件是将预定算法封装形成的。例如,可以基于canvas技术,采用smartml(数据建模语言smartml基于json格式书写,包括在根下建立datasource、query、mapping、outputtable、sql和partition六个子结点。其中,datasource结点用于指出要抽取的数据从哪里来。较佳的,datasource结点下定义有两个子结点name和type,其中,name用于指出数据来源的名称,type用于指出数据来源的类型。其中,query结点用于定义每种不同平台数据产生和查询的过程。其中,mapping结点用于定义当前来源数据抽取结果的输出结构。较佳的,可以用于将从数据源里抽取数据的结构进行重新定义。其中,outputtable结点用于定义一种数据来源查询结果的输出表名称。较佳的,数据表名称定义后,可以作为接下来一个或几个数据分析过程的输入。其中,sql结点用于将不同数据来源抽取到的数据进行重新计算、关联、分析并输出。较佳的,sql的语法可以遵循sparksql的标准语法结构。其中,partition结点用于定义分区,根据数据特点和实际需要将数据集分布到spark集群的一个或多个结点上。)将线性回归算法、logistic算法封装为图形化算法组件。较佳的,图形化算法组件内部隐藏有预定的操作逻辑。借此,达到将复杂的算法逻辑进行图形化封装简化的效果。其中,步骤s1中,还对图形化算法组件进行相应的属性设置。例如,对随机森林算法的深度、最大特征、分类树、采样策略等属性进行设置。其中,步骤s1中,图形化算法组件包括下列组件中的任一个或任几个:数据源组件,用于供用户选用来在机器学习训练模型中建立读入数据用的数据读取组件;数据预处理组件,用于供用户选用来在机器学习训练模型中建立对数据进行预处理的数据预处理组件;文本分析组件,用于供用户选用来在机器学习训练模型中建立用于文本分析的文本分析组件;机器学习组件,用于供用户选用来在机器学习训练模型中建立用于机器学习的机器学习组件;结果验证组件,用于供用户选用来在机器学习训练模型中建立用于结果验证的结果验证组件。其中,步骤s2中,学习组件是根据节点类名及属性创建的。其中,步骤s2中,spark学习管道是根据节点的连接属性生成的。其中,步骤s3中,学习管道是依据spark集群的资源利用情况提交到spark集群上的。借此,提高训练效率。较佳的,spark集群是动态分布式spark集群。例如,可以通过对aws接口的封装及spark集群性能指标的管理,动态地控制spark集群资源的使用情况,动态增加及删除spark集群资源,实现真正意义上的动态扩容。其中,还可以包括步骤s4、对训练结果进行验证。其中,还可以包括步骤s5、将完成训练的模型保存导出。一种可视化机器学习训练模型的建模系统,其包括:流程设计器,用于根据用户将选择的图形化算法组件拖拽至设计区来建立图形化算法组件中的算法之间的数据流向,并生成流程描述语言;流程解析器,用于对流程设计器生成的流程描述语言进行解析,创建相应的学习组件,并生成相应的spark学习管道;流程调度器,用于将spark学习管道提交到spark集群上进行模型训练。借助上述方案,本发明的可视化机器学习训练模型的建模系统,其可以实现高质量的机器学习建模,包括实现可视化的流程设计、可视化的模型验证、可视化的中间结果查看,可以让数据分析师在不进行编码的情况下进行机器学习的训练,可以显著加快模型的训练效率。其中,图形化算法组件包括下列组件中的任一个或任几个:数据源组件,用于供用户选用来在机器学习训练模型中建立读入数据用的数据读取组件;数据预处理组件,用于供用户选用来在机器学习训练模型中建立对数据进行预处理的数据预处理组件;文本分析组件,用于供用户选用来在机器学习训练模型中建立用于文本分析的文本分析组件;机器学习组件,用于供用户选用来在机器学习训练模型中建立用于机器学习的机器学习组件;结果验证组件,用于供用户选用来在机器学习训练模型中建立用于结果验证的结果验证组件。其中,数据预处理组件包括下列组件中的任一个或任几个:序列号增加组件,用于供用户选用来在机器学习训练模型中建立对数据进行增加序列号处理的序列号增加组件;类型转换组件,用于供用户选用来在机器学习训练模型中建立对数据进行类型转换处理的类型转换组件。其中,机器学习组件包括下列组件中的任一个或任几个:二分类组件,用于供用户选用来在机器学习训练模型中建立以二分类算法进行训练的二分类训练组件;多分类组件,用于供用户选用来在机器学习训练模型中建立以多分类算法进行训练的多分类训练组件;聚类组件,用于供用户选用来在机器学习训练模型中建立以聚类算法进行训练的聚类训练组件。其中,二分类组件包括下列组件中的任一个或任几个:gbdt二分类组件,用于供用户选用来在机器学习训练模型中建立以gbdt二分类算法进行训练的gbdt二分类训练组件;线性支持向量机组件,用于供用户选用来在机器学习训练模型中建立以线性支持向量机算法进行训练的线性支持向量机训练组件;逻辑回归二分类组件,用于供用户选用来在机器学习训练模型中建立以逻辑回归二分类算法进行训练的逻辑回归二分类训练组件。其中,流程设计器设置有下列模块中的任一个或任几个:算法组件列表模块,用于供列表图形化算法组件;可视化流程画布模块,用于供显示流程设计、模型验证和/或中间结果;算法组件设置区模块,用于供设置相应图形化算法组件的相应属性(例如,对随机森林算法的深度、最大特征、分类树、采样策略等属性进行设置)。其中,算法组件列表模块可以树状结构列表图形化算法组件。其中,可视化流程画布模块中显示的流程设计包括选用的各图形化算法组件及相互之间的数据流向关系。其中,可视化流程画布模块中还可以显示各图形化算法组件的执行状态。其中,用户可以在可视化流程画布模块中通过操作(包括单击、双击等)各图形化算法组件来执行相应的操作(包括建模、训练等)。上述任一实施例的可视化机器学习训练模型的建模系统,较佳的,还包括对训练模型进行保存的模型保存模块。上述任一实施例的可视化机器学习训练模型的建模系统,较佳的,还包括对模型进行导入的模型导入模块。上述任一实施例的可视化机器学习训练模型的建模系统,其中,图形化算法组件是将预定算法封装形成的。例如,可以基于canvas技术,采用smartml将线性回归算法、logistic算法封装为图形化算法组件。较佳的,图形化算法组件内部隐藏有预定的操作逻辑。借此,达到将复杂的算法逻辑进行图形化封装简化的效果。上述任一实施例的可视化机器学习训练模型的建模系统,其中,学习组件是根据节点类名及属性创建的。上述任一实施例的可视化机器学习训练模型的建模系统,其中,spark学习管道是根据节点的连接属性生成的。上述任一实施例的可视化机器学习训练模型的建模系统,其中,学习管道是依据spark集群的资源利用情况提交到spark集群上的。借此,提高训练效率。较佳的,spark集群是动态分布式spark集群。例如,可以通过对aws接口的封装及spark集群性能指标的管理,动态地控制spark集群资源的使用情况,动态增加及删除spark集群资源,实现真正意义上的动态扩容。附图说明图1为本发明一个实施例的可视化机器学习训练模型的建模系统的界面示意图;图2为本发明一个实施例的可视化机器学习训练模型的建模流程示意图。具体实施方式为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。参见图1,本发明一个实施例的可视化机器学习训练模型的建模系统,其包括:流程设计器,用于根据用户将选择的图形化算法组件拖拽至设计区来建立图形化算法组件中的算法之间的数据流向,并生成流程描述语言;流程解析器,用于对流程设计器生成的流程描述语言进行解析,创建相应的学习组件,并生成相应的spark学习管道;流程调度器,用于将spark学习管道提交到spark集群上进行模型训练。其中,流程设计器设置有算法组件列表模块(图面左侧),用于供列表图形化算法组件;可视化流程画布模块(图面中部),用于供显示流程设计、模型验证和/或中间结果;算法组件设置区模块(图面右侧),用于供设置相应图形化算法组件的相应属性(例如,对随机森林算法的深度、最大特征、分类树、采样策略等属性进行设置)。其中,图面左侧的图形化算法组件列表成树状结构,包括三级目录,一级目录中包括:数据源组件,用于供用户选用来在机器学习训练模型中建立读入数据用的数据读取组件;数据预处理组件,用于供用户选用来在机器学习训练模型中建立对数据进行预处理的数据预处理组件;文本分析组件,用于供用户选用来在机器学习训练模型中建立用于文本分析的文本分析组件;机器学习组件,用于供用户选用来在机器学习训练模型中建立用于机器学习的机器学习组件;结果验证组件,用于供用户选用来在机器学习训练模型中建立用于结果验证的结果验证组件。其中的数据源组件下具有读数据表选项,可以供用户在机器学习训练模型中建立读入数据的模块。由于其中封装有读入数据的算法,因此,用户直接选用(例如拖拽)即可,而无需进行编程,简化了模型的创建过程。数据预处理组件下具有增加序列号和类型转换选项,供用户在机器学习训练模型中建立对读入的数据进行增加序列号预处理的序列号增加模块和建立对读入的数据进行类型转换预处理的类型转换模块。由于其中封装有增加序列号、类型转换的算法,因此,用户直接选用(例如拖拽)即可,而无需进行编程,简化了模型的创建过程。机器学习组件下具有二分类、多分类和聚类三个二级目录。其中,二分类目录下具有gbdt二分类、线性支持向量机和逻辑回归二分类三个选项,供用户在机器学习训练模型中建立相应的机器学习模块,用户可以根据需要选用。由于其中封装有相应的算法,因此,用户直接选用(例如拖拽)即可,而无需进行编程,简化了模型的创建过程。其中,图面中部的可视化流程画布上显示了用户在机器学习模型中建立的各模块,例如,利用读数据表选项建立的数据源-1,利用增加序列号和类型转换选项建立的序列号增加模块和类型转换模块,利用segmentparser、tf/idf、stopword选项(图中未示出)建立的分词、词频统计和使用过渡词模块。同时,图面中部的可视化流程画布上还显示了机器学习训练过程中的各阶段的状态、进度等,例如,本界面中显示的,正处于增加序列号阶段,且下一阶段为分词阶段,其中增加序列号阶段已运行超过50%(图中是以外框中较粗线条表示已运行过,较细线条表示待运行,同时,还在两个阶段之间的数据流连接线上显示运行进度,如图中的圆圈箭头符号,既表示了运行方向,又以其在线上的位置表示了运行进度),当然,也可以采用其他形式显示,例如以不同颜色予以区别等(可以灰色表示未进行且不能点击,以亮黄色表示已运行,以蓝色表示未运行且可以点击),本发明并不对此进行限制。其中,图面右侧的算法组件设置区显示,用户可以通过设置相应的参数,进行机器学习训练,例如,将“4分选择”设置为“word2vec10k”,将“labelby”设置为“word”,将“colorby”设置为“nocolormap”,选用“t-sne”算法3d模型,其“perplexity”显示为73,其“learningrate”显示为59。上述实施例中的可视化机器学习训练模型的建模系统,其可以依照如下方法运行,具体步骤包括:s1、选择预定的图形化算法组件,并拖拽至设计区来建立图形化算法组件中的算法之间的数据流向,以此生成流程描述语言;s2、对流程描述语言进行解析,根据节点类名及属性创建相应的学习组件,并生成相应的spark学习管道;s3、将学习管道提交到spark集群上进行模型训练。其中,由于图形化算法组件包含有数据源组件、数据预处理组件、文本分析组件、机器学习组件、结果验证组件等,可以供用户选用来在机器学习训练模型中建立用于读入数据、数据预处理、文本分析、机器学习、结果验证的各组件,且各图形化算法组件内部隐藏有预定的操作逻辑,因此,可以通过拖拽图形化算法组件即可形成训练模型中的各个模块,并在各个模块间建立相应的数据流向,即无需分阶段编程,而可以通过简单的拖拽操作构建训练模型,同时,还可以在可视化流程画布中显示流程设计、模型验证和中间结果,实现了可视化的流程设计、模型验证和中间结果的查看,可以帮助数据分析师更快、更直观地挖掘数据价值。参照图1的界面,本发明参照如下步骤得到训练模型:1、从左侧选择数据源;2、基于所选择的数据源,通过拖拽来选择数据的预处理操作;3、对预处理后的数据,从右侧拖拽来选择算法进行分析,实现模型训练流程,得到训练结果;4、对训练结果进行验证;5、对训练模型进行保存。下面还提供两个应用实例对本发明进行描述。实例一(文本挖掘,一百万条文本数据)其分析流程包括:1、文本准备;2、停用词过滤;3、词频统计;4、特征抽取;5、以逻辑回归算法进行模型训练;6、对逻辑回归进行评估;7、强训练后的模型导出。现有技术面对本实例时,需要分步独立完成,每阶段均需要编程,整体的训练时间需要3个小时。采用本发明的系统和方法,基于可视化流程设计、模型验证、分布式计算,整体训练时间只需半小时,相比现有技术,效率得以显著提高。实例二(气象分析)构建对风能资源进行评估的模型,通过分析风资源的历史数据(最近22年内的各高度风速和风功率密度日、年变化及其平均状况,不同高度的风速频率分布,风向频率和风能密度的方向分布,风速和风能频率分布,全年有效风速小时数,湍流,风切变指数,空气密度……),预测未来5年内风资源的可利用情况。以现有技术,需要一个人两天时间才能完成模型的创建导出,而采用本发明,只需要1小时就能完成模型的创建导出。综上所述,本发明可以实现可视化的流程设计、可视化的模型验证、可视化的中间结果查看,可以让数据分析师在不进行编码的情况下进行机器学习的训练,可以显著加快模型的训练效率,而且,可以帮助数据分析师更快、更直接地挖掘数据价值。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1