62 序列到序列学习(seq2seq)【动手学深度学习v2】

news2024/12/28 10:43:24

62 序列到序列学习(seq2seq)【动手学深度学习v2】

深度学习学习笔记
学习视频:https://www.bilibili.com/video/BV16g411L7FG/?spm_id_from=autoNext&vd_source=75dce036dc8244310435eaf03de4e330

一个句子翻译到另一个句子。
seq2seq 最早是用来做机器翻译(给定个源句子,自动翻译成目标语言)。
在这里插入图片描述
Seq2Seq 是一个encoder和decoder的架构。
encoder给你一个句子,解码器翻译输出。编码器用的是一个RNN,每次不断的给到一个Seq,最后的隐藏状态传给解码器。可以是双向的,encoder可以双向,而decoder不能,双向RNN经常用在encoder里面。
解码器用一个RNN输出:隐藏状态过来给一个< bos > 表示开始翻译,然后上一次翻译作为下一个时刻的输入,隐藏状态也过去,不断这样过去得到输出。
在这里插入图片描述
RNN 不需要规定句子的长度,按照时刻时刻往前走,最后返回最后时刻的隐藏层。Seq2Seq可以处理任意长度的句子。

隐藏状态如何传的?最后一层的RNN在最后的时刻的隐藏状态,跟句子的输入embedding结合起来作为Recurrent Layer的输入。所以编码器不需要输出的(不需要全连接层)只有拿到RNN的输入状态就可以了,结合初始状态作为下一层的输入。(编码器的RNN的隐藏层输出结果 和 输入的embedding结合起来给到解码器的recurrent 层)
在这里插入图片描述

训练: 在训练时知道真的翻译(目标句子),decoder每个输入实际上是用的真正的翻译,就是即使上一个时刻的翻译是错误的,给到下一个时刻的输入依旧传入的是正确的真实的翻译结果,这样时序序列就可以预测长的序列,在训练的时候给的是真正的词。
推理:推理时没有真正的翻译,于是只能用上一时刻的输出作为下一时刻的输入,然后预测下去。
在这里插入图片描述
衡量生成序列的好坏的BLEU
之前是预测一个词,现在预测一个句子。预测的句子和真实的句子长度可能不一样,那么如何去判断预测的句子的好坏?
BLEU(机器学习最常用的衡量状态)。
算所有n-gram的精度,pn就是预测所有n-gram的精度,unique-gram就是单个词对应的预测精度,by-gram就是两个词对应的预测精度,那么n-gram就n个长度的词组成的句子的预测精度。

然后 min(1-预测长度/真实长度) 叫做惩罚过短预测 ,用来防止预测过短;pn<=1 n 越大 (2^n)/1就越小,乘起来长匹配有高权重 就越大。
在这里插入图片描述
seq2seq就是从一个句子生成另一个句子(机器翻译只是其中一个),使用的编码器解码器的架构,将编码器最后时刻的隐状态来初始化解码器的隐状态,也会作为一个输入穿进去。然后这种方式也经常用BLEU来作为衡量结果。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/337034.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

经典网络模型系列——Swin-Transformer详细讲解与代码实现

经典网络模型系列——Swin-Transformer详细讲解与代码实现一、网路模型整体架构二、Patch Partition模块详解三、Patch Merging模块四、W-MSA详解五、SW-MSA详解masked MSA详解六、 Relative Position Bias详解七、模型详细配置参数八、重要模块代码实现&#xff1a;1、Patch P…

Android开发【金三银四】之OKhttp网络通讯socket

一、SOCKS代理 全能代理&#xff0c;就像有很多跳线的转接板&#xff0c;它只是简单地将一端的系统连接到另外一端。支持多种协议&#xff0c;包括http、ftp请求及其它类型的请求。它分socks 4 和socks 5两种类型&#xff0c;socks 4只支持TCP协议而socks 5支持TCP/UDP协议&am…

Java后端开发功能模块思路

文章目录前言一、查找接口及参数信息1.1 找访问路径1.2 参数及返回结果信息1.3 编写功能模块函数二、代码设计思路三、总结前言 对于正在学习Java后端开发的同学来说&#xff0c;对于Java后端功能模块的开发过程及思路要有一个整体清晰的流程。才能保证在开发过程中更加的顺畅…

哪些数据可以用在二手车买卖中?

近期&#xff0c;商务部副部长盛秋平表示&#xff0c;将着力稳定和扩大汽车消费&#xff0c;支持新能源汽车购买使用&#xff0c;扩大二手车流通。还将打通二手车信息平台&#xff0c;推广上海的汽车全生命周期信息平台和中国汽车流通协会有关经验做法&#xff0c;建设全国性的…

Python-项目实战--飞机大战-游戏背景(5)

目标背景交替滚动的思路确定显示游戏背景1.背景交替滚动的思路确定游戏启动后&#xff0c;背景图像会连续不断地向下方移动在视觉上产生英雄的飞机不断向上方飞行的错觉 -- 在很多跑酷类游戏中常用的套路游戏的背景不断变化游戏的主角位置保持不变1.1实现思路分析解决办法创建两…

计算机视觉框架OpenMMLab开源学习(三):图像分类实战

前言&#xff1a;本篇主要偏向图像分类实战部分&#xff0c;使用MMclassification工具进行代码应用&#xff0c;最后对水果分类进行实战演示&#xff0c;本次环境和代码配置部分省略&#xff0c;具体内容建议参考前一篇文章&#xff1a;计算机视觉框架OpenMMLab开源学习&#x…

计算机网络整理-问答

1. 程序工作的时候网络各层的状态 如下图所示&#xff1a; 1. TCP 在进行三次握手的时候&#xff0c;IP 层和 MAC 层对应都有什么操作呢&#xff1f; TCP 三次握手是通过在传输层建立连接的一个过程&#xff0c;在这个过程中&#xff0c;TCP 和 IP 层、MAC 层都起到了重要的…

ChatGPT API 本地如何调用

本文将会介绍&#xff0c;如何找到API文档和相应语言SDK&#xff0c;并使用PHP调用SDK实现本地请求API的完成过程及遇到的问题和解决方法。 API文档 1.打开官网 ChatGPT: Optimizing Language Models for Dialogue 2.找到API 3.查看文档 4.找到sdk库 OpenAI API 5.主流语言 …

2023年软考什么时候考试?

2023年软考各科目考试时间安排已确定&#xff01;中国计算机技术职业资格网发布了《2023年度计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试工作计划》&#xff0c;具体见下文。2023年度计算机软件资格考试&#xff08;初级、中级、高级&#xff09;上半年考试…

树莓派4b Raspberry Pi 4安装以前内置Python3.7版本的系统出现的一系列问题记录

今天想要重装树莓派系统&#xff0c;想装那种内置Python3.7版本的系统&#xff0c;从网上找到镜像源后烧录进去出现一系列问题&#xff1a; 烧录系统开机后&#xff0c;首先就出现报错&#xff1a; 上面显示一个问题就是&#xff1a;start4x.elf: is not compatible&#xff0…

Django自定义模板标签的使用详解

目录 1.创建子应用&#xff1a;python manage.py startapp test01 2.进行相关的配置 3.在新建的test01文件下创建urls.py(此处名称可变但注意上图) 4.在test01文件下创建名称为templatetags的文件夹 5.templatetags文件下继续创建几个py文件如下图​编辑 6.views视图函数…

走进独自开,带你轻松干副业

今天给大家分享一个开发者的福利平台——独自开&#xff08;点击直接注册&#xff09;&#xff0c;让你在家就能解决收入问题。 文章目录一、平台介绍二、系统案例三、获取收益四、使用平台1、用户注册2、用户认证3、任务报价五、文末总结一、平台介绍 简单说明 独自开信息科技…

人工智能的未来———因果推理what if 第11章(统计模型) 文章解读

我们在观察数据当中,一般使用样本均值去估计目标人群的均值 在所有情况都是理想的情况下: 平均因果效应

Linux环境运行Maven 生成的hadoop jar包

运行命令&#xff1a; hadoop jar ./jar包名字 class对象路径 输入路径 输出路径 linux内部jar包测试 cd 到以下目录&#xff0c;创建以下文件夹 [rootreagan180 ~]# cd /opt/soft/hadoop313/share/hadoop/mapreduce/ 创建文件夹&#xff08;读取路径&#xff09; [roo…

ETL基础概念及要求详解

ETL基础概念及要求详解概念ETL与ELT数据湖与数据仓库ETL应用场景ETL具体流程及操作要求抽取清洗转换加载ETL设计模式SQL脚本语言ETL工具设计ETL工具SQLETL接口设计要求明确接口属性约定接口形式确定接口抽取方法规范接口格式概念 ETL即Extract&#xff08;抽取&#xff09;Tra…

Python学习-----无序序列1.0(字典的创建、查看、添加、修改、删除/替换)

目录 前言&#xff1a; 字典是什么 字典的特点 1.字典的创建 &#xff08;1&#xff09;直接创建{} &#xff08;2&#xff09;dict() 函数创建 2.字典的查询 &#xff08;1&#xff09;get()函数 &#xff08;2&#xff09;获取字典一组内容 3.字典键值对的添加 &a…

1CN/Jaccard/PA/AA/RA/Katz/PageRank/SimRank

common neighbors&#xff08;CN&#xff09; 公共邻居的数量。 Jaccard 用于比较有限样本集之间的相似性与差异性。Jaccard系数值越大&#xff0c;样本相似度越高。 preferential attachment&#xff08;PA&#xff09; 节点倾向于连接到节点度较高的节点上&#xff0c;&…

BSN-DDC基础网络详解(二):快速接入指南

本文将为大家介绍BSN算力中心方和DDC网络平台方接入DDC网络的基本流程&#xff0c;如下图所示&#xff0c;算力中心方和平台方依次执行图内左侧流程&#xff0c;右侧流程由DDC网络运营人员操作。01注册门户账号注册在接入之前&#xff0c;算力中心方和平台方需要先注册一个官方…

Android性能优化:getResources()与Binder交火导致的界面卡顿优化

欢迎&#xff1a;https://juejin.cn/post/7198430801851531324/ 欢迎&#xff1a;https://nasdaqgodzilla.github.io/2023/02/10/Android%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96%EF%BC%9AgetResources-%E4%B8%8EBinder%E4%BA%A4%E7%81%AB%E5%AF%BC%E8%87%B4%E7%9A%84%E7%95%8C%E…

Neurosynth元分析——认知解码工具,软件包安装以及使用

Neurosynth元分析——认知解码工具,软件包安装以及使用 NeuroSynth 基本简介基本原理例子Neurosynth package安装及使用创建虚拟环境安装Dependencies:安装neurosynthNeurosynth使用加载必要的包下载neurosynth数据参考如上图所示。NeuroSynth 元分析感兴趣的区域沿功能连接梯…