APP下载

基于机器翻译的元器件产品型号规范技术研究

2020-07-07凌亚东李颖陈泫文丁春光

电子产品可靠性与环境试验 2020年3期
关键词:元器件数据处理神经网络

凌亚东, 李颖, 陈泫文, 丁春光

(工业和信息化部电子第五研究所, 广东 广州 510610)

0 引言

元器件选用管理贯穿于装备设计、 研制、 生产和使用的全寿命周期, 与此同时, 装备设计选用的元器件规模日益增长, 元器件种类繁多且更新换代速度快, 给元器件数据处理[1]分析任务带来了新的挑战, 如何快速提升元器件数据处理分析能力, 实现元器件数据处理的智能化、 高效化, 是当下元器件数据处理分析急需研究和解决的问题。

元器件数据处理分析主要表现为对元器件清单数据进行规范化、 标准化和归一化处理[2], 传统的元器件清单数据处理主要是人为操作, 依据相关处理原则, 通过人工识别、 修正和补全来完成元器件清单数据的规范化、 标准化, 但是这种传统的模式显然已经不能应对当前元器件数据处理的智能化、 高效化的要求, 引入新的信息处理技术就显得尤为关键。

随着大数据及人工智能技术的发展, 越来越多成熟的、 先进的信息处理技术开始被应用到各个行业的数据处理分析任务中。 自然语言处理是人工智能领域的重要分支之一, 是实现人与计算机之间用自然语言进行有效通信的理论和方法,本文结合元器件数据处理分析中元器件清单规范化的现状, 借助自然语言处理技术——机器翻译,对元器件清单规范化数据进行解析, 开展基于机器翻译的元器件清单智能规范技术研究, 以使元器件数据处理变得更加智能和精准。

1 机器翻译

1.1 机器翻译研究历程

机器翻译研究如何利用计算机实现自然语言之间的自动转换, 是人工智能和自然语言处理领域的重要研究方向之一。 历史上首次的机器翻译实验Georgetown-IBM 于1954 年1 月7 日在IBM纽约总部启动, IBM 的701 型计算机将60 个俄语句子自动翻译成英语。 自20 世纪40 年代末至今,机器翻译研究大致经历了3 个阶段[3]: 基于规则的机器翻译(Rule-Based Machine Translation)、 基于统计的机器翻译 (Statistical-Based Machine Translation) 和基于神经网络的机器翻译(Neural-Based Machine Translation)。

基于规则的机器翻译是由翻译工作者观察不同自然语言之间的转换规律, 以规则形式表示翻译知识。 虽然这类方法能够在句法和语义等深层次实现自然语言的分析、 转换和生成, 却面临着翻译知识获取难、 开发周期长和人工成本高等困难。

基于统计的机器翻译通过数学模型描述自然语言的转换过程, 在大规模多语言文本数据上自动训练数学模型。 其基本思想是通过隐结构(词语对齐、 短语切分、 短语调序和同步文法等) 描述翻译过程, 利用特征刻画翻译规律, 并通过特征的局部性采用动态规划算法在指数级的搜索空间中实现多项式时间复杂度的高效翻译。 但基于统计的机器翻译仍面临着翻译性能严重依赖于隐结构与特征设计、 局部特征难以捕获全局依赖关系和对数线性模型难以处理翻译过程中的线性不可分现象等难题。

基于神经网络的机器翻译[4]最早出现于2014年Yoshua Bengio 发表的一篇关于将神经网络用于机器翻译的论文里, 首次奠定了将深度学习技术用于机器翻译的基本架构。 论文中主要是使用基于序列的递归神经网络(RNN), 让机器可以自动捕捉句子间的单词特征, 进而能够自动书写为另一种语言的翻译结果。 2016 年Google 正式宣布将所有统计机器翻译下架, 基于神经网络的机器翻译开始成为现代机器翻译的绝对主流。

1.2 神经网络机器翻译

神经网络机器翻译其实是一种序列到序列(Sequence to Sequence) 模型[5], 它主要包含两个部分: 一个是编码器(Encoder), 另一个是解码器(Decoder), 因而其也被称为编码器-解码器(Encoder-Decoder) 模型。 编码器和解码器是由循环神经网络构成, 其中, 编码器是把源语言经过一系列的神经网络变换之后, 表示成一个高维的向量; 而解码器负责把这个高维向量再重新解码(翻译) 成目标语言。

一个简单的Encoder-Decoder 模型包括3 个部分: Encoder-LSTM、 Decoder-LSTM 和Context。 输入源序列是ABC, 首先, Encoder-LSTM 将处理输入序列并在最后一个神经元返回整个输入序列的隐藏状态 (hidden state), 也被称为上下文(Context); 然后, Decoder-LSTM 根据隐藏状态,一步一步地预测目标序列的下一个字符; 最后,输出目标序列WXYZ。 Encoder-Decoder 模型示例如图1 所示。

2 算法研究与应用

2.1 元器件产品型号规范

元器件清单数据的采集方式单一, 一般通过人工系统录入、 数据表导入等方式将元器件数据录入到信息系统中。 这种会使得元器件清单的数据存在输入错误、 漏写、 不规范简称和缩写等多种形式的数据表现, 因此需要对元器件清单进行规范化处理。

元器件产品型号规范是元器件清单处理的重要内容, 是指将不规范、 不统一的元器件产品型号数据进行规范化的过程, 使这些数据统一规范起来。 元器件产品型号规格的定义是: 产品详细规范、 产品定型或供货所用的型号规格。

2.2 机器翻译算法研究与应用

本文借助机器翻译算法对已有的正确(规范)的元器件产品型号数据和有误的元器件产品型号数据进行分析挖掘, 建立序列到序列的模型, 对元器件产品原始型号数据进行自动规范, 并且随着数据集的扩增,融合深度机器学习模型可以从大规模数据样本中自主学习样本的特征, 提高建模的智能化。

在本文中使用了长短期记忆网 络 ( LSTM: Long Short Term Memory networks) 作为机器翻译模型中编码器和解码器所采用的神经网络, LSTM 是一种特殊结构的循环神经网络(RNN: Recurrent Neural Networks), 它的提出是为了处理RNN 结构存在的梯度爆炸或梯度消失现象, 随着网络深度的提升, RNN 的训练的加长,它会遗忘掉之前训练得到的数据, 这样在之后的训练中, 需要调用之前信息时便无法得到有效值。LSTM 的提出正好解决了这个问题。

本文为实现元器件产品型号规范所使用的机器翻译训练模型架构如图2 所示。

3 实验分析

3.1 实验数据

为了验证模型的有效性与泛化能力, 实验使用的数据集如下所述。

a) 实验1

选取了90 000 条元器件产品型号数据用于机器翻译模型的训练, 并对数据集进行了随机划分,选取其中的72 000 条元器件产品型号数据作为训练集, 用于机器翻译模型迭代训练; 剩余18 000条元器件产品型号数据作为验证集, 用于机器翻译模型验证。

b) 实验2

选取了40 000 条元器件产品型号数据用于机器翻译模型的训练, 并对数据集进行了随机划分,选取其中的32 000 条元器件产品型号数据作为训练集, 用于机器翻译模型迭代训练; 剩余8 000 条元器件产品型号数据作为验证集, 用于机器翻译模型验证。

3.2 评价指标

3.2.1 损失函数和准确率

a) 损失函数

我们在进行机器学习任务中定义神经网络模型时, 首先需要明确模型的损失函数 (Loss Function)。 损失函数是用来表示模型预测值和训练样本之间的差异的, 我们的目的是通过降低这个损失函数来不断地改进模型参数, 使模型预测越来越准确。 但是, 我们不能只降低某个预测值的损失函数, 而是应当降低所有样本的总体损失函数, 即全部样本上损失函数的平均值或数学期望, 我们将这个期望值称为风险函数 (Risk Function)。 在训练集上, 通过不断地降低损失函数期望即风险函数来逐渐地提高模型预测的准确度, 就能得到拟合度很高的模型。

损失函数是用来评价模型的预测值Yˆ=f (X)与真实值Y 的不一致程度, 它是一个非负值函数。通常用L (Y, f (x)) 来表示, 损失函数越小, 模型的性能就越好。

假设有N 个样本的样本集为(X, Y) = (xi,yi), yi为样本i 的真实值,=f (xi) 为样本的i 的预测值, 其中i∈[1, N], f 为分类或回归函数,则总的损失函数为:

式(2) 中: N——样本总数;

L——分类数(标签总数)。

需要特别注意的是机器翻译中的神经网络输出并不是概率值, 所以我们还需要采用激活函数将神经网络的输出转换为概率分布, 在本文中使用的激活函数是Softmax:

b) 模型准确率

在机器学习任务中, 对训练模型的评价是一个非常重要的工作, 通常根据机器学习任务的不同而选择合适的评价指标, 准确率是其中一个重要的指标, 其定义是: 对于给定的测试数据集, 模型分类器正确分类的样本数与总样本数之比。

3.2.2 BLEU 值

在自然语言处理中的机器翻译任务中, BLEU(Bilingual Evaluation Understudy) 方法[6]是用于评估模型生成的结果和实际结果的差异的指标, 它的取值范围在0~1 之间, 这种方法认为如果翻译系统的翻译结果越接近于人工翻译的结果, 那么它的翻译质量越高。 所以, 评测关键就在于如何定义系统结果与参考结果之间的相似度。 BLEU 采用的方式是统计同时出的系统翻译结果和参考结果, 最后把匹配到的n-gram 的数目除以系统翻译结果中n-gram 的数目, 得到评测结果。 其计算过程如下所述。

首先, 计算出一个n-gram 在一个句子中最大可能出现的次数MaxRefCount (n-gram); 然后, 与参考结果中的n-gram 出现的次数作比较, 取它们之间最小值作为这个n-gram 的最终匹配个数, 公式如下:

共现n-gram 的精度Pn定义为:

在得到上述结果之后, BLEU 分数通过下式来计算:

其中, Wn表示共现n-gram 的权重, BP 是惩罚因子:

3.3 实验结果分析

本文的实验1 和实验2 分别设置了两组不同的模型参数进行训练, 实验结果如表1 所示。

表1 实验1 和实验2 的机器翻译模型训练结果

由表1 可知, 基于上述所用的数据集, 本文提出的神经机器翻译模型准确率较高, 且损失函数值较小, 模型结构合理, 成功应用于元器件产品型号规范任务中。 除了验证神经机器翻译算法在元器件产品型号规范任务的可行性, 也为下一步扩大数据集进一步对算法进行优化以及将该算法应用于新的未知数据集进行测试验证打下了基础。

4 结束语

本文通过研究自然语言处理中的机器翻译算法, 提出一种基于LSTM 的序列到序列模型, 并将其应用于元器件产品型号规范任务中。

基于神经网络机器翻译算法对元器件产品型号进行处理, 实现元器件产品型号的自动规范, 可在一定程度上代替原本的人工数据处理模式, 可以有效地解决元器件清单数据规范化人工处理效率低的问题, 同时能够在保证规范的精度的前提下使得元器件产品型号规范更加智能和精准。

猜你喜欢

元器件数据处理神经网络
元器件国产化推进工作实践探索
基于神经网络的船舶电力系统故障诊断方法
国产元器件选型方式及流程分析
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
MIV-PSO-BP神经网络用户热负荷预测
基于低频功率数据处理的负荷分解方法
无人机测绘数据处理关键技术及运用
宇航型号元器件国产化自主可控的管理模式研究
高层建筑沉降监测数据处理中多元回归分析方法的应用研究
高层建筑沉降监测数据处理中多元回归分析方法的应用研究