2

2 개 클래스의 경우 이진 교차 엔트로피는 범주 형 교차 엔트로피와 동일하다는 것을 알고 있습니다.한 열 벡터의 모든 구성 요소에 페널티를 적용하는 이진 교차 방향

또한 softmax가 무엇인지는 분명합니다.
따라서, 나는 범주 교차 엔트로피는 단지 1

을해야하지만 왜, 또는 내가 한 핫 벡터에 진 교차 엔트로피를 사용하지 않아야 수없는 하나 개의 구성 요소 (확률)을 처벌 볼 ? 요약

target class zero 0 -> [1 0] 
target class one 1 -> [0 1] 

:

Normal Case for 1-Label-Multiclass-Mutual-exclusivity-classification: 
################ 
pred   = [0.1 0.3 0.2 0.4] 
label (one hot) = [0 1 0 0] 
costfunction: categorical crossentropy 
          = sum(label * -log(pred)) //just consider the 1-label 
          = 0.523 
Why not that? 
################ 
pred   = [0.1 0.3 0.2 0.4] 
label (one hot) = [0 1 0 0] 
costfunction: binary crossentropy 
          = sum(- label * log(pred) - (1 - label) * log(1 - pred)) 
          = 1*-log(0.3)-log(1-0.1)-log(1-0.2)-log(1-0.4) 
          = 0.887 

나는 이진 교차 엔트로피의 제로는 대상 클래스이며, 다음과 같은 하나의 뜨거운 인코딩에 해당하는 것을 알 우리가 왜 계산합니까/예측 된 클래스에 대한 음의 로그 우도를 요약합니다. 우리는 다른 수업에 불이익을주지 않겠습니까?

한 핫 벡터에 이진 교차 엔트로피를 사용하는 경우. 예상되는 제로 라벨에 대한 확률도 역시 불이익을받을 것입니다.

답변

1

비슷한 질문에 my answer을 참조하십시오. 간단히 말해, 바이너리 크로스 엔트로피 공식은 원 핫 벡터에 대해 이해가되지 않습니다. 둘 이상의 클래스에 대해 softmax 교차 엔트로피를 적용하거나 작업에 따라 label에 (독립적 인) 확률 벡터를 사용할 수 있습니다.

왜 하나의 핫 벡터에서 바이너리 크로스 트로피를 사용할 수 없습니까? 당신이 계산 무엇

4 독립적 인 기능의 바이너리 교차 엔트로피 : 모델 추론이 첫번째 기능은 10 %의 확률로 켜져 있는지 예측

pred = [0.1 0.3 0.2 0.4] 
label = [0 1 0 0] 

, 두 번째 기능은 30 %로 설정되어 확률 등등. 대상 레이블은 다음과 같이 해석됩니다. 두 번째 레이블을 제외한 모든 기능이 해제되어 있습니다. [1, 1, 1, 1]도 완벽하게 유효한 라벨이기 때문에 1 핫 벡터가 아니며 pred=[0.5, 0.8, 0.7, 0.1]이 유효한 예측입니다. 즉 합계가 1과 같을 필요는 없습니다.

즉, 계산이 유효하지만 완전히 다른 문제 : 다중 레이블 비 배타적 이진 분류.

difference between softmax and sigmoid cross-entropy loss functions in tensorflow도 참조하십시오.