APP下载

基于MLP 神经网络的铝电解槽出铝量预测

2021-12-01倪小峰

智能计算机与应用 2021年8期
关键词:电解槽电解质神经元

倪小峰,曹 斌

(1 贵州大学 大数据与信息工程学院,贵阳 550025;2 中铝智能科技发展有限公司,杭州 310000)

0 引言

随着现代信息化水平和大数据相关技术的发展,“数化世界,万物互联”已成为时代发展的必然趋势[1]。在铝电解工艺中,电解流程中产生的各种参数并不都是能够实时监控的。因此,从已知的参数中发现数据之间的关联关系及规律,进行动态分析及预测成为极其重要和亟待解决的问题。

铝电解槽由槽体、阳极以及阴极构成。熔盐电解槽在高温、强腐蚀的环境中工作,在炭素体阳极发生氧化反应,阴极发生还原反应产出铝液[2],积存于电解底部,车间操作人员定期出铝,铸造成铝产品。铝电解生产是一个多变量耦合、大延迟以及非线性工艺生产过程。维持电解过程的两大平衡(能量和物料平衡),是保障其生产高效稳定运行的关键因素。然而,铝电解的两大平衡受多种因素、指标的共同影响,耦合关系复杂,对氧化铝添加量和出铝量的正确决策是维持两大平衡,保证经济效益最直接、有效地途径[3-4]。本文将铝电解工艺生产过程中所产生的各种参数进行分析,利用历史生产数据,将特征选择得到的强特征作为MLP 神经网络的输入,出铝量作为输出对网络进行训练,通过训练、测试和验证,最后得出一个预测模型,为一线工作人员提供槽作业的指导作用。

1 数据预处理

数据预处理是实验的前提,包括了数据的缺失值处理、规一化处理、特征选择等内容。对于铝电解工业,影响其生产过程的参数众多,而且各个槽控系统参数之间存在着极其复杂的关联关系。如:电解槽工作电压、氧化铝下料量、氟化铝下料量、电解质水平、铝水平、分子比等多达十几项指标,若其中任何一个发生变化,都可能导致其它参数随之发生相应的变化。所以为了使实验结果具有可靠性,数据特征处理至关重要,需根据步骤依次进行。

1.1 数据采集与分析

本次实验数据来源于中铝集团贵州某铝厂槽控机系统监控的实时数据和人工采集的每日真实铝电解槽生产数据。每个电解槽的相关参数包括铁含量、硅含量、电解质水平以及铝水平等,总计10 维2 000多条特征数据。通过所采集的数据进行观察,分子比和氧化铝浓度数据缺失过多,因此后续实验和分析不考虑这两个参数。之后,再利用XGBoost[5]机器学习算法将剩余参数进行重要性排序。

1.2 数据Z-score 标准化

实验数据集有10 个参数,并且各个参数指标的数据量级有着非常明显的差异。如:每天出铝量的平均值达到了2 850 kg,而铁含量、硅含量、噪声和氟化铝下料量等数据的量级则比较小。考虑到实验数据在数量上存在着比较大的偏差,必须对实验数据进行标准化处理。本文采用的是Z-score 标准化。

利用Python 中自带的“.describe()”函数,可以从原始数据组中提取标准差和均值。将数据处理为符合正态分布的数据集,其平均值为0,标准差为1。这样做有利于减小因数据差异太大而导致的结果误差。转化函数为:

其中,μ表示各个参数的均值,σ代表相关参数标准差。

1.3 数据相关性分析

Pearson 相关系数用于衡量两个变量之间的变化趋势的方向及程度[6],计算表达式如下:

式中,μ为实验数据集的均值;σxy为参数x与y之间的协方差;r∈[-1,1]。通过r值的大小可以判断相关参数之间的相关性强弱。若任意两个参数之间的相关系数大于0,说明两个参数是正相关关系,当两个参数的相关系数小于0 时,说明两个参数呈负相关状态。总的来说,r的绝对值越大,表示两个参数之间的相关性越强。

Pearson 相关系数热力图如图1 所示,Fe含量与Si含量呈正相关,铝水平与电解质水平呈正相关,氧化铝下料量与出铝量呈正相关。在铝电解过程中需要保证铝水平和电解质水平保持在一定范围内,才能保证电解槽处于稳定状态,以达到最佳的电解反应,获得最优的实际出铝量。

图1 相关系数热力图Fig.1 Heat map of correlation coefficient

2 MLP 神经网络

2.1 MLP 原理

MLP 神经网络的基本运算单元是神经元[7],如图2 所示,x1、x2、…、xn为神经元的输入,y为神经元的输出。显然,不同的输入对神经元的作用是不同的,因此用权值w1、w2、…、wn来表示影响程度的不同。神经元内部由两部分组成;第一步是把所有的参数进行求和,第二步负责对第一步的结果求和,最后“激活”求和结果,得到最终该神经网络的输出结果。

图2 神经元模型Fig.2 Neuron model

加权求和公式如下:

式中,b为偏移量,该偏移量也可以定义为输入恒为1 的权值w0,即权值也包括偏移量,因此上式可以改写为:

且x0≡1,激活公式为:y =f(μ),f(.)称为激活函数。

多层感知器模型(Multi-Layer Perceptron,MLP)是人工神经网络模型中的一种,由一个输入层、一个或多个隐含层、一个输出层组成,能够描述一组输入变量到输出变量之间复杂的映射[8]。本文设计的模型中,影响出铝量的参数信息通过神经网络的输入节点进入,输入的数据参数信息及一系列复杂处理、加工通过输出层和隐含层,借助权值w完成。同时对数据进行反向传播自动更新权值和阈值,然后寻找整个过程的最优解,最终出铝预测值量由搭建模型的输出节点得到,实现从历史经验数据来预测出铝量的模型。

2.2 输入参数的选取

通过观察操控系统各个相关参数的工艺曲线变化情况,输入参数的选取必须是对出铝量有着重要影响的。通过实地考察、查阅铝电解的相关资料以及查看历史生产相关参数,分析得到电解质水平是铝电解槽的重要技术参数。电解质水平应该保持一定的高度,太高和太低都不利于电解的进行,电解质太高容易发生阴极的使用率,减低和降低电流效率,电解质太低导致电解槽发热,稳定性差,最终会对出铝量产生重大影响。铝水平过高或者过低都会引起电解槽温度不稳定,从而影响电解过程导致出铝不能达到最优。另外,氧化铝下料量也直接影响着氧化铝的浓度,氧化铝的浓度过高或过低都会导致电流工作效率不稳定;Fe含量和Si含量也会影响电流的工作效率;工作电压波动会引起电解槽的稳定,工作电压如果出现急速上升或者下降会导致电解槽的温度不稳定和电解过程的不稳定,最终影响出铝量。

综合工艺专家经验、数据的相关性分析结果以及电解车间里技术人员经验分析,最后选择电解槽噪声(Norse)、工作电压(Work.V)、电解质水平(Bath.L)、铝水平(AL.L)、氧化铝下料量(ALO)、氟化铝下料量(ALF.Q)、电解质温度(Bath.T)、铁含量(Fe)和硅含量(Si)作为神经网络的输入参数,选择实际出铝量(Act.Tap)作为输出结果。

2.3 隐含层的确定

在搭建神经网络时最重要的一点是神经元个数和网络参数的选择,两者之间有着密切的联系。神经网络如果能够确保隐含层有着足够多的神经元,所搭建的神经网络模型就可以实现复杂度较大的映射。在实际工业生产中,隐含神经元个数一般是通过试错法来进行调整的。MLP 网络的搭建包括一个或多个隐含层,而神经元个数需要根据公式(5)来确定,然后不断进行试错调整,直到最终找到最优参数为止。

式中,b为神经元个数,a为输入节点数。

经过反复实验及对结果的分析,出铝量预测模型输入参数是通过Python 中自带的相关分析函数“DataFrame.corr()”而得。其计算出参数之间的相关度,并且把相关度从高低排序后,选取相关度高的参数作为模型的输入参数。最终确定神经网络模型的输入层为9 个输入变量、隐含层有17 个神经元,输出层为电解槽实际的出铝量;激活函数为Sigmoid,表达式如下;

3 实验过程与结果分析

3.1 MLP 神经网络实验

本次实验在Tensorflow[9]的环境下使用Python语言编写程序[9],并在CPU2.50 GHz、内存4 Gb、Windows10 操作系统的计算机上进行电解槽出铝量预测实验。该实验采用贵州某铝厂350KA 系列电解槽的历史数据,表1 中展示了部分数据集;工作电压(Work.V)、噪声(Norse)、氟化铝下料量(ALF.Q)、氧化铝下料量(ALO)、电解质温度(Bath.T)、电解质水平(Bath.L)、铝水平(AL.L)、铁含量(Fe)和硅含量(Si)作为神经网络的输入参数,实际出铝量(Act.Tap)为预测结果。MLP 神经网络的实验步骤如下:

表1 数据集部分样本Tab.1 Data set partial sample

Step 1输入和输出的数据集Z-score 标准化处理。

Step 2数据集进行随机划分,将20%的数据作为测试集,80%的数据集作为训练模型的训练集。最后再选取60 天的数据对MLP 模型预测效果进行验证。

Step 3使用搭建好的神经网络模型对训练集的输入和输出参数进行训练。

Step 4使用MLP 出铝量预测模型对测试集的输入参数进行预测。

Step 5将预测值与真实值进行反归一化处理,得出MAE(平均绝对误差),最后再画出预测值和实际值之间曲线对比图进行分析。MAE计算公式如下:

式中:n、yi、分别代表测试集数据数量、第i行真实值和第i行预测值。

3.2 训练与预测结果分析

损失函数衰减过程如图3 所示。训练集数据在迭代25 次之后,测试集的损失函数稳定在5.0~7.5左右。

图3 损失函数衰减图Fig.3 Attenuation diagram of loss function

使用测试集数据进行出铝量预测时,将测试数据集各相关参数通过神经网络模型得到预测值曲线,然后再与每日出铝量实际值曲线进行比较拟合,如图4 所示。通过比对两条曲线的变化趋势,出铝量的平均绝对误差MAE =35.8,该误差均在铝电解工业误差允许范围之内,MLP 神经网络对铝电解生产过程中所产生的历史数据进行拟合回归后,该模型利用经验数据中所含有的规律完成对数据的学习训练,然后在一定误差范围内作出出铝量的预测。

图4 预测值和测试值曲线图Fig.4 Predicted and tested value curves

4 结束语

本文利用tensorflow 机器学习框架,结合Python编程语言搭建了铝电解槽的出铝预测模型。针对贵州某铝厂350KA 一产区某电解槽的生产历史数据进行数据预处理,从铝电解工艺生产过程中产生的一系列参数中,筛选出9 个主要参数,用搭建的神经网络对电解槽的出铝量进行预测。通过多次输入不同时期的数据得到神经网络预测的值和实际的出铝量对比验证了该模型的可行性。在实际生产过程中,将该模型应用到铝电解的生产分析中,不仅对操作人员进行槽作业时有一定的指导作用,而且减少了电解原料的损失。实验证明,该模型在铝电解工业上有一定的参考价值,算法具有一定的实用性。

猜你喜欢

电解槽电解质神经元
AI讲座:神经网络的空间对应
区域电网中420KA铝电解槽降负荷的生产实践
“离子反应”常见考点例析及规律总结
判断强弱电解质的四种经典模式
400KA电解槽槽壳变形的原因分析
仿生芯片可再现生物神经元行为
这个神经元负责改变我们的习惯
研究人员精确定位控制饮酒的神经元
2016年贵州高考电解质溶液试题赏析
谈如何延长铝电解槽使用寿命