制造业OEE&R语言数据挖掘之人工神经网络探索

这篇案例用人工神经网络算法对铅酸电池制造业的OEE统计情况进行分析:对OEE记录数据集进行训练,用训练好的模型对测试集测试,预测OEE。

OEE:设备综合效率,即表现设备实际的生产能力相对于理论产能的比率,是一种独立的测量工具。可以帮助管理者发现和减少生产中存在的六大损失。·可以针对问题,分析和改善生产状况及产品质量。·能最大化提高资源和设备的利用率,挖掘出最大的生产潜力。 

步骤:

1、数据准备

2、选择算法

3、编程建模

4、分析结果

5、评价

一、数据准备

本次案例的数据源是极板车间6月份所有开机的涂板机OEE报表,将其汇总整理后成如下表格,如下图所示

 

制造业OEE&R语言数据挖掘之人工神经网络探索_第1张图片

 

二、选择算法

这次选择经典的B-P反向传播网络。

B-P反向传播模型为多层感知机结构,其中不仅包含输入和输出节点,还有一层或多层隐层,又称多层感知机模型,B-P反向传播网络的特点:

1、包含隐层

2、反向传播

3、激活函数采用Sigmoid函数

 

三、编程建模

R代码如下:

library(nnet)  #载入R包
oeedata<-as.data.frame(oeenet4)  #先从电脑中导入EXCEL到R,然后将数据集转换成数据框格式
oeedata1<-oeedata[,-1]  #删掉第一列,第一列数据是设备编号,在本次分析中没用
index<-sample(1:nrow(oeedata1),(round(0.9*nrow(oeedata1))))  #抽样,36行数据,随机抽90%的行号
scaled<-as.data.frame(scale(oeedata1[,-17],center=FALSE)) #center=false 效果最好,没有减去均值,直接除以均方根;对OEE以外的值进行标准化,然后再合并起来作为训练集和测试集,
train_<-scaled[index,]  #训练集
train_$OEE<-oeedata1[index,]$OEE #训练集增加一个OEE变量
test_<-scaled[-index,]  #测试集
test_$OEE<-oeedata1[-index,]$OEE #测试机增加一个OEE变量
set.seed(12345) #设置随机数种子,使每次的运行的初始随机数是一样的
nn<-nnet(OEE ~.,
         data=train_,linout = T,size=50,decay = 0.001,maxit = 1000)  #训练神经网络,如果是预测分类,linout=f,如果是预测离散连续则linout=t    

prnn<-predict(nn,test_) #使用测试集预测
test_$OEE  #显示测试集OEE实际值
prnn #显示测试集OEE预测值
plot(prnn~ test_$OEE) #图形~预测和实际

 

四、分析结果

 

R跑出的结果截图如下图所示

制造业OEE&R语言数据挖掘之人工神经网络探索_第2张图片

测试集实际值:

0.61、0.92、0.51、0.6

神经网络预测值:

0.55、0.92、0.42、0.61

 

预测准确率为:89% 100% 79% 98%

从这个结果来看,预测准确率比较高,但是预测值之间的差异很大。

 

在上面的代码:nn<-nnet(OEE ~.,data=train_,linout = T,size=50,decay = 0.001,maxit = 1000),其中size 、decay、maxit经过了多次调试,不断的试不同的取值,才获得相对不错的结果。从网上的资料来看,训练神经网络的参数没有固定的套路,需要不断的尝试。。果然是黑箱算法。

 

我分析了一下正确率差异大的问题:1、数据太少,模型训练不充分 2、参数设置还可以更优 3、数据本身质量可能有问题,怀疑现场工人填数据不是真实的数据

 

五、评价

本次案例通过训练OEE数据集,得到神经网络模型,然后用模型预测OEE,得到较高正确率的结果。

这种分析场景在实际业务中基本是不可能出现的,但是通过这次研究,可以得到两个经验:1、如果能够获得完全真实的OEE数据,对其进行训练,训练出的模型可以判断以后的数据的填报真实性,比如停机时间可以作为输出变量,OEE作为输入变量,把预测的停机时间和填报的时间比对,若差异比较大,则填报的数据可能造假。

2、可以将人工神经网络模型拓展到质量分析预测,成本分析预测、设备参数-质量预测等场景。总之,人工神经网络模型可以适用于很多生产过程中的“黑箱”,如果使用得当,会给生产管理带来很大的帮助。

 

 

你可能感兴趣的:(数据挖掘案例,神经网络,r语言)