一种数据分类方法、系统和实现分类器的方法

文档序号:9708337阅读:224来源:国知局
一种数据分类方法、系统和实现分类器的方法
【技术领域】
[0001]本发明涉及数据挖掘,并且尤其涉及一种数据分类方法和系统和实现分类器的方法。
【背景技术】
[0002]传统数据挖掘技术中的数据分类所处理的目标数据通常是小规模数据集。基于小规模数据集产生的分类器的分类精度较小。针对大规模数据(大数据)的分类器在分类方面可以实现较高的分类精度,但这样的分类器在现有技术中未被实现。
[0003]因此,本发明的一个目标是利用大数据的信息资源实现分类精度较高、分类更合理的分类器、数据分类方法、系统。

【发明内容】

[0004]本发明公开以下技术方案。
[0005]一种数据分类方法,包括:
从数据集生成多组数据作为训练集合,其中为每组数据设定该组数据中各类数据的比例,并根据该比例从数据集中抽取相应类型的数据;
针对多组数据的每一组数据利用相应的训练算法产生相应的子分类器;
利用测试数据评估产生的多个子分类器,得到各子分类器的评估值;
以所述评估值作为权重值的依据,通过加权投票的方式将所述多个子分类器组合成分类器来分类数据。
[0006]一种数据分类系统,包括:
第一装置,用于从数据集生成多组数据作为训练集合,其中该装置被配置成为每组数据设定该组数据中各类数据的比例,并根据该比例从数据集中抽取相应类型的数据;
第二装置,用于针对多组数据的每一组数据利用相应的训练算法产生相应的子分类器;
第三装置,用于利用测试数据评估产生的多个子分类器,得到各子分类器的评估值;
第四装置,用于以所述评估值作为权重值的依据,通过加权投票的方式将所述多个子分类器组合成分类器来分类数据。
[0007]—种实现分类器的方法,该分类器由多个子分类器通过加权投票的方式组合得至IJ,其中,所述多个子分类器通过以下方式获得:
从数据集生成多组数据作为训练集合,其中为每组数据设定该组数据中各类数据的比例,并根据该比例从数据集中抽取相应类型的数据;针对多组数据的每一组数据利用相应的训练算法产生相应的子分类器。
[0008]通过本发明能够利用大数据资源的丰富信息量,并能够得到精度良好、分类更合理的分类器。本发明的技术方案还提高了数据分类效率。
【附图说明】
[0009]在参照附图阅读了本发明的【具体实施方式】以后,本领域技术人员将会更清楚地了解本发明的各个方面。本领域技术人员应当理解的是,这些附图仅仅用于配合【具体实施方式】说明本发明的技术方案,而并非意在对本发明的保护范围构成限制。
[0010]图1是根据本发明实施例的数据分类方法步骤示意图。
【具体实施方式】
[0011]下面参照附图,对本发明的【具体实施方式】作进一步的详细描述。在下面的描述中,为了解释的目的,陈述许多具体细节以便提供对实施例的一个或多个方面的透彻理解。
[0012]图1是根据本发明实施例的数据分类方法步骤示意图。
[0013]如图1所示,根据本发明实施例的数据分类方法包括:
步骤101:从数据集生成多组数据作为训练集合,其中为每组数据设定该组数据中各类数据的比例,并根据该比例从数据集中抽取相应类型的数据。每组数据中各类数据的比例可以不同。发明人注意到训练集合中各类数据的比例的选择会影响分类器精度,然后现有技术方案往往考虑寻求最佳的各类数据比例。本申请相反考虑了训练集合中各类数据比例的划分对要产生的分类器的影响,而枚举多种比例。在该步骤中,优选地,根据该比例以有放回抽取的方式从数据集中抽取相应类型的数据。有放回抽取是指下一次从数据集抽取部分数据之前,将上一次抽取的部分数据放回到该数据集中。
[0014]步骤102:针对多组数据的每一组数据利用相应的训练算法产生相应的子分类器。各组数据的训练相互独立,并且可以使用不同的训练算法。
[0015]步骤103:利用测试数据评估产生的多个子分类器,得到各子分类器的评估值,评估值例如可以是分类精度。测试数据可以从数据集中随机抽取得到。
[0016]步骤104:以所述评估值作为权重值的依据,通过加权投票的方式将所述多个子分类器组合成分类器来分类数据。
[0017]这样,为每种数据比例训练一个子分类器,再通过加权投票得到最终的分类器,更好地体现了各个比例的数据中所蕴含的信息。在实际的测试与应用中,这种多比例的组合分类器的分类效果好于在最佳类别比例下训练得到的分类器。投票的权重正比于子分类器的权重值。举例来说,三个子分类器的精度分别为90%、80%、70%,一项数据经三个子分类器分类的结果分别是A类、B类、B类,那么对于A类加权投票的值可以被计算为90,对于B类加权投票的值可以被计算为80+70=150,因此,最终的分类结果可以被确定为B类。可以理解,本领域技术人员可以使用其它加权投票算法。
[0018]优选地,当分类器的数量超过预定值时,将子分类器部署在分布式节点,否则将将各个子分类器在本地进行部署。
[0019]在另一个实施例中,在相应的分布式节点上生成所述多组数据的每一组,使得产生的所述多个子分类器被部署在多个分布式节点。还可以为每组数据设定该组数据的规模。在分布式节点的情况下,可以考虑节点的计算能力来为一组数据设定该组数据的规模。这里,规模可以是数据的条目数量。在该实施例中,可以实现本地机器无法单独完成的大规模数据的处理。在实施过程中,总的数据集合可以被集中存放于数据仓库之中,分布式系统中的各个计算节点分别从总的数据集合中抽取数据,各个计算节点独立地展开训练。可以理解,一个分布式节点可以生成一组
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1