前言

  • 关于LSTM原理: http://colah.github.io/posts/2015-08-Understanding-LSTMs/
  • 关于LSTM原理(译文):https://blog.csdn.net/Jerr__y/article/details/58598296
  • 关于Tensorflow+LSTM的使用:https://www.knowledgemapper.com/knowmap/knowbook/jasdeepchhabra94@gmail.comUnderstandingLSTMinTensorflow(MNISTdataset)
  • 关于Tensorflow+LSTM的使用(译文):https://yq.aliyun.com/articles/202939

正文

本文只是介绍tensorflow中的BasicLSTMCell中num_units,关于LSTM和如何使用请看前言的教程。
在使用Tensorflow跑LSTM的试验中, 有个num_units的参数,这个参数是什么意思呢?

先总结一下,num_units这个参数的大小就是LSTM输出结果的维度。例如num_units=128, 那么LSTM网络最后输出就是一个128维的向量。

我们先换个角度举个例子,最后再用公式来说明。

假设在我们的训练数据中,每一个样本 x 是 28*28 维的一个矩阵,那么将这个样本的每一行当成一个输入,通过28个时间步骤展开LSTM,在每一个LSTM单元,我们输入一行维度为28的向量,如下图所示。

那么,对每一个LSTM单元,参数 num_units=128 的话,就是每一个单元的输出为 128*1 的向量,在展开的网络维度来看,如下图所示,对于每一个输入28维的向量,LSTM单元都把它映射到128维的维度, 在下一个LSTM单元时,LSTM会接收上一个128维的输出,和新的28维的输入,处理之后再映射成一个新的128维的向量输出,就这么一直处理下去,知道网络中最后一个LSTM单元,输出一个128维的向量。

从LSTM的公式的角度看是什么原理呢?我们先看一下LSTM的结构和公式:

参数 num_units=128 的话,

  1. 对于公式 (1) , h = 128 ∗ 1 h = 128 ∗ 1 h = 128 ∗ 1 h=128∗1h=128∗1 h=128*1 h=128∗1h=128∗1h=128∗1128∗1 的向量。

    以上就是 num_units 参数的含义。

    如有错误请指出谢谢

    参考链接:

    https://stackoverflow.com/questions/37901047/what-is-num-units-in-tensorflow-basiclstmcell
    https://www.zhihu.com/question/64470274

                                    </div>
    

转自:https://blog.csdn.net/notHeadache/article/details/81164264

lstm num_units 参数理解相关推荐

  1. LSTM 01:理解LSTM原理及训练方法

    本文代码运行环境: cudatoolkit = 10.1.243 cudnn = 7.6.5 tensorflow-gpu = 2.1.0 keras-gpu = 2.3.1 相关文章 LSTM 01 ...

  2. tensorflow.keras lstm 部分参数整理units input_size

    参考博客: (11条消息) 关于LSTM的units参数_LeoRainy的博客-CSDN博客_lstm units怎么设置 Keras LSTM的参数input_shape, units等的理解_y ...

  3. LSTM及其激活函数理解

    LSTM及其激活函数理解 -------本文仅为学习笔记,不做任何商业用途------- 一.LSTM简介     长短期记忆网络(LSTM)是一种时间循环神经网络,是为了解决一般的RNN(循环神经网 ...

  4. db链接相关链接相关参数理解

    db链接相关链接相关参数理解 max_connect_errors:tcp/ip链接建立后等待client发送账号,密码等身份验证信息的超时时间的次数 connect_timeout:tcp/ip链接 ...

  5. [转帖]/proc/sys/net/ipv4/ 下参数理解

    /proc/sys/net/ipv4/ 下参数理解,方便服务器优化 2017年06月02日 16:52:27 庞叶蒙 阅读数 3065 https://blog.csdn.net/pangyemeng ...

  6. ernie和Bert的参数理解

    BERT参数的理解 bert参数量隐藏在每一层的shape当中.把如上shape累加即为全部参数量. 总参数量=input_parm+12*encoder_parm=(30522+512+2)768+ ...

  7. 灰狼算法优化LSTM超参数-神经元个数-dropout-batch_size

    1.摘要 本文主要讲解:使用灰狼算法优化LSTM超参数-神经元个数-dropout-batch_size 主要思路: 灰狼算法 Parameters : 迭代次数.狼的寻值范围.狼的数量 LSTM P ...

  8. BrokenPipeError: [Errno 32] Broken pipe 基于pytorch的训练 num_worker参数理解

    BrokenPipeError: [Errno 32] Broken pipe 解决 原因: 在训练过程中,设置的num_workers过大 修改为 num_workers=0 即可. num_wor ...

  9. 机器学习之MATLAB代码--MATLAB量子粒子群优化LSTM超参数负荷预测(十三)

    机器学习之MATLAB代码--MATLAB量子粒子群优化LSTM超参数负荷预测(十三) 代码 数据 结果 代码 代码按照下列顺序依次: 1. function result(true_value,pr ...

最新文章

  1. CloudStack集成KVM报NFS错误
  2. Web.config 灵活配置
  3. 全球最大sap hana系统建立在以下哪个厂商的服务器产品上,全球最大sap hana系统建立在以下哪个厂商的服务器产品上...
  4. ubuntu上训练yolov3: Caught ValueError in DataLoader worker process 0. string indices must be integers.
  5. 读spring源码(一)-ClassPathXmlApplicationContext-初始化
  6. 如何从iPhone / iPod Touch / iPad连接
  7. pythonrequest函数_[Python]requests模块:HTTP请求时的回调函数
  8. A - C语言实验——最值
  9. 记录——《C Primer Plus (第五版)》第十章编程练习第九题
  10. 悄悄告诉你,在硅谷,有一种工作比程序员挣得多
  11. Emacs代码补全之ycmd
  12. matlab 中ctf,CTF中常见的web
  13. 2012-08-20 → 2012-08-26 周总结
  14. 测试驱动开发心得体会
  15. android实现忘记密码功能,手机忘记密码如可解决 安卓手机重置密码教程【详解】...
  16. 女生学软件测试难不难 培训出来能找到工作吗?
  17. 2021综述:计算机视觉中的注意力机制(续四):分支注意力
  18. 使用Apriori算法寻找频繁样式(Frequent Patterns)
  19. 【软考系统架构设计师】计算机网络章节习题集
  20. 西北师大与新华三开展物联网战略合作,共建“物联网联合实验室”

热门文章

  1. java ajax 数组_jQuery ajax - serializeArray() 方法
  2. 2022年贵州省施工员(土建)考试模拟练习题
  3. IDEA 开发工具使用记录
  4. Python关于None的报错:'NoneType' object is not iterable和cannot unpack non-iterable NoneType object
  5. Docker小鲸鱼真可爱~(@^_^@)~
  6. 面向对象和面向过程之间的区别以及优缺点
  7. android avd
  8. laravel中使用阿里云视频点播遇到的坑解决思路
  9. 用C语言写一个通信软件,客户端可以实现文字聊天,文件传输,建立群聊;服务端可以创建账号吧...
  10. Mac系统查看端口占用和杀死进程