我正在尝试使用跳过连接来构建神经网络。但是有时候我想关掉它们,即它们应该仍然存在(出于形状原因),但我不希望传达任何信号。
E.g。我想要这样的东西:
for i, num_layers in reversed(list(enumerate(layers))):
...
if skip_connection_list is not None:
skip_connection = skip_connection_list[i]
if self.config.skip_skip:
skip_connection = tf.multiply(skip_connection,0)
stack = tf.concat([l, skip_connection], axis=-1)
当我尝试训练时,我收到以下警告
E tensorflow/core/kernels/check_numerics_op.cc:157] abnormal_detected_host @0x10478c10a00 = {1, 0} LossTensor is inf or nan
使用其他号码,例如1
,不会导致此问题。我该如何解决这个问题?
答案 0 :(得分:0)
在这种情况下,只需将skip_connection
分配给零向量即可解决问题。这也可能对其他人有用,但这个解决方案非常笨拙,所以我暂时还没有回答这个问题。
for i, num_layers in reversed(list(enumerate(layers))):
...
if skip_connection_list is not None:
if self.config.skip_skip:
skip_connection = tf.zeros_like(skip_connection_list[i])
else:
skip_connection = skip_connection_list[i]
stack = tf.concat([l, skip_connection], axis=-1)