Xem xét mã ví dụ .
Tôi muốn biết Cách áp dụng tính năng cắt chuyển màu trên mạng này trên RNN, nơi có khả năng bùng nổ các gradient.
tf.clip_by_value(t, clip_value_min, clip_value_max, name=None)
Đây là một ví dụ có thể được sử dụng nhưng tôi giới thiệu cái này ở đâu? Trong định nghĩa của 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)
Nhưng điều này không có ý nghĩa vì tensor _X là đầu vào chứ không phải grad là những gì sẽ được cắt?
Tôi có phải xác định Trình tối ưu hoá của riêng mình cho việc này hay có tuỳ chọn đơn giản hơn không?
optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(cost)
và sau đó lặp lại trình tối ưu hóa được thực hiệnoptimizer.run()
nhưng việc sử dụngoptimizer.run()
dường như không hoạt động trong trường hợp này?