我想训练一个用于图像分割的多维LSTM。这要求我计算多维情况下的单元格状态。
tf.tanh(cell)*input_gate
+ cell_state_l*forget_gate_l
+ cell_state_t*forget_gate_t所有的门x都是0 <= x <= 1。在这些条件下,不能保证我的单元状态在没有约束的情况下不会增长。
确保这一点的正确方法是什么?
我读过几篇使用这些的论文,但它们并没有暗示我需要做一些额外的事情来确保细胞状态不会爆炸。我读过一些论文,其中说要将遗忘门的偏差初始化为一个似乎很麻烦的大的负数,而且在引入多维LSTM的http://www.cs.toronto.edu/~graves/phd.pdf的原始工作中没有提到这一点。
我该怎么控制这个?
发布于 2022-07-01 12:12:10
我在学习LSTM时也有类似的问题。
这是我对lstm单元状态计算的第一次了解:
cell = old_cell*forget_gate + input_gate*tanh(input_state)单元格部分忘记了一些特性,并在以后添加了新的输入,这可能会导致某些特性根据我的直觉产生爆炸性的值。
然后我发现LSTM细胞状态实际上是被乙状结肠所剪裁的。
cell = sigmoid(old_cell*forget_gate + input_gate*tanh(input_state))这样可以确保它不会有爆炸性的值。
图片:

https://stackoverflow.com/questions/44184403
复制相似问题