一种数据模型的确定方法及装置与流程

文档序号:11677562阅读:242来源:国知局
一种数据模型的确定方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种数据模型的确定方法及装置。



背景技术:

数据挖掘就是从数据中挖掘知识,而数据挖掘算法是根据数据创建数据挖掘模型的一组试探法和计算过程。

自动模型选择技术是指无需人为干涉的自动化数据挖掘算法的技术,以spss(statisticalproductandservicesolutions,统计产品与服务解决方案)为例,自动分类器可以针对算法库中所有算法,或者用户指定的算法,通过遍历来训练数据模型,以创建每个算法对应的模型,进而将创建得到的模型在测试集进行模型评估,并通过验证集验证这些模型性能,以得到该数据集的优选模型。

可以看出,自动分类器是根据算法库存在的所有算法或者用户配置的算法训练数据模型并验证这些模型性能,从而确定最有效的算法模型,而在大型数据集或算法数量多的情况下,自动分类器可能需要创建成百上千个模型,不仅会花费数小时或更长的时间,还会影响模型选择的性能。



技术实现要素:

本发明的实施例提供一种数据模型的确定方法及装置,可减少创建模型的个数,从而缩短在创建模型时所花费的时间,提升数据模型选择性能。

为达到上述目的,本发明的实施例采用如下技术方案:

第一方面,本发明的实施例提供一种数据模型的确定方法,包括:根据接收到的数据模型确定请求,提取待分析的数据的数据特征向量,该数据特征向量用于反映该待分析的数据的数据特征;使用算法特征模型库中的多个算法特征模型分析该数据特征向量,以确定算法库中与该待分析的数据相关度最高的t个算法,t≥1,该算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析该算法库中的多个算法得到的,该算法库包括用于处理该待分析的数据的至少一个算法;分别使用该算法库中的t个算法处理该待分析的数据,以得到t个数据模型;将该t个数据模型中与该数据匹配程度最高的数据模型输出,以响应该数据模型确定请求。

可以看出,在对待分析的数据进行处理之前,通过使用算法特征模型库中的算法特征模型分析该数据特征向量,可确定与该待分析的数据相关度最高的t个算法,这样,可以过滤掉算法库中与待分析的数据相关度不高的算法,进而无需对算法库中的所有算法进行待分析的数据的模型训练、评估以及验证,可减少创建模型的个数,从而缩短在创建模型时所花费的时间,提升数据模型选择性能。

在一种可能的设计中,该方法还包括:建立算法特征矩阵,该算法特征矩阵包括该基准数据集中每一组基准数据的数据特征向量和每一组基准数据在该算法库中对应的算法的标识;使用mart(multipleadditiveregressiontree,迭代决策树)算法分析该算法特征矩阵,以得到该算法特征模型库中的多个算法特征模型。

在一种可能的设计中,该建立算法特征矩阵,包括:提取该基准数据集中每一组基准数据的数据特征向量,该数据特征向量用于表示该基准数据的线性信息、属性信息、实例信息以及稀疏度信息;为该每一组基准数据的数据特征向量标记对应算法的标识,以得到该算法特征矩阵。

在一种可能的设计中,使用算法特征模型库中的多个算法特征模型分析该数据特征向量,以确定算法库中与该待分析的数据相关度最高的t个算法,包括:使用该算法特征模型库中的算法特征模型加载该数据特征向量,以计算该算法特征模型库中各个算法特征模型与该待分析的数据的相关度;按照该相关度由高到低的顺序对该各个算法特征模型进行排序,以得到排序在前的t个算法特征模型;确定与该t个算法特征模型对应的t个算法,该t个算法与该待分析的数据相关度最高。

在一种可能的设计中,该方法还包括:保存使用该mart算法分析该算法特征矩阵过程中的修正参数,该修正参数包括该mart算法中的各节点权重、叶子样例残差和标签关系,该标签关系是指该基准数据集中基准数据与该算法库中算法的标识之间的对应关系,该修正参数可用于提高使用该算法特征模型库得到的t个算法的准确性;根据该待分析的数据的数据模型和该t个算法的算法特征模型,通过预置的计算规则计算准确率,该准确率用于指示该t个算法特征模型的排序结果的准确程度;若该准确率小于阈值,则使用该修正参数对该算法特征模型库中的算法特征模型进行修正。

这样一来,若得到该准确率小于阈值,则可根据保存的修正参数,对算法特征模型库中的算法特征模型进行修正。以使得后续获取待分析的数据的数据模型时,可使用修正后的该算法特征模型库,以保证获取后续待分析的数据的数据模型的准确率。

其中,该待分析的数据的数据特征向量用于表示该待分析的数据的线性相关性信息、属性信息、实例信息以及稀疏度信息。

第二方面,本发明的实施例提供一种数据模型的确定装置,包括:特征提取单元,用于根据接收到的数据模型确定请求,提取待分析的数据的数据特征向量,该数据特征向量用于反映该待分析的数据的数据特征;算法筛选单元,用于使用算法特征模型库中的多个算法特征模型分析该数据特征向量,以确定算法库中与该待分析的数据相关度最高的t个算法,t≥1,该算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析该算法库中的多个算法得到的,该算法库中包括处理待分析的数据的至少一个算法;处理单元,用于分别使用所述算法库中的t个算法处理所述待分析的数据,以得到t个数据模型;模型输出单元,用于将所述t个数据模型中与所述数据匹配程度最高的数据模型输出,以响应所述数据模型确定请求。

在一种可能的设计中,该装置还包括:模型库建立单元,用于建立算法特征矩阵,该算法特征矩阵包括该基准数据集中每一组基准数据的数据特征向量和每一组基准数据在该算法库中对应的算法的标识;使用mart算法分析该算法特征矩阵,以得到至少一个算法特征模型,该至少一个算法特征模型组成该算法特征模型库。

在一种可能的设计中,该模型库建立单元,具体用于提取该基准数据集中每一组基准数据的数据特征向量,该数据特征向量用于表示该基准数据的线性信息、属性信息、实例信息以及稀疏度信息;为该每一组基准数据的数据特征向量标记对应算法的标识,以得到该算法特征矩阵。

在一种可能的设计中,该算法筛选单元,具体用于:使用该算法特征模型库中的算法特征模型加载该数据特征向量,以计算该算法特征模型库中各个算法特征模型与该待分析的数据的相关度;按照该相关度由高到低的顺序对该各个算法特征模型进行排序,以得到排序在前的t个算法特征模型;以及,确定与该t个算法特征模型对应的t个算法,该t个算法与该待分析的数据相关度最高。

在一种可能的设计中,该装置还包括:保存单元,用于保存使用该mart算法分析该算法特征矩阵过程中的修正参数,该修正参数包括该mart算法中的各节点权重、叶子样例残差和标签关系,该标签关系是指该基准数据集中基准数据与该算法库中算法的标识之间的对应关系;计算单元,用于根据该待分析的数据的数据模型和该t个算法的算法特征模型,通过预置的计算规则计算准确率,该准确率用于指示该t个算法特征模型的排序结果的准确程度;修正单元,用于若该准确率小于阈值,则使用该修正参数对该算法特征模型库中的算法特征模型进行修正。

第三方面,本发明的实施例提供一种数据模型的确定装置,包括:处理器、存储器、总线和通信接口;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该数据模型的确定装置运行时,该处理器执行该存储器存储的该计算机执行指令,以使该数据模型的确定装置执行如第一方面中任意一项所述的数据模型的确定方法。

第四方面,本发明实施例提供了一种计算机存储介质,用于储存为上述数据模型的确定装置所用的计算机软件指令,其包含用于执行上述方面为数据模型的确定装置所设计的程序。

本发明中,数据模型的确定装置的名字对设备本身不构成限定,在实际实现中,这些设备可以以其他名称出现。只要各个设备的功能和本发明类似,属于本发明权利要求及其等同技术的范围之内。

另外,第二方面至第四方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。

本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明实施例提供的一种数据模型的确定方法的应用场景示意图;

图2为本发明实施例提供的一种数据模型的确定方法的流程图一;

图3为本发明实施例提供的一种数据模型的确定方法的流程图二;

图4为本发明实施例提供的数据模型的确定方法与现有技术中数据模型的确定方法的耗时示意图;

图5为本发明实施例提供的一种数据模型的确定方法的流程图三;

图6为本发明实施例提供的一种数据模型的确定方法的流程图四;

图7为本发明实施例提供的一种数据模型的确定装置的结构示意图一;

图8为本发明实施例提供的一种数据模型的确定装置的结构示意图二;

图9为本发明实施例提供的一种数据模型的确定装置的硬件结构示意图一;

图10为本发明实施例提供的一种数据模型的确定装置的硬件结构示意图二。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

本发明的实施例提供一种数据模型的确定方法,可应用于osi(opensystemsinterconnectionreference,开放式系统互连)模型的应用层,具体可运行在通用操作系统中。如图1所示,为该数据模型的确定方法的应用场景示意图,其中,上层为应用层(applicationlayer),包括各种不同的应用、网络仿真、网络规划等;下层为设备层,主要负责待分析的数据以及基准数据集的计算、转发和存储等操作,其中,上层应用层可与下层设备层建立通信,例如,应用层可通过api(applicationprogramminginterface,应用程序编程接口),向设备层中的实体设备(例如,数据模型的确定节点)下发用户的指令;又或者,设备层中的实体设备可将生成的数据结果通过应用层的gui(graphicaluserinterface,图形用户界面)向用户进行结果展示。

另外,承载该数据模型的确定方法的数据模型的确定装置,可以为一台实体设备,如图1中所示是数据模型的确定节点01,也可以为一台实体设备中的逻辑功能模块或软件单元。

具体的,当数据模型的确定装置,为一台实体设备时,数据模型的确定节点01可以与至少一个计算节点02进行通信,以执行计算调度功能,还可以与至少一个数据存储节点03进行通信,以执行数据传输功能;又或者,数据模型的确定装置可以作为软件单元集成在一计算节点02或一数据存储节点03内,该数据模型的确定装置所在的计算节点02或一数据存储节点03可以与其他至少一个计算节点通信以执行计算调度功能,还可以与其他至少一个数据存储节点通信,以执行数据传输功能,本发明实施例不做限定。需要说明的是,图1中仅示例性画出了数据模型的确定节点与一台计算节点02和一台数据节点03的通信的组网形式,本发明实施例对硬件层的具体实现方式不做限定。

需要说明的是,本发明对操作系统中的任意硬件没有限制性要求,包括但不限定图1中所示的计算节点02和数据存储节点03,只要满足运算能力需求的所有硬件产品都适用,比如多节点集群、单节点服务器设备、移动设备等。

并且,本发明对数据存储节点03中的数据库没有强制性要求,用户可采用hbase(一个分布式的、面向列的开源数据库),mysql(关系型数据库管理系统),sybase(一种关系型数据库系统),oracle(一款关系数据库管理系统)等数据库,或者直接存储在hdfs(hadoopdistributedfilesystem)等文件系统中。

本发明对计算节点02中使用的计算平台也没有强制性要求,用户可采用hadoop(hadoopdistributedfilesystem)或spark等平台,或者其他满足实际运算需求的计算平台。

具体的,本发明的实施例提供一种数据模型的确定方法,如图2所示,包括:

101、数据模型的确定装置根据接收到的数据模型确定请求,提取待分析的数据中的数据特征向量,该数据特征向量用于反映待分析的数据的数据特征。

102、数据模型的确定装置使用算法特征模型库中的多个算法特征模型分析该数据特征向量,以确定算法库中与待分析的数据相关度最高的t个算法,t≥1,该算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析算法库中的多个算法得到的。

103、数据模型的确定装置分别使用该t个算法处理待分析的数据,以得到t个数据模型。

104、数据模型的确定装置将该t个数据模型中与数据匹配程度最高的数据模型输出,以响应该数据模型确定请求。

在步骤101中,首先,数据模型的确定装置可以获取到用户触发,或其他设备发送的数据模型确定请求,该数据模型确定请求用于指示确定出待分析的数据的数据模型。

进而,为了获取与待分析的数据相关度最高的t个算法,数据模型的确定装置可以先提取待分析的数据中的数据特征向量,该数据特征向量用于反映待分析的数据的数据特征。

例如,该数据特征向量中可至少包括该待分析的数据的线性相关性信息、属性信息、实例信息以及稀疏度信息。

其中,线性相关性信息可用线性相关度来表征,用以反映待分析的数据内的线性相关关系的密切程度;属性信息可用于反映待分析的数据的维度属性;实例信息可用待分析的数据的样本数量进行表征,用于反映待分析的数据的样本数量;稀疏度信息可用稀疏度来表征,用以指示不包含数据多维结构的单元的相对百分比。

当然,该数据特征向量中还可以包括用于反映该待分析的数据的数据特征的其他信息,例如离散程度信息、偏态与峰态信息,或者集中趋势信息等,本领域技术人员可以根据实际经验或算法对该数据特征向量进行设置,本发明实施例对此不做限定。

具体的,数据模型的确定装置可以对待分析的数据进行数据画像,以提取上述数据特征向量。

示例性的,在数据画像的过程中,可具体使用多维回归关联算法计算待分析的数据的线性相关性,得到待分析的数据的线性相关度,其中,采用多维回归关联算法计算待分析的数据的线性相关性的步骤和公式如下:

可以设n为待分析的数据的样本数,j为待分析的数据的属性维度,x为待分析的数据的属性矩阵,y为预测标签向量,b为比例系数,可得到如下表示:

又因为y=xb

因此,可求得比例系数b=(xtx)-1xty。

进而,根据以下公式求得待分析的数据的回归和ssregression和总和sstotal:

然后,可以通过以下公式计算待分析的数据的多维回归线性相关度r:

其中,sserror=yty-btxty。

进一步地,还可以通过调整以下公式中的样本数n的取值,对上述步骤中计算的多维回归线性相关度r进行修正,得到修正后的多维回归线性相关度

如图3所示,数据模型的确定装置通过对待分析的数据进行数据画像,除了可以获取上述的线性相关性信息之外,还可以进一步获取该待分析的数据的属性信息、实例信息以及稀疏度信息等,最终得到能表征待分析的数据特征的数据特征向量:[f1,f2,…,fn]。

其中,获取属性信息、实例信息以及稀疏度信息的方法可参见现有技术中的相关描述,故此处不再赘述。

在步骤102中,数据模型的确定装置使用算法特征模型库中的多个算法特征模型分析所述数据特征向量,以确定算法库中包括用于处理该待分析的数据的至少一个算法,t≥1。

其中,该算法库中包括针对各种数据模型确定请求所使用的算法的集合;该算法特征模型库中包括预先存储的算法库中每一种算法所适用的算法特征模型,并且,这些算法特征模型,是根据预设的基准数据集分析算法库中的多个算法得到的,该基准数据集可以是通过采样等方法得到的,例如,可以预先采集100个人的人脸数据作为基准数据集,进而根据这些基准数据集,使用算法库中的每个算法来训练数据模型,最终得到算法库中每一种算法所适用的算法特征模型。

另外,建立该算法特征模型库的方法将在后续实施例中详细介绍,故此处不再赘述。

具体的,仍如图3所示,数据模型的确定装置可以使用该算法特征模型库中的算法特征模型,加载步骤101中得到的数据特征向量,这一过程可成为模型(model)预测过程,最终得到预测结果,即算法特征模型库中各个算法特征模型与待分析的数据的相关度,进而,可按照相关度由高到低的顺序,对所述各个算法特征模型进行排序,以得到排序在前的t个算法特征模型,即alg1、alg2、……、algt;由于算法特征模型库中包括预先存储的算法库中每一种算法所适用的算法特征模型,即算法特征模型库中包括任意算法与算法特征模型之间的对应关系,因此,数据模型的确定装置可进一步确定出与上述t个算法特征模型对应的t个算法,该t个算法即为与待分析的数据相关度最高的t个算法。

可以看出,在步骤102中,可通过算法特征模型库确定出与待分析的数据相关度较高的t个特征模型,但由于算法特征模型库中的算法特征模型是基于基准数据集训练出的模型,因此,该t个特征模型并不是对该待分析的数据训练出的模型,例如,待分析的数据为人脸1的人脸数据,而算法特征模型库中基于采样得到的100个人脸数据对算法库的算法进行模型训练,得到了多个算法特征模型,而经过步骤102中模型预测得到的t个算法特征模型,并不是真正基于人脸1的人脸数据训练出的模型,但是模型预测得到的t个算法,可作为与待分析的数据相关度最高的t个算法,因此,为确定该待分析的数据真正的数据模型,可进一步执行下述步骤103。

在步骤103中,与现有的自动模型选择过程类似的,数据模型的确定装置使用步骤102中确定的t个算法为待分析的数据创建t个数据模型。

进而,在步骤104中,与现有的自动模型选择过程类似的,将步骤103中得到的t个数据模型中,与数据匹配程度最高的数据模型输出,以响应步骤101中的数据模型确定请求,例如,对这t个数据模型进行评估,将评估结果最高的数据模型输出,即使用该t个算法对待分析的数据自动模型选择,以得到该待分析的数据的数据模型。

与现有技术不同的是,现有技术中需要根据算法库存在的所有算法或者用户配置的算法类型,进行数据的模型训练和评估,从而选出最有效的算法模型;而在本申请中,由于通过步骤101和102,从算法库中得到与待分析的数据相关度最高的t个算法,即与待分析的数据匹配度最高的t个算法,可以过滤掉算法库中与待分析的数据匹配度不高的算法,无需遍历算法库中的所有算法来创建模型,可减少创建模型的个数,从而缩短在数据模型选择时所花费的时间,提升数据模型选择性能。

如图4所示,以当待分析的数据的样本大于10kb,且算法库中包含10个算法时进行数据模型选择为例,在进行多次试验后可得到,在选择出的数据模型相同的情况下,采用本发明的实施例提供的数据模型的确定方法的耗时,为现有技术中的普通数据模型选择时耗时的1/3。

至此,本发明的实施例提供一种数据模型的确定方法,首先,可提取待分析的数据中的数据特征向量,该数据特征向量可用于反映待分析的数据的数据特征;进而,使用算法特征模型库中的多个算法特征模型分析该数据特征向量,以确定算法库中与所述待分析的数据相关度最高的t个算法,t≥1,其中,该算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析算法库中的多个算法得到的;这样,仅需要使用该相关度最高的t个算法对该待分析的数据进行自动模型选择,便可以得到该待分析的数据的数据模型。可以看出,在对待分析的数据进行自动模型选择之前,通过使用算法特征模型库中的算法特征模型对该数据特征向量进行模型预测,可确定与该待分析的数据相关度最高的t个算法,这样,可以过滤掉算法库中与待分析的数据相关度不高的算法,进而无需对算法库中的所有算法进行待分析的数据的模型训练、评估以及验证,可减少创建模型的个数,从而缩短在创建模型时所花费的时间,提升数据模型选择性能。

进一步地,再执行步骤101-104之前,数据模型的确定装置还可以使用预设的基准数据集对算法库中的所有算法进行分析,以建立上述算法特征模型库,如图5所示,建立上述算法特征模型库的方法具体包括:

201、数据模型的确定装置提取基准数据集中每一组基准数据的数据特征向量,该数据特征向量用于反映该组基准数据的数据特征。

202、数据模型的确定装置为每一组基准数据的数据特征向量标记对应算法的标识,以建立算法特征矩阵。

203、数据模型的确定装置使用mart算法分析该算法特征矩阵,以得到算法特征模型库。

204、数据模型的确定装置保存使用mart算法分析该算法特征矩阵时的修正参数,该修正参数包括mart算法中的各节点权重、叶子样例残差和标签关系。

可以看出,通过执行步骤201-203即可获得算法特征模型库,因此,步骤204为可选步骤,可用于后续对步骤203中建立的算法特征模型库中的算法特征模型进行修正。

另外,本发明实施例中提供的步骤201-202,即建立算法特征矩阵的方法,以及步骤203中建立算法特征模型库的方法仅作为一种可能的实现方式举例说明,应当明确的是,本发明实施例对建立算法特征矩阵,以及建立算法特征模型库的方法不做限定。

具体的,在步骤201中,与步骤101中提取待分析的数据中的数据特征向量类似的,数据模型的确定装置还可以对基准数据集中每一组基准数据(benchmarkdata,该基准数据集中的基准数据可以是通过实验采集得到的)进行数据画像,得到每一组基准数据的数据特征向量,最终可以得到由多组基准数据的数据特征向量组成的数据特征矩阵,例如,该数据特征矩阵为:

在步骤202中,数据模型的确定装置为每一组基准数据的数据特征向量标记与其对应的优选算法的标识,即建立每一组基准数据的数据特征向量和该组基准数据的算法之间的对应关系,以得到该算法特征矩阵。

示例性的,第一组基准数据的数据特征向量为[x11,x12,…,x1n],算法库中与该数据特征向量对应的优选算法为q1,那么,数据模型的确定装置为该第一组基准数据的数据特征向量标记与其对应的优选算法的标识,得到标记后的数据特征向量为:[x11,x12,…,x1n,q1]。

如图6所示,当数据模型的确定装置为每一组基准数据的数据特征向量标记与其对应的优选算法的标识后,便可建立如下所示的算法特征矩阵。

进一步地,在步骤203中,数据模型的确定装置使用mart(multipleadditiveregressiontree,迭代决策树)算法对步骤202中得到的该算法特征矩阵进行分析,以得到该算法特征模型库。

其中,mart算法又可称为gbdt(gradientboostingdecisiontree,梯度提高决策树)算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案,对于本发明而言,该最终答案即为算法特征模型库中的一个算法特征模型。

示例性的,采用mart算法对该算法特征矩阵进行分析,得到算法特征模型库的算法和公式如下:

a)fk0(x)=0,k=1,k//给定一个初始值k;

b)form=1tomdo://建立m棵决策树(即迭代m次);

c)k//对函数估计值f(x)进行logistic(逻辑)变换;

d)fork=1tokdo://对于k个分类进行下面的操作;

e)//求得残差减少的梯度方向;

f)//根据算法特征矩阵中的每一个样本点x,与其残差减少的梯度方向,得到一棵由j个叶子节点组成的决策树;

g)//为当决策树建立完成后,通过这个公式g,可以得到每一个叶子节点的增益;

h)//将当前得到的决策树与之前得到的决策树合并起来,作为一个新的算法特征模型。

上述采用mart算法对该算法特征矩阵进行分析的过程可称为模型训练过程,通过循环使用上述算法对算法特征矩阵进行模型训练,最终得到算法特征模型库,该算法特征模型库中包括预先存储的算法库中每一种算法所适用的算法特征模型。

进一步地,数据模型的确定装置还可以保存在步骤203中对该算法特征矩阵进行模型训练时的修正参数,该修正参数包括mart算法中的各节点权重、叶子样例残差和标签关系,该修正参数可用于提高使用该算法特征模型库得到的t个算法的准确性。

例如,在上述步骤203的步骤h后增加步骤i,

i)z(xi)=wi,z(fi)=(pki,yi),i∈{0,...,n}//即建立索引表保存各节点权重,建立属性表保存叶子样例残差和标签关系。

其中,节点权重,用于表征各个节点的重要性,示例性的,其取值范围可以为[0,1],当节点权重取值越大时,该节点权重对应的节点越重要,当所有节点权重取值都为1时,则可表示所有节点一样重要。

叶子样例残差,用于表征上述决策树得到的算法特征模型与步骤103中得到的待分析的数据的数据模型之间的差异程度,可用于表征模型预测的准确度,当叶子样例残差为0时表示模型预测最准确。

而标签关系,是指该基准数据集中每一组基准数据与算法库中对应算法的标识之间的对应关系。

具体的,在步骤e和f创建决策树时要计算上述节点权重和叶子样例残差,因此,在步骤i中保存这些值,当有新样本点进入算法特征模型库时,可通过已保存的上述节点权重和叶子样例残差更新上述标签关系,从而增量更新已生成的决策树,也就是说,数据模型的确定装置可以据步骤i中已保存的修正参数对算法特征模型库中的算法特征模型进行修正。

具体的,数据模型的确定装置可以根据较步骤103中得到的待分析的数据的数据模型与步骤102中得到的t个算法的算法特征模型,通过预置计算规则计算准确率(该准确率用于指示步骤102中得到的t个算法特征模型的排序结果的准确程度)。

例如,该预置计算规则可以为,只要步骤103中得到数据模型为t个算法的算法特征模型中的一个,则可以认为该准确率为100%;又或者,该预置计算规则还可以为,若步骤103中得到数据模型为该t个算法的算法特征模型中,与待分析的数据相关度最高的算法特征模型,则可以认为该准确率为100%,若步骤103中得到数据模型为该t个算法的算法特征模型中,与待分析的数据相关度第二高的算法特征模型,则可以认为该准确率为80%等,本领域技术人员可以根据实际经验设置该预置计算规则,本发明实施例对此不做限定。

进一步地,若得到该准确率小于阈值,例如,准确率小于50%,数据模型的确定装置则根据步骤204中保存的修正参数,对步骤203中建立的算法特征模型库中的算法特征模型进行修正。这样,后续数据模型的确定装置执行步骤101-103获取后续待分析的数据的数据模型时,便可使用修正后的该算法特征模型库,以保证获取后续待分析的数据的数据模型的准确率。

在本发明提供的实施例中,可将步骤a至i所定义的mart算法称为imart(incrementalmultipleadditiveregressiontree,增量迭代决策树)算法,它可作为mart算法的增量版本,支持在模型建立后,根据已保存的修正参数,对已建立的模型进行增量更新,从而提升通过算法特征模型库进行模型预测的准确度。

至此,本发明的实施例提供一种数据模型的确定方法,首先,可提取待分析的数据中的数据特征向量,该数据特征向量可用于反映待分析的数据的数据特征;进而,使用算法特征模型库中的多个算法特征模型分析该数据特征向量,以确定算法库中与所述待分析的数据相关度最高的t个算法,t≥1,其中,该算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析算法库中的多个算法得到的;这样,仅需要使用该相关度最高的t个算法对该待分析的数据进行自动模型选择,便可以得到该待分析的数据的数据模型。可以看出,在对待分析的数据进行自动模型选择之前,通过使用算法特征模型库中的算法特征模型对该数据特征向量进行模型预测,可确定与该待分析的数据相关度最高的t个算法,这样,可以过滤掉算法库中与待分析的数据相关度不高的算法,进而无需对算法库中的所有算法进行待分析的数据的模型训练、评估以及验证,可减少创建模型的个数,从而缩短在创建模型时所花费的时间,提升数据模型选择性能。

可以看出,通过上述步骤101-103以及步骤201-204,如图7所示,本发明实施例提供的数据模型的确定装置01可以示例性的被划分为特征提取单元11、算法筛选单元12、以及模型选择单元13。

其中,特征提取单元11,用于根据接收到的数据模型确定请求,提取待分析的数据的数据特征向量,所述数据特征向量用于反映所述待分析的数据的数据特征;

其中,所述数据特征向量可用于指示所述待分析的数据的线性相关性信息、属性信息、实例信息以及稀疏度信息;

算法筛选单元12,用于使用算法特征模型库中的多个算法特征模型分析所述数据特征向量,以确定算法库中与所述待分析的数据相关度最高的t个算法,t≥1,所述算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析所述算法库中的多个算法得到的,所述算法库中包括针对各种数据模型确定请求所使用的算法的集合;

处理单元13,用于分别使用所述算法库中的t个算法处理所述待分析的数据,以得到t个数据模型;

模型输出单元14,用于将所述t个数据模型中与所述数据匹配程度最高的数据模型输出,以响应所述数据模型确定请求。

进一步地,仍如图7所示,数据模型的确定装置01还可以进一步包括模型库建立单元15;该模型库建立单元15,用于建立算法特征矩阵,所述算法特征矩阵包括所述基准数据集中每一组基准数据的数据特征向量和每一组基准数据在所述算法库中对应的算法的标识;使用迭代决策树mart算法分析所述算法特征矩阵,以得到所述算法特征模型库中的多个算法特征模型。

进一步地,所述模型库建立单元15,具体用于提取所述基准数据集中每一组基准数据的数据特征向量,所述数据特征向量用于表示所述基准数据的线性信息、属性信息、实例信息以及稀疏度信息;为所述每一组基准数据的数据特征向量标记对应算法的标识,以得到所述算法特征矩阵。

进一步地,所述算法筛选单元12,具体用于:使用所述算法特征模型库中的算法特征模型加载所述数据特征向量,以计算所述算法特征模型库中各个算法特征模型与所述待分析的数据的相关度;按照所述相关度由高到低的顺序对所述各个算法特征模型进行排序,以得到排序在前的t个算法特征模型;以及,确定与所述t个算法特征模型对应的t个算法,所述t个算法与所述待分析的数据相关度最高。

进一步地,如图8所示,所述装置还包括保存单元16、计算单元17以及修正单元18。

其中,保存单元16,用于保存使用所述mart算法分析所述算法特征矩阵过程中的修正参数,所述修正参数包括所述mart算法中的各节点权重、叶子样例残差和标签关系,所述标签关系是指所述基准数据集中基准数据与所述算法库中算法的标识之间的对应关系;计算单元17,用于根据所述待分析的数据的数据模型和所述t个算法的算法特征模型,通过预置的计算规则计算准确率,所述准确率用于指示所述t个算法特征模型的排序结果的准确程度;修正单元18,用于若所述准确率小于阈值,则使用所述修正参数对所述算法特征模型库中的算法特征模型进行修正。

另外,图9为本发明实施例提供的一种数据模型的确定装置01的硬件结构示意图,本发明实施例提供的数据模型的确定装置01可以用于实施上述图1-图6所示的本发明各实施例实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照图1-图6所示的本发明各实施例。

其中,该数据模型的确定装置01可以为多节点集群、单节点服务器设备、移动设备等,本发明对对此不作任何限制,可满足运算能力需求的所有硬件产品都适用。

如图9所示,该数据模型的确定装置01包括处理器21、通信接口22以及存储器23,并且,该处理器21、通信接口22以及存储器23通过总线24进行通信。

例如,上述特征提取单元11、算法筛选单元12、模型选择单元13、模型库建立单元15、保存单元15、计算单元16以及修正单元17均可以通过图9所示的处理器21调用存储器23中的指令实现。其中,通过模型库建立单元15建立的算法特征模型库可存储在存储器23中,保存单元15中保存的修正参数也可存储在存储器23中。

具体的,所述存储器23用于存储计算机执行指令,所述处理器21与所述存储器23通过所述总线24连接,当该数据模型的确定装置01运行时,所述处理器21执行所述存储器23存储的计算机执行指令,以使该数据模型的确定装置01执行如图2或图5所述的数据模型的确定方法。

示例性的,处理器21可提取待分析的数据的数据特征向量,该数据特征向量用于反映待分析的数据的数据特征;进而,处理器21使用算法特征模型库中的多个算法特征模型,分析该数据特征向量,以确定算法库中与待分析的数据相关度最高的t个算法,t≥1,该算法特征模型库可存储在存储器23中,该算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析算法库中的多个算法得到的;进而,处理器21使用t个算法处理所述待分析的数据,以得到t个数据模型;并通过通信接口22将所述t个数据模型中,与所述数据匹配程度最高的数据模型输出,以响应所述数据模型确定请求。

进一步地,数据模型的确定方法可参见上述如图2-图6任意之一所示的实施例中的相关描述,此处不再赘述。

其中,处理器21,可以为中央处理器(英文:centralprocessingunit,缩写:cpu)。所述处理器21还可以为其他通用处理器、数字信号处理器(英文:digitalsignalprocessing,简称dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(英文:field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

处理器21是所述数据模型的确定装置01的控制中心,处理器21通过对通信接口22接收到的数据进行处理,并调用存储器23中的软件或程序,执行所述数据模型的确定装置01的各项功能。

通信接口22,可具体为接口电路,用于收发信息或请求的过程中,信号的接收和发送,通信接口22接收终端发送的信息后,给处理器21处理;另外,通信接口22可以通过无线通信与网络和其他设备通信。

存储器23,可以包括易失性存储器(英文:volatilememory),例如随机存取存储器(英文:random-accessmemory,缩写:ram);所述存储器31也可以包括非易失性存储器(英文:non-volatilememory),例如只读存储器(英文:read-onlymemory,缩写:rom),快闪存储器(英文:flashmemory),硬盘(英文:harddiskdrive,缩写:hdd)或固态硬盘(英文:solid-statedrive,缩写:ssd);所述存储器31还可以包括上述种类的存储器的组合。处理器21可通过运行存储在存储器23的软件程序,从而执行所述数据模型的确定装置01的各种功能应用以及数据处理。

而总线24可以包括数据总线、电源总线、控制总线和信号状态总线等。本实施例中为了清楚说明,在图9中将各种总线都示意为总线24。

另外,本发明实施例中提供的一种数据模型的确定方法,还可以由一个或多个虚拟机(virtualmachine,vm)所在的物理主机执行。例如,可以由该物理主机上的host执行,host为vmm和运行在该vmm上的特权虚拟机的结合。这种实现方式往往使用在云计算场景中。

例如,上述特征提取单元11、算法筛选单元12、模型选择单元13、模型库建立单元15、保存单元15、计算单元16以及修正单元17可以设置在一个或多个虚拟机上。例如,可以通过一个虚拟机实现上述特征提取单元11,其他单元也可以各通过一个虚拟机实现,或者某几个单元通过一个虚拟机实现,本发明实施例不做限定。

示例性的,如图10所示,可以将上述特征提取单元11、算法筛选单元12、模型选择单元13、模型库建立单元15、保存单元15、计算单元16以及修正单元17可以设置在一个虚拟机所在的物理主机100上,由物理主机100执行上述实施例中的数据模型的确定方法。

其中,该物理主机100包含硬件层、运行在所述硬件层之上的host(宿主机)1001、以及运行在所述host1001之上的至少一个虚拟机vm1002,以及所述硬件层,所述硬件层包括网卡1003,可选的,还可以包括处理器1004和内存1005;其中,host可以包括该物理主机100上的vmm和运行于该vmm上的特权虚拟机,虚拟机1002为该物理主机100上除特权虚拟机之外的其他虚拟机。

具体的,虚拟机1001:通过虚拟机软件可以在一台物理主机上模拟出一台或者多台虚拟的计算机,而这些虚拟机就像真正的计算机那样进行工作,虚拟机上可以安装操作系统和应用程序,虚拟机还可访问网络资源。对于在虚拟机中运行的应用程序而言,虚拟机就像是在真正的计算机中进行工作。

硬件层:虚拟化环境运行的硬件平台。其中,硬件层可包括多种硬件,例如某物理主机的硬件层可包括处理器1004(例如cpu)和内存1005,还可以包括网卡1003(例如rdma网卡)、存储器等等高速/低速输入/输出(i/o,input/output)设备,及具有特定处理功能的其它设备。

宿主机(host)1001:作为管理层,用以完成硬件资源的管理、分配;为虚拟机呈现虚拟硬件平台;实现虚拟机的调度和隔离。其中,host可能是虚拟机监控器(vmm);此外,有时vmm和1个特权虚拟机配合,两者结合组成host。其中,虚拟硬件平台对其上运行的各个虚拟机提供各种硬件资源,如提供虚拟处理器(如vcpu)、虚拟内存、虚拟磁盘、虚拟网卡等等。其中,该虚拟磁盘可对应host的一个文件或者一个逻辑块设备。虚拟机运行在host为其准备的虚拟硬件平台上,host上运行一个或多个虚拟机。

特权虚拟机:一种特殊的虚拟机,亦可称为驱动域,例如这种特殊的虚拟机在xenhypervisor平台上被称作dom0,在该虚拟机中安装了例如网卡、scsi磁盘等真实物理设备的驱动程序,能检测和直接访问这些真实物理设备。其他虚拟机利用hypervisor提供的相应机制通过特权虚拟机访问真实物理设备。

应理解,本发明实施例可以应用于xen虚拟机平台中,也可以应用于可以应用于任意一个迁移虚拟机时需要将虚拟机内存进行映射的虚拟化平台中;本发明实施例对此不进行限制。

具体的,数据模型的确定方法可参见上述如图2-图6任意之一所示的实施例中的相关描述,此处不再赘述。

至此,本发明的实施例提供一种数据模型的确定装置,首先,可基于数据模型确定请求,提取待分析的数据中的数据特征向量,该数据特征向量可用于反映待分析的数据的数据特征;进而,使用算法特征模型库中的多个算法特征模型分析该数据特征向量,以确定算法库中与所述待分析的数据相关度最高的t个算法,t≥1,其中,该算法特征模型库中的多个算法特征模型是根据预设的基准数据集分析算法库中的多个算法得到的;这样,仅需要使用该相关度最高的t个算法对该待分析的数据进行自动模型选择,便可以得到与该数据匹配程度最高的数据模型输出,以响应该数据模型确定请求。可以看出,在对待分析的数据进行处理之前,通过使用算法特征模型库中的算法特征模型分析该数据特征向量,可确定与该待分析的数据相关度最高的t个算法,这样,可以过滤掉算法库中与待分析的数据相关度不高的算法,进而无需对算法库中的所有算法进行待分析的数据的模型训练、评估以及验证,可减少创建模型的个数,从而缩短在创建模型时所花费的时间,提升数据模型选择性能。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1