循环神经网络RNN的初学

1.循环神经网络的特点

x1——>y1的同时会产生a1,它包含了我们第一列处理信息的一些特点,然后这个a1就会被传送到y2上去,那么x2——>y2的序列中就会包含前一个的特点,依次类推,这就是我们的RNN结构**(前面的信息经过处理后,会作为一个新的输入作为后面信息的输入)**。
在这里插入图片描述
用公式表明:
在这里插入图片描述

2.RNN具体是怎么样实现的

1、得到语句对应的灰度数值
在这里插入图片描述

2、如何将词汇进行数值化:建立一个词汇-数值一一对应的字典。

第几个单词是人民,那么第几行为1,否则为0(多少个单词会被转换成n行1列)
在这里插入图片描述
2、计算损失函数

字典生成的第二种方式:
在这里插入图片描述
但是这种要求很高,需要理解单词的本意。

3.三种编码方式

在分类问题种,我们需要将样本的标签转为计算机能够理解的形式。

1.标签编码:
一般用于处理A,B,C没有关系的类别,方式简单,不过容易被计算机错误理解为A,B,C类的权重
在这里插入图片描述

2.序号编码:
序号编码和标签编码不太一样,每个类别分配一个数字,但是数字的话是存在一定的顺序关系的,一般处理优、良、差这种类别
在这里插入图片描述

3.one-hot编码:

在自然语言处理(NLP)中,英文到中文的翻译任务通常需要将单词或字符映射到数字表示形式。为了实现这种映射,可以使用one-hot编码。One-hot编码是一种表示离散变量的方法,其中每个变量被表示为一个长度等于词汇表大小的向量(或矩阵)。在英文到中文的翻译任务中,词汇表是指所有可能的英文单词。每个单词在词汇表中都有一个唯一的索引,可以使用这个索引来创建对应的one-hot编码。One-hot编码的原理很简单。假设词汇表中有n个单词,那么每个单词就可以表示为一个长度为n的向量其中只有一个元素为1,其他元素都为0。这个元素的位置对应于该单词在词汇表中的索引。通过这种方式,每个单词都可以用一个唯一的向量表示。使用one-hot编码的好处是它能够保留变量之间的独立性。每个单词的编码都是互相独立的,没有直接的数值关系。这对于NLP任务中的分类、聚类等算法非常有用。然而,使用one-hot编码也存在一些限制。由于词汇表通常非常大,导致生成的向量维度也非常高。这会增加计算和存储的复杂性。此外,one-hot编码无法捕捉到词语之间的语义相似性,因为所有的单词都被视为彼此不同的离散值。总而言之,one-hot编码在英文到中文的翻译任务中被广泛使用,因为它是一种简单而有效的表示方法,可以将离散的英文单词映射到数字形式,方便进行后续的处理和分析。
在这里插入图片描述

4.不同的RNN模型

4.1多输入对多输出

i=j,语言翻译
在这里插入图片描述

4.2多输入单输出的RNN结构

场景示例:根据小明说的话判断他是正面情绪还是负面情绪。
在这里插入图片描述

4.3单输入对多输出的RNN结构

x1生成y1后,y1作为新的输入进入下一个序列生成y2,依次类推生成yi(文章生成,音乐生成)
在这里插入图片描述

5.普通RNN的结构缺陷:

当前边的序列信息传递到后部的时候,信息权重下降,导致重要信息丢失。
在这里插入图片描述
每一层反馈的梯度越来越小,距离越来越远,信息权重越来越低,可能损失函数就求解不出来了
在这里插入图片描述

6.LSTM(长短期记忆网络)解决普通的RNN结构问题

增加记忆细胞ci,可以传递前部远处部位信息。
在这里插入图片描述

1.LSTM的结构

LSTM主要分为忘记门、更新门、输出门。
忘记门:选择性丢弃ai-1和xi中不重要的信息(比如The student,这个The就丢掉了)。
更新门:给记忆细胞添加哪些重要信息,比如student就添加到ci-1中了。
输出门:筛选出需要输出的信息。
在这里插入图片描述
目的: 解决在网络结构很深的情况下,也能保留重要信息,解决了普通RNN求解过程中梯度消失的问题。
在这里插入图片描述

7.BRNN(双向循环神经网络)

**BRNN:**会从flare进行双向判断,往前的时候,也会将后续的序列信息考虑在内,比如Flare Zhao,这是一个大写的,后面 and David Chen又是一个大写的根据后的David Chen判断得出Flare是人名,
在这里插入图片描述
如何做的呢?
后面的xi结合di与前面的ai生成yi,同时di会给到前面序列提供生成yi-1.
在这里插入图片描述

9.DRNN(深层循环神经网络)

将单层的RNN叠加起来,然后和MLP结合起来,比如加一个隐藏层,所以耗时较长。
在这里插入图片描述

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

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

相关文章

八分钟“手撕”包装类与泛型

目录 一、包装类 基本数据类型和对应的包装类 装箱和拆箱 【思考题】 二、泛型 什么是泛型 引出泛型 怎么定义泛型和使用泛型 裸类型(Raw Type) 擦除机制 额外,注意下列代码: 泛型的上界 泛型的接口应用 泛型方法 一、包装类 简单来…

HNCTF_RE复现(一)

baby_python hnctf.yuanshen.life:33276 网页打不开,只能 nc 连接远程服务器。 运行没有回显 利用pickletools库进行反编译为字节码(不知道为什么) # Python 3.10.12 from pickle import loads import pickletools main b"\x80\x04ct…

代码随想录算法训练营第五十五天| 583. 两个字符串的删除操作 ,72. 编辑距离

目录 题目链接: 583. 两个字符串的删除操作 思路 代码 题目链接: 72. 编辑距离 思路 代码 总结 题目链接:583. 两个字符串的删除操作 思路 ①dp数组,dp[i][j]表示下标以i-1结尾的word1和下标以j-1结尾的word2若要相等&…

windows快速计算文件的SHA256数值的步骤

在文件路径打开cmd窗口 输入命令 用Windows自带的certutil命令来计算一个文件的校验值1: certutil支持的算法有:MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512。 certutil的使用方法非常简单,只需要执行“certutil -hashfile 文件名 校验值类型”…

分享我经常用的一个图片下载插件,不会写爬虫代码也能随意下载图片

更多精彩内容在公众号。 ImageAssistant(图片助手)是一款专为Chrome浏览器设计的扩展程序,它具备强大的网页图片处理功能。以下是关于ImageAssistant的一些主要特点和功能: 批量下载图片:ImageAssistant的核心功能之一…

HackTheBox-Machines--Bank

文章目录 0x01 信息收集0x02 文件上传漏洞利用0x03 权限提升方法一:SUID提权方法二:配置不当提权 Bank 测试过程 0x01 信息收集 1.端口扫描 发现 ssh(22)、DNS(53)、HTTP(80) 端口 nmap -sC -sV 10.129.29.200访问 80 端口,页面为Apache2 U…

免费、无限量出图!字节跳动旗下这款国产AI工具,居然这么好用!(强烈推荐)

文章首发于公众号:X小鹿AI副业 大家好,我是程序员X小鹿,前互联网大厂程序员,自由职业2年,也一名 AIGC 爱好者,持续分享更多前沿的「AI 工具」和「AI副业玩法」,欢迎一起交流~ 之前X小鹿一直在各…

【算法训练 day30 复原IP地址、子集、子集Ⅱ】

目录 一、复原IP地址-LeetCode 93思路实现代码个人问题总结 二、子集-LeetCode 78思路实现代码个人问题 三.子集Ⅱ-LeeCode 90思路实现代码个人问题 一、复原IP地址-LeetCode 93 Leecode链接: leetcode 93 文章链接: 代码随想录 视频链接: B站 有效 IP 地址 正好由四个整数&a…

linux利用yum下载rpm离线包

下载到仓库 通过--downloadonly参数可以只下载不安装&#xff0c;下载后的rpm包保存在目录 /var/cache/yum/x86_64/[centos/fedora-version]/[repository]/packages$ sudo yum install --downloadonly <package-name>下载到指定目录 yum install --downloadonly --dow…

软考--试题六--抽象工厂模式(Abstract Factory)

抽象工厂模式(Abstract Factory) 意图 提供一个创建一系列相关或相互依赖对象的接口&#xff0c;而无须指定他们具体的类 结构 适用性 1、一个系统要独立于它的产品的创建、组合和表示时 2、一个系统要由多个产品系统中的一个来配置时 3、当要强调一系列相关的产品对象的设…

Python中使用C扩展详解

文章目录 1. Python/C API示例2. Cython示例3. ctypes关于C扩展的进一步讨论安全性和兼容性性能优化策略调试C扩展发布和分发C扩展 应用实例&#xff1a;加速矩阵乘法运算1. 准备C扩展代码2. 编译C扩展3. 在Python中使用C扩展 在Python中&#xff0c;使用C扩展是一种提高程序性…

贪心 + 证明:Leetcode 1953. 你可以工作的最大周数

描述 给你 n 个项目&#xff0c;编号从 0 到 n - 1 。同时给你一个整数数组 milestones &#xff0c;其中每个 milestones[i] 表示第 i 个项目中的阶段任务数量。 你可以按下面两个规则参与项目中的工作&#xff1a; 每周&#xff0c;你将会完成 某一个 项目中的 恰好一个 阶…

《机器学习入门:sklearn 基础教程全解析》

在当今科技飞速发展的时代&#xff0c;机器学习如同一颗璀璨的明星&#xff0c;吸引着无数人的目光。而 sklearn 作为机器学习领域的重要工具之一&#xff0c;为我们提供了便捷的途径来探索和应用这一神奇的技术。本文将为您详细介绍 sklearn 的基础教程&#xff0c;带您领略机…

Leetcode - 130双周赛

目录 一&#xff0c;3142. 判断矩阵是否满足条件 二&#xff0c;3143. 正方形中的最多点数 三&#xff0c;3144. 分割字符频率相等的最少子字符串 四&#xff0c;3145. 大数组元素的乘积 一&#xff0c;3142. 判断矩阵是否满足条件 本题题意&#xff0c;满足每一列的数全部…

QApplication setStyleSheet 和 QMainWidows setStyleSheet 区别

概述 在 Qt 框架中&#xff0c;QApplication::setStyleSheet() 和 QMainWindow::setStyleSheet() 这两个方法都被用来设置样式表&#xff08;StyleSheet&#xff09;&#xff0c; 但它们的作用范围和目标有所不同。QApplication::setStyleSheet() 应用于该应用程序中的所有窗…

【Linux系统编程】第十九弹---进程状态(下)

​​​​​​​ ✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、僵尸进程 2、孤儿进程 3、运行状态 4、阻塞状态 5、挂起状态 6、进程切换 总结 1、僵尸进程 上一弹…

网工路由基础——动态路由协议(RIP)

一、动态路由协议的分类 1.按工作区域分类&#xff1a; 动态路由协议按用途分类可以分为内部网关协议&#xff08;IGP&#xff09;和外部网关协议&#xff08;EGP&#xff09;。一个Internet网可以被分成多个域或多个自治系统&#xff0c;各自治系统通过一个核心路由器…

基于语义感知的对象草图绘制

摘要 抽象是素描的核心&#xff0c;因为线条画的简单和最小化特性。抽象涉及识别对象或场景的基本视觉属性&#xff0c;这需要语义理解和对高级概念的先验知识。因此&#xff0c;抽象表现对艺术家来说是具有挑战性的&#xff0c;对机器来说更是如此。我们提出了CLIPasso&#…

软考--试题六--访问者模式(Visitor)

访问者模式(Visitor) 意图 表示一个作用于某对象结构中的各元素的操作。它允许在不改变各元素的类的前提下定义作用于这些元素的新操作 结构 适用性 1、一个对象的结构包含很多类对象&#xff0c;他们有不同的接口&#xff0c;而用户想对这些对象实施一些依赖于其具体类的操…

STL <string>--------String的OJ题目

1.题目截图&#xff08;把字符串转换成整数----atoi&#xff09; 1.1题目解析&#xff08;在代码里&#xff09; class Solution { public:int myAtoi(string str) {// 100% 97.45% int len str.size();if(len 0)return 0;int i 0, flag 1, isSignal 0, res 0;while(…