数据挖掘方法及系统转让专利

申请号 : CN201110406892.1

文献号 : CN102521040B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 罗峰黄苏支李娜

申请人 : 北京亿赞普网络技术有限公司

摘要 :

本申请提供了一种数据挖掘方法及系统,其中,数据挖掘方法包括:获取对应于不同的数据挖掘子过程的多个程序脚本,其中,一个所述数据挖掘子过程包括至少一个所述程序脚本,每个所述程序脚本具有一个对应的脚本标识,所述脚本标识用于标示该脚本标识对应的程序脚本归属的数据挖掘子过程;获取所述多个程序脚本对应的多个脚本标识;按照所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序;按照确定的所述调用顺序依次调用所述多个程序脚本,进行数据挖掘。通过本申请,既保证了数据挖掘结果的正确性,提高了数据挖掘效率,又节省了数据挖掘成本。

权利要求 :

1.一种数据挖掘方法,其特征在于,包括:

获取对应于不同的数据挖掘子过程的多个程序脚本,其中,一个所述数据挖掘子过程包括至少一个所述程序脚本,每个所述程序脚本具有一个对应的脚本标识,所述脚本标识用于标示该脚本标识对应的程序脚本归属的数据挖掘子过程;

获取所述多个程序脚本对应的多个脚本标识;

按照所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序;

按照确定的所述调用顺序依次调用所述多个程序脚本,进行数据挖掘;

其中,所述按照确定的所述调用顺序依次调用所述多个程序脚本,进行数据挖掘的步骤包括:在按照确定的所述调用顺序依次调用每一个所述程序脚本时,判断该程序脚本是否有外部参数,所述外部参数用于向该程序脚本中的变量传递数据;若是,则获取所述外部参数传递的数据,并根据所述外部参数传递的数据执行该程序脚本所归属的数据挖掘子过程。

2.根据权利要求1所述的方法,其特征在于,在所述获取对应于不同的数据挖掘子过程的多个程序脚本的步骤之前,还包括:根据每个所述程序脚本所归属的数据挖掘子过程,为该程序脚本设置脚本名的前缀字符作为该程序脚本的脚本标识。

3.根据权利要求2所述的方法,其特征在于,获取所述多个程序脚本对应的多个脚本标识的步骤包括:获取所述多个程序脚本的脚本名;

将所述多个程序脚本的脚本名中的前缀字符,确定为所述多个程序脚本的多个脚本标识。

4.根据权利要求1-3中任一项所述的方法,其特征在于,所述获取对应于不同的数据挖掘子过程的多个程序脚本的步骤包括:从每一个所述数据挖掘子过程对应的所述至少一个程序脚本中,选择所述数据挖掘的目标模型包括的程序脚本。

5.一种数据挖掘系统,其特征在于,包括:

获取模块,用于获取对应于不同的数据挖掘子过程的多个程序脚本,其中,一个所述数据挖掘子过程包括至少一个所述程序脚本,每个所述程序脚本具有一个对应的脚本标识,所述脚本标识用于标示该脚本标识对应的程序脚本归属的数据挖掘子过程;

排序模块,用于获取所述多个程序脚本对应的多个脚本标识;按照所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序;

执行模块,用于按照确定的所述调用顺序依次调用所述多个程序脚本,进行数据挖掘;

其中,所述执行模块包括:判断模块,用于在按照确定的所述调用顺序依次调用每一个所述程序脚本时,判断该程序脚本是否有外部参数,所述外部参数用于向该程序脚本中的变量传递数据;肯定模块,用于若所述判断模块的判断结果为是,则获取所述外部参数传递的数据,并根据所述外部参数传递的数据执行该程序脚本所归属的数据挖掘子过程。

6.根据权利要求5所述的系统,其特征在于,还包括:

设置模块,用于在所述获取模块获取对应于不同的数据挖掘子过程的多个程序脚本之前,根据每个所述程序脚本所归属的数据挖掘子过程,为该程序脚本设置脚本名的前缀字符作为该程序脚本的脚本标识。

7.根据权利要求6所述的系统,其特征在于,所述排序模块用于,获取所述多个程序脚本的脚本名,将所述多个程序脚本的脚本名中的前缀字符,确定为所述多个程序脚本的多个脚本标识;根据所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序。

8.根据权利要求5-7中任一项所述的系统,其特征在于,所述获取模块用于从每一个所述数据挖掘子过程对应的所述至少一个程序脚本中,选择所述数据挖掘的目标模型包括的程序脚本。

说明书 :

数据挖掘方法及系统

技术领域

[0001] 本申请涉及网络技术领域,特别是涉及一种数据挖掘方法及系统。

背景技术

[0002] 随着信息技术的高速发展,人们积累的数据量急剧增长,如何从海量的数据中提取有用的知识成为当务之急。数据挖掘就是为顺应这种需要应运而生发展起来的数据处理技术。
[0003] 数据挖掘是指从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。在互联网中,数据挖掘的过程如图1所示,包括:数据选择子过程、数据预处理子过程、数据转换子过程、模型计算子过程、数据分析和同子过程。目前,这个过程中的每个子过程都是单独实现的,它们之间一般都是单独处理,并没有物理上的衔接。比如,某个数据挖掘人员负责数据选择工作,其独立完成自己的工作,并在工作完成后,人工通知后一个负责数据预处理的人员对选择出的数据进行数据预处理,并交付选择出的数据。依此类推,数据挖掘过程中,每一个数据挖掘人员都只负责自己的一部分工作,负责后一部分工作的数据挖掘人员需要依赖于负责前一部分工作的数据挖掘人员的通知和数据传递。因此,数据挖掘过程繁琐,其中的每个子过程都相对独立互不衔接,从而对数据转移交互造成困难,无法方便及时地实现数据交付和处理。而且,在数据的衔接传递过程中,由于各种人工原因,经常出现所需要的数据和之前数据挖掘中整理出的数据不一致,导致最终数据挖掘和分析错误。
[0004] 可见,现有的数据挖掘过程中,由于人工干预过多,各个子过程之间的连接不紧密,使得每个子过程之间的数据传递和交互很容易出现问题,无法保证数据挖掘结果的正确性,并且,数据挖掘的效率也很低。

发明内容

[0005] 本申请所要解决的技术问题是提供一种数据挖掘方法及系统,以解决现有数据挖掘过程中无法保证数据挖掘结果的正确性且数据挖掘效率低的问题。
[0006] 为了解决上述问题,本申请公开了一种数据挖掘方法,包括:获取对应于不同的数据挖掘子过程的多个程序脚本,其中,一个所述数据挖掘子过程包括至少一个所述程序脚本,每个所述程序脚本具有一个对应的脚本标识,所述脚本标识用于标示该脚本标识对应的程序脚本归属的数据挖掘子过程;获取所述多个程序脚本对应的多个脚本标识;按照所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序;按照确定的所述调用顺序依次调用所述多个程序脚本,进行数据挖掘。
[0007] 优选地,在所述获取对应于不同的数据挖掘子过程的多个程序脚本的步骤之前,还包括:根据每个所述程序脚本所归属的数据挖掘子过程,为该程序脚本设置脚本名的前缀字符作为该程序脚本的脚本标识。
[0008] 优选地,获取所述多个程序脚本对应的多个脚本标识的步骤包括:获取所述多个程序脚本的脚本名;将所述多个程序脚本的脚本名中的前缀字符,确定为所述多个程序脚本的多个脚本标识。
[0009] 优选地,所述按照确定的所述调用顺序依次调用所述多个程序脚本,进行数据挖掘的步骤包括:在按照确定的所述调用顺序依次调用每一个所述程序脚本时,判断该程序脚本是否有外部参数,所述外部参数用于向该程序脚本中的变量传递数据;若是,则获取所述外部参数传递的数据,并根据所述外部参数传递的数据执行该程序脚本所归属的数据挖掘子过程。
[0010] 优选地,所述获取对应于不同的数据挖掘子过程的多个程序脚本的步骤包括:从每一个所述数据挖掘子过程对应的所述至少一个程序脚本中,选择所述数据挖掘的目标模型包括的程序脚本。
[0011] 为了解决上述问题,本申请还公开了一种数据挖掘系统,包括:获取模块,用于获取对应于不同的数据挖掘子过程的多个程序脚本,其中,一个所述数据挖掘子过程包括至少一个所述程序脚本,每个所述程序脚本具有一个对应的脚本标识,所述脚本标识用于标示该脚本标识对应的程序脚本归属的数据挖掘子过程;排序模块,用于获取所述多个程序脚本对应的多个脚本标识;按照所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序;执行模块,用于按照确定的所述调用顺序依次调用所述多个程序脚本,进行数据挖掘。
[0012] 优选地,所述数据挖掘系统还包括:设置模块,用于在所述获取模块获取对应于不同的数据挖掘子过程的多个程序脚本之前,根据每个所述程序脚本所归属的数据挖掘子过程,为该程序脚本设置脚本名的前缀字符作为该程序脚本的脚本标识。
[0013] 优选地,所述排序模块用于,获取所述多个程序脚本的脚本名,将所述多个程序脚本的脚本名中的前缀字符,确定为所述多个程序脚本的多个脚本标识;根据所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序。
[0014] 优选地,所述执行模块包括:判断模块,用于在按照确定的所述调用顺序依次调用每一个所述程序脚本时,判断该程序脚本是否有外部参数,所述外部参数用于向该程序脚本中的变量传递数据;肯定模块,用于若所述判断模块的判断结果为是,则获取所述外部参数传递的数据,并根据所述外部参数传递的数据执行该程序脚本所归属的数据挖掘子过程。
[0015] 优选地,所述获取模块用于从每一个所述数据挖掘子过程对应的所述至少一个程序脚本中,选择所述数据挖掘的目标模型包括的程序脚本。
[0016] 与现有技术相比,本申请具有以下优点:
[0017] 本申请提供了一个数据挖掘框架,通过对归属不同数据挖掘子过程的程序脚本进行整合排序,使原本无序的多个程序脚本按照数据挖掘过程的正常顺序依次被调用执行,无须人工干扰,解决了现有数据挖掘过程中,无法保证数据挖掘结果的正确性,并且数据挖掘效率低的问题,既保证了数据挖掘结果的正确性,提高了数据挖掘效率,又节省了数据挖掘成本。

附图说明

[0018] 图1是根据现有技术的一种数据挖掘过程的示意图;
[0019] 图2是根据本申请实施例一的一种数据挖掘方法的步骤流程图;
[0020] 图3是根据本申请实施例二的一种数据挖掘方法的步骤流程图;
[0021] 图4是根据本申请实施例三的一种数据挖掘方法的流程示意图;
[0022] 图5是根据本申请实施例四的一种数据挖掘系统的结构框图;
[0023] 图6是根据本申请实施例五的一种数据挖掘系统执行数据挖掘的示意图。

具体实施方式

[0024] 为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
[0025] 实施例一
[0026] 参照图2,示出了根据本申请实施例一的一种数据挖掘方法的步骤流程图。
[0027] 本实施例的数据挖掘方法包括以下步骤:
[0028] 步骤S102:获取对应于不同的数据挖掘子过程的多个程序脚本。
[0029] 其中,一个数据挖掘子过程包括至少一个程序脚本,每个程序脚本归属于一个数据挖掘子过程。也即,可能有一个程序脚本实现一个数据挖掘子过程;也可能有多个程序脚本合起来实现一个数据挖掘子过程;还可能是有多个程序脚本,其中的某些可以组合,以不同方式实现一个数据挖掘子过程,如有A,B,C,D,E五个脚本,其中,ABC组合可以实现数据预处理子过程,ADC同样也可以实现数据预处理子过程,AEC也一样,区别在于实现数据预处理子过程的方式不同。
[0030] 每个程序脚本具有一个脚本标识,脚本标识用于标示该程序脚本归属的是哪个数据挖掘子过程。
[0031] 数据挖掘过程可以包括:数据选择、数据预处理、数据转换、模型计算、数据分析和同,其中的每一个过程可以作为一个数据挖掘子过程。优选地,数据挖掘过程还可以包括数据分析。
[0032] 对于一个数据挖掘子过程可以通过多个程序脚本以多种方式实现的情况,在进行一次数据挖掘时,从多个程序脚本中选择一种实现方式的脚本组合,作为该数据处理子过程的程序脚本。程序脚本可以是预先编写或设置好的,也可以是根据数据挖掘过程临时生成的。
[0033] 步骤S104:获取多个程序脚本对应的多个脚本标识。
[0034] 步骤S106:按照不同的数据挖掘子过程的执行顺序,确定多个脚本标识对应的多个程序脚本的调用顺序。
[0035] 一个完整的数据挖掘过程需要按流程顺序依次完成,而对于多个无序的程序脚本,需要根据数据挖掘过程中每个子过程的执行顺序,对其进行整合排序,以使其能够按照正确的数据挖掘流程执行。本步骤S106中,根据程序脚本的脚本标识,确定程序脚本的功能,即归属的是哪一个数据挖掘子过程,然后,根据数据挖掘过程中每个子过程的执行顺序,确定对应的程序脚本被调用的顺序。
[0036] 步骤S108:按照确定的调用顺序依次调用多个程序脚本,进行数据挖掘。
[0037] 通过本实施例,实现了对归属不同数据挖掘子过程的程序脚本进行整合排序,使原本无序的多个程序脚本按照数据挖掘过程的正常顺序依次被调用执行,无须人工干扰,提高了数据传递和交互过程的安全性,解决了现有数据挖掘过程中,无法保证数据挖掘结果的正确性,并且数据挖掘效率低的问题,既保证了数据挖掘结果的正确性,提高了数据挖掘效率,又节省了数据挖掘的时间成本和人工成本。
[0038] 实施例二
[0039] 参照图3,示出了根据本申请实施例二的一种数据挖掘方法的步骤流程图。
[0040] 本实施例的数据挖掘方法包括以下步骤:
[0041] 步骤S202:根据每个程序脚本所归属的数据挖掘子过程,为系统中多个程序脚本设置脚本名的前缀字符,作为程序脚本的脚本标识。
[0042] 其中,可能有多个程序脚本执行同样的数据挖掘子过程,则为这些程序脚本设置相同的脚本名的前缀字符。如,程序脚本a1、a2、a3都执行数据预处理子过程,则可以为这三个脚本设置相同的脚本名前缀字符“P_”,分别命名为“P_a1”、“P_a2”和“P_a3”。一个数据挖掘子过程对应于多个不同的程序脚本,可以根据实际需求,组成不同的数据挖掘模型,灵活地实现不同目的的数据挖掘功能。
[0043] 对于多个程序脚本组合实现一个数据挖掘子过程的情况,也为这些程序脚本设置相同的脚本名的前缀字符,以指示其归属于同一个数据挖掘子过程。在实现数据挖掘子过程时,可以通过作为输入参数正确安排顺序,或者在前缀字符后设置顺序标识等适当方式,确定组合实现一个数据挖掘子过程的多个程序脚本之间的顺序。当然,除了上述顺序确定方式,本领域技术人员在实际使用中,也可以采用其它任意适当的方式,本申请对此不作限制。
[0044] 通过为程序脚本设置脚本名的前缀字符,可以方便快速地确定程序脚本所能执行的功能,为后续脚本排序处理提供了方便。
[0045] 步骤S204:根据数据挖掘的目标模型,从每一个数据挖掘子过程对应的程序脚本中选择程序脚本。
[0046] 通过本步骤S204,每一个数据挖掘子过程都对应有一个或一组程序脚本。
[0047] 步骤S206:获取多个程序脚本的脚本名。
[0048] 步骤S208:将多个程序脚本的脚本名中的前缀字符,确定为多个程序脚本的多个脚本标识。
[0049] 步骤S210:按照不同的数据挖掘子过程的执行顺序,确定多个脚本标识对应的多个程序脚本的调用顺序。
[0050] 步骤S212:按照确定的调用顺序依次调用多个程序脚本,进行数据挖掘。
[0051] 优选地,在按照确定的调用顺序依次调用每一个程序脚本时,判断该程序脚本是否有外部参数,外部参数用于向该程序脚本中的变量传递数据;如果有,则获取外部参数传递的数据,并根据外部参数传递的数据执行该程序脚本所归属的数据挖掘子过程。
[0052] 通过本实施例,实现了对归属不同数据挖掘子过程的程序脚本进行整合排序,使原本无序的多个程序脚本按照数据挖掘过程的正常顺序依次被调用执行,无须人工干扰,提高了数据传递和交互过程的安全性,不但解决了现有数据挖掘过程中无法保证数据挖掘结果的正确性和数据挖掘效率低的问题;进一步地,通过设置脚本名的前缀字符,可以根据不同目的,选择不同的程序脚本,组成不同的数据挖掘模型,实现了灵活的数据挖掘。
[0053] 实施例三
[0054] 参照图4,示出了根据本申请实施例三的一种数据挖掘方法的流程示意图。
[0055] 如图4所示,本实施例提供了一个自动化框架,用来对程序脚本进行整合排序等。该自动化框架分为三个主要部分,即,数据选择及预处理和转换部分、模型计算部分和数据分析部分,每一部分都有自己的执行模块。三部分划分的依据可以是数据挖掘子过程之间的耦合性,例如,数据选择、数据预处理和数据转换三个子过程之间的耦合性较大,因此,把它们整合到一起。但本领域技术人员应当明了,在实际应用中,本领域技术人员可以根据实际需求进行适当整合划分,也可以不进行整合划分,一个数据挖掘子过程对应于一个部分,本申请对此不作限制。
[0056] 自动化框架的每一部分都提供了接口,通过接口对程序脚本进行整合排序,以及调用执行等。
[0057] 本实施例中的数据挖掘子过程的执行模块可以包括:选择试验模型、配置自动化程序配置文件、数据清洗过程、分布式运行试验系统和得出结果数据分析。数据挖掘子过程包括的程序脚本可以为数据处理脚本或者模型计算脚本等形式,对应于上述数据挖掘子过程的执行模块,本实施例中对相应的实现数据挖掘子过程的脚本也进行了整合,整合后的程序脚本可以包括:选择试验模型脚本、配置自动化程序配置文件脚本、数据清洗过程脚本、分布式运行试验系统脚本和得出结果数据分析脚本。
[0058] 本实施例的数据挖掘方法包括以下步骤:
[0059] 步骤S302:获取外部输入的多个程序脚本。
[0060] 其中,每个程序脚本使用脚本名前缀字符作为脚本标识。
[0061] 本实施例中,即获取对应于数据挖掘子过程的执行模块的不同程序脚本,包括:选择试验模型脚本、配置自动化程序配置文件脚本、数据清洗过程脚本、分布式运行试验系统脚本和得出结果数据分析脚本。
[0062] 步骤S304:自动化系统框架上层通过分支程序判断外部输入的程序脚本的类型功用,判断之后分配到相应的执行区域(即自动化系统框架中的不同部分)里面去。
[0063] 本步骤S304中,自动化系统框架通过程序脚本的脚本名前缀字符判断程序脚本的类型功用,即是归属哪个数据挖掘子过程的。判断之后,将程序脚本分配到自动化系统框架中的不同部分,由该部分对这些程序脚本进行整合排序,进而调用执行。例如,自动化系统框架根据获取的程序脚本的脚本名前缀字符,将选择试验模型脚本、配置自动化程序配置文件脚本和数据清洗过程脚本分配到数据选择及预处理和转换部分,对这些脚本进行整合排序后,依次调用选择试验模型脚本、配置自动化程序配置文件脚本、数据清洗过程脚本,执行数据选择子过程、数据预处理子过程和数据转换子过程;将分布式运行试验系统脚本分配到模型计算部分,执行模型计算子过程;将得出结果数据分析脚本分配到数据分析部分,执行数据分析子过程。
[0064] 其中,每个程序脚本都有自己的外部参数,在输入的时候可以将不同程序脚本的外部参数附在这个脚本的后面,以进行参数传递,即将外部参数指示的数据传递到程序脚本,供程序脚本中的变量使用。当然,程序脚本是否具有外部参数取决于实际需要,在不需要的情况下,程序脚本也可以没有外部参数。
[0065] 例如,应用linux下,向自动化系统框架输入命令如下:
[0066] “./auto_arch.sh A_exam.sh_arg1 arg2 B_exam.sh arg1 arg2 C_exam.sharg1 arg2 D_exam.sh arg1 arg2 E_exam.sh arg1 arg2”
[0067] 其中,A,B,C,D,E均为脚本名的前缀字符,分别代表该脚本所归属的数据挖掘子过程,如A代表程序脚本归属数据选择子过程,B代表程序脚本归属数据转换子过程,等等。“arg1”和“arg2”为程序脚本的外部参数,用来在执行程序脚本时,向其中的变量传递数据。
当然,“arg1”和“arg2”仅为示例性说明,在实际应用中,外部参数根据实际需求灵活设置,也可以不携带外部参数。
[0068] 通过上述命令,就实现了把外部的程序脚本按分支分类传给不同的部分去执行了。
[0069] 步骤S306:自动化系统框架确定各个程序脚本的调用执行顺序,依次调用执行相应的程序脚本进行数据挖掘。
[0070] 如图4所示,该图中有两个部分,上面部分是已有的凌乱无序的数据处理脚本、模型计算脚本等单独存在的错综复杂外部的程序脚本,下面部分是一个自动化系统框架,框架里面整合数据挖掘的几个部分的所有步骤的过程,只要将上面的脚本根据分类自由组合输入这个框架,一个试验就能自动运行直至完成。
[0071] 通过本实施例提供的自动化系统框架,(1)因为每一个数据挖掘子过程都可能有多个或多组不同的程序脚本,通过输出不同程序脚本的脚本名,可以实现自动化系统框架每一个部分的脚本的随意更换,任意组合需要的试验模型;(2)通过每部分单独的程序脚本,在向自动化系统框架输入时,输入每部分模型的程序脚本,自动化系统框架自动将所有的部分串起来,自动全部执行完毕。例如,自动化系统框架内部通过输入的脚本名字前面的前缀字符来识别此程序脚本的功能,以A_run_url_query.sh这个文件的程序脚本为例,通过识别前面的A知道这个程序脚本是做Analyse(分析)功能的程序脚本,然后再在自动化系统框架中将其分配到做数据分析的分支当中,这样,通过脚本名前缀字符判断脚本类型功用,将其分配到不同的功能分支中,从而实现自动化串联,然后达到整体统一一致的目的。
[0072] 实施例四
[0073] 参照图5,示出了根据本申请实施例四的一种数据挖掘系统的结构框图。
[0074] 本实施例的数据挖掘系统包括:获取模块402,用于获取对应于不同的数据挖掘子过程的多个程序脚本,其中,一个数据挖掘子过程包括至少一个程序脚本,每个程序脚本具有一个对应的脚本标识,脚本标识用于标示该脚本标识对应的程序脚本归属的数据挖掘子过程;排序模块404,用于获取多个程序脚本对应的多个脚本标识;按照不同的数据挖掘子过程的执行顺序,确定多个脚本标识对应的多个程序脚本的调用顺序;执行模块406,用于按照确定的调用顺序依次调用多个程序脚本,进行数据挖掘。
[0075] 优选地,本实施例的数据挖掘系统还包括:设置模块408,用于在获取模块402获取对应于不同的数据挖掘子过程的多个程序脚本之前,根据每个程序脚本所归属的数据挖掘子过程,为该程序脚本设置脚本名的前缀字符作为该程序脚本的脚本标识。
[0076] 优选地,排序模块404用于,获取多个程序脚本的脚本名,将多个程序脚本的脚本名中的前缀字符,确定为多个程序脚本的多个脚本标识;根据所述不同的数据挖掘子过程的执行顺序,确定所述多个脚本标识对应的所述多个程序脚本的调用顺序。
[0077] 优选地,执行模块406包括:判断模块4062,用于在按照确定的调用顺序依次调用每一个程序脚本时,判断该程序脚本是否有外部参数,外部参数用于向该程序脚本中的变量传递数据;肯定模块4064,用于若判断模块4062的判断结果为是,则获取外部参数传递的数据,并根据外部参数传递的数据执行该程序脚本所归属的数据挖掘子过程。
[0078] 优选地,获取模块402用于从每一个数据挖掘子过程对应的至少一个程序脚本中,选择数据挖掘的目标模型包括的程序脚本。
[0079] 本实施例的数据挖掘系统用于实现前述方法实施例中相应的多个数据挖掘方法,并具有相应数据挖掘方法的有益效果,在此不再赘述。
[0080] 实施例五
[0081] 参照图6,示出了根据本申请实施例五的一种数据挖掘系统执行数据挖掘的示意图。
[0082] 本实施例的数据挖掘系统包括一个自动化数据挖掘框架,框架中包括三个处理部分,分别是:数据选择及预处理和转换部分、模型计算部分和数据分析部分。其中,数据选择及预处理和转换部分用于根据程序脚本的脚本名前缀,判断其属于数据选择及预处理和转换部分,对程序脚本的执行顺序进行排序,然后按照排好的顺序调用程序脚本执行;数据挖掘部分用于根据程序脚本的脚本名前缀,判断其属于模型计算部分,将该部分的程序脚本安排在数据选择及预处理和转换部分的程序脚本执行后调用执行;数据分析部分用于根据程序脚本的脚本名前缀,判断其属于数据分析部分,将该部分的程序脚本安排在模型计算部分的程序脚本执行后调用执行。在所有部分的程序脚本都成功调用执行后,一次数据挖掘过程完成。
[0083] 具体到本实施例,数据选择及预处理和转换部分能够接收选择试验模型脚本、配置自动化程序配置文件脚本和数据清洗过程脚本,将它们的执行顺序安排在其它部分的脚本之前,对它们进行再次排序后依次调用执行,实现数据选择、数据预处理和数据转换功能;模型计算部分接收分布式运行试验系统脚本,确定它在数据选择及预处理和转换部分的脚本执行之后执行,实现模型计算功能;数据分析部分接收得出结果数据分析脚本,确定它在模型计算部分的脚本执行之后执行,实现数据分析功能。
[0084] 此外,该框架向外提供了接口(相当于图5所示实施例中的获取模块),用于接收外部输入的参数,如程序脚本的脚本名和/或程序脚本所需的外部参数;然后,通过外部输入的参数确定程序脚本的功能类型,即判断程序脚本是归属哪个数据挖掘子过程的,将程序脚本分别分配到框架中相应的部分,由上述数据选择及预处理和转换部分、模型计算部分和数据分析部分(这三部分执行图5所示实施例中的排序模块的功能)确定每个程序脚本的调用执行顺序,进而由自动化数据挖掘框架通过调用接口(相当于图5所示实施例中的执行模块)根据确定好的顺序依次调用执行程序脚本。
[0085] 本实施例的框架在实现数据挖掘时,在执行的时候调用自动化框架程序名字,后面传入参数(即待执行的所有脚本的脚本名和/或脚本参数),即可实现无序程序脚本的整合顺序执行。整个框架可以采用shell实现,在linux里面启动,使用shell实现,整个数据挖掘过程简单易于操作,不易出现误操作。当然,任意其它适当语言均可实现本申请的数据挖掘方案,本申请对此不作限制。
[0086] 通过本申请的数据挖掘方案,解决了现有技术数据挖掘每个子过程之间的耦合性低,相关性不高,过程之间连接不够紧密,效率和错误百出的问题,实现了高效、准确的数据挖掘,节约了人力成本以及时间成本,加快了程序处理速度,降低了复杂性,提高了工作效率,减少了操作错误。并且,形式灵活,可以根据需要随时更换程序脚本,组合成任意所需的数据挖掘模型,实现了数据挖掘的灵活性、通用性和兼容性。
[0087] 本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0088] 以上对本申请所提供的一种数据挖掘方法和系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。