자료를 공개한 저자 오렐리앙 제롱과 강의자료를 지원한 한빛아카데미에게 진심어린 감사를 전합니다.
$n\ge 1$ 개의 특성을 사용하는 $i$번째 훈련 샘플에 대한 예측값
예제: 캘리포니아 주택 가격 예측 모델
$$\hat y^{(i)} = \theta_0 + \theta_1\, x_1^{(i)} + \cdots + \theta_{16}\, x_{16}^{(i)}$$
predict()
메서드를 가리킴.데이터 | 어레이 기호 | 어레이 모양(shape) |
---|---|---|
레이블, 예측값 | $\mathbf y$, $\hat{\mathbf y}$ | $(m, 1)$ |
가중치 | $\theta$ | $(n+1, 1)$ |
훈련 세트 | $\mathbf X$ | $(m, n+1)$ |
정규 방정식을 이용하여 비용함수를 최소화 하는 $\theta$를 아래와 같이 구할 수 있음:
$$ \hat \theta = (\mathbf{X}^T\, \mathbf{X})^{-1}\, \mathbf{X}^T\, \mathbf{y} $$행렬 연산과 역행렬 계산은 계산 복잡도가 $O(n^{2.4})$ 이상이고 항상 역행렬 계산이 가능한 것도 아님.
반면에, 특잇값 분해를 활용하여 얻어지는 무어-펜로즈(Moore-Penrose) 유사 역행렬 $\mathbf{X}^+$ 계산이 보다 효율적임. 계산 복잡도는 $O(n^2)$.
다변수 함수의 미분값.
(그레이디언트) 벡터는 방향과 크기에 대한 정보 제공
그레이디언트가 가리키는 방향의 반대 방향으로 움직여야 가장 빠르게 전역 최솟값에 접근
예제: 선형 회귀 MSE의 그레이디언트 벡터 $\nabla_\theta \textrm{MSE}(\theta)$
선형 회귀와 학습률
에포크와 허용오차
에포크 수는 크게 설정한 후 허용오차를 지정하여 학습 시간 제한 필요. 이유는 포물선의 최솟점에 가까워질 수록 그레이디언트 벡터의 크기가 0에 수렴하기 때문임.
허용오차와 에포크 수는 서로 반비례의 관계임. 즉, 오차를 1/10로 줄이려면 에포크 수를 10배 늘려야함.
단점
주의사항
장점
처음 20 단계 동안의 SGD 학습 내용: 모델이 수렴하지 못함을 확인할 수 있음.
SGDRegressor
¶경사 하강법 사용
사용되는 하이퍼파라미터
max_iter=1000
: 에포크 수 제한tol=1e-3
: 하나의 에포크가 지날 때마다 0.001보다 적게 손실이 줄어들 때까지 훈련.eta0=0.1
: 학습 스케줄 함수에 사용되는 매개 변수. 일종의 학습률.penalty=l2
: 규제 사용 여부 결정 (추후 설명)장점
단점
알고리즘 | 많은 샘플 수 | 외부 메모리 학습 | 많은 특성 수 | 하이퍼 파라미터 수 | 스케일 조정 | 사이킷런 지원 |
---|---|---|---|---|---|---|
정규방정식 | 빠름 | 지원 안됨 | 느림 | 0 | 불필요 | 지원 없음 |
SVD | 빠름 | 지원 안됨 | 느림 | 0 | 불필요 | LinearRegression |
배치 GD | 느림 | 지원 안됨 | 빠름 | 2 | 필요 | LogisticRegression |
SGD | 빠름 | 지원 | 빠름 | >= 2 | 필요 | SGDRegressor |
미니배치 GD | 빠름 | 지원 | 빠름 | >=2 | 필요 | 지원 없음 |
PolynomialFeatures
변환기¶degree=d
: 몇 차 다항식을 활용할지 지정하는 하이퍼파라미터
예제: 선형 모델, 2차 다항 회귀 모델, 300차 다항 회귀 모델 비교
다항 회귀 모델의 차수에 따라 훈련된 모델이 훈련 세트에 과소 또는 과대 적합할 수 있음.