好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

电站数据挖掘.doc

13页
  • 卖家[上传人]:ZJ****1
  • 文档编号:57915406
  • 上传时间:2018-10-25
  • 文档格式:DOC
  • 文档大小:898.50KB
  • / 13 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 电站数据挖掘数据挖掘实验报告一 背景知识火力发电厂由于设备众多且均较复杂,所需监测数据较多,故全厂的数据量非常大,可以海量来形容例如以一台600MW机组为例,其中I/O点数超过15000个,运行过程的监控点多达6000~7000个,各种控制回路有500~600个随着DCS、MIS、S1S及实时数据库等计算机信息系统在电厂中广泛应用,海量数据得以采集和保存面对这种海量数据的增加,由于受到人力,物力,财力的限制,数据背后所隐藏的深层次知识无法有效地得以理解和使用,相反却带来了“数据灾难”和“数据荒废”传统的统计分析手段己经很难以满足数据分析的要求,而若需要发现更深层次的规律,并保证系统运行的经济性、安全性和可靠性,则必须提供更快、更有效的决策支持数据挖掘是从数据中识别出有效的、新颖的、潜在有用的,最终能为人所理解的模式的高级过程因其与数据库密切相关,因此又被称为数据库中的知识发现(Knowledge Discovery in Databases,KDD),它起源于对数据库及数据仓库的研究,面向海量数据它处理的对象是原始数据,是一种在数据基础上推断归纳出一般性结论的方法随着数据挖掘技术的不断发展和在其他行业的大量应用,用于火力发电行业的数据挖掘理论研究也逐渐开始展开,并取得了一定的成果。

      本文就是基于数据挖掘技术,通过使用weka数据挖掘平台对电厂的实时运行数据进行挖掘,了解数据挖掘的目的、过程,理解数据挖掘的结果,并能够根据所学习的数据挖掘的相关知识,对挖掘的过程参数和结果数据进行分析,以期望发现数据背后隐藏的更深层次的规律二 数据集描述本文所选用的数据集来源于电站实际运行数据,如下图:该数据集共有162条记录,每一条记录有13个属性,分别为:序号,负荷,循环水进口温度,主蒸汽压力,主蒸汽温度,再热蒸汽温度,再热蒸汽压力,给水温度,排气压力,排烟温度,排气温度,凝汽器真空度,供电煤耗除序号外其他所有数据均取到小数点后四位,其中排气压力与凝汽器真空度为负值162条记录中:负荷的最大值为600.5277 ,最小值为300.1253,循环水进口温度的最大值为24.8070 , 最小值为13.2708,主蒸汽压力的最大值为17.1801 ,最小值为15.1954,主蒸汽温度的最大值为542.7240 ,最小值为533.4899,再热蒸汽温度的最大值为541.0474,最小值为518.7255,再热蒸汽压力的最大值为3.3629 ,最小值为1.5906,给水温度的最大值为279.5667 ,最小值为238.3696,排气压力的最大值为-91.6119 ,最小值为-98.1801,排烟温度的最大值为113.3043 ,最小值为96.3240,排气温度的最大值为321.9489,最小值为306.7930,凝汽器真空度最大值为-92.4553,最小值为-98.4330,供电煤耗的最大值为355.9414 ,最小值为322.6320,三 算法描述3.1 算法选择我们根据所给数据,希望找到提高该机组效率的方法,也就是如何用更少的煤发更多的电,即降低“耗煤率”。

      煤耗率是指火力发电厂每生产或供应1 kW·h电能所需消耗的燃煤量,而煤耗率与负荷、循环水进口温度、主蒸汽温度、给水温度、排气压力、排烟温度等有关系,因此我们可以使用相关算法对影响煤耗的因素进行分析3.2 关联规则基本概念设是由m个不同项目组成的集合D是事务数据库,其中每个事务T是I12, ,mIi ii中的一组项目的集合,即每个事务有一个标识符,称作TID对于项集,如TIAI果,则称事务T支持A如果A中有k个项目,则称A为k项集关联规则是诸如AT的蕴涵式,其中,,并且ABIA IB AB规则的支持度和置信度是两个规则兴趣度量值,它们分别表示发现规则的有用性和确定性关联规则的支持度:支持度用s表示,其中s是D中事务包含(即A和B二ABBA者)的百分比,它是概率即是()P ABABsup()()sport ABP AB包含和的元组数 元组总数关联规则的置信度:置信度用c表示,其中c是D中在包含事务A的情况包含BAB的百分比它是条件概率)P B AB()()AAcconfidence ABP B A包含和的元组数 包含的元组数为了挖掘出有意义的关联规则,需要给定两个阈值:最小支持度阈值(minsup)和最小置信度阈值(minconf)。

      这些阈值可以由用户或领域专家设定如果项集满足最小支持度,和最小置信度,则称它为频繁关联规则关联规则的任务就是在给定的事务数据库D中发现所有的频繁关联规则3.3 关联规则的中的Apriori算法Apriori算法是最为经典的关联规则挖掘算法,其基本原理是逐层搜索的迭代:首先找到所有的频繁1项集,用于搜索频繁2项集,用于搜索频繁3项集,如1L1L2L2L3L此下去,直到不能找到维度更高的频繁项集为止这种方法依赖连接和剪枝这两步来实现算法的第一次遍历仅仅计算所有包含1个元素的项目集出项的频率,来决定频繁1项集随后的第k次遍历,包括两个阶段首先,调用Aprioir-gen函数,通过(k-1)步中产生的频繁(k-1)项集来生成候选频繁k项集Ck接着扫描数据库D,计算项目集Ck中各元素在D1kL中的支持度具体算法如下:(1) L[1]={large 1-itemsets};(2) for (k=2; L[k-1]不为空; k++) do begin(3) C[k]=apriori-gen(L[k-1]); // 新候选物品集(4) For all transactions t∈D do begin(5) C=subset(C[k],t); // t中的候选物品集(6) For all candidates c∈C do(7) c.count++;(8) end;(9) L[k]={c∈C[k]|c.count>=minsup};(10) end;(11) Answer = L[1]∪L[2]∪…Apriori-gen函数:Apriori-gen函数可以细化为两大步:①合并( join)算法:从任意两个L[k-1]最大项集生成候选物品集C[k]insert into C[k]select p.item1,p.item2,.,p.item(k-1), q.item(k-1)from L[k-1] p, L[k-1] qwhere p.item1=q.item1, .,p.item(k-2)=q.item(k-2), p.item(k-1)小于q.item(k-1)②修剪(Prune)算法:从C[k]中除去大小为k-1且不在L[k-1]中的子集(1) For all itemsets c∈C[k] do(2) For all (k-1)-subsets s of c do(3) if (sÏL[k-1])(4) then delete c from C[k]Apriori算法的两大缺点就是产生大量的候选集,以及需重复扫描数据库。

      四 挖掘步骤4.1数据格式转化 利用excel打开所给的access,因为weka不可以直接处理“*.xlsx”格式的excel数据,可以处理“*.csv”格式的数据,所以我们 另存为 “电站运行数据.csv”weka不识别内容中的中文,所以把“电站运行数据.csv”中的:序号, 负荷,循环水进口温度,主蒸汽压力,主蒸汽温度,再热蒸汽温度,再热蒸汽压力,给水温度,排气压力,排烟温度,排气温度,凝汽器真空度,供电煤耗用英文:Number、Load、Circulating water inlet temperature、Main stream pressure、Main stream temperature、Reheat steam temperature、Reheat steam pressure、Feedwater temperature、Exhaust steam pressure、Funnel temperature、Exhaust steam temperature、Condenser Vacuum、Coal consumption代替4.2. 打开weka软件点击Explorer进入:4.3. 导入数据源 选择“Open file”,找到“电站运行数据.csv”,并打开。

      从上图可以看出:该数据共有162条实例,每条实例有13个属性4.3. 数据预处理: 我们要采用关联规则挖掘,所以首相要对数值型数据离散化首先去掉无意义的“序号”属性,然后我把他们都离散化为5段,离散后的结果如下:其中Coal consumption属性的离散化结果如下图所示:所有属性(除序号外)离散化后的柱状图如下:4.4. 关联规则数据挖掘: 采用waka的Apriori关联规则算法进行挖掘: 设置相关参数如下:最小支持度阈值(lowerBoundMinSupport)=0.1 最小置信度阈值(minMetric)=0.9 显示规则数量(numRules)=10软件自动列出前十条置信度最大的关联规则如下:1. Load='low' 81 ==> Reheat steam pressure='(-inf-1.94506]' 81 conf:(1)2. Feedwater temperature='(-inf-246.60902]' 80 ==> Reheat steam pressure='(-inf-1.94506]' 80 conf:(1)3.Load='low' Feedwater temperature='(-inf-246.60902]' 79 ==> Reheat steam pressure='(-inf-1.94506]' 79 conf:(1)4. Feedwater temperature='(-inf-246.60902]' 80 ==> Load='low' 79 conf:(0.99)5.Reheat steam pressure='(-inf-1.94506]' Feedwater temperature='(-inf-246.60902]' 80 ==> Load='low' 79 conf:(0.99)6.Feedwater temperature='(-inf-246.60902]' 80 ==> Load='low' Reheat steam pressure='(-inf-1.94506]' 79 conf:(0.99)7. Load='low' 81 ==> Feedwater temperature='(-inf-246.60902]' 79 conf:(0.98)8.Load='low' Reheat steam pressure='(-inf-1.94506]' 81 ==> Feedwater temperature='(-inf-246.60902]' 79 conf:(0.98)9.Load='low' 81 ==> Reheat steam pressure='(-inf-1.94506]' Feedwater temperature='(-inf-246.60902]' 79 conf:(0.98)10. Reheat steam pressure='(-inf-1.94506]' 88 ==> Load='low' 81 conf:(0.92)分析上面的规则,我们会发现“==>”右侧没有属性“Coal consumption”,也就是说不能从上面的规则中分析各个因素对煤耗的影响。

      实际上当我把“ 显示规则数量”设置成100,最小置信度阈值设置成0.8时仍然没有我们想要的规则出现为 了继续挖掘相关因素对煤耗的影响,这里我采用了软件提供命令模式(即自己编相关的命 令语句):在“Simlpe CLI”模块中输入如下格式的命令:jav。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.