티스토리 뷰

로지스틱 회귀에 대하여

로지스틱 회귀란?

로지스틱 회귀(Logistic Regression)는 주로 이진 분류(binary classification) 문제에 사용되는 통계적인 머신러닝 모델입니다. 이 모델은 선형 회귀를 기반으로 하지만, 출력을 로지스틱 함수에 통과시켜 확률 값을 생성하고, 이를 기반으로 예측을 수행합니다. 이를 통해 출력값을 0과 1 사이로 제한하면서 이진 분류를 수행할 수 있습니다. 로지스틱 회귀는 선형 회귀의 아이디어를 기반으로 하며, 주어진 입력 특성에 대해 선형 결합을 계산합니다. 로지스틱 회귀에서는 이 선형 결합을 확률로 변환하기 위해 로지스틱 함수(시그모이드 함수)를 사용합니다. 로지스틱 함수는 z를 0과 1 사이의 값으로 압축시키는 역할을 합니다. z가 양수면 1에 가까워지고, 음수면 0에 가까워집니다. 로지스틱 회귀는 주로 최대 우도 추정(Maximum  Likelihood Estimation)을 사용하여 모델을 학습합니다. 학습의 목표는 주어진 입력에 대해 모델이 정확한 확률을 출력하도록 하는 가중치와 편향을 찾는 것입니다. 일반적으로 로그 우도 함수의 음의 값을 최소화하는 방향으로 학습이 이루어집니다. 로지스틱 회귀의 비용 함수는 주로 교차 엔트로피 손실(Cross-Entropy Loss)을 사용합니다. 로지스틱 회귀는 과적합을 방지하기 위해 정규화 항을 추가할 수 있습니다. L1 정규화나 L2 정규화를 사용하여 가중치를 제한하고 모델의 복잡성을 조절합니다.

 

장점 및 한계

로지스틱 회귀는 간단한 구조를 가지고 있어 이해하기 쉽고, 설명하기 쉽습니다. 이로써 비전문가도 모델의 결과를 이해하고 해석할 수 있습니다. 또한 계산 비용이 선형 회귀와 비교하여 낮기 때문에 대용량 데이터셋에서도 효과적으로 작동합니다. 빠른 훈련과 예측이 가능합니다. 로지스틱 회귀는 시그모이드 함수를 사용하여 확률을 출력하므로, 각 클래스에 속할 확률을 제공하여 모델의 신뢰성을 확인할 수 있습니다. 그리고 Feature scaling이나 정규화와 같은 데이터 전처리가 상대적으로 적게 필요합니다. 이는 모델의 성능을 개선하는 데에 일조합니다. 반면, 로지스틱의 한계로 다음이 있습니다. 로지스틱 회귀는 선형 경계로 데이터를 분리하기 때문에 선형적으로 구분되지 않는 문제에는 적합하지 않을 수 있습니다. Feature가 많거나 다중 공선성이 있는 경우에는 성능이 떨어질 수 있습니다. 이에 대한 대응책으로 Feature Engineering이 필요할 수 있습니다. 이상치가 있는 경우 모델의 성능에 부정적인 영향을 미칠 수 있습니다. 이를 다루기 위해 이상치에 대한 처리나 다른 모델 선택이 필요할 수 있습니다. 선형 경계로 해결하기 어려운 비선형 문제에는 부적합할 수 있습니다. 이런 경우 다른 복잡한 모델을 고려해야 할 수 있습니다. 로지스틱 회귀는 많은 경우에 효과적이지만, 특히 데이터가 복잡하거나 비선형적인 경계가 필요한 경우에는 다른 모델을 고려하는 것이 좋다고 합니다.

 

소프트맥스 회귀와의 차이점

로지스틱 회귀와 다중 클래스 분류는 데이터 분석과 머신러닝에서 핵심적인 개념으로 간주됩니다. 다중 클래스 분류 문제에는 소프트맥스 회귀가 사용됩니다. 이는 세 개 이상의 클래스 중 하나를 선택하는 문제를 해결하기 위한 확률 모델로, 소프트맥스 함수를 통해 각 클래스에 대한 확률을 추정합니다. 소프트맥스 함수는 여러 클래스의 확률의 합이 항상 1이 되도록 만들어주어 다중 클래스 분류에 적합합니다. 반면 로지스틱 회귀는 주로 범주형 데이터를 다룰 때 활용되며, 이진 분류 문제에서 특히 효과적입니다. 입력 변수를 통해 출력 변수를 0과 1 사이의 확률 값으로 예측하며 이것이 가능하게 하는 것이 시그모이드 함수입니다. 시그모이드 함수는 출력 값을 항상 0과 1로 제한하여 확률을 모델링하는 데 유용합니다. 로지스틱 회귀는 주로 이진 분류 문제에 적용되며, 예를 들어 스팸 메일 여부 판단이나 의료 진단에서 양성과 음성 판정과 같은 작업에 활용됩니다. 모델의 출력이 특정 임계값 이상이면 양성, 이하이면 음성으로 분류됩니다. 로지스틱 회귀와 소프트맥스 회귀는 입력 변수와 출력 변수 간의 관계를 확률로 모델링하여 다양한 응용 분야에서 효과적으로 사용됩니다. 이러한 모델을 통해 데이터 분석 및 머신러닝에서 다양한 문제를 해결하고 가치 있는 정보를 추출하는 데 도움이 됩니다. 이해와 활용을 통해 이러한 모델은 데이터 분석의 세계에서 더 나은 결과를 이끌어내는 데 도움이 되는 강력한 도구로 자리 잡고 있습니다.