最近,我发现了一些有关生成递归模型的论文。所有的都附有子网,例如prior / encoder / decoder / etc。由著名的LSTM单元组成新型RNN单元的聚集。
我只是好奇那些新的RNN单元是否发生了梯度消失/爆炸。这样的组合没有问题吗?
似乎它们都具有与上述相似的模式。
A Recurrent Latent Variable Model for Sequential Data
递归体系结构的伪代码如下:
def new_rnncell_call(x, htm1):
#prior_net/posterior_net/decoder_net is single layer or mlp each
q_prior = prior_net(htm1) # prior step
q = posterior_net([htm1, x]) # inference step
z = sample_from(q) # reparameterization trick
target_dist = decoder_net(z) # generation step
ht = innerLSTM([z, x], htm1) # recurrent step
return [q_prior, q, target_dist], ht
让我担心的是,在处理bptt期间,众所周知的LSTM(或GRU等)单元之外的裸机重量没有任何激活逻辑的门控逻辑,即LSTM内的重量。对我来说,这看起来不像堆叠rnn层或仅用于输出的其他密集层。
没有梯度消失/爆炸问题吗?