基于神经网络的数据挖掘研究
摘 要:随着计算机、网络技术的发展,获得有关资料已经非常简单且容易实现。但是对于数量大、涉及面宽的数据,采用以往那种由简单汇总、按指定模式去分析的统计方法是无法完成这类数据的分析。因此,数据挖掘(Data Mining)就由此诞生了。数据挖掘是一种智能化的、综合应用各种统计分析、数据库、智能语言来分析庞大数据资料的技术。神经网络是一组连接的输入/输出单元,其中每个连接都与一个权相相联。针对神经网络良好的学习能力,提出了基于神经网络的数据挖掘方法。本文正对基于神经网络的数据挖掘进行研究。
关键词:数据;数据挖掘;神经网络
1. 数据挖掘
1.1 数据挖掘
简单地说,数据挖掘是从大量数据中提取或“挖掘”知识。数据挖掘是一个处理过程,它利用一种或多种计算机学习技术,从数据库的数据中自动分析并提取知识。数据挖掘所获取的知识是以一个模型或数据概化的形式给出的。数据库中的知识发现(Knowledge Discovery in Database,KDD)是一个可与数据挖掘互换的、使用频率很高的术语,KDD是数据挖掘科学方法的应用。
1.2 数据挖掘的工作流程
数据挖掘的工作流程主要包括:预先获得知识、选择数据、数据净化和预处理、判断数据挖掘的功能类型、选择据挖掘算法、数据转换、输出表达以及综合分析。数据挖掘的整个工作流程如图1所示。
图1 数据挖掘工作流程
2. 数据挖掘的应用
数据挖掘能够自动预测未来趋势和行为,数据挖掘主要应用于以下一些领域:
(1) 欺诈侦测
AT&T使用根据数据挖掘开发的系统对盗打国际电话的行为警醒侦测。个人通讯高级安全欧洲研究组织已经利用无指导聚类侦测移动电话网络中的欺诈。对每个用户,系统储存用户的历史和使用特征文件。在当前使用与用户的历史情况有明显区别时,怀疑为欺诈行为。
(2) 卫生保健
Merck的一个医药保险和处方电邮订购单位,使用数据挖掘来帮助找出对某种类型的病人减少费用但疗效相同的治疗方法。
(3) 商业和金融
风险管理使用数据挖掘来帮助确定保险率、管理投资总额、区分良好和不良信用风险的公司或个人。美国银行(Bank of America)使用数据挖掘侦测哪个客户正在使用美国银行的哪种产品,以便他们能够提供正确的产品和服务组合,更好地满足客户的需求。
(4) 科学应用
分析科学数据。对于γ射线爆是短暂的γ射线反射并且它来源于太阳系之外这种事件的记录已经有1000次之多。科学界普遍认为存在两种γ射线爆。Mukherjee等人使用统计聚类分析法发现了第3类γ射线爆。
(5) 游戏
数据是网络游戏的最大资源,利用数据挖掘在不同数据类型中找出其中有价值的关联,汇总分析得出对游戏市场运营管理有参考价值的结论。数据挖掘为网络游戏运营公司提供了很大的方便。
3. 神经网络的基本结构
神经网络提出了一种数学模型,它试图去模仿人类的大脑。知识经常表示为互相连接的处理单元的层次集合。这些处理单元结点通常称作神经元(neurodes),来表明脑神经之间的关系。每个结点与邻近层次上的其它结点之间具有加权连接。各个结点从相连接的结点获取接受的输入,并结合一个简单函数,使用权值来计算输出值。
神经网络是由一个或多个神经元组成的信息处理系统。对于具有m个输入节点和n个输出节点的神经网络,输入输出关系可以看作是m维欧氏空间到n维欧氏空间的映射模型。网络实际输出与期望输出之间的误差是衡量网络性能的指标。神经元是神经网络的基本处理单元,一般表现为一个多输入、单输出的非线性运算器件,网络结构可以从单个神经元结构展现出来,主要有三个基本要素:(1)一组连接(对应于生物神经元的突触),连接强度由各连接上的权值表示,权值为正表示激活,为负表示抑制。(2)一个求和单元,用于求取各输人信号的加权和(线性组合)。(3)一个激活函数,起到非线性映射作用并将神经元输出幅度限制在一定范围内。
基于神经网络数据挖掘的优点:(1)神经网络在数据集中包含大量噪声输入数据时,也能工作得很好。神经网络评估函数,如S形函数能自然地平滑外部和随机误差所造成的输入数据变异。(2)神经网络不仅能处理和预测数字,还可以处理和预测分类结果。然而,分类数据的变换是个棘手的问题。(3)神经网络可用于在数据中要求包含时间单元的情况。
神经网络在多个领域中一直运行得很好。(4)神经网络既可以用于由指导的学习,也可以用于无指导的聚类。
基于神经网络数据挖掘的缺点:(1)神经网络最大的缺陷可能是在解释自身行为的能力上的欠缺。(2)神经网络学习算法不能保证收敛到最理想的结果。对于大多数类型的神经网络,这个问题可以通过操作多种学习参数得以解决。(3)神经网络很容易过度训练,从而导致在训练数据上工作得很好,而在检验数据上表现欠佳,这个问题可以通过不断地度量检验集性能能来监控。
4. 基于神经网络数据挖掘过程
基于神经网络的数据挖掘过程一般分为三个阶段:数据准备、规则提取以及规则评估。
4.1数据准备
进行数据挖掘的首要条件就是要存在数据,当然仅仅拥有数据是不够的。数据准备是在实施数据挖掘之前的必要步骤。数据准备是指数据的定义、处理和表示,而这些数据是被挖掘后的数据,最后使它适应于特定的数据挖掘方法。数据准备又分为4个步骤,分别为:数据清洗、数据选择、数据预处理以及数据表示。
(1)数据清洗
由于数据库中的数据往往存在有噪声、不完整、不一致的数据,这样的数据如果进行数据挖掘,数据挖掘的搜索过程会被这些有问题的数据所误导,因此,要想提高数据集的质量,以便数据挖掘取得高质量的模式知识,数据清洗是必不可少的。数据清洗主要是填补不完整数据、纠正错误数据以及筛选重复数据。数据清洗是一个反复的过程,不可能在几天内完成,只有不断的发现问题,解决问题。目前,基于规则的数据清洗、可视化技术以及统计方法这三种方法作为数据清洗的主要方法。
(2)数据选择
数据选择是指将神经网络所用的数据清洗一起装入数据仓库中,选择本次数据挖掘所需的数据。数据选择实际上主要是指列或参数维的选择以及行或记录的选择。
(3)数据预处理
数据预处理有多种方法:数据集成,数据变换,数据归约等。这些数据处理技术在数据挖
掘之前使用,大大提高了数据挖掘模式的质量,降低实际挖掘所需要的时间。数据集成:即由多个数据存储合并数据。数据变换:将数据转换成适用于数据挖掘的形式。数据归约:数据挖掘时往往数据量非常大,在少量数据上进行挖掘分析需要很长的时间,数据归约技术可以用来得到数据集的归约表示,它小得多,但仍然接近于保持原数据的完整性,并结果与归约前结果相同或几乎相同。
(4)数据表示
数据表示是将数据类型转化为神经网络可以接受的数据形式。图2表明数据类型转化为神经网络可以接受的数据形式的过程。首先,利用对照表或Hash函数将符号数据转化成离散型数值数据,此时既可以对它进行编码以转化成该图右端所示的编码数据,也可以对它进行量化(或比例)变换,至于进行哪种转化是要根据实际情况而定。不过采用编码方式则需要4个输入单元,而采用量化变换只需1个输入单元。
图2 数据的表示与转换
4.2规则提取
由于神经网络在分类问题中具有分类精度高、鲁棒性好等优点,很多的研究者致力于从神经网络中抽取规则。其基本思路都是基于搜索的算法,对于任一给定的隐结点或输出结点,先提取符号规则,然后对生成的规则按网络的传导途径进行连接和整理。总的说来,从神经网络中抽取规则是一个复杂的过程。
4.3规则评估
规则评估的目标可以依据以下评估规则进行:
(1)规则评估比较的一个重要标准是提取规则的最优顺序,以便它在给定的数据集上取得最好的效果;
(2)被提取规则正确性的测试;
(3)检测在神经网络中还有多少知识未被提取出来;
(4)检测被提取出来的规则与训练好的神经网络之间存在的不一致性的地方。
5. 基于神经网络的数据挖掘类别
虽然基于神经网络的数据挖掘的种类非常之多,但最常使用的有基于自组织神经网络的数据挖掘和基于模糊神经网络的数据挖掘两种。
(1)基于自组织神经网络的数据挖掘
自组织是通过事物自己的自发、自主的走向组织的一种结果和过程。通过自组织学习,把数据中具有重要特征的数据提取出来,例如按某种特征聚类。神经网络中各个单元就如同人大脑的神经元一样,在其中所起的作用都是各不相同的,通过相互作用,可以自适应地发展成检查不同性质信号的特殊检测器。由于每个神经元的负责的任务不同,它们各自对不同的输入模式敏感。一种新的学习方式——自组织特征映射,使输入信号映射到低维空间,并且保持相同特征的输入信号在空间上对应临近区域。
(2)基于模糊神经网络的数据挖掘
虽然神经网络有较强的学习和分类能力,但是基于神经网络的数据挖掘不能对输出的结果做出最直观的说明。基于模糊神经网络的数据挖掘不仅可以很直观的将输出结果说明出来,而且增加了系统的稳定性。
以下是几种常见的模糊神经网络模型:
(1) 基于Mamdani模糊规则的模糊神经网络
模糊规则后件是输出一个模糊集合,设描述输入输出关系的模糊规则为:
:If is …… is , then
其中,l=1,2,…,m, m表示规则总数。m,是的模糊分割数。
若输入量采用单点模糊集合的模糊方法,则对于给定的输入x,则可以求得对于每条规则的激活度为:
若采用加权平均模糊化方法,则可求得输出为:
,其中
(2) 基于T-S的模糊神经网络
设模糊规则为:
:If is …… is , then
其中,l=l,2,…,m,m。
每条规则的激活度为:
模糊系统的输出量为每条规则的输出量的加权平均:
,其中
6.基于神经网络数据挖掘的展望
“神经网络”指的是一种模型。这种模型意在模仿人脑神经元的工作,但是它的实现则是通过矩阵的迭代变换实现的。目前,采用神经网络技术的占绝大多数,在整个技术中占有绝对的统治地位。在我国由于行业的高度垄断性而使得基于神经网络数据挖掘没有发挥其应有的作用,当然我国基于神经网络的数据挖掘技术还处于较低的水平。但随着计算机性能的大幅度提高,神经网络在数据挖掘中的应用必将更加有效地发挥其潜在的价值。
参考文献:
.信息技术与信息化, 2008, (05) .
上一篇:计算机网络的构建与应用实践
下一篇:网络安全与防火墙技术