NLP 学习笔记十-simple RNN+attention(注意力机制)

news2024/11/17 17:55:03

NLP 学习笔记十-simple RNN+attention(注意力机制)

感兴趣的伙伴,看这个笔记,最好从头开始看哈,而且我的笔记,其实不面向零基础,最好有过一些实践经历的来看最好。
紧接上一回,我们谈到seq2seq模型解决用于机器翻译的问题。其中seq其实是采用lstm作为自己的基础记忆网络实现的,当然也可以用RNN实现实现seq2seq模型。
如下图,下图是使用simple RNN实现seq2seq模型的一个例子。和之前lstm是一个原理,比如我们要实现英文到德语的翻译,那么可以先将英语文本的字符进行onehot编码,编码成一个个的向量,然后先经过一个simple RNN模型的信息提取,也就是下图的Encoder RNN模型,之后将最终提取的信息结合要翻译的德语文本,输入下一个simple RNN模型,这个simple RNN模型也就是Decoder RNN模型。

在这里插入图片描述
后来人们发现,无论是使用lstm模型还是simple RNN模型实现的seq2seq模型在输入文本变长之后,慢慢的翻译性能反而会下降:
在这里插入图片描述

lstm模型要好一点,这是因为,随着文本输入的变成,seq2seq模型都开始遗忘开始输入的信息。所以人们考虑了使用注意力机制。
注意力机制的原理就是原本我们是不是将 s 0 s_0 s0作为decoder模型的输入吗,现在我们取 s = w 1 ∗ h 1 + w 2 ∗ h 2 + w 3 ∗ h 3 + w 4 ∗ h 4 + . . . . . + w n ∗ h n s=w_1*h_1+w_2*h_2+w_3*h_3+w_4*h_4+.....+w_n*h_n s=w1h1+w2h2+w3h3+w4h4+.....+wnhn作为decoder模型的输入,也就是去每次simple RNN模型的单元输出加权结构作为 s 0 s_0 s0
现在问题就在于w_1怎么求解了:
在这里插入图片描述
上图的 α \alpha α也就是我们之前说的 w w w,即权重值,其实原理就是对各个 h i h_i hi进行一个权重处理,权重大的会更重要,权重小重要性会低一点,这个方法,其实应该在各个领域中都用到,因为我认为加上科学的注意力机制可能不能使实验结果变好,但是最起码应该不会变坏。

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

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

相关文章

为什么指针被誉为 C 语言灵魂?

是的,这一篇的文章主题是「指针与内存模型」 说到指针,就不可能脱离开内存,学会指针的人分为两种,一种是不了解内存模型,另外一种则是了解。 不了解的对指针的理解就停留在“指针就是变量的地址”这句话,…

【数据结构与算法篇】手撕排序算法之插入排序与希尔排序

​👻内容专栏:《数据结构与算法篇》 🐨本文概括: 讲述排序的概念、直接插入排序、希尔排序、插入排序和希尔排序的区别。 🐼本文作者:花 碟 🐸发布时间:2023.6.13 一、排序的概念及其…

CSS差缺补漏之选择器

最近在复盘CSS基础知识,发现很多CSS选择器里面还是大有学问,需要详细总结一番,以备差缺补漏~ 作为CSS基础的一大类别,选择器又分为多种类别,本篇内容默认读者已了解并掌握基础选择器【通配符选择器】、【元素选择器】…

docker命令(查看容器状态stats、容器的导入导出、docker容器的详细信息inspect、docker cp命令的使用)

目录 查看docker容器状态: docker镜像的导入导出 第一种导入导出(是docker本地的静态) 第二种导出导入 (这种导出是正在运行的容器里的文件系统变成一个归档文件(可以包含已经下载好的软件)) docker容器的详细信息…

Java Stream流详解

本文目录 学习目标中间操作Filter(过滤)Map(转换)Sorted(排序)Distinct(去重)Limit(限制)Skip(跳过)Peek(展示) 终止操作forEach(循环)Collect(收集)Count(计数)Reduce(聚合)AnyMatch(任意匹配)AllMatch(全部匹配)NoneMatch(无匹配) 使用Stream流的优缺点:优点&…

linux常用查看服务器内存的命令

1.free free 命令用来显示系统内存状态,包括系统物理内存、虚拟内存(swap 交换分区)、共享内存和系统缓存的使用情况,其输出和 top 命令的内存部分非常相似。 free 命令的基本格式如下: [rootlocalhost ~]# free [选项…

分布式重试服务平台 Easy-Retry

文章目录 [toc] 1.简介1.1[爱组搭官网](http://aizuda.com/)1.2介绍1.3 相关地址 2.架构2.1系统架构图2.2 客户端与服务端数据交互图 3.业内成熟重试组件对比4.快速开始4.1 服务端项目部署4.1.0 初始化脚本4.1.1 源码部署4.1.2 Docker部署 4.2 客户端集成配置4.2.1 添加依赖4.2…

中阳期货龙舟赛跟踪和监控系统

上篇文章说了中阳期货龙舟赛计时的编程,那么下面给大家分享一下使用OpenCV库跟踪和监控系统。 跟踪和监控系统:通过船上的GPS设备和网络技术实时跟踪纪录龙舟在赛道上的位置,其中可利用传感器获取龙舟的方向、速度和姿态等信息,以…

接口自动化测试,HttpRunner框架参数化进阶实战,你要的都有...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、获取返回包数据…

浅谈WDM与OTN——光传输大容量技术

前言 网络发展到今天,无论是在哪个国家和地区都离不开互联网,互联网的发展给人们的生活带来了极大的便利,但是同时也带来了网络传输容量不足的问题。而在这些网络传输当中,光纤网络无疑是最为成熟以及普及的技术之一,…

网络安全的学习建议!

下面是一些学习网络安全的建议: 1、多请教有经验的人 忌钻牛角尖,特别是刚入门的什么都不了解的情况下,可能你花好几天研究的一个东西,人10分钟就能搞定,一定不要做闷葫芦,有问题多问,遇到问题…

js数据类型有哪些

数据类型是计算机语言的基础知识,数据类型广泛用于变量、函数参数、表达式、函数返回值等场合。 JavaScript 规定了八种数据类型:未定义 (Undefined),空 (Null),数字 (Number),字符串 (String),布尔值 (Bo…

【linux】在Ubuntu下部署nginx——nginx的反向代理

介绍 这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。 一个人为什么要努力&a…

【头歌-Python】9.2 能带曲线绘制(project) 第1~3关

第1关:能带曲线绘制一 任务描述 本关任务:使用matplotlib绘制图形。 相关知识 为了完成本关任务,你需要掌握: 使用 matplotlib 绘制图形python 读取文件 python 读取文件 python读取文件可以用以下函数实现: # …

【MySQL高级篇笔记-MySQL事务日志(下) 】

此笔记为尚硅谷MySQL高级篇部分内容 目录 一、redo日志 1、为什么需要REDO日志 2、REDO日志的好处、特点 3、redo的组成 4、redo的整体流程 5、redo log的刷盘策略 6、不同刷盘策略演示 流程图 7、写入redo log buffer 过程 1.补充概念:Mini-Transaction…

Linux防火墙学习笔记10

iptables的拓展匹配: icmp模块的使用方法: iptables -t filter -I INPUT -p icmp -m icmp --icmp-type echo-reply -j ACCEPT 说明:回应 我能ping通别人,别人ping不通我。 iprange模块的作用: iptables -t filter…

常见网络协议汇总

常见的网络协议有:TCP/IP协议、UDP协议、HTTP协议、FTP协议等,本文就详细的介绍一下常见的网络协议,通过这些具体的协议更深刻的认识整体网络的传输流程及相关网络原理,感兴趣的可以了解一下。 前言 本篇博客将对基于 计算机网络五层模型 中…

bff服务编排

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

工具应用问题处理

目录 eclipseIdea eclipse 更改eclipse字体: window - Preferences - General --> Appearance --> Colors and Fonts - Java–>Java Editors Text Font(set to default:Text Font) 在弹出的窗口选择要更改的字体样式 点击确定,最后apply即可 …

Java企业级信息系统开发学习笔记(4.3) Spring Boot两种全局配置和两种注解

该文章主要为完成实训任务,详细实现过程及结果见【http://t.csdn.cn/Z2viP】 文章目录 一、Application.properites配置文件1.1 创建Spring Boot的Web项目ProperitesDemo1.2 在应用属性文件里添加相关配置1. 配置服务器端口号和web虚拟路径2. 对象类型的配置与使用&…