오늘은 BCE와 CE의 차이에 대해서 알아봤다.
BCE는 이진 분류 문제에서 주로 사용되는 손실 함수.
여기서 yi는 실제 라벨, pi는 예측 확률을 나타낸다.
BCE는 시그모이드(Sigmoid) 함수와 함께 사용되며, 출력값을 0과 1 사이의 확률로 변환한다.
CE는 다중 클래스 분류 문제에서 사용되는 손실 함수
CE는 소프트맥스(Softmax) 함수와 함께 사용되며, 여러 클래스에 대한 확률 분포를 계산한다.
SASRec 모델은 기본적으로 Binary Cross Entropy (BCE) Loss를 사용한다.
모델은 각 시점에서 다음 아이템을 예측할 때, 실제 아이템(positive sample)과 랜덤하게 선택된 아이템(negative sample)을 구분하는 방식으로 학습하기 때문이다.
최근 연구에서는 CE Loss를 사용하는 방식도 제안되었으며, RecBole과 같은 라이브러리에서는 BCE('BPR')와 CE 두 가지 옵션을 모두 제공한다. 특히 CE Loss를 사용할 경우 negative sampling이 필요하지 않다는 장점이 있다.