




已阅读5页,还剩127页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
商务智能实训实验报告组长:李承冲 2012211195组员:姜俏南 2012211172 刘启丽 2012211171贾晓锋 2012211173王 昱 2012211194陆 为 2012211180班级:0311203组长:李承冲成员完成的任务及工作量组长评定成绩姜俏南运行代码的编写,Apriori与K均值算法的简介伪代码特点等90刘启立Bays算法的介绍、业务流程及伪代码、最新改进及最新应用情况、参考文献等85贾晓锋文档编写汇总;Knn算法的介绍、分析、最新改进或最新应用情况等90王 昱BP算法的介绍、步骤解析、算法特点等85陆 为ID3算法的流程、不足及改进、参考文献等83一、BP算法- 1 -1.算法介绍- 1 -2.BP网络的解析步骤- 3 -3.运行的可视结果- 4 -4.算法特点分析- 4 -5.发展趋势- 6 -6.参考文献- 6 -二、Apriori算法- 6 -1.算法介绍- 6 -2.算法流程- 6 -3.运行的可视结果- 7 -4.最新改进或最新应用情况- 9 -5.参考文献列表- 9 -三、Bays算法- 10 -1.算法介绍- 10 -2.伪代码及流程- 10 -3.运行的可视结果- 11 -4.最新改进及最新应用情况- 12 -5.参考文献列表- 12 -四、ID3算法- 13 -1.算法介绍- 13 -2.流程- 13 -3.运行的可视结果- 13 -4.不足及改进思路- 13 -5.参考文献列表- 14 -五、kNN算法- 14 -1.算法介绍- 15 -2.算法流程- 15 -3.运行的可视结果- 15 -4.算法特点分析- 16 -5.最新改进或最新应用情况- 16 -六、 K均值算法- 17 -1.算法介绍- 17 -2.流程- 17 -3.运行的可视结果- 18 -4.最新改进或最新应用情况- 21 -5.参考文献列表- 21 -附录- 21 -1.BP算法代码- 22 -2.Apriori算法代码- 52 -3.Bays算法代码- 61 -4.ID3算法代码- 91 -5.kNN算法代码- 100 -6.K均值算法代码- 103 -一、BP算法1.算法介绍典型的BP网络分为三层(图4.4),即输入层、隐含层和输出层。其算法主要由以下四部分组成,即模式顺传播误差逆传播记忆训练学习收敛。 1)模式顺传播设样本输入向量,输出向量中间单元的输入向量,输出向量输出层的输入向量,输出向量其中,为样本数。12p1qana1a2c1cqy1yqnpqw11w12v11v12SpBpLqCq输入层到中间层的权,中间层到输出层的权,中间层阈值, 输出层阈值,中间层输入:,输出:,输出层输入:,输出:,2)误差的逆传播根据输出层产生的误差,经中间层向输入层传播,在这个过程中,按照梯度下降原则对各层的权值和阈值进行误差校正。输出层计算:权值调整量计算:第k模式(样本)下,网络的输出误差的均方值为,因为,所以,上式即为权值变化对均方值误差的影响程度,按梯度下降原则应使权值调整量与的负值成比例变化,即其中,。阈值调整量计算:因为,所以,按照梯度下降原则,可得到输出层各单元的阈值调整量为:中间层到输入层计算:权值调整量计算:按照梯度下降原则,可得到连接权值的调整量为:阈值调整量计算:按照梯度下降原则,可得到输出层各单元的阈值调整量为:以上的推导是标准误差逆传播算法,即各连接权的调整量是分别与各个学习模式对的误差Ek成比例变化的。而相对于全局误差的连接权调整,是在所有m个学习模式全部提供给网络后统一进行的,这种算法是累积误差逆传播算法。一般来讲,当样本较少时,累积误差传递算法要比标准误差传递算法速度快一点。3)记忆训练给出一组样板反复进行学习,调整权值和阈值的大小以使输出值满足一定的精度要求。4)学习收敛经过多次训练以后,网络的全局误差趋向于最小值。由于BP算法采用了按误差函数梯度下降的方向进行收敛,因此,可能使迭代陷入局部极小点,BP网络收敛依赖于样本的初始位置,适当改变隐层单元个数,或给每个权值加上一个很小的随机数,都可使收敛过程避免局部极小点。2. BP网络的解析步骤(1)初始化给权值、和阈值、赋予(-1, 1)之间的随机值。(2)随机取一对样本对网络进行训练(3)计算中间层的输入/出输入:,输出:(4)计算输出层的输入/出输入:,输出:(5)计算输出层的一般误差(6)计算中间层的一般误差(7)修改输出层的权值和阈值(8)修正隐层的权值和阈值(9)取下一对样本返回(3)开始训练,直到m个样本训练结束(10)判断全局误差是否小于预定值,否则,回到(2)重新进行训练,直到满足要求或达到预定训练次数,停止训练。3. 运行的可视结果4. 算法特点分析人工神经网络(Artificial Neural Network)又称连接机模型,是在现代神经学、生物学、心理学等学科研究的基础上产生的,它反映了生物神经系统处理外界事物的基本过程,是在模拟人脑神经组织的基础上发展起来的计算系统,是由大量处理单元通过广泛互联而构成的网络体系,它具有生物神经系统的基本特征,在一定程度上反映了人脑功能的若干反映,是对生物系统的某种模拟,具有大规模并行、分布式处理、自组织、自学习等优点,被广泛应用于语音分析、图像识别、数字水印、计算机视觉等很多领域,取得了许多突出的成果。最近由于人工神经网络的快速发展,它已经成为模式识别的强有力的工具。神经网络的运用展开了新的领域,解决其它模式识别不能解决的问题,其分类功能特别适合于模式识别与分类的应用。多层前向BP网络是目前应用最多的一种神经网络形式, 它具备神经网络的普遍优点,但它也不是非常完美的, 为了更好的理解应用神经网络进行问题求解, 这里对它的优缺点展开一些讨论。首先BP神经网络具有以下优点:1) 非线性映射能力:BP神经网络实质上实现了一个从输入到输出的映射功能,数学理论证明三层的神经网络就能够以任意精度逼近任何非线性连续函数。这使得其特别适合于求解内部机制复杂的问题,即BP神经网络具有较强的非线性映射能力。2) 自学习和自适应能力:BP神经网络在训练时,能够通过学习自动提取输出、输出数据间的“合理规则”,并自适应的将学习内容记忆于网络的权值中。即BP神经网络具有高度自学习和自适应的能力。3) 泛化能力:所谓泛化能力是指在设计模式分类器时,即要考虑网络在保证对所需分类对象进行正确分类,还要关心网络在经过训练后,能否对未见过的模式或有噪声污染的模式,进行正确的分类。也即BP神经网络具有将学习成果应用于新知识的能力。4) 容错能力:BP神经网络在其局部的或者部分的神经元受到破坏后对全局的训练结果不会造成很大的影响,也就是说即使系统在受到局部损伤时还是可以正常工作的。即BP神经网络具有一定的容错能力。鉴于BP神经网络的这些优点,国内外不少研究学者都对其进行了研究,并运用网络解决了不少应用问题。但是随着应用范围的逐步扩大,BP神经网络也暴露出了越来越多的缺点和不足,比如:1) 局部极小化问题:从数学角度看,传统的 BP神经网络为一种局部搜索的优化方法,它要解决的是一个复杂非线性化问题,网络的权值是通过沿局部改善的方向逐渐进行调整的,这样会使算法陷入局部极值,权值收敛到局部极小点,从而导致网络训练失败。加上BP神经网络对初始网络权重非常敏感,以不同的权重初始化网络,其往往会收敛于不同的局部极小,这也是很多学者每次训练得到不同结果的根本原因。2) BP 神经网络算法的收敛速度慢:由于BP神经网络算法本质上为梯度下降法,它所要优化的目标函数是非常复杂的,因此,必然会出现“锯齿形现象”,这使得BP算法低效;又由于优化的目标函数很复杂,它必然会在神经元输出接近0或1的情况下,出现一些平坦区,在这些区域内,权值误差改变很小,使训练过程几乎停顿;BP神经网络模型中,为了使网络执行BP算法,不能使用传统的一维搜索法求每次迭代的步长,而必须把步长的更新规则预先赋予网络,这种方法也会引起算法低效。以上种种,导致了BP神经网络算法收敛速度慢的现象。3) BP 神经网络结构选择不一:BP神经网络结构的选择至今尚无一种统一而完整的理论指导,一般只能由经验选定。网络结构选择过大,训练中效率不高,可能出现过拟合现象,造成网络性能低,容错性下降,若选择过小,则又会造成网络可能不收敛。而网络的结构直接影响网络的逼近能力及推广性质。因此,应用中如何选择合适的网络结构是一个重要的问题。4) 应用实例与网络规模的矛盾问题:BP神经网络难以解决应用问题的实例规模和网络规模间的矛盾问题,其涉及到网络容量的可能性与可行性的关系问题,即学习复杂性问题。5) BP神经网络预测能力和训练能力的矛盾问题:预测能力也称泛化能力或者推广能力,而训练能力也称逼近能力或者学习能力。一般情况下,训练能力差时,预测能力也差,并且一定程度上,随着训练能力地提高,预测能力会得到提高。但这种趋势不是固定的,其有一个极限,当达到此极限时,随着训练能力的提高,预测能力反而会下降,也即出现所谓“过拟合”现象。6) BP神经网络样本依赖性问题:网络模型的逼近和推广能力与学习样本的典型性密切相关,而从问题中选取典型样本实例组成训练集是一个很困难的问题。5.发展趋势BP神经网络算法自20世纪80年代提出以来,已经经过了20余年。除了神经网络理论得到了进一步的发展以外,神经网络的应用成果也日益丰富。神经网络今后发展的一个方向是将其成功地应用于生产、生活的各个方面,发挥其信息处理能力,扩展其应用范围。6.参考文献/luowen3405/article/details/6250634二、Apriori算法1.算法介绍首先找出所有的频集,这些项集出现的频繁性至少和预定义的最小支持度一样。然后由频集产生强关联规则,这些规则必须满足最小支持度和最小可信度。然后使用第1步找到的频集产生期望的规则,产生只包含集合的项的所有规则,其中每一条规则的右部只有一项,这里采用的是中规则的定义。一旦这些规则被生成,那么只有那些大于用户给定的最小可信度的规则才被留下来。为了生成所有频集,使用了递归的方法。L1 = find_frequent_1-itemsets(D);for (k=2;Lk-1 ;k+) Ck = apriori_gen(Lk-1 ,min_sup); foreachtransaction t /scan D for counts Ct = subset(Ck,t);/get the subsets of t that are candidates for each candidate c Ct c.count+; Lk =c Ck|c.countmin_supreturn L= k Lk;2.算法流程3. 运行的可视结果= Run information =Scheme: weka.associations.CopyOfApriori -N 10 -T 0 -C 0.9 -D 0.05 -U 1.0 -M 0.1 -S -1.0 -c -1Relation: cpuInstances: 209Attributes: 7 MYCT MMIN MMAX CACH CHMIN CHMAX class= Associator model (full training set) =挖掘频繁项集:1=E, A, B, C, 2=A, B, B, C, A, C, E, B, E, A, 3=E, A, B, A, B, C4.最新改进或最新应用情况Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集。而且算法已经被广泛的应用到商业、网络安全等各个领域。关联规则挖掘是从汪洋大海的数据中挖掘出能够有效地对数据之间关系的进行描述的一系列有用的模式,而且在关联规则中最著名的算法是Apriori算法虽然该算法作为关联规则的核心,在数据挖掘中起到了不可磨灭的作用,但是伴随着不断深入的研究与在零售行业广泛的运用,该算法越来越多的不足也被挖掘出来,其中有两个:在对事物数据库的扫描需要进行多次从而对I/O的负载占用较大;在应用的过程中产生的候选集会非常庞大。基于以上问题,不少学者提出了许多的改进措施以提高该算法的效率。基于数据分割的方法基于散列的方法基于采样的方法电子商务网站的推荐系统使用Apriori算法对电子商务交易事务数据库中的数据进行挖掘,首先对不同类的事务数据库中的最小支持度和最小置信度阈值进行区分设置,寻找最优值;然后对事务数据库中的数 据进行稀疏性设置,转换成稀疏性矩阵的形式,以加快算法的执行效率,并每次都对与候选集中无关的项进行删除,再扫描修剪后的稀疏性矩阵,这样进一步提高挖掘效率。5.参考文献列表屈展,陈雷一种改进的APRIORI算法在电子商务中的应用宋磊 基于划分的Apriori改进算法在电子商务中的应用张志杰 基于划分的Apriori改进算法的网上商城推荐系统马宗亚,张会彦 关联规则算法在电子商务推荐系统中的应用探讨三、Bays算法1.算法介绍贝叶斯分类算法是统计学的一种分类方法,它是一类利用概率统计知识进行分类的算法,该算法能运用到大型数据库中,而且方法简单、分类准确率高、速度快。贝叶斯定理是关于随机事件A和B的条件概率(或边缘概率)的一则定理。朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的基础原理是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。2. 伪代码及流程设为一个待分类项,而每个a为x的一个特征属性。有类别集合。计算。如果,则。计算第3步中的各个条件概率: 1) 找到一个已知分类的待分类项集合,这个集合叫做训练样本集。 2) 统计得到在各类别下各个特征属性的条件概率估计: 3) 如果各个特征属性是条件独立的,则根据贝叶斯定理有如下推导: 因为分母对于所有类别为常数,因为我们只要将分子最大化皆可。又因为各特征属性是条件独立的,所以有: 所以根据上述分析,朴素贝叶斯分类的流程如下:第一阶段为朴素贝叶斯分类做必要的准备,主要工作是根据具体情况确定特征属性,并对每个特征属性进行适当划分,然后由 人工对一部分待分类项进行分类,形成训练样本集合。这一阶段的输入是所有待分类数据,输出是特征属性和训练样本。这一阶段是整个朴素贝叶斯分类中唯一需要 人工完成的阶段,其质量对整个过程将有重要影响,分类器的质量很大程度上由特征属性、特征属性划分及训练样本质量决定。第二阶段分类器训练,这个阶段的任务就是生成分类器,主要工作是计算每个类别在训练样本中的出现频率及每个特征属性划分对每个类别的条件概率估 计,并将结果记录。其输入是特征属性和训练样本,输出是分类器。这一阶段是机械性阶段,根据前面讨论的公式可以由程序自动计算完成。第三阶段应用。这个阶段的任务是使用分类器对待分类项进行分类,其输入是分类器和待分类项,输出是待分类项与类别的映射关系。这一阶段也是机械性阶段,由程序完成。流程如下图所示:3. 运行的可视结果4. 最新改进及最新应用情况信息技术的飞速发展使得旅游信息呈爆炸式增长,如何根据游客的特征和偏好,进行旅游信息的智能化推荐已十分必要。MI-NB算法是在传统贝叶斯分类算法不足的基础上进行改进的,应用了互信息的知识,通过相对可信度R来进行特征选择,以删除冗余属性,并把R作为权值引入到NB算法中,从而得到改进后的MI-NB算法。采用改进的贝叶斯分类算法(MI-NB)来进行旅游景点的推荐,能够大大降低分类数据的维数,有效提高了景点推荐的准确率。 传统的分类模型在对样本进行分类时存在两个问题:一是没有考虑属性不同时对分类所起作用不同;二是没有考虑同一属性对于不同类别进行分类时相对作用的大小对分类准确度的影响也很大。对于旅游数据(如:景点数据)来说,每一条记录的属性数是很多的,一般情况下,属性个数越多分类的准确率就越高,但是属性个数越多,分类的效率就越低。因此,需要针对传统分类算法的不足以及旅游数据的特点,寻找一个有效的特征选择算法,在对分类准确率影响不大的情况下,删除对分类不相关或不重要的属性,从而提高分类的效率。最新应用情况:学习是人工智能研究中非常活跃且范围甚广的一个领域。而机器学习所关注的是:计算机程序如何随着经验积累自动提高性能,让机器完成某些任务,从而使其在某些方面为人类服务。贝叶斯分类器作为机器学习中的一种,在有些方面有着其优越的一面。采用智能算法对垃圾信息进行有效分析,寻找垃圾制作者,并通过网络日志和所发表的内容,判断哪些是广告用户和垃圾信息的发布者,并将其删除。认为对垃圾信息的甄别其实是一种把信息分成有用信息和无用信息的过程,贝叶斯分类算法把信息分成不同的类;通过分析广告链接网址来剔除垃圾信息。文本自动分类系统是信息处理的重要研究方向。在给定的分类体系下,根据文本的内容自动判别文本类别的过程;应用于Web文档进行自动分类。5.参考文献列表周钦强 基于人工智能技术Naive Bayes文本自动分类系统研究张璇,左敏 一种改进的朴素贝叶斯分类器在文本分类中的应用研究黄志刚 基于贝叶斯的中文垃圾邮件过滤系统的设计与实现四、ID3算法1.算法介绍 ID3算法是一种贪心算法,用来构造决策树。ID3算法起源于概念学习系统(CLS),以信息熵的下降速度为选取测试属性的标准,即在每个节点选取还尚未被用来划分的具有最高信息增益的属性作为划分标准,然后继续这个过程,直到生成的决策树能完美分类训练样例。2. 流程第一步:对数据进行规范化处理。第二步:选取训练实例集。第三步:利用信息增益度选取最能区别训练集中实例的属性。第四步:创建一个树结点,并创建该结点的子链,每个子链代表所选属性的一个唯一值。使用子链的值进一步细化子类。当出现以下两种情形之一时可以停止分类:1.一个结点上的数据都是属于同一类别;2.没有属性可以再对属性进行分割。第五步:将其它成绩作为检验集。并用来检验所生成的决策树的准确度。3. 运行的可视结果4.不足及改进思路ID3算法由于其理论清晰,方法简单,学习能力较强,适合用于处理大规模的学习问题,是数据挖掘和机器学习领域中的一个极好范例,也是一种知识获取的有用工具。不过,ID3算法在实际使用过程中并非尽善尽美,存在以下:ID3算法中基于信息增益的计算方法偏向于选择属性取值数较多的属性,而属性值较多的属性不一定是最优的分类属性。ID3算法存在一个假设,即训练例子集中的分类类别的比例应与实际问题领域里分类类别的比例相同。但是在一般情况下很难保证两者相同,这就会影响到决策树用于预测新数据时的准确性。ID3算法在搜索中不进行回溯,每当在树的某一层选择了一个属性进行测试,就不会再回溯重新考虑这个选择。这样,算法容易收敛到局部最优的答案,而不是全局最优。ID3算法只能处理离散值的属性。ID3算法无法处理缺少属性值的数据样本,但是在实际的应用中这样的数据是大量存在的。ID3算法的不足及改进思路:增益以改进ID3算法偏向属性取值个数较多的属性、对连续值的属性进行离散化、处理缺少属性值的训练样本、使用后剪枝技术避免树的不平衡,以下从几个方面进行详细的阐述:(1)重点关注了ID3算法的3个方面的不足:(1)ID3算法的分裂度量标准采用的是信息增益,通过以前大量的研究分析与实际应用可以知道,这种分裂度量标准偏向于选择属性值个数较多的属性,而属性取值个数较多的属性并不一定是最优的属性。所以需要改进选择属性的分裂度量标准。 (2)ID3算法只能处理离散属性,对于连续值的属性,必须首先对其进行离散化才能投入使用。比如性别属性是离散属性,适合用ID3算法处理,而收入属性就是一个连续值的属性,那么按照ID3算法是无法计算的,必须对收入离散化后才可用。所以需要针对连续值属性的离散化方法做出改进。(3)采用ID3算法产生的决策树进行预测时,必须知道从叶子节点到树根的路径上所有内节点对应的属性的属性值。5. 参考文献列表王小巍,蒋玉明 决策树ID3算法的分析与改进路川,阎文丽,胡欣杰 基于数据仓库的航空客户关系管理研究温树勇,李卫华 本体知识拓展分析树在可拓策略生成系统的应用潘玲玲 基于旅客行为的航空旅客细分模型研究及其实现五、kNN算法1.算法介绍 邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。 kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。 kNN方法在类别决策时,只与极少量的相邻样本有关。由于kNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,kNN方法较其他方法更为适合。2. 算法流程 1) 准备数据,对数据进行预处理 2) 选用合适的数据结构存储训练数据和测试元组 3) 设定参数,如k 4) 维护一个大小为k的的按距离由大到小的优先级队列,用于存储最近邻训练元组。随机从训练元组中选取k个元组作为初始的最近邻元组,分别计算测试元组到这k个元组的距离,将训练元组标号和距离存入优先级队列 5) 遍历训练元组集,计算当前训练元组与测试元组的距离,将所得距离L与优先级队列中的最大距离Lmax 6) 进行比较。若L=Lmax,则舍弃该元组,遍历下一个元组。若L Lmax,删除优先级队列中最大距离的元组,将当前训练元组存入优先级队列。 7) 遍历完毕,计算优先级队列中k个元组的多数类,并将其作为测试元组的类别。 8) 测试元组集测试完毕后计算误差率,继续设定不同的k值重新进行训练,最后取误差率最小的k值。3.运行的可视结果4.算法特点分析1) 优点 1.简单,易于理解,易于实现,无需估计参数,无需训练; 2. 适合对稀有事件进行分类; 3.特别适合于多分类问题(multi-modal,对象具有多个类别标签), kNN比SVM的表现要好。2) 缺点 该算法在分类时有个主要的不足是,当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数。 该算法只计算最近的邻居样本,某一类的样本数量很大,那么或者这类样本并不接近目标样本,或者这类样本很靠近目标样本。无论怎样,数量并不能影响运行结果。 该方法的另一个不足之处是计算量较大,因为对每一个待分类的文本都要计算它到全体已知样本的距离,才能求得它的K个最近邻点。 可理解性差,无法给出像决策树那样的规则。5最新改进或最新应用情况 kNN算法因其提出时间较早,随着其他技术的不断更新和完善,kNN算法的诸多不足之处也逐渐显露,因此许多kNN算法的改进算法也应运而生。 针对以上算法的不足,算法的改进方向主要分成了分类效率和分类效果两方面。 分类效率:事先对样本属性进行约简,删除对分类结果影响较小的属性,快速的得出待分类样本的类别。该算法比较适用于样本容量比较大的类域的自动分类,而那些样本容量较小的类域采用这种算法比较容易产生误分。分类效果:采用权值的方法(和该样本距离小的邻居权值大)来改进,Han等人于2002年尝试利用贪心法,针对文件分类实做可调整权重的k最近邻居法WAkNN (weighted adjusted k nearest neighbor),以促进分类效果;而Li等人于2004年提出由于不同分类的文件本身有数量上有差异,因此也应该依照训练集合中各种分类的文件数量,选取不同数目的最近邻居,来参与分类。6、 K均值算法1. 算法介绍 给定一个数据点集合和需要的聚类数目k,k由用户指定,k均值算法根据某个距离函数反复把数据分入k个聚类中。先随机选取K个对象作为初始的聚类中心。然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。一旦全部对象都被分配了,每个聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是以下任何一个:1)没有(或最小数目)对象被重新分配给不同的聚类。2)没有(或最小数目)聚类中心再发生变化。 3)误差平方和局部最小。2. 流程3. 运行的可视结果= Run information =Scheme: weka.clusterers.Kmeans -N 2 -S 10Relation: cpuInstances: 209Attributes: 7 MYCT MMIN MMAX CACH CHMIN CHMAX classTest mode: evaluate on training data= Model and evaluation on training set =print:cluster00=5.0,6.0=print:cluster10=3.0,4.0=print:cluster20=5.0,9.0=print:cluster30=1.0,2.0=print:cluster40=6.0,4.0=print:cluster50=3.0,3.0=print:cluster60=4.0,2.0=print:cluster70=8.0,9.0print:cluster71=7.0,8.0=print:cluster80=4.0,5.0=print:cluster90=3.0,9.0print:cluster91=1.0,9.0=Clustered InstancesUnclustered instances : 2094.最新改进或最新应用情况 k-means算法中急需解决的问题主要有三个: 1)在k-means算法中,k是事先给定的,这个k值的选定是很难估计的。很多时候,我们事先并不知道给定的数据集应分成多少类最合适,这也是k-means算法的一个不足。有的算法是通过类的自动合并和分裂,得到较为合理的类型数目k,例如ISODALA算法。关于k-means算法中聚类数目k值的确定,有些根据方差分析理论,应用混合F统计量来确定最佳分类数,并应用了模糊划分墒来验证最佳分类数的正确性。 在第一阶段,根据数据向量空间的分布情况,寻找相离较为分散的数据点作为质心,对空间进行初步划分,生产稳定的预聚类聚集;第二阶段,对预聚类的簇集进行优化调整,簇内的数据无需与所有质心进行差异度计算,只与其相邻且状态未稳定的簇集进行归属转移判断,减少了计算冗余,加快了聚类收敛的速度。5.参考文献列表/link?url=Bxy-Ow0-J7XjTECfpC7_t9kk0bjh-_V65ew88l9ulCwV0lKaYoePY9veCZqDrfqhaAR2EeaVeLHYRGOVLrtd3tpT31hZLbRqFw5LpFskb3C附录1.BP算法代码package weka.classifiers.functions;import weka.classifiers.Classifier;import weka.core.Capabilities;import weka.core.Instance;import weka.core.Instances;import weka.core.Option;import weka.core.RevisionUtils;import weka.core.SelectedTag;import weka.core.Tag;import weka.core.TechnicalInformation;import weka.core.TechnicalInformationHandler;import weka.core.Utils;import weka.core.Capabilities.Capability;import weka.core.TechnicalInformation.Type;import weka.filters.Filter;import weka.filters.unsupervised.attribute.Normalize;import java.io.FileInputStream;import java.lang.reflect.Array;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.Enumeration;import java.util.Scanner;import java.util.StringTokenizer;import java.util.Vector;public class BP extends Classifier implements TechnicalInformationHandlerdouble dw1, dw2;int hidN;/ 隐含层单元个数int samN;/ 学习样例个数int attN;/ 输入单元个数int outN;/ 输出单元个数int times;/ 迭代次数double rate;/ 学习速率double samin=null;double samout=null;String msg=;boolean trained = false;/ 保证在得结果前,先训练/* the svm classname */protected final static String CLASS_SVM = libsvm.svm;/* the svm_model classname */protected final static String CLASS_SVMMODEL = libsvm.svm_model;/* the svm_problem classname */protected final static String CLASS_SVMPROBLEM = libsvm.svm_problem;/* the svm_parameter classname */protected final static String CLASS_SVMPARAMETER = libsvm.svm_parameter;/* the svm_node classname */protected final static String CLASS_SVMNODE = libsvm.svm_node;/* serial UID */protected static final long serialVersionUID = 14172;/* LibSVM Model */protected Object m_Model;/* for normalizing the data */protected Filter m_Filter = null;/* normalize input data */protected boolean m_Normalize = false;/* SVM type C-SVC (classification) */public static final int SVMTYPE_C_SVC = 0;/* SVM type nu-SVC (classification) */public static final int SVMTYPE_NU_SVC = 1;/* SVM type one-class SVM (classification) */public static final int SVMTYPE_ONE_CLASS_SVM = 2;/* SVM type epsilon-SVR (regression) */public static final int SVMTYPE_EPSILON_SVR = 3;/* SVM type nu-SVR (regression) */public static final int SVMTYPE_NU_SVR = 4;/* SVM types */public static final Tag TAGS_SVMTYPE = new Tag(SVMTYPE_C_SVC, C-SVC (classification),new Tag(SVMTYPE_NU_SVC, nu-SVC (classification),new Tag(SVMTYPE_ONE_CLASS_SVM, one-class SVM (classification),new Tag(SVMTYPE_EPSILON_SVR, epsilon-SVR (regression),new Tag(SVMTYPE_NU_SVR, nu-SVR (regression) ;/* the SVM type */protected int m_SVMType = SVMTYPE_C_SVC;/* kernel type linear: u*v */public static final int KERNELTYPE_LINEAR = 0;/* kernel type polynomial: (gamma*u*v + coef0)degree */public static final int KERNELTYPE_POLYNOMIAL = 1;/* kernel type radial basis function: exp(-gamma*|u-v|2) */public static final int KERNELTYPE_RBF = 2;/* kernel type sigmoid: tanh(gamma*u*v + coef0) */public static final int KERNELTYPE_SIGMOID = 3;/* the different kernel types */public static final Tag TAGS_KERNELTYPE = new Tag(KERNELTYPE_LINEAR, linear: u*v),new Tag(KERNELTYPE_POLYNOMIAL,polynomial: (gamma*u*v + coef0)degree),new Tag(KERNELTYPE_RBF,radial basis function: exp(-gamma*|u-v|2),new Tag(KERNELTYPE_SIGMOID, sigmoid: tanh(gamma*u*v + coef0) ;/* the kernel type */protected int m_KernelType = KERNELTYPE_RBF;/* * for poly - in older versions of libsvm declared as a double. At least * since 2.82 it is an int. */protected int m_Degree = 3;/* for poly/rbf/sigmoid */protected double m_Gamma = 0;/* for poly/rbf/sigmoid (the actual gamma) */protected double m_GammaActual = 0;/* for poly/sigmoid */protected double m_Coef0 = 0;/* in MB */protected double m_CacheSize = 40;/* stopping criteria */protected double m_eps = 1e-3;/* cost, for C_SVC, EPSILON_SVR and NU_SVR */protected double m_Cost = 1;/* for C_SVC */protected int m_WeightLabel = new int0;/* for C_SVC */protected double m_Weight = new double0;/* for NU_SVC, ONE_CLASS, and NU_SVR */protected double m_nu = 0.5;/* loss, for EPSILON_SVR */protected double m_Loss = 0.1;/* use the shrinking heuristics */protected boolean m_Shrinking = true;/* * whether to generate probability estimates instead of +1/-1 in case of * classification problems */protected boolean m_ProbabilityEstimates = false;/* whether the libsvm classes are in the Classpath */protected static boolean m_Present = false;static try Class.forName(CLASS_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 陕西环保面试题及答案
- 医疗配合:沟通技巧大全
- 如何提升礼仪魅力
- 骨科面试题题库及答案
- 山鹰纸业培训考试试题及答案
- 武术基本常识考试试题及答案
- 如何培养孩子的阅读习惯
- 特岗教师考试试题及答案
- 保密能力面试题及答案
- java内存区域面试题及答案
- 神州数码在线测评题答案
- 1输变电工程施工质量验收统一表式(线路工程)
- 机械原理课程设计15吨压片机设计
- 网络设备巡检报告
- 2023年义务教育音乐2022版新课程标准考试测试题及答案
- GB/T 4513.7-2017不定形耐火材料第7部分:预制件的测定
- 铁路职工政治理论应知应会题库
- 服装购销合同范本服装购销合同
- 科室随访系统-功能清单-DC20180129
- 硕士研究生与导师关系的研究综述
- 飞灰填埋场工程施工方案
评论
0/150
提交评论