[알고보면 쉬운 과학 원리] 인공신경망
10여 개 AI 기법 중 인공신경망 널리 쓰여
AI는 사람 뇌 흉내내기의 집합체
바둑 두기, 수식으로 데이터 생성
연립방정식서 가중치 찾아 학습
알파고 수읽기 바탕은 단순 계산
10여 개의 인공지능 기법 중에서 가장 널리 알려진 것이 인공신경망이다. 구글의 알파고도 이것을 이용하여 개발되었다.
간단한 바둑의 예를 보면서 일파고가 어떻게 동작하는지 알아보자.
컴퓨터가 이해하려면 수학으로 표현해야
그림처럼 좌표 (x1,x2)를 만든다. <그림1>에는 흑돌 3개를 좌표 (0,0), (1,0), (0,1)로 표현하고, 백돌의 위치는 (1,1)로 나타낸다. 백돌을 놓을 수 있는 지역을 표시하기 위하여, 변수 t를 도입한다. 우측지역을 t > 0라 표시하고, 좌측지역을 t < 0으로 표시한다.
바둑의 정석을 수식으로 표현하여, 학습 데이터를 만든다. 즉, 4개의 조건이 붙은 데이터이다.
(0,0)이면 t < 0
(1,0)이면 t < 0
(0,1)이면 t < 0
(1,1)이면 t > 0
여기서 좌표 (0,0)은 t 값을 음수가 되게 한다는 뜻을 나타내고, (1,1)은 t 값이 양수가 되게 한다는 뜻이다.
바둑을 배울 수 있는 인공신경망을 만들어 보자. 망의 구조는 연구자의 경험과 지식에 의하여 결정한다. 필자는 <그림2>와 같이 인공신경망을 만들었다. 3개의 입력노드(1, x1, x2)와 1개의 출력노드(t)를 만들었다. 첫 번째 입력노드의 값은 항상 1로 하자. 그리고 둘째, 셋째 노드에는 좌표값 (x1, x2)이 들어간다. 그리고 가중치 (w1, w2, w3)은 입력과 출력 사이의 연결강도를 나타낸다.
입력노드는 입력 값과 가중치를 곱하여, 출력 노드(t)에 넘겨 준다. 즉, 입력(1, x1, x2)과 가중치(w1, w2, w3)를 곱해서 출력 t가 된다.
1·w1 + x1·w2 + x2·w3 = t
결국 여기서 학습이라는 것은 학습 데이터의 조건을 만족시키는 가중치(미지수)의 값을 구하는 것이다.
이제 학습 데이터를 준비해 보자. 앞에서 준비한 데이터 “(0,0)이면 t < 0”을 앞의 수식에 대입하면 아래와 같이 된다.
1·w1 + 0·w2 + 0·w3 < 0
마찬가지 방법으로 “(1,0)이면 t < 0”을 대입하면, 다음을 얻는다.
1·w1 + 1·w2 + 0·w3 < 0
이렇게 하면 결국 아래와 같이 4개의 수식으로 종합할 수 있다.
1·w1 + 0·w2 + 0·w3 < 0
1·w1 + 1·w2 + 0·w3 < 0
1·w1 + 0·w2 + 1·w3 < 0
1·w1 + 1·w2 + 1·w3 > 0
여기에는 3개의 미지수(w1, w2, w3)가 있고, 4개의 수식이 있다. 우리가 중학교 때 배운 연립방정식과 비슷하다. 그런데 미지수는 3개인데, 수식이 4개이다. 미지수와 수식의 개수가 다르면 연립방정식을 풀 수 없다(이것이 가물가물하면 중학생 딸에게 물어보라.) 또한 수식들은 부등호가 들어 있는 조건식이다. 이럴 때 미지수를 구하는 방법이 인공신경망 학습법이다.
데이터 조건 만족시키는 가중치 값 찾아
4개의 조건식을 만족시키는 미지수(w1, w2, w3)을 여러 가지로 시도해 본다. 여기에는 많은 시행착오가 따른다. 그래서 인공신경망 학습에는 컴퓨터 시간이 많이 소요된다. 하지만 우리 문제는 간단하기 때문에, 몇 차례의 시행착오 끝에 미지수를 구할 수 있었다. <그림 3> 참조.
w1=-3, w2=+2, w3=+2
앞에서 학습된 신경망을 수식으로 표현하면 다음과 같이 된다.
1·w1 + x1·w2 + x2·w3 = 1·(-3) + x1·(+2) + x2·(+2) = t
이제 학습된 인공신경망을 이용하여, <그림 4>와 같이 예제를 풀어 보자. 좌표 (2,0)을 인공신경망에 대입해 본다.
1·(-3) + 2·(+2) + 0·(+2) = 1
결과가 t=+1로 양수가 나왔다. 즉, 이 점에는 백을 놔도 좋다는 뜻이다. 그러면 이제 (1,-1)에 대하여 적용해 보자.
1·(-3) + 1·(+2) + (-1)·(+2) = -3
t=-3이 된다. 음수다. 여기는 놓지 말라는 뜻이다. 우리가 알고 있는 바둑 지식과 일치한다.
이제 인공신경망이 어떻게 학습되고, 어떻게 답을 주는지 알았다. 알파고의 인공신경망도 사이즈의 차이가 있지만, 기본적인 작동 원리는 이와 동일하다. 알고 보니 매우 단순한 계산으로 작동한다. 이제 나도 인공지능 원리를 아는 사람이 됐다.
이광형 KAIST 바이오뇌공학과 겸 문술미래전략대학원 교수
인공지능과 퍼지이론, 바이오정보, 미래예측 전문가다. 사단법인미래학회장과 국회미래연구원이사를 맡고 있다.