상세 컨텐츠

본문 제목

Regression(2)

머신러닝

by 후추리 2025. 4. 18. 21:55

본문

1. Linear Models

- 입력 변수들을 선형 조합으로 결합한 신호를 만듬. s = w^Tx

- 선형 회귀는 이 신호 자체를 출력값 y로 사용. 실제 값을 근사하는 모델

- 선형 분류는 신호를 0 기준으로 임계값 처리하여 s>=0이면 1, s<0이면 0으로 분류

- 예를들어 심장마비 발생 여부를 예측하고자 할 때, 입력 데이터로 혈압, 나이, 체중 등이 있음

- 단순한 이진 분류는 현실적으로 불가능. 발생한다/안 한다는 정확하게 예측할 수 없음

- 따라서 출력 y 0에서 1 사이의 연속적인 값으로 설정하는데 이런 모델을 로지스틱 회귀라고 함

 

 

2. Logistic Regression

- 이진 분류 문제에 사용되지만, 0~1 사이 확률 형태의 출력값을 제공

- 정확히 단정 지을 수 없는 문제에 대해 가능성을 예측할 때 적절한 모델

- Soft labels : 0.17, 0.82 같은 확률값

- 불확실성을 표현

- h(x) = θ(w^Tx)로 나타낼 수 있으며, θ를 로지스틱 함수라고 함

로지스틱/시그모이드 함수

- 입력값 s 를 받아 출력값을 (0, 1) 사이로 압축해주는 역할

- 또 다른 시그모이드 함수로는 tanh(s) 함수가 있고 값의 범위는 -1~1

- 해당 범위에 *0.5 + 0.5 하면 0~1로 스케일 가능

 

 

3. Logistic Regression의 확률적 해석

- 클래스 0의 확률

- 클래스 1의 확률

 

 

4. Learning

- 입력 x는 d차원의 특성 벡터

- 모델 파라미터 w는 로지스틱 회귀에서 학습해야하는 가중치

- 주어진 데이터로부터 최적의 파라미터 w를 학습하는 것이 목적

1) MLE 방식으로 학습 수행

- t ∈ {0,1}, 즉 t가 정답 레이블이, 각 학습 데이터의 조건부 확률 분포는 다음과 같음

- 학습 데이터가 i.i.d라고 가정하면, 전체 likelihood는 곱해서 표현할 수 있음

- 이진 레이블 t^(i) ∈ {0,1}을 다음처럼 확률로 표현

 

- 학습은 w를 최적화하여 likelihood를 최대화하는 과정으로 정의

- 계산이 어렵기 때문에 log를 취해 log-likelihood로 변환(로그를 취하면 곱셈이 덧셈으로 바뀜)

 

2) Loss Function 도출

- 우리는 최대화 문제를 최소화 문제로 바꿔서 손실 함수로 사용해야 함

 

-  손실함수를 위와 같이 정의하고 시그모이드 함수를 각각의 확률에 대입해서 정리하면 

 

- 손실함수 를 최소화하는 w를 찾는 것이 목적이므로 경사하강법 사용

 

3) 경사하강법 

- 매 iteration마다 현재 위치에서 손실함수의 기울기 방향으로 w를 업데이트

- 는 학습률(step size), 은 현재 반복 횟수를 의미하며 기울기 방향은 손실함수가 가장 빠르게 줄어드는 방향임

- 위에서 정의한 손실함수를 각 wj에 대해 편미분하여 정리하면,

- 이 업데이트 식은 예측값과 실제값의 차이 (ty)를 기반으로 각 weight를 조금씩 수정하는 방식

 

'머신러닝' 카테고리의 다른 글

Regularization  (0) 2025.04.19
Generalization  (0) 2025.04.19
Regression  (0) 2025.04.18
Classification(3)  (0) 2025.04.16
Classification(2)  (0) 2025.04.15

관련글 더보기