2018년 4월 7일 토요일

[tensorflow] 옵티마이저에서 그라디언트구해서 업데이트 하는 두가지 방법.

https://stackoverflow.com/questions/45473682/difference-between-apply-gradients-and-minimize-of-optimizer-in-tensorflow?rq=1


텐서 플로우에서 옵티마이저로 구한 그래디언트를 적용하는 방법은 두가지 이다.


1. 자동으로
optimizer = tf.train.AdamOptimizer(1e-3)
train_op = optimizer.minimize(cnn.loss, global_step=global_step)







2. 수동으로


optimizer = tf.train.AdamOptimizer(1e-3)
grads_and_vars = optimizer.compute_gradients(cnn.loss)
train_op = optimizer.apply_gradients(grads_and_vars, global_step=global_step)


수동으로 할때는 구해진 그라디언트를 바로 적용하기 전에 다른일을 할 수 있다.



댓글 없음:

댓글 쓰기