inflearn logo
강의

Course

Instructor

[Pytorch] Building Deep Learning Models Using PyTorch

Multi-class Classification Model - Theory

nn.CrossEntropyLoss() method 질문

561

Dae Young Kang

5 asked

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

좋은 강의 항상 감사드립니다.

nn.CrossEntropyLoss() 는 nn.LogSoftmax 와 nn.NLLLoss 연산의 조합이라고 말씀해 주셨고, cross-entropy는 아래와 같은 식인 것으로 알고 있습니다.

위 식에서 log는 한번만 취해지는 것으로 보입니다. 그런데 CrossEntropyLoss가 LogSoftmax 와 NLLLoss 연산의 조합이라면 Log 함수가 두번 사용 되는 것 같아서 이해가 잘 되지 않습니다.

설명을 해주시면 감사드리겠습니다 :-)

딥러닝 딥러닝 인공신경망 anaconda pytorch 인공신경망 cnn

Answer 1

0

YoungJea Oh

로그 함수를 사용하는 이유는 다음과 같습니다.

계산 단순성: 우도 함수의 로그를 취하면 많은 작은 수의 곱을 일반적으로 계산 작업이 더 쉬운 로그의 합으로 변환합니다.

수치적 안정성: 확률로 작업할 때 수치적 언더플로 및 정밀도 손실로 이어질 수 있는 매우 작은 숫자를 만나는 것이 일반적입니다. 우도의 로그를 취하면 작은 수의 곱을 일반적으로 수치적으로 처리하기 더 쉬운 로그의 합으로 변환하여 이 문제를 피할 수 있습니다.

해석 가능성: 로그 우도는 우도 함수의 로그가 데이터의 엔트로피에 비례하므로 간단한 해석이 가능합니다. 즉, 로그 우도는 데이터에 포함된 정보의 양을 측정합니다. 이러한 해석은 로그 우도를 모델 선택 및 가설 테스트에 유용한 도구로 만듭니다.

요약하면 우도의 로그를 취하면 계산의 단순성, 수치적 안정성, 볼록 최적화 문제 및 데이터의 정보 내용에 대한 해석 가능한 측정이 제공됩니다. 따라서, 위의 질문에서 log 를 한 번 취했는지, 두 번 취했는지는 중요한 문제가 아닌 것이, 우리가 구하고자 하는 것은 최종 확률 분포가 어떻게 되는가 하는 것이기 때문입니다. 따라서 계산상의 안정성을 취하면서 최종 확률 분포가 바뀌는 것이 아니기 때문에 log 가 포함되던 포함되지 않던 결과에 영향을 미치지 않습니다.

좋은 질문 감사합니다.

import torch가 안되는 경우는 어떻게 하나요?

0

16

1

소리가 겹쳐서 들려요

0

20

2

20강에서 파인튜닝 때 사용한 데이터가 없어졌습니다. LoRA Trainer 매개변수도 라이브러리 업그레이드로 수정되었습니다.

0

20

1

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드 먼저? 구현하며 배우는 Transformer 먼저?

0

30

1

수업자료

0

23

2

전 강의와 전혀 이어지지가 않음

0

30

1

pytorch local 설치 옵션에 conda 가 없습니다.

0

38

3

pc에서는 괜찮은데 탭으로 들으니 화면확대시 화면이 까맙니다

0

22

1

강의 환경설정 질문

0

40

2

모든 자료 다운로드 누를때마다 똑같은 excel파일이 다운로드 받아짐. 노션 주소 공유되나요?

0

32

2

오토인코더+ Knn, SVC 로 해석하는경우

0

45

3

강의자료에 소스코드가 없는데요

0

49

3

강화학습저장 및 로드

0

57

1

Custom Dataset에서의 polygon 정보 관련

0

83

3

paperswithcode 서비스 종료 관련 문의

0

209

2

mini-batch gradient descent 시 backpropagation에 대하여

0

75

2

이미지가 출력되지 않습니다

0

209

2

IMDBDataset 파일 다운로드가 안되는데 어떻게 받을 수 있을까요?

0

292

1

the kernel appears to have died. it will restart automatically.

0

666

1

파이토치 device (gpu / cpu) 관련 질문드립니다.

0

711

1

5분10초 경, 강의자료에 대하여 질문드립니다.

0

323

1

update 공식 관련 질문 (3분31초 경)

0

309

1

종속변수와 독립변수

0

578

1

linspace(100, 200, 10)

0

354

1