基于图卷积神经网络的加工特征识别方法

楼市   2024-10-15 16:22   广西  

点击上方模具工业,关注我们吧

随着企业CAD/CAM技术的深入应用和发展,具备智能化功能的CAX系统日益受到企业的青睐。特征识别技术作为连接数字化制造各个环节的关键纽带,扮演着至关重要的角色,能够为CAE/CAPP/CAM系统提供精准的产品设计信息,是实现制造过程智能化和自动化的重要技术手段。在机械和模具制造行业中,最常见的特征是孔和槽,其中各类孔的特征采用传统方法易处理。但广泛存在类似图1所示形态多变的线槽类加工特征,难以准确识别其特征信息,成为企业智能化自动化技术的发展瓶颈。因此,需要设计一种通用性良好的加工特征识别方法。

图1   不同形式的线槽加工特征

当前,三维模型的特征识别方法多种多样,鉴于三维模型常以边界表示法(B-Rep)呈现,故可按表征特征所采取的方式与原始模型B-Rep表达的拓扑结构信息的逼近程度,将特征识别分为精确匹配和相似判断匹配两大类。
鉴于图卷积神经网络(graph convolutional neural network,GCN)在诸多领域的良好表现,提出了一种基于图卷积神经网络的加工特征识别方法,以克服当前特征识别方法在处理多变特征和相交干涉特征上的局限性。

1 加工特征图节点的初始表征

在对加工特征图进行面节点初始表征前,需将加工特征对应的三维模型转换为属性邻接图(attribute adjacency graph,AAG),按式(1)进行定义:

(1)
其中,表示图中顶点的集合,任意,均与模型中的面唯一对应;表示图中边的集合,任意,均与模型中的相邻面的公共边唯一对应;表示图的顶点属性集,任意,存在唯一的单射于包含了的面标识符、面类型、面的凸凹性,其中凸面、凹面以及混合面分别用1、2、3表示,面类型如表1所示;表示图的边属性集,任意,存在唯一的单射于包含了的边标识符、边的凸凹性,其中凸边、凹边以及混合边分别用1、2、3表示。

表1   属性邻接图顶点面类型属性


图2所示为管接头注射模中的推板台阶通槽CAD模型及其属性邻接图的表示示例。其中,图2(b)所示为属性邻接图的顶点表示方式,左边的数字表示面的类型,右边的数字表示面的凸凹性;图2(c)边上的数字代表边的凸凹性。由图2可以看出,属性邻接图能精确抽象原始加工特征的面和边的拓扑关系,提供了一种比B-Rep数据形式更简洁、更便于储存和分析的数据格式。

图2   CAD模型及其属性邻接图

属性邻接图为高维无序且动态变化的非欧式数据,这使图卷积操作在图域上比图像域更为复杂。为此,采用节点表示学习,将图数据转换为适用于计算机处理的固定格式。在图神经网络中,节点嵌入表示通过迭代过程得到,初始节点嵌入则基于节点特征定制。以图3(a)所示的9维二值向量形式定义了属性邻接图中面节点的初始表示(方格中的数字0~8只表示向量索引,非真实值)。此向量分为3段,每段均用one-hot编码表示节点属性。在one-hot编码中,各属性以独热向量的形式存在,在对应的索引位置上,属性存在则标记为1,不存在则标记为0。这样的编码方式体现了每个属性的有无状态,便于后续处理和分析,其含义已在图中标注,具体阐述如下。
(1)第一段one-hot独热编码表征节点面的类型。与属性邻接图不同,该向量的面类型只有3种,非表1 中的10种,因为除过渡特征外,槽类特征主要是平面与圆柱面。过渡特征也主要以平面、圆柱面和圆锥面为主。若将每一类面均标识会使向量达到16维,这将使向量更稀疏,增加计算开销。此外,部分加工特征的过渡特征因过渡顺序差异会产生不同类型的过渡面,采用这种方式可以模糊过渡特征的差异性。
(2)第二段one-hot独热编码表征节点面的重要程度。加工基准面指的是与加工刀具方向垂直的平面,过渡面则指过渡特征组成面,非前2种面的其余面则为普通面。
(3)第三段one-hot独热编码表征节点面的凸凹属性。面节点初始表征的示例如图3(b)所示,推板台阶通槽的面:按面类型分为平面、按重要程度分为加工基准面、按凸凹性分为混合面。因此该面节点初始状态下的表示向量为

图3   图节点初始特征向量表示

2 图卷积神经网络中的卷积操作

上节中提及图节点的表示学习是顺序迭代,其核心依赖于提取对象特征信息的图卷积操作。以下采用空域(自然域)卷积,其在图神经网络上表现为不断从目标节点的邻居节点上汇聚局部信息,此模式也被称为节点间的“消息传递”。这种空域卷积操作依赖的是矩阵运算所带来的节点消息交互。类似于卷积神经网络(convolutional neural network,CNN)中用到的局部滤波器卷积核,图卷积神经网络中施加卷积操作则依赖的是切比雪夫多项式滤波器卷积核是对多项式滤波器的归一化处理,分别如式(2)、式(3)所示。

(2)

(3)
式(2)和式(3)中的是加工特征属性邻接图对应的拉普拉斯矩阵,其被定义为图的节点度矩阵与其邻接矩阵的差,如式(4)所示。度矩阵D是一个对角矩阵,其对角线上的每个元素对应于图中每个节点的度数(即与每个节点直接相邻的节点数量)。邻接矩阵A定义了图中节点之间的连接关系,如果节点i与节点j之间有边,则对应元素为1,否则为0。式(2)和式(3)中的各项系数可用一个向量表示为是神经网络模型的参数(在每一次卷积过程中共享),由迭代训练过程确定。式(3)~式(9)中的是归一化的拉普拉斯矩阵,其被定义为式(5),式5中的是矩阵的最大特征值,是与其阶数相同的单位矩阵。

(4)

(5)
对拉普拉斯矩阵作归一化处理是必要的,因为幂次较高的拉普拉斯矩阵参与运算会使矩阵中的数值迅速增大,可能导致数值计算结果溢出,归一化处理可以较好地解决这种数值溢出问题。
可以将属性邻接图的初始节点嵌入向量矩阵记为、切比雪夫多项式的第项记为左乘上一次节点嵌入表示矩阵记为、对进行非线性处理(本模型中使用ReLU非线性函数)得到的新节点嵌入矩阵记为,则每进行一次图卷积,式(6)到式(9)就轮转一次。以下4个算式从数学角度刻画了图神经网络卷积的整体架构。

(6)

(7)

(8)

(9)
图4所示是对推板台阶通槽属性邻接图作一次卷积运算的示例,首先将其属性邻接图G中的面节点逐一进行初始节点向量表征以得到初始节点嵌入向量矩阵。同时,将图G对应的拉普拉斯矩阵进行归一化,得到归一化拉普拉斯矩阵。为便于数值表示,图示中取值为10,实际上的值为10.014。而后,将权值系数、矩阵以及矩阵相乘,得到图G的一次空域卷积操作结果。为与形象化的“消息传递机制”保持一致,应严格满足归一化矩阵左乘节点嵌入向量矩阵。因为矩阵左乘以矩阵意味着对矩阵进行变换。而矩阵的每一行代表一个节点信息,行变换的本质则是将矩阵某一行乘以相应的倍数加到另一行,这正是将邻居节点的信息进行相互之间的“消息传递”。

图4   属性邻接图卷积运算示意图

3 图卷积神经网络模型搭建与训练

图5所示为构建的图卷积神经网络框架,由数据处理(data)、多重图卷积(convolution)、图池化(pooling)以及多层感知机(multilayer perceptron,MLP)预测分类(prediction & classification)核心部分组成。对加工特征进行特征识别可抽象为一个有监督的图级预测分类问题,因此,用于训练的加工特征均带有标签。整个框架的大致流程:将整理分类好的各加工特征转换为属性邻接图,以一定批次大小对图数据进行卷积操作,并在卷积后进行线性变换和非线性处理以增强模型的非线性拟合能力,以此轮转进行。在图卷积后,对每个图数据进行图池化以提取全图表示信息。图池化得到一个由均值、最大值以及求和池化3个部分拼接而成的特征向量。最后将图池化的特征向量用多层感知机进行预测分类。线性变换、多层感知机中用到的权值系数与偏置均为共享,且在反向传播中逐步调整。

图5   图卷积神经网络的框架
每个部分的详细处理方法如下。
(1)数据集制作。数据集的制作考虑了现实场景中三维加工特征可能出现的问题:①加工特征之间相交而出现特征干涉,如图6(a)所示;②同一类加工特征表现形式呈现多样性(见图1);③同一类加工特征在过渡区域可能存在倒角数量或状态不统一的情况,如图6(b)所示。

图6   三维加工特征的多变性

鉴于以上3种情况,需要丰富数据集的多样性,引入有益的干扰噪声以使训练的模型具有更好的泛用性和鲁棒性,数据集选取了注射模中典型的槽类加工特征,并对干涉加工特征、同种加工特征的不同三维模型进行采集。同时,对采集的图数据部分抽样,随机删除其属性邻接图节点之间的1~2条边,并对删除边以后的图数据进行连通分量的检查,若连通分量不为1则将其从数据集中删除。共采集1 166份图数据,所有采集的数据集均以属性邻接图的形式表示,且每一个图数据均带有对应的加工特征类型标签。各槽类加工特征的三维模型及数据集大小如表2所示。

表2   槽类加工特征及数据集大小


(2)图卷积。图卷积层基于第0节的卷积操作,通过聚合邻居节点信息来更新目标节点的嵌入向量。随着连续的卷积操作,各节点都以其处于属性邻接图中的结构位置捕捉全图所蕴含的底层拓扑结构信息。每次卷积操作会将距离目标节点特定节点跨距的信息汇聚于自身,即作2次卷积操作则可汇聚距离自身为2个节点跨距的信息。这种邻域信息传递显然不受节点顺序的影响,故模型中“消息传递”式的卷积过程与节点顺序无关。此外,卷积过程中用到的权值系数是共享的,其值通过模型的迭代和反向传播进行优化。由图7(a)可以看出,2层图卷积的识别正确率整体较3层高,且随迭代轮数进行趋于稳定。鉴于2层图卷积收敛更加稳定且耗时更少(此数据集仅考虑迭代耗时为268 s),故将卷积层数设置为2层。
(3)图池化层。与传统卷积神经网络相似,此模型也通过引入池化层来降低特征数据的维度与复杂度、减少模型参数并防止过拟合,有效提取图数据中的关键特征以实现简洁、高层次的全图层面的数据表示。模型采用全局池化,将图卷积以后更新得到的最终图节点嵌入向量矩阵,通过全局平均池化、最大值池化以及求和池化分别获得3个全局特征向量,而后将3个全局特征向量顺次拼接得到一个图级表示向量,此方式相较于单一池化方式准确率显著提升,如图7(b)所示。
(4)多层感知机。模型中的MLP与普通神经网络中的一样,是一个由包含输入层、隐藏层和输出层的多个全连接层堆叠而成的网络结构,用以对图池化得到的图级特征向量进行分类处理。每个全连接层由一个线性变换(权重乘以输入加上一个偏置项)和一个后续的非线性激活函数ReLU组成。通过这些层的堆叠,MLP能够捕获和建模更复杂的关系和模式,以形成加工特征分类标签的预测输出。
(5)模型中其他参数的设置方式。模型中主要对图神经网络模型中的批量大小、学习率、卷积层数量(依据图7(a)的结果将卷积层数设置为2层)以及训练轮数等超参数进行优选以满足工程实际对轻量化模型的需求。
1)每次训练的图数据批次大小。小批次有助于避免局部最优但梯度可能不稳定,而大批次虽速度快但计算成本高且可能陷于局部最优。理论上,在调整好超参数和保证足够迭代次数后,不同的批次大小最终性能可能相似。因此,该模型选择的批次大小为5,即每一批训练(或测试)的图数据集中包含5个图。同时,即便最后一个数据批次不足5个图,也不进行数据舍弃。
2)训练学习率的设置。学习率的设计旨在使模型初期以较高的学习率加速收敛,后期再逐步降低以精细调整模型并找到最优点,以取得好的训练结果同时减少计算开销。研究对比了9组不同学习率策略:其中4组学习率初值为0.1,后期逐渐按0.65的衰减因子进行衰减,分别是指数衰减以及每间隔10步、15步、20步固定步长进行一次衰减;另外5组则是0.1、0.07、0.05、0.03、0.01的固定学习率模式。如图7(c)所示,逐步衰减学习率策略的整体性能并不好,并未达到初期快速收敛、后期衰减找到最优解的假想,特征识别效果普遍较低。而固定学习率为0.01的模型特征识别效果最佳,且其计算开销也可以接受,因此该模型采用0.01的学习率并使用PyTorch框架中提供的Adam优化器进行迭代优化。
3)模型的训练轮数。由图7可以看出,固定学习率为0.01的模型在迭代130轮后,性能趋于稳定,即便有波动,也是围绕某一特定值进行波动。同时为了避免过拟合、特征过平滑等问题,模型最终选取的迭代轮数为130轮。

图7   不同超参数对特征识别准确率的影响

综上分析,模型中的图卷积层设置为2层,图池化为均值、最大值以及求和池化3种方式的组合,每轮训练批次大小为5,学习率为固定值0.01,训练轮数为130轮。

4 实例测试与结果分析

为验证设计的基于图卷积神经网络的特征识别方法与图匹配方法的性能差异,以下对2种方法的准确率进行测试与对比分析。2种算法以及测试在NX12.0平台上进行,所用开发语言为Python 3.10.13和C++14,使用VSCode 1.80.0、Visual Studio 2022集成开发环境进行开发,机器学习库采用Pytorch 2.4.0。2种特征识别模式准确率对比如图8所示。

图8   2种特征识别模式准确率对比雷达图
为确保图神经网络测试结果的保真性和稳定性,使用五折交叉验证,利用表2中数据集的信息以减小随机性的影响。首先对数据进行随机排序,将其均匀划分为5段,然后每段轮流作为测试集,其余4个作为训练集,每次轮转试验重复5次,共进行25次试验,各特征识别准确率如表3所示。此外,基于图匹配的方法,随机从注射模零件中选取100个模板零件进行加工特征自动识别,得到另一组特征识别准确率,如表3所示。

表3   基于图匹配的槽类加工特征识别准确率


由表3和图8可以看出,图卷积神经网络(GCN)在各类加工特征的识别上表现出色,准确率约达到99%,显著优于传统图匹配方法。在处理形状多变和易相交干涉的加工特征(如线槽)时,图匹配方法识别准确率大幅降低,暴露其对精确同构映射的依赖性,导致其仅在识别设计固定、不易干涉的特征上有较高的准确率。相较之下,GCN最大限度地利用了属性邻接图的原始拓扑几何信息,克服了由于相交干涉和多形态特征带来的不稳定性,即便在数据量不大的情形下仍能保持出色的识别性能。GCN对相交特征也能有良好的识别性能,因其在图节点间执行了卷积操作并对卷积结果作了池化操作。这意味着GCN不仅能捕捉整合每一个节点所接受的全局图信息,同时其池化层可以进一步提炼节点的宏观特性,使网络聚焦于重要的节点和边,模糊了局部特征相交对特征分类决策的干扰。通过迭代训练,GCN能够学习到复杂相交特征与其分类标签之间的关系。随着训练的迭代,其不断优化各权值参数以提高对包括相交特征在内的各种特征的识别准确性。此外,图卷积神经网络支持增量学习,这种灵活性意味着在面对新的加工特征时,无需对代码进行修改,只需简单地将新的数据集纳入训练过程,即可提升系统的开发效率,有利于快速适应企业生产变化的需求。


原文作者:陈阳焜1王华昌1李建军1,2
作者单位:1. 华中科技大学 材料成形及模具技术国家重点实验室;2. 湖北黄石模具产业技术研究院


《模具工业》杂志不接受任何代理方式投稿,敬请作者访问网站投稿https://mjgy.cbpt.cnki.net/

订阅杂志请加发行部QQ2762515535或致电0773-5888375垂询

模具工业
模具工业公众号是全国模具标准化技术委员会、《模具工业》期刊、中国模具工业协会人才培训部和机械工业职业能力评价模具行业分中心的行业服务平台,为模具行业提供最新的技术动态、模具专业知识、标准制修订、技术交流、产业对接及人才培训评价等服务。
 最新文章