数据分析方法及装置与流程

文档序号:20920619发布日期:2020-05-29 14:06阅读:145来源:国知局
数据分析方法及装置与流程

本发明涉及数据分析领域,具体地涉及一种数据分析方法及装置。



背景技术:

目前,在许多数据应用领域都存在海量杂乱无序无规则数据(以下简称为海量无规则数据),例如内容营销。内容营销是指以图片、文字、动画等等介质传达有关企业的相关内容来给客户信息,促进销售,就是通过合理的内容创建、发布及传播,向用户传递有价值的信息,从而实现网络营销的目的。根据内容营销的定义,可知其存在一种需求,即是需要从海量无规则数据中抽取满足需求的数据,进行展示和/或营销。举例而言,在利用手机进行内容营销时,需要通过用户手机操作记录等获取用户生活和工作的各个方面的数据,比如性格偏向、投资偏向、穿着偏向、工作专业、情感特征、体貌特征、个人好恶等等,最后通过数据分析来对用户画像,进行个性化的内容营销,满足用户个性化需求。

但是,这里涉及的用户数据没有规律性,且每天单个用户产生的数据杂乱而繁多。因此,如果内容营销面向的用户量基础很大,就会产生海量无规则数据。对于这些海量无规则数据,现有技术是通过数据模型化方案来进行处理,即是先通过创建的数据模型将无序无规则的数据转移成规则有序化的数据,再进行分析。但是,在将数据规则有序化的过程中,数据模型没有涉及的数据,往往会被丢弃。换句话说,就是一旦数据在数据模型上转移失败,无序数据、无规则数据、甚至部分无序数据转移的有序数据就会失去意义,被丢弃。但要注意的是,即使这些数据最终被丢弃了,但数据模型仍是对它们进行了数据分析,从而增加了服务器等的数据分析量,占用了较多数据分析资源,最终影响了整个数据分析过程的效率。另外,当前社会的节奏非常快,用户行为习惯的变化也相对很快,而数据模型的创建往往需要一定的时间,如此,现在技术中的数据模型的创建速率很可能无法适应用户数据的迅速变化,从而最后导致产品失去竞争力。



技术实现要素:

本发明实施例的目的是提供一种数据分析方法及装置,用于现有技术中难以处理海量无规则数据的问题。

为了实现上述目的,本发明实施例提供一种数据分析方法,包括:确定待分析数据的维度集、与所述维度集相对应的指标集以及数据特征限制范围;根据所述待分析数据的所述维度集、所述指标集和所述数据特征限定范围,设置所述待分析数据中应用数据处理的多个数据集;以及采用蚁群算法对所述每一个数据集进行数据处理,使蚁群中的每只蚂蚁走完所述每一个数据集中的所有数据,以从所述每一个数据集中选择出信息素高于设定阈值的数据,其中信息素越高的数据与预设的所需数据的相关性越高。

可选的,所述采用所述蚁群算法对所述每一个数据集进行数据处理包括:设置所述蚁群算法的初始化参数,其中所述初始化参数包括所述每一数据集中的数据编号、各数据的初始信息素、启发因子和期望因子,其中所述期望因子包括所述所需数据的信息;以及使每只蚂蚁根据所述初始化参数选择数据以开始行走,根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率,并在每次发生数据转移时,计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素,直到所有蚂蚁走完所述每一个数据集中的所有数据,完成一次迭代,选择出信息素高于所述设定阈值的数据。

可选的,所述计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素包括:将所述当前数据对应的所述维度集和所述指标集与所述所需数据的数据头进行比对,以获得所述所需数据的数据头所包含的字段名称含有所述当前数据的所述维度集和所述指标集所占的百分比,将该百分比作为相关性计算结果;以及根据所述相关性计算结果,利用相关性与信息素的对应关系更新所述当前数据的信息素,其中,与所述所需数据的相关性越高的数据对应的信息素越高。

可选的,在所述采用所述蚁群算法对每一个数据集进行数据处理后,所述数据分析方法还包括:在完成一次迭代,选择出信息素高于所述设定阈值的数据之后,基于所选择出的数据的信息素更新全局信息素表,并将更新后的全局信息素表应用于下次迭代;以及将相邻两次迭代得到的数据进行比较,选择出两者中信息素更高的数据,直到完成预定次数的迭代,以选择出最优数据。

可选的,所述数据分析方法还包括:针对所述待分析数据建立数据图谱;以及在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定应用数据处理的所述多个数据集;和/或在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定所述初始化参数。

另一方面,本发明实施例还提供一种数据分析装置,其特征在于,所述数据分析方法装置包括:第一数据处理单元,用于确定待分析数据的维度集、与所述维度集相对应的指标集以及数据特征限制范围;第二数据处理单元,用于根据所述待分析数据的所述维度集、所述指标集和所述数据特征限定范围,设置所述待分析数据中应用数据处理的多个数据集;以及第三数据处理单元,用于采用蚁群算法对所述每一个数据集进行数据处理,使蚁群中的每只蚂蚁走完所述每一个数据集中的所有数据,以从所述每一个数据集中选择出信息素高于设定阈值的数据,其中信息素越高的数据与预设的所需数据的相关性越高。

可选的,所述第三数据处理单元包括:初始化模块,用于设置所述蚁群算法的初始化参数,其中所述初始化参数包括所述每一数据集中的数据编号、各数据的初始信息素、启发因子和期望因子,其中所述期望因子包括所述所需数据的信息;计算模块,用于使每只蚂蚁根据所述初始化参数选择数据以开始行走,根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率,并在每次发生数据转移时,计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素;以及第一选择模块,用于在所有蚂蚁走完所述每一个数据集中的所有数据,完成一次迭代时,选择出信息素高于所述设定阈值的数据。

可选的,所述计算模块包括:转移概率计算子模块,用于根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率;相关性计算子模块,用于将所述当前数据对应的所述维度集和所述指标集与所述所需数据的数据头进行比对,以获得所述所需数据的数据头所包含的字段名称含有所述当前数据的所述维度集和所述指标集所占的百分比,将该百分比作为相关性计算结果;以及信息素计算子模块,用于根据所述相关性计算结果,利用相关性与信息素的对应关系更新所述当前数据的信息素,其中,与所述所需数据的相关性越高的数据对应的信息素越高。

可选的,所述第三数据处理单元还包括:信息素全局更新模块,用于在完成一次迭代,选择出信息素高于所述设定阈值的数据之后,基于所选择出的数据的信息素更新全局信息素表,并将更新后的全局信息素表应用于下次迭代;以及第二选择模块,用于将相邻两次迭代得到的数据进行比较,选择出两者中信息素更高的数据,直到完成预定次数的迭代,以选择出最优数据。

可选的,所述数据分析装置还包括:数据图谱建立单元,用于针对所述待分析数据建立数据图谱;其中,所述第三数据处理单元还用于在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定所述初始化参数和/或确定应用数据处理的所述多个数据集。

另一方面,本发明实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行上述的数据分析方法。

另一方面,本发明实施例还提供一种处理器,用于运行程序,其中,所述程序被运行时用于执行:如上述的数据分析方法。

通过上述技术方案,本发明将蚁群算法应用于数据分析中,能够从海量无规则数据中选择出最优数据,避免了有价值的数据被丢弃。并且,本发明方案适用于内容营销等领域的数据分析,便于从海量数据中选择出最优数据进行内容营销,更能保证内容营销的精确性。

本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:

图1是本发明实施例的数据分析方法的流程示意图;

图2是本发明实施例中采用蚁群算法对待分析数据进行数据处理的流程示意图;以及

图3是本发明另一实施例的数据分析装置的结构示意图。

附图标记说明

310第一数据处理单元320第二数据处理单元

330第三数据处理单元331初始化模块

332计算模块333第一选择模块

334信息素全局更新模块335第二选择模块

具体实施方式

以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。

在本发明实施例中,术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本发明实施例能够以除了在这里图示或描述的那些以外的顺序实施。另外,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统(如服务器)中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于流程图的顺序执行所示出或描述的步骤。

本发明实施例将基于蚁群算法来解决上述背景技术中提及的海量、无规则、无序的数据的分析问题。蚁群算法是由意大利学者dorigo等人受到蚁群觅食机制的启发而提出的一种进化计算方法。真实蚁群通过在觅食路径上释放信息素,最终凭借着对信息素的感知可以在蚁穴和食物源之间找到一条最短路径。蚁群算法正是模拟真实蚁群的这一机理工作的。

蚁群算法最典型的应用是用于解决路径选择问题,举例而言,当蚂蚁在寻找路径起始点(蚁穴)和路径结束点(食物源)之间的最短路径时,蚁群在觅食路径上释放信息素,单个蚂蚁通过感知路径上信息素的强度,按照概率选择下一步的行进方向,而蚂蚁之间则通过感知和释放信息素完成间接的信息传递。如果觅食路径上有新的障碍物时,信息素的轨迹暂时被隔断,此时蚂蚁随机地选择下一步的行进方向,这样,障碍物附近新的最短路径的那些蚂蚁将最先重构起连续的信息素轨迹。当路径上的蚂蚁到达一定程度后,使得短路径上的信息素的强度将大于较长路径上的信息素强度,这样,后续的蚂蚁将以较大的概率选择短路径,这种过程所形成的正反馈机制使得蚂蚁可以找到最新的最短路径。

根据蚁群算法的基本原理,本发明实施例提出了将蚁群算法应用于海量无规则数据的数据分析过程中的方案,且本发明实施例中以内容营销中涉及的海量无规则数据为例,其中内容营销例如是根据用户手机购物的情况,向用户推荐其可能购买的商品。

图1是本发明实施例的数据分析方法的流程示意图,如图1所示,所述数据处理方法可以包括以下步骤:

步骤s110,确定待分析数据的维度集、与所述维度集相对应的指标集以及数据特征限制范围。

其中,维度集与指标集分别是指维度和指标的集合,而维度和指标是大数据处理中至关重要的两个参数。其中,维度是指事物或现象的某种特征,如性别、地区、时间、消费类型等都是维度,而时间是其中的一种常用、特殊的维度,通过时间前后的对比,可以知道事物或现象的发展情况,如用户数量比上月增长10%、同比去年同期增长20%;指标是用于衡量事物或现象发展程度的单位或方法,其也可称为度量,如人口数、gdp、收入、用户数、利润率、留存率、覆盖率、消费额、消费增长率等都是指标。

另外,数据特征限制范围用于限定进行数据分析的数据范围,例如ip地址相同的某一区域的数据、某一省份的群体等。通过设置数据特征限制范围,可保证数据来源的合理性及合法性。

在本发明实施例中,设维度集为d,指标集为m,数据特征限制范围为w,可得到变量(d,m,w),该变量(d,m,w)即为本发明实施例中进行数据分析的输入变量。

步骤s120,根据所述待分析数据的所述维度集、所述指标集和所述数据特征限定范围,设置所述待分析数据中应用数据处理的多个数据集。其中,所述数据集中可包括多个数据。

举例而言,根据变量(d,m,w),可通过预设函数f(d,m,w)从待分析数据中过滤出满足变量(d,m,w)所需或所要求的数据集来进行数据处理,以确定后续应用蚁群算法的数据集及数据集中的数据。

步骤s130,采用蚁群算法对每一个数据集进行数据处理,使每只蚂蚁走完所述每一个数据集中的所有数据,以从每一个数据集中选择出信息素高于设定阈值的数据,其中信息素越高的数据与预设的所需数据的相关性越高。

举例而言,在利用蚁群算法对每一个数据集进行数据处理的过程中,验证每一个数据与预设的所需数据的相关性,并根据相关性更新对应数据的信息素,从而使得信息素越高的数据与预设的所需数据的相关性越高,即信息素越高的数据越可能是所需数据。进一步地,在通过蚁群算法进行数据处理完成之后,可按照信息素从高到低的顺序排序,选择信息素高于设定阈值的数据。

如上,在常规应用于路径选择中的蚁群算法中,需设置路径起始点和路径结束点,而本发明实施例的应用于数据分析的蚁群算法中,没有设置路径结束点,而是以蚂蚁走完数据集中的所有数据作为它完成针对一个数据集的一次迭代的标志。举例而言,设数据集a为(c1,c2,c3,c4……cn),其中c1-cn表示数据,假设蚂蚁k从c1出发,则其第二步可选择c2-cn中的一者(不能再选择c1),假设选择了c3,则其第三步可选择c2及c4-cn中的一者(不能再选择c3),以此类推,直到蚂蚁k走完了c1-cn中的所有数据,表明蚂蚁k完成了一次迭代。本文所指的一次迭代,是指蚁群的全部蚂蚁都走完一个数据集的所有数据,迭代次数可以根据需要设定。

下面介绍步骤s130中应用蚂蚁算法进行数据处理的具体过程。

图2是本发明实施例中采用蚁群算法对待分析数据进行数据处理的流程示意图。如图2所示,该数据处理过程可以包括以下步骤:

步骤s131,设置所述蚁群算法的初始化参数。

其中,所述初始化参数主要包括所述每一数据集中的数据编号、各数据的初始信息素、启发因子和期望因子。其中,数据编号及初始信息素可根据对应于数据集的数据图谱来确定,启发因子用于计算蚂蚁从一个数据转移至另一数据的概率,下文将对这两点进行描述。另外,所述期望因子包括所述所需数据的信息,在本发明实施例中,可将所述期望因子理解为所述所需数据。

具体地,将启发因子设为ηij(),其用于反映路径对蚂蚁的启发信息,在本发明实施例中表现为在第t次迭代中,数据j对蚂蚁从数据i走向数据j的启发,启发因子在初始设置时已经确定,后续不会发生变化;信息素设为τij(t),其用于在路径选择问题中用于反映路径上的数据量,在本发明实施例中表现为在第t次迭代中,蚂蚁从当前数据i到数据j时,当前数据i与期望因子(例如符合(d,m,w)要求的所需数据)的相关性。需说明的,本发明实施例的蚁群算法可能还有其他初始化参数,可参考现有技术的常规蚁群算法进行理解,在此不再多述。

步骤s132,每只蚂蚁根据初始化参数选择数据以开始行走,根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率,并在每次发生数据转移时,计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素,直到所有蚂蚁走完所述每一个数据集中的所有数据,完成一次迭代,选择出信息素高于所述设定阈值的数据。

在优选的实施例中,每只蚂蚁可根据所述初始化参数中给出的数据起始点选择数据以开始行走,其选择的数据要符合初始化参数中其他参数的数据要求。

在优选的实施例中,可采用下面的公式计算每只蚂蚁在第t次迭代对应的行走中从当前数据i转移至下个数据j的概率:

式中,j∈jk(i)是t次迭代时,蚂蚁k允许选择的下一个数据,一般地,允许选择的下一个数据的范围是指蚂蚁没有走过的数据的集合,α用于表示信息素τij(t)的相对重要程度,β表示启发因子ηij()的相对重要程度,且β根据数据i和数据j之间的关联程度进行选择,例如从同一数据源获取的相类似的数据的关联程度可从[1,10]的范围中选择,关联程度越高,选取的数值越大。

在优选的实施例中,步骤s132中,所述计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素包括两个部分:

1)相关性算法部分。

具体地,将所述当前数据对应的所述维度集和所述指标集与所述所需数据的数据头进行比对,以获得所述所需数据的数据头所包含的字段名称含有所述当前数据的所述维度集和所述指标集所占的百分比,将该百分比作为相关性计算结果。

其中,数据头是指一段数据的标题,例如一段关于用户今日消费情况的数据,其数据头一般记录了“时间、金额”等标题类字段,而数据头之外的数据部分则记录具体的时间数值和金额数值。举例而言,(d,w)为(时间,消费金额),若对应的数据头的字段data中有“时间”一词,且按上述的百分比的定义,相关性r=data/(d,m),在此为50%,若对应数据头的字段data中包含“消费金额”一词,则相关性r也是50%,若对应数据头的字段data同时包含“时间”和“消费金额”,则相关性r为100%。需说明的是,这里关于相关性r的计算是基于模糊匹配进行的,在实际中(d,w)包括多个参数,相关性r不易达到100%。一般地,相关性r的范围设置在[0,1]。还需说明的是,相关性算法在现有技术中已较为成熟,且其易于与蚁群算法相结合,从而也可采用现有技术中的其他相关性算法来确定数据之间的相关性。

2)信息素更新部分。

根据所述相关性计算结果,利用相关性与信息素的对应关系更新所述当前数据的信息素,其中,与所述所需数据的相关性越高的数据对应的信息素越高。

举例而言,可预先配置相关性r与信息素的对应关系,例如在相关性r大于50%之后,每增加10%,信息素的值对应增加1。需注意的是,在部分实施例中,可直接将相关性作为信息素的值进行累加。

在更为优选的实施例中,步骤s132还可以包括:在完成一次迭代,选择出信息素高于所述设定阈值的数据之后,基于所选择出的数据的信息素更新全局信息素表,并将更新后的全局信息素表应用于下次迭代;以及将相邻两次迭代得到的数据进行比较,选择出两者中信息素更高的数据,直到完成预定次数的迭代,以选择出最优数据。

在此,现有蚁群算法中多是进行信息素的局部更新,其在蚂蚁的每一步搜索之后都要进行,消耗了大量的计算时间。并且,对于本发明实施例,如果每只蚂蚁经过某一数据时都进行信息素更新,则会使此数据上的信息素迅速上升,与其他路径的信息素的差异增大,很容易使局部最优路径上的信息素增加过快,陷入局部最优。因此,本发明实施例中基于一次迭代后的信息素更新全局信息素表,举例而言,第一次迭代时,信息素不要清除,而是继续保留,并且可以取所有蚂蚁在第一次迭代中的最高信息素为全局最优解来更新全局信息素表,以用于下一次迭代。如此,随着迭代次数的增多,选择结果越来越接近最优数据,且经过设置的迭代次数(例如10次),最终得到最接近所需数据的最优数据。

进一步地,在完成从一个数据集中选择出最优数据之后,可继续选择其他数据集来应用蚁群算法。

在更为优选的实施例中,本发明实施例所述的数据分析方法还可以包括:针对所述待分析数据建立数据图谱;以及在所述采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定所述初始化参数,和/或在采用所述蚁群算法对所述待分析数据进行数据处理时,确定应用数据处理的所述多个数据集。其中,数据图谱是以图谱的方式展示待分析数据,其可以通过图谱清晰、简明地示出数据存储位置、数据存储方式、数据来源等。该数据图谱可模拟二维空间,例如,其可通过横竖坐标(x,y)确定数据存储位置。

易知,数据图谱是类似于路径格式的,且其能简单示意出部分数据之间的关联以及数据与所需数据的关联。因此,本发明实施例可在步骤s130中采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定蚂蚁启发因子、初始信息素、初始放置位置、蚂蚁行走路径等,例如可使蚂蚁初始放置位置及行走路径与数据图谱示出的数据存储位置以及数据存储路径相一致。需说明的是,蚂蚁初始放置位置也可随机选择,本发明实施例不限制于此。

另外,数据图谱示出了数据来源等,从而可根据例如不同的数据来源来确定应用蚁群算法的不同数据集,比如将来源于第一服务提供商的数据作为数据集a,将来源于第二服务提供商的数据作为数据集b。

综上所述,本发明实施例的针对海量无规则数据的数据分析方法具有以下方面的优势:

1)将蚁群算法应用于海量无规则数据的数据分析中,能够从海量无规则数据中选择出最优数据,避免了有价值的数据被丢弃。

2)适用于内容营销等领域的数据分析,以从海量数据中选择出最优数据进行内容营销,更能保证内容营销的精确性。

3)蚁群算法的本身优势有利于减轻服务器等硬件机制的数据分析量,从而有利于减少硬件研发成本。

4)通过相关性算法来对蚂蚁行走中经过的数据进行验证,筛选出所需的数据,有利于保证蚁群算法的最终选择结果的准确性。并且,相关性算法易于实现,且易于与蚁群算法相结合。

5)在蚁群算法中采用全局更新信息素的方式,避免了陷入局部最优,并有利于提高算法效率。

6)建立了数据图谱来辅助确定蚂蚁初始放置位置及行走路径,简化了算法难度,并使得算法更加贴近数据规律。

图3是本发明另一实施例的数据分析装置的结构示意图,该数据分析装置与上述实施例的数据分析方法基于相同的发明思路。如图3所示,所述数据分析装置包括:第一数据处理单元310,用于确定待分析数据的维度集、与所述维度集相对应的指标集以及数据特征限制范围;第二数据处理单元320,用于根据所述待分析数据的所述维度集、所述指标集和所述数据特征限定范围,设置所述待分析数据中应用数据处理的多个数据集;以及第三数据处理单元330,用于采用所述蚁群算法对所述每一个数据集进行数据处理,使蚁群中的每只蚂蚁走完所述每一个数据集中的所有数据,以从所述每一个数据集中选择出信息素高于设定阈值的数据,其中信息素越高的数据与预设的所需数据的相关性越高。

在优选的实施例中,所述第三数据处理单元330包括:

初始化模块331,用于设置所述蚁群算法的初始化参数,其中所述初始化参数包括所述每一数据集中的数据编号、各数据的初始信息素、启发因子和期望因子,其中所述期望因子包括所述所需数据的信息。

计算模块332,用于使每只蚂蚁根据所述初始化参数选择数据以开始行走,根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率,并在每次发生数据转移时,计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素。

第一选择模块333,用于在所有蚂蚁走完所述每一个数据集中的所有数据,完成一次迭代时,选择出信息素高于所述设定阈值的数据。

在优选的实施例中,所述计算模块332可以包括:转移概率计算子模块,用于根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率;相关性计算子模块,用于将所述当前数据对应的所述维度集和所述指标集与所述所需数据的数据头进行比对,以获得所述所需数据的数据头所包含的字段名称含有所述当前数据的所述维度集和所述指标集所占的百分比,将该百分比作为相关性计算结果;以及信息素计算子模块,用于根据所述相关性计算结果,利用相关性与信息素的对应关系更新所述当前数据的信息素,其中,与所述所需数据的相关性越高的数据对应的信息素越高。

在优选的实施例中,所述第三数据处理单元330还包括:信息素全局更新模块334,用于在完成一次迭代,选择出信息素高于所述设定阈值的数据之后,基于所选择出的数据的信息素更新全局信息素表,并将更新后的全局信息素表应用于下次迭代;以及第二选择模块335,用于将相邻两次迭代得到的数据进行比较,选择出两者中信息素更高的数据,直到完成预定次数的迭代,以选择出最优数据。

在更为优选的实施例中,所述数据分析装置还包括:数据图谱建立单元(图中未示出),用于针对所述待分析数据建立数据图谱。其中,所述第三数据处理单元330还用于在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定蚂蚁初始放置位置及行走路径和/或确定应用数据处理的所述多个数据集。

本发明实施例的数据分析装置的具体实施细节及有益效果可参考上述关于数据分析方法的实施例,在此则不再赘述。

在其他实施例中,所述数据分析装置包括处理器和存储器,上述第一数据处理单元、第二数据处理单元、第三数据处理单元和数据图谱建立单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现对海量无规则数据的数据分析。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述的针对海量无规则数据的数据分析方法。

本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述的针对海量无规则数据的数据分析方法。

本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:确定待分析数据的维度集、与所述维度集相对应的指标集以及数据特征限制范围;根据所述待分析数据的所述维度集、所述指标集和所述数据特征限定范围,设置所述待分析数据中应用数据处理的多个数据集;以及采用所述蚁群算法对所述每一个数据集进行数据处理,使蚁群中的每只蚂蚁走完所述每一个数据集中的所有数据,以以从所述每一个数据集中选择出信息素高于设定阈值的数据,其中信息素越高的数据与预设的所需数据的相关性越高。处理器执行程序时还实现以下步骤:设置所述蚁群算法的初始化参数,其中所述初始化参数包括所述每一数据集中的数据编号、各数据的初始信息素、启发因子和期望因子,其中所述期望因子包括所述所需数据的信息;以及

使每只蚂蚁根据所述初始化参数选择数据以开始行走,根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率,并在每次发生数据转移时,计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素,直到所有蚂蚁走完所述每一个数据集中的所有数据,完成一次迭代,选择出信息素高于所述设定阈值的数据。处理器执行程序时还实现以下步骤:将所述当前数据对应的所述维度集和所述指标集与所述所需数据的数据头进行比对,以获得所述所需数据的数据头所包含的字段名称含有所述当前数据的所述维度集和所述指标集所占的百分比,将该百分比作为相关性计算结果;以及根据所述相关性计算结果,利用相关性与信息素的对应关系更新所述当前数据的信息素,其中,与所述所需数据的相关性越高的数据对应的信息素越高。处理器执行程序时还实现以下步骤:在完成一次迭代,选择出信息素高于所述设定阈值的数据之后,基于所选择出的数据的信息素更新全局信息素表,并将更新后的全局信息素表应用于下次迭代;以及将相邻两次迭代得到的数据进行比较,选择出两者中信息素更高的数据,直到完成预定次数的迭代,以选择出最优数据。处理器执行程度还实现以下步骤:针对所述待分析数据建立数据图谱;以及在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定应用数据处理的所述多个数据集;和/或在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定所述初始化参数。本文中的设备可以是服务器、pc、pad、手机等。

本发明实施例还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:

1)确定待分析数据的维度集、与所述维度集相对应的指标集以及数据特征限制范围;根据所述待分析数据的所述维度集、所述指标集和所述数据特征限定范围,设置所述待分析数据中应用数据处理的多个数据集;以及采用所述蚁群算法对所述每一个数据集进行数据处理,使蚁群中的每只蚂蚁走完所述每一个数据集中的所有数据,以从所述每一个数据集中选择出信息素高于设定阈值的数据,其中信息素越高的数据与预设的所需数据的相关性越高。

2)设置所述蚁群算法的初始化参数,其中所述初始化参数包括所述每一数据集中的数据编号、各数据的初始信息素、启发因子和期望因子,其中所述期望因子包括所述所需数据的信息;以及使每只蚂蚁根据所述初始化参数选择数据以开始行走,根据所述初始信息素及所述启发因子计算每只蚂蚁在行走中从当前数据转移至下个数据的概率,并在每次发生数据转移时,计算所述当前数据与所述所需数据之间的相关性,并根据相关性计算结果更新所述当前数据的信息素,直到所有蚂蚁走完所述每一个数据集中的所有数据,完成一次迭代,选择出信息素高于所述设定阈值的数据。

3)将所述当前数据对应的所述维度集和所述指标集与所述所需数据的数据头进行比对,以获得所述所需数据的数据头所包含的字段名称含有所述当前数据的所述维度集和所述指标集所占的百分比,将该百分比作为相关性计算结果;以及根据所述相关性计算结果,利用相关性与信息素的对应关系更新所述当前数据的信息素,其中,与所述所需数据的相关性越高的数据对应的信息素越高。

4)在完成一次迭代,选择出信息素高于所述设定阈值的数据之后,基于所选择出的数据的信息素更新全局信息素表,并将更新后的全局信息素表应用于下次迭代;以及将相邻两次迭代得到的数据进行比较,选择出两者中信息素更高的数据,直到完成预定次数的迭代,以选择出最优数据。

5)针对所述待分析数据建立数据图谱;以及在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定应用数据处理的所述多个数据集;和/或在采用所述蚁群算法对所述待分析数据进行数据处理时,参考所述数据图谱确定所述初始化参数。

本领域内的技术人员应明白,本发明实施例可提供为方法、系统、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本发明实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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