一种机电产品装配误差在线预测方法

    专利查询2022-07-07  113



    1.本发明属于机电产品装配质量领域,特别是一种基于自编码器与boosting-oskelm算法的机电产品装配误差在线预测方法。


    背景技术:

    2.智能制造是机电产品制造的重要方向,对促进机械、信息、电子等行业的发展具有重要意义。机电产品种类繁多、功能多样,已被广泛应用于民用生活、设备生产、海洋探索、航空航天等多个领域,在保证民生和国家战略层面具有重要地位。
    3.机电产品,尤其是高精密装备机电产品,往往有着十分复杂的装配过程,其装配活动多是由装配操作人员在特定的环境下,通过工人手动地,或是操作机器设备,按照规定的装配工艺对产品进行装配。由于装配的不确定性,机电产品装配质量会受到多种不同因素的影响,难以对装配误差进行合理、准确的预测,不利于企业的装配活动的开展与产品质量的控制,加重了企业生产负担。
    4.在机电产品的装配活动中,会产生大量的工业数据,如装配顺序、装配力、焊点应力等。这些数据从多个层级、多个角度隐式地影响着产品装配误差。然而,受限于数据分析能力与装配数据特点,企业并未能很好地利用这部分数据建立起工艺参数与装配误差的映射关系。因此,如何基于这部分工业数据实现对装配误差的科学预测,对于改进装配工艺、提高企业装配效率、降低企业装配成本具有重要意义。


    技术实现要素:

    5.本发明的目的在于提供一种基于自编码器与boosting-oskelm算法的机电产品装配误差在线预测方法,有利于促进对机电产品装配过程质量控制与装配工艺改善,推动企业智能制造的实施。
    6.实现本发明目的的技术解决方案为:
    7.一种基于自编码器与boosting-oskelm算法的机电产品装配误差在线预测方法,包括以下步骤:
    8.步骤1、构建训练样本数据集:确定机电产品装配线中某一工序的装配工艺参数与装配误差;根据历史装配过程数据,组建样本集,每个样本点的输入即为工序的装配工艺参数,输出即为与之对应的装配误差;最后,对该样本集的输入与输出分别做无量纲化处理;最后,将样本数据分为训练集与测试集;
    9.步骤2、基于带有fine-tuning技巧的自编码器进行样本数据降阶表征:根据样本集输入维度数目,搭建自编码器神经网络结构;该神经网络结构分为编码器与解码器部分,编码器是由神经元数量逐渐减少的网络层堆叠而成,而解码器是由神经元数量逐渐增加的网络层堆叠而成;接着,在编码器的输出层拼接多层感知机,其输出结果为所要预测的装配误差;然后,结合修正后的整体网络损失函数,使用梯度下降法更新整体网络连接权重与偏置;训练完成后,将整体网络前部的自编码器剥离下来,结合自编码器重构损失函数,重新
    训练;随后,将自编码器前部的编码器部分剥离下来,并将原样本数据中的工艺输入数据输入至该结构中,输出结果即为原样本输入数据的降维结果;最后,将该降维结果与原样本输出数据组建成新的训练数据集,从而实现样本数据的降阶表征;
    10.步骤3、基于boosting-oskelm的装配误差在线预测:确定可供选择的核函数以及核函数中可供选取的超参数取值;采用boosting提升策略,确定不同核的提升顺序;在既定超参数与提升顺序下,使用基于第一个核的核极限学习机在降阶后的训练集上进行预测,并将预测结果的残差替换掉样本集中的输出;同样地,使用基于第二个核的核极限学习机在样本集上进行预测,并将预测结果的残差替换掉上一次的残差,依此类推,直至所有的核极限学习机均完成预测;随后,将不同核极限学习机的预测结果进行累加,即可得到boosting-kelm的预测性能;通过对预测性能的比较,筛选出预测精度最高的boosting-kelm模型及其对应的核函数超参数与提升顺序;最后,基于最优超参数与最优提升顺序,按照在线贯序极限学习机的增量学习递推公式,实现装配误差的在线预测。本发明与现有技术相比,其显著优点是:
    11.(1)在复杂机电产品的装配中,一道装配工序可能牵涉到大量的装配工艺,因而样本数据点处于较高维的空间中,这就使得装配误差预测易受到多个不同维度数据的影响。本发明提出的降阶表征能够缩小高维空间样本的距离,尽量保留样本有价值的信息,既有利于提升预测算法的推断速度,又有利于预测算法预测精度的提升。
    12.(2)对于某些复杂机电产品,企业的生产多是属于小批量模式,这就使得可提供机器学习的样本数据量并不充足。工程上,常用克里金算法来解决小样本问题,该方法虽然不太依赖数据量,但是比较依赖数据的分布,倘若数据集分布不佳,克里金可能出现难以收敛的情况。除此以外,诸如k近邻算法、支持向量回归等统计学习方法也能够解决小样本问题,但是这些算法往往采用的是离线学习的方式,对于装配过程中产生的新样本数据并没有很好的在线学习方式。本发明提出的基于boosting-oskelm算法的预测方法,不仅吸收了极限学习机的优点:极快的学习速度与网络权重的全局最优,还引入了增量学习,能够较好地适应小样本环境,同时也能应对传统在线学习中的“数据毒药”问题。
    附图说明
    13.图1为一种基于自编码器与boosting-oskelm算法的装配误差在线预测方法流程图。
    14.图2为带有fine-tuning技巧的自编码器的训练流程。
    15.图3为boosting提升的原理。
    具体实施方式
    16.下面结合附图及具体实施例对本发明做进一步的介绍。
    17.附图1是一种基于自编码器与boosting-oskelm算法的装配误差在线预测方法流程图,本发明包括以下步骤:
    18.步骤1、构建训练样本数据集:
    19.根据某一工序历史数据,构建其相应的数据集,将数据集的80%划分为训练集d,剩余的20%划分为测试集e,二者仅在样本数据量上有差别,而在特征结构及输出结构上保
    持一致。
    20.记训练集x为工艺输入,y为误差输出,训练集矩阵如下所示:
    [0021][0022]
    训练集矩阵中,每一行为一个样本点,n为样本数量,m1与m2分别为工艺参数与误差的维度数目;对于第i个样本点,将其输入与输出分别记为xi=[x
    i1
    ,x
    i2
    ,x
    i3
    ,...]与yi=[y
    i1
    ,y
    i2
    ,y
    i3
    ,...];按照归一化数据预处理方法,将训练集矩阵d的每一列数据放缩至[0,1]的范围内,归一化公式如下:
    [0023][0024]
    式中,d
    (j)
    与d

    (j)
    分别为原训练集矩阵与预处理后的第j列,与分别为训练集矩阵第j列的最小值与最大值。
    [0025]
    同样地,对于测试集e也要进行归一化处理,其归一化公式如下:
    [0026][0027]
    式中,e
    (j)
    与e

    (j)
    分别为原测试集矩阵与预处理后的第j列。最后,将预处理后的训练集矩阵与测试集矩阵分别记为d

    和e


    [0028]
    步骤2、基于带有fine-tuning技巧的自编码器进行样本数据降阶表征:
    [0029]
    降阶表征就是一种特征抽取方法,能够有效地去除特征与特征之间的冗余、复杂关系,利于下一步预测算法的实施。
    [0030]
    附图2为带有fine-tuning技巧的自编码器的训练流程。
    [0031]
    (1)搭建预测网络结构:自编码器的输入层与输出层的神经元数目与训练集中的输入维度m1一致,编码器部分与解码器部分呈对称结构,中间隐层神经元遵循先逐渐减小再逐渐增大的原则,激活函数选择tanh函数,tanh函数如下:
    [0032][0033]
    多层感知机的输入层神经元数目为m1,输出层的数目与训练集中的输出维度数目m2一致,其中间隐层元数目遵循先增大再减小的原则,激活函数选择relu函数,relu函数如下:
    [0034][0035]
    在确定自编码器与多层感知机的网络结构后,将多层感知机的输入层拼接在自编码器的输出层,形成整体网络。
    [0036]
    (2)初始化:随机初始化整体网络连接权重w与偏置b、设置优化器学习率η以及终
    止条件迭代总次数epoch。
    [0037]
    (3)梯度下降法更新网络连接权重:对整体网络结构的损失函数按照下式进行修正:
    [0038]
    l=α1l1 α2l2[0039]
    式中,α1与α2为平衡系数,l1为自编码器的重构损失,l2为整体网络的预测损失,二者的计算公式如下所示:
    [0040][0041][0042]
    式中,f(
    ·
    )与g(
    ·
    )分别表示编码器与解码器,w
    (1)
    、b
    (1)
    与w
    (2)
    、b
    (2)
    分别为编码器与解码器对应的权重与偏置,h(
    ·
    )表示整体网络。
    [0043]
    根据(2)中初始化的网络参数,将归一后的x

    输入至整体网络结构,得到对应的损失l(x

    ),接着使用梯度下降法对网络连接权重与偏置进行更新,更新迭代公式如下所示:
    [0044][0045]
    按照上式,在指定的终止条件迭代总次数epoch内更新网络参数,并分别绘制出训练集与测试集上损失l随迭代的变化情况,采用early-stopping策略选取最佳网络参数。
    [0046]
    (4)精调自编码器网络连接权重:整体网络训练完成后,将前部的自编码器剥离下来,保留其内部网络内部权重;根据重构损失函数,使用梯度下降法继续训练其内部参数;同样地,也需绘制出训练集与测试集上损失l1随迭代的变化情况,并采用early-stopping策略选取最佳自编码器网路内部参数。
    [0047]
    (5)将自编码器中的编码器部分剥离下来,并保留(3)中确定的自编码器网络内部参数;编码器的输入为数据集d

    中的x

    ,其输出结果为输入特征的降维结果;与归一化后的训练集输出y

    组成新的训练集即完成了训练数据集的降阶表征。
    [0048]
    步骤3、基于boosting-oskelm进行装配误差在线预测:
    [0049]
    (1)确定核函数类型:核函数是一种常用的解决非线性问题的方法,它将原来的特征空间中的数据映射到新的高维特征空间中。学习是隐式地在新特征空间进行的,不需要显式地定义特征空间核映射函数。根据mercer条件定义核矩阵ω,如下式所示:
    [0050][0051]
    式中,k(xi,xj)表示训练集中第i个样本与第j个样本的核函数关系,其输出结果为一个标量。常见的核函数有:
    [0052]
    1)多项式核函数:
    [0053]
    k(xi,xj)=(a
    ·
    xi·
    xj b)
    p
    [0054]
    2)高斯核函数:
    [0055][0056]
    3)线性核函数(线性核即无核):
    [0057]
    k(xi,xj)=xi·
    xj[0058]
    上述核函数中的a,b,p,σ均为常数。
    [0059]
    在一些有明显线性关系的工序中,可以优先选择线性核;对于无明显线性关系的工序,则优先选择诸如高斯核之类的非线性核。
    [0060]
    (2)确定核函数超参数:boosting提升的原理如附图3所示,根据(1)中确定的核函数,枚举出各种不同的提升顺序,例如高斯核-线性核-多项式核的提升顺序,提升顺序不必非要不同的核函数,也可以对同一核进行多次提升,例如高斯核-高斯核-高斯核。根据经验给出可供选择的核函数超参取值,常见的超参数取值有:a=1,2,3;b=1,2,3;p=1,2,3;σ=10,50,100。随后,在每一种提升顺序上,进行网格搜索,使用不同的超参数组合在训练集上学习,并在测试集上测试,从而选取出最优测试性能所对应的提升顺序与超参组合。
    [0061]
    (3)在线序贯核极限学习机增量学习:在既定核函数与超参的情况下,设截至t时刻的样本集{(x1,t1),...,(x
    t
    ,t
    t
    )},对于第t 1时刻产生的新样本x
    t 1
    ,可根据下式进行预测:
    [0062][0063]
    式中,i表示单位矩阵,c取一个较大的数,通常取1000,t
    t
    为数据集中输出的某一列。
    [0064]
    记:
    [0065]kt
    (x)=[k(x
    t 1
    ,x1),k(x
    t 1
    ,x2),...,k(x
    t 1
    ,xn)]
    [0066][0067]
    则由此,a
    t
    可按照以下公式进行迭代:
    [0068][0069]
    式中,v
    t
    =c-1
    k(x
    t 1
    ,x
    t 1
    )。
    [0070]
    根据块矩阵求逆公式,得到矩阵a
    t 1
    的逆矩阵为:
    [0071][0072]
    式中当第t 1样本对应的装配误差被测量出来,即可按照下式得到t 1时刻对应的θ
    t 1
    ,从而完成在线序贯核极限学习机的增量学习。
    [0073][0074]
    同样地,对于t 2时刻的装配误差预测结果,即为:
    [0075][0076]
    上述过程仅为单个核的装配误差预测结果,按照(2)中的最优提升顺序及最优超参,使用不同核对应的在线序贯核极限学习机逐个预测,并将各预测残差结果相加,即可得到最终的装配误差预测结果。
    转载请注明原文地址:https://tc.8miu.com/read-1461.html

    最新回复(0)