基于DTW聚类与LSTM的螺栓拧紧异常分类研究
2023-07-25杨文强
成 铭, 郑 宇, 杨文强
(上海交通大学 机械与动力工程学院,上海 200240,E-mail:chengming1996@sjtu.edu.cn)
每年在制造行业需要千亿个螺栓用于装配组装,螺栓拧紧过程机理复杂,除了作用于材料变形的剪切力和拉力外,还会受到振动、温度、风力、流量、压力、负载等其他作用力,这些信号均为非线性且不平稳的信号,这些物理信号采集困难,需要用到高精度的传感器,且采集过程耗时耗力。另外,传感器在采集数据时也会不可避免地带来一些噪声,这些都导致了原始数据中所蕴含的螺栓拧紧过程的信息被弱化,更加难以从原始数据中直接挖掘出螺栓拧紧过程中所处的状态及其合格的质量与不合格的故障类别[1-3]。
拧紧结果的异常检测算法是具使用需求与研究难度的内容,一旦拧紧系统对于异常结果有准确的分类与识别,那么拧紧错误的追溯与反馈将变得易于实现。王磊采用大数据分析的方法对螺栓拧紧结果数据进行质量评级与异常识别,他针对普通螺栓和高强度螺栓的特点,分别采用K-means与Dbscan聚类算法,通过无监督学习方式,对拧紧结果数据做分类,并通过6-sigma质量评价方法实现拧紧结果质量评级[4]。贾全超将拧紧数据视为不平衡数据集,采用Smote算法消除不平衡带来的影响,选取拧紧过程的直接与间接特征,在使用PCA特征降维后,采用机器学习的XGboost算法实现拧紧异常的分类检测[5]。Jerry针对螺栓拧紧过程拧转曲线的物理特征,将拧紧过程划分为多个阶段,在阶段分类的基础上,对拧紧过程与结果数据考虑时间序列的状态变化,采用深度学习的LSTM模型进行拧紧数据集异常分类,并通过决策树的方法进行实时阶段预测,达到对拧紧状态的实时控制[6]。此外,Cheng提出了基于螺栓拧紧知识的过程模型,构建各个阶段的力学状态模型,并将其输入到隐藏的马尔可夫模型(HMM)中,以估计螺丝驱动过程中的阶段和结果,通过无监督的方式,实现螺丝拧紧的自动标记与无监督学习[7-8]。综上所述,现阶段的拧紧结果异常检测算法已经取得不小的发展,同时各种算法也被应用于异常的分类中,然而如何实现准确、快速、低成本的拧紧状态感知与标定,同时结合合适的有监督分类算法,仍然是一个值得深入研究并有相当意义的问题。
根据上汽大众某乘用车装配工艺拧紧数据表现的问题进行分析,螺栓拧紧过程滑牙、疲劳以及螺栓拧断等异常模式复杂,同时拧紧序列尺度不一致,拧紧点位繁多导致的异常识别困难,其具体曲线呈现形状不一,使得质检人员工作繁杂重复且准确率不高。针对以上问题,需要一种智能化的,具有高准确率的识别方法,能够解决对于不同质量等级的拧紧曲线进行高效识别的问题。
本文从上汽大众螺栓拧紧溯源数据库中提取一万条拧紧数据,针对数据集的特点以及现有分类模型存在的缺陷,提出一种基于DTW的K-means聚类方法与LSTM-attention神经网络模型的拧紧异常分类方法,有效得解决了现有的生产环境下的质量检测问题,其具体拧紧异常分类方法技术路线如图1所示。
▲图1 拧紧异常分类方法技术路线
首先,针对数据点位类别数据缺失对分类精度造成的影响,采用K-means聚类方法来获取点位类别信息,同时,提出一种基于动态时间规整DTW算法来控制拧紧序列数据的尺度平衡,提高聚类效果。其次,针对拧紧序列长度冗长对梯度计算造成的干扰,提出在LSTM-NN神经网络模型中采用注意力机制,增加对有用输入信息的筛选,提高分类训练的准确率。最后,将数据集划分为类别簇后,分别训练其分类模型,通过加权平均获得最终的分类结果[9-11]。
1 基于动态时间规整的拧紧点位聚类
1.1 K-means聚类分析方法
聚类分析是数据挖掘领域中非常重要的领域之一,对研究的事物按照一定的规律进行有效地分类,使分类结果能够清晰地反映每一类的特征。考虑到拧紧数据集异常数据以簇的结构分布,采用距离作为相似度的度量指标,通过K-means的聚类方法来提取拧紧曲线的点位特征信息。在算法具体应用中,基于聚类结果指标的优劣,确聚类类别数K[12]。K-means 聚类的实现步骤如图2所示。
① 为每个聚类选择一个初始聚类中心;
② 将样本集按照最小距离原则分配到最邻近聚类;
▲图2 K-means算法流程
③ 使用每个聚类的样本均值更新聚类中心;
④ 再次步骤②、③,终止条件为聚类结果中心位置恒定;
⑤ 输出最终的聚类中心和k个簇划分;
在计算第②步时,为了判断某个观测xi=(xi1,xi2,…,xij,xip)应该被分配到哪个类中心,本文选用距离的平方总和最小作为标准
(1)
1.2 DTW时间动态规整算法
考虑到拧紧数据集中的每条曲线尺度都不一致的问题,用动态时间规整算法来优化K-means聚类的效果。
DTW 算法通过计算比较相似性指标来解决时间序列的尺度不一问题,是一种具备延展性的方法。相比欧氏距离指标,DTW 对不稳定数据的敏感程度更低,并用距离指标度量不同尺度的时间序列,使结果更精准[13]。
其计算过程为
(2)
(3)
式中:q、c为两组输入序列;W=w1,w2,…,wK为路径设置;DTW(Q,C)为当两组输入序列欧式距离为最小时的路径集合,其中K对不同长度的路径做补偿;γ(i,j)为累计最小动态规整距离的迭代计算。
DTW针对拧紧尺度不一致的拧紧曲线的不同长度序列进行时间上的对齐。DTW通过设置一个计算函数,通过计算结果拉长、缩短其中某一个信号,使得两者之间的误差达到最小。其具体实现效果见图3所示。
1.3 聚类方法评价指标
1.3.1 霍普金斯统计量
判定数据的聚类趋势指数,用霍普金斯统计量,取任意N个点与最近向量的距离和,再取N个点与最近向量的距离和,前者除了两者的和,如果纯随机则在0.5附近,有聚类趋势的话会趋近于1或0[14]。
▲图3 DTW实现序列尺度一致
1.3.2 轮廓系数
判定聚类的类别数量及其轮廓系数,趋向于1的为最好。
(4)
1.3.3 协方差矩阵系数
协方差矩阵(CH)系数,其具体含义是簇间与簇内的协方差矩阵比值,分类效果与CH值呈正相关。
2 基于动态时间规整的拧紧点位聚类
2.1 神经网络模型
长短期记忆神经网络通过记忆保存的形式,解决了传统RNN模型容易出现的梯度问题,在梯度爆炸内容上具有针对性。
LSTM单元结构为3层模型,分别是输入、隐藏、输出层,LSTM模型通过记忆保存,将输出层与隐藏层关联起来。LSTM-NN设置cell作为单元结构,以此来作为判断器,用来区别信息的可用性,这是LSTM区别于RNN的原因。Cell中存在三个门结构,作用为输入、遗忘和输出。Cell对于信息的判定规则设置为:无用信息在经过遗忘门时被计算筛选,有用信息被保留,通过输出门输出,这充分解决了数据依赖的问题,并提高了筛选效率[15-16]。LSTM单元的结构组成如图4所示。
LSTM中输入门it、遗忘门ft、输出门ot、输入结点gt、细胞状态ct和细胞输出yt按照式下面公式计算:
it=σ(Wxi·xt+Whi·ht-1+Wci·ct-1+bi)
(5)
ft=σ(Wxf·xt+Whf·ht-1+Wcf·ct-1+bf)
(6)
Ot=σ(Wxo·xt+Who·ht-1+Wco·ct-1+bo)
(7)
gt=tanh(Wxc·xt+Whc·ht-1+bc)
(8)
Ct=ft·Ct-1+it·gt
(9)
yt=ot·tanh(Ct)
(10)
▲图4 LSTM单元结构组成图
式中:xt∈Rk—输入序列;σ—Sigmoid函数,σ作用于遗忘门、输出门、输入门,信息的筛选程度、输出为[0,1],分别表示通过程度为禁止和允许;Wxi、Whi、Wci、Wxf、Whf、Wcf、Wxo、Who、Wco、Wxc、Whc—权重矩阵;bi、bf、bo、bc—权重的设定偏置值;ht—未被筛选信息的是否隐藏情况。
2.2 Attention机制
由于实际拧紧工作的工艺要求不同,在分类工作中,输入的拧紧序列点长短不一,最长的序列曲线可由数千个点组成。拧紧序列点作为长输入序列,对模型的训练学习带来较大的问题。如果进行原封不动输入训练,首先这会导致训练时间大大增长。其次,尝试在很长的序列里进行反向传播往往会出现梯度消失问题,对模型的可靠性造成减弱。因此在 LSTM 模型中,步长通常会被限制在一定的范围内[17]。
现有的研究通常使用截断序列、随机取样等方法解决输入序列过长的问题,然后这些方法都不可避免造成了有效信息被忽略,影响最终的模型效果,对此应用Attention机制来解决。
▲图5 Attention机制计算示意图
Attention机制具有高性能筛选的能力,它能通过模仿注意力的形式计算选出有用信息。通过保存LSTM的过程数据,并提供新模型进行学习,最后它把其与输出进行关联,实现信息选择。其计算机制如图5所示。
具体计算过程见下:
ai=softmax[s(keyi,q)]=softmax[s(Xi,q)]
(11)
(12)
2.3 LSTM-Attention模型架构
LSTM-Attention模型架构为6层,具体结构如图6所示。
▲图6 应用Attention机制的拧紧异常分类框架
(1) 序列输入层。将拧紧数据扭矩-角度序列作为初始数据,按照6∶4的比例设置训练集和测试集。首先对原始数据标准化处理,计算后输出到LSTM模型层,相关计算公式为:
(13)
式中:xb—处理后数据;x—原始数据;μ、σ—原始数据的均值和方差。
(2) LSTM层。LSTM层通过长短期记忆处理,进行有用信息的筛选,其具体的单元结构组成见图4。
(3) Attention层。Attention层通过模仿注意力的形式计算选出有用信息,通过保存LSTM的过程数据,并通过信息加权平均机制,最后它把其与输出进行关联,实现信息选择。
(4) 全连接层。全连接层的作用为特征联结,它通过结构设计,和(2)相连。
(5) 分类概率层。分类概率层将提取到的特征用sigmoid函数计算,最后到输出层。Sigmoid函数的计算公式为:
(14)
Sigmoid函数将从全连接层提取到的特征数据转换为[0,1],方便进行分类输出层计算。
(6) 分类输出层。分类输出层计算拧紧分类情况的熵损失指标。分类输出层通过模型分类、实际类别的损失指标计算、重复训练、输出分类的判定结果、计算出拧紧分类问题的最终准确率。
2.4 分类方法评价指标
二分类模型的模型评价准则很多,Auc_score,F1_ score,accuracy等等都是比较常用的。而针对多分类问题来说,有二分类的评价准则就相对而言不适用。这里采用基于混淆矩阵的结果计算得到的模型评价参数——Kappa系数进行评价。
(15)
式中:P0为分类模型的总精度;Pe为(各类样本数/样本总数)的平方值。
3 方法应用与验证
为验证本文分类方法的有效性,拧紧数据集来自上汽大众某车间采集的9 751条拧紧数据为分类对象,数据的采样序列为扭矩、角度共同的二维点集序列。其数据分布情况有以下特点,1)序列长度之间的差别极大,最高可达2 000个点数,最低为10个,2)点位之间的影响很大,正常质量下包含55个点位数目,但是高质量风险的类别只有41个。
为保证分类质量,选择了序列长度大于100个点位。包含各级拧紧质量的点位数据集进行数据分析与模型验证。各种类别的质量扭/转曲线情况如图7所示。
▲图7 四种质量类别的拧紧数据曲线图
经过数据清洗、异常值筛查、空值补0,explode扩张数据预处理,最终的单条输入序列样式(以第10条为例)见表1所示。
表1 单条样本数据内容
3.1 聚类效果评价
簇数K及其评价指标
将正样本的5 013条数据投入DTW-Kmeans聚类模型计算,其相关指标结果见表2所示。
表2 聚类评价指标
结果可见,HS霍普金斯统计量的结果均在0.5~1.0之间,可见聚类的结果是显著的,同时也印证了点位信息对于具体拧紧质量分类具有极大的意义。
综合考虑SC轮廓系数和CH协方差矩阵系数,选择K=4的簇数聚类结果。其部分曲线可视化见图8所示。
3.2 LSTM-Attention模型分类效果
基于聚类分析计算的结果,将4个簇分割的子数据集依次通过LSTM-Attention模型进行训练。与传统LSTM神经网络分类算法的结果做对比,其kappa准确率见表3。
表3 子数据集分类结果指标数据
▲图8 点位类别各簇可视化图
以子数据集1为例,其测试集分类结果的kappa准确率和损失函数如图9所示,由图可见,模型的训练拟合过程趋向稳定。
由表3中四个数据集的准确率可见,Attention机制具备从海量信息中计算、筛选、提取有价值信息的能力。Attent-ion通过保留LSTM计算的中间结果,生成新的模型进行学习,再将其与输出进行关联,这解决了传统LSTM分类算法在长序列分类上的问题。
▲图9 子数据集1的kappa准确率和损失函数
3.3 方法的整体效果评价
通过实验,各框架的测试集准确率如表4所示。
表4 针对拧紧数据集不同分类框架的效果
经过比较不同分类框架对数据集的效果可知,论文中提出的算法模型在几种分类框架中具有最好的表现,其准确率达到了92.04%,相比于传统LSTM算法具有较大的提升。
4 结论
本文利用实际生产中的拧紧数据,建立了基于DTW聚类与LSTM的螺栓拧紧异常分类模型。针对数据点位类别数据缺失对分类精度造成的影响,采用K-means聚类方法来获取点位类别信息,同时,提出一种基于动态时间规整DTW算法来控制拧紧序列数据的尺度平衡,提高聚类效果。针对拧紧序列长度冗长对梯度计算造成的干扰,提出在LSTM-NN神经网络模型中采用注意力机制,增加对有用输入信息的筛选,提高分类训练的准确率。该模型可以帮助企业减少维护作业的工作量、有效监控和提高设备可靠性,从而减少过度维护、突发故障及产品质量问题所带来的额外成本,最终提高生产设备的经济效益。