# Datawhale AI夏令营【NLP竞赛】通过术语词典构建机器翻译模型task1


一、机器翻译(Machine Translation, MT)的发展历程

一般来说,分为三段。

  • 符号人工智能阶段(1950s-1980s):又称基于规则的的MT,其核心要义是:”任何一种语义在不同的语言中都有其对应的符号“。要求语言学家写出冗长的规则和符号,并且灵活性很差,不能理解上下文,因此逐步被淘汰。
  • 基于统计的MT(1980s-2000s):这种方法通过学习双语文本中源语言和目标语言的对应关系,从而实现翻译。统计机器翻译中最主流的方法是基于词的统计机器翻译(Word-based MT)以及基于短语的统计机器翻译(Phrase-based SMT)
  • 基于神经网络的MT(2000s-present):随着深度学习的发展,LSTM(长短期记忆网络)和Transformer模型被用于MT,神经网络机器翻译可以自主学习源语言和目标语言的对应关系,无需人为设置特征或规则;且在翻译质量、速度和适应性方面取得了较好的效果,是当前主流的MT方法。

二、数据划分

  • 训练集:供给模型训练,其中的数据是训练过程中损失函数改变参数的主要依据。
  • 验证集:训练完模型后,引入验证集观测模型在独立于训练集的未知数据集上的性能,根据训练集上的表现调整参数,降低过拟合的影响。用于调整参数,选择特征,以及对学习算法作出其它决定。有时也称为留出交叉验证集(hold-out cross validation set)。
  • 测试集:最接近在真实世界的应用场景中的数据。模型训练完成并调参完成后,测试模型性能。

三、评分指标

  • BLEU,全称为Bilingual Evaluation Understudy(双语评估替换),是一种对生成语句进行评估的指标。
    在机器翻译领域,BLEU(Bilingual Evaluation Understudy)是一种常用的自动评价指标,用于衡量计算机生成的翻译与一组参考译文之间的相似度。这个指标特别关注 n-grams(连续的n个词)的精确匹配,可以被认为是对翻译准确性和流利度的一种统计估计。计算BLEU分数时,首先会统计生成文本中n-grams的频率,然后将这些频率与参考文本中的n-grams进行比较。如果生成的翻译中包含的n-grams与参考译文中出现的相同,则认为是匹配的。最终的BLEU分数是一个介于0到1之间的数值,其中1表示与参考译文完美匹配,而0则表示完全没有匹配。摘自datawhale

四、NLP前置知识

  • NLP:自然语言处理(Natural Language Processing, NLP)是计算机科学、人工智能和语言学的交叉领域,致力于使计算机能够理解、解释和生成人类语言。

  • 关于baseline
    baseline所用的是seq2seq模型, 其中encoder和decoder用到了GRU模型。

  • GRU(Gated Recurrent Unit):门控循环单元(或者称之为门控复发单元,recurrent是复发性的意思)。这是一种RNN的变体,因此我们先来了解一些RNN的知识。

  • RNN(Recurrent neural network):循环神经网络,是一种用于处理序列的基本深度学习方法。相较于密集连接网络(DenseNet)和卷积神经网络(Convnet neural network),RNN拥有“记忆”的特性,即RNN会在每个单元(或者节点)处理输出之后保存状态并传递到下一个单元(或者节点)。更准确地,RNN模型在每个时间步接收一个字的输入,生成隐藏状态和输出,再将隐藏状态与下一个字输入到模型中,重复此过程。

如下图所示
在这里插入图片描述
在这里插入图片描述

  • GRU则是在RNN的架构上,在模型中的每个时间步的处理期间,加入了门控制单元的“筛选方式”。GRU的结构包含两种类型的“门”:更新门(Update Gate)和重置门(Reset Gate)

  • 更新门(z_t):z_t 决定了信息如何在不同时间步之间流动。

  • 重置门(r_t):r_t 决定了在当前时间步的计算中需要舍弃哪些传入的信息。

GRU具体的结构和计算公式如下图:
在这里插入图片描述

  • GRU 的优势(摘自c老师)
    结构简单:与 LSTM 相比,GRU 结构更简单,参数更少,因此计算更快。
    长短期记忆:像 LSTM 一样,GRU 也能捕获长时间依赖关系,同时缓解梯度消失问题。
    性能:在许多应用中,GRU 和 LSTM 的性能相当,但由于 GRU 计算更高效,往往在实际使用中更受欢迎。
  • LSTM(Long Short-Term Memory):长短期记忆算法。LSTM 单元由三个门(输入门、遗忘门、输出门)和一个细胞状态(cell state)组成。每个门都是一个控制信号,它们决定信息的传递方式。
  • LSTM和GRU皆是Simple RNN 的变体,都旨在解决RNN中存在的梯度消失和梯度爆炸问题。

梯度消失(vanishing gradient problem)问题是深度神经网络训练中的一个常见问题,特别是在训练递归神经网络(RNN)和非常深的前馈神经网络时。这个问题会导致网络的学习变得非常困难,甚至无法训练。
梯度消失问题指的是在反向传播过程中,梯度逐层缩小,最终导致在更新早期层的权重时,梯度变得非常小,以至于这些层几乎不再更新。结果是网络的学习能力受限,尤其是在早期层,难以捕捉到数据中的复杂特征。

梯度爆炸是深度神经网络训练中另一个常见的问题,与梯度消失相反,梯度爆炸指的是在反向传播过程中,梯度变得非常大,甚至超出计算机数值表示的范围,从而导致权重更新过大,网络无法稳定训练的现象。

  • Seq2Seq
    Seq2Seq (Sequence to Sequence) 模型是一种用于处理序列数据的神经网络架构,特别适用于需要将一个序列转换为另一个序列的任务,如机器翻译、文本摘要、对话系统等。Seq2Seq 模型由编码器(Encoder)和解码器(Decoder)组成,通常使用递归神经网络(RNN)、长短期记忆网络(LSTM)或门控循环单元(GRU)作为其基础单元。
    在这里插入图片描述
    (该图存疑之处,decoder阶段每个时间步产生的输出是否会传给下一阶段?会的)

五、运行baseline并改进上分

  • 运行baseline和根据Task1中建议修改代码后的上分结果:
    在这里插入图片描述
    可以看到经过改进后baseline明显有提升,而改进之处在于:N和N_epochs的值。前者控制我们在数据集中提取前N个数据进行训练,后者控制将N个数据跑通模型训练的次数。

  • N:选择前N个数据进行训练会对训练结果产生一定的影响。影响主要体现在以下几个方面:

训练效果:选择的数据量越多,模型在训练过程中会有更多的数据进行学习,有更多的样本用于参数的调整,从而可能提高模型的准确度和泛化能力。

训练时间:选择的数据量越大,需要处理的样本数量就越多,模型的训练时间也会相应增加。如果选择的数据量过大,可能会导致训练时间过长或超过计算资源的限制。

过拟合的风险:如果选择的数据量过小,可能会导致模型过拟合。过拟合是指模型过度适应训练数据,而对新样本的泛化能力较差。选择较少的训练数据容易引起过拟合现象,因为模型没有足够的样本来学习样本之间的潜在规律。

  • N_EPOCHS:
    N_EPOCHS 变量代表训练过程中的迭代次数。在机器学习和深度学习中,训练模型时通常需要将数据集划分成小批次进行多次迭代训练。每一次迭代被称为一个 epoch。N_EPOCHS 就是设置训练过程中要进行多少个 epoch 的变量。

具体来说,如果设置 N_EPOCHS = 10,则表示要进行 10 次迭代的训练。每个 epoch 都会遍历整个训练集,并更新模型参数。一般来说,较大的 N_EPOCHS 值会使得模型更加充分地学习数据集的特征,但也可能会增加训练时间和计算资源的消耗。合理选择 N_EPOCHS 的值要根据具体问题和数据集的大小来进行调整。

  • 综上所述,使用更大的N和N_epochs可以得到更好的训练效果,并且降低过拟合的风险;同时也会消耗更多的计算资源和计算时间。

总结

本文根据datawhale NLP AI竞赛的文档内容,总结了MT和竞赛中涉及到的基础知识,以此切入对NLP的前置知识进行了探讨,包括baseline中涉及到的seq2seq模型及RNN的基础知识。

最后,通过运行baseline和改进后的代码,学习了N和N_EPOCHS两个参数在模型训练中的影响。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值