深度学习总结:tensorflow和pytorch关于RNN的对比,tf.nn.dynamic_rnn,nn.LSTM-程序员宅基地

技术标签: 学习  tensorflow  tf.nn.dynamic_rnn  torch.LSTM  DL  pytorch  

tensorflow和pytorch关于RNN的对比:
tf.nn.dynamic_rnn很难理解,他的意思只是用数据走一遍你搭建的RNN网络。
可以明显看出pytorch封装更高,更容易理解,动态图的优势。

## tensorflow
# RNN
# num_units=64代表h_t,c_t的维度
rnn_cell = tf.contrib.rnn.BasicLSTMCell(num_units=64)
# 这个累加的lstm_multi ,相当于pytorch里面的num_layers=3
stacked_rnn=[]
for i in range(3):
    stacked_rnn.append(rnn_cell )
lstm_multi = tf.contrib.rnn.MultiRNNCell(stacked_rnn)

# tf.nn.dynamic_rnn这个就是在吓唬你,就是把batch放入lstm_multi里面跑,跑完后的各个time-step的输出
# 和最后一步的h_t,c_t,相当于r_out, (h_n, h_c) = self.rnn(x, None),只不过tensorflow需要提前建好图
outputs, (h_c, h_n) = tf.nn.dynamic_rnn(
    lstm_multi ,                   # cell you have chosen
    image,                      # input
    initial_state=None,         # the initial hidden state
    dtype=tf.float32,           # must given if set initial_state = None
    time_major=False,           # False: (batch, time step, input); True: (time step, batch, input)
)

## pytorch
# hidden_size
        self.rnn = nn.LSTM(         # if use nn.RNN(), it hardly learns
            input_size=INPUT_SIZE,
            hidden_size=64,         # rnn hidden unit
            num_layers=3,           # number of rnn layer
            batch_first=True,       # input & output will has batch size as 1s dimension. e.g. (batch, time_step, input_size)
        )
   
r_out, (h_n, h_c) = self.rnn(x, None)   # None represents zero initial hidden state
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_40759186/article/details/87553899

智能推荐

Unable to delete directory 'E:\workspace-android\xxx\app\build' Failed to delete some children. This-程序员宅基地

文章浏览阅读2.8k次。版本问题解决方法第一步:共享2. 第二步:停止共享3. android studio : Clean Project4. 错误解决如果你觉得有用,那就点个赞吧!!!

jsp使用七牛云API和webuploader上传多组图片_jsp界面上传多张图片-程序员宅基地

文章浏览阅读1.7k次。文章目录jsp使用七牛云API和webuploader上传多组图片介绍目录树遇到的问题上传组件的选择问题进度条多线程前端界面数据库关键代码UserPhotoDaoImplUploadServletJDBCServletlist.jspadd.jsppom.xml参考jsp使用七牛云API和webuploader上传多组图片介绍前作:JavaWeb servlet jsp 使用七牛云API上传图片使用mysql保存图片七牛云路径,在上传图片的时候直接上传到七牛云前端使用了layui,图片多组上传使用_jsp界面上传多张图片

matlab处理汉字文本,Matlab读取CSV文件(补足六个汉字).docx-程序员宅基地

文章浏览阅读854次。Matlab读取CSV文件环境:Matlab R2009a,Win 71、用csvread函数注意:csvread函数只试用与用逗号分隔的纯数字文件第一种:M = CSVREAD('FILENAME') ,直接读取csv文件的数据,并返回给M第二种:M = CSVREAD('FILENAME',R,C) ,读取csv文件中从第R-1行,第C-1列的数据开始的数据,这对带有头文件说明的csv文件(如..._matlab读取csv文件中的文字

在Jetson Nano上学习ROS的记录(版本Ubuntu18.04,课程来源赵虚左老师的《ROS理论与实践》)第二章 话题通信_jeston nano python与ros通信-程序员宅基地

文章浏览阅读1.3k次,点赞11次,收藏11次。系列文章目录第一章 ROS空间创建、helloworld的实现、开启多个节点第二章 话题通信文章目录系列文章目录前言一、话题通信是什么?二、话题通信基本操作(Python)1.流程2.编写发布方3.订阅方4.话题通信自定义msg总结前言现在大二,之前大一有幸参加了2021的国赛,很壮烈的拿了个江苏赛区的二等奖。但发现无人机这个题,真的是往堆钱上走了。不上ROS不行,现在来记录一下一个纯小白学习ROS的过程和遇到的问题。防止学弟、学妹们再走我走过的弯路。板子用的是学长给的Jetson Nano(_jeston nano python与ros通信

笔记本usb转vga外连显示器问题解决记录_usb转vga连接显示器没反应-程序员宅基地

文章浏览阅读7.7k次,点赞5次,收藏4次。由于工位的笔记本只有十分老式的DELL老款显示器,只有双头vga接口,电脑上无vga接口,手头只有一个达尔稳的usb转接vga接口,笔记本的usb外接和显示器相连相连。最近买了一台新的笔记本,直接插上转接口无法点亮外接屏,显示驱动错误,由于忘记老笔记本当时使用的是何转接驱动,问了网店客服未得到明确答案,前后尝试下载了绿联的官方驱动、以及百度查找的驱动下载等,驱动名称诸如DisplayLink,但是下载完电脑依旧无法识别usb转vga。后来打开老笔记本,在驱动精灵的驱动管理一项项对比,发现使用的是Fresc_usb转vga连接显示器没反应

[Adobe Devnet]嵌入字体_adobedevabagaru字体-程序员宅基地

文章浏览阅读794次。http://www.riadev.com/forum.php?mod=viewthread&tid=587嵌入字体 - RIAMeeting翻译小组 - 王成 2 D$ d$ A; b9 c4 R 在这张图的下面,你能看到2个版本的XYZ公司的Logo. 5 o: g4 q0 T2 B$ K' G- w 这两个版本都是由一个球形图案加上文字"XYZ Company"组成的。 在屏幕左侧的_adobedevabagaru字体

随便推点

JS 分页打印_js打印表格在一页显示-程序员宅基地

文章浏览阅读1.3k次。在调用window.print()时,可以实现打印效果,但内容太多时要进行分页打印。在样式中有规定几个打印的样式page-break-before和page-break-afterCSS属性并不会修改网页在屏幕上的显示,这两个属性是用来控制文件的打印方式。每个打印属性都可以设定4种设定值:auto、always、left和right。其中Auto是默认值,只有在有需要时,才需设定分页符号 (Pa..._js打印表格在一页显示

XXL-JOB原理--任务调度中心任务管理(四)_triggerkey triggerkey = triggerkey.triggerkey(jobn-程序员宅基地

文章浏览阅读2.1w次,点赞3次,收藏32次。 在任务调度中心可以进行新建任务,新建任务之后可以在任务列表中查看相关任务,任务可以根据我们配置的cron表达式进行任务调度,或者也可以在任务列表中执行、暂停、删除和查看相关运行日志等操作。一、任务调度中心管理1、新建任务、2、任务列表任务操作二、任务创建与操作 我们了解到xxl-job是基于quartz来实现定时任务的(其实任务调度中心任务执行..._triggerkey triggerkey = triggerkey.triggerkey(jobname, jobgroup)

关于计算机基础的重要性_学习计算机基础的意义-程序员宅基地

文章浏览阅读2.2k次,点赞4次,收藏11次。计算机基础的重要性,推荐了http://bbs.theithome.com/read-htm-tid-123.html的帖子,但是网站已经上不去了,从别处搜来看了,觉得很有道理,与大家共享一下。 我始终认为,对一个初学者来说,IT界的技术风潮是不可以追赶的,而且也没有能力去追赶。 我时常看见自己的DDMM们把课本扔了,去卖些价格不菲的诸如C#, VB.Net_学习计算机基础的意义

RTL8762C SDK开发-点ST7567(TM9665)屏-程序员宅基地

文章浏览阅读605次,点赞2次,收藏4次。本文参考:1)如何使用STM32F103驱动ST7567液晶屏2)瑞昱rtl8762芯片通过SPI控制st7789,从而实现LCD显示_Small_Six_的博客-程序员宅基地1、瑞昱rtl8762芯片通过SPI控制st7789,从而实现LCD显示_Small_Six_的博客-程序员宅基地中关于怎么SPI驱动屏写的很清楚,不再赘述,本文只是模仿。2、完整的源码以后在贴吧,现在源码审核的时间太长。_st7567

go语言中文乱码gbk转UTF8_go gbk转utf8中文乱码-程序员宅基地

文章浏览阅读1.5k次。/** * gbk转utf8 */func coverGBKToUTF8(src string) string { return mahonia.NewDecoder("gbk").ConvertString(src)}/** * 替换乱码 */func replaceNullHtml(src string) string { temp := strings.Replace(src, "聽", "", -1) return temp}/** * gbk转utf8 */fun._go gbk转utf8中文乱码

pythonFlask框架学习_flask layout-程序员宅基地

文章浏览阅读1k次,点赞3次,收藏33次。Flask是由python实现的一个web微框架,让我们可以使用Python语言快速实现一个网站或Web服务。而且有对应的python3及python2版本。首先这边选择的是python3.6,虽然python3在网上好像名声不咋地,而且一度有文章说python3正在毁灭Python,但是反正是别人选的,也就将就了。在网上看别人下载个flask很麻烦,反正我的很简单,windows环境下的..._flask layout

推荐文章

热门文章

相关标签