数据离散化的方法及装置与流程

文档序号:12366517阅读:275来源:国知局
数据离散化的方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种数据离散化方法及装置。



背景技术:

数据离散化是一个将连续的特征转换成定类数据(nominal data)或有序数据的过程。将连续数值的值域划分成多个小区间,每个区间代表了一个有序数值或者定类数据。将定类数据用于分类器(classifier)中,则每个区间可表示一种类别,对应相应的类别标识,将该分类器应用到数据分析应用中,则可根据历史数据或用户输入的数据进行分类。

例如,在一个在线广告推广应用中,历史数据构成的样本数据中对点击用户的属性进行了统计,其中在年龄项下,则可能包含8岁至60岁的所有年龄。而在查找与用户属性匹配的在线广告时,往往是将用户属性的年龄与在线广告对应的年龄段进行匹配,则需要预先对在线广告对应的8岁至60岁的所有年龄数据进行离散化处理,若经过离散化处理得到了8至16、16至30、30至49、49至60这4个区间,则该在线广告对应的年龄属性被离散化为了4个定类数据,分别对应少年,青年,中年,老年四个类别标识。当待推送的用户的年龄为24时,则可在数据库中查找所有对应的年龄段为青年的在线广告进行筛选。

现有的离散化算法有多种多样,较常见的包括FUSINTER、ChiMerge、CAIM、Chi2等。其中FUSINTER、ChiMerge和Modified Chi2都是合并式离散化算法,从一个预定的离散化模式开始,逐步地通过删除候选断点来合并两个相邻的子区间,直到满足某一终止条件。CAIM是分割式离散化算法,从整个特征值域开始,逐步地通过添加分割点来将一个区间划分为两个子区间,直至满足停止条件。合并式离散化算法普遍表现好于分割式离散化算法,但其计算复杂度远高于分割式算法。

传统技术中的离散化算法通常基于量化矩阵进行推演,在推演过程中,每 将两两相邻的取值区间合并,则重新计算一次区分度,然后再重新生成量化矩阵,如此反复,因此计算复杂度较高,导致执行效率较低下。



技术实现要素:

基于此,为解决上述提到的传统技术中的数据离散化方法执行效率较低的技术问题,提供了一种数据离散化方法。

一种数据离散化方法,包括:

接收输入的有序排列的样本集,获取预设的有序排列的初始离散格式;

获取预设的类别集合,遍历所述获取到的类别集合中的类别值,获取所述样本集在遍历到的类别值下的在所述初始离散格式中的起始阈值到每个阈值的积分区间的第一样本数,生成积分矩阵;

迭代获取所述初始离散格式中的阈值集合的子集,查找所述遍历到的子集中的两两相邻的阈值构成的取值区间,根据所述积分矩阵获取所述每个查找到的取值区间对应的在每个类别值下的第二样本数和在所有类别值下的第三样本数,根据积分矩阵、所述取值区间对应的第二样本数和第三样本数以及所述类别集合计算所述遍历到的子集对应的区分度;

查找区分度最大的子集,将所述查找到的区分度最大的子集作为目标离散格式输出。

此外,为解决上述提到的传统技术中的数据离散化方法执行效率较低的技术问题,提供了一种数据离散化装置。

一种数据离散化装置,包括:

样本集输入模块,用于接收输入的有序排列的样本集,获取预设的有序排列的初始离散格式;

积分矩阵生成模块,用于获取预设的类别集合,遍历所述获取到的类别集合中的类别值,获取所述样本集在遍历到的类别值下的在所述初始离散格式中的起始阈值到每个阈值的积分区间的第一样本数,生成积分矩阵;

迭代计算模块,用于迭代获取所述初始离散格式中的阈值集合的子集,查找所述遍历到的子集中的两两相邻的阈值构成的取值区间,根据所述积分矩阵获取所述每个查找到的取值区间对应的在每个类别值下的第二样本数和在所有 类别值下的第三样本数,根据积分矩阵、所述取值区间对应的第二样本数和第三样本数以及所述类别集合计算所述遍历到的子集对应的区分度;

目标离散格式输出模块,用于查找区分度最大的子集,将所述查找到的区分度最大的子集作为目标离散格式输出。

实施本发明实施例,将具有如下有益效果:

采用了上述数据离散化方法及装置之后,整个对数据处理的过程中,仅需要初始进行统计,生成积分矩阵,即可根据积分矩阵进行迭代计算每一种可能的合并方式对应的区分度。而在传统技术中通过量化矩阵进行迭代的方案中,则需要在每次移除了初始阈值序列中的部分阈值,在即合并了部分取值区间之后,重新统计样本集在目标阈值序列划分的各个取值区间中的样本数,即在每次迭代过程中均需要重新生成量化矩阵。因此,和传统技术相比,该数据离散化方法的计算量较小,从而执行效率更高。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

其中:

图1为一个实施例中一种数据离散化方法的流程图;

图2为一个实施例中一种数据离散化装置的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

传统技术中的数据离散化方法在迭代过程中采用的量化矩阵如表1所示,其中,阈值序列D将有序排列的样本集的值域划分成n个有界区间D={[d0,d1],(d1,d2],…,(dn-1,dn]},Ci为统计维度的多个类别值,qir即为样本集在类别值为Ci且取值区间为(di,di+1]中的样本数。M+r即为q1r到qsr的样本数的和,Mi+即为qi1到qin的和。

表1

传统技术中的迭代推演过程为依次合并取值区间(如表1中,[d0,d1]和(d1,d2]可以合并为[d0,d2]),然后找出通过合并后,评价值最大的阈值序列D,该阈值序列D即为最终离散化生成的离散格式(即discretization scheme)。

传统技术中计算评价值的方案有多种,例如,在FUSINTER方案中,使用下述公式:

计算评价值。其中,α和λ为预设的参数值。即在遍历各种离散格式的过程中,根据量化矩阵中统计的qir等样本数计算评价值。

再例如,在CAIM方案中,根据公式:

<mrow> <mi>CAIM</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>C</mi> <mo>,</mo> <mi>D</mi> <mo>|</mo> <mi>F</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>r</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mfrac> <mrow> <munder> <mi>max</mi> <mi>i</mi> </munder> <msubsup> <mi>q</mi> <mi>ir</mi> <mn>2</mn> </msubsup> </mrow> <msub> <mi>M</mi> <mrow> <mo>+</mo> <mi>r</mi> </mrow> </msub> </mfrac> </mrow> <mi>n</mi> </mfrac> </mrow>

计算评价值。

也就是说,若在某次迭代过程中,将[d0,d1]和(d1,d2]合并为[d0,d2],则需要 重新生成量化矩阵,即重新统计在新生成的量化矩阵中的qir等样本数,方可进行评价值的计算工作,由此可看出,传统技术中的数据离散化算法将花费大量时间用于生成量化矩阵,从而导致数据离散化的执行效率降低。

为解决上述提到的传统技术中的数据离散化方法执行效率较低的技术问题,在一个实施例中,特提出了一种数据离散化方法,该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的计算机系统上。该计算机系统可以是用于数据统计和分析的服务器设备,例如,运行在线广告推广应用、求职网站、社交网络应用、企业数据管理应用、网站运维程序等需要对大量数据进行分类统计的程序的服务器设备。

具体的,如图1所示,该方法包括:

步骤S102:接收输入的有序排列的样本集,获取预设的有序排列的初始离散格式。

在本实施例中,有序排列的样本集可以是连续的值域(例如:实数集)也可以是离散的值域(例如:正整数集合)。样本数

初始离散格式即为初始的按照相同的顺序排列的阈值序列,阈值序列中包含有与样本集按照相同顺序排列的多个阈值,该多个阈值可将样本集划分为多个取值区间。

初始离散格式可自定义,也可根据样本集自动生成。例如,可以通过计算有序排列的样本集中两个相邻数据的平均值得到有序排列的初始离散格式。若样本集为{f1,f2,…,fn},其中,f1,f2,…,fn为有序排列的离散数据,则得到的初始离散格式可以是{-∞,(f1+f2)/2,…,(fn-1+fn)/2,+∞}。,也可不限于相邻两个离散数据的平均值,可以是相邻两个离散数据之间的任意值均可,用于区分样本集中最小维度的取值区间。

进一步的,在上例中,可将取值相等的离散数据对应的初始离散格式中的阈值合并,例如,若f1=f2,则移除初始离散格式中的阈值(f1+f2)/2,从而减少了初始离散格式中的阈值数量,减少了计算量,提高了执行效率。

步骤S104:获取预设的类别集合,遍历所述获取到的类别集合中的类别值,获取所述样本集在遍历到的类别值下的在所述初始离散格式中的起始阈值到每 个阈值的积分区间的第一样本数,生成积分矩阵。

生成的积分矩阵可如表2所示:

表2

其中,{B0,B1,…,Bp}即为初始离散格式中的各个阈值,且B0为起始阈值,{C1,C2,…,Ci,…,Cs}为类别集合,Ci为类别值。aij为类别值Ci下的大于起始阈值B0且小于或等于Bj的第一样本数。mj为a1j到asj的和,mi+为ai1到aip的和。m为样本集的总样本数。

由于aij表示的并不是由两两相邻的Bj和Bj+1将样本集划分的单个取值区间中包含的样本数,而是从起始阈值B0到Bj的连续的多个两两相邻的取值区间包含的样本数的和,也就是说第一样本数是一个积分值而不是初始离散格式将样本集划分后的每个取值区间的统计值,因此,该逻辑上的矩阵为积分矩阵。

需要说明的是,若样本集为连续的值域,则aij为积分得到的面积值。

步骤S106,迭代获取初始离散格式中的阈值集合的子集,查找所述遍历到的子集中的两两相邻的阈值构成的取值区间,根据所述积分矩阵获取所述每个查找到的取值区间对应的在每个类别值下的第二样本数和在所有类别值下的第三样本数,根据积分矩阵、所述取值区间对应的第二样本数和第三样本数以及所述类别集合计算所述遍历到的子集对应的区分度。

如前例中,若初始离散格式为{B0,B1,…,Bp},若在某次迭代过程中,取出的子集为{B0,B1,…,Bp}-{B1,B7},即意味着[B0,B1)和[B1,B2)进行了合并,并且[B6,B7)和[B7,B8)进行了合并。也就是说,对于子集{B0,B1,…,Bp}-{B1,B7}而言,取值区间相对于初始离散格式划分的p-1个取值区间,通过合并变化为p-3个取值 区间。对于该p-3个取值区间中各自在某一类别值下对应的第二样本数,则可根据前述的积分矩阵和公式:

<mrow> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mo>=</mo> <msub> <mi>a</mi> <mrow> <mi>iR</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow> </msub> <mo>-</mo> <msub> <mi>a</mi> <mrow> <mi>iL</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow> </msub> </mrow>

计算得到。

其中,t为遍历到的第t个子集,rt为该子集的中的两两相邻的阈值构成的第rt个取值区间,i为第i个类别值,R(rt)为第rt个取值区间的右端的阈值在所述初始离散格式中的编号,L(rt)为第rt个取值区间的右端的阈值在所述初始离散格式中的编号,为所述积分矩阵中在第i个类别值与编号为R(rt)的阈值对应的第一样本数,为第rt个取值区间在第i个类别值下的第二样本数。

如前例中,对于[B0,B1)和[B1,B2)合并后的取值区间,其右端的阈值在所述初始离散格式中的编号为2,其左端的阈值在所述初始离散格式中的编号为0,也就是说,其在第i个类别值下的第二样本数即为:

<mrow> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mo>=</mo> <msub> <mi>a</mi> <mrow> <mi>i</mi> <mn>2</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>a</mi> <mrow> <mi>i</mi> <mn>0</mn> </mrow> </msub> </mrow>

再例如,对于[B6,B7)和[B7,B8)合并后的取值区间,其右端的阈值在所述初始离散格式中的编号为8,其左端的阈值在所述初始离散格式中的编号为6,也就是说,其在第i个类别值下的第二样本数即为:

<mrow> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mo>=</mo> <msub> <mi>a</mi> <mrow> <mi>i</mi> <mn>8</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>a</mi> <mrow> <mi>i</mi> <mn>6</mn> </mrow> </msub> </mrow>

而对于未被合并的[B8,B9),其右端的阈值在所述初始离散格式中的编号为9,其左端的阈值在所述初始离散格式中的编号为8,也就是说,其在第i个类别值下的第二样本数即为:

<mrow> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mo>=</mo> <msub> <mi>a</mi> <mrow> <mi>i</mi> <mn>9</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>a</mi> <mrow> <mi>i</mi> <mn>8</mn> </mrow> </msub> </mrow>

在本实施例中,计算迭代获取的子集整体的区分度的方式有多种,例如,在第一种方式中,可根据公式:

计算遍历到的子集对应的区分度其中,nt为第t个子集中取值区间的总个数,s为类别值的总个数,为第rt个取值区间在第i个类别值下的第二样本数,为第rt个取值区间在所有类别值下的第三样本数,M为样本集中的总样本数,α和λ为调节系数。

该区分度的计算方法可用于传统技术中的FUSINTER的数据离散模型。

在第二种方式中,可根据公式:

<mrow> <mi>y</mi> <mo>=</mo> <mi>M</mi> <mo>[</mo> <mrow> <mo>(</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>s</mi> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>t</mi> </msub> </munderover> <mfrac> <msup> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mn>2</mn> </msup> <mrow> <msub> <mi>M</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> <msub> <mi>M</mi> <mrow> <mo>+</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> </mrow> </mfrac> <mo>)</mo> </mrow> <mo>-</mo> <mn>1</mn> <mo>]</mo> <mo>/</mo> <mi>log</mi> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>CACC</mi> <mo>=</mo> <msqrt> <mfrac> <mi>y</mi> <mrow> <mi>y</mi> <mo>+</mo> <mi>M</mi> </mrow> </mfrac> </msqrt> </mrow>

计算遍历到的子集对应的区分度CACC(The Class-Attribute Contingency Coefficient);其中,nt为第t个子集中取值区间的总个数,s为类别值的总个数,为第rt个取值区间在第i个类别值下的第二样本数,为第rt个取值区间在所有类别值下的第三样本数,M为样本集中的总样本数,Mi+为样本集在第i个类别值下的总样本数。

在第三种方式中,可根据公式:

<mrow> <mi>CAIM</mi> <mo>=</mo> <mfrac> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>t</mi> </msub> </munderover> <mfrac> <mrow> <munder> <mi>max</mi> <mi>i</mi> </munder> <msup> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mn>2</mn> </msup> </mrow> <msub> <mi>M</mi> <mrow> <mo>+</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> </mfrac> </mrow> <msub> <mi>n</mi> <mi>t</mi> </msub> </mfrac> </mrow>

计算遍历到的子集对应的区分度CAIM(The Class-Attribute Interdependency Maximization);其中,nt为第t个子集中取值区间的总个数,s为类别值的总个数,为第rt个取值区间在第i个类别值下的第二样本数,为第rt个取值区间在所有类别值下的第三样本数,M为样本集中的总样本数,Mi+为样本集在第i个类别值下的总样本数。

也就是说,可通过迭代遍历取出初始离散格式中的各个阈值构成的阈值集合的每一个子集,每一个子集中连续排列的两两相邻的阈值构成的取值区间即为初始离散格式中各个阈值两两相邻的构成的取值区间进行合并后的各种可能存在的被划分的取值区间,对于遍历到的子集的每个取值区间在第i个类别值下的第二样本数,仍然可以直接通过已构建的积分矩阵进行计算得到,而不需要重新统计样本集在遍历到的子集的每个取值区间中的样本数,也就是说不需要每次在迭代获取初始离散格式中的各个阈值构成的阈值集合的子集时,均重新生成一个量化矩阵,从而提高了执行效率。

步骤S108,查找区分度最大的子集,将所述查找到的区分度最大的子集作为目标离散格式输出。

如前所述,步骤S106中,通过迭代遍历取出了的初始离散格式中的各个阈值构成的阈值集合的每一个子集,该每一个子集对应了一种合并了取值区间后的离散格式,且每一个子集对应的离散格式的区分度也通过步骤S106计算得到, 因此,可查找区分度最大的值,然后查找该最大的区分度对应的子集,该子集中的阈值构成的离散格式即为最终输出的离散格式。

例如,若计算得到子集{B3,B8,B12,B17,Bp}对应的区分度最大,则表示最终可将样本集划分为[B0,B3)、[B3,B8)、[B8,B12)、[B12,B17)和[B17,Bp]的取值区间,且这种划分方式是区分度最大的划分方式。

优选的,在本实施例中,在迭代获取初始离散格式中的各个阈值构成的阈值集合的每一个子集的过程中,若对于某个遍历获取出的子集,在获取到了该子集中的两两相邻的阈值构成的取值区间之后还可遍历该子集对应的取值区间,根据所述积分矩阵获取遍历到的取值区间的主类别值;判断是否存在遍历到的取值区间的主类别值对应的第四样本数与所述样本集在所述主类别值下的第五样本数的比值小于或等于阈值,若是,则跳过所述遍历到的子集。其中,取值区间对应的主类别值为所述样本集在该取值区间中对应最大样本数的类别值

也就是说,查找:

<mrow> <mfrac> <mrow> <munder> <mi>max</mi> <mi>i</mi> </munder> <mo>{</mo> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mo>}</mo> </mrow> <msub> <mi>m</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> </mfrac> <mo>&lt;</mo> <msub> <mi>t</mi> <mi>&phi;</mi> </msub> </mrow>

该子集中是否包含取值区间rt,,使得该取值区间rt在主类别值下的第四样本数与样本集在该主类别值下的第五样本数的比值偏小,若偏小,则可避免后续复杂的区分度计算,而直接将该子集对应的区分度设为0或负数等较小的特征值,从而忽略该子集,而不需要对按照其划分后明显包含噪声区间的子集进行复杂的区分度计算工作,从而进行了预筛选,提高了执行效率。

输出的目标离散格式中则包含有多个阈值,则可将该多个阈值应用到分类器中,对数据进行分类。也就是说,上述步骤S102至S108为机器学习的过程,对历史数据构成的样本集进行机器学习,对历史数据进行离散化处理得到包含多个阈值的目标离散格式,然后可根据该目标离散格式生成相应的数学模型对后续输入的业务数据进行分类处理。

例如,在一个应用场景中,历史数据的样本集为广告数据对应的年龄数据(离散的数据),通过上述步骤S102至S108的机器学习过程,可将年龄数据划分为多个年龄段,然后可将在线广告根据所属的年龄段进行分类。当后续需要为用户推送在线广告时,则可根据用户的年龄获取其所属的年龄段,然后查找适合该年龄段下的在线广告推送给用户。当数据离散化程度较好时,分类则更 准确,推送给用户的在线广告与用户的适配度则更高,则有更大的概率该被推送的用户会点击该广告进行浏览或购买。

为解决上述提到的传统技术中的数据离散化方法执行效率较低的技术问题,在一个实施例中,特提出了一种数据离散化装置,如图2所示,该装置包括:样本集输入模块102、积分矩阵生成模块104、迭代计算模块106以及目标离散格式输出模块108,其中:

样本集输入模块102,用于接收输入的有序排列的样本集,获取预设的有序排列的初始离散格式。

积分矩阵生成模块104,用于获取预设的类别集合,遍历所述获取到的类别集合中的类别值,获取所述样本集在遍历到的类别值下的在所述初始离散格式中的起始阈值到每个阈值的积分区间的第一样本数,生成积分矩阵。

迭代计算模块106,用于迭代获取所述初始离散格式中的阈值集合的子集,查找所述遍历到的子集中的两两相邻的阈值构成的取值区间,根据所述积分矩阵获取所述每个查找到的取值区间对应的在每个类别值下的第二样本数和在所有类别值下的第三样本数,根据积分矩阵、所述取值区间对应的第二样本数和第三样本数以及所述类别集合计算所述遍历到的子集对应的区分度。

目标离散格式输出模块108,用于查找区分度最大的子集,将所述查找到的区分度最大的子集作为目标离散格式输出。

在本实施例中,样本集输入模块102用于在所述有序排列的样本集中包含的数据为离散数据时,通过计算相邻两个离散数据的平均值得到有序排列的初始离散格式。

在本实施例中,迭代计算模块106还用于遍历所述取值区间,根据所述积分矩阵获取遍历到的取值区间的主类别值,取值区间对应的主类别值为所述样本集在该取值区间中对应最大样本数的类别值;

判断是否存在遍历到的取值区间的主类别值对应的第四样本数与所述样本集在所述主类别值下的第五样本数的比值小于或等于阈值,若是,则跳过所述遍历到的子集。

在本实施例中,迭代计算模块106还用于根据所述积分矩阵和公式:

<mrow> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mo>=</mo> <msub> <mi>a</mi> <mrow> <mi>iR</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow> </msub> <mo>-</mo> <msub> <mi>a</mi> <mrow> <mi>iL</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow> </msub> </mrow>

计算第rt个取值区间在第i个类别值下的第二样本数其中,t为遍历到的第t个子集,rt为该子集的中的两两相邻的阈值构成的第rt个取值区间,i为第i个类别值,R(rt)为第rt个取值区间的右端的阈值在所述初始离散格式中的编号,L(rt)为第rt个取值区间的右端的阈值在所述初始离散格式中的编号,为所述积分矩阵中在第i个类别值与编号为R(rt)的阈值对应的第一样本数。

在一个实施例中,迭代计算模块106还用于根据公式:

计算遍历到的子集对应的区分度其中,nt为第t个子集中取值区间的总个数,s为类别值的总个数,为第rt个取值区间在第i个类别值下的第二样本数,为第rt个取值区间在所有类别值下的第三样本数,M为样本集中的总样本数,α和λ为调节系数。

在另一个实施例中,迭代计算模块106还用于根据公式:

<mrow> <mi>y</mi> <mo>=</mo> <mi>M</mi> <mo>[</mo> <mrow> <mo>(</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>s</mi> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>t</mi> </msub> </munderover> <mfrac> <msup> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mn>2</mn> </msup> <mrow> <msub> <mi>M</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> <msub> <mi>M</mi> <mrow> <mo>+</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> </mrow> </mfrac> <mo>)</mo> </mrow> <mo>-</mo> <mn>1</mn> <mo>]</mo> <mo>/</mo> <mi>log</mi> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>CACC</mi> <mo>=</mo> <msqrt> <mfrac> <mi>y</mi> <mrow> <mi>y</mi> <mo>+</mo> <mi>M</mi> </mrow> </mfrac> </msqrt> </mrow>

计算遍历到的子集对应的区分度CACC;其中,nt为第t个子集中取值区间的总个数,s为类别值的总个数,为第rt个取值区间在第i个类别值下的第二样本数,为第rt个取值区间在所有类别值下的第三样本数,M为样本集中的总样本数,Mi+为样本集在第i个类别值下的总样本数。

在另一个实施例中,迭代计算模块106还用于根据公式:

<mrow> <mi>CAIM</mi> <mo>=</mo> <mfrac> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <msub> <mi>r</mi> <mi>t</mi> </msub> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>t</mi> </msub> </munderover> <mfrac> <mrow> <munder> <mi>max</mi> <mi>i</mi> </munder> <msup> <msub> <mi>g</mi> <mrow> <mi>i</mi> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> <mn>2</mn> </msup> </mrow> <msub> <mi>M</mi> <mrow> <mo>+</mo> <msub> <mi>r</mi> <mi>t</mi> </msub> </mrow> </msub> </mfrac> </mrow> <msub> <mi>n</mi> <mi>t</mi> </msub> </mfrac> </mrow>

计算遍历到的子集对应的区分度CAIM;其中,nt为第t个子集中取值区间的总个数,s为类别值的总个数,为第rt个取值区间在第i个类别值下的第二样本数,为第rt个取值区间在所有类别值下的第三样本数,M为样本集中的总样本数,Mi+为样本集在第i个类别值下的总样本数。

采用了上述数据离散化方法及装置之后,整个对数据处理的过程中,仅需要初始进行统计,生成积分矩阵,即可根据积分矩阵进行迭代计算每一种可能 的合并方式对应的区分度。而在传统技术中通过量化矩阵进行迭代的方案中,则需要在每次移除了初始阈值序列中的部分阈值,在即合并了部分取值区间之后,重新统计样本集在目标阈值序列划分的各个取值区间中的样本数,即在每次迭代过程中均需要重新生成量化矩阵。因此,和传统技术相比,该数据离散化方法的计算量较小,从而执行效率更高。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

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