焊接质量监测的字面感知知识图谱嵌入技术
在工业生产中,焊接质量的监测至关重要。焊接数据对于确保焊接过程正确执行以及焊缝坚固耐用起着关键作用。本文将围绕焊接质量监测,介绍相关的技术和方法,包括数据处理、知识图谱构建、模型选择等内容。
1. 焊接相关概念与数据处理
-
焊接相关概念
- 焊接机器 :记录执行焊接操作的机器。
- 焊接程序 :安装在焊接机器中用于不同焊接操作的程序。
- 字面量 :焊接过程中传感器测量的数据,如电流、电压、电阻、功率等重要传感器测量值。
- 组件类型 :焊接点的组件,每个组件会影响焊接点的直径,且与车身密切相关。
-
数据匿名化
由于博世有严格的隐私保护规定,生产数据包含可能泄露机密信息的数值,因此对来自德国一家工厂的生产数据进行匿名化处理,并基于领域知识模拟部分数据。具体操作如下:- 对数值进行匿名化和离散化处理,遵循之前工作中字面嵌入的思路。
- 将匿名化后的数据集提供在开源的Github仓库,以提高工作的可重复性和知识图谱嵌入研究的潜在复用性。
2. 基础知识
-
知识图谱(KG)
知识图谱表示为 (G = (E, R, L)),其中 (E) 是实体集,(L) 是知识图谱中包含的字面量集,(R) 是二元关系集,可进一步分为 (R = {P_o, P_d})。(P_o) 表示实体之间的关系(对象属性),(P_d) 表示实体和字面量之间的关系(数据类型属性)。 -
知识图谱嵌入(KGE)
KGE 旨在找到一个函数,将实体 (e \in E) 表示为向量 (v_e \in U_e),将关系 (r \in R) 表示为数学映射 (r_r \in U_r)。常见的 KGE 模型通过解决链接预测问题进行训练,需要找到一个评分函数 (s : E × R × E → R) 来衡量三元组 ((h, r, t)) 的合理性。在字面感知 KGE 中,三元组形式为 ((h, r, t) \in T ⊆ E × R × {E, L}),关系有两组,需要正确处理字面量和关系。 -
常见 KGE 模型
- TransE :将实体表示为向量,关系表示为向量之间的平移操作。给定查询 ((h, r,?)),预测尾实体为 (f(h, t) = v_h + v_r),并最小化预测和真实实体表示之间的欧几里得距离,最大化预测和错误实体表示之间的距离。
- DistMult :在低维空间中将实体和关系的交互建模为点积。评分函数通过矩阵乘法 (g_r(h, t) = v_h^T · M_r · v_t) 计算,最大化真实三元组的分数,最小化负三元组的分数。
- RotatE :与 TransE 类似,但将关系建模为旋转向量。通过 (f(h, t) = v_h \circ v_r) 从头实体和关系预测尾实体,距离函数定义为余弦距离 (Dist(h, t) = cos(v_t’, v_t))。
- AttH :将关系建模为双曲空间中的反射和旋转,以及注意力机制中的权重。通过特定关系的双曲反射和旋转计算尾实体的两个预测值,然后通过注意力机制结合得到最终预测。该模型在相对低维的情况下能较好地表示层次关系,具有较高的准确性。
-
负采样
负采样是 KGE 中广泛使用的技术,通过采样 KG 中不存在的负三元组与正三元组一起训练 KGE 模型,使模型学会区分正、负三元组,提高预测缺失关系的能力。学习目标通常是最大化正三元组分数和负三元组分数之间的差异。 -
多层感知机(MLP)
MLP 分类器是一种常用于分类任务的人工神经网络,由输入层、一个或多个隐藏层和输出层组成。每个神经元接收前一层神经元的输入,计算加权和并通过激活函数产生输出。通过反向传播调整权重以最小化损失函数,常用于工业应用中的异常检测、预测性质量维护等。
3. 方法
-
焊接知识图谱构建
焊接知识图谱从表格数据构建,使用焊接相关信息,如焊接过程时间、焊接机器、焊接程序和焊接参数等。具体步骤如下:- 将焊接数据表中的值转换为实体,实体之间的关系作为知识图谱中的边。
- 基于均值对电流和电压按值范围进行离散化,将所有数值转换为实体,离散化的值如机器和程序 ID 可直接转换为实体。
-
问题表述
给定焊接点的信息,包括机器 ID、程序 ID 及其字面特征,两个研究问题是预测该焊接点的车身和焊接点的直径。为使 KGE 适用于该问题,对质量监测的两个问题进行重新表述:- Q1 :焊接点直径预测,将其从回归问题转换为预测焊接点和直径类之间的链接问题。考虑相邻直径类之间的固定差异,使用直径类之间的平均差异计算均方根误差(RMSE)。
- Q2 :车身分类,将问题转换为预测车身实体和焊接点之间的链接问题。
-
从表格数据构建知识图谱
焊接数据最初以表格形式从关系数据库中提取,由于表格数据广泛且包含许多与操作无关的列,构建焊接知识图谱的步骤如下:- 移除所有空列和只有唯一值的列,因为这些列对于焊接知识图谱是冗余的。
- 根据焊接领域知识选择最具代表性的特征,放入焊接知识图谱。
- 处理字面特征,将其转换为知识图谱,采用之前工作中的字面嵌入方法将字面量转换为实体。
- 识别实体和关系,将表格中的唯一条目及其属性作为知识图谱中的实体,实体之间的关系作为边连接实体。
-
字面处理
受之前工作启发,对字面嵌入进行以下步骤:- 聚合 :将传感器测量值聚合为三个阶段的平均值和整体平均值。
- 值离散化 :将实数值离散化为不同范围。
- 实体创建 :基于离散化范围创建实体。
- 链接 :将所有创建的字面实体与其他实体链接。
-
多层感知机分类器
在工作中,MLP 分类器用于根据与焊接点和车身相关的焊接知识图谱信息,预测焊接点和车身或直径类之间是否存在连接。具体操作如下:- 输入为焊接点的所有已知参数,如焊接机器、焊接程序、焊接电流、焊接电压等,将其一热编码后输入 MLP 分类器。
- 输出为车身的一热编码或直径的编码。该模型作为质量监测的基本模型和基线模型。
-
知识图谱嵌入
近年来,有各种 KGE 模型专注于捕捉图结构数据中的信息。本文的 KGE 模型基于著名的 TransE、DistMult 和 AttH 模型,这些模型在开放数据集上表现良好,具有良好的泛化能力。具体操作如下:- 将所有实体和关系嵌入到查找表中,通过嵌入层进行嵌入。
- 根据不同模型的评分函数优化输入三元组的分数或距离。输入数据为表示焊接知识图谱中单个事实的三元组 ((头, 关系, 尾)),输出为基于三元组距离的分数。
- 训练目标是最大化输入三元组的分数,最小化不存在的三元组的分数,通过构建损失函数 (Loss = s(h, r, t) - s(h, r, t^ )) 实现,其中 (t^ ) 表示所有负采样三元组。
- 训练后,计算正确三元组的排名,评估 KGE 模型。
4. 评估指标
考虑 4 个指标来评估模型:
| 指标 | 含义 |
| ---- | ---- |
| Acc(Hits@1) | 表示通过分配最高分数正确预测的正确实体的百分比,可理解为预测准确率。 |
| Hits@GroupBy3 | 表示在一组 3 个焊接点进行预测时正确预测的正确实体的百分比,是一个不太严格的指标,但源于测试的工业场景,也表示预测的准确性。 |
| nrmse | 归一化均方根误差,用于计算直径预测的准确性,在将问题重新表述为链接预测问题后仍然适用。 |
| MRR | 衡量所有可能实体或关系中第一个正确实体或关系的平均排名,用于比较不同 KGE 模型的性能。 |
5. 实验设置
-
基线模型
比较三种主流 KGE 方法(TransE、RotatE、AttH)和经典 ML 方法 MLP,以及一种特殊的 KGE 方法(KGE - MLP)。选择 TransE 和 RotatE 是因为它们具有良好的泛化能力,选择 AttH 是因为它是具有注意力机制和非欧几里得嵌入空间的复杂 KGE 方法,选择 MLP 是因为它在工业应用中广泛使用且被证明是通用近似器。 -
数据集详情
从包含超过 260k 个焊接操作的大型数据库中随机选择与 2000 条焊接操作相关的表格数据,移除某些特征后,得到包含 31 个有意义特征和 2000 行的数据集。数据经过一热编码后用于 MLP,经过知识图谱构建后用于 KGE。知识图谱数据集包含 44801 个三元组,包括 3342 个实体、26 个关系,其中 18 台机器、181 个程序 ID、613 个车身、327 个字面实体。 -
数据分割
按照标准的 80%/10%/10% 对训练/验证/测试进行分割,并对 KGE 模型进行以下修改:- 先将表格数据分割为训练/验证/测试数据集,然后将表格数据转换为知识图谱。
- 测试集仅包含具有焊接点、车身部件和直径实体的三元组。
- 负三元组样本根据现有 KGE 方法的负采样随机生成。
-
KGE 设置
在该设置中,通过破坏训练集中的现有三元组生成负样本。在 Q1 中,负样本的尾部是错误的直径类;在 Q2 中,负样本的尾部是错误的车身部件实体。对嵌入大小在 ({16, 32, 64, 128, 256}) 的搜索空间进行实验,选择最佳超参数。
以下是不同模型在回答问题 1(Q1)和问题 2(Q2)时的性能比较表格:
| 模型 | Acc(Hits@1) | MRR | nrmse | timetrain | timetest |
| ---- | ---- | ---- | ---- | ---- | ---- |
| MLP | 0.39 ± 0.01 | - | 0.05 ± 0.01 | 120.6 ± 15.2 s | < 0.03 s |
| TransE | 0.42 ± 0.02 | 0.65 ± 0.01 | 0.06 ± 0.00 | 660.1 ± 30.1 s | < 0.03 s |
| RotatE | 0.25 ± 0.01 | 0.49 ± 0.00 | 0.08 ± 0.01 | 1022.9 ± 80.5 s | < 0.03 s |
| AttH | 0.31 ± 0.05 | 0.57 ± 0.04 | 0.06 ± 0.01 | 1829.1 ± 100.1 s | < 0.03 s |
| 模型 | Acc(Hits@1) | MRR | Hits@Groupby3 | timetrain | timetest |
| MLP | 0.61 ± 0.01 | - | - | 117.1 ± 13.2 s | < 0.03 s |
| TransE | 0.64 ± 0.01 | 0.77 ± 0.01 | 0.85 ± 0.01 | 822.6 s ± 101.7 | < 0.03 s |
| RotatE | 0.52 ± 0.01 | 0.69 ± 0.01 | 0.81 ± 0.01 | 1722.7 ± 152.7 s | < 0.03 s |
| AttH | 0.53 ± 0.03 | 0.70 ± 0.01 | 0.79 ± 0.03 | 4266.9 ± 234.5 s | < 0.03 s |
通过以上内容,我们可以看到不同模型在焊接质量监测中的表现,为实际应用中的模型选择提供参考。同时,数据处理和知识图谱构建的方法也为类似的工业应用提供了有益的借鉴。
下面是一个简单的 mermaid 流程图,展示了数据处理和模型应用的大致流程:
graph LR
A[焊接数据] --> B[数据匿名化]
B --> C[表格数据]
C --> D1[一热编码]
C --> D2[知识图谱构建]
D1 --> E1[MLP 模型]
D2 --> E2[KGE 模型]
E1 --> F[预测结果]
E2 --> F
通过这个流程图,我们可以更清晰地看到数据从原始状态到最终预测结果的整个处理过程。不同的处理方式和模型选择会对最终的预测结果产生影响,因此在实际应用中需要根据具体情况进行合理选择。
焊接质量监测的字面感知知识图谱嵌入技术
6. 实验结果分析
从实验结果的表格中可以看出不同模型在各个指标上的表现存在差异。
在回答问题 1(Q1)时:
-
Acc(Hits@1)指标
:TransE 模型的准确率为 (0.42 ± 0.02),略高于 MLP 的 (0.39 ± 0.01),而 RotatE 和 AttH 的准确率相对较低,分别为 (0.25 ± 0.01) 和 (0.31 ± 0.05)。这表明在直接预测正确实体方面,TransE 具有一定优势。
-
MRR 指标
:TransE 达到了 (0.65 ± 0.01),明显高于 RotatE 的 (0.49 ± 0.00) 和 AttH 的 (0.57 ± 0.04)。MRR 衡量的是第一个正确实体的平均排名,说明 TransE 在整体排名表现上更好。
-
nrmse 指标
:MLP 的归一化均方根误差为 (0.05 ± 0.01),相对较低,而 RotatE 的误差为 (0.08 ± 0.01) 较高,TransE 和 AttH 的误差均为 (0.06 ± 0.01)。这意味着在直径预测的准确性上,MLP 有一定优势。
-
训练时间
:MLP 的训练时间为 (120.6 ± 15.2 s),是所有模型中最短的,而 AttH 的训练时间最长,达到 (1829.1 ± 100.1 s)。这反映出不同模型的训练复杂度不同。
在回答问题 2(Q2)时:
-
Acc(Hits@1)指标
:TransE 的准确率为 (0.64 ± 0.01),是所有模型中最高的,MLP 为 (0.61 ± 0.01) 次之,RotatE 和 AttH 相对较低。这表明在预测车身分类方面,TransE 表现出色。
-
MRR 指标
:同样是 TransE 最高,为 (0.77 ± 0.01),说明其在排名表现上依然领先。
-
Hits@Groupby3 指标
:TransE 达到 (0.85 ± 0.01),高于 RotatE 的 (0.81 ± 0.01) 和 AttH 的 (0.79 ± 0.03)。这个指标在工业场景下有一定意义,说明 TransE 在分组预测方面表现较好。
-
训练时间
:MLP 的训练时间为 (117.1 ± 13.2 s) 最短,AttH 的训练时间 (4266.9 ± 234.5 s) 最长。
综合来看,TransE 模型在多个指标上表现较为突出,尤其是在预测准确率和排名表现方面。然而,MLP 模型的训练时间最短,在某些对时间要求较高的场景下可能更具优势。而 RotatE 和 AttH 模型虽然在某些方面表现不如 TransE 和 MLP,但它们也有各自的特点,例如 AttH 模型在处理层次关系方面可能有独特的优势。
7. 不同模型的适用场景分析
-
MLP 模型
- 适用场景 :当对训练时间有严格要求,且数据的特征和目标之间的关系相对简单时,MLP 模型是一个不错的选择。例如在一些实时性要求较高的焊接质量监测场景中,需要快速得到预测结果,MLP 可以凭借其较短的训练时间满足需求。
-
操作步骤
:
- 对焊接点的已知参数,如焊接机器、焊接程序、焊接电流、焊接电压等进行一热编码。
- 将编码后的数据输入 MLP 分类器,MLP 分类器根据训练好的权重进行计算。
- 输出车身的一热编码或直径的编码,得到预测结果。
-
TransE 模型
- 适用场景 :当需要较高的预测准确率和较好的排名表现时,TransE 模型更为合适。例如在对焊接质量要求较高,需要准确预测焊接点的车身和直径的场景中,TransE 可以发挥其优势。
-
操作步骤
:
- 将所有实体和关系通过嵌入层嵌入到查找表中。
- 输入表示焊接知识图谱中单个事实的三元组 ((头, 关系, 尾))。
- 根据 TransE 的评分函数 (f(h, t) = v_h + v_r) 计算输入三元组的分数或距离。
- 通过构建损失函数 (Loss = s(h, r, t) - s(h, r, t^*)) 进行训练,最大化输入三元组的分数,最小化不存在的三元组的分数。
- 训练后,计算正确三元组的排名,评估模型并进行预测。
-
RotatE 模型
- 适用场景 :在一些对关系建模有特殊需求,希望将关系建模为旋转向量的场景中,RotatE 可以考虑使用。例如在处理具有旋转或周期性关系的焊接数据时,RotatE 可能会有更好的表现。
-
操作步骤
:
- 进行实体和关系的嵌入,将其放入查找表。
- 输入三元组 ((头, 关系, 尾)),通过 (f(h, t) = v_h \circ v_r) 预测尾实体。
- 计算余弦距离 (Dist(h, t) = cos(v_t’, v_t)) 作为分数。
- 按照训练目标构建损失函数进行训练,评估并预测。
-
AttH 模型
- 适用场景 :当数据中存在明显的层次关系,需要更好地表示这种层次结构时,AttH 模型是一个不错的选择。例如在焊接数据中,不同组件之间存在复杂的层次关系时,AttH 可以利用其在双曲空间中的反射、旋转和注意力机制来捕捉这些关系。
-
操作步骤
:
- 嵌入实体和关系到查找表。
- 通过关系特定的双曲反射和旋转计算尾实体的两个预测值。
- 使用注意力机制结合两个预测值得到最终预测。
- 根据评分函数计算分数,构建损失函数进行训练,评估并预测。
8. 总结与建议
本次研究围绕焊接质量监测,介绍了相关的技术和方法,包括数据处理、知识图谱构建、模型选择等内容,并通过实验对不同模型进行了评估。
-
总结
- 数据匿名化和处理是保护数据隐私和构建有效知识图谱的重要步骤。通过对焊接数据进行匿名化和离散化处理,既保护了数据的隐私,又能将其转换为适合知识图谱构建的形式。
- 不同的知识图谱嵌入模型和 MLP 模型在焊接质量监测中各有优劣。TransE 模型在预测准确率和排名表现上较好,MLP 模型训练时间短,RotatE 和 AttH 模型有各自独特的建模方式。
- 合理选择模型和评估指标对于焊接质量监测至关重要。在实际应用中,需要根据具体的需求和场景,如对预测准确率、训练时间、关系建模等方面的要求,选择合适的模型和评估指标。
-
建议
- 在实际应用中,可以根据具体场景的需求,综合考虑不同模型的特点进行选择。如果对时间要求较高,可以优先考虑 MLP 模型;如果对预测准确性要求较高,可以选择 TransE 模型;如果数据存在复杂的层次关系,可以尝试 AttH 模型。
- 可以进一步探索不同模型的组合使用。例如将 MLP 模型和 KGE 模型结合,充分发挥它们的优势,提高焊接质量监测的效果。
- 对于数据处理和知识图谱构建,可以不断优化流程,提高数据的质量和知识图谱的准确性。例如在选择代表性特征时,可以结合更多的领域知识和数据分析方法,选择更有价值的特征。
下面是一个 mermaid 流程图,展示了根据不同需求选择模型的流程:
graph LR
A[焊接质量监测需求] --> B{对时间要求高?}
B -- 是 --> C[选择 MLP 模型]
B -- 否 --> D{对预测准确性要求高?}
D -- 是 --> E[选择 TransE 模型]
D -- 否 --> F{数据存在复杂层次关系?}
F -- 是 --> G[选择 AttH 模型]
F -- 否 --> H[可考虑 RotatE 模型]
通过这个流程图,我们可以更清晰地根据不同的需求来选择合适的模型,为焊接质量监测提供更有效的解决方案。
综上所述,焊接质量监测是一个复杂的过程,需要综合考虑数据处理、模型选择和评估等多个方面。通过合理的方法和模型选择,可以提高焊接质量监测的准确性和效率,为工业生产提供有力的支持。
超级会员免费看
729

被折叠的 条评论
为什么被折叠?



