离散化

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据数值离散化系统设计与实现

1 引言

当下,伴随着计算机的不断普及,以及网络通讯等信息技术的飞速发展,社会已经逐渐进入了网络信息时代。而随着计算机技术的迅速发展,包括存储技术、数据技术和网络技术在内的一系列信息处理方式,已经表现出人们对于计算机的认识和管理水平有了极大提高,并且随着存储设备的单位价格的不断下降和容量的急剧扩大,关系数据库、对象数据库以及多媒体数据库和地理信息数据库、空间数据库都在不断的成熟并且得到了广泛的应用,而数据库管理系统的日益普及也使得人们对于数据得积累越来越多,对于数据与信息系统中的不确定性也尤为显著。

在传统的机器语言中,我们把连续数据离散化技术当作边缘性课题,没有给予足够的重视,但是随着近年来数据挖掘技术的不断发展,数据离散化技术也逐渐在数据挖掘技术中表现出其不可替代的重要性,尤其在规则提取、特征分类等算法中,在应用粗集理论进行数据挖掘的研究时,一些连续属性数据必须要进行离散化处理,所以国内的一些专家和学者越来越关注对于连续数据的离散化[2]。而对于连续数据的离散化虽不是目前来说并不是什么研究热点,但是它是对数据信息进行预处理的一个相当重要的部分。实际的数据库中存在着比较多的连续型属性,然而现有的很多数据挖掘方法却只能处理一些离散型的属性,所以需要对连续属性进行离散化。所以连续数据得离散化方法也成为了数据挖掘领域的重要工作之一,直接影响着数据挖掘的质量。但是作为一种比较新兴的领域,它现有的算法还远远没有达到令人满意的程度。因此,对于连续数据的离散化研究已经成为当今国内的一个重要课题。

2 数据数值离散化的算法

2.1 离散化

2.1.1 离散化的概念

数据离散化本质上通过断点集合将连续的属性空间划分为若干区,并使同一区域的实例都取相同的属性值矢量。

连续值属性离散化方法的基本思想,设一个具有连续值属性的决策信息系统s=(U,AT ∪D),这里的U是有限非空的样本集合,称为对象空间或论域,AT为样本空间的非空属性集合,D是决策属性集合,对于每个连续值属性a,a∈AT,其值域就是样本空间U在属性a 上的取值范围,由实数域上的一段左闭右开的区间[Va,Wa)来表示。在每个连续值属性a 的值域Vɑ中应找到一个恰当的划分ɑ,在划分Pɑ下的系统与初始系统的过程中应具有相同的决策能力,划分属性值域为几个互不相交的子区间,同时对每个子区间赋值以符号的形式,就得到了一组屹上的离散化取值,这个过程其实就是在样本空间U的连续值属性离散化的结果。由于任何划分只是通过一组值域屹内的分割点序列(v.

2.2 离散化算法

一个好的离散化方法通常要满足三个标准:一是为了减少后续的机器学习算法的运算量,尽量减少离散区间数(切点数);二是尽量避免或减少源数据中的信息损失;三是对连续数据的离散化的方法能够简单有效运算量小,易于实现。

2.2.1 BMIC离散化算法

BMIC算法的全名是boundary point's attribute values merging and inconsistency checking,该算法是一种有监督算法,以基本离散区间中大多数例子所属类别为导向,合并同类区间。通过用简单的规则对边界点集合进行合并得到备选最优切点的集合,改变了当前多数方法遍历寻求备选最优切点的过程,同时也节省了大量运算。而且采用了不一致度调整离散区间使算法更有全局性[9]。

BMIC算法的步骤:

(1)按要离散化的属性值,将数据矩阵以升序排列;

(2)以边界点的属性值为切点进行分割属性值集合,把其中符合定义一的边界点属性值记为独立的离散区间即临界区间少形成离散方案STEP1;

(3)对临界区间进行合并,从而得到离散方案STEP2;

(4)对少数点区间进行合并,从而得到离散方案STEP3;

(5)验证不一致度,调整STEP3,多次重复操作,获得最终离散切点集合。

2.2.2 基于云模式连续型属性离散化的算法

该算法是将云模型和粗糙集理论相结合后提出的一种新的连续型属性且无指导离散化的方法。这种方法离散化后得到的概念的边界是模糊的,并且能较好地保持原信息系统的不准确性,更符合一般人的思维习惯。(1)在连续型属性的定义域中找到合适的断点,从而形成不同的区间;(2)在得到的区间上产生期望Ex 、熵En并形成正态模糊数模型;(3)归并不同的正态模糊数模型,形成隶属云。其中

期望Ex:它反映相应的模糊概念的信息中心值;

熵En:它指隶属云的期望曲线的带宽;

超熵He:它反映隶属云的离散程度[10]。

2.2.3 人工鱼群算法

人工鱼群算法是一种随机搜索优化算法,它是基于模拟鱼群行为的。从构造单条鱼的底层行为开始做起,通过对鱼群中的各个个体的局部寻优,从而达到全局最优值在群体中突现的目的。人工鱼个体的自适应活动就是算法的进行,个体每一次活动就是算法的一次迭代。

在算法中,人工鱼的个体状态可以用向量X=(x 1,x 2,…,x n )表示,其中,(i = 1,…,n)为待寻优参数。设Y 为目标函数的值,人工鱼所在当前位置的食物浓度用Y= f(X) 表示。人工鱼个体之间的距离d i-j =||X i -X j ||,用VisualScop e 表示人工鱼的鱼的感知距离 (即最大视野范围)。人工鱼移动的步长用MoveStep 来表示。拥挤度因子用δ表示。人工鱼包括觅食、聚群等两个行为。

(1)研究人工鱼的觅食行为。设X 为人工鱼当前状态,在其感知范围内(即d i-j <=VisualScope )随机选择一个新状态X ,当该状态的食物浓度大于当前状态时,向该方向前进一步。反之,就重新随机选择一个状态X ,进行是否满足前进条件判断。反复几次之后,结果若仍不满足前进的条件,就随机移动一步,即X next

=

其中,X next 为下一步的位置,当前

的随机状态为Xj ,产生随机数序列Random ()。

(2)人工鱼的聚群行为。聚群行为指鱼在游动过程中会自然地聚集成群,在其感知范围内(即d i-j <=VzsualScope)探索其他的同伴数目N f 及中心位置X i ,其中X i =∑=Nf j X

1j ,就

Y i /N f >δ*Y i ,说明同伴中心地带有很多的食物而且中心地带不太拥挤,则朝伙伴的中心移动,反之执行觅食行为。

该算法的步骤如下:

步骤l 设定鱼群算法中的各个参数值,设置人工鱼的初始状态,在属性最小值和最大值的区间内浮动,从而得到初始的分割区间;

步骤2在人工鱼群系统中输人第i(i=1,2,…,n)个条件属性C i 与决策属性D ,对人工鱼当前的状态进行区间离散化操作,再用粗集理论计算当前条件属性C i 和对决策属性D 的支持度r Ci ,重复多次迭代找到r Ci 的最大稳定值;

步骤3若i

步骤4记录当前各人工鱼的状态,并根据当前状态来确定离散区间,通过利用粗糙集提取最简规则 [11]。

相关文档
最新文档