본문 바로가기

pytorch2

PyTorch module forward() 와 특수 매소드 __call__() 비교 https://ysy2000.tistory.com/117에서 잠깐 특수 매소드에 대해 언급했다. 특수메소드는 built-in function이라고 보면 된다. 그 중에서 __call__ 메소드를 정의하면 f = Function() 형대로 함수의 인스턴스를 변수 f에 대입하고, 나중에 f(...) 형태로 __call__매소드를 호출할 수 있다. 그런데 https://github.com/clovaai/ClovaCall 의 코드를 리뷰하던 중 마치 __call__()을 호출하듯 forward()매소드를 호출하는 것을 볼 수 있었다. model = Seq2Seq(enc, dec) logit = model(feats, feat_lengths, scripts, teacher_forcing_ratio=0) 첫 문장에.. 2022. 7. 12.
0에서의 ReLU 이번 주부터 '밑바닥부터 시작하는 딥러닝' 복습을 시작했다. 딥러닝 입문자분과 딥러닝 고수분, 그리고 나 이렇게 셋이서 스터디를 한다. 그런데 아주 첫부분에서 선배가 0에서의 ReLU값이 무엇인지 물어봤다. 어... 미분 불가라 미분값이 없지 않나요? 하지만 선배가 물어본 것은 이런 대답이 아니었다. 활성함수로 ReLU를 자주 사용하는데 그 경우마다 0의 값이 하나도 없을까? 그 때는 오류를 내고 그냥 넘어가는가? 당연히 아니다. 좌극한값 0 또는 우극한 값 1을 넣어줄 것이다. 물론 정확히 0인 경우가 얼마나 되겠냐만은, 무시할 수 없는 부분인 것은 확실하다. 이것이 ReLU다. 정의를 보면 굉장히 간단하다. 그럼 DeepLearning에서 흔히 쓰이는 library 두 가지, TensorFlow와 P.. 2022. 1. 1.
반응형