深度神经网络——深度学习中的 RNN 和 LSTM 是什么?

引言

自然语言处理和人工智能聊天机器人领域许多最令人印象深刻的进步都是由 递归神经网络(RNN) 和长短期记忆(LSTM)网络。 RNN 和 LSTM 是特殊的神经网络架构,能够处理顺序数据,即按时间顺序排列的数据。 LSTM 是 RNN 的本质改进版本,能够解释更长的数据序列。 让我们看一下 RNN 和 LSTMS 的结构以及它们如何支持创建复杂的自然语言处理系统。

什么是前馈神经网络?

因此,在讨论长短期记忆 (LSTM) 和卷积神经网络 (CNN) 的工作原理之前,我们应该先讨论一下神经网络的一般格式。

神经网络旨在检查数据并学习相关模式,以便这些模式可以应用于其他数据并对新数据进行分类。 神经网络分为三部分:输入层、隐藏层(或多个隐藏层)和输出层。

输入层将数据输入神经网络,而隐藏层则学习数据中的模式。 数据集中的隐藏层通过“权重”和“偏差”连接到输入和输出层,这只是数据点如何相互关联的假设。 这些权重在训练期间进行调整。 当网络训练时,模型对训练数据(输出值)的猜测将与实际训练标签进行比较。 在训练过程中,网络应该(希望)能够更准确地预测数据点之间的关系,以便能够准确地对新数据点进行分类。 深度神经网络是中间有更多层/更多隐藏层的网络。 模型具有的隐藏层和神经元/节点越多,模型识别数据中的模式的能力就越好。

常规的前馈神经网络,就像我上面描述的那样,通常被称为“密集神经网络”。 这些密集的神经网络与专门解释不同类型数据的不同网络架构相结合。

什么是 RNN(循环神经网络)?

循环神经网络采用前馈神经网络的一般原理,并使它们能够通过以下方式处理顺序数据: 为模型提供内部存储器。 RNN 名称中的“循环”部分来自于输入和输出循环这一事实。一旦产生网络的输出,输出就会被复制并作为输入返回到网络。在做出决策时,不仅要分析当前的输入和输出,还要考虑之前的输入。换句话说,如果网络的初始输入是 X,输出是 H,则 H 和 X1(数据序列中的下一个输入)都会被输入到网络中进行下一轮学习。通过这种方式,数据的上下文(之前的输入)在网络训练时得以保留。

这种架构的结果是 RNN 能够处理顺序数据。 然而,RNN 存在一些问题。 RNN 面临以下问题 梯度消失和梯度爆炸问题。

RNN 可以解释的序列长度相当有限,尤其是与 LSTM 相比。

什么是 LSTM(长短期记忆网络)?

长短期记忆网络可以被视为 RNN 的扩展,再次应用保留输入上下文的概念。 然而,LSTM 在几个重要方面进行了修改,使它们能够用更先进的方法解释过去的数据。 对 LSTM 所做的修改解决了梯度消失问题,并使 LSTM 能够考虑更长的输入序列。

LSTM 模型由 三个不同的组件或门. 有一个 输入门、输出门和遗忘门。 与 RNN 非常相似,LSTM 在修改模型的内存和输入权重时会考虑前一个时间步的输入。 输入门决定哪些值是重要的并且应该让其通过模型。 输入门中使用了 sigmoid 函数,它决定哪些值要通过循环网络传递。 零会删除该值,而 1 会保留该值。 这里还使用了 TanH 函数,它决定输入值对模型的重要性,范围从 -1 到 1。

在考虑当前输入和内存状态后,输出门决定将哪些值推入下一个时间步。 在输出门中,对值进行分析并分配从 -1 到 1 的重要性。这会在数据进行下一个时间步计算之前对其进行调节。 最后,遗忘门的工作是删除模型认为对于做出有关输入值的性质的决策不必要的信息。 忘记门对值使用 sigmoid 函数,输出 0(忘记这个)和 1(保留这个)之间的数字。

LSTM 神经网络由可以解释顺序单词数据的特殊 LSTM 层和如上所述的密集连接层组成。 一旦数据穿过 LSTM 层,它就会进入密集连接层。

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

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

相关文章

款基于SpringBoot+Vue+ElementUI技术栈开发的自定义表单工具(已开源)

TDuck填鸭表单是一个开源的问卷调查系统,一款基于SpringBootVueElementUI技术栈开发的自定义表单工具,它不仅支持问卷调查,还能进行数据收集。TDuck团队经过两年的优化,使得社区版功能趋于稳定。2023年5月,团队推出了可…

HTML静态网页成品作业(HTML+CSS)—— 明星吴磊介绍网页(5个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有5个页面。 二、作品演示 三、代…

http穿透怎么做?

众所周知http协议的默认端口是80,由于国家工信部要求,域名必须备案才给开放80端口,而备案需要固定公网IP,这就使得开放http80端口的费用成本和时间成本变的很高。那么能不能利用内网穿透技术做http穿透呢?下面我就给大…

VMware Workstation 16安装ESXI7.0

一、新建虚拟机 根据新建虚拟机向导新建虚拟机,这里不在展示。 二、挂载ESXI7.0镜像 三、安装ESXI操作系统 1、打开电源 2、选择安装ESXI 回车,F11 选择安装位置,我这里只添加了一块盘,不用选择,回车 选择键盘&…

ComfyUI

文章目录 一、关于 ComfyUI特点快捷键QA你为什么做这个?这是给谁的? 二、安装1、Windows直接链接下载如何在另一个UI和ComfyUI之间共享模型? 2、Jupyter Notebook3、手动安装(Windows、Linux)AMD GPU(仅Lin…

CloudFlare 里如何设置参数传递的 301 重定向

自从接到【哈哈,笑死我了都,黔驴技穷了都!】一文里提到的代维客户订单,这两天明月就一直在加班加点的重新部署着客户的四个服务器,因为有三个都是 WordPress+WooCommerce 式的电商平台,很是有些费时费力,好在现在基本都搞定了,剩下的就是些细节方面的优化、调整了。期间…

深入了解RSA加密算法

目录 前言 一、什么是RSA? 二、RSA加密的基本概念 1.非对称加密 2.密钥生成 3.加密和解密 三、RSA加密的工作原理 四、RSA的应用场景 五、RSA加密解密的实现 六、RSA算法的局限性及改进措施 前言 在当今的数字化时代,信息的安全性成为了人们关注…

mongodb command

1. start and stop ./mongod --dbpath -dbpath /data/shard1/db --logpath -dbpath /data/shard1/db/logs/mongodb.log --fork mongod --shutdown --dbpath /data/shard1/db MongoDB基础篇-03-启动与关闭_mongodb启动和关闭-CSDN博客 2. 查看分片数据分布 mongo mongo01.c…

C++ | Leetcode C++题解之第160题相交链表

题目: 题解: class Solution { public:ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {if (headA nullptr || headB nullptr) {return nullptr;}ListNode *pA headA, *pB headB;while (pA ! pB) {pA pA nullptr ? headB : p…

FreeRTOS队列(queue)

队列(queue)可以用于"任务到任务"、 "任务到中断"、 "中断到任务"直接传输信息。 1、队列的特性 1、1常规操作 队列的简化操如下图所示,从此图可知: 队列中可以包含若干数据:队列中有若干项,这…

给客户做WMS培训时,客户说这是什么垃圾系统……

导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 在上周的一次WMS系统培训现场,我们遭遇了意想不到的“小插曲”。 当时,培训师小李正热情洋溢地介绍WMS系统的种种优点&am…

使用 PNPM 从零搭建 Monorepo,测试组件并发布

1 目标 通过 PNPM 创建一个 monorepo(多个项目在一个代码仓库)项目,形成一个通用的仓库模板。 这里以在该 monorepo 项目中搭建 web components 类型的组件库为例,介绍从仓库搭建、组件测试到组件发布的整个流程。 这个仓库既可…

ffmpeg封装和解封装介绍-(10)综合完成视频重编码为h265,解封装解码编码再封装

主函数逐句解析: 由于代码太多我们只解析主函数,(其他封装函数见前面文章,同时用到了解码编码封装代码)。 初始化和参数处理 int main(int argc, char* argv[]) {/// 输入参数处理string useage "124_test_x…

教育小程序开发:技术实现与实践案例

随着信息技术的不断进步,教育小程序在教育领域的应用越来越广泛。教育小程序开发不仅可以提高教学效率,还能够提供个性化的学习体验。本文将以技术代码为例,详细介绍教育小程序开发的关键技术和实践案例,帮助开发者更好地理解和实…

鸿蒙应用开发

学习视频: 00.课程介绍_哔哩哔哩_bilibili 官网:开发者文档中心 | 华为开发者联盟 (huawei.com) 开发工具 :DevEcoStudio , 类似Jetbrains 全家桶 ArkTS开发语言 :(基于TS,集成了前端语言&#xf…

奥特曼谈AI的机遇、挑战与人类自我反思:中国将拥有独特的大语言模型

奥特曼在对话中特别提到,中国将在这个领域扮演重要角色,孕育出具有本土特色的大语言模型。这一预见不仅彰显了中国在全球人工智能领域中日益增长的影响力,也预示着未来技术发展的多元化趋势。 ①奥特曼认为AI在提升生产力方面已显现积极作用&…

【JS重点17】原型链(面试重点)

一:原型链底层原理 以下面一段代码为例,基于原型对象(Star构造函数的原型对象)的继承使得不同构造函数的原型对象关联在一起(此处是最大的构造函数Object原型对象),并且这种关联的关系是一种链…

Project ERROR: Unknown module(s) in QT: xlsx

Qt5下Qxlsx模块安装及使用_qt5xlsx-CSDN博客 主要参考上面这篇文章! Perl的安装与配置_perl安装-CSDN博客 1.1 windows环境安装Perl_windows perl-CSDN博客 首先,需要安装Perl,我安装的是Windows版本的。 Download & Install Perl - ActiveStat…

绿色版DirectoryOpus功能强大且高度可定制的Windows文件管理器

Directory Opus(通常简称为DOpus)是一款功能强大且高度可定制的Windows文件管理器。它提供了许多超越Windows默认文件资源管理器(Explorer)的功能,使得文件和文件夹的管理变得更加高效和直观。以下是对Directory Opus的…