인공지능이 사람을 대체할거다 라는 전제가 잘못된 이유들
16일전    |    Viewed   157

2016년 3월은 구글 딥마인드의 바둑인공지능 ‘알파고’와 한국 대표 바둑 기사 ‘이세돌’ 9단과의 경기가 치뤄진 시기이다. 이 날 치뤄진 5판의 경기는 전세계 사람들의 이목을 끌었고 먼 훗날 역시 교과서에서도 충분히 거론될 정도로 큰 사건이기도 했다. 알파고는 이세돌과의 경기에서 4승을 쉽게 거머쥐며 이제 사람은 바둑에서는 더이상 인공지능의 적수가 될 수 없다는 걸  보여주었다. 이 경기는 현재 2022년까지 IT 업계는 물론 기타 산업까지도 먼 훗날의 이야기였던 인공지능과 인간이 공존하는 공상 과학의 이야기를 현실로 빠르게 끄집어내게 된 계기가 되기도 했다.
 
컴퓨터과학 업계는 최근 10년 사이 엄청난 격변이 일어나고 있었다. 상당수의 SCI급의 논문들과 세계적 수준의 컴퓨터공학 저널들을 상당부분은 인공지능을 기술을 연구하는 방향으로 변모하였고 이는 국내 뿐만이 아니라 미국, 중국, 유럽을 포함한 전세계 모든 학계 연구자들에게도 해당되는 일이다. 특히 인공지능을 기술 중 하나인 인공신경망(Neural Network) 알고리즘은 좀 더 복잡한 구조를 가진 딥러닝(Deep Learning)을 통해 현재를 포함한 향후 최소 5년이상 인공지능을 기술을 연구하는 주된 도구이자 핵심적인 역할을 하는 연구과제로 여겨질 예정이다. 
 
딥러닝이 처음 제시되어 연구가 활발하게된 시기도 무려 최근 10년 사이 벌어진 일이다.  이전과는 완전히 다른 접근의 시도이며 기존의 사람이 직접 기능을 개발하고 절차를 설계하며 주어진 일을 프로그래밍으로 개발하던 것과는 상당히 다른 방식으로 이뤄진다. 우선 딥러닝은 소위 사람들이 많이 들은 이야기인 ‘학습’이라는 과정을 거친다. 학습이라는 용어에 우리는 사람이 학습한다는 것과 매우 혼동스러워하거나 쉽게 이해되는 방식은 아니게 느껴진다. 하지만 딥러닝에서의 학습의 본질은 수치미분 그 이상 그 이하도 아니다. 
 
딥러닝의 구성단위인 인공신경망 알고리즘은 초기에 랜덤(random)한 수치를 가지고 데이터가 입력이 되면 y = Ax + b 라는 매우 단순한 1차 방정식으로 값을 대입하여 그 다음 인공신경망에 계산된 y을 전달한다. 이러한 과정은 동시에 여러번 매우 많이(!) 계산이 이뤄지면 최종 목표값이라 부를 수 있는 정답(aka.라벨)과 대조한다. 대조된 결과는 수학에서는 오차(Loss or Error)라 불려지며 이 오차를 이용해 미분을 계산하면 특정 포인트에서의 그 오차를 최소화하는 기울기가 나오게 된다. 그러면 그 기울기는 또다시 다음 데이터가 들어왔을때에는 랜덤한 숫자가 아닌 새롭게 얻은 기울기를 대입하여 위의 과정을 다시 반복하게 된다. 이것이 우리가 알고 있는 인공지능이 학습을 하는 과정이라 볼 수 있다. 그리고 이러한 수치미분을 이용한 방법을 역전파(Back-propagation) 라고 부르며, 사람이 인위로 만든 정답과 대조하는 방식을 지도학습(Supervised Learning)이라 부른다.
 
이러한 매커니즘을 좀 더 다각화하거나 복잡하게 만든 알고리즘을 딥러닝이라 부르며 딥러닝 알고리즘에서는 CNN, RNN, GAN, ATTENTION, TRANSFORMER 등이 제안되어 왔으며 이 모델들은 대부분의 인공지능을 연구하는 기본 요소로 자리 잡게 되었다. 현재 많은 혁신적인 서비스에는 우리가 볼 수 있던 없던 이미 IT 제품에서는 상당수준 상용화되어 오랫동안 사용되어 왔다고 볼 수 있다.
 
혹시 여기까지 읽어보고 인공지능이 사람을 대체한다는게 과연 맞는 전제인가 라고 생각이 든다면 필자의 생각과 동일하다고 할 수 있다. 여기서 잠시 다른 개념을 하나 더 설명할 필요가 있다. 수학 논증에서는 귀납법(Induction)과 연역법(Deduction)이 대표적인 예가 있다. 귀납법은 쉽게 이야기하자면 한마디로 ‘구체적인 사실을 통해 보편적인 사실을 추론해내는 과정’ 이고 연역법은 ‘만약 특정 가설이 맞다면 그에 대한 결론도 반드시 맞다’라는 것이다. 
 
예를 들자면 귀납법은 ‘나는 매일 아침 출근길에 회사 근처에서 커피 한잔을 사들고 출근한다’는 습관을 가지고 있다. 그렇게 월~금 이러한 습관을 지키고 있다고 여러 번 관찰되어 왔다면 '타인이 내 아침길 출근길은 분명 카페를 들러 커피 한잔을 사들고 갈거다’라는 걸 미리 알 수 있는 것과 같다. 그런 반면 연역법은 ‘나는 대한민국 국적의 성인 남성이다. 그러므로 나는 대한민국 신분증을 가지고 있다.’ 와 같은 것을 논리적으로 결론을 이끌어 내는 방식이라 할 수 있다.  그런 반면 인공지능은 위에서 든 예시와 같이 데이터라는 과거에 생성된 지식을 통해 귀납적으로 특정 사실들을 추론하는 방식만(!) 채택하고 있다. 연역법과 같이 ‘모든 대한민국 남성은 성인이 되면 모두 신분증을 가질 수 있다’와 같은 결과를 추론하는 원리는 사람인 프로그래머가 따로 해당 데이터를 기입하지 않고서는 절대로 추론 할 수 없다.
 
특히 귀납법과 연역법을 예시로 들 때에는 필자가 드는 생각은 사람은 때때로 개인의 지식의 성장은 소위 ‘귀납적추론에서 연역적 추론으로 이어진다’ 라고 말한다. 예를들면 과거 과학이 발달되지 않던 원시시대에는 인류는 매일 아침 해가 뜨는 것을 알고 있었고 그 다음 날도 분명히 해가 뜰거라고 예측하고 있었을 것이다. 그리고 그 믿음이 분명 굳건했을 것이다. 하지만 정확한 이유는 당시에는 알지 못하였고 결국은 귀납적으로 추론했을 뿐이었을 거라고 생각한다. 
훗날 인류는 천문학을 통계 지구는 태양 주변을 돌고 있으며 이는 매일 아침 해가 뜨는 절대적인 참이다 라는 것 연역법을 넘어서 매우 확신하는 사실을 새로운 지식을 만들어왔다. 그런 반면 현재 채택하고 있는 인공지능의 지적 수준은 여전히 귀납적이며 새로운 사실은 추론할 수 없으며, 절대적 사실을 추론할 수 있도록 하는 유일한 방법은 인류가 발견한 새로운 지식을 데이터베이스에  직접 저장하는 방법 말고는 존재하지 않는다고 생각한다.
 
그렇다면 어떻게 알파고는 이세돌을 훨등한 실력으로 이길 수 있었을까? 이는 여러 경우의 수와 지식이 확장되는 범위가 한정적인 환경인지 아닌지에 정의가 명확하게 내려진 것과 밀접한 관계를 갖고 있다. 우선 바둑판은 가로 세로 각 19칸의 범위를 가지고 있으며 흑돌 백돌 둘 수 있는 경우의 수는 1.4 곱하기 10의 768승 이다. 사람이 보았을때에는 거의 무한한 수의 엄청한 경우의 수 이지만 분명한 건 경우의 수는 더이상 확장될 수 없다. 그리고 소위 그동안 사람이 둔 패턴인 기보라는 데이터는 알파고가 학습한 지식의 범위이며 이는 분명 여러 번 반복했을 것이니 이세돌보다는 많이 학습 했을 것이다. (훗날 두번째 버전 알파고zero는 기보를 통해 학습하지 않고 여러개의 에이전트를 실행시켜 서로 싸우며 자기강화학습, self-reinforcemnet learning을 통해 더욱 우수한 인공지능이 되었다)  
당시 알파고와 이세돌과 비교했을 때 분명 알파고는 귀납적으론 이세돌보단 훨씬 강력하며 바둑판 위에서는 한 수당 생각할 수 있는 경우의 수는 훨씬 많을 수 밖에 없다. 하지만 알파고는 그 해당 환경 밖의 지식들을 절대로 알 수가 없다. 그 자리에서 알파고는 바둑은 더 잘할 수 있지언정 해당 경기가 서울에서 벌어졌는지 도쿄에서 벌어졌는지는 절대로 알 수가 없는 것과 마찬가지이다.
따라서 인공지능과 사람은 태생상 지식을 추론하는 범위가 비교할 수 없을 정도로 다른 영역에서 벌어지고 있으며 확장할 수 있는 범위 또한 소위 다른 차원에서 존재하는 것과 다를게 없다.
 
인공지능의 또다른 추론과정 중 하나는 확률(Probability)을 이용한다는 점이다. 물론 사람도 확실하지 않은 경우에는 ‘나는 50%정도 확신해~’ 와 같은 말을 하긴 하지만 최소한 우리는 100% 확신할 수 있는 사실들을 여럿 보유하고 있다. IT 서비스를 개발하는 개발자 입장에서는 인공지능에게 결제시스템을 맡길 수는 없는 것과 마찬가지이다. 만약에 소비자에게 팔 서비스가 1000원에 책정되었다면 분명 해당 서비스는 딱 1000원만 결제 요청을 수행하게 만들어야 하는 것이고 인공지능에게 결제 시스템을 수행한다고 개발하면 확률상 어떤 유저에게는 999원을 결제할 수도 있고 1001원 결제할 수도 있는 결과가 충분히 벌어질 수도 있기 때문이다. 이러한 특성들을 프로그래밍 언어에서는 불확실성을 용인한다는 뜻에서 fuzzyness 라는 특정 옵션을 부여하는 경우도 존재한다. 하지만 이러한 fuzzyness를 허용할지 말지는 전적으로 사람이 결정하는 것이고 그러한 옵션이 주어졌는지 안주어졌는지에 대한 사실 또한 알고 있는 것은 사람에 의해서 수행된다고 볼 수 있다.
 
확률외에도 인공지능을 학습하고 나면 해당 그 학습된 인공지능을 모델을 평가하는 과정을 Evaluation(평가) 이라 부른다. Evaluation은 학습된 데이터들 외에 학습되지는 않았지만 똑같은 포맷에 해당 데이터의 내용만 다른 Samples들을 통해 해당 모델을 얼마나 잘 학습했는지 귀납적으로 평가하는 과정을 거친다. 이러한 평가 방식 또한 귀납적이기 때문에 사람이 생각하는 방법과는 매우 다를 수 밖에 없으며 evaluation에 사용되는 몇몇 metrics(평가지표)는 과연 어떤 기준에서 학습이 잘 되었는지는 모두가 납득할만한 연역적인 수준에서는 메트릭은 아직 전혀 나오지 않은 상황이라 볼 수 있다. 이러한 사실 또한 인공지능은 매우 똑똑하고 학습을 잘 한 지적체라고 볼 수 없는 이유이기도 하다. 물론 우리가 사람을 평가하는데에도 시험, 실적, KPI등등 여러 평가 메트릭을 사용하여 개개인의 능력을 측정하고 이를 생산성의 지표로 삼는 경우는 많지만 개개인이 가지고 있는 모든 지식과 행위들을 다 평가하는데는 그러한 목표를 두지 않고 그러한 요소들을 정량적으로 판단하는 것보다는 정성적으로 보겠다는 경우가 더 많은 것도 사실이다.
 
간혹 최근 인공지능을 이용한 기술을 활용하여 여러 서비스들이 개발이 되고 있고 요즘 필자가 느끼는 바로는 서비스에 필요한 기술을 개발하는 것이 아닌 해당 인공지능 기술을 이용하기 위한 서비스 구축 등등이 정부차원에서 기업차원에서 많이 이뤄지고 있다. 물론 디지털인재 양성 국가 경쟁력 차원에서 이러한 기조를 주도하고 변화해 가는 것은 꼭 틀렸다는 것은 아니지만 이미 상당수는 기술을 위한 서비스 기획은 과연 우리에게 좋은 방향을 이끌어 가는 것이 맞는지는 좀 더 두고 볼 필요는 있다.
 
결론적으로 인공지능이 사람을 대체하는 전제가 과연 맞는 것인가 라면 서로에 대한 비교군이 될 수 있었다라고 기저에 깔려있기 때문이다. 왜냐하면 최근 DX(Digital Transformation)의 변화의 바람은 기존 사람이 수행하고 있던 메뉴얼화된 작업들을 좀 더 디테일한 수준에서 기계로 대체하는 변화들이 계속 벌어지고 있기 때문이다. 하지만 이러한 비교군을 형성하는 건 사람과 인공지능은 본질적으로 다르며 우리의 일자리를 빼앗기는 것이 아닌 우리도 이제는 새로운 일들을 찾아볼 필요가 있다는 시장의 변화일 뿐이다. 인간은 귀납적이면서도 연역적으로 사고를 할 수 있는 주체이기 때문에 기계와는 월등한 존재로서 더 많은 일들을 수행할 수 있으며 육체 노동과 반복 노동에서 해방시켜줄 수 있는 매우 좋은 변화라고 볼 수 있을 것이다.
 
가장 전형적인 예로는 과거 시냇물로 빨래하러 가기위해 2~3시간씩 걸어가고 해야했던 조선인들은 세탁기가 생겼다고 해서 현재 대한민국 사람들은 일자리가 빼았겼고 인간의 존엄이 침해되었는가 하면 결코 아니기 때문이다.
 
우리는 종종 아에 잘못된 비교군을 통해를 전제를 세우고 생각하기 시작하면 끊임없이 잘못된 방향으로 가는 경우는 늘 경계해야한다고 본다.
댓글 0
0