seegongsik
인공지능

어떻게 배운다는 건 무슨 뜻일까

고양이 사진과 강아지 사진이 잔뜩 있다고 하자. 컴퓨터에게 둘을 가려내게 하려면 어떻게 해야 할까? 귀 모양, 코, 털을 하나하나 규칙으로 적어 줄 수도 있지만, 사진마다 생김새가 달라서 규칙은 끝이 없다. 그래서 다른 길을 쓴다. 정답이 달린 사진을 잔뜩 보여 주고 기계가 스스로 차이를 찾게 하는 것이다. 기계가 배운다는 말은 바로 이것을 뜻해요.

01

사람이 규칙을 적어요

지금까지 본 프로그램은 사람이 적은 명령을 그대로 따랐다. 무엇을 시키려면 사람이 규칙을 먼저 생각해 적어 줘야 했다. 스팸 메일을 거르는 일을 예로 들어 보자.
광고라는 말이 있으면 버린다, 링크가 너무 많으면 버린다, 대문자로만 쓰였으면 버린다. 이렇게 규칙을 하나하나 적어 두면 웬만한 스팸은 걸러질 것 같아요.

규칙 (눌러 켜고 꺼요)
받은 메일
mail 1놓침
mail 2정상
mail 3놓침
mail 4정상
mail 5놓침
mail 6놓침
규칙을 켜면 그 규칙에 걸리는 스팸이 걸러져요

규칙을 하나씩 켜고 끄며 메일을 걸러 보자. 규칙을 다 켜도 모습을 바꾼 스팸 하나는 빠져나가요.

규칙을 켤수록 걸러지는 스팸이 늘었다. 그런데 하나는 끝까지 빠져나간다. 스팸을 보내는 쪽은 걸리지 않으려고 모습을 계속 바꾸기 때문이다. 광고라는 말 대신 사은품이라고 쓰고, 링크를 그림 속에 숨긴다.
그때마다 새 규칙을 또 적어야 하니 규칙은 끝없이 늘어나요. 규칙끼리 부딪히기도 하고, 너무 빡빡하게 걸면 정상 메일까지 버리게 된다. 사람이 일일이 적는 방식으로는 이런 변화를 다 따라잡기 어렵다.

02

예시로 규칙을 찾아요

이번에는 길을 뒤집어 보자. 규칙을 적어 주는 대신 정답이 달린 예시를 잔뜩 보여 준다. 이것은 스팸, 이것은 정상, 하는 식으로 표시가 붙은 메일 수천 통이다.
기계는 이 예시들을 보면서 스팸끼리 닮은 점과 정상 메일끼리 닮은 점을 스스로 찾아낸다. 그렇게 찾은 패턴이 곧 기계가 만든 규칙이에요. 이렇게 정답이 달린 예시로 배우는 방식을 지도 학습이라고 부른다.

예시 공간
● 스팸● 정상
예시 0개를 봤어요

정답이 달린 예시를 하나씩 보여 주자. 예시가 쌓일수록 두 무리를 가르는 패턴이 또렷해져요.

예시가 쌓일수록 두 무리를 가르는 경계가 또렷해졌다. 사람이 경계를 그어 준 것이 아니라 기계가 예시 속에서 직접 찾았다.
놀라운 점은 사람이 말로 콕 집어 설명하기 어려운 차이도 예시만 충분하면 잡아낸다는 것이다. 다만 처음 찾은 패턴은 아직 거칠어서 몇 개는 틀리게 가를 수 있어요. 이 패턴은 어떻게 다듬을까?

03

틀리며 조금씩 고쳐요

배움은 한 번에 끝나지 않는다. 기계는 예시를 보고 답을 내 본 뒤 정답과 견준다. 틀렸으면 얼마나 틀렸는지 재고, 패턴을 아주 조금 고친다.
다음 예시에서 또 틀리면 또 고친다. 이 과정을 수없이 되풀이하면 틀리는 횟수가 점점 줄어들어요. 얼마나 틀렸는지 재는 방법과 고치는 방법은 뒤에서 손실 함수와 경사 하강법이라는 이름으로 자세히 다룬다.

정확도0번째 다듬기
55% 정확도
틀린 예시 9개
예시를 더 줄 때마다 정확도가 올라요

예시를 한 묶음씩 더 줘 보자. 누를 때마다 기계가 패턴을 고쳐 정확도가 오르고 틀린 예시가 줄어요.

예시를 줄 때마다 정확도가 올랐다. 처음에는 절반 남짓 맞히던 패턴이 몇 번 다듬자 열에 아홉은 맞히게 됐다.
다만 끝없이 완벽해지지는 않는다. 어느 지점부터는 아주 조금씩만 좋아지고, 끝내 틀리는 예시가 하나쯤 남기도 해요. 그래도 손으로 규칙을 적던 때보다 훨씬 적은 수고로 여기까지 왔다. 그럼 이렇게 다듬은 패턴은 어디에 쓸까?

04

새 입력도 예측해요

배움의 진짜 보람은 여기 있다. 학습에 쓴 예시는 이미 정답을 안다. 쓸모는 한 번도 본 적 없는 새 메일을 만났을 때 생긴다.
기계는 다듬어 둔 패턴에 새 메일을 비춰 보고 스팸인지 정상인지 판단한다. 예시를 외운 것이 아니라 패턴을 찾았기 때문에 처음 보는 메일에도 답을 내놓을 수 있어요. 이렇게 새 입력에 대해 답을 짐작하는 것을 예측이라고 한다.

새 메일 (학습에 안 쓴 것)
새 메일을 누르면 예측이 보여요

학습에 쓰지 않은 새 메일을 눌러 보자. 기계가 배운 패턴으로 스팸인지 정상인지 예측하고, 맞았는지도 알려 줘요.

본 적 없는 메일도 대부분 맞게 가렸다. 외운 답을 꺼낸 것이 아니라, 예시에서 찾은 패턴을 새 입력에 적용한 것이다. 그래서 모양이 조금 달라도 닮은 점을 보고 판단할 수 있다.
하지만 마지막 메일처럼 빗나갈 때도 있어요. 패턴이 완벽하지 않기 때문이다. 그래서 기계 학습에서는 학습에 쓰지 않은 예시를 따로 떼어 두었다가, 새 입력을 얼마나 잘 맞히는지 그것으로 잰다.

05

정리

정리하면 이렇다. 보통 프로그램은 사람이 적은 규칙대로 움직이지만, 세상일은 규칙으로 다 적기에 너무 복잡하다. 그래서 기계 학습은 길을 뒤집는다. 정답이 달린 예시를 잔뜩 보여 주면 기계가 공통 패턴, 곧 규칙을 찾는다.
틀리면 조금씩 고쳐 점점 잘 맞히고, 그 패턴으로 처음 보는 입력까지 예측해요. 규칙을 적는 대신 예시로 배우는 것, 이것이 핵심이다.

핵심 4가지를 차례로 눌러요
아래 핵심을 위에서부터 차례로 눌러요

핵심을 차례로 눌러 되짚어 보자. (사람이 규칙 적기 → 예시로 규칙 찾기 → 틀리며 고치기 → 새 입력 예측)

이제 기계가 배운다는 말이 무슨 뜻인지 알았다. 사람이 하나하나 가르치는 대신 예시를 보고 스스로 규칙을 찾는 것이다. 사진을 알아보고 말을 알아듣는 오늘의 기계들은 모두 이 생각에서 출발했어요.
그런데 예시에서 패턴을 찾으려면 먼저 데이터를 요약해 읽을 줄 알아야 한다. 데이터 무리를 가운데와 흩어진 정도 같은 숫자 몇 개로 나타내는 방법을 다음 레슨 통계에서 다룬다.

한 줄 정리보통 프로그램은 사람이 하나하나 적은 규칙대로 움직인다. 하지만 세상일은 규칙이 너무 많고 자꾸 바뀌어서 다 적기 어려워요. 기계 학습은 길을 뒤집는다. 정답이 달린 예시를 잔뜩 보여 주면 기계가 그 예시들에서 공통된 패턴, 곧 규칙을 스스로 찾아낸다. 처음에는 틀리지만 얼마나 틀렸는지 재고 조금씩 고쳐서 점점 잘 맞히게 된다. 그렇게 다듬은 패턴으로 한 번도 본 적 없는 새 입력까지 예측할 수 있고, 얼마나 잘 맞히는지는 학습에 쓰지 않은 예시로 잰다. 규칙을 사람이 적는 대신 예시로 기계가 찾고, 틀리며 고치고, 새것을 예측하는 것이 배운다는 뜻이에요.
← 인공지능
이 페이지가 도움 됐다면 후원하기