CN109657803B - 机器学习模型的构建 - Google Patents

机器学习模型的构建 Download PDF

Info

Publication number
CN109657803B
CN109657803B CN201810245188.4A CN201810245188A CN109657803B CN 109657803 B CN109657803 B CN 109657803B CN 201810245188 A CN201810245188 A CN 201810245188A CN 109657803 B CN109657803 B CN 109657803B
Authority
CN
China
Prior art keywords
model
machine learning
data
training
prediction
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
CN201810245188.4A
Other languages
English (en)
Other versions
CN109657803A (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.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies 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 New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN201810245188.4A priority Critical patent/CN109657803B/zh
Priority to PCT/CN2019/078619 priority patent/WO2019179408A1/zh
Publication of CN109657803A publication Critical patent/CN109657803A/zh
Application granted granted Critical
Publication of CN109657803B publication Critical patent/CN109657803B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N99/00Subject matter not provided for in other groups of this subclass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及机器学习模型的构建,包括对接收的SQL语句进行语法解析,提取函数名;若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识;从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型;根据所述训练字段标识,从所述训练数据表标识对应的训练数据表中提取数据,作为训练数据;采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型,根据本公开实施例的机器学习模型的构建方法及装置能够提升机器学习的便利性和易用性。

Description

机器学习模型的构建
技术领域
本公开涉及数据库技术领域,尤其涉及一种机器学习模型的构建方法及装置。
背景技术
Spark是一种分布式计算框架,提供了一个全面、统一的框架用于管理有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或者实时的流数据)的大数据处理的需求。
SparkSQL是一种基于Spark的分布式SQL(Structured Query Language,结构化查询语言)查询引擎,使用SparkSQL可以对超大数据集进行查询、统计和分析。
Spark MLlib(Machine Learning lib,机器学习库)是一种基于Spark的机器学习库,由一些通用的学习算法和工具组成,包括分类、回归、聚类、协同过滤以及降维等。同时,Spark MLlib还包括底层的优化原语和高层的管道API(Application ProgrammingInterface,应用程序编程接口),提供了Scala、Python以及Java等语言的API,可以通过API进行模型训练和预测。
发明内容
有鉴于此,本公开提出了一种机器学习模型的构建方法及装置,能够提升机器学习的便捷性和易用性。
根据本公开的一方面,提供了一种机器学习模型的构建方法,包括:对接收的SQL语句进行语法解析,提取函数名;若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识;从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型;根据所述训练字段标识,从所述训练数据表标识对应的训练数据表中提取数据,作为训练数据;采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型。
根据本公开的另一方面,提供了一种机器学习模型的构建装置,包括执行计划模块和数据存储模块,所述执行计划模块用于对接收的SQL语句进行语法解析,提取函数名;若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识;从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型;根据所述训练字段标识,从所述数据存储模块中所述训练数据表标识对应的训练数据表中提取数据,作为训练数据;采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型。
根据本公开的另一方面,提供了一种机器学习模型的构建装置包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行上述方法。
根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。
根据本公开各方面实施例的机器学习模型的构建方法及装置能够从Spark MLlib中调用算法并进行模型训练,通过纯SQL的方式得到对应的机器学习模型,相较于通过API接口的方式进行机器学习,省去了大量的编程工作,提升了机器学习的便利性和易用性。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的机器学习模型的构建方法的流程图。
图2示出根据本公开一实施例的数据库服务器的架构示意图。
图3示出根据本公开一实施例的机器学习模型的构建方法的流程图。
图4示出根据本公开一实施例的机器学习模型的构建方法的流程图。
图5示出根据本公开一实施例的机器学习模型的构建装置的框图。
图6示出根据本公开一实施例的机器学习模型的构建装置的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1示出根据本公开一实施例的机器学习模型的构建方法的流程图。该方法可以由数据库服务器执行,如图1所示,该机器学习模型的构建方法包括:
S11,对接收的SQL语句进行语法解析,提取函数名。
SQL指结构化查询语言,是一种数据库查询和程序设计语言,用于访问数据库***。对数据库的访问操作可以包括:对数据的增加、删除、读取和更改等,可以通过SQL语句来实现上述访问操作。SQL语句是一种描述性的语言,指明了访问任务,数据库服务器需要根据SQL语句指定一个执行计划,该执行计划表明了如何完成所述访问任务。
在一种可能的实现方式中,数据库服务器可以从客户端接收SQL语句,客户端可以部署在所述数据库服务器上,也可以部署在其他服务器上,对此本公开不做限制。在一个示例中,客户端获取SQL语句的方式可以是客户端获取输入框中的SQL语句。
数据库服务器是建立在数据库***基础上的服务器,可以由运行在局域网中的一个或者多个服务器和数据库管理***管理软件共同组成,数据库服务器可以为客户端提供数据服务。在本公开实施例中,数据库服务器具有SQL语句解析能力,能够将SQL语句切分为语句块,确定出执行顺序,形成执行计划。在一个示例中,数据库服务器可以部署SparkSQL模块,由该SparkSQL模块能够进行SQL语句的解析,对大数据集进行查询、统计和分析。图2示出根据本公开一实施例的数据库服务器的架构示意图。如图2所示,数据库服务器包括模型存储模块、数据存储模块和执行计划模块等。
在一种可能的实现方式中,数据库服务器可以先对SQL语句进行预处理得到标准SQL语句,再对标准SQL语句进行语法解析,提取函数名。在一个示例中,预处理可以包括消除SQL语句前后的空格,将SQL语句中的连续空白字符(包括空格,TAB和回车换行)替换成单个空格,统一SQL语句的大小写(将SQL语句全变成小写形式或者大写形式),在SQL语句的尾后加上结束符号“ENDOFSQL”等。
数据库服务器对SQL语句进行语法解析的过程中,可以将SQL语句进行拆分,并确定出每一部分的含义,在此过程中数据库服务器可以提取出函数名。
机器学习函数可以用于表示机器学习中采用的函数。若上述从SQL语句中提取的函数名映射到了机器学习函数,表明将要进行机器学习。在一个示例中,机器学习函数可以为自定义的函数。
在一种可能的实现方式中,机器学习函数包括训练函数和预测函数两种类型。其中,使用训练函数来完成训练机器学习模型的相关命令;使用预测函数来完成采用已有机器学习模型进行预测的相关命令。需要说明的是,训练函数和预测函数仅为机器学习函数的一个示例,机器学习函数还可以是机器学习过程中可能用到的其他函数,对此本公开不做限制。
由于不同类型的机器学习函数,获取的数据、对数据的处理过程,得到的结果不同,因此,数据库服务器可以基于机器学习函数的类型,生成不同的执行计划。
在一种可能的实现方式中,数据库服务器中存储有机器学习函数的函数类型和函数名的映射信息,则数据库服务器可以根据从SQL语句中提出的函数名来查找对应的机器学习函数的函数类型,以指定相应的执行计划,例如,若为训练函数,则指定训练机器学习模型的执行计划;若为预测函数,则指定采用已有机器学习模型进行预测的执行计划。
其中,训练函数对应的执行计划可以如下步骤S12-S15所述。
S12,若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识。
所述训练函数为训练机器学习模型的函数。训练函数表示一类函数,训练函数可以包括多个用于训练不同的机器学习模型的函数,这些函数可以根据需要添加、修改和删除,对此本公开不做限制。
初始参数可以用于表示模型初始化过程中所采用的模型参数,初始参数可以根据需要进行设置,对此本公开不做限制。
如图2所示,数据存储模块存储有训练数据表,训练数据表中的数据可以用于训练机器学习模型。通过训练数据表标识可以识别训练数据表。训练字段为训练机器学习模型的数据在训练数据表中对应的字段,通过训练字段标识可以识别训练字段。
S13,从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型。
在一种可能的实现方式中,数据库服务器存储有训练函数的函数名和算法路径(算法路径可以用于表示Spark MLlib中某个算法的调用位置,例如,算法所属类的位置)的对应关系,数据库服务器可以通过查找该对应关系,确定所述函数名对应的算法路径,并按照所述算法路径,从Spark MLlib中获取与所述函数名对应的算法。
S14,根据所述训练字段标识,从所述训练数据表标识对应的训练数据表中提取数据,作为训练数据。
数据库服务器可以根据训练数据表标识确定训练数据表,并从该训练数据表中训练字段标识对应的字段中提取数据,作为训练数据。
S15,采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型。
在一种可能的实现方式中,数据库服务器可以根据算法类型确定对初始模型进行有监督训练还是无监督训练。
在一个示例中,对于SQL语句select LogisticRegression('lr_model_t01',label,col1,col2,col3,'-MaxIter 20')from mltable,数据库服务器提取函数名为LogisticRegression。假设函数名LogisticRegression映射到训练函数,则数据库服务器从该SQL语句中获取-MaxIter 20作为初始参数,label、col1、col2和col3作为训练字段标识,mltable作为训练数据表标识。数据库服务器可以从Spark MLlib中获取函数名LogisticRegression对应的算法。假设,训练字段标识label、col1、col2和col3分别对应于label、col1、col2和col3字段,训练数据表标识mltable对应于mltable表,函数名LogisticRegression对应于LogisticRegression算法,数据库服务器可以采用初始参数-MaxIter 20初始化LogisticRegression算法,得到初始模型,从mltable表的label、col1、col2和col3字段提取数据,作为训练数据,采用训练数据对初始模型进行训练,得到与函数名LogisticRegression对应的机器学习模型。
本公开实施例通过SQL的方式进行机器学习,相较于通过API接口的方式进行机器学习,省去了大量的编程工作,提升了机器学习的便利性和易用性。
另外,JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
SparkSQL本身可以通过JDBC标准接口进行调用,根据本公开实施例的机器学习模型的构建方法将机器学习的过程SQL化后,也就能通过JDBC标准接口进行调用,提高了标准化程度。
在一种可能的实现方式中,数据库服务器可以将通过训练得到的机器学习模型存储在HDFS文件***上。HDFS(Hadoop Distributed File System,分布式文件***)是一种适合运行在通用硬件上的分布式文件***,容错性和吞吐量较高,适合大规模数据集上的应用。由于模型文件较大,因此模型文件可以存储在HDFS上,数据服务器可以直接从HDFS文件***调用机器学习模型。如图2所示,HDFS文件***可以部署在模型存储模块中。
在一种可能的实现方式中,数据库服务器可以生成与所述机器学习模型对应的模型表,所述模型表中记录有所述机器学习模型的位置信息和参数信息。其中,位置信息可以用于表示机器学习模型在HDFS的存储位置。数据库服务器可以根据位置信息快速调取机器学习模型,避免了在HDFS文件***庞大的数据中查找匹配的过程,提升了机器学习模型的调取速度。参数信息可以用于表示模型内部的配置变量,可以定义模型的功能。例如人造神经网络中的权重、支持向量机中的支持向量、线性回归或逻辑回归中的系数、K均值算法中的K值等。数据库服务器可以根据参数信息管理机器学习模型。在一个示例中,如图2所示,模型表可以存储在数据存储模块中。
在一种可能的实现方式中,若所述函数名映射到训练函数,数据库服务器还可以从SQL语句中获取模型表标识,生成与该模型表标识对应的模型表,并将所述机器学习模型的位置信息和参数信息记录在该模型表标识对应的模型表中。在一个示例中,对于SQL语句select LogisticRegression('lr_model_t01',label,col1,col2,col3,'-MaxIter 20')from mltable,数据库服务器可以生成模型表标识为lr_model_t01的模型表,并将机器学习模型的位置信息和参数信息记录在该模型表标识为lr_model_t01的模型表中。
图3示出根据本公开一实施例的机器学习模型的构建方法的流程图。如图3所示,在提取函数名之后,所述机器学习模型的构建方法还包括:
S16,根据所述函数名查询函数名和函数类型的映射表,确定所述函数名对应的函数类型,所述函数类型包括训练函数和预测函数。
若未查找到提取的函数名,则数据库服务器指定执行计划模块中一个已有的执行计划,并执行。
若对应的函数类型为训练函数,则执行上述步骤S12-S15所示的执行计划;
若对应的函数类型为预测函数,则执行下述图4所示流程对应的执行计划。
图4示出根据本公开一实施例的机器学习模型的构建方法的流程图。如图4所示,该机器学习模型的构建方法还包括:
S17,若所述函数名映射到预测函数,则从所述SQL语句中获取模型表标识、预测字段标识和预测数据表标识。
模型表标识可以用于识别模型表,模型表标识可以为模型表名。如图2所示,数据库服务器可以根据模型表标识从数据存储模块中获取对应的模型表,从该模型表中,获取机器学习模型的位置信息,根据所述位置信息加载机器学习模型。
在一种可能的实现方式中,如图2所示,预测数据表存储在数据库服务器的数据存储模块中。
S18,根据所述预测字段标识,从所述预测数据表标识对应的预测数据表中提取数据,作为测试数据。
数据库服务器可以根据预测数据表标识确定预测数据表,并该预测数据表中预测字段标识对应的字段中提取数据,作为测试数据。
S19,从所述模型表标识对应的模型表中,获取机器学习模型的位置信息,并根据所述位置信息加载机器学习模型。
S20,将所述测试数据输入所加载的机器学习模型中,得到预测数据。
在一个示例中,对于SQL语句为select LogisticRegressionPrediction('lr_model_t01',col1,col2,col3,'id','pred01')from mltable,数据库服务器提取函数名为LogisticRegressionPrediction。假设函数名LogisticRegressionPrediction映射到预测函数,则数据库服务器从该SQL语句中获取lr_model_t01作为模型表标识,col1、col2和col3作为预测字段标识,mltable作为预测数据表标识。假设模型表标识lr_model_t01对应于lr_model_t01表,预测字段标识col1、col2和col3分别对应于col1、col2和col3字段,预测数据表标识mltable对应于mltable表,数据库服务器可以采用从mltable表的col1、col2和col3字段提取数据,作为测试数据,从lr_model_t01表中获取机器学习模型的位置信息,并根据该位置信息加载机器学习模型,将测试数据输入所加载的机器学习模型中,得到预测数据。
本公开实施例通过SQL的方式进行机器学习中的预测,相较于API接口的方式省去了大量的编程工作,提升了机器学习的便利性和易用性。
在一种可能的实现方式中,SQL语句还包括关联标识,数据库服务器还可以从SQL语句中获取关联标识。在得到预测数据后,生成预测结果表,在所述预测结果表中存储所述预测数据,并通过所述关联标识对所述预测结果表和所述测试数据所属预测数据表进行关联。这样,可以建立预测数据表和预测结果表之间的关联,方便后续对机器学习模型的评估、对比等。
在一个示例中,SQL语句为select LogisticRegressionPrediction('lr_model_t01',col1,col2,col3,'id','pred01')from mltable,数据库服务器可以从预测数据表标识为mltable的预测数据表获取测试数据,将测试数据输入机器学习模型得到预测数据,将预测数据存储在预测结果表标识为pred01的预测结果表中。数据库服务器可以获取id作为关联标识,通过id关联预测数据表标识为mltable的预测数据表和预测结果表标识为pred01的预测结果表。
图5示出根据本公开一实施例的机器学习模型的构建装置的框图。如图5所示,该机器学习模型的构建装置500包括执行计划模块501和数据存储模块502,所述执行计划模块用于:
对接收的SQL语句进行语法解析,提取函数名;
若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识;
从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型;
根据所述训练字段标识,从所述数据存储模块502中所述训练数据表标识对应的训练数据表中提取数据,作为训练数据;
采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型。
在一种可能的实现方式中,所述执行计划模块501还用于:
根据所述函数名查询函数名和函数类型的映射表,确定所述函数名对应的函数类型,所述函数类型包括训练函数和预测函数,所述预测函数为采用机器学习模型进行预测的函数。
在一种可能的实现方式中,该机器学习模型的构建装置500还包括模型存储模块503,所述执行计划模块501还用于将所述机器学习模型存储在所述模型存储模块503的HDFS文件***上。
在一种可能的实现方式中,所述执行计划模块501还用于生成与所述机器学习模型对应的模型表,所述模型表中记录有所述模型存储模块503存储所述机器学习模型的位置信息和参数信息,所述模型表存储在所述数据存储模块502中。
在一种可能的实现方式中,所述执行计划模块501还用于若所述函数名映射到预测函数,则从所述SQL语句中获取模型表标识、预测字段标识和预测数据表标识;
根据所述预测字段标识,从所述数据存储模块502中所述预测数据表标识对应的预测数据表中提取数据,作为测试数据;
从所述数据存储模块502中所述模型表标识对应的模型表中,获取所述模型存储模块503存储所述机器学习模型的位置信息,并根据所述位置信息加载机器学习模型;
将所述测试数据输入所加载的机器学习模型中,得到预测数据。
在一种可能的实现方式中,所述SQL语句还包括关联标识,所述执行计划模块501还用于生成预测结果表,在所述预测结果表中存储所述预测数据,并通过所述关联标识对所述预测结果表和所述测试数据所属预测数据表进行关联,所述预测结果表存储在所述数据存储模块502中。
通过对接收的SQL语句进行语法解析,提取函数名,若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识,从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型;根据所述训练字段标识,从所述训练数据表标识对应的训练数据表中提取数据,作为训练数据;采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型,根据本公开实施例的机器学习模型的构建装置能够从Spark MLlib中调用算法并进行模型训练,通过纯SQL的方式得到对应的机器学习模型,相较于通过API接口的方式进行机器学习,省去了大量的编程工作,提升了机器学习的便利性和易用性。
图6是根据一示例性实施例示出的一种用于机器学习模型的构建装置900的框图。参照图6,该装置900可包括处理器901、存储有机器可执行指令的机器可读存储介质902。处理器901与机器可读存储介质902可经由***总线903通信。并且,处理器901通过读取机器可读存储介质902中与机器学习模型的构建逻辑对应的机器可执行指令以执行上文所述的机器学习模型的构建方法。
本文中提到的机器可读存储介质902可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (12)

1.一种机器学习模型的构建方法,其特征在于,所述方法应用于SparkSQL中,所述方法包括:
对接收的SQL语句进行语法解析,提取函数名;
根据所述函数名查询函数名和函数类型的映射表,确定所述函数名对应的函数类型,所述函数类型包括训练函数和预测函数;
若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识;
从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型;
根据所述训练字段标识,从所述训练数据表标识对应的训练数据表中提取数据,作为训练数据;
采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述机器学习模型存储在HDFS文件***上。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
生成与所述机器学习模型对应的模型表,所述模型表中记录有所述机器学习模型的位置信息和参数信息。
4.根据权利要求3所述的方法,其特征在于,该方法还包括:
若所述函数名映射到预测函数,则从所述SQL语句中获取模型表标识、预测字段标识和预测数据表标识;
根据所述预测字段标识,从所述预测数据表标识对应的预测数据表中提取数据,作为测试数据;
从所述模型表标识对应的模型表中,获取位置信息,并根据所述位置信息加载机器学习模型;
将所述测试数据输入所加载的机器学习模型中,得到预测数据。
5.根据权利要求4所述的方法,其特征在于,所述SQL语句还包括关联标识,所述方法还包括:
生成预测结果表,在所述预测结果表中存储所述预测数据,并通过所述关联标识对所述预测结果表和所述测试数据所属预测数据表进行关联。
6.一种机器学习模型的构建装置,其特征在于,所述装置应用于SparkSQL中,所述装置包括执行计划模块和数据存储模块,所述执行计划模块用于:
对接收的SQL语句进行语法解析,提取函数名;
根据所述函数名查询函数名和函数类型的映射表,确定所述函数名对应的函数类型,所述函数类型包括训练函数和预测函数;
若所述函数名映射到训练函数,则从所述SQL语句中获取初始参数、训练字段标识和训练数据表标识;
从Spark MLlib中获取与所述函数名对应的算法,并采用所述初始参数初始化所述算法,得到初始模型;
根据所述训练字段标识,从所述数据存储模块中所述训练数据表标识对应的训练数据表中提取数据,作为训练数据;
采用所述训练数据对所述初始模型进行训练,得到与所述函数名对应的机器学习模型。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括模型存储模块,所述执行计划模块还用于将所述机器学习模型存储在所述模型存储模块的HDFS文件***上。
8.根据权利要求7所述的装置,其特征在于,所述执行计划模块还用于生成与所述机器学习模型对应的模型表,所述模型表中记录有所述模型存储模块存储所述机器学习模型的位置信息和参数信息,所述模型表存储在所述数据存储模块中。
9.根据权利要求8所述的装置,其特征在于,所述执行计划模块还用于若所述函数名映射到预测函数,则从所述SQL语句中获取模型表标识、预测字段标识和预测数据表标识;
根据所述预测字段标识,从所述数据存储模块中所述预测数据表标识对应的预测数据表中提取数据,作为测试数据;
从所述数据存储模块中所述模型表标识对应的模型表中,获取所述模型存储模块存储所述机器学习模型的位置信息,并根据所述位置信息加载机器学习模型;
将所述测试数据输入所加载的机器学习模型中,得到预测数据。
10.根据权利要求9所述的装置,其特征在于,所述SQL语句还包括关联标识,所述执行计划模块还用于生成预测结果表,在所述预测结果表中存储所述预测数据,并通过所述关联标识对所述预测结果表和所述测试数据所属预测数据表进行关联,所述预测结果表存储在所述数据存储模块中。
11.一种机器学习模型的构建装置,其特征在于,包括:
处理器和机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至5中任意一项所述的方法。
12.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1至5中任意一项所述的方法。
CN201810245188.4A 2018-03-23 2018-03-23 机器学习模型的构建 Active CN109657803B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810245188.4A CN109657803B (zh) 2018-03-23 2018-03-23 机器学习模型的构建
PCT/CN2019/078619 WO2019179408A1 (zh) 2018-03-23 2019-03-19 机器学习模型的构建

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810245188.4A CN109657803B (zh) 2018-03-23 2018-03-23 机器学习模型的构建

Publications (2)

Publication Number Publication Date
CN109657803A CN109657803A (zh) 2019-04-19
CN109657803B true CN109657803B (zh) 2020-04-03

Family

ID=66110182

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810245188.4A Active CN109657803B (zh) 2018-03-23 2018-03-23 机器学习模型的构建

Country Status (2)

Country Link
CN (1) CN109657803B (zh)
WO (1) WO2019179408A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110851500B (zh) * 2019-11-07 2022-10-28 北京集奥聚合科技有限公司 一种用于机器学习建模所需的专家特征维度的生成方法
CN111523676B (zh) * 2020-04-17 2024-04-12 第四范式(北京)技术有限公司 辅助机器学习模型上线的方法及装置
CN112559603B (zh) * 2021-02-23 2021-05-18 腾讯科技(深圳)有限公司 特征提取方法、装置、设备及计算机可读存储介质
CN114741372B (zh) * 2022-03-24 2022-11-15 北京柏睿数据技术股份有限公司 一种库内人工智能的实现方法和数据库***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106066934A (zh) * 2016-05-27 2016-11-02 山东大学苏州研究院 一种基于Spark平台的阿尔茨海默病早期辅助诊断***
CN107103050A (zh) * 2017-03-31 2017-08-29 海通安恒(大连)大数据科技有限公司 一种大数据建模平台及方法
CN107222472A (zh) * 2017-05-26 2017-09-29 电子科技大学 一种Hadoop集群下的用户行为异常检测方法
CN107480435A (zh) * 2017-07-31 2017-12-15 广东精点数据科技股份有限公司 一种应用于临床数据的自动搜索机器学习***及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10262263B2 (en) * 2015-12-11 2019-04-16 International Business Machines Corporation Retrieving database score contextual information
CN105912500B (zh) * 2016-03-30 2017-11-14 百度在线网络技术(北京)有限公司 机器学习模型生成方法和装置
CN105930413A (zh) * 2016-04-18 2016-09-07 北京百度网讯科技有限公司 相似度模型参数的训练方法、搜索处理方法及对应装置
CN106295338B (zh) * 2016-07-26 2020-04-14 北京工业大学 一种基于人工神经元网络的sql漏洞检测方法
CN107330522B (zh) * 2017-07-04 2021-06-08 北京百度网讯科技有限公司 用于更新深度学习模型的方法、装置及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106066934A (zh) * 2016-05-27 2016-11-02 山东大学苏州研究院 一种基于Spark平台的阿尔茨海默病早期辅助诊断***
CN107103050A (zh) * 2017-03-31 2017-08-29 海通安恒(大连)大数据科技有限公司 一种大数据建模平台及方法
CN107222472A (zh) * 2017-05-26 2017-09-29 电子科技大学 一种Hadoop集群下的用户行为异常检测方法
CN107480435A (zh) * 2017-07-31 2017-12-15 广东精点数据科技股份有限公司 一种应用于临床数据的自动搜索机器学习***及方法

Also Published As

Publication number Publication date
WO2019179408A1 (zh) 2019-09-26
CN109657803A (zh) 2019-04-19

Similar Documents

Publication Publication Date Title
CN109657803B (zh) 机器学习模型的构建
CN109977110B (zh) 数据清洗方法、装置及设备
US10515002B2 (en) Utilizing artificial intelligence to test cloud applications
US11474817B2 (en) Provenance-based reuse of software code
US11269822B2 (en) Generation of automated data migration model
CN111459985B (zh) 标识信息处理方法及装置
CN106991100B (zh) 数据导入方法及装置
CN109710220B (zh) 关系型数据库查询方法、装置、设备及存储介质
CN112699055B (zh) 一种维护成本较低的软件自动化测试方法及***
CN111984659B (zh) 数据更新方法、装置、计算机设备和存储介质
US7805462B2 (en) Portfolio management methods, systems, and computer programs
CN111984666A (zh) 数据库访问方法、装置、计算机可读存储介质和计算机设备
US11501177B2 (en) Knowledge engineering and reasoning on a knowledge graph
CN117592450A (zh) 基于员工信息整合的全景档案生成方法及***
CN112069269A (zh) 基于大数据和多维特征的数据溯源方法及大数据云服务器
CN107430633A (zh) 与数据存储***相关联的经相关优化的代表性内容
CN112182413B (zh) 一种基于教学大数据的智能推荐方法及服务器
CN112181951B (zh) 一种异构数据库数据迁移方法、装置及设备
CN113821251A (zh) 基于人工智能的代码优化方法、装置、设备和存储介质
CN111506554B (zh) 数据标注方法以及相关装置
CN106055625B (zh) 一种执行业务的方法及装置
CN111143582A (zh) 一种双索引实时更新联想词的多媒体资源推荐方法及装置
CN111222833A (zh) 基于数据湖服务器的算法配置组合平台
CN115052035B (zh) 消息推送方法、设备及存储介质
US20180246956A1 (en) Systematic iterative analysis of unstructured data files

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