计算机学院学科导论(小论文)学号:专业:学生姓名:任课教师:2015年9月一种针对数据挖掘的新型反竞争学习神经网络技术摘要:在本文中,我们将要通过反竞争学习型神经网络技术与数据挖掘技术进行对抗。
神经元的权重通过在神经网络中的竞争学习被训练,并且与噪声同时使用来干扰原始的数据库。
在反竞争学习的数据挖掘进程将只允许那些包含不重要信息的数据被挖掘。
实验结果显示,用户可以通过调整神经元权重向原始数据库重新发送干扰来实现误导非法用户和挖掘的数据只包括不重要信息的目的。
关键词:数据挖掘反数据挖掘反竞争学习竞争学习噪声数据一介绍数据挖掘(英语:Data mining),又译为资料探勘、数据采矿。
它是数据库知识发现(英语:Knowledge-Discovery in Databases,简称:KDD)中的一个步骤。
数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程。
数据挖掘通常与计算机科学有关,并通过统计、在线分析处理、情报检索、机器学习、专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标。
需要是发明之母。
近年来,数据挖掘引起了信息产业界的极大关注,其主要原因是存在大量数据,可以广泛使用,并且迫切需要将这些数据转换成有用的信息和知识。
获取的信息和知识可以广泛用于各种应用,包括商务管理,生产控制,市场分析,工程设计和科学探索等。
数据挖掘利用了来自如下一些领域的思想:(1) 来自统计学的抽样、估计和假设检验,(2)人工智能、模式识别和机器学习的搜索算法、建模技术和学习理论。
数据挖掘也迅速地接纳了来自其他领域的思想,这些领域包括最优化、进化计算、信息论、信号处理、可视化和信息检索。
一些其他领域也起到重要的支撑作用。
特别地,需要数据库系统提供有效的存储、索引和查询处理支持。
源于高性能(并行)计算的技术在处理海量数据集方面常常是重要的。
分布式技术也能帮助处理海量数据,并且当数据不能集中到一起处理时更是至关重要。
在1996年Clifton et al.提出数据挖掘回威胁和危害数据库的安全性。
他们指出,当数据库被挖掘时,一些敏感的数据或规则有可能被曝光。
一些建议的计划包括处理分解和受害者条款来阻止私人的和敏感的数据被曝光。
然而,这些计划受限制于关联规则并且不能够完全的保护挖掘的数据。
Chen et al.是第一个提出一种新型的反数据挖掘方法来保护被挖掘的数据。
计划通过加入噪声来改变数据的簇结构,利用登记制度的簇。
从数据库中挖掘的信息将不会泄露商业信息。
然而,加入到原始数据库中的噪声会影响原始数据库的完整性。
数据挖掘技术很容易被那些加入到被挖掘的数据中来保护重要信息的噪声所影响。
尽管被反数据挖掘技术保护的数据库可以通过移除噪声恢复原始数据库,但是一些重要的信息也可能在这个过程中丢失。
神经网络的研究内容相当广泛,反映了多学科交叉技术领域的特点。
主要的研究工作集中在以下几个方面:从生理学、心理学、解剖学、脑科学、病理学等方面研究神经细胞、神经网络、神经系统的生物原型结构及其功能机理。
根据生物原型的研究,建立神经元、神经网络的理论模型。
其中包括概念模型、知识模型、物理化学模型、数学模型等。
在理论模型研究的基础上构作具体的神经网络模型,以实现计算机模拟或准备制作硬件,包括网络学习算法的研究。
这方面的工作也称为技术模型研究。
神经网络用到的算法就是向量乘法,并且广泛采用符号函数及其各种逼近。
并行、容错、可以硬件实现以及自我学习特性,是神经网络的几个基本优点,也是神经网络计算方法与传统方法的区别所在。
像其他的从数据-神经网络认识到的机器学习系统方法已被用来解决各种各样的很难用普通的以规则为基础的编程解决的任务,包括计算机视觉和语音识别。
也许,人工神经网络的最大优势是他们能够被用作一个任意函数逼近的机制,那是从观测到的数据“学习”。
然而,使用起来也不是那么简单的,一个比较好理解的基本理论是必不可少的。
大量的调查证实,如果在学习和认知模式下在神经网络中无人监管学习可以解决问题。
竞争学习可以被用来训练神经元的权重根据欧几里德距离将数据库中的数据根据相似性分成簇。
距离是经过训练的神经元的权重,可以应用到相关联的要添加到数据库记录中噪声数据,来减少对原始数据的危害。
在本文中,我们将通过对ADM技术进行拓展得到一种通过反竞争学习技术来保护被挖掘的数据和避免重要信息在被挖掘的数据中暴露出来。
在ACL中,噪声被添加到原始数据库中干扰原始数据,所以挖掘的数据将不包含重要的信息。
神经网络的竞争学习被用来训练神经元的权重来生成噪声数据。
非法的用户不能够通过挖掘的数据获得正确的信息。
同时也不能通过竞争学习的方法来提取干扰数据库的噪声数据,因为噪声数据是由训练的神经元根据相似的距离生成的。
接下来的部分包括提出的反竞争学习方法的说明,第三部分实验结果和分析,第四部分结论。
二反竞争学习技术竞争学习算法是一项包括模式识别,数据分析和图像处理等应用的人工神经网络技术。
正如在图1中所示,原始数据库D中的记录,被输入数据来根据相似性训练神经元权重,通过对D进行竞争学习D={di,,i=1,2,3...,n},n表示数据库中记录的总数。
经过训练的神经元的权重W为W={w1,w2,w3,w4...wk},wj=(wj1,wj2,wj3,...,wjm),k表示神经元的总个树,m表示类别的数目。
竞争学习被用来通过相似的欧几里德距离反复调整神经元权重的值,来学习输入记录数据的潜在的簇规则。
这与将头盖神经细胞中具有相同特征的细胞划为一组归为一个簇相识。
通过竞争学习的神经元网络不会调整其他神经元的权值,而是通过“取胜者获得一切”的取胜过程的学习规则。
在本文中,竞争学习算法将利用欧几里德距离来计算吗、每一条记录数据的取胜神经元通过公式 1.最短的距离在神经元权重和数据di之间。
最短距离和神经元权重被称为最优神经元。
找到最优神经元之后,竞争学习算法将通过公式2来调整最优神经元的权重wj.最优神经元的权重可以完全学习数据库的所有属性。
另一方面,在本文中将用到的ACL算法将利用通过竞争学习得到的神经元权重来生成噪声数据来干扰原始数据库D。
与此同时,被干扰的数据库应当和原始的数据库有一致的行为,来误导用户从该数据库中挖掘的数据都能够得到正确的信息。
反过来看,挖掘的数据包括一些对公司不重要的数据,而误导用户认为这些数据是有很重要的意义的。
下面是应用ACL算法的程序中的具体步骤和将干扰后的数据库还原回原始数据库并且不影响原始数据库的完整性的步骤。
A 反竞争学习算法通过竞争学习得到的神经元的权值被用来生成噪声数据来干扰数据库D,得到结果数据库D’。
D’被保护起来,用户可以控制哪些信息可以在挖掘的数据中显示出来;那就是包括“重要信息”的数据。
其实是被用户处理过的不重要的或者不准确的信息。
在ACL中,用户可以升值权重调整率r,用来重复地调整神经元权重W。
神经元权重用来生成噪声Y。
噪声Y被随机的选择来干扰数据库D,所以被挖掘的数据可以控制。
为了重复干扰,一个等级变量v和一个参数α,用来更改数据库的域。
将噪声Y添加到D中后生成数据库D’,然后利用竞争学习在数据库D‘中训练神经元权重W’,W’应当满足用户的调整需求,如果失败了,就放弃Y,重新生成一个新的噪声数据。
ACL算法的具体步骤如下:输入:输入随机的种子值,权重调整率r,噪声增长量u,和原始数据库D,D={di,,i=1,2,3...,n},n表示数据库中记录的总数。
输出:输出数据库D’和噪声值,D’={di’,i=1,2,3,...,n+h},h表示的是添加噪声的总数。
步骤1,导入原始数据库D,执行竞争学习算法训练权重W,得到W={w1,w2,w3,...wk},wj={wj1,wj2,wj3,...,wjm},k表示的是神经网络中神经元的总个数,m表示的是数据库中域的个数。
步骤2,初始化t=1,表示正在训练的运行数。
步骤3,计算第t次噪声的总数h=u*t。
步骤4,生成噪声数据Y,Y={yz,z=1,2,3,...,h},并且将噪声随机的添加到原始数据中,得到D’,D’=(D U Y)。
yz =wj+(wj*r*α)*Random()(3)(1)将随机种子值添加到函数中,Random.setSeed(Seed)(2)得到权重wj干扰数据库D,令j=random()*k+1.(3)使用公式(3),利用每一条记录产生噪声yz,为了计算干扰的效果,添加调整参数α,令α从1到v,令v为一个大的标量变量,来加速学习,减少噪声数据。
步骤5,对D’重复竞争学习算法,得到保护的神经元权重值W’={w1’,w2’,w3’,...,wk’}步骤6,检查wi ’是否约等于(wi*r),任意的i属于1到k,如果失败了,令t=t+1,回到步骤3.B 将数据库由D’恢复至D被保护的数据库D’是由原始数据库D和添加噪声Y组成的,ACL算法可以应用到D‘中恢复D。
合法的用户可以使用随机种子值和权重值来生成噪声Y,由于D’=D并Y,恢复D。
恢复数据库D的步骤如下:输入:被保护饿数据库D’,随机种子值,原始数据神经元权重值W,权重值调整率r和噪声总数h。
输出:输出恢复的数据库D。
步骤1:产生噪声值Y,Y={y1,y2,...,yh},与ACL算法的第四步一致。
步骤2:将噪声Y移除D’.三实验结果在本文中所用到的实验数据是著名的Iris数据库,数据库中有150条记录,4个域,根据数据类型被分成了3个簇。
神经元的数目是k=3,权重W={w1,w2,w3}Iris数据库为原始数据库,包含150条记录。
应用竞争学习算法得到了神经元权重W。
表格1,展示了Iris数据库的神经元权重值。
每一个权重值对应一个特定的簇,三个簇,分别对应权重w1,w2,w3。
表格1 原始IRIS数据库神经元权重接下来一个随机种子数和ACL一起使用来干扰原始数据库来创建数据库D’。
D’是被保护的数据库,挖掘的信息不会包括重要的信息。
所用到的参数设置为,权重调整率r=0.1,调整参数α=3,表格2展示了被保护的神经元的权重值W’。
通过ACL保护,包括了114个噪声,并且权重调整率为r=0.1.原始权重w1和被保护的权重w1’相比较,每一个域的w1’比原始权重w1平均增长了0.1,因此与权重调整率为0.1相符。
表格2 IRIS数据库被噪声数据干扰后的神经元权重(R=0.1)在表格三中,权重调整率设置为r=-0.1,噪声的数量增长到129.每一个域的权重平均降低0.1倍,域中的改变显示,数据库能够被干扰所改变干扰方向。
这有利于困扰那些对ACL过程有些了解有潜在获取重要信息的人。
在干扰过程中设置不同的参数只会影响那些不携带重要信息的被挖掘的数据。
表格3 干扰后的IRIS数据库神经元权重在ACL中,噪声的总数和神经元的权重是提高调整率的主要因素。