首页 > 其他分享 >深度学习-nlp-循环神经网络RNN--69

深度学习-nlp-循环神经网络RNN--69

时间:2024-04-11 11:55:20浏览次数:16  
标签:nlp RNN -- DNN 矩阵 神经网络 隐藏 输入

目录
参考:https://zhuanlan.zhihu.com/p/30844905

1. 概述

输出会反馈到输入的神经网络:
循环神经网络(Recurrent Neural Networks ,以下简称RNN),它广泛的用于自然语言处理中的语音识别,手写书别以及机器翻译等领域。

在前面讲到的DNN和CNN中,训练样本的输入和输出是比较的确定的。但是有一类问题DNN和CNN不好解决,就是训练样本输入是连续的序列,且序列的长短不一,比如基于时间的序列:一段段连续的语音,一段段连续的手写文字。这些序列比较长,且长度不一,比较难直接的拆分成一个个独立的样本来通过DNN/CNN进行训练。

2. RNN的模型

简单的循环神经网络如,它由输入层、一个隐藏层和一个输出层组成:

如果把上面有W的那个带箭头的圈去掉,它就变成了最普通的全连接神经网络,
x是一个向量,它表示输入层的值(这里面没有画出来表示神经元节点的圆圈);
s是一个向量,它表示隐藏层的值(这里隐藏层面画了一个节点,你也可以想象这一层其实是多个节点,节点数与向量s的维度相同);

U是输入层到隐藏层的权重矩阵,
o也是一个向量,它表示输出层的值;
V是隐藏层到输出层的权重矩阵。
那么,现在我们来看看W是什么。循环神经网络的隐藏层的值s不仅仅取决于当前这次的输入x,还取决于上一次隐藏层的值s。权重矩阵 W就是隐藏层上一次的值作为这一次的输入的权重。
关键一点是,
的值不仅仅取决于
,还取决于

公式来表示循环神经网络的计算方法:

U矩阵是连接输入层m与隐藏层n之间的权重矩阵 U矩阵维度 mn
W矩阵是一个n
n的方阵 用于跟S_t-1相乘

m是x的长度也就是输入神经元的个数
n为隐藏神经元的个数

实际在实施的时候会将X_t 与 S_t-1进行拼接 得到 BS(m+n)的矩阵
将U跟W进行拼接得到 (m+n)
n的矩阵
再进行相乘 得到 BS*n 的S_t

如图:
xxxxx

总结一下:
之前DNN 只要X跟U矩阵相乘 只不过再多了个S_t-1跟W相乘

标签:nlp,RNN,--,DNN,矩阵,神经网络,隐藏,输入
From: https://www.cnblogs.com/cavalier-chen/p/18128446

相关文章

  • 通过JPA注解获取某个类主键字段
    123456789101112131415161718public StringgetPkColumn(StringclassName){    StringpkColumn= null;    try {        Classclazz=Class.forName(className);        Field[]fields=clazz.getDeclaredFiel......
  • 数据结构之链表(c语言版)
    链表是线性表,链表的特点就是可以动态增减元素。种类有单向链表、双向链表,循环链表。一、单链表单链表的储存思想使用指针表示节点之间的逻辑关系,它的储存单元可以连续也可以不连续,每个储存单元需要储存信息和储存与后继节点的地址信息,储存单元又称之为节点。单链表由头指针唯......
  • 数据结构之栈(c语言版)
    栈(stack):在逻辑上是一种线性存储结构,它有以下几个特点:1、栈中数据是按照"后进先出(LIFO,LastInFirstOut)"方式进出栈的。2、向栈中添加/删除数据时,只能从栈顶进行操作。栈通常包括的三种操作:push、peek、pop。push--向栈中添加元素。peek--返回栈顶元素。pop--返......
  • ubuntu下virtualbox软件安转
    virtualbox是虚拟机软件,可以在ubuntu使用,用来做模拟大数据环境的linux机器,就很方便。今天进入软件后,安装的虚拟机不能启动,报错RC=-1908。打算aptreinstallvirtualbox重新安装,来解决软件错误,但是切换了系统的源都没有这个软件包。官网查找了相关的安转和配置说明,见官网的安......
  • scp
    scpSCP命令语法scp[-1245BCpqrv][-ccipher][Fssh_config][-Iidentity_file][-llimit][-ossh_option][-Pport][-Sprogram][[user@]host1:]file1[…][[suer@]host2:]file2SCP命令说明Scp在主机间复制文件。他使用ssh(1)作为数据传输。而且用同样认证和安......
  • win11 解锁多用户同时登录
    准备工具:1.RDP Wrapper download如果右侧的不是fullysupported,而是红色的notsupported。【开始】-【运行】-【services.msc】找到下面的服务,停止掉 同步修改组策略设置 直接安装,并修改组策略【计算机配置】-【管理模板】-【Windows组件】-【远程桌面服务】-【远程......
  • Centos7-kvm-WEB管理工具kimchi使用篇
    镜像上传接上篇安装完wok和kimchi这两个服务后,能正常访问https://localhost:8001 (输入地址一定是Https!!!)   功能介绍导航栏wok是查看报错日志和操作记录的,同时设置项可以开关kimchi状态     导航栏的Virtualization分为访客模板存储器网络(这......
  • 数据结构之队列(c语言版)
    队列(Queue):在逻辑上是一种线性存储结构。它有以下几个特点:1、队列中数据是按照"先进先出(FIFO,First-In-First-Out)"方式进出队列的。2、队列只允许在"队首"进行删除操作,而在"队尾"进行插入操作。队列通常包括的两种操作:入队列和出队列。队列的种类也很多,单向队列,双向队列,循......
  • Widows环境下命令界面美化
    #安装ohmyposh(主题)参考官网https://ohmyposh.dev/docs/installation/windowsscoopinstallhttps://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/oh-my-posh.json#安装字体(安装任意都可,用管理员打开)oh-my-poshfontinstall#主题get-Poshthemes/......
  • nextJs中使用styled-jsx
    NextJs不支持直接在页面和组件里importCss这种引入方式(除了全局引入),但是可以使用styled-jsx的方式进行Css的样式定义,也可以实现样式加载NextJs中Css的几种使用方案: global全局引入:在main文件或者app.js/ts文件里面进行全局引入,这种只是适合全局作用的样式引入。例如:im......