[ML] 선형 회귀와 로지스틱 회귀

하영(Emma)·2025년 9월 15일

Machine Learning

목록 보기
5/10
post-thumbnail

선형 회귀(Linear Regression)

우리가 어떤 현상에서 입력과 출력이 어떻게 연결되는지 알고 싶을 때가 많다.
예를 들어 유튜브 영상의 조회수가 늘면 수익이 얼마나 늘어나는지 궁금하다.
선형 회귀는 이 관계를 하나의 직선으로 설명하려는 방법이다. 식으로 쓰면 y = ax + b다.

  • a: 기울기(가중치, weight) → 조회수가 늘어날 때 수익이 얼마나 변하는지
  • b: 절편(바이어스, bias) → 조회수가 0일 때 발생하는 기본 수익

즉, 선형 회귀는 데이터를 가장 잘 설명하는 직선을 찾는 방법이다.
이때 “가장 잘”의 기준은 손실 함수(loss function)다. 예측값 ŷ와 실제값 y의 차이를 계산한다.

손실 함수

  • MAE (Mean Absolute Error): 오차의 절댓값 평균 → 이상치에 덜 민감하다.
  • MSE (Mean Squared Error): 오차의 제곱 평균 → 큰 오차에 더 큰 벌점을 준다.

손실을 최소화하는 a, b가 우리가 찾는 최적의 파라미터다.

왜 경사 하강법인가

파라미터가 두 개일 때는 눈으로 직선을 그려볼 수도 있다.
하지만 실제 문제는 파라미터가 수백만, 수십억 개다.
모두 바꿔보며 비교하는 것은 불가능하다.

그래서 경사 하강법(Gradient Descent)을 쓴다.
아이디어는 간단하다. 현재 위치에서 손실이 가장 빨리 줄어드는 방향(그라디언트의 반대 방향)으로 조금씩 이동하는 것인데, 이 과정을 반복하면 손실이 점점 줄어든다.


로지스틱 회귀(Logistic Regression)

로지스틱 회귀는 분류 문제에 사용하는 모델이다.
출력이 “예/아니오”, “스팸/정상”처럼 0과 1로 갈리는 문제에서 주로 쓴다.

선형 결합 z = w·x + b를 만든 뒤, 이를 시그모이드(sigmoid) 함수에 통과시켜 확률을 얻는다.
시그모이드 함수는 입력이 아무리 커도 0과 1 사이로 눌러준다.
그래서 “양성일 확률이 0.87이다”처럼 해석이 가능하다.

  • 확률 > 0.5 → 1(긍정 클래스)
  • 확률 ≤ 0.5 → 0(부정 클래스)

여기서 시그모이드 입력값 z로짓(logit)이라고 부른다.

손실과 학습

로지스틱 회귀는 이진 교차 엔트로피(Binary Cross Entropy)를 손실 함수로 쓴다.
예측이 정답과 다를수록, 특히 확신을 가지고 틀릴수록 손실이 크게 증가한다.

파라미터 학습 과정은 선형 회귀와 같다.
손실을 파라미터에 대해 편미분해 그라디언트를 구하고, 그 반대 방향으로 이동한다.
최적화 알고리즘으로는 Gradient Descent, SGD, Adam 등을 많이 쓴다.


두 모델의 차이 요약

  • 문제 성격

    • 선형 회귀: 연속값 예측 (매출, 온도, 수익 등)
    • 로지스틱 회귀: 이진 분류 (스팸 여부, 질병 유무 등)
  • 출력 해석

    • 선형 회귀: 실수값을 그대로 출력한다.
    • 로지스틱 회귀: 0~1 사이의 확률을 출력하고, 기준값으로 0/1을 결정한다.
  • 손실 함수

    • 선형 회귀: MSE(주로 사용), MAE(이상치 대응)
    • 로지스틱 회귀: Binary Cross Entropy
  • 학습 방식

    • 둘 다 손실을 줄이는 방향으로 파라미터를 업데이트한다.
    • 핵심은 그라디언트와 경사 하강법이다.
profile
Data Scientist, interested in CV, NLP

0개의 댓글