brunch

You can make anything
by writing

C.S.Lewis

by 김성범 Feb 26. 2017

모수 모델 vs. 비모수 모델

머신러닝 모델링 관점에서

본 글은 필자가 가지고 있는 현재까지의 지식을 바탕으로 작성했으나 관점에 따라 다른 의견이 많을 것으로 판단됩니다. 본 글의 대한 가감 없는 의견/비판을 기대해 봅니다. 여러분의 의견을 포함하여 계속 업데이트하도록 하겠습니다.     


종종 받는 질문 중에 하나가 모수와 비모수의 차이이다모수적 모델이 있고 비모수적 모델이 있는데  차이에 대해 알아보자.

 

확률함수 (ProbabilityFunction)

모수적 모델과 비모수적 모델의 차이를 알기 위해서는 통계학에서 쓰이는 기본적인 용어를 먼저 살펴볼 필요가 있다너무 자세히 들어가면 오히려 헷갈릴  있으므로 확률분포의 개념부터 시작해 보자확률분포는 샘플(관측치)들이 가질  있는 수치 값을 각각 0 1 사이의 확률로 표현할  이 확률 값들의 패턴이라고 보면 된다샘플이 가질  있는 값들을 확률로 표현하기 위해서는 대응 함수가 필요하며  함수를 확률 함수 (Probability Function)라고 부른다확률 함수의 인풋은 경우에 따라 이산형일  있고 연속형일 수도 있다이를 구분하기 위해 이산형 확률 함수는 확률 질량 함수 (Probability Mass Function, PMF)연속형 확률 함수는 확률 밀도 함수 (Probability Density Function, PDF) 구분해서 부른다.

 

참고 - 표본 공간에 있는 샘플을 각각 하나의 실수 값으로 변환해 주는 함수 식을 확률변수 (Random Variable)라고 한다.

 

확률분포 (ProbabilityDistribution)

가장 널리 알려진 확률분포는 정규분포다정규분포는 특정 확률 밀도 함수로 (Normal PDF)부터 얻어진 확률들의 패턴으로 정의되는데  패턴이 종모양으로 중간이 높고 양 가장자리로 갈수록 낮아지는 모양이다연속형 확률분포의 예는 정규분포를 포함하여 일양분포지수분포로그정규분포, t분포카이제곱분포, f분포감마분포베타분포 등이 있다이산형 확률분포는 베르누이분포이항분포포아송분포기하분포초기하분포음이항분포 등이 대표적이다여기서 중요한 개념인 모수 (parameter) 등장한다모든 확률분포는   이상의 모수를 가지고 있으며 이는 확률분포의 모양을 결정한다예를 들어 정규분포의 경우 평균과 분산, 2개의 모수가 있고 이들이 정규분포의 모양을 결정한다많은 경우 분포의 모수는 알려져 있지 않으며 모수를 추측해보는 과정을 통계학에서는 추정 (Estimation)이라고 한다.  

 

 

모수적 모델 vs. 비모수적 모델

모수와 비모수의 차이에 대해 설명할 준비가 되었다모수적 모델은 알려진 확률분포 (위에서 설명한) 기반으로 해당 모수를 추정하는 과정이 포함되어 있는 모델을 통칭한다가장 대표적인 방법론으로는 선형회귀모델이 있다이해하기 쉽게 단순선형회귀모델 (Simple Linear Regression Model) 예로 들어 보자단순선형회귀모델은 예측변수(X) 반응변수(Y) 사이의 관계를 직선으로 표현하는 방법이다반응변수를 예측변수를 이용해 예측 (혹은 설명)하는 것인데 실제로는  변수 사이의 랜덤성으로 인해 예측변수만을 가지고 반응변수를 100% 예측 (혹은 설명)하기는 어렵다 부족한 부분은 어쩔  없이 오차 (error)로 표현을 해야 한다선형회귀모델에서는  오차값들이 평균이 0이고 분산이 특정 상수값을 갖는 정규분포를 따른 다는 가정하에 수립된다이렇듯 선형회귀모델은 모델 구축  알려진 확률분포 (정규분포) 가정하기 때문에 모수적 방법론에 속한다.

 

머신러닝 관점에서 보았을 비모수적 모델의 예는  많다. 간단한 모델링 과정으로 인해 많이 활용되고 있는 K-최근접이웃 (K-Nearest Neighbors) 알고리즘이 대표적인 비모수적 모델이다예측하고자 하는 관측치가 있을  이와 가장 가까운 거리에 있는 K개의 관측치를 결정한  이들의 특성을 이용해 관심 관측치를 예측하는 과정을 거치는 알고리즘이다 과정에서 위에서 언급한 확률분포의 개념은 전혀 사용되지 않기 때문에 비모수적 모델이다여기서 주의해야  점이 있다. K-최근접이웃 알고리즘에서 사용자가 정해 주어야  요소가 있는데 최근접 이웃의 개수 (K) 거리 종류(매우 다양한 거리 측도 가 존재)놀랍게도 많은 책에서  요소를 그냥 모수 (파라미터)로 부르고 있는데 이는 잘못된 표현이다 표현에 대해 모두가 동의하는 용어는 아직 없지만 개인적으로는 “하이퍼모수 (Hyperparameter)”로 부르는 것이 가장 무난하다고 생각한다용어야 어쨌든 중요한 점은 “모수”와 “하이퍼모수”는 확실히 구별 해야 한다는 점이다최근 유행하고 있는 딥러닝 기본 모델인 인공신경망 (Artificial Neural Network) 모수와 하이퍼모수가 공존하는 모델이다인공신경망 모델은 기본적으로는 인풋은닉아웃풋 3개의  (Layer)로 구성되어 있으며  층에 있는 노드들이 서로 연결된 네트워크 그래프 형태로 표현된다인공신경망 모델은 일단 네트워크 구조가 결정되면   노드들을 연결하고 있는 연결선의 가중치를 결정하는 것이 핵심이다여기서 가중치는 “모수”이며 은닉층의 개수은닉층에 포함할 노드의 개수 등은 “하이퍼모수”이다. 모수인 가중치를 계산할 때  위에서 언급한 확률분포의 개념은 사용하지 않는다따라서 확률분포 사용 여부를 기준으로 본다면 인공신경망은 비모수적 모델이다

 

하지만 인공신경망을 모수적 모델로 보는 관점도 있다. 모수 계산 시 특정 확률분포를 가정하고 있지 않지만 어쨌든 모수 (가중치) 존재하기 때문이다따라서 확률분포의 사용 여부가 아닌 모수(하이퍼모수가 아님을 다시 강조)의 유무 기준으로 하면 인공신경망은 모수적 모델이다

 

세미모수적 모델 

일부에서는 모수는 존재하지만 확률분포 가정을 사용하지 않는 모델을 모수와 비모수의 중간으로 “세미모수적 (Semiparametric) 모델이라고 부른다. 인경신경망이 대표적인 예이다. 연결선의 가중치인 "모수"가 존재하나 이 모수는 확률분포와는 무관하게 얻어지는 것이기 때문이다. 모수와 비모수 구분을 하는 다양한 관점을 어느 정도 아우를  있다는 점에서 개인적으로 “세미모수적” 용어에 긍정적인 의견을 가지고 있다.  

 

요약

이런 관점에서 데이터마이닝/머신러닝에서 많이 사용하고 있는 모델을 분류해 보면 다음과 같다

- 모수적 모델회귀모델로지스틱회귀모델, 1/2 판별모델

- 비모수적 모델의사결정나무랜덤포레스트 (Random Forest), K-최근접이웃

- 세미모수적 모델인공신경망서포트벡터머신 (Support Vector Machine)  

 

요약해 보자모수적 모델과 비모수적 모델을 나누는 여러 관점이 있지만 다음  가지로 보면  무리가 없을 듯하다.  

(1) 모델 구축 알려진 확률분포를 사용하는지 여부에 의해 구분 (주로 통계학산업공학 전공자들이 주장)

(2) 확률분포 가정 여부와 상관없이 모델에 모수가 존재하는지 여부 (여기서 모수는 하이퍼모수와는 다름) (주로 컴퓨터과학/공학 전공자들이 주장

(3) 모수비모수 외에 세미모수를 등장시켜  두 관점에서 상충되는 모델을 포함 시킴 



본 글은 필자가 가지고 있는 현재까지의 지식을 바탕으로 작성했으나 관점에 따라 다른 의견이 많을 것으로 판단됩니다. 본 글의 대한 가감 없는 의견/비판을 기대해 봅니다. 여러분의 의견을 포함하여 계속 업데이트하도록 하겠습니다.


좀 더 자세한 개요를 알기 싶으신 분들은 다음 동영상을 참고하시면 되겠습니다.

https://www.youtube.com/watch?v=FGPfQgHNgOU&t=734s

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari