brunch

You can make anything
by writing

C.S.Lewis

by 코딩하는 수학쌤 May 24. 2021

20. 알고리즘 : 음.. 그래서 핵심이 도대체 뭐야?

[제3악장. idylle- 수학에서 인공지능으로]

 알고리즘이라고 하는 것은 어떠한 것을 구하는 절차를 이야기한다. 어떤 문제을 풀이하는 적절한 알고리즘이 존재한다면 누구나 쉽게 해결할 수 있다. 다시 말해 매번 문제를 풀 때마다 천재적인 방법을 생각하지 않아도 된다. 예를 들면 x+2=3이라고 했을 때 2를 이항하는 알고리즘을 활용해 x=1이라는 값을 쉽게 구할 수 있고, 근의 공식이라는 알고리즘을 통해 이차방정식의 답을 쉽게 찾아낼 수 있다.


 이전 글을 통해 식에서 다루고 있는 숫자, 기호, 문자 등의 중요성을 이야기했지만 사실 우리 학생들은 매일 쏟아지는 식 속에서 허우적대며 산다. 우선 수학이라는 호수는 너무 방대하게 크다. 친절하게 써놓았다는 해설을 보면 식들과 해설이 잔뜩 쓰여있다. 수학자들의 친절함으로 잔뜩 쓰인 수식들의 쓰나미는 사실 학생들에게는 공포의 대상이고 해독되지 않는(하고 싶지 않은) 암호문일 수 있다. 마치 어떤 제품의 작동법이 몰라 동봉된 매뉴얼을 봤더니 너무 장황하고 복잡해서 도저히 읽고 싶지 않았을 때의 느낌과도 비슷하다.


 그래도 학생들은 문제 해결을 위해 열심히 수식을 쓰며 노력을 하곤 한다. 그렇게 시험을 볼 때 열심히 답안을 적었지만 늘 선생님은 엄격한 표정으로 ‘네가 쓴 내용은 수학적으로 옳지 않아!’라는 코멘트와 함께 낮은 점수로 채찍질을 한다. 이 때문에 수학 시험이 끝나면 수학 교사들은 늘 학생들에게 전문가에 대한 존경의 눈빛이 아닌 약간의 분노 혹은 증오심이 담긴 눈초리를 받는다.


 우리 교사들도 태어나면서부터 수학을 잘했던 것은 절대 아니다. 대학 4학년 때 나름 열심히 수학을 공부하고 이제 어느 정도 수학이란 언어에 적응을 했다고 생각했다. 그때 호기롭게 대학원 대수학 과목을 듣고 있었는데 과제들이 확실히 학부생의 수업보다 어려운 게 많았다. 며칠 동안 고민 끝에 나름의 논리를 펴서 A4 종이 2페이지에 가깝게 풀이를 써서 냈다. 비록 완벽한 증명은 아니지만 어느 정도 답에 가깝게 충분히 접근을 했다고 생각했었다. 반면 같은 수업을 듣던 친구는 A4 종이 ¼ 정도에 간략하게 끄적여서 제출을 했다. 물론 그 친구도 완벽히 풀지는 못했다. 그 수업 대부분의 수강생이 풀지 못했던 문제였기에 나름 최고의 점수를 기대했다.


 하지만 다음 수업이 끝난 후 두근거리며 시험지를 받았는데 나의 과제 제출의 끝에는 0점과 함께 “So What?”이라는 한 구절만 적혀있었다. 반면 친구의 과제에는 밑줄 2개와 느낌표가 탕탕 2개 찍혀있었고 꽤나 높은 점수를 받았다. 아니, 이거 너무 불공평한 거 아냐? 도대체 뭐가 문제지? 씩씩대는 분노를 가라앉히고 기숙사에 돌아와 내 과제물을 천천히 읽어보았다. 분노는 어느 순간 사라지고 혼란이 슬며시 다가왔다. 분명 내가 쓴 글씨는 맞는데 내가 읽어도 무엇을 증명하기 위한 것인지 파악이 잘 안 된다. 끝까지 읽고 나서도 흐름이 잡히지 않았다. 혼란이 마무리되어갈 때쯤 부끄러움이 찾아왔다. 이 과제를 읽고 채점해준 조교 형에게 미안할 따름이었다. 반면 내 친구의 과제는 그 문제가 무엇을 요구하는지 분명히 짚고 있었다. 4단계 중 3단계를 증명했는데 나머지를 증명하지 못했을 뿐이었다. 방법도 간단하고 계산도 깔끔했다. 


 수학이 복잡하고 어렵게 느껴지는 이유는 핵심을 잘 파악하지 못하기 때문이다. 수학 내용은 대부분 수식과 설명으로 쓰여 있고 무엇을 보이려는 것인지 핵심 내용이 있다. 그런데 그 핵심 내용은 처음에 잘 보이지 않기 때문에 모든 단계에서 잔뜩 긴장을 한 채 하나하나 읽어보게 된다. 마치 초등학생 때 처음 연극을 해볼 때와 비슷하다. 연극 대본을 받았을  때 모든 것들을 하나하나 긴장을 하며 외운다. 토씨 절대 틀리면 안 된다는 부담을 잔뜩 안은 채로 식들을 외워간다.


 그런데 대본도 흐름이 있고 스토리가 있듯 수학도 그 과정에서 핵심적인 뭔가를 보이려고 하는 핵심이 있다. 연극 ‘크리스마스 캐럴’에서 지독한 구두쇠인 스크루지가 친구 유령과 함께 결국 과거, 현재, 미래를 보면서 자신이 얼마나 불행한 사람인지를 깨닫는다. 그리고 새로운 인생을 시작한다는 스토리를 파악하고 나면 대본은 하나의 가이드북에 불과하다. 대본에 충실하겠지만 그 대본은 스토리를 설명해주는 도구에 불과하다는 것을 알게 된다.


 마찬가지로 여기 이차방정식의 근을 구하는 ‘근의 공식’이라는 훌륭한 대본이 있다. 처음엔 빈칸을 열심히 채워가며 다음의 알고리즘을 이해하고 외운다. 



 한 번 스크루지를 연기하는 연기자의 입장에서 위의 대본을 살펴보자. 도대체 위의 알고리즘은 무엇을 하자는 것일까? 가만히 살펴보면 위의 알고리즘은 이차방정식을 만족하는 해를 구하는 과정이다. 가장 핵심적인 부분은 ‘x²=a라는 식이 있다면 x는 a의 제곱근(+-루트 2)이다’라는 제곱근에 관한 부분이 이 대본의 하이라이트이다. 나머지 단계에서는 제곱근을 쓸 수 있도록 정리하고, 제곱근을 구한 다음 식을 정리했을 뿐이다.



 인공지능을 포함한 모든 수학 알고리즘에는 뭔가 전하려는 핵심이 있다. 그 핵심을 가지고 알고리즘을 보면 아주 긴 수학의 내용은 간단한 핵심을 전달하기 위한 준비 단계, 핵심 내용, 정리 단계로 나누어진다. 때로는 핵심적인 내용이 2~3개 연결되어 나오기도 한다. 그러면 준비, 핵심 1, 연결, 핵심 2, 연결, 핵심 3, 정리 등으로 보이기도 한다. 이 핵심 2~3개를 중심으로 살펴보기 때문에 문제 하나에 칠판 전체를 사용하는 길고 긴 풀이도 쉽게 풀어낸다.


 그럼 이런 핵심을 잘 파악하기 위해서는 어떻게 해야 할까? 이는 연극을 잘하기 위한 방법과 비슷하다. 대본을 여러 번 읽어보고 직접 연습을 해보는 수밖에 없다. 그러다 보면 전체 스토리가 머릿속에 자리를 잡게 되고 각 대사의 의미가 자연스럽게 파악된다. 처음에는 스토리 파악, 두 번째에서는 내가 맡은 인물의 내면을 이해하고, 세 번째는 인물 사이의 관계가 느껴지고, 네 번째는 작가가 이야기하려는 것이 무엇인지 파악할 수도 있다. 수학의 알고리즘은 답을 구하기 위한 방법이지만 수식들은 단순히 답을 구하는 것만을 목표로 하지 않는다. 이러한 알고리즘을 살펴보다 보면 마치 수학자들이 했던 생각을 와이파이로 전송받는 것과 같은 느낌이 들 때가 있다. 그럴 때 ‘와! 아름답다!’와 ‘정말 이 분은 미친 것 같아!’라는 탄성이 나오게 된다.


 바둑 기사들이 바둑을 두고 나면 ‘복기’라는 것을 한다. 바둑 기사들은 물론 머리가 좋지만 바둑돌을 좌표로 외우지 않는다. 각 상황에 따라 흐름과 핵심, 그리고 정리 단계로 하나의 스토리를 기억할 뿐이다. 수학을 바라볼 때는 긴 수식으로 쓰인 알고리즘에서 무엇이 말하고자 하는 핵심인지를 살펴보는 눈을 조금씩 키워야 한다. 그러면 인공지능의 알고리즘은 수식으로 쓰인 머리 아픈 암호문이 아니라 인류의 지성이 축약된 가장 아름다운 예술품이라는 것을 느낄 수 있다.

매거진의 이전글 19. 기하학 : 유사함을 어떻게 수치화할까?
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari