IT Data 분석

로지스틱 회귀와 크로스엔트로피 손실 함수 이해하기

totoro2030 2024. 9. 21. 17:22

요즘 딥러닝과 머신러닝을 하면서 선형회귀와 로지스틱 회귀에 관해 좀 더 깊이 이해하려고 노력하고 있어요. 이해하면서 작성한 내용을

가볍게 글로 정리해서 공유해보려 합니다. 물론 정리하면서 저 스스로도 도움이 되구요. 부족하지만 가볍게 읽어주세요. 

 

머신러닝에서 로지스틱 회귀(Logistic Regression)는 분류 문제를 해결하는 데 자주 사용됩니다. 로지스틱 회귀의 핵심은 이진 분류 문제를 풀기 위한 예측값을 제공하는 것입니다. 하지만 로지스틱 회귀 모델을 학습시키기 위해서는 '손실 함수'가 중요한 역할을 합니다. 그중에서도 크로스엔트로피(Cross-Entropy) 손실 함수는 로지스틱 회귀에서 가장 많이 사용되는 손실 함수 중 하나입니다. 이번 글에서는 로지스틱 회귀와 크로스엔트로피 손실 함수에 대해 쉽게 설명해 보겠습니다.

1. 로지스틱 회귀란 무엇인가?

먼저 로지스틱 회귀를 간단히 이해해 보겠습니다. 로지스틱 회귀는 데이터가 두 개의 클래스(예: 고양이 또는 개, 스팸 또는 정상 이메일 등) 중 어느 하나에 속할 확률을 예측하는 모델입니다. 로지스틱 회귀의 예측값은 0과 1 사이의 값으로 나타나며, 이는 특정 클래스에 속할 '확률'을 의미합니다.

로지스틱 회귀의 핵심은 시그모이드 함수입니다. 시그모이드 함수는 예측값을 0과 1 사이로 제한하는 역할을 하며, 이를 통해 모델은 예측을 확률 값으로 변환합니다. 이 확률 값을 바탕으로 데이터를 해당 클래스에 분류하게 됩니다.

2. 크로스엔트로피 손실 함수란?

로지스틱 회귀 모델이 예측한 확률이 얼마나 정확한지 평가하기 위해 사용하는 것이 바로 손실 함수입니다. 손실 함수는 예측값과 실제값 간의 차이를 계산하여 모델이 얼마나 틀렸는지를 수치로 나타냅니다. 크로스엔트로피 손실 함수는 이차이를 계산하는 방법 중 하나로, 특히 분류 문제에서 매우 유용합니다.

크로스엔트로피는 두 확률 분포 간의 차이를 계산하는 방식으로 작동합니다. 모델이 예측한 확률과 실제값 간의 차이를 비교해, 그 차이가 클수록 더 큰 손실 값을 계산합니다. 손실 값이 크다는 것은 모델이 예측을 크게 잘못했다는 것을 의미하며, 손실 값이 작을수록 모델이 예측을 잘했다는 의미입니다.

3. 크로스엔트로피 손실 함수의 공식

크로스엔트로피 손실 함수는 다음과 같은 수식으로 정의됩니다:

Cross Entropy loss function과 parameter

 

이 수식을 좀 더 쉽게 풀어보면, 모델이 예측한 값이 실제값과 얼마나 일치하는지를 확인하는 과정입니다. 예측이 정확할수록 손실 값은 작아지고, 예측이 틀릴수록 손실 값은 커집니다.

4. 크로스엔트로피 손실 함수의 직관적 이해

이제 이 수식을 좀 더 직관적으로 이해해 보겠습니다. 예를 들어, 고양이인지 개인지 구분하는 모델을 생각해 봅시다. 실제로 사진 속 동물이 고양이라고 할 때(실제값 y=1), 모델이 고양이라고 예측할 확률 p가 0.9라면 손실 값은 아주 작습니다. 이는 모델이 정확하게 예측했다는 의미죠.

반대로, 실제값이 고양이임에도 모델이 고양이일 확률을 0.1로 예측했다면, 손실 값은 매우 크게 나옵니다. 이는 모델이 잘못된 예측을 했다는 것을 나타냅니다. 크로스엔트로피는 모델이 틀릴수록 더 큰 패널티를 부여하여, 모델이 더 정확한 예측을 할 수 있도록 학습을 유도합니다.

5. 왜 크로스엔트로피를 사용할까?

크로스엔트로피 손실 함수는 로지스틱 회귀뿐만 아니라 다양한 머신러닝 모델에서 많이 사용됩니다. 그 이유는 다음과 같습니다:

  1. 효율적인 학습: 크로스엔트로피는 모델이 틀린 예측에 대해 더 큰 페널티를 부여하여, 모델이 빠르게 학습할 수 있도록 돕습니다. 이로 인해 모델은 더 빨리 수렴하고 더 정확한 예측을 하게 됩니다.
  2. 확률 기반: 크로스엔트로피 손실 함수는 확률 분포 간의 차이를 계산하는 방식이기 때문에, 확률 값에 기반한 예측을 다루는 로지스틱 회귀와 잘 맞습니다.
  3. 이진 분류에 적합: 로지스틱 회귀는 이진 분류 문제에서 주로 사용되는데, 크로스엔트로피 손실 함수는 이런 이진 분류 문제에서 아주 효과적으로 작동합니다.

6. 손실 함수와 모델 성능

손실 함수는 모델이 얼마나 잘 예측하고 있는지를 보여주는 중요한 척도입니다. 로지스틱 회귀 모델이 예측한 값이 실제 값과 얼마나 가까운지, 그리고 그 차이를 통해 모델이 얼마나 개선되어야 하는지를 판단할 수 있습니다. 크로스엔트로피 손실 함수는 이 과정을 정확하게 도와주며, 모델이 점점 더 나은 성능을 보일 수 있도록 유도합니다.

7. 결론

로지스틱 회귀와 크로스엔트로피 손실 함수는 머신러닝에서 아주 중요한 개념입니다. 로지스틱 회귀는 이진 분류 문제를 해결하는 데 매우 유용하며, 크로스엔트로피 손실 함수는 이 모델을 학습시키는 데 핵심적인 역할을 합니다. 이번 글을 통해 로지스틱 회귀와 크로스엔트로피 손실 함수가 어떻게 작동하는지, 그리고 왜 중요한지 쉽게 이해하셨길 바랍니다.

 

물론 이렇게 정리하고 지식을 공유하는 것 역시 저에게 큰 도움이 됩니다.

오늘은 비가 엄청 많이 오네요. 모두 빗길 조심하시고 행복한 주말 되시기 바랍니다. 바이 ~