RNN算法
1、RNN算法原理
单个序列 多个序列 整体介绍 循环神经网络工作原理(1)RNN变种GRU
1 2 3 4(2)RNN变种LSTM
LSTM模型架构 1 2 3LSTM缺点分析:
4todo:
1、残差网络原理
2、RNN部分解决梯度消失问题,但记住的序列长度仍有限的深度理解
参考资料4:
【个人整理】长短是记忆网络LSTM的原理以及缺点
https://blog.csdn.net/qq_27825451/article/details/89015513
2、一个实例代码
class RNN(tf.keras.Model):
def __init__(self, num_chars, batch_size, seq_length):
super().__init__()
self.num_chars = num_chars
self.seq_length = seq_length
self.batch_size = batch_size
self.cell = tf.keras.layers.LSTMCell(units=256)
self.dense = tf.keras.layers.Dense(units=self.num_chars)
def call(self, inputs, from_logits=False):
inputs = tf.one_hot(inputs, depth=self.num_chars) # [batch_size, seq_length, num_chars]
state = self.cell.get_initial_state(batch_size=self.batch_size, dtype=tf.float32)
for t in range(self.seq_length):
output, state = self.cell(inputs[:, t, :], state)
logits = self.dense(output)
if from_logits:
return logits
else:
return tf.nn.softmax(logits)
参考资料:
1、人人都能看懂的GRU
https://zhuanlan.zhihu.com/p/32481747
2、人人都能看懂的LSTM
https://zhuanlan.zhihu.com/p/32085405
3、循环神经网络(RNN)
https://www.bookstack.cn/read/TensorFlow2.0/spilt.4.c868281a01ad8ec0.md
4、【个人整理】长短是记忆网络LSTM的原理以及缺点
https://blog.csdn.net/qq_27825451/article/details/89015513
网友评论