강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của winter49583283
winter49583283

câu hỏi đã được viết

Việc triển khai bài viết học sâu được học thông qua việc triển khai YOLO với TensorFlow 2.0

loss.py - object_loss, noobject_loss, class_loss

loss.py 의 loss에 사용된 tf.nn.l2_loss 에 대해서 질문 드립니다.

Viết

·

438

0

loss.py 중 set coord_loss 뿐 아니라 모든 loss를 구하는 부분에서 tf.nn.l2_loss를 사용하셨는데, 이건 제곱 후 2로 나눠주는 연산을 하는 연산으로 알고 있습니다.

loss function에서는 2로 나누는 연산은 없었는데, code에서 tf.nn.l2_loss를 사용해서 2로 나누는 연산을 하신 이유에 대해서 궁금합니다.

tensorflow딥러닝

Câu trả lời 1

1

AISchool님의 프로필 이미지
AISchool
Người chia sẻ kiến thức

안녕하세요. 반갑습니다~.

1/2을 곱한이유는 ^2로 제곱하는 부분이 Gradient Descent 과정에서 미분을 취하면 앞에 *2로 튀어나오기 때문에 이부분에 1/2을 곱해서 상쇄시킴으로써 수식을 더욱 깔끔하게 만들기 위함입니다.

딥러닝 구현에서 광범위하게 사용되는 패턴중에 하나로 1/2은 단지 수식 전개를 깜끔하게 만들기 위한 상수이기때문에 1/2을 곱하든 곱하지 않든 최종 결과에 큰차이를 만들어내지는 않으므로 크게 신경쓰지 않으셔도 됩니다.

더 자세한 내용은 아래 답변을 참조하세요.

https://datascience.stackexchange.com/questions/52157/why-do-we-have-to-divide-by-2-in-the-ml-squared-error-cost-function

감사합니다~.

Hình ảnh hồ sơ của winter49583283
winter49583283

câu hỏi đã được viết

Đặt câu hỏi