Log에 대해 여쭤보고 싶은게 있습니다.
Train할 때 출력되는 Log중에 Generator와 Discriminator의 첫번째 Layer의 weight를 출력하게 해놓으셨던데 혹시 이렇게 하신 이유를 알 수 있을까요 ?
issue 남겨 주셔서 감사합니다.
학습 과정 중에 발생된 error에 대해 gradient가 모든 layer를 거치면서 neural networks가 이를 잘 대응하고 있는지 확인하기 위함입니다.
학습이 잘 되지 않는 경우 이런식으로 확인하곤 하는데요. 트릭입니다. :smile:
tensorboard 확인하시면서 학습 과정 확인하시는걸 추천드립니다.

'image'에서 5번째 image log 확인하시면 위와 같이 lr_input / sr_output / gt 순으로 이미지를 출력해줍니다.
답변주셔서 감사합니다 :) 저 웨이트들은 어떻게 해석 해야 하는지 알려주실 수 있을까요?? 번거롭게 해드려 죄송합니다;;ㅎㅎ
해석은 weight 값의 변화가 있냐 없냐로 단순하게 생각하시면 될 것 같아요.

위 식에 의해 weight들이 loss (L)를 감소하는 방향 (-) 으로 학습이 진행됩니다.
표현은 단순하나 그 속엔 쌓아 놓은 layer에 수만큼 partial derivative가 진행되는데 학습이 제대로 진행되지 않는 경우 (원인은 다양하지만), vanishing gradient issue가 발생됩니다.
따라서 극단적인 경우 w_new == w_old인 상태가 될 수도 있게 됩니다.
한 마디로 gradient update 효과가 low-level layer에서 미미하게 적용됩니다.
따라서 처음 layer의 weight를 확인한 것입니다.
weight 출력하는 부분을 뺏었어야 되는데 그대로 commit 해버렸네요 :smile:
감사합니다 ㅎㅎ