电站数据挖掘

上传人:ZJ****1 文档编号:57915406 上传时间:2018-10-25 格式:DOC 页数:13 大小:898.50KB
返回 下载 相关 举报
电站数据挖掘_第1页
第1页 / 共13页
电站数据挖掘_第2页
第2页 / 共13页
电站数据挖掘_第3页
第3页 / 共13页
电站数据挖掘_第4页
第4页 / 共13页
电站数据挖掘_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《电站数据挖掘》由会员分享,可在线阅读,更多相关《电站数据挖掘(13页珍藏版)》请在金锄头文库上搜索。

1、电站数据挖掘数据挖掘实验报告一 背景知识火力发电厂由于设备众多且均较复杂,所需监测数据较多,故全厂的数据量非常大,可以海量来形容。例如以一台600MW机组为例,其中I/O点数超过15000个,运行过程的监控点多达60007000个,各种控制回路有500600个。随着DCS、MIS、S1S及实时数据库等计算机信息系统在电厂中广泛应用,海量数据得以采集和保存。面对这种海量数据的增加,由于受到人力,物力,财力的限制,数据背后所隐藏的深层次知识无法有效地得以理解和使用,相反却带来了“数据灾难”和“数据荒废”。传统的统计分析手段己经很难以满足数据分析的要求,而若需要发现更深层次的规律,并保证系统运行的经

2、济性、安全性和可靠性,则必须提供更快、更有效的决策支持。数据挖掘是从数据中识别出有效的、新颖的、潜在有用的,最终能为人所理解的模式的高级过程。因其与数据库密切相关,因此又被称为数据库中的知识发现(Knowledge Discovery in Databases,KDD),它起源于对数据库及数据仓库的研究,面向海量数据。它处理的对象是原始数据,是一种在数据基础上推断归纳出一般性结论的方法。随着数据挖掘技术的不断发展和在其他行业的大量应用,用于火力发电行业的数据挖掘理论研究也逐渐开始展开,并取得了一定的成果。本文就是基于数据挖掘技术,通过使用weka数据挖掘平台对电厂的实时运行数据进行挖掘,了解数

3、据挖掘的目的、过程,理解数据挖掘的结果,并能够根据所学习的数据挖掘的相关知识,对挖掘的过程参数和结果数据进行分析,以期望发现数据背后隐藏的更深层次的规律。二 数据集描述本文所选用的数据集来源于电站实际运行数据,如下图:该数据集共有162条记录,每一条记录有13个属性,分别为:序号,负荷,循环水进口温度,主蒸汽压力,主蒸汽温度,再热蒸汽温度,再热蒸汽压力,给水温度,排气压力,排烟温度,排气温度,凝汽器真空度,供电煤耗。除序号外其他所有数据均取到小数点后四位,其中排气压力与凝汽器真空度为负值。162条记录中:负荷的最大值为600.5277 ,最小值为300.1253,循环水进口温度的最大值为24.

4、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.4

5、330,供电煤耗的最大值为355.9414 ,最小值为322.6320,三 算法描述3.1 算法选择我们根据所给数据,希望找到提高该机组效率的方法,也就是如何用更少的煤发更多的电,即降低“耗煤率”。煤耗率是指火力发电厂每生产或供应1 kWh电能所需消耗的燃煤量,而煤耗率与负荷、循环水进口温度、主蒸汽温度、给水温度、排气压力、排烟温度等有关系,因此我们可以使用相关算法对影响煤耗的因素进行分析。3.2 关联规则基本概念设是由m个不同项目组成的集合。D是事务数据库,其中每个事务T是I12, ,mIi ii中的一组项目的集合,即。每个事务有一个标识符,称作TID。对于项集,如TIAI果,则称事务T支持

6、A。如果A中有k个项目,则称A为k项集。关联规则是诸如AT的蕴涵式,其中,并且。ABIA IB AB规则的支持度和置信度是两个规则兴趣度量值,它们分别表示发现规则的有用性和确定性。关联规则的支持度:支持度用s表示,其中s是D中事务包含(即A和B二ABBA者)的百分比,它是概率。即是()P ABABsup()()sport ABP AB包含和的元组数 元组总数关联规则的置信度:置信度用c表示,其中c是D中在包含事务A的情况包含BAB的百分比。它是条件概率。()P B AB()()AAcconfidence ABP B A包含和的元组数 包含的元组数为了挖掘出有意义的关联规则,需要给定两个阈值:最

7、小支持度阈值(minsup)和最小置信度阈值(minconf)。这些阈值可以由用户或领域专家设定。如果项集满足最小支持度,和最小置信度,则称它为频繁关联规则。关联规则的任务就是在给定的事务数据库D中发现所有的频繁关联规则。3.3 关联规则的中的Apriori算法Apriori算法是最为经典的关联规则挖掘算法,其基本原理是逐层搜索的迭代:首先找到所有的频繁1项集,用于搜索频繁2项集,用于搜索频繁3项集,如1L1L2L2L3L此下去,直到不能找到维度更高的频繁项集为止。这种方法依赖连接和剪枝这两步来实现。算法的第一次遍历仅仅计算所有包含1个元素的项目集出项的频率,来决定频繁1项集。随后的第k次遍历

8、,包括两个阶段。首先,调用Aprioir-gen函数,通过(k-1)步中产生的频繁(k-1)项集来生成候选频繁k项集Ck。接着扫描数据库D,计算项目集Ck中各元素在D1kL中的支持度。具体算法如下:(1) L1=large 1-itemsets;(2) for (k=2; Lk-1不为空; k+) do begin(3) Ck=apriori-gen(Lk-1); / 新候选物品集(4) For all transactions tD do begin(5) C=subset(Ck,t); / t中的候选物品集(6) For all candidates cC do(7) c.count+;(

9、8) end;(9) Lk=cCk|c.count=minsup;(10) end;(11) Answer = L1L2Apriori-gen函数:Apriori-gen函数可以细化为两大步:合并( join)算法:从任意两个Lk-1最大项集生成候选物品集Ckinsert into Ckselect p.item1,p.item2,.,p.item(k-1), q.item(k-1)from Lk-1 p, Lk-1 qwhere p.item1=q.item1, .,p.item(k-2)=q.item(k-2), p.item(k-1)小于q.item(k-1)修剪(Prune)算法:从C

10、k中除去大小为k-1且不在Lk-1中的子集(1) For all itemsets cCk do(2) For all (k-1)-subsets s of c do(3) if (sLk-1)(4) then delete c from CkApriori算法的两大缺点就是产生大量的候选集,以及需重复扫描数据库。四 挖掘步骤4.1数据格式转化 利用excel打开所给的access,因为weka不可以直接处理“*.xlsx”格式的excel数据,可以处理“*.csv”格式的数据,所以我们 另存为 “电站运行数据.csv”。weka不识别内容中的中文,所以把“电站运行数据.csv”中的:序号,

11、负荷,循环水进口温度,主蒸汽压力,主蒸汽温度,再热蒸汽温度,再热蒸汽压力,给水温度,排气压力,排烟温度,排气温度,凝汽器真空度,供电煤耗用英文: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 temperatur

12、e、Condenser Vacuum、Coal consumption代替4.2. 打开weka软件点击Explorer进入:4.3. 导入数据源 选择“Open file”,找到“电站运行数据.csv”,并打开。从上图可以看出:该数据共有162条实例,每条实例有13个属性。4.3. 数据预处理: 我们要采用关联规则挖掘,所以首相要对数值型数据离散化。首先去掉无意义的“序号”属性,然后我把他们都离散化为5段,离散后的结果如下:其中Coal consumption属性的离散化结果如下图所示:所有属性(除序号外)离散化后的柱状图如下:4.4. 关联规则数据挖掘: 采用waka的Apriori关联规

13、则算法进行挖掘: 设置相关参数如下:最小支持度阈值(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 temper

14、ature=(-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

15、 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

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号