Tensorflow 3种RNN的比较

本文探讨了Tensorflow中三种循环神经网络——SimpleRNN、LSTM和GRU。SimpleRNN是最基础的,而LSTM通过其三个门控机制提供更复杂的学习能力,尽管这导致了更长的训练时间。相比之下,GRU拥有两个门控,平衡了性能和训练效率。
摘要由CSDN通过智能技术生成

Tensorflow提供了3种循环神经网络:SimpleRNN、LSTM和GRU。这三种方法,SimpleRNN最简单,LSTM和GRU差不多,但是GRU的训练速度稍微占一些优势,毕竟LSTM有3个门(相当于增加了3次矩阵运算),而GRU只有两个门(相当于增加了2次矩阵运算)。
下面程序的训练时间:

循环神经网络 训练时长 准确度
SimpleRNN 9.259 0.958
LSTM 24.984 0.973
GRU 22.259 0.980

包含有4个神经元的SimpleRNN、LSTM和GRU的权重矩阵如下:

循环神经网络 输入值权重 循环神经元权重 偏置项 总计
SimpleRNN 32 16 4 52
LSTM 128 64 16 208
GRU 96 48 24 168
import tensorflow as tf
import time
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
#归一化数据
x_train=x_train/255.
x_test=x_test/255.
# 数据长度 一行有28个像素
input_size = 28
# 序列的长度
time_steps = 28
# 隐藏层block的个数
cell_size = 64
#LSTM
lstm_model = tf.keras.Sequential()
lstm_model.add
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值