brunch

You can make anything
by writing

C.S.Lewis

by gimmesilver Sep 30. 2022

통계 모델링과 기계 학습 모델링의 차이에 대한 단상

    페이스북에서 통계 모델링과 기계 학습의 차이에 대한 어떤 글을 읽고 이와 관련해서 쓴 글입니다. 종종 통계 모델과 기계 학습 모델의 가장 큰 차이는 모델에 대한 해석과 이해가 가능한지 여부에 있다는 글이나 주장을 보곤 합니다. 아마 대표적인 통계 모델링 방법인 선형 회귀와 역시 대표적인 기계 학습 기법인 딥 러닝을 직관적으로 비교했을 때 가장 눈에 띄는 차이라 그런 것 같습니다. 

    하지만 전반적인 특성들을 고려해 보면 모델에 대한 해석 가능 여부는 두 기법을 구분하는 좋은 기준이 아닙니다. 모든 통계 모델링 기법이 데이터를 이해 하기 위한 목적을 갖는다고 말하기도 어렵고, 기계학습이 인간의 이해를 목적으로 하는 통계 모델링 기법에 반기를 들어서 생겨난 기법이라고 보기도 힘들죠.


이와 관련해서 제가 생각하는 바는 다음과 같습니다. 


    통계 모형과 기계 학습 모형을 구분하는 기준은 모형을 인간이 이해하거나 해석할 수 있는지 여부나 얼마나 복잡한지가 아니라 모형을 구축할 때 데이터의 통계적 분포를 고려하는지 여부입니다.


이에 대해선 브레이먼 교수의 유명한 논문 Statistical Modeling: Two Cultures (http://www2.math.uu.se/~thulin/mm/breiman.pdf) 에 잘 나와 있습니다. 브레이먼은 이 논문에서 데이터 분석은 모형 구축 방식에 따라 크게 두 가지 방법으로 나뉜다고 설명합니다.


하나는 대상이 되는 데이터가 특정 통계적 분포를 갖는다고 가정하고 그에 맞는 모형을 구축하는 방법입니다. 이를 Data modeling 이라고 부르며 우리가 아는 전통적인 통계적 방법들이 여기에 해당합니다. 이를테면, 종속변수의 잔차가 분산이 일정한 정규분포이고 변수간에 독립이고 등등이면 OLS 를 이용한 고전적 선형 모형을 구축 하는데, 만약 잔차가 자기 상관이 있는 시계열 데이터면 AR 모형으로 가고 이분산 특성도 있으면 ARCH 모형으로 가고 ... 등등인 것이죠. 


또 하나는 데이터가 특정 통계 분포를 갖는다고 가정하지 않고 알고리즘을 이용해 데이터를 적합하는 어떤 함수를 찾아 모형을 구축하는 방법입니다. 이를 Algorithmic modeling 이라고 부르며 기계 학습 방법들이 여기에 해당합니다. 


이렇듯 어떤 데이터 분석 방법이 통계 기법이냐 기계학습 기법이냐를 판단할 때 구축된 모형을 인간이 이해할 수 있는지 여부는 직접적인 관련이 없습니다. 예를 들어 CART는 전형적인 기계 학습 기법입니다. 데이터에 대한 통계적 특성을 가정하지 않죠. 그러나 대개의 경우 생성된 트리 모형을 인간이 이해하기에는 크게 어렵지 않습니다. 반면 통계 기법인 선형 회귀 모형이라 하더라도 VARMAX 같은 다변량 시계열 모형으로 가면 모형 구조가 복잡해서 해석하기 쉽지 않습니다.  


한편, 브레이먼은 Data modeling 방식에서 사용하는 통계 검정은 모형의 매커니즘에 대한 검정이지 실제 자연의 매커니즘에 대한 검정이 아니라고 얘기합니다. 다시 말해 아무리 통계 검정을 정확하게 하더라도 그 결과로 나온 모형은 실제 자연 상태를 제대로 반영한다고 보장할 수 없습니다. 왜냐하면 애초에 통계 모형을 만들 때 분석가가 고려한 초기 가정이 잘못되면 중간 과정이 아무리 엄밀하더라도 틀린 결론이 나올 수 있기 때문이죠. 논문에서는 이와 관련한 몇 가지 사례를 소개합니다. 


그래서 브레이먼은 통계학자들이 데이터 모델링에만 치중하지 말고 기계 학습 모델링 기법을 적극 수용할 것을 제안합니다. 어차피 자연의 매커니즘을 모델링했다고 확신하기 어렵다면 이론적 엄밀성만 따질 것이 아니라 예측 정확도가 좋은 모델을 찾는 것이 더 낫다는 것이죠. 데이터 분석의 본질적인 목적은 정교한 이론을 이용해서 모형을 만드는 것이 아니라 필요한 정보를 최대한 정확히 제공하는 것이기 때문입니다.


아마 그 전에도 이런 논의와 논쟁이 많았겠지만 브레이먼의 이 논문은 데이터 모형을 만드는데 있어 통계 기법이 가진 한계와 그 대안으로 기계 학습 기법을 어떻게 받아들여야 할지에 대해 다룬 중요한 논의 중 하나일 것입니다. 


    브레이먼이 언급했듯이 자연의 복잡한 매커니즘을 통계 모형으로 구현하기는 어려울 뿐만 아니라 구축한 모형이 맞는지 검증하는 것도 거의 불가능합니다. 이런 상황에서 그럼 어차피 기존의 모델링 방법으로는 인간이 자연의 복잡한 매커니즘을 이해하거나 해석하기는 불가능하니 그런 방식을 버리자는 주장이 나옵니다.  


이런 움직임과 관련해 가장 유명한 글은 아마 2008년에 와이어드의 편집장인 크리스 앤더슨이 쓴 'The End of Theory (https://www.wired.com/2008/06/pb-theory/)' 일 것입니다. 상당히 도발적인 제목과 주장을 담고 있는 이 글의 요지는 '현실 세계를 정교하게 표현하기 위해선 매우 복잡한 케이스를 모두 처리할 수 있어야 하는데, 워낙 복잡도가 높기 때문에 기존의 과학적 방법으로는 모델링에 한계가 있다. 그런데 IT 기술의 발전으로 인해 데이터를 수집하고 처리하는 능력이 높아졌으니 이것을 활용해 현실 세계에 대한 상관 모형을 구축하는 방식으로 과학적 방법을 대체할 수 있다' 입니다. 


그가 자신의 주장에 대한 근거로 내세운 것은 구글의 번역 서비스입니다. 구글은 정교한 알고리즘을 사용하여 각 언어들이 갖는 복잡한 문법이나 치환 규칙을 모델링하는 대신, 자신들이 보유한 엄청난 수준의 데이터 처리 인프라와 방대한 번역 자료를 활용해 기존에 비해 훨씬 단순한 상관 규칙을 이용해서 문장이나 단어를 치환하는 언어 모형을 만들었습니다. 그럼에도 불구하고 구글의 번역 품질은 기존에 어떤 번역 시스템보다도 뛰어났죠. 당시 이런 단순 무식한 구글의 방식을 비판하는 사람들이 많았습니다. (딥러닝에 대해서 이걸 과연 지능이라고 부를 수 있냐고 비판하는 것과 비슷한 논지입니다.) 이와 관련해서 당시 구글의 연구 책임자였던 피터 노빅과 현대 언어학의 아버지라고 불리던 노엄 촘스키가 서로 논쟁을 벌여 화제가 되었죠. (http://web.cse.ohio-state.edu/.../cse.../norvig-chomsky.html)


피터 노빅은 'Unreasonable Effectiveness of Data (https://static.googleusercontent.com/.../archive/35179.pdf)' 라는 글을 통해 잘 샘플링된 데이터와 정교하게 설계된 파라미터를 이용하는 전통적인 모형 구축 방법 대신 방대한 데이터를 이용한 비지도 학습을 통해 비모수적(non-parametric) 모형을 구축하는 것이 더 나은 방식이라고 주장했습니다. (참고로 이 글의 제목은 물리학자인 유진 위그너가 1960년에 쓴 The unreasonable Effectiveness of Mathematics in Natural Sciences 에서 따온 것입니다.)


반면 노엄 촘스키는 구글의 방식이 제대로 된 언어 모형이 아니라며 비판했습니다. 하지만 모두가 알다시피 결과는 피터 노빅이 이끄는 구글의 승리였죠. 촘스키는 인간 언어가 갖고 있는 보편 문법을 모형으로 만들고자 평생을 바쳤지만 실패했습니다. 반면, 구글은 기존에 어떤 언어학자가 만든 것보다도 뛰어난 번역 서비스를 만들었습니다. 물론 촘스키는 자신의 생각이 틀렸다고 인정하지 않겠지만 적어도 이제 자연어 처리 분야에서 촘스키의 접근 방식을 이용하는 사람은 (제가 알기론) 없습니다. 


정교한 모형을 만드는데 노력을 쏟기보다는 대량의 데이터를 구축해서 이용하자는 이런 생각은 이후 소위 '빅 데이터'가 세상을 휩쓸면서 더욱 사람들 사이에 널리 퍼져 나갔습니다. 제 경험상 데이터 분석 분야에서 통계학자가 주도권을 컴퓨터 공학자들에게 빼앗기게 된 시발점은 이 때부터였습니다. 즉, 인간이 이해/해석의 영역을 침범당하게 된 것은 기계 학습이 아니라 구글과 하둡 때문이죠. (둘 다 컴퓨터 공학 분야이긴 하네요.)


    이런 역사적인 흐름을 고려한다면 실상 딥러닝은 기존의 모형 구축 방식을 뒤집은 패러다임이기 보다는 오히려 기존에 주류였던 과학적 사고 방식(정)과 극단적인 데이터 엔지니어링 방식(반) 사이의 대립 과정을 거치며 탄생한 결과(합)라고 생각할 수 있습니다. 


딥러닝과 다른 기계 학습 기법이 갖는 가장 큰 차이는 피처 엔지니어링에 있습니다. 딥러닝 이전에 전통적인 기계 학습 기법에서는 모형을 구축할 때 필요한 입력 변수들을 어떻게 가공할 것인지 판단하는 것이 온전히 사람의 몫이었습니다. 


가령, 딥러닝이 등장하기 전까지 기계 학습 분야를 선도하던 방법은 SVM 이었는데 SVM에서는 모형 학습에 사용할 변수를 선정하거나 어떤 커널 함수를 적용할지 등등을 일일이 정해야 했습니다. 랜덤 포레스트나 로지스틱 회귀 등등의 기계 학습 기법들 역시 마찬가지죠. 변수에 로그나 지수승을 씌울지 말지, 상호작용항을 넣을지 말지, 파생변수를 만든다면 어떻게 가공할지 등등을 선정하는 것은 분석가의 몫입니다. 그리고 데이터 분석을 해보면 이게 제일 어렵습니다. 변수만 적절하게 가공할 수 있으면 이후에 모형을 만드는 것은 간단한 작업입니다. 심지어 테이블 형태로 잘 가공된 데이터에서는 그래도 할만한 일인데 이미지나 자연어 같은 데이터에서는 학습에 효과적인 변수를 찾아서 가공하는 작업이 너무 모호하고 어렵습니다. 


때문에 이미지 인식은 기계 학습 분야에서 오랫동안 가장 어려운 문제 중 하나였습니다. 딥러닝이 가져온 가장 큰 혁신은 복잡한 피처 가공 작업의 상당 부분을 알고리즘화한 것입니다. 그리고 힌튼 교수의 연구팀은 이미지넷에서 압도적인 성능으로 우승하면서 이런 접근 방식이 옳다는 것을 입증했죠. 


하지만 딥러닝은 기존에 빅데이터 붐이 일던 당시의 극단적인 주장과 비교하면 한단계 나아간 방법입니다. 막대한 데이터와 엔지니어링 기술을 통해 기존 모델링 영역의 상당부분을 대체하긴 했지만 비모수적 기법에만 의존하지 않는 알고리즘 모델이기 때문입니다. (다만 워낙 모형 구조가 복잡하다보니 비모수 모형과 차이를 느끼기 힘들긴 합니다.)


그리고 다시 브레이먼의 논문으로 돌아가면, 데이터 분석의 핵심은 정보의 제공입니다. 필요한 정보가 꼭 모형에 대한 인간의 이해일 필요는 없습니다. 상황에 따라 모형이 내뱉는 예측 결과만 있어도 충분한 상황이 많기 때문이죠. 하지만 그렇다고 해서 모든 데이터 분석의 목적이 결과 예측인 것은 아닙니다. 때문에 기존의 통계 분석 기법은 아직까지 유효하겠습니다.

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