본문 바로가기

기타/TIL3

[TIL] SGD 에 대한 제대로 된 이해 오피스 갔다와서 또 물어본 이야기 부끄러운 말이지만 논문을 그렇게 읽었지만 아직도 SGD를 이해를 못했다. 이번에 물어보면 너무너무 좋을 기회일 것 같아서 같이 물어봤다. 일단 SGD란 확률적 경사하강법인데, 난 여기서 '확률적'이라는 말을 이해할 수 없었다. SGD에서는 batch size가 1인 배치를 이용해서 총 샘플 수 만큼 iteration을 한다. 그러면 결국 계산하는 순서만 랜덤인거라는 생각이 들었다. 그래서 모든 데이터 셋을 한꺼번에 이용하느냐, 하나씩 하느냐가 다른거 아닌가 싶어서 왜 '확률적'이라는 말을 쓰는지 의아했다. 일단 내가 이해한 건 맞다. batch size가 1인 배치를 이용하는 것도 맞고, 샘플 수만큼 iteration 하고 가중치를 업데이트 하는 것도 맞다. 하지만 '확.. 2021. 10. 14.
[TIL] feature map은 대체 뭘 나타내는가? 오늘은 교수님 오피스 아워 때 방문해서 여쭤보고 온 질문을 공유하고자 한다. 우선 내가 의문을 가졌던 의문 먼저 소개하자. 위 이미지에서는 vgg16의 conv 레이어를 시각화한 것이다. conv 레이어의 필터는 레이어가 깊어짐에 따라 더욱 복잡한 형태를 띄고 있음을 위 이미지에서도 확인할 수 있다. 즉 더 복잡한 필터를 통해서 이제 이미지의 본질적인, 혹은 핵심적인 특징을 잡아내는 것이다. 한편 위 이미지는 conv layer의 필터를 거친 후의 feature map들이다. 보시다시피 conv layer를 거쳐감에 따라서 점점 feature map은 interpretable하지 않은 형태를 가진다. 여기서 내가 가졌던 의문은 이것이다. filter가 더 복잡해 짐에 따라 중요한 특성을 잡아내는 것은 명.. 2021. 10. 14.
[TIL] 파이토치 error 2건 [파이토치 학습이 안 되는 경우] (1) 모든 파라미터의 requires_grad가 True로 설정되어 있는지 확인한다 (2) 파라미터만 requires_grad=True 여야 하는 것은 아니다. 인풋 역시 마찬가지이다. 한편 loss는 requires_grad=True 인 것은 크게 중요하지 않다. loss는 input들이 requires_grad 가 True 이면 아무 상관 없는 듯하다. [dtype error] 말그대로 타입이 안 맞아서 생긴 에러 (1) int/float/long 기본적인 타입을 확인한다 (2) input과 model 이 동일한 디바이스에 있는지 확인한다 + 종합해서 보자면 loss 자체의 requires_grad나 type 보다는 input 의 requires_grad와 type.. 2021. 9. 1.