개념에서 수식으로
먼저 이해할 내용
입력과 출력의 관계를 모델로 정한다는 것은, 관측한 샘플을 이용해 새로운 입력에서도 쓸 수 있는 규칙을 찾는 일이다. 이 글은 연속값을 예측하는 회귀와 범주를 구별하는 분류를 나누고, 각각의 오차와 학습 목적을 설명한다.
기호를 먼저 읽기
- xₙ, yₙ
- 입력과 그에 대응하는 정답
- w, w₀
- 입력의 가중치와 기준값
- φ(x)
- 입력을 다른 표현으로 옮기는 기저 또는 특징
- λ
- 정규화 항의 비중을 정하는 계수
- σ(·), ŷ
- 확률을 만드는 함수와 예측값
- J, ℓ
- 학습에서 줄이려는 오차 또는 손실
이 글의 흐름
예측 대상과 모델을 정한 뒤 잔차·제곱오차를 만든다. 정규화로 계수의 크기까지 고려하고, 분류에서는 확률·교차엔트로피·우도의 관계로 확장한다.
주제와 표기
Linear Models
Universal Approximation
모델이 해결할 문제를 먼저 정한다
학습 샘플에는 입력과 목표 출력이 짝으로 들어 있다. 연속적인 값을 예측할지, 정해진 범주를 구별할지에 따라 모델의 출력 의미가 달라진다. 특징을 사람이 정할지 모델이 학습할지도 이 문제 설정과 연결된다.
Model = Approximation
Linear Models
Linear regression
Regularization
회귀와 이진 분류를 구별한다
회귀에서는 실수값을 예측하고, 이진 분류에서는 두 범주 중 하나에 해당할 가능성을 다룬다. 원문은 과적합을 줄이기 위한 정규화와 로지스틱 확률 모델을 함께 소개한다. 이후 수식에서 같은 w를 사용해도 출력이 실수인지 확률인지 먼저 확인한다.
Binary Classification
Logistic Regression
그림을 불러오지 못했습니다.
Linear models for regression
오차를 샘플별로 계산하고 모은다
직선 예측 w₁xₙ+w₀와 관측값 yₙ의 차이가 eₙ이다. 모든 샘플의 eₙ²를 더하면 양·음 오차가 서로 상쇄되지 않는 목적함수를 만들 수 있다. 계수로 미분하는 다음 식은 그 목적함수를 작게 만드는 방향을 찾기 위한 것이다.
Problem Setup
입력 표현과 계수를 분리한다
φⱼ(x)는 입력에서 계산하는 특징이고 wⱼ는 그 특징에 적용할 계수이다. 선형모델은 이 계수들의 가중합으로 출력을 만든다. 원문은 신경망과 커널 표현도 나란히 놓으므로, 어떤 값이 입력에서 계산되고 어떤 값이 학습되는지 비교하며 읽는다.
Basic Function
Linear models
Neural networks
Kernel regression
Least Squares Method
최소제곱을 벡터와 행렬로 정리한다
관측값 벡터와 예측값 벡터의 차이에 L₂ 노름 제곱을 적용한다. 잔차벡터를 전치하여 자신과 곱하면 각 잔차의 제곱합이 된다는 다음 식을 확인한다. 정상방정식으로 계수를 정리할 때에는 이 문서의 Φ 행·열 배치를 유지하고 역행렬 존재 조건을 확인한다.
norm of x = | x | _p = (∑_i | |^p)^1/p
수식을 불러오지 못했습니다.
Regularization
정확히 맞추는 것과 복잡도를 함께 고려한다
손실 항은 관측값을 잘 설명하는지 측정하고, 정규화 항은 모델의 복잡도에 비용을 부과한다. λ는 두 목적의 상대적인 비중이다. 따라서 λ를 모델이 직접 학습하는 가중치와 같은 역할로 보지 않는다.
Ridge Regression
Ridge는 계수의 제곱 크기를 함께 줄인다
제곱오차에 가중치의 L₂ 제곱 항을 더한 뒤 미분하면 λI가 포함된 선형관계가 나타난다. 제약식 표현의 B는 허용할 계수 크기와 관련된다. λ를 정하고 학습한 뒤 검증 오차를 비교하는 순서가, 계수를 구하는 계산과 설정값을 선택하는 계산의 차이를 보여준다.
Find λ
Illusstration
Logistic Regression
점수를 확률로 바꾸어 두 범주를 구별한다
wᵀx는 제한이 없는 점수이고, σ를 적용한 결과는 0과 1 사이의 확률로 읽는다. y가 0 또는 1일 때 조건부 평균과 y=1의 확률을 연결할 수 있다. σ의 분모가 1+e의 지수항으로 구성되는 것을 확인한다.
Logistic Regression
Error function
확률 예측의 오차를 로그로 측정한다
이진 교차엔트로피에는 정답이 1인 경우와 0인 경우에 해당하는 두 로그 항이 있다. 정답 범주의 확률을 낮게 주면 손실이 커지는 구조이다. 여러 범주로 확장하면 정답 지시값과 각 범주의 예측 확률을 곱한 로그 항을 모두 더한다.
Cross entropy error
ex
제시된 확률 예제를 직접 읽는다
예측이 0.7·0.2·0.1이고 정답이 첫 번째 범주라면, 정답 벡터의 0인 성분 때문에 나머지 항은 없어지고 −Log(0.7)이 남는다. 원문의 0.356675는 이 계산 결과이다. 중요한 점은 정답 범주의 확률이 손실에 어떻게 연결되는지이다.
Logistic Regression:MLE
확률의 곱을 로그의 합으로 바꾼다
각 샘플의 정답 확률을 곱하면 우도가 된다. 로그를 취하면 샘플별 합으로 바뀌어 학습 목적을 다루기 쉬워진다. 로그우도를 크게 만드는 것과 그 음수를 작게 만드는 것은 같은 방향의 목표이다.
Logistic Regression:IRLS
IRLS와 다중 범주 확장을 읽는다
IRLS 구간에서는 기울기뿐 아니라 헤시안으로 표현한 곡률도 사용해 계수의 갱신량을 구한다. 뒤의 Softmax는 여러 범주의 점수를 지수화한 뒤 그 합으로 나누어 확률을 만든다. 분모의 합 범위와 범주 첨자를 먼저 확인해야 정규화의 의미가 유지된다.
| Δw=- | ||
| gradient,∇J[w] |
수식을 불러오지 못했습니다.
Multiclass Extension: Softmax Regression
정리하면
회귀와 분류는 출력의 의미와 오차를 정의하는 방식이 다르다. 무엇을 예측하는지 먼저 정해야 같은 수식의 계수와 손실을 올바르게 읽을 수 있다.