Encoder-Decoder、Seq2Seq、Attention

传送门1:Encoder-Decoder 和 Seq2Seq

因为注意力不集中,所以这篇随笔就是看别人的文章,随手参考写写的。

1.Encoder-Decoder

Encoder-Decoder模型并不特指某种具体算法,而是一种通用的框架,这个框架下可以使用不同的算法来解决不同的任务。

Encoder-Decoder框架诠释了机器学习的核心思路:将现实问题转化为数学问题,通过求解数学问题,从而解决现实问题。

Encoder又称为编码器,作用就是:将现实问题转化为数学问题。

将文字/图片/音频等作为输入,通过Encoder编码器,输出向量。

Decoder又称为解码器,作用就是:求解数学问题,并转化为现实世界的解决方案。

将向量作为输入,通过Decoder解码器,输出文字等。

结合起来就是:Encoder将现实世界的问题转化成向量C,然后传给Decoder,Decoder通过向量,求解数学问题,然后转化为现实世界的解决方案。

其中2点注意:

1.无论输入和输出的长度是什么,中间的向量C都是固定长度的。

2.根据不同的任务可以选择不同的编码器和解码器。

以上,符合的都统称为Encoder-Decoder模型。

个人理解:只要有现实的输入,通过转化为向量,然后解决这个向量的数学问题,然后再转化为现实的,就是Encoder-Decoder模型。

因为电脑无法直接处理现实问题,所以要转化成数学问题,解决完之后再转化为现实的解决方案。

因为Encoder-Decoder之间的向量C是定长的,所以存在缺陷,因为不管信息是多还是少,只能表示定长的信息,所以当输入信息太长的时候,会丢失掉一些信息。

举例:图片压缩,800*800像素压缩成100KB和3000*3000像素压缩成100KB,3000*3000像素的压缩之后,图片就比800*800像素压缩的模糊。

2.Seq2Seq

Seq2Seq:Sequence-to-Sequence,序列到序列。

输入序列和输出序列的长度是可变的。

比如翻译:

I am a dog.

我是一只小狗。

输入的是4个英文单词,输出的是6个汉字。

Seq2Seq的产生是因为,机器翻译,语音识别图像描述生成等,长度事先不知道,无法固定长度,所以产生了这个框架。

Seq2Seq(强调目的),不特指方法,满足输入序列,输出序列的,都统称为Seq2Seq模型,具体方法都基本属于Encoder-Decoder模型(强调方法)的范围。

3.Attention

前面的Encoder-Decoder因为存在信息过长,信息丢失的问题,所以Attention机制的出现,来解决这个问题。

Attention的特点是Encoder不再将整个输入序列编码为固定长度的中间向量C,而是编码为一个向量的序列。

具体的前面写过一篇博客,但是那篇也是水的,所以,具体的涉及到公式代码的,还需要些时日。

传送门2:深度学习/NLP中的Attention注意力机制

暂时先这样,溜了。

Encoder-Decoder、Seq2Seq、Attention的更多相关文章

  1. 完全图解RNN、RNN变体、Seq2Seq、Attention机制

    完全图解RNN.RNN变体.Seq2Seq.Attention机制 本文主要是利用图片的形式,详细地介绍了经典的RNN.RNN几个重要变体,以及Seq2Seq模型.Attention机制.希望这篇文章 ...

  2. RNN、LSTM、Seq2Seq、Attention、Teacher forcing、Skip thought模型总结

    RNN RNN的发源: 单层的神经网络(只有一个细胞,f(wx+b),只有输入,没有输出和hidden state) 多个神经细胞(增加细胞个数和hidden state,hidden是f(wx+b) ...

  3. keras系列︱seq2seq系列相关实现与案例(feedback、peek、attention类型)

    之前在看<Semi-supervised Sequence Learning>这篇文章的时候对seq2seq半监督的方式做文本分类的方式产生了一定兴趣,于是开始简单研究了seq2seq.先 ...

  4. NLP教程(6) - 神经机器翻译、seq2seq与注意力机制

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/36 本文地址:http://www.showmeai.tech/article-det ...

  5. attention、self-attention、transformer和bert模型基本原理简述笔记

    attention 以google神经机器翻译(NMT)为例 无attention: encoder-decoder在无attention机制时,由encoder将输入序列转化为最后一层输出state ...

  6. H.264 Profile、Level、Encoder三张简图 (fps = AVCodecContext->time_base.den / AVCodecContext->time_base.num)

    H.264 Profiles Profiles are sets of capabilities. If your black box only supports the Baseline profi ...

  7. logback:logback和slf4j中的:appender、logger、encoder、layout

    (1)appender 1.appender标签是logback配置文件中重要的组件之一.在logback配置文件中使用appender标签进行定义.可 以包含0个或多个appender标签. 2.a ...

  8. 学习笔记CB013: TensorFlow、TensorBoard、seq2seq

    tensorflow基于图结构深度学习框架,内部通过session实现图和计算内核交互. tensorflow基本数学运算用法. import tensorflow as tf sess = tf.S ...

  9. Burpsuite 工具详解(常用模块之proxy、spider 、decoder)

    Burpsuite常用模块之proxy.spider .decoder                                                 是一款集成化渗透测试工具(jav ...

  10. 6. 从Encoder-Decoder(Seq2Seq)理解Attention的本质

    1. 语言模型 2. Attention Is All You Need(Transformer)算法原理解析 3. ELMo算法原理解析 4. OpenAI GPT算法原理解析 5. BERT算法原 ...

随机推荐

  1. C#事件总结

    前言:C#的事件也是一项非常关键的技术,必须要深刻的理解,本质上是基于委托的: 事件模型的五个组成部分: 1.事件的拥有者-- event source,对象: 2.事件的成员--event,成员: ...

  2. 在 DjangoStarter 中集成 TailwindCSS

    前言 好久没有更新技术文章了 这个月开箱和随笔倒是写了不少,又忙又懒的 基础的文章不太想写,稍微深入一点的又需要花很多时间来写 虽然但是,最终还是想水一篇 最近做了一个基于 wagtail 的项目,有 ...

  3. PixiJS源码分析系列:第二章 渲染在哪里开始?

    第二章 渲染在哪里开始? 牢记,按第一章介绍的 npm start 启动本地调式环境才可进行调式 如果是 example 文件夹内的例子还需要 serve . 开启本地静态服务器 上一章介绍了 Pix ...

  4. 调试 Node.js

    调试 Node.js 调试器 调试器是一种软件工具,用于通过分析方法观察和控制程序的执行流 设计目标:帮助找出 bug 的根本原因,并帮助你解决它 工作方式:将程序托管在自己的执行进程中或者作为附加到 ...

  5. Pandas库学习笔记(6) -- Pandas 基本方法

    Pandas 基本方法实例 到目前为止,我们了解了三个Pandas DataStructures以及如何创建它们.由于它在实时数据处理中的重要性,因此我们将主要关注DataFrame对象,并讨论其他一 ...

  6. RestSharp编写api接口测试,并实现异步调用(不卡顿)

    首先,确保你已经安装了RestSharp NuGet包.如果没有安装,可以通过以下命令安装: bash Install-Package RestSharp 然后,在你的C#代码中,你可以按照以下步骤操 ...

  7. [WPF] 脱机环境实现支持拼音模糊搜索的AutoCompleteBox

    AutoCompleteBox是一个常见的提高输入效率的组件,很多WPF的第三方控件库都提供了这个组件,但基本都是字符串的子串匹配,不支持拼音模糊匹配,例如无法通过输入ldh或liudehua匹配到刘 ...

  8. 机器学习:详解什么是端到端的深度学习?(What is end-to-end deep learning?)

    什么是端到端的深度学习? 深度学习中最令人振奋的最新动态之一就是端到端深度学习的兴起,那么端到端学习到底是什么呢?简而言之,以前有一些数据处理系统或者学习系统,它们需要多个阶段的处理.那么端到端深度学 ...

  9. mybatis关于大于小于:元素内容必须由格式正确的字符数据或标记组成。

    首先是原因: mybatis中< >这两个符号会被识别为标签的开始和结束,用了就会报解析的错误 会报错类似下面这些 1.元素内容必须由格式正确的字符数据或标记组成. 2.Error cre ...

  10. 免费正版 IntelliJ IDEA license 详细指南

    一.前言 IntelliJ IDEA 一直是我非常喜欢的 IDE 自从用上之后就回不了头了,但是 Ultimate 版本的费用十分昂贵,其实 JetBrains 自己就提供了6种免费申请授权的方式:本 ...