深度学习入门-4(机器翻译,注意力机制和Seq2seq模型,Transformer)

本文深入探讨了机器翻译原理,包括Seq2seq模型、注意力机制和Transformer架构。介绍了编码器-解码器框架、集束搜索算法,以及注意力机制如何改进Seq2seq模型。详细解析了Transformer模型,包括多头注意力层、前馈网络、位置编码和编码器-解码器结构。
部署运行你感兴趣的模型镜像

一、机器翻译

1、机器翻译概念

机器翻译(MT):将一段文本从一种语言自动翻译为另一种语言,用神经网络解决这个问题通常称为神经机器翻译(NMT)。

主要特征:输出是单词序列而不是单个单词。 输出序列的长度可能与源序列的长度不同(主要困难)。

2、数据的处理
  1. 预处理
    将数据集清洗、转化为神经网络的输入minbatch
    在数据预处理的过程中,我们首先需要对数据进行清洗,即去除特殊字符(乱码)。

  2. 分词
    单词(字符串)组成的列表

  3. 建立词典
    单词组成的列表—单词id组成的列表

  4. 载入数据集

3、机器翻译组成模块
(1)Encoder-Decoder框架(编码器-解码器)

Encoder-Decoder 即 编码器-解码器,可以理解是一个设计范式,常应用在Sequence to Sequence模型中。

Encoder和Decoder部分可以是任意的文字,语音,图像,视频数据,模型可以采用CNN、RNN、LSTM、GRU、BLSTM等等。所以基于Encoder-Decoder,我们可以设计出各种各样的应用算法。

作用:用来解决输入、输出不等长的问题,常用在机器翻译、对话系统和生成式任务中。

  • encoder:输入到隐藏状态
  • decoder:隐藏状态到输出
    在这里插入图片描述
(2)Sequence to Sequence模型

sequence to sequence模型是一类End-to-End的算法框架,也就是从序列到序列的转换模型框架,是输出的长度不确定时采用的模型。

Seq2Seq一般是通过Encoder-Decoder(编码-解码)框架实现。

训练时的模型:
在这里插入图片描述
预测时的模型:
在这里插入图片描述
其中Encoder和Decoder都是循环神经网络。

具体结构:
在这里插入图片描述

(3)集束搜索(Beam Search)

作用:生成每个时间步的单词。(上图解释了每个单词的生成都相当于做了分类)

(ⅰ)简单贪心搜索(greedy search)

贪心算法找到的是局部最优解而非全局最优解
在这里插入图片描述

(ⅱ)维特比算法

将所有单词都试一遍,选择整体分数最高的句子,即全局最优解。

缺点:搜索空间太大

(ⅲ)维特比算法

贪心算法与维特比算法的结合体,是维特比搜索的贪心形式,属于贪心算法,也就是

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.9

TensorFlow-v2.9

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值