https://youtu.be/Ym3IM9y4U5U
동영상을 보다시피, 요즘은 머신러닝이 과학 상식 정도로 발전했습니다. 물론 일반에는 어렵게 느껴지죠. 사실 머신러닝이 일반에 알려지기 힘든 가장 핵심 이유는 그걸 만드는 사람 조차 자신이 뭘 만들고 있는지 모르기 때문입니다. 현대 머신러닝은 학문적 배경 이론이 없습니다. 그냥 만드니깐 되던데? 수준입니다. 이리저리 짜깁기식으로 만들어보다가 성과가 나오면 논문을 써서 학회에 게재합니다.
학문적 배경이 없으므로 일상의 상식과도 잘 연결되지 않습니다. 우리는 워낙에 익숙해서 잘 못 느끼지만 원자론과 속성의 개념은 태어날 때부터 학습된 것이며, 그러므로 이후의 모든 새로운 학문은 원자론과 속성을 바탕하여 건설되고 설명됩니다. 가령 어떤 이론이 좀 헷갈린다 싶으면 최종보스인 원자론을 들고 설명하고 빠져나갑니다.
문제는 현대의 머신러닝이 혁명적으로 발전한 이유가 원자론과 속성을 사용하지 않기 때문이라는 겁니다. 그러므로 과학자는 그것을 설명할 수 없다는 딜레마가 발생합니다. 그리고 이러한 인지적 오류는 머신러닝을 잘못 분류하고 발전시키는 것으로 나타납니다. 이에 대한 이론은 구조론이 제시합니다.
#
학계에서 일반적으로 머신러닝은 1. 지도학습 2. 비지도학습 3. 강화학습으로 분류됩니다. 머신러닝이 3가지로 나뉘어 있지만, 머신러닝의 본질은 "분류"입니다. 학습의 본질이 분류이기 때문입니다. 당신이 무언가를 안다고 말하려면 먼저 그것을 분류할 수 있어야 합니다. 분류는 그것의 족보를 말하고 그것의 내부를 말하는 것입니다.
* 이름 = 라벨(레이블) = 정답 = 속성이 아니라 합의
1. 지도학습은 컴퓨터에 사진이나 텍스트 등의 정보를 보여주고 그것의 이름을 알아맞추는 게임입니다. 정보-이름"의 쌍이 주어지기 때문에 "지도(supervised)"라는 이름이 붙습니다. 이때 중요한 과정은 정보에서 이름분류에 사용되는 피쳐, 즉 중간 기준을 추출하는 것이 됩니다. 가령 여러 남자들을 보고 "훈훈한 남자"라는 분류를 하고자 탄탄한 몸매, 지성, 학력 등의 중간 기준을 판단하는 거죠. 일반적으로 학습은 트레이닝과 테스트로 이루어집니다.
1) 트레이닝(학습)
트레이닝 시에는 이름이 적힌 사진(정보) 만을 보여주고 피쳐를 추출(학습)하도록 합니다. 이때 핵심은 하나의 이름이 아니라 다수의 이름 중에서 하나의 이름을 알아맞추는 게임을 한다는 것입니다. 가령 그냥 개를 맞추는 게 아니라, 개가 아닌 고양이를 맞추는 거죠. 이런 개념은 특별한 게 아니고 인간이라면 누구나 하는 것입니다. 다만 잘 느끼지 못할뿐.
2) 테스팅(실전)
학습이 끝난 컴퓨터는 이름이 빠진 사진(정보)을 보고 그것의 이름을 맞춥니다. 주어진 정보에서 피쳐를 찾아보고 그것을 이름으로 분류하는 거죠. 최근에는 신용카드, 명함 인식이나 얼굴, 지문 인식 등에 주로 사용되고 있습니다. 텍스트에서도 자주 사용되는데, 검색엔진이 대표적입니다. 구글 검색창에서 오타가 나더라도 보정해주는 걸 본 적이 있을 겁니다. 이 또한 지도학습의 하나입니다.
2. 강화학습은 알파고를 떠올리면 됩니다. 강화학습이 "강화(reinforcement)"인 이유는 "액션-보상" 쌍에서 보상을 강화하는 액션을 선택한다는 개념을 사용하기 때문입니다. 강화학습이라고 따로 분류했지만 이것 또한 지도학습의 하나입니다. 일반적으로 "보상"을 만족하는 중간 방법(액션)을 찾는 것을 강화학습이라고 하는데, 액션은 지도학습의 피쳐와 같은 맥락으로 이해할 수 있습니다.
다만 지도학습은 정적 피쳐를 주어진 사진(정보)에서 찾는데 반해, 강화학습은 다이내믹한 게임을 바탕하므로 상대와 나와의 연속적인 변화에서 피쳐를 찾습니다.(여기서 다이내믹은 학문적인 용어입니다. 분석의 대상이 시간적으로 변화한다는 의미를 가집니다.)
3. 제가 비지도학습에 대하여 진지하게 얘기하는 이유는 2019년부터 학계에 비지도학습의 바람이 불고 있기 때문입니다. 지도학습은 상술한 것처럼 "사진-이름"의 데이터가 어마무시하게 필요합니다. 사진(일군의 정보)에 이름을 붙여주는 노가다가 만만치 않기 때문입니다.
요즘은 이걸로 일자리를 창출하는 회사도 등장하고 있습니다. 사실 당신이 구글에 정보제공 동의를 할 때, 이미 당신의 데이터도 제공되고 있습니다. 그래서 데이터가 힘이라고들 하죠. 그래서 과학자들이 고민한 게 비지도 학습입니다. 얘는 이름이 필요없다는데? > 그러면 노가다 안 해도 되겠네? >> 그럴 리가 없죠.
많은 사람들이 강화학습을 비지도학습의 일종으로 생각하는 경우가 있는데, 그건 뭘 몰라서 하는 소리이고, 강화학습은 정답이 없으므로 비지도처럼 보이지만, "보상"이 "정답"입니다. 보상에 적합한 액션을 찾는 것이 강화학습이라면, 정답에 적합한 피쳐를 찾는 것이 지도학습입니다.
그러면 비지도학습은 뭘까? 일단 학습이 뭔지부터 정의해야 합니다. 일반적으로 학습은 원인과 결과를 과정으로 연결할 때, 그 과정을 변수로 놓고 그것을 찾는 것을 말합니다. 1 + x = 2 라면 x를 찾아보자는 겁니다. 학습은 원인과 결과를 잇는 중간 과정을 추출하는 것입니다. 가령 공을 잘 던지려면 어떻게 해야한다를 학습하는 거죠.
이러한 정의를 바탕으로 보자면 지도학습과 강화학습은 특별한 분류라기 보다는 오히려 학습의 하위 분류가 됩니다. 다만 지도학습은 홀로 하는 것이고, 강화학습은 상대가 있다는 점이 차이가 나죠. 하지만 지도학습도 홀로 하는 것은 아닙니다. 엄밀하게 말하면 입력되는 사진(정보)이 상대의 포지션에 섭니다. 사실 강화학습에서도 1인 게임과 2인 게임 등을 분류하는데, 학습효율을 위한 것이고, 본질은 2인 게임 하나뿐입니다.
문제는 비지도학습입니다. 비지도 학습은 사실 학습의 정의를 벗어난 것입니다. 간단히 말하자면 지도학습이나 강화학습과 달리, 정답없이 학습하겠다는 것인데, 이 아이디어의 바탕은 "원자적 속성"입니다. 보통 클러스터링(자발적 모임)의 개념을 사용하죠. 가령 새떼가 모여있는 것을 보고 그것을 새라고 하는 것과 비슷합니다.
원래 비지도학습은 데이터를 좌표 위에 찍어두면 비슷한 분류의 데이터는 스스로 군집을 이룬다(self organizing)는 아이디어에서 출발한 것입니다. 반면 지도학습은 왼쪽의 그림과 데이터를 다루는 방식은 비슷하지만, 군집을 이루는데 포커스를 맞추지 않고, 이름(분류)의 칼을 들고 데이터를 직접 재단합니다. 사실 이름(정답)이란 사회적으로 합의된 것을 말합니다. 나혼자 정한 이름은 나에게만 의미가 있고 사회적으로는 무의미하다는 거죠.
가령 하늘에 떠있는 구름의 개수는 몇 개이지? 라는 질문을 해봅시다. 사실 그것은 셀 수 없는 문제입니다. 당신은 무심결에 한 덩어리가 있다고 말할 수 있겠지만, 그것은 니 생각일 뿐입니다. 사진에서 구름의 개수는 기준을 정하기 나름입니다. 어디까지가 구름이지?라는 질문도 마찬가지입니다. 어렸을 때 잡지에서 연예인 사진을 오리는 것을 해보신 분이라면, 이게 어렵다는 걸 잘 압니다. 특히 머리카락 부분이 자르기가 만만치 않습니다.
결국 해결할 수 없는 문제를 가지고 고민하는 것이 비지도학습이라는 겁니다. 위의 사진의 경우 대개는 구름 한 덩어리라고 하는데, 그것은 자연의 실제가 한 덩어리인게 아니라, 사람들이 은연중에 저정도면 한 덩어리라고 합의해서 한 덩어리인 겁니다.
그런데 여기서 과학자들이 미쳐날뛰기 시작합니다. 모양으로 나눌 수 없다면, 색으로 나눠보자는 제안을 하는 거죠. 그럼 색으로는 나눌 수 있을까? 역시 불가능합니다. 무지개의 색이 7가지라는 것을 받아들이는 것은 유딩뿐입니다. 초딩만 되도 그거 아니란 걸 잘 알고 있습니다.
사실 이쯤 되면 비지도학습이 개념없다는 말을 할 수 있겠지만, 그럼에도 불구하고 일부 과학자들은 꿋꿋하게 이 개념을 밀어부칩니다. 우리는 대상을 분류하려면 기준이 있어야 한다는 것을 알고 있지만 자신들은 기준없이도 분류했다고 뻥을 칩니다. 분명히 그들은 기준없이 분류한 것 같습니다.
그러면 그 기준은 어디에 있을까요? 그들은 우리가 은연중에 "당연하다고 생각하는 것"으로 그 기준을 숨깁니다. 하지만 거기까지. 이거 실제로 잘 작동하지 않습니다. 수많은 데이터과학자들이 비지도학습에 환멸을 느낀다고. 잘 안 되거든요.
사실 비지도학습은 통계학의 주된 이슈이기도 합니다. 정규분포와 유의수준이 비지도학습과 밀접한 관련이 있습니다. 데이터의 한 덩어리를 판단하고자 정규분포와 유의수준을 사용하는 거죠. 그래서 점점 통계학은 비과학이 되어가고 있습니다. 특히 유의수준이 문제인데, 일군의 데이터를 한 덩어리로 인정하는 기준(유의수준)에 대한 근거가 무려 "경험적 판단"이기 때문이죠. http://www.snunews.com/news/articleView.html?idxno=16864
정리합시다. 구조론적으로 머신러닝을 분류하면 셋의 통합이 가능합니다. 강화학습과 지도학습은 학습 하나로 통합하고, 비지도학습은 폐기되어야 합니다. 물론 각자 발전한 셋의 알고리즘은 조금씩 양상이 다릅니다. 하지만 그 다름을 하나의 같음으로 통합할 때, 진정한 혁명이 일어납니다. 그게 과학사의 발전 양상이기도 하고요.
![프로필 이미지](https://gujoron.com/xe/files/member_extra_info/profile_image/634/482/482634.jpg)
![포인트:37623point (43%), 레벨:20/30 [레벨:20]](https://gujoron.com/xe/modules/point/icons/default/20.gif)