5. Machine Learning Basics

기계 학습의 기본에 대해 알아보자.

5.1. Learning Algorithms

여러 학습 알고리즘에 대해 알아보자.

5.1.1 The Task, T

기계 학습 작업은 예시를 다루는 작업이다. 예시는 정량적으로 측정 가능한 특성의 모임이다. 이를 다루는 작업들은 다음과 있다.

  • 분류.
  • 입력 일부가 유실된 분류.
  • 회귀.
  • 텍스트로의 변환.
  • 기계 번역.
  • 구조화된 출력.
  • 비정상 탐지.
  • 합성 및 샘플링.
  • 유실된 값 전가.
  • 노이즈 제거.
  • 밀도 추정 또는 확률질량함수 추정.

5.1.2 The Performance Measure, P

기계 학습 알고리즘의 성능을 측정하는 방법은 작업의 특성에 따라 다르다. 분류 작업 등에는 테스트 셋에 검증한 정확도오차율을 쓴다.

5.1.3. The Experience, E

기계 학습 알고리즘은 대개 비지도 또는 지도 학습으로 분류되나, 둘 다 전체 데이터 셋 또는 데이터 점들에 대한 경험을 필요로 한다. 비지도 학습 알고리즘은 많은 특성을 가진 데이터셋을 경험해 이 데이터셋의 구조를 학습한다. 지도 학습 알고리즘은 특성을 가진 데이터셋을 학습하는 것은 같으나 각각의 예가 라벨이나 타겟값과 연관되어 있고 이 관계를 학습한다. 지도 학습이라는 명칭은 기계 학습 알고리즘이 각각의 입력의 라벨을 지도받는다는 관점을 배경으로 한다. 어떤 기계 학습 알고리즘은 고정된 데이터셋을 경험하지 않기도 한다. 예를 들어 강화 학습 알고리즘은 환경과 상호작용해 학습계와 그 경험간 피드백 순환이 존재한다. 데이터셋을 표현하는 하나의 방법으로는 설계 행렬이 있다.

5.1.4. Example: Linear Regression

간단한 회귀 알고리즘으로 선형 회귀가 있다. 이는 매개변수, 또는 가중치 \mathbf{w}에 대해 입력 \mathbf{x}에 대한 출력을 \hat{\mathbf{y}} = \mathbf{w}^{T} \mathbf{x}으로 정의하는 것이다. 이의 성능 측정은 대개 평균제곱오차를 측정해서 한다. 이를 최소화하는 해 \mathbf{w} = (\mathbf{X}^{(train)T}\mathbf{X}^{(train)})^{-1} \mathbf{X}^{(train)T} \mathbf{y}^{(train)}정규방정식이라 한다. 선형 회귀편향 b가 주어진 \hat{\mathbf{y}} = \mathbf{w}^{T} \mathbf{x} + b 꼴의 모델을 가리키는 말로도 쓰인다.

5.2. Capacity, Overfitting and Underfitting

모델이 비관찰된 입력에 대해 잘 작동하는 능력을 일반화라 한다. 학습 집합에서 잰 오차 측정값을 학습 오차라 하는데, 우리는 테스트 집합에서 잰 일반화 오차(테스트 오차)를 최소화하는 것에도 관심이 있으므로 단순 학습 오차 최적화 문제로만 풀 수 없다. 우리가 관찰할 수 있는 건 학습 집합 뿐인데 테스트 집합에서의 성능은 어떻게 개선하나? 그래서 통계적 학습 이론이 필요하다.

학습 데이터와 테스트 데이터는 데이터 생성 과정에 의해 생성된다. 이 때 데이터 생성 분포독립적이고 동일하게 분포되어 있다는 가정, 즉 데이터 셋 내 각각 예가 다른 예에 대해 독립적이고 각각 예의 분포가 동일하게 되어 있다는 가정을 한다.

기계 학습에는 두 가지 난점이 있다: 학습 집합에서 오차율을 충분히 낮게 만들지 못하는 과소적합과 학습 집합과 테스트 집합간 오차율의 차가 지나치게 커지는 과적합. 가설공간을 잘 선택함으로써 모델의 용량을 조절해 이를 조정한다. 모델의 표현 용량을 조절하는 방법도 있다. 이 때 모델의 실제 유효 용량은 표현 용량보다 작아진다. 간단한 경험 법칙으론 오컴의 면도날이 있는데 여러 모델이 알려진 관측을 똑같이 잘 설명한다면 그 중 가장 단순한 것을 택해야 한다는 것이다. 모델의 용량을 측정하는 척도로는 바프닉-체르보넨키스 차원이 있다.

높은 용량 모델의 가장 극단적 경우를 알아보려면 비매개적 모델의 개념을 소개할 필요가 있다. 이의 실용적 예는 최근접 근방 회귀가 있다.

가장 이상적 모델은 데이터를 생성하는 확률분포를 아는 모델이다. 이 경우에도 분포에 노이즈가 있을 수 있기 떄문에 모델의 오차가 있을 수 있는데 이 경우의 오차를 베이즈 오차라 한다.

5.2.1. The No Free Lunch Theorem

기계 학습엔 공짜 점심은 없다는 정리가 존재하는데 모든 데이터 생성 분포에 대해 평균을 매겼다는 가정하에 모든 분류 알고리즘은 비관찰된 점을 분류할 때 같은 오류율을 보인다는 점이다. 즉, 다른 알고리즘보다 전역적으로 더 나은 기계 학습 알고리즘 같은 건 없다.

5.2.2. Regularization

모델을 정규화시키는 방법은 여러 가지가 있는데 그 중 하나는 가중치 감쇠로 이는 정규화자를 모델에 덧붙이는 정규화 방법의 일종이다.

5.3. Hyperparameters and Validation Sets

모델에는 초매개변수가 항상 존재한다. 일단 모델의 용량은 초매개변수이다. 이를 선택하기 위해 학습 집합이 관측하지 못하는 검증 집합을 둔다.

5.3.1. Cross-Validation

검증 집합을 이용해서는 교차 검증을 한다. 가장 흔한 방법은 데이터를 k분할해 교차 검증하는 것이다.

5.4. Estimators, Bias and Variance

통계학의 개념인 추정자, 편향, 분산을 알아보자.

5.4.1. Point Estimation

독립적이고 동일하게 분포된 데이터에 대한 점 추정자통계량은 데이터에 대한 함수이다.

5.4.2. Bias

추정자의 편향은 bias(\hat{\mathbf{\theta}}_{m}) = \mathbb{E}(\hat{\mathbf{\theta}}_{m}) - \mathbf{\theta}로 정의된다. 편향이 0인 추정자를 비편향이라 한다. \lim_{m \to \infty} bias(\hat{\mathbf{\theta}}_{m}) = \mathbf{0}이면 점근적 비편향이라 한다.

가우시안 분포의 표본분산은 편향된 추정자이다. \frac{m}{m-1}을 곱해 비편향 표본분산을 만든다.

5.4.3. Variance and Standard Error

추정자의 분산Var(\hat{\theta})이다. 추정자의 표준오차는 이의 제곱근이다.

5.4.3. Trading Off Bias and Variance to Minimize Mean Squared Error

분산과 편향간에는 트레이드오프가 존재한다. 대개는 교차검증을 통해 이를 조절한다. 또는, 평균제곱오차는 편향의 제곱과 분산을 더한 값이므로 이것이 일정함을 이용하는 방법도 있다.

5.4.5. Consistency

모든 \epsilon > 0에 대해 m \to \infty이면 P(|\hat{\theta}_{m} - \theta| > \epsilon | > \epsilon) \to 0이면 일관적 추정자라 하며 약한 일관성이라고도 한다. 강한 일관성은 거의 확실한 수렴을 말하는데 이는 p(\lim_{m \to \infty} \mathbf{x}_{m} = \mathbf{x}) = 1인 확률변수가 존재하는 것을 말한다.

5.5. Maximum Likelihood Estimation

관측된 데이터셋에 대한 가능도를 최대로 하는 추정자를 최대가능도추정이라 한다.

5.5.1. Conditional Log-Likelihood and Mean Squared Error

최대가능도추정자는 조건부확률분포로 쉽게 일반화될 수 있다.

5.5.2. Properties of Maximum Likelihood

최대가능도추정자의 이점은 표본의 수가 증가할수록 점근적으로 최선의 추정자가 된다는 것이다. 최대가능도추정자는 일관 추정자와 많은 특성을 공유하나 통계적 효율성은 다르다. 즉, 일관적인 추정자는 고정된 크기의 표본에 대해 더 작은 일반화오차를 가질 수 있다. 이는 대개 매개화된 경우에 대해 연구된다.

5.6. Bayesian Statistics

지금까지 다룬 것은 \mathbf{\theta}의 단일 값을 추정해 그를 기반으로 이후의 모든 예측을 수행하는 빈도학파적 통계학이었고 다른 방법은 예측을 할 때 가능한 모든 \mathbf{\theta}의 값을 활용하는 베이지안 통계학이다. 베이지안 통계학에서는 관측 전 \mathbf{\theta}에 대한 사전 지식을 표현하는 사전확률분포를 도입해 베이즈 법칙을 통해 이를 활용해 사후분포를 구한다.

5.6.1. Maximum A Posteriori (MAP) Estimation

사후확률분포를 최대로 하는 추정을 최대사후확률(MAP) 점추정이라 한다.

5.7. Supervised Learning Algorithms

여러 지도학습 알고리즘에 대해 알아보자.

5.7.1. Probabilistic Supervised Learning

확률적 지도학습의 예를 이진 변수에 적용한 것으로 로지스틱 회귀가 있다.

5.7.2. Support Vector Machines

지도학습 중 가장 영향력 있는 것으로 \mathbf{w}^{T} \mathbf{x} + b를 결정 경계로 삼는 보조 벡터 기계가 있다. 결정 경계를 선형 말고도 다른 것으로 하기 위해 커널을 쓰는 커널 트릭을 활용한다. 가장 널리 쓰이는 커널은 가우시안 커널방사기저함수(RBF) 커널의 일종이다. 가우시안 커널은 템플릿 매칭의 일종으로도 볼 수 있다. 커널 트릭을 쓰는 알고리즘은 커널 기계 또는 커널법이라 한다. 보조 벡터 기계의 단점은 결정 함수를 계산하는 비용이 학습 데이터의 크기에 선형이라는 것으로 이들 중 일부를 보조 벡터로 선택해 활용함으로써 이를 보완한다.

5.7.3. Other Simple Supervised Learning Algorithms

다른 간단한 지도학습 알고리즘으로는 k-최근접 근방 알고리즘, 결정 트리 등이 있다.

5.8. Unsupervised Learning Algorithms

비지도학습의 예를 알아보자.

5.8.1. Principal Component Analysis

유명한 비지도학습은 주성분 분석으로 차원수 감소를 통한 특성 추출 등에 쓰인다.

5.8.2. k-means Clustering

다른 예로는 k-평균 클러스터링이 있으며 학습 집합을 k개의 다른 클러스터로 나누어 각 점에 대해 평균이 가장 근접한 클러스터를 부여한 뒤 클러스터를 재설정하고 이를 반복한다.

5.9. Stochastic Gradient Descent

거의 대부분의 심층 학습은 추계적 경사 하강법(SGD)이라는 강력한 알고리즘에 의존한다. 이는 각 단계마다 경사를 구해 학습률을 곱해 매개변수를 업데이트하는 알고리즘이다. 이 때 각 단계에서 미니배치를 활용할 수도 있다.

5.10. Building a Machine Learning Algorithm

새로운 기계 학습 알고리즘을 만들어도 본질은 대동소이하다. 데이터 셋을 특정하고, 비용 함수를 특정하고, 최적화 과정을 통해 모델을 학습한다.

5.11. Challenges Motivating Deep Learning

심층 학습의 도전 과제들은 이런 것들이 있다.

5.11.1. The Curse of Dimensionality

많은 기계 학습은 데이터의 차원수가 커질 수록 극히 어려워진다. 이를 차원의 저주라 한다.

5.11.2. Local Constancy and Smoothness Regularization

암묵적인 사전분포 중 가장 널리 쓰이는 건 매끈한 사전분포 또는 국소 불변 사전분포로, 학습하는 함수가 작은 영역 내에서 크게 변하면 안 된다는 성질을 갖춰야 한다. 이러한 국소 불변성은 커널에도 적용될 수 있는데 이를 국소적 커널이라 한다.

5.11.3. Manifold Learning

기계 학습의 많은 아이디어는 연결된 영역인 다양체에 근거한다. 다양체 학습 알고리즘은 학습 대상의 실질적 공간을 실수공간 내 특정한 다양체로 제한시킴으로써 차원 수를 줄이는 효과가 있다. 이것이 근거로 삼는 관찰은 다양체 가설로서 이미지나 텍스트 문자열, 소리 등의 분포는 매우 집중된 형태라는 것이다.

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중