답변 감사합니다.
제가 궁금한 것은 ,
w_grad를 계산할때 전체 샘플에 대한 평균값을 왜 구하는 것인지가 아니라
165쪽 코드에서
-------------------------------------------------------------------------------------------------
w_grad , b_grad = self.backprop(x,err)
w_grad += (self.l1 * np.sign(self.w) +self.l2 * self.w)/m 에서
------------------------------------------------------------------------------------------------
"페널티 항을 m으로 나누는 것은 잘못된것 아닌가"하는 것입니다.
backprop()은 w_grad을 반환할때 이미 전체 샘플 갯수 m으로 나눈값을 반환합니다.
이렇게 반환된 w_grad에 에포크마다 페널티 항을 한번씩 더하면 될 것 같은데
m으로 나누는 것이 잘못된것처럼 보여서입니다.
교재 코드에 따르면,
페널티는 샘플마다 계산된 것이 아니고 에포크마다 전체 샘플에 대해 구해진 w_rad의 평균값에 한번 더해지는 것 아닌가요?
제가 저자님을 혼란스럽게 하고 있지 않나 염려스럽지만
아직 의문이 해소되지 않아 다시 질문드리니 답변주시면 감사하겠습니다.
감사합니다.