Search

Statistical Learning [1] - 통계적 모형에 대한 개념

Properties
Lecture
Machine Learning
Reference
ISLR, ELS
Author
Kipoong Kim
Date
2021/02/25
Link
Empty
Created
3/12/2021, 1:06:00 PM
Tags
Empty

Title: Data Mining: From Concepts To Modern Applications : [1] Concepts of Statistical Model

기본적인 데이터 구조

3V를 만족하는 데이터를 빅데이터라고 일컫음. > 그러나 최근에는 데이터가 가치있고 타당한지 등을 추가함에 따라 5V, 7V 등으로 부르기도 함.
우리가 일반적으로 많이 하는 고전적인 회귀모형들은 샘플사이즈가 변수개수보다 많아야 함. > 좀더 직관적으로, 우리가 가지고 있는 정보의 양 (nn)보다 많은 양의 모수 pp개를 추정하기 때문임. > 그러한 경우를 특별하게 "small nn, large pp" probelm 이라고 부름.

Supervised vs Unsupervised

우리가 해결하고자 하는 문제는 yy 유무에 따라 supervised and unsupervised learning으로 분류됨
Supervised data는 yy의 타입에 따라 classification 또는 regression 문제를 해결하는 데에 사용됨.
Unsupervised data는 XX 데이터의 특징에 따라 표본을 분류하는 clustering (군집)에 주로 사용됨.

Postulation of f(X1,,Xp)f( \boldsymbol{X}_1, \cdots, \boldsymbol{X}_p ) in supervised data

Supervised data에서는 X\boldsymbol{X}y\boldsymbol{y} 간 관계를 규명하기 위한 함수 ff를 찾는 것을 목표로함. > 이때, 함수 ff는 (1) X\boldsymbol{X}y\boldsymbol{y} 간 관계가 수학적으로 (거의) 완벽하게 규명이 된 경우인 deterministic model과 (2) 매우 복잡한 관계 또는 전체 모집단에 대한 정보 부족으로 인해 X\boldsymbol{X}를 통해 y\boldsymbol{y}를 정확하게 예측할 수 없는 경우 사용되는 statistical model로 나뉨.
우리의 목표는 statistical model ff를 찾는 것임. > 이 때, ff는 어떤 선형적인 함수일 수도 있고, 어떤 형태인지 확인이 어려운 black box 모형일 수 도 있음 (대표적으로 뉴럴네트워크).

ff를 찾는 이유

1.
예측 : X\boldsymbol{X}를 통해 y\boldsymbol{y}를 예측하는 것
2. 추론 : X\boldsymbol{X}y\boldsymbol{y} 간 관계를 확인하고 이를 통해 의사결정을 내리거나 관련 정보를 얻고자 함. > 대표적으로, yX\boldsymbol{y} \sim \boldsymbol{X} 에 대한 모형을 구축하고, y\boldsymbol{y} (불량률)에 영향을 주는 원인이 되는 X\boldsymbol{X} 변수를 찾아서 불량률을 낮추고자 하는 경우.

Trade-off between prediction and inference

(1) 예측을 잘하기 위해서는 모형이 복잡해질 수 밖에 없고 (비선형적 관계를 설명하기 위해) (2) 추론을 위해서는 인간이 (직관적으로) 이해할 수 있을 만큼 모형이 단순해야함.

Model Assessment

우리는 현재 (1) prediction 또는 (2) Inference의 사용자 목적에 맞는 ff를 추정하는 것을 목표로 함.
그렇다면 ff를 추정했을 때, 과연 올바른 ff를 얻은 것인지에 대한 평가를 진행해야함. >> 모형평가
모형평가 방법은 반응변수 y\boldsymbol{y} 타입에 따른 regression과 classification problem에 따라 나뉘게 됨. 대표적으로 회귀문제에서는 MSE (예측치 yiy_i와 예측치 f^(xi)\hat{f}(\boldsymbol{x}_i) 간 차이의 제곱 평균)와 분류문제에서는 Accuracy (yiy_i의 클래스를 몇 퍼센트 맞추었는지)가 있음.
이외에도 다양한 모형평가 척도가 존재함. 모든 상황에서 항상 좋은 평가지표는 존재하지 않으며, 해결하고자 하는 문제의 종류에 따라 적합한 평가척도를 사용해야함.

예시

(불균형 자료) 정상세포와 종양세포를 분류하는 문제
아무런 모형 없이 모든 관측치를 정상으로 분류했다고 가정하자. 이 경우 accuracy는 90%로 매우 높은 것처럼 보이지만, 실제로는 종양세포를 전혀 분류하지 못하는 형편없는 모형이기 때문에, 본 문제에서 모형 평가 척도로서 accuracy를 사용하는 것은 적절하지 않다.
이 경우에는 종양세포를 얼마나 잘 분류하는지에 대한 True Positive Rate = { 올바르게 종양으로 분류한 개수 / (전체 종양 관측치 개수) }, True Discovery Rate = { 올바르게 종양으로 분류한 개수 / (전체 종양으로 분류한 개수) }, 또는 F1 score (TPR과 TDR의 조화평균) 등의 평가 기준을 사용하는 것이 바람직할 것이다.

Overfitting problem in regression problem

모형을 평가하면서 발생할 수 있는 문제 중 하나는 바로 overfitting (과적합)일 것이다.
지난 슬라이드에서 예측과 추론 간 trade-off를 설명했을 것이다. Overfitting은 현재 데이터에 대한 완벽한 예측을 위해 매우 복잡한 모형을 세울 때 발생하는 문제이다. > 현재 가지고 있는 데이터에서 모형을 세우고 똑같은 데이터를 사용하여 모형을 평가하는 것은 과적합을 일으킨다. >> 그렇다면 모형 적합에 사용하는 데이터와 모형을 평가하는 데이터를 서로 다르게 분리하면 될 것이다.

Overfitting problem in regression problem

이진분류 문제에서도 마찬가지로 overfitting problem을 유의해야한다.

Data Splitting

Overfitting problem을 막기 위해 모형 적합을 위한 데이터와 모형 평가를 위한 데이터를 분리하기 위해 다음과 같이 데이터를 세 가지로 나누는 작업을 실시함. (1) Training set : 모형 적합을 위함 (2) Validation set : 여러가지 모형에 대한 평가가 이루어짐 (3) Test set : Validation set에서의 점수가 가장 높은 모형을 사용하여 최종 score를 계산함

K-Fold Cross-validation

하나의 Validation set에 대하여 모형을 평가하는 것보다 validation set 여러개에 대하여 평가하는 것이 안정적이므로 이를 위해 데이터를 K개로 쪼개고 모형을 평가하기 위한 K-Fold Cross-Validation.
Process: (1) 데이터를 K개로 나눔. e.g. 5개 (2) 첫번째 데이터셋을 Validation, 나머지를 Training set으로 하여 모형 적합 및 평가 실시. (3) 위 과정을 모든 데이터셋이 Validation set으로 설정될 때까지 반복함 (4) K개의 모형 평가 지표를 평균을 내며 최종적인 CV error를 계산함.

Bias, Variance, and Model Complexity

Training set에 대하여 적합된 모형을 (Blue) Training set에 대하여 평가한 경우 (Red) Test set에 대하여 평가한 경우.
Training Error는 모형이 복잡해질수록 (그래프에서 우측으로 갈수록) 예측오차는 계속해서 감소함. 반면, Test Error는 모형이 복잡해질수록 예측 오차가 감소하다가 오히려 증가하는 overfitting 문제가 발생. >> 따라서, overfitting problem을 막기 위해 Cross-Validation Error을 계산하는 것이 바람직함.
Follow me on Facebook and Github. Thank you
TOP