数据清洗方法及装置的制作方法

文档序号:6338001阅读:506来源:国知局
专利名称:数据清洗方法及装置的制作方法
技术领域
本发明涉及通信领域,尤其涉及一种数据清洗方法及装置。
背景技术
随着计算机技术和通讯技术的飞速发展,人们可以获得越来越多的数字化信息, 但同时也需要投入更多的时间对信息进行组织和整理。为了减轻这种负担,人们开始研究 使用计算机对数据进行自动分类。在实际应用中,互联网和文本库提供了大量已被粗分类 的样本数据,但其存在数据分类错误等质量问题,因此,需要针对这些样本数据分类的正确 性进行清洗。目前,使用如下方法对数据分类正确性进行清洗将文本权重及其特征项权重交 互迭代,直到文本权重及其特征项权重趋于稳定停止迭代,并且,利用最终的迭代结果删除 低权重的文本。其中,每次迭代的具体操作如下fft(k+1) = (Amxn) tX Wf(k)fff(k+1) = AmXnXfft(k+1)其中,fft(k+1)是第k+1次迭代之后得到的特征项权重估计值的改进值,fff(k)和 fff(k+1)分别是第k次和第k+Ι次迭代之后得到的文本权重估计值的改进值,Amxn是特征项 频次矩阵,m是总的样本数,η是特征项数。在实现本发明的过程中,现有技术中至少存在如下问题在清洗多类别数据时需 要对每个粗分类类别的数据逐类别进行清洗,由于缺乏类别间的对比,因此,粗分类类别的 数据中可能保留类别区分有误的样本,这样会使最终的迭代结果不准确,从而降低数据分 类的准确性。

发明内容
本发明的实施例提供一种数据清洗方法及装置,能够提高数据分类的准确性。为达到上述目的,本发明的实施例采用如下技术方案一种数据清洗方法,包括获取经过粗分类的样本数据,将获取的样本数据作为第一数据集;对所述样本数据进行分类,获得所述样本数据的粗分类类别的权重,根据所述权 重确定所述样本数据的粗分类类别在所有类别中的排序位置;根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中样本 数据的总数量,获得综合评估结果;当根据所述综合评估结果确定需要对所述第一数据集进行清洗时,根据所述样本 数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位的样本数据。一种数据清洗装置,其特征在于,包括数据获取单元,用于获取经过粗分类的样本数据,将获取的样本数据作为第一数 据集;
分类排序单元,用于对所述数据获取单元获取的样本数据进行分类,获得所述样 本数据的粗分类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中 的排序位置;综合评估单元,用于根据所述样本数据的粗分类类别在所有类别中的排序位置和 第一数据集中样本数据的总数量,获得综合评估结果;数据清洗单元,用于当根据所述综合评估结果确定需要对所述第一数据集进行清 洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位 的样本数据。本发明实施例提供的数据清洗方法及装置,通过获取经过粗分类的样本数据,将 获取的样本数据作为第一数据集,对所述第一数据集的样本数据进行分类,获得所述样本 数据的粗分类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中的 排序位置,并根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中样 本数据的总数量,获得综合评估结果,当根据所述综合评估结果确定需要对所述第一数据 集进行清洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的 排在末位的样本数据。因此,可以同时进行多类别数据的清洗,即,每个类别的样本数据不 仅与该类别的样本数据作比较,还与所有其它类别的样本数据作比较,该类别的样本数据 在经过排序清洗后,同一类别内的样本方差减小,数据分类的准确性得到提高。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用 的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他 的附图。图1为本发明实施例提供的一种数据清洗方法的流程示意图;图2为本发明实施例提供的另一种数据清洗方法的流程示意图;图3为本发明实施例提供的一种数据清洗装置的构成示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。为了能够提高数据分类的准确性,本发明实施例提供一种数据清洗方法,如图1 所示,包括101、获取经过粗分类的样本数据,将获取的样本数据作为第一数据集;其中,所述“粗分类”是指样本数据库中录入时样本数据已经过粗略分类,例如,视 频样本数据被粗分类为喜剧、悲剧、爱情剧等,上述喜剧、悲剧、爱情剧即为相应样本数据的 粗分类类别。102、对所述第一数据集的各类别的样本数据进行分类,获得所述样本数据的粗分类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中的排序位置;举例而言,可以将所述第一数据集中的每个粗分类类别的样本数据分成η组,η为 大于等于2的正整数;将每个粗分类类别η组样本数据中的m组样本数据作为测试分类数 据,剩余的n-m组样本数据作为训练样本数据,m为大于等于1且小于η的正整数;通过分类 器根据所述训练样本数据对所述测试分类数据进行分类。其中,该分类器可以为Bayes(贝 叶斯)分类器、KNN分类器、SVM分类器或者类中心分类器等。当通过Bayes分类器根据所述训练样本数据对所述测试分类数据进行分类时,所 述样本数据的粗分类类别的权重由公式P(Ci/x) =P(X/Ci)*P(Ci)/P(X)计算得到。其中,
P ( Ci) = 的:1 练 t严 ° P(XZCi) =P(Xl/Ci)*P(x2/Ci)....P(xn/Ci),样本数据用 训练枰本;S、数
一个η维特征向量,即-X = 1x1,Χ2,...,χη},样本数据的粗分类类别共有m个类,分别用
nk +1
Cl,C2,...,Cm 表示。并且,当 P(XiIcj) = 0 时,将所述 P (Xi | Cj)采用 n + |Vocabulary| 进行
替代。其中,η为该类别中出现的特征的总数,nk代表特征力出现的次数,lVocabularyl为 第一数据集中特征的总数,而所述特征为代表所属类别的关键词。另外,当至少两个样本数据的粗分类类别在所有类别中的排序位置相同时,根据 所述粗分类类别的权重对排序位置相同的所述至少两个样本数据进行排序。103、根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中 样本数据的总数量,获得综合评估结果;104、当根据所述综合评估结果确定需要对所述第一数据集进行清洗时,根据所述 样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位的样本数据。举例而言,在确定所述综合评估结果小于第一阈值时,确定需要对所述样本数据 进行清洗。当所述综合评估结果大于第一阈值时,将所述第一数据集作为最终清洗结果。在对第一数据集的样本数据集进行清洗后,将清洗后剩余的样本数据作为第二数 据集。判断所述第二数据集与第一数据集中样本数据的数量比是否大于约定比例,如果是, 则对所述第二数据集继续进行清洗;如果否,则清洗失败,结束清洗。在对第二数据集继续进行清洗的过程中,可以在对第二数据集进行分类时,可以 采用与第一数据集相同的分类方式,并且,当采用与第一数据集相同的分类方式对第二数 据集进行处理时,判断第二数据集的综合评估结果是否大于第一阈值,如果是,则将所述第 二数据集作为最终清洗结果。或者,直接采用对第一数据集进行处理时获得的所述样本数 据的粗分类类别的权重和所述样本数据的粗分类类别在所有类别中的排序位置对所述第 二数据集进行清洗。当第二数据集的综合评估结果不大于第一阈值时,判断第二数据集的综合评估结 果与第一数据集的综合评估结果之差是否大于第二预设阈值,如果是,则对数据集继续进 行循环清洗;如果否,则判断清洗次数是否超过预设次数,如果未超过,则对第一数据集重 新进行清洗;如果超过,则退出清洗,对第一数据集的清洗失败。本实施例提供的数据清洗方法,通过获取经过粗分类的样本数据,将获取的样本 数据作为第一数据集,对所述第一数据集的样本数据进行分类,获得所述样本数据的粗分 类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中的排序位置,并根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中样本数据的 总数量,获得综合评估结果,当根据所述综合评估结果确定需要对所述第一数据集进行清 洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位 的样本数据,并循环进行上述清洗操作直至数据满足条件完成清洗。因此,可以同时进行多 类别数据的清洗,即,每个类别的样本数据不仅与该类别的样本数据作比较,还与所有其它 类别的样本数据作比较,该类别的样本数据在经过排序清洗后,同一类别内的样本方差减 小,数据分类的准确性得到提高。下面,以Bayes分类器对样本数据进行分类为例,对上一实施例做进一步详细具 体的描述。如图2所示,本实施例数据清洗方法,包括201、从原始训练数据库中按照粗分类类别分别读取经过粗分类的样本数据,将这 些样本数据合并,作为数据集A (即第一数据集);其中,所述原始训练数据库中存储有已被粗分类的原始的训练样本集,并向分类 器提供训练样本。例如,所述原始训练数据库可以为互联网或文本库等,进一步的样本数据 可以为文本或视频等,以视频为例,在原始训练数据库中,视频样本数据被粗分类为喜剧、 悲剧、爱情剧等,上述喜剧、悲剧、爱情剧即为相应样本数据的粗分类类别。202、将数据集A中每个粗分类类别的数据分别随机分成η组。例如,假设数据集A中存在χ个类别的数据,分别将类别a分成a. group 1,
a.group2,......,a. group (η), ^ 类 另ll b 分 成 b. group 1, b. group2,......,
b.group (η),......,将类另U χ 分成 χ. group 1, χ. group2,......, χ. group (η)。203、在每个粗分类类别的η组数据中轮换确定m组数据为测试分类数据,并确定 每个粗分类类别其余的n-m组数据为分类用的训练样本数据,通过Bayes分类器根据该训 练样本数据对测试分类数据进行分类,得到样本数据的粗分类类别的权重,进一步的可以 根据所述权重确定所述样本数据的粗分类类别在所有类别中的排序位置。在本实施例中,分类器包括bayes分类器,但不局限于该分类器,还可以使用其他 的分类器进行分类,例如KNN分类器、SVM分类器、类中心分类器等都可以用于数据清洗。 所述分类结果集中的每个样本数据都会有样本号、样本数据的粗分类类别、样本数据的粗 分类类别的权重、粗分类类别在所有类别中的排序位置等记录信息。其中,样本数据的粗分 类类别的权重、粗分类类别在所有类别中的排序位置是进行分类后所得到的分类结果集的 元素。例如,假设 m = 1,将 a. group 1, a. group2,......,a. group (n-1),b. group 1,
b. group2,......, b. group (n-1),......, x. group 1, x. group2,......, x. group (n-1)作
为训练样本数据,将a. group (η),b. group (η),......,χ. group (η)作为测试分类数据,根
据这些训练样本数据通过Bayes分类器对测试分类数据进行分类,得到分类结果1。m a. group 1,a. group2,......, a. group (n_2),a. group (η) , b. group 1,
b. group2,......, b. group (n_2), b. group (η),......, x. group 1, x. group2,......,
χ. group (n-2), x. group (n)作为训练、样本数据,>1 夺 a. group (n-1), b. group (n-1),......,
x. group (n-1)作为测试分类数据,根据这些训练样本数据通过Bayes分类器对测试分类数 据进行分类,得到分类结果2。
......^ a. group2,......,a. group (η),b. group2,......,b. group (η),......,
x. group2,......, χ. group (η)作为训练样本数据,将 a. group (1), b. group (1),......,
x. group (1)作为测试分类数据,根据这些训练样本数据通过Bayes分类器对测试分类数据 进行分类,得到分类结果η。将分类结果1,2,......,η合并,作为分类结果集1。Bayes分类器的Bayes分类法具体可以为假设样本数据用一个η维特征向量, 即X = {xl,x2,...,χη},样本数据总共有m个类,分别用C1,C2,...,Cm表示。给定一个 未知的样本数据X(即没有类标号),若Bayes分类法将未知的样本数据配给类Ci,则一定 是 P(Ci|X) > P(Cj|X),其中 j ^m, j Φ i。根据贝叶斯定理,由于P(X)对于所有类为常数,最大化后验概率P (Ci |X)可转化 为最大化先验概率P(XI Cl)P(Ci)。如果训练数据集有许多属性和元组,各属性的取值互相 独立,这样先验概率P (xl I Ci),P (x2 I Ci),. . .,P (xn | Ci)可以由训样本据集通过下述公式 求得。样本数据的粗分类类别的权重P (Ci/X) = P (X/Ci) *P (Ci) /P (X)at Γ (ο-Α类别的训练样本数其中,P(Μ— 训练样本总数°xl... xn为独立的事件,则P (X/Ci) = P (xl/Ci) *P (x2/Ci) · · · · P (xn/Ci)由于P(X)对于所有的分类均常数,因此P(Ci/X)和P(X/Ci)*P(Ci)成正比,即 P (Ci/X)的大小依赖于 P (Ci)和 P (xl/Ci) · · P (xn/Ci)。在实际的分类过程中,为了避免出现P(XiICj) =0的情况,对P (Xi I Cj)采用下式进
nk +1
行替代=I^lVoeabuIaryI。其中η为该类别中出现的特征的总数,nk代表特征力出现的次数。
!Vocabulary为第一数据集中特征的总数。所述特征为代表所属类别的关键词。用以上所述的方法求得样本数据的粗分类类别的权重后,根据求得的权重确定样 本数据的粗分类类别在所有类别中的排序位置。例如,将样本数据按照其粗分类类别在所 有类别中的位置进行排序,当至少两个样本数据的粗分类类别在所有类别中的排序位置相 同时,根据所述粗分类类别的权重对排序位置相同的该至少两个样本数据进行排序。204、对分类结果集1进行综合评估,根据所述样本数据的粗分类类别在所有类别 中的排序位置和第一数据集中样本数据的总数量,得到综合评估结果R1。具体可以为,根据分类结果集中的样本数据的粗分类类别在所有类别中的排序位 置和第一数据集中样本数据的总数量,获得综合评估结果Rl
R1=样本数据归属粗分类类别的数量和 数据集A的样本数据的总数量
综合评估结果用于表示样本数据粗分类的正确率。其中,样本归属粗分类类别根据样本数据的粗分类类别在所有类别中的排序位置确定。可以定义当粗分类类别的排序位 置在预定位次之前时,则认为样本数据归属粗分类类别。例如,以视频样本数据为例,类别 包括喜剧、悲剧、爱情剧、科幻剧等10个分类,预定位次为第3位,其中,样本数据的粗分类 类别为喜剧,经过步骤203的分类计算后获得的排序位置为第3位,排在爱情剧、科幻剧之 后,则可以确定粗分类类别在预定的第3位次,符合要求,认为该粗分类类别较为准确,因 此,确定该样本数据归属所述粗分类类别。205、判断综合评估结果Rl是否小于阈值a (即为第一阈值),若Rl >阈值a,则确 定不需要对数据集A进行清洗,进入步骤206,若Rl < =阈值a,则确定需要对数据集A进 行清洗,进入步骤207 ;其中,所述阈值a为预先设置好的,用于表示可接受的分类准确率,可以根据对样 本数据分类准确率的要求高低进行灵活设定。206、退出清洗流程,将数据集A作为最终清洗结果,将数据集A存入目标数据库 中。207、根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的 排在末位的样本数据。将剩余的样本数据作为数据集B (即第二数据集)。208、判断数据集B的样本数据总数占从原始训练数据库中读取的数据集A中的样 本数据总数的比例,即数据集B与数据集A中样本数据的数量比是否大于约定比例。若数 据集B与数据集A中样本数据的数量比大于约定比例,则确定数据集B中还有足够的样本 数据,数据集B为可以用来对清洗效果进行评测的合格数据集,进入步骤209。否则,确定数 据集B中的样本数据总数过少,其为不能用来对清洗效果进行评测的不合格数据集,则进 入步骤216。209、将数据集B中每个类别的数据分别随机分成η组。本步骤的具体实现方式可参见步骤202,在此不再赘述。另外,也可以采用与数据集A相同的分类方式对数据集B进行分类处理。210、在数据集B的每个类别的η组数据中,轮换确定m组数据为测试分类数据,并 确定每个类别其余的n-m组数据为分类用的训练样本数据,通过Bayes分类器根据该训练 样本数据对测试分类数据进行分类,得到分类结果集2。本步骤的具体实现方式可参见步骤203,在此不再赘述。211、对分类结果集2进行综合评估,得到综合评估结果R2。例如,根据分类结果集2获取数据集B的样本数据归属粗分类类别的数量,并将综 合评估结果R2定义为样本数据归属粗分类类别的概率。212、判断综合评估结果R2是否小于阈值a,若R2 >阈值a,则确定不需要对数据 集B进行清洗,进入步骤213,若R2 <阈值a,则确定需要对数据集B进行清洗,进入步骤 214 ;213、退出清洗流程,将数据集B作为最终清洗结果,将数据集B存入目标数据库 中。214、判断综合评估结果R2和Rl之差是否大于阈值b (即为第二阈值)。若R2-R1 < =阈值b,则数据集B的分类效果没有提高,进入步骤215中。若R2-R1 >阈值b,则确定 B的分类效果有提高,则继续对数据集B进行清洗,将数据集B作为数据集A,返回步骤201进行清洗处理。另外,也可以在确定需要继续对数据集B进行清洗时,直接从当前的分类结果中 获知粗分类类别在所有类别中的排序位置和粗分类类别的权重,然后根据粗分类类别在所 有类别中的排序位置对样本数据进行排序,并且,在至少两个样本数据的粗分类类别在所 有类别中的排序位置相同时,根据粗分类类别的权重对这些样本数据进行排序,删除规定 数量的排在末位的样本数据。215、判断对数据集A中的样本数据进行清洗的总次数是否超过规定次数K。若清 洗的总次数超过规定次数K,则确定对数据集A的样本数据已经进行过多次清洗,但每次清 洗后的数据集的分类效果都没有提高,进入步骤216。若清洗的总次数未超过规定次数K, 则可能由于对A的随机分组不当造成,对数据集A重新开始清洗流程。216、退出清洗流程,对数据集A的清洗操作失败。在本实施例中,配置了三个清洗判断条件,即判断综合评估结果是否小于规定的 阈值,判断当前的数据集的样本数据总数占从原始训练数据库中读取的样本数据总数的比 例是否大于约定比例,判断当前计算出的综合评估结果和前一次得到的综合评估结果之差 是否大于规定的阈值。当然,也可以继续增加或者替换清洗判断条件。这些清洗判断条件 可以通过配置文件进行配置。本实施例提供的数据清洗方法,通过获取经过粗分类的样本数据,将获取的样本 数据作为第一数据集,对所述第一数据集的样本数据进行分类,获得所述样本数据的粗分 类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中的排序位置, 并根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中样本数据的 总数量,获得综合评估结果,当根据所述综合评估结果确定需要对所述第一数据集进行清 洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位 的样本数据,并循环进行上述清洗操作直至数据满足条件完成清洗。因此,可以同时进行多 类别数据的清洗,即,每个类别的样本数据不仅与该类别的样本数据作比较,还与所有其它 类别的样本数据作比较,该类别的样本数据在经过排序清洗后,同一类别内的样本方差减 小,数据分类的准确性得到提高。并且,通过在迭代过程中逐步从读取的数据集中删除不符 合清洗判断规则的文本,对训练数据进行清洗,进而可以提高数据特征提取的准确性,从而 可以进一步提高数据分类的准确性。与上述方法相对应地,本发明实施例还提供了一种数据清洗装置,如图3所示,包 括数据获取单元301,获取经过粗分类的样本数据,将获取的样本数据作为第一数据 集;分类排序单元302,用于对所述数据获取单元301获取的样本数据进行分类,获得 所述样本数据的粗分类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有 类别中的排序位置;综合评估单元303,用于根据所述样本数据的粗分类类别在所有类别中的排序位 置和第一数据集中样本数据的总数量,获得综合评估结果;数据清洗单元304,用于当根据所述综合评估单元303获得的综合评估结果确定 需要对所述第一数据集进行清洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位的样本数据。进一步地,所述分类排序单元302具体包括数据分组子单元,用于将所述第一数据集中的每个粗分类类别的样本数据分成η 组,η为大于等于2的正整数;数据确定子单元,用于将每个粗分类类别η组样本数据中的m组样本数据作为测 试分类数据,剩余的n-m组样本数据作为训练样本数据,m为大于等于1且小于η的正整数;数据分类子单元,用于通过分类器根据所述训练样本数据对所述测试分类数据进 行分类;权重获取子单元,用于获得所述样本数据的粗分类类别的权重;数据排序子单元,用于根据所述权重确定所述样本数据的粗分类类别在所有类别 中的排序位置。进一步地,所述分类器包括Bayes分类器、KNN分类器、SVM分类器或类中心分类
ο进一步地,当通过Bayes分类器根据所述训练样本数据对所述测试分类数据进行 分类时,所述权重获取子单元,具体用于根据公式P(Ci/X) =P(X/Ci)*P(Ci)/P(X)获取所
述样本数据的粗分类类别的权重,其中,P (Ci) = C,n练 "^数 ,P(x/Ci)=
训练枰本;S、数
P(Xl/Ci)*P(X2/Ci)....P(Xri/Ci),样本数据用一个 η 维特征向量,即=X = {xl,χ2,..., xn},样本数据的粗分类类别共有m个类,分别用Cl,C2,. . .,Cm表示。进一步地,所述数据排序子单元,具体用于当至少两个样本数据的粗分类类别在 所有类别中的排序位置相同时,根据所述粗分类类别的权重对排序位置相同的所述至少两 个样本数据进行排序。进一步地,所述数据清洗单元304包括清洗判断子单元,用于当确定所述综合评估结果不大于第一阈值时,确定需要对 所述样本数据进行清洗;当确定所述综合评估结果大于第一阈值时,将所述第一数据集作 为最终清洗结果;数据删除子单元,用于当所述清洗判断子单元确定需要对所述第一数据集进行清 洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位 的样本数据。进一步地,所述数据获取单元,还用于将清洗后剩余的样本数据作为第二数据集, 判断所述第二数据集与第一数据集中样本数据的数量比是否大于约定比例,如果是,则将 所述第二数据集作为继续清洗的对象;如果否,则清洗失败,结束清洗;所述数据清洗单元,还用于直接采用对第一数据集进行处理时获得的所述样本数 据的粗分类类别的权重和所述样本数据的粗分类类别在所有类别中的排序位置对所述第 二数据集进行清洗。进一步地,所述数据获取单元,还用于将清洗后剩余的样本数据作为第二数据集, 判断所述第二数据集与第一数据集中样本数据的数量比是否大于约定比例,如果是,则将 所述第二数据集作为继续清洗的对象;如果否,则清洗失败,结束清洗;在确定第二数据集 的综合评估结果不大于第一阈值,且第二数据集的综合评估结果与第一数据集的综合评估结果之差不大于第二预设阈值,且清洗次数未超过预设次数时,将第一数据集作为重新进 行清洗的对象;在确定第二数据集的综合评估结果不大于第一阈值,且第二数据集的综合 评估结果与第一数据集的综合评估结果之差不大于第二预设阈值,且清洗次数超过预设次 数时,对第一数据集的清洗失败,结束清洗;所述分类排序单元,还用于所述第二数据集的分类方式采用与第一数据集相同的 分类方式,获得所述第二数据集的样本数据的粗分类类别的权重,根据所述权重确定所述 第二数据集的样本数据的粗分类类别在所有类别中的排序位置;所述综合评估单元,还用于根据所述第二数据集的样本数据的粗分类类别在所有 类别中的排序位置和第二数据集中样本数据的总数量,获得综合评估结果;所述数据清洗单元,还用于在确定第二数据集的综合评估结果大于第一阈值时, 将所述第二数据集作为最终清洗结果;在确定第二数据集的综合评估结果不大于第一阈 值,且第二数据集的综合评估结果与第一数据集的综合评估结果之差大于第二预设阈值 时,根据第二数据集的样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排 在末位的样本数据。本实施例数据清洗装置的工作方法可参考图1和图2所示的实施例。本实施例提供的数据清洗装置,通过获取经过粗分类的样本数据,将获取的样本 数据作为第一数据集,对所述第一数据集的样本数据进行分类,获得所述样本数据的粗分 类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中的排序位置, 并根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中样本数据的 总数量,获得综合评估结果,当根据所述综合评估结果确定需要对所述第一数据集进行清 洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位 的样本数据,并循环进行上述清洗操作直至数据满足条件完成清洗。因此,可以同时进行多 类别数据的清洗,即,每个类别的样本数据不仅与该类别的样本数据作比较,还与所有其它 类别的样本数据作比较,该类别的样本数据在经过排序清洗后,同一类别内的样本方差减 小,数据分类的准确性得到提高。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵 盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
1.一种数据清洗方法,其特征在于,包括获取经过粗分类的样本数据,将获取的样本数据作为第一数据集; 对所述样本数据进行分类,获得所述样本数据的粗分类类别的权重,根据所述权重确 定所述样本数据的粗分类类别在所有类别中的排序位置;根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中样本数据 的总数量,获得综合评估结果;当根据所述综合评估结果确定需要对所述第一数据集进行清洗时,根据所述样本数据 的粗分类类别在所有类别中的排序位置删除规定数量的排在末位的样本数据。
2.根据权利要求1所述的数据清洗方法,其特征在于,根据所述综合评估结果确定需 要对所述第一数据集进行清洗包括当所述综合评估结果不大于第一阈值时,即为需要对所述第一数据集进行清洗,当所 述综合评估结果大于第一阈值时,将所述第一数据集作为最终清洗结果。
3.根据权利要求1或2所述的数据清洗方法,其特征在于,还包括 将清洗后剩余的样本数据作为第二数据集;判断所述第二数据集与第一数据集中样本数据的数量比是否大于约定比例,如果是, 则对所述第二数据集继续进行清洗;如果否,则清洗失败,结束清洗。
4.根据权利要求1所述的数据清洗方法,其特征在于,所述对所述样本数据进行分类 包括将所述第一数据集中的每个粗分类类别的样本数据分成η组,η为大于等于2的正整数;将每个粗分类类别η组样本数据中的m组样本数据作为测试分类数据,剩余的n-m组 样本数据作为训练样本数据,m为大于等于1且小于η的正整数;通过分类器根据所述训练样本数据对所述测试分类数据进行分类。
5.根据权利要求4所述的数据清洗方法,其特征在于,所述分类器包括Bayes分类器、KNN分类器、SVM分类器或类中心分类器。
6.根据权利要求5所述的数据清洗方法,其特征在于,当通过Bayes分类器根据所述训 练样本数据对所述测试分类数据进行分类时,所述样本数据的粗分类类别的权重由下述公 式计算得到P(Ci/X) = P(X/Ci)*P(Ci)/P(X)甘出ρ μ、_ Ci类别的训练样本数 其中,(Clj= 训练样本总数 °
7.根据权利要求6所述的数据清洗方法,其特征在于, P(X/Ci) = P(xl/Ci)*P(x2/Ci) · · · · P(xn/Ci)其中,样本数据用一个η维特征向量,S卩X= {xl,x2,...,xn},样本数据的粗分类类 别共有m个类,分别用C1,C2,...,Cm表示。
8.根据权利要求7所述的数据清洗方法,其特征在于, 当P (x, I Cj) = 0时,将所述P (Xi I Cj)采用下式进行替代其中,η为该类别中出现的特征的总数,nk代表特征Wi出现的次数,!Vocabulary为第 一数据集中特征的总数;所述特征为代表所属类别的关键词。
9.根据权利要求3所述的数据清洗的方法,其特征在于,所述对所述第二数据集继续 进行清洗的方法包括采用与第一数据集相同的分类方式;或,直接采用对第一数据集进行处理时获得的所述样本数据的粗分类类别的权重和所述 样本数据的粗分类类别在所有类别中的排序位置对所述第二数据集进行清洗。
10.根据权利要求3或9所述的数据清洗的方法,其特征在于,当采用与第一数据集相同的分类方式对第二数据集进行处理时,判断第二数据集的综 合评估结果是否大于第一阈值,如果是,则将所述第二数据集作为最终清洗结果。
11.根据权利要求10所述的数据清洗方法,其特征在于,当第二数据集的综合评估结 果不大于第一阈值时,判断第二数据集的综合评估结果与第一数据集的综合评估结果之差 是否大于第二预设阈值,如果是,则对数据集继续进行循环清洗;如果否,则判断清洗次数 是否超过预设次数,如果未超过,则对第一数据集重新进行清洗;如果超过,则退出清洗,对 第一数据集的清洗失败。
12.根据权利要求1所述的数据清洗的方法,其特征在于,所述根据所述样本数据的粗 分类类别在所有类别中的排序位置删除规定数量的排在末位的样本数据还包括当至少两个样本数据的粗分类类别在所有类别中的排序位置相同时,根据所述粗分类 类别的权重对排序位置相同的所述至少两个样本数据进行排序。
13.一种数据清洗装置,其特征在于,包括数据获取单元,用于获取经过粗分类的样本数据,将获取的样本数据作为第一数据集;分类排序单元,用于对所述数据获取单元获取的样本数据进行分类,获得所述样本数 据的粗分类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中的排 序位置;综合评估单元,用于根据所述样本数据的粗分类类别在所有类别中的排序位置和第一 数据集中样本数据的总数量,获得综合评估结果;数据清洗单元,用于当根据所述综合评估单元获得的综合评估结果确定需要对所述第 一数据集进行清洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定 数量的排在末位的样本数据。
14.根据权利要求13所述的数据清洗装置,其特征在于,所述分类排序单元包括数据分组子单元,用于将所述第一数据集中的每个粗分类类别的样本数据分成η组,η 为大于等于2的正整数;数据确定子单元,用于将每个粗分类类别η组样本数据中的m组样本数据作为测试分 类数据,剩余的n-m组样本数据作为训练样本数据,m为大于等于1且小于η的正整数; 数据分类子单元,用于通过分类器根据所述训练样本数据对所述测试分类数据进行分类;权重获取子单元,用于获得所述样本数据的粗分类类别的权重;数据排序子单元,用于根据所述权重确定所述样本数据的粗分类类别在所有类别中的 排序位置。
15.根据权利要求14所述的数据清洗装置,其特征在于,所述分类器包括Bayes分类 器、KNN分类器、SVM分类器或类中心分类器。
16.根据权利要求15所述的数据清洗装置,其特征在于,当通过Bayes分类器根据 所述训练样本数据对所述测试分类数据进行分类时,所述权重获取子单元,具体用于根 据公式P(Ci/X) =P(X/Ci)*P(Ci)/P(X)获取所述样本数据的粗分类类别的权重,其中,P (Ci) =练 tf数,P /Ci) = P (xl/Ci) *P (x2/Ci) ....P (xn/Ci),样本数据用训练枰本,S·数一个η维特征向量,即-X = 1x1,Χ2,...,χη},样本数据的粗分类类别共有m个类,分别用 Cl j C2 j ... j Cm 表不。
17.根据权利要求14所述的数据清洗装置,其特征在于,所述数据排序子单元,具体用 于当至少两个样本数据的粗分类类别在所有类别中的排序位置相同时,根据所述粗分类类 别的权重对排序位置相同的所述至少两个样本数据进行排序。
18.根据权利要求13所述的数据清洗装置,其特征在于,所述数据清洗单元包括清洗判断子单元,用于当确定所述综合评估结果不大于第一阈值时,确定需要对所述 样本数据进行清洗;当确定所述综合评估结果大于第一阈值时,将所述第一数据集作为最 终清洗结果;数据删除子单元,用于当所述清洗判断子单元确定需要对所述第一数据集进行清洗 时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位的 样本数据。
19.根据权利要求13-18任一所述的数据清洗装置,其特征在于,所述数据获取单元, 还用于将清洗后剩余的样本数据作为第二数据集,判断所述第二数据集与第一数据集中样 本数据的数量比是否大于约定比例,如果是,则将所述第二数据集作为继续清洗的对象;如 果否,则清洗失败,结束清洗;所述数据清洗单元,还用于直接采用对第一数据集进行处理时获得的所述样本数据的 粗分类类别的权重和所述样本数据的粗分类类别在所有类别中的排序位置对所述第二数 据集进行清洗。
20.根据权利要求13-18任一所述的数据清洗装置,其特征在于,所述数据获取单元, 还用于将清洗后剩余的样本数据作为第二数据集,判断所述第二数据集与第一数据集中样 本数据的数量比是否大于约定比例,如果是,则将所述第二数据集作为继续清洗的对象;如 果否,则清洗失败,结束清洗;在确定第二数据集的综合评估结果不大于第一阈值,且第二 数据集的综合评估结果与第一数据集的综合评估结果之差不大于第二预设阈值,且清洗次 数未超过预设次数时,将第一数据集作为重新进行清洗的对象;在确定第二数据集的综合 评估结果不大于第一阈值,且第二数据集的综合评估结果与第一数据集的综合评估结果之 差不大于第二预设阈值,且清洗次数超过预设次数时,对第一数据集的清洗失败,结束清 洗;所述分类排序单元,还用于所述第二数据集的分类方式采用与第一数据集相同的分类 方式,获得所述第二数据集的样本数据的粗分类类别的权重,根据所述权重确定所述第二数据集的样本数据的粗分类类别在所有类别中的排序位置;所述综合评估单元,还用于根据所述第二数据集的样本数据的粗分类类别在所有类别 中的排序位置和第二数据集中样本数据的总数量,获得综合评估结果;所述数据清洗单元,还用于在确定第二数据集的综合评估结果大于第一阈值时,将所 述第二数据集作为最终清洗结果;在确定第二数据集的综合评估结果不大于第一阈值,且 第二数据集的综合评估结果与第一数据集的综合评估结果之差大于第二预设阈值时,根据 第二数据集的样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位 的样本数据。
全文摘要
本发明实施例公开了一种数据清洗方法及装置,涉及通信领域。为了能够提高数据分类的准确性,本发明提供的技术方案如下获取经过粗分类的样本数据,将获取的样本数据作为第一数据集;对所述样本数据进行分类,获得所述样本数据的粗分类类别的权重,根据所述权重确定所述样本数据的粗分类类别在所有类别中的排序位置;根据所述样本数据的粗分类类别在所有类别中的排序位置和第一数据集中样本数据的总数量,获得综合评估结果;当根据所述综合评估结果确定需要对所述第一数据集进行清洗时,根据所述样本数据的粗分类类别在所有类别中的排序位置删除规定数量的排在末位的样本数据。本发明适用于数据分类处理。
文档编号G06F17/30GK102135979SQ201010578479
公开日2011年7月27日 申请日期2010年12月8日 优先权日2010年12月8日
发明者吴向阳, 王静毅, 荀鹏 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1