代码:

import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_datamnist = input_data.read_data_sets('MNIST_data/', one_hot=True)

运行结果:

Extracting MNIST_data/train-images-idx3-ubyte.gz
Extracting MNIST_data/train-labels-idx1-ubyte.gz
Extracting MNIST_data/t10k-images-idx3-ubyte.gz
Extracting MNIST_data/t10k-labels-idx1-ubyte.gz

代码:

# 输入图片是28*28
n_inputs = 28 #输入一行,一行有28个数据
max_time = 28 #一共28行
lstm_size = 100 #隐层单元
n_classes = 10 # 10个分类
batch_size = 50 #每批次50个样本
n_batch = mnist.train.num_examples // batch_size #计算一共有多少个批次#这里的none表示第一个维度可以是任意的长度
x = tf.placeholder(tf.float32,[None,784])
#正确的标签
y = tf.placeholder(tf.float32,[None,10])#初始化权值
weights = tf.Variable(tf.truncated_normal([lstm_size, n_classes], stddev=0.1))
#初始化偏置值
biases = tf.Variable(tf.constant(0.1, shape=[n_classes]))#定义RNN网络
def RNN(X,weights,biases):# inputs=[batch_size, max_time, n_inputs]inputs = tf.reshape(X,[-1,max_time,n_inputs])#定义LSTM基本CELLlstm_cell = tf.contrib.rnn.BasicLSTMCell(lstm_size)# final_state[state, batch_size, cell.state_size]# final_state[0]是cell state   # final_state[1]是hidden_state 最后输出的信号# outputs: The RNN output `Tensor`.# If time_major == False (default), this will be a `Tensor` shaped:#   `[batch_size, max_time, cell.output_size]`.# If time_major == True, this will be a `Tensor` shaped:#   `[max_time, batch_size, cell.output_size]`.outputs,final_state = tf.nn.dynamic_rnn(lstm_cell,inputs,dtype=tf.float32)results = tf.nn.softmax(tf.matmul(final_state[1],weights) + biases)return results#计算RNN的返回结果
prediction= RNN(x, weights, biases)
#损失函数
cross_entropy = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=prediction,labels=y))
#使用AdamOptimizer进行优化
train_step = tf.train.AdamOptimizer(1e-4).minimize(cross_entropy)
#结果存放在一个布尔型列表中
correct_prediction = tf.equal(tf.argmax(y,1),tf.argmax(prediction,1))#argmax返回一维张量中最大的值所在的位置
#求准确率
accuracy = tf.reduce_mean(tf.cast(correct_prediction,tf.float32))#把correct_prediction变为float32类型
#初始化
init = tf.global_variables_initializer()with tf.Session() as sess:sess.run(init)for epoch in range(6):for batch in range(n_batch):batch_xs,batch_ys =  mnist.train.next_batch(batch_size)sess.run(train_step,feed_dict={x:batch_xs,y:batch_ys})acc = sess.run(accuracy,feed_dict={x:mnist.test.images,y:mnist.test.labels})print ("Iter " + str(epoch) + ", Testing Accuracy= " + str(acc))

运行结果:

Iter 0, Testing Accuracy= 0.7258
Iter 1, Testing Accuracy= 0.7861
Iter 2, Testing Accuracy= 0.8223
Iter 3, Testing Accuracy= 0.8923
Iter 4, Testing Accuracy= 0.9145
Iter 5, Testing Accuracy= 0.9193

Tensorflow— 递归神经网络RNN相关推荐

  1. 递归神经网络RNN——LSTM

    递归神经网络RNN--LSTM 1.LSTM的产生原因及优点 2.LSTM网络结构 3.LSTM工作机制 4.LSTM Attention 机制 关于LSTM模型,看懂这篇文章就OK了,不用再看别的了 ...

  2. rnn 递归神经网络_递归神经网络rnn的简单解释

    rnn 递归神经网络 Recurrent neural network is a type of neural network used to deal specifically with seque ...

  3. 递归神经网络RNN总结

    一.前述 传统的神经网络每个输入节点之间没有联系, RNN (对中间信息保留): 由图可知,比如第二个节点的输入不仅依赖于本身的输入U1,而且依赖上一个节点的输入W0,U0,同样第三个节点依赖于前两个 ...

  4. 卷积神经网络基础:(8)递归神经网络RNN

    1.RNN网络由来 RNN:Recurrent Neural Network.递归神经网络只是在传统神经网络上进行一个改进而已. 正常流程是:输入---->隐层---->输出 (数据来了经 ...

  5. lecture7-序列模型及递归神经网络RNN

    Hinton 第七课 .这里先说下RNN有recurrent neural network 和 recursive neural network两种,是不一样的,前者指的是一种人工神经网络,后者指的是 ...

  6. matlab递归神经网络RNN实现:桨距控制控制风力发电机组研究

    本文介绍了用于涡轮桨距角控制的永磁同步发电机(PMSG)和高性能在线训练递归神经网络(RNN)的混合模糊滑模损失最小化控制的设计.反向传播学习算法用于调节RNN控制器.PMSG速度使用低于额定速度的最 ...

  7. 递归神经网络RNN桨距控制控制风力发电机组

    本文介绍了用于涡轮桨距角控制的永磁同步发电机(PMSG)和高性能在线训练递归神经网络(RNN)的混合模糊滑模损失最小化控制的设计.反向传播学习算法用于调节RNN控制器.PMSG速度使用低于额定速度的最 ...

  8. 递归神经网络RNN网络 LSTM

    转自: https://blog.csdn.net/Jerr__y/article/details/61195257 @author: huangyongye 前言: 根据我本人学习 TensorFl ...

  9. 算法基础——递归神经网络RNN

    CNN主要用于CV领域,RNN主要用于NLP领域,RNN的输入数据是文本数据. 假设   t1 时刻,有输入x1进入隐藏层,得到特征h1,h1会返回和 t2 时刻的输入x2一起输入隐藏层,得到特征h2 ...

最新文章

  1. POJ 1410 Intersection
  2. 智源研究院发布“源创计划”,助力人工智能创业项目加速
  3. HBase Cassandra比较
  4. 通信中的带宽关系、以及码元、波特率、比特率、奈奎斯特带宽
  5. Python PIL : import _imaging _imagingft : No module named _imaging _imagingft(转)
  6. scrt如何切换成英文版_英文版SecureCRT显示乱码解决
  7. 算法移植优化(三)android dlib 人脸检测使用
  8. 95-136-042-源码-Operator-AbstractUdfStreamOperator
  9. 分享50佳高质量免费按钮图标资源(上篇)[zz]
  10. 亚洲首个无人船试验基地建于中国珠海,无人船或将助力南海巡逻
  11. AutoCAD2020布局和模型窗口背景色都修改为黑色
  12. android pcm数据格式,android 实时PCM数据编码成AAC
  13. 纯电动两档箱实际项目模型,本模型基于Cruise软件和搭建完成,本资料包包含所有源文件
  14. RiceQuant开源项目Rqalpha运行演示策略的错误“ERROR 'figure' is an unknown keyword argument”...
  15. 每次离开总是 装做轻松的样子 微笑着说回去吧 转身泪湿眼底
  16. MSG360虚拟服务器,H3C MSG360-10:简单设置+多场景结合应用
  17. Allegro静态铜皮避让问题
  18. 无人车路径规划与控制综述
  19. 山东省软件设计大赛参赛心得
  20. HTML/XML转义字符对照表ASCII码对照表

热门文章

  1. 程序员成长路上的团队修炼之道
  2. 论CondConv、DynamicConv、DyNet的区别与联系
  3. 论文精读 Learning to Segment Object Candidates(一)
  4. 神经网络压缩方法:模型量化的概念简介
  5. 铲屎官福音:汪星人和喵星人的小情绪,AI 可以识别了
  6. ​数字政府发展指数排名出炉!上海、浙江、北京位列前三,你的城市排第几?(附报告全文下载)...
  7. 快讯 | 全球首试5G支持多中心远程协同手术
  8. TensorFlow 安装及入门
  9. 爆火的博士论文致谢,“炸”出了一批同行者,刚刚本人回应:祝愿大家努力终有所成!...
  10. 介绍一些简单实用的Python小tricks