[发明专利]一种基于自适应深度置信网络的固液废弃物智能耦合处理方法有效
申请号: | 201811234832.4 | 申请日: | 2018-10-23 |
公开(公告)号: | CN109214513B | 公开(公告)日: | 2021-08-13 |
发明(设计)人: | 宋威;张士昱;郑珊珊 | 申请(专利权)人: | 江南大学 |
主分类号: | G06N3/08 | 分类号: | G06N3/08;G06N3/06;G06N3/04;G16C20/70 |
代理公司: | 大连理工大学专利中心 21200 | 代理人: | 梅洪玉;刘秋彤 |
地址: | 214122 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 自适应 深度 置信 网络 废弃物 智能 耦合 处理 方法 | ||
1.一种基于自适应深度置信网络的固液废弃物智能耦合处理方法,其特征在于,步骤如下:
步骤1、对固体废弃物和液体废弃物进行测量,分别得到固废数据集和液废数据集,对两个数据集进行预处理,并分别划分得到固废训练数据集、固废测试数据集、液废训练数据集和液废测试数据集;
步骤2、将步骤1得到的固废训练数据集输入到ADBN模型中,同时加入可燃气体作为ADBN模型的一项输入,用来模拟处理液废后产生的可燃气体;使用对比散度算法CD无监督地自底向上单独训练每一层受限玻尔兹曼机RBM,并且在训练过程中,通过自适应增减枝算法,优化当前RBM的网络结构,通过迭代训练,得到每个RBM的网络结构、权重和偏置;
步骤3、将步骤2得到的ADBN网络结构和参数值作为微调阶段的初始值,使用自顶向下的反向传播算法微调整个ADBN网络,得到最终的用于处理固废的ADBN网络模型;
步骤4、将步骤1预处理后得到的液废训练数据集输入到另一个新的ADBN模型中,同时加入热量作为ADBN模型的一项输入,用来模拟处理固废后产生的余热;按步骤2中的训练方法训练网络,得到ADBN的网络模型;然后在最后一层RBM后增加一层输出层,用来预测适合该液废训练数据集的处理行为,包括温度和溶解氧DO含量,并且预测液废处理过程中产生的可燃气体;输入液废训练数据集,按步骤3所述方法微调整个ADBN网络,得到最终的用于处理液废的ADBN网络模型;
步骤5、分别将固废测试数据集、液废测试数据集输入到步骤3、步骤4所得最终的用于处理固废和液废的ADBN网络模型中,最后输出预测结果。
2.根据权利要求1所述的固液废弃物智能耦合处理方法,其特征在于,所述步骤1中的预处理为:把固废数据集和液废数据集归一化到[0,1]之间,归一化公式为:
其中,为数据集的特征值,ymax和ymin分别为同种数据集中所有特征的最大值和最小值,y是经过归一化后的数据集。
3.根据权利要求1或2所述的固液废弃物智能耦合处理方法,其特征在于,所述步骤2的具体操作如下:
步骤2.1,构建ADBN模型,设置ADBN模型的各参数值:可视层神经元、初始隐藏层神经元和隐藏层层数、学习率、迭代次数和微调次数;其中,可视层神经元个数为训练数据集的特征维数;
步骤2.2,将预处理后得到的固废训练数据集输入到第一层RBM中,使用CD算法对RBM进行预训练,并且在训练过程中,通过自适应增减枝算法,优化当前RBM的网络结构;
(1)RBM的能量函数F(u,g;θ)以及可视层和隐藏层神经元的联合概率分布Q(u,g;θ)为:
其中,ui(1≤i≤I)和gj(1≤j≤J)分别表示可视层神经元和隐藏层神经元,i表示第i个可视层神经元,I是可视层神经元的个数,j表示第j个隐藏层神经元,J是隐藏神经元的个数,w是可视层和隐藏层之间的权重矩阵,a和d分别是可视层神经元和隐藏层神经元的偏置,θ表示模型中的参数,即θ={w,a,d};Z是对所有可能的可视层和隐藏层神经元对求和;
RBM使用对比散度算法经过一步吉布斯采样得到训练样本的近似重构Q(u;θ),利用贝叶斯公式的原理,根据公式(3)求出可视层神经元u的边缘概率分布;然后根据重构误差更新网络参数θ={w,a,d};其中:
在吉布斯采样过程中,可视层神经元u和隐藏层神经元g的条件概率分布为:
(2)在训练过程中,根据当前训练情况,通过自适应增减枝算法,优化RBM的网络结构;
(2.1)利用WL(Weight Length,权重长度)方法来监测权重w的变化情况:
WLj(m)=||wj(m),wj(m-1)|| (7)
其中,wj(m)是隐藏层神经元j在经过m次迭代后的权重向量;WL的值反映了两次迭代中隐藏层神经元j的权重向量的变化;
(2.2)从局部和全局两个方面来描述增枝条件,局部条件和全局条件分别用于找出各个隐藏层神经元对应于某个训练样本的最大的WL值,以及使各个隐藏层神经元的WL值增大的样本占所有训练样本的比例;
局部条件定义为:
其中,是在第m次迭代中,第j个隐藏神经元对第n个输入样本的WL值,max()是最大值函数;
全局条件定义为:
其中,N是固废训练数据集中样本的个数,N'是与上一次迭代相比使第j个隐藏层神经元的WL值增多的样本个数,即
将这局部条件和全局条件相乘即得到增枝条件:
MAX_WLj(m)*rj(m)>q(m) (10)
其中,q(m)是一条曲线,用来作为可变阈值,其定义为:
其中,m是当前迭代次数,epoches为最大迭代次数,h表示曲线的曲率,qmax和qmin分别是曲线的最大值和最小值;当第j个隐藏层神经元满足公式(10)时,则该神经元将被分成两个神经元,并且新神经元的各参数都为0;
(2.3)当RBM训练完成后,开始减枝;
将隐藏层神经元对所有样本激活概率的标准差α(j)作为减枝条件:
α(j)<θA (12)
其中,θA是一个阈值;当第j个神经元满足公式(12)时,则移除该神经元及其所有参数;同时,作一条关于减枝率与预测准确率之间的权衡曲线,根据此曲线选择θA的值,使移除更多的冗余神经元的同时保留原始准确率;标准差α(j)为:
其中,n=1,2,3,…,N,N是输入固废训练数据集中样本的个数,AP(n,j)表示第j个隐藏层神经元对第n个输入样本的激活概率,μj表示第j个隐藏层神经元对所有输入样本的平均激活概率;
(2.4)在减枝后,重新训练RBM,使剩余的神经元能够补偿被移除的神经元,减枝后再重训练为一次迭代;每次减枝都要更新阈值θA:
θA←θA+δ(iter) (14)
其中,δ(iter)为使θA满足当前减枝所需的减枝率,通过δ(iter)来更新每次减枝中的阈值以移除更多的神经元;每次减枝都是一次贪心搜索,根据每次减枝中的权衡曲线,在不损失准确率的情况下找到最佳减枝率;
步骤2.3,当前RBM确定网络结构后,使用能量函数作为增加新RBM的条件:
其中,Fl是第l层RBM的总能量,由公式(2)求得,l=1,2…L,L是ADBN当前的层数,n表示第n个训练样本,θL是阈值;当整体网络的平均能量满足公式(15)时,则增加一层新的RBM,并且新RBM各参数的初始化与初始结构相同;之后把当前RBM的输出作为新增加的RBM的输入;
步骤2.4,按照步骤2.2和2.3循环训练网络,得到ADBN的网络结构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江南大学,未经江南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811234832.4/1.html,转载请声明来源钻瓜专利网。