작성
·
273
0
답변 2
0
0
안녕하십니까,
1. 질문이 cross entropy 계산을 의미하시는 건지요?
'이것은 제가 이해하기론 LOGIT을 하고 소프트맥스 적용후 확률값을으로 나온 값을 ONEHOT인코딩으로 하나만 1로 나머지 0으로 바꾼다고 이해하는 것이 맞는지요'
의 질문의도를 제가 잘 파악하지 못했습니다. cross entropy는 loss를 계산할 때 적용이 됩니다만.
cross entropy로 loss를 계산하는 방법에 대해서 여쭤보신걸로 간주하고 말씀드리면,
클래스가 3개 있는 멀티 분류의 경우 소프트 맥스 확률값으로 나온 값은 3개가 됩니다. [0.7, 0.2, 0.1] 된다고 가정하면(그렇다면 예측은 가장 큰 값인 0번째 index에 해당하므로 예측 값은 0 이 됩니다), 실제값은 [1, 0, 0](즉 실제값도 0번째 index가 1이므로 0이 됩니다) 이때 cross entropy loss는 실제값 0에 해당하는 0.2, 0.1은 제외하고 실제값 1에 해당하는(즉 0번째 index) 0.7을 log 변환하여 구합니다. -log(0.7)과 같이 구합니다.
2. 딥러닝 초창기에는 sparse categorical이 존재하지 않았습니다. 기본적으로 딥러닝은 원핫 인코딩을 권장합니다. 다만 사용자의 편리에 따라 sparse categorical을 지원하는 쪽으로 발전한것입니다.
감사합니다.