0

我已經在Tensorflow中使用CNN使用三元組數據實現了遠程學習。爲此,我爲每個圖層都有一組共同的權重。我想用失落技術來補償過度貼合。我想通過以下方式這樣做的:Tensorflow CNN網絡中使用基於三元組的訓練時的丟失

h_fc1_drop = tf.nn.dropout(h_fc1, keep_prob) 
h_fc2_drop = tf.nn.dropout(h_fc2, keep_prob) 
h_fc3_drop = tf.nn.dropout(h_fc3, keep_prob) 

這裏,h_fci是從先前層三個數據樣本的輸出。這就產生了一個潛在的問題,因爲退出是概率性的,因此即使我提供了相同的退出概率,對於三個輸出中的每一個都可能丟棄不同組的神經元,而理想情況下我希望同一組神經元被用於每個。那麼在這種情況下實施退出的正確方法是什麼?

回答

1

假設一切都具有相同的形狀,設置相同的種子應使它們全部相同。

實際上,雖然數據樣本是小型化的,並且tf.nn.dropout將在整個小型化中丟棄相同的單位,所以切換到堆疊示例可能是一個好主意。

相關問題