Mempertimbangkan kode contoh .
Saya ingin tahu Bagaimana cara menerapkan pemotongan gradien pada jaringan ini di RNN di mana ada kemungkinan gradien yang meledak.
tf.clip_by_value(t, clip_value_min, clip_value_max, name=None)
Ini adalah contoh yang dapat digunakan tetapi di mana saya memperkenalkan ini? Di def dari RNN
lstm_cell = rnn_cell.BasicLSTMCell(n_hidden, forget_bias=1.0)
# Split data because rnn cell needs a list of inputs for the RNN inner loop
_X = tf.split(0, n_steps, _X) # n_steps
tf.clip_by_value(_X, -1, 1, name=None)
Tapi ini tidak masuk akal karena tensor _X adalah input dan bukan grad yang akan dipotong?
Apakah saya harus menentukan Pengoptimal saya sendiri untuk ini atau adakah opsi yang lebih sederhana?
optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(cost)
dan kemudian pengulangan pengoptimal dilakukanoptimizer.run()
tetapi penggunaanoptimizer.run()
tampaknya tidak berfungsi dalam kasus ini?