一种RBF板形识别模型的FPGA实现方法与流程

文档序号:18901093发布日期:2019-10-18 21:57阅读:325来源:国知局
一种RBF板形识别模型的FPGA实现方法与流程

本发明涉及冷轧板带领域,具体涉及到一种板形识别模型的实现方法。



背景技术:

板形识别是冷轧板带生产过程中的重要组成部分。板形仪通过采集的应力信号辨识出当前板形的缺陷状态,从而为板形控制机构提供调整的依据,最终使得板带满足生产的标准。近年来,本领域内的专家学者对神经网络应用于板形识别、预测和控制等方面进行了广泛研究,并取得了不错的成果。但是由于神经网络非常复杂以及现有硬件技术实现存在困难等问题,导致基于神经网络的板形识别模型在实际工程中应用很少。

rbf神经网络是浅层神经网络中的一种典型前馈型局部逼近网络,不仅能够保证全局收敛,而且学习速度快、函数逼近精度高。rbf神经网络有三个层级,第一层为输入层,特征向量通过输入神经元传递入隐层,此层不对特征向量进行运算;第二层为隐层,以隐层各个中心为基准通过径向基函数对输入的特征向量进行映射,此为非线性映射层;第三层为输出层,该层与隐层通过权值连接,主要实现线性分类输出的功能。因此rbf神经网络具有非常简单的网络结构,在能够实现较高逼近精度的前提下计算量相对较小,所以rbf神经网络比其他复杂神经网络更适合应用于实际工程。

在神经网络应用于实际工程之前,需要对其实现方式进行选择。目前神经网络主要还停留在cpu实现的阶段,需要计算机支持,所以体积庞大、并行程度低、处理速度慢,这些缺点限制了神经网络在实际工程中的应用场合。在硬件实现时可选用dsp,与cpu相比,dsp具有更快的处理速度、可直接和外围复杂的设备进行连接、体积小等特点,更适合实际工程场合的需要。本发明选择用fpga作为神经网络的实现方式,fpga不仅可以实现cpu和dsp的所有功能,还有可编程性、运算速度快、设计周期短、可反复配置等等一系列优点。同时,fpga数据并行、流水线并行的特点也让它比dsp更适合于实现分布式并行处理的神经网络。

综上所述,本发明中涉及的一种rbf板形识别模型的fpga实现方法是对神经网络模型硬件实现应用于实际生产问题的探索。



技术实现要素:

本发明的目的在于提供一种rbf板形识别模型的fpga实现方法,该方法可以有效解决使用传统板形识别方法精度低和实时性差,实现后并行程度低、处理速度慢、不满足能耗限制等技术问题。

为了解决上述问题,本发明提供的技术方案为:一种rbf板形识别模型的fpga实现方法,包括以下步骤:

1)在matlab中建立基于遗传算法优化的rbf板形识别模型,利用pca处理后得到的特征向量作为rbf神经网络的输入,rbf神经网络的输出u1,u2,u3,u4为板形的隶属度:

若u1>0,表示具有左边浪,若u1<0,表示具有右边浪;

若u2>0,表示具有中间浪,若u2<0,表示具有双边浪;

若u3>0,表示具有左三分浪,若u3<0,表示具有右三分浪;

若u4>0,表示具有四分浪,若u4<0,表示具有边中浪;

u1,u2,u3,u4形成的数据组成样本对,利用遗传算法对rbf神经网络进行优化;

2)将优化好的基于pca特征提取方法的rbf板形识别模型映射到fpga中进行板形识别。

进一步的,所述在matlab中建立基于遗传算法优化的rbf板形识别模型具体包括以下步骤:

a)进行原始数据的降维和特征提取,包括将板形仪采集冷轧带钢板宽方向分布的内部应力值作为原始数据,对其进行pca降维和特征提取处理,用pca得到的独立综合变量作为特征向量输入到rbf神经网络中去;

b)将rbf神经网络的隐层中心值、中心宽度值和输出层权值定义为遗传算法的个体向量,按照等概率随机分布确定np个个体向量的种群初始值;

c)确定用于板形识别的rbf神经网络优化的控制参数,控制参数包括用于网络训练遗传算法的初始种群个数np、遗传算法的最大学习代数n、网络训练效果的目标值g以及训练样本数目m;

d)按照遗传算法的变异操作、交叉操作和选择操作进行个体向量的优化学习;用优化学习得到的参数来配置rbf神经网络,再将m个训练样本数据代入rbf神经网络来计算输出值,继而计算上述m个训练样本数据对应的4m个网络输出值与其实际值之间的算术差的平方和;该算术差的平方和定义为误差指标函数值,若误差指标函数值小于网络训练效果的目标值g则意味着网络训练成功,否则继续训练网络,g通过训练样本的数量和网络的规模来选取;

e)记录优化后参数,得到一个基于pca的rbf神经网络板形识别模型。

进一步的,所述将优化好的基于pca特征提取方法的rbf板形识别模型映射到fpga中进行板形识别,其过程中包括建立仿真模型,仿真模型包括样本数据输入存储器、pca处理模块、rbf神经网络参数存储器、地址发生器、隐层神经元指数计算模块、隐层神经元激活模块、输出层乘累加器,建立过程包括如下步骤:

a)进行数据格式的转换:

所述数据格式的转换是因为在用fpga实现rbf板形识别模型时选用了定点运算,所以需要将优化好的模型参数转换成定点数据格式;

b)建立pca处理模块与rbf输出层乘累加器:

所述pca处理模块通过转换矩阵对原始数据进行降维和特征提取,所述rbf输出层进行线性分类输出,将pca转换矩阵与输出层权值矩阵以初始化的形式存储到ram中,在数据输入时随地址信号读出,并完成相应的运算;

c)建立rbf隐层神经元:

所述rbf隐层神经元包括用于初始化网络的参数存储模块、神经元计算模块和激活函数模块,所述参数存储模块将训练好的中心值和权值存储在ram中,由地址发生器给出的地址信号中读取出相应的参数对网络进行初始化,从而使模型进行前向推理工作;

所述神经元计算模块将rbf隐层所要实现的映射关系进行拆分处理,以逐步实现,rbf隐层映射关系表达式为:

将其中指数部分的运算拆分为做减法、取绝对值、求平方、做乘法和去负数的运算,在计算模块内实现,指数函数映射在激活函数模块实现;

所述激活函数模块用于实现e指数函数的映射,通过调用cordic核来实现,所实现的映射关系转换如下:

eθ=sinh(θ)+cosh(θ)

将隐层神经元指数计算模块计算出的指数值输入该ip核,将ip核输出的两个旋转结果相加,得到为隐层指数函数映射结果,即为隐层输出。

本发明有益效果为:

1)将遗传算法优化的rbf神经网络应用到板形识别技术中并用fpga来作为实现载体,显著提高了网络的训练效率,有效解决了传统板形识别方法中遇到的训练时间长、精度低和鲁棒性差等问题;另一方面,避免了出现在硬件中训练占用过多资源且精度不高的问题;

2)将基于pca的rbf板形识别模型映射到fpga中,提高了模型的实时性,实现后并行程度高、处理速度快,更能够满足各种存在能耗、实时性等诸多限制的嵌入式的实际工程场合。

附图说明

图1为本发明的流程图;

图2为基于pca的rbf板形识别模型结构图;

图3为本发明中基于遗传算法的rbf板形识别模型优化流程图;

图4为本发明中建立的fpga仿真模型结构图;

图5为采用本发明得到的模型识别出的板形曲线图;

图6为采用本发明得到的模型识别出的左边浪分量识别效果图;

图7为采用本发明得到的模型识别出的双边浪分量识别效果图;

图8为采用本发明得到的模型识别出的左三分浪分量识别效果图;

图9为采用本发明得到的模型识别出的边中浪分量识别效果图。

具体实施方式

下面结合具体实例和附图对本发明做进一步说明。

如图1所示,一种rbf板形识别模型的fpga实现方法,包括以下步骤:

1)在matlab中建立基于遗传算法优化的rbf板形识别模型。利用pca提取特征向量作为rbf神经网络的输入,模型结构如图2所示,rbf神经网络的输出u1,u2,u3,u4为板形的隶属度:

若u1>0,表示具有左边浪,若u1<0,表示具有右边浪;

若u2>0,表示具有中间浪,若u2<0,表示具有双边浪;

若u3>0,表示具有左三分浪,若u3<0,表示具有右三分浪;

若u4>0,表示具有四分浪,若u4<0,表示具有边中浪;

利用u1,u2,u3,u4形成的数据组成样本对,利用遗传算法对rbf神经网络进行优化;

2)将优化好的基于pca特征提取方法的rbf板形识别模型映射到fpga中进行板形识别。

按上述方案,基于遗传算法的rbf板形识别模型优化流程如图3所示,包括如下步骤:

a)进行原始数据的降维和特征提取,包括将板形仪采集冷轧带钢板宽方向分布的内部应力值作为原始数据,对其进行pca降维和特征提取处理,用pca得到的独立综合变量作为特征向量输入到rbf神经网络中去;

b)将rbf神经网络的隐层中心值、中心宽度值和输出层权值定义为遗传算法的个体向量,按照等概率随机分布确定np个个体向量的种群初始值;

c)确定用于板形识别的rbf神经网络优化的控制参数,具体控制参数包括用于网络训练遗传算法的初始种群个数np、遗传算法的最大学习代数n、网络训练效果的目标值g以及训练样本数目m;

d)按照遗传算法的变异操作、交叉操作和选择操作进行个体向量的优化学习;用优化学习得到的参数来配置rbf神经网络,再将m个训练样本数据代入rbf神经网络来计算输出值,继而计算上述m个训练样本数据对应的4m个网络输出值与其实际值之间的算术差的平方和;该算术差的平方和定义为误差指标函数值,若误差指标函数值小于网络训练效果的目标值g则意味着网络训练成功,否则继续训练网络,g应根据训练样本的数量和网络的规模来选取;

e)记录优化后参数,得到一个基于pca的rbf神经网络板形识别模型。

按上述方案,在rbf板形识别模型映射到fpga过程中建立仿真模型,仿真模型包括样本数据输入存储器、pca处理模块、rbf神经网络参数存储器、地址发生器、隐层神经元指数计算模块、隐层神经元激活模块和输出层乘累加器,fpga仿真模型结构如图4所示,建立过程包括如下步骤:

a)进行数据格式的转换:

所述数据格式的转换是因为在用fpga实现rbf板形识别模型时选用了定点运算,所以需要将优化好的模型参数转换成定点数据格式;

b)建立pca处理模块与rbf输出层乘累加器:

所述pca处理模块实现转换矩阵对原始数据进行降维和特征提取的功能,所述rbf输出层实现线性分类输出的功能,两个部分分别涉及转换矩阵与原始数据矩阵、隐层神经元输出矩阵与输出层权值矩阵的矩阵乘法运算,此矩阵乘法运算在本发明中利用乘累加器来实现,首先需要将pca转换矩阵与输出层权值矩阵以初始化的形式存储到ram中,在数据输入时随地址信号读出,并完成相应的运算;

c)建立rbf隐层神经元:

所述rbf隐层神经元设计大致分为用于初始化网络的参数存储模块、神经元计算模块、激活函数模块。存储模块即将训练好的中心值和权值等存储在ram中,在工作时通过地址发生器给出的地址信号从中读取出相应的参数对网络进行初始化,模型即可进行前向推理工作;

所述神经元计算模块即将rbf隐层所要实现的基本映射关系做了细致的拆分处理,以逐步实现,rbf隐层映射关系表达式为:

将其中指数部分的运算拆分为做减法、取绝对值、求平方、做乘法、去负数等运算,在计算模块内实现,指数函数映射在激活函数模块实现;

所述激活函数模块即实现e指数函数的映射,本发明中通过调用cordic核来实现,所实现的映射关系转换如下:

eθ=sinh(θ)+cosh(θ)

将隐层神经元指数计算模块计算出的指数值输入该ip核,将ip核输出的两个旋转结果相加,得到为隐层指数函数映射结果,即为隐层输出。

按照上述步骤在fpga中建立rbf板形识别模型,用来进行板形识别。

本发明方法可用于四辊,六辊单机架或多机架冷连轧机组。以一台单机架六辊轧机为例,六辊轧机轧制的产品包括普通板、高强钢、部分不锈钢和硅钢等。本实例采用机型是900hc轧机,该机组主要技术性能指标和设备参数为:

轧制速度:max300m/min,轧制压力:max8000kn,最大轧制力矩:60kn×m,卷曲张力:4~80kn,来料厚度范围:2.0~4.0mm,板宽范围:460~780mm,成品厚度:0.24~1.5mm;

工作辊尺寸:φ270/φ245×900mm,中间辊尺寸:φ340/φ320×920mm,支撑辊尺寸:φ850/φ790~×850;

中间辊最大横移量:200mm,工作辊正/负弯辊力(单侧):400/254.5kn。

板形测量装置采用15通道的自制板形仪。

本实施例进行的具体计算流程为:

(1)采集接收板形仪测量的冷轧带钢板宽方向分布的内部应力值,测得数据为15维;

(2)对板形仪输出的原始数据用pca的方法进行特征提取和降维,通过综合考虑主成分选择标准,最终选择出3个主成分,利用相应的pca变换矩阵对原始数据处理后,得到独立且不相关的3维综合变量数据,以此来作为rbf神经网络的输入;

(3)将rbf神经网络的隐层中心值、中心宽度值和输出层权值定义为遗传算法的个体向量,按照等概率随机分布确定np个个体向量的种群初始值;

(4)确定rbf神经网络训练学习的控制参数,即遗传算法的初始种群个数np=200、遗传算法的最大学习代数n=5000、网络训练效果的目标值为g=0.001、训练样本数目为m=100;

(5)利用遗传算法对rbf神经网络的参数进行优化,样本数据输入为pca处理后得到的特征向量,输出为u1,u2,u3,u4为板形的隶属度,按照遗传算法的变异操作、交叉操作和选择操作进行个体向量的优化学习;用优化学习得到的参数来配置rbf神经网络,再将m个训练样本数据代入rbf神经网络来计算输出值,继而计算上述m个训练样本数据对应的4m个网络输出值与其实际值之间的算术差的平方和;该算术差的平方和定义为误差指标函数值,若误差指标函数值小于网络训练效果的目标值g则意味着网络训练成功,否则继续训练网络,g应根据训练样本的数量和网络的规模来选取;

(6)记录优化后参数,得到一个基于pca的rbf神经网络板形识别模型,并将优化好的模型参数转换成定点数据格式;

(7)将pca转换矩阵以初始化的形式存储到ram中,在数据读入时,根据地址发生器发出的地址信号读出,与数据进行乘累加运算提取数据特征;

(8)将rbf隐层中心和对应宽度进行相应存储,pca模块输出数据输入到隐层神经元指数计算模块,首先与隐层中心做减法运算,得到的结果可正可负,在进行定点运算的平方运算是可能出现溢出,所以加入一个取绝对值的运算,绝对值结果用来求取平方和,因为映射关系中之后存在平方运算,所以此处求欧氏距离不再进行开方运算,得到平方和与中心宽度常数做乘法运算,最后将乘法结果取成相反数,即得到隐层神经元指数映射关系中的指数值;

(9)指数函数映射调用cordic核来实现,将隐层神经元指数计算模块计算出的指数值输入该ip核,将ip核输出的两个旋转结果相加,得到为隐层指数函数映射结果,即为隐层输出;

(10)将输出层权值矩阵以初始化的形式存储到ram中,在隐层输出结果读入输出层模块时,根据地址发生器发出的地址信号读出,与数据进行乘累加运算,运算结果即模型识别出的板形隶属度。

按照上述流程在fpga中建立rbf板形识别模型,用来进行板形识别。

图5给出了板形曲线图;图6给出了左边浪分量识别效果图;图7给出了双边浪分量识别效果图;图8给出了左三分浪分量识别效果图;图9给出了边中浪分量识别效果图。从图中可以看出本发明提出的技术方案能够很好的完成板形缺陷的识别任务。有效解决使用传统板形识别方法精度低和实时性差,实现后并行程度低、处理速度慢、不满足能耗限制等技术问题,同时避免了在硬件中训练造成资源浪费问题的出现。本发明可以为控制系统提可靠的控制依据,为提高冷轧板带钢生产质量提供了有力保证。

以上实施例仅用于说明本发明的计算思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例,凡依据本发明所揭示原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1