基本RNN的Tensorflow实现是怎样的

技术基本RNN的Tensorflow实现是怎样的这篇文章给大家介绍基本RNN的Tensorflow实现是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。今天我们一起看下在tensorflow中基

这篇文章给大家介绍了基本RNN的Tensorflow实现是怎样的,内容非常详细。感兴趣的朋友可以参考一下,希望对你有所帮助。

今天,让我们来看看基本RNN是如何在张量流中实现的。

首先,为了更好地理解RNN的运行机制,我们不需要通过与张量流相关的RNN的运行来实现一个简单的RNN模型。这里我们创建一个初始的循环神经网络(RNN)

给出了一层5个循环神经元的RNN网络,其中激活函数为tanh,假设RNN只运行两次,每次输入向量的大小为3,显示两次。代码如下:

n_inputs=3

n_neurons=5

X0=tf.placeholder(tf.float32,[None,n_inputs])

X1=tf.placeholder(tf.float32,[None,n_inputs])

Wx=tf。变量(TF . random _ normal(shape=[n _ inputs,n_neurons],dtype=tf.float32))

Wy=tf。变量(TF . random _ normal(shape=[n _ neurons,n_neurons],dtype=tf.float32))

b=tf。变量(tf.zeros([1,n_neurons],dtype=tf.float32))

Y0=tf.tanh(tf.matmul(X0,Wx) b)

Y1=tf.tanh(tf.matmul(Y0,Wy) tf.matmul(X1,Wx) b)

Init=TF。global _ variables _ initializer()这个网络有点缠绕。乍一看,它像一个两层前向传输网络。其实不是。首先,两层采用相同的权重和偏差项。其次,每层都有输入,每层都有单独的输出。为了运行这个模型,我们需要分两次向模型中输入数据,如下所示:

将numpy作为np导入

# Mini-batch:实例0、实例1、实例2、实例3

X0_batch=np.array([[0,1,2],[3,4,5],[6,7,8],[9,0,1]]) # t=0

X1_batch=np.array([[9,8,7],[0,0,0],[6,5,4],[3,2,1]]) # t=1

和tf一起。会话()作为会话:

init.run()

y0 _ val,y1 _ val=sess.run ([y0,y1],feed _ dict={x03360x0 _ batch,x1:x1 _ batch})上的迷你批处理包含两次输入,每次有四个样本,每个样本包含三个特征。最后一个Y0_val和Y1_val包括网络中所有神经元在两个时刻的输出。以下是输出结果:

t=0时打印(Y0_val) #输出

[-0.2964572 0.82874775-0.34216955-0.75720584 0.19011548]#实例0

[-0.12842922 0.99981797 0.84704727-0.99570125 0.38665548]#实例1

[0.04731077 0.99999976 0.99330056-0.999933 0.55339795]#实例2

[0.70323634 0.99309105 0.99909431-0.85363263 0.7472108]]#实例3

t=1时打印(Y1_val) #输出

[[ 0.51955646 1.0.99999022-0.99984968-0.24616946]#实例0

[-0.70553327-0.11918639 0.48885304 0.08917919-0.26579669]#实例1

[-0.32477224 0.99996376 0.99933046-0.99711186 0.10981458]#实例2

[-0.43738723 0.91517633 0.97817528-0.91763324 0.11047263]]# instance 3我在这里分享了什么是基本RNN的Tensorflow实现,希望如此。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/113762.html

(0)

相关推荐

  • Go语言中什么是互斥锁

    技术Go语言中什么是互斥锁这篇文章将为大家详细讲解有关Go语言中什么是互斥锁,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、互斥锁Mutex1.1 Mutex介绍Go

    攻略 2021年10月21日
  • Java Jwt库的简介及使用方法

    技术Java Jwt库的简介及使用方法这期内容当中小编将会给大家带来有关Java Jwt库的简介及使用方法,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。JWT介绍JWT概念JWT ,

    攻略 2021年11月9日
  • Python模块怎么导入

    技术Python模块怎么导入这篇文章主要讲解了“Python模块怎么导入”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python模块怎么导入”吧!模块的定义:在pyth

    攻略 2021年11月25日
  • sparksql查询优化的基本流程(spark调优参数)

    技术spark作业调优的方法是什么这篇文章主要讲解了“spark作业调优的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“spark作业调优的方法是什么”吧!调优

    2021年12月14日
  • 班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译

    技术班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译释义班:鲁班班门弄斧的主人公是谁,春秋时期鲁国人,著名的木匠。在鲁班门前舞弄斧子。
    比喻在行家面前卖弄本领,不自量力。
    出处唐·柳宗元《王氏伯仲唱和诗序》:“操斧于班

    生活 2021年10月25日
  • 送闺蜜结婚礼物排行榜,闺蜜结婚我送什么礼物比较好呢

    技术送闺蜜结婚礼物排行榜,闺蜜结婚我送什么礼物比较好呢从某种意义上而言送闺蜜结婚礼物排行榜,创意的多少取决于你为准备那礼物花了多少心思。 所以了,你可以自制礼物,比如个性电子相册、幸运星等等。当然,可以送买的礼物,但需要

    生活 2021年10月21日