클래스: 인공 지능의 기초: 기계 학습

학습의 의미

머신 러닝은 오랫동안 존재해 왔습니다. 용어 자체가 좀 오래돼서 그렇다고 할 수 있죠. 컴퓨터를 기계라고 부르는 경우도 흔치 않고요. 머신 러닝이란 용어의 시작은 컴퓨터 분야의 개척자였던 아서 새뮤얼이 1959년 특정 작업 수행을 위해 컴퓨터를 프로그래밍하는 대신 인간 행동을 배울 수 있는지를 궁금해하면서부터였죠. 이는 그간 컴퓨터가 무슨 작업을 해야 하는지 정확한 값을 넣어야 한다고 봤던 대부분의 컴퓨터 과학자와 차원이 다른 사고방식이었습니다. 여러분이 컴퓨터와 상호작용하는 방법을 생각해 보세요. 일련의 명백한 명령 값을 받아 작동하는 프로그램이 대다수죠. 그래서 은행 앱과 같은 소프트웨어는 무척 꼼꼼하게 만들어야 합니다. 고객이 돈을 인출하려 하는데 잔액보다 초과한 금액이면 거래를 취소하는 지침을 만들 수 있습니다. 아주 명백한 명령 값이죠. X를 보면 Y를 하라는 식으로요. 머신 러닝은 이와 다릅니다. 자세한 명령 값을 만들지 않죠. 대신 컴퓨터에 문제를 연구하고 해결하는 데 필요한 정보와 도구를 제공합니다. 그러고 나서 컴퓨터가 이전에 했던 작업을 기억해서 적응, 진화해서 배울 수도 있는 능력을 심어 주는 겁니다. 이는 인간의 학습 방법과 별반 다를 바가 없습니다. 몇 년 전, 저는 아내와 함께 새 책장을 사고자 했고 이케아에서 꽤 큰 책장을 골랐었죠. 포장 상자를 열자마자 조립하기 정말 어렵겠다는 생각이 들더라고요. 이런 경험을 통해 배우고 앞으로도 많은 실수를 저지를 거란 것도 알았죠. 설명서에는 선반이 이어지는 부분에 다월이라는 철근을 삽입하라 나와 있었습니다. 그래서 구멍에 다월을 넣었고 다월 위에 책장 칸을 얹어 놓고 피드백을 기다렸습니다. 아내가 책장을 밀어 봤는데 잘 버티길래 둘 다 놀랐어요. 첫 번째 책장을 잘 만들었으니 이 경험을 바탕으로 다른 책장도 설치할 수 있게 됐어요. 이런 식으로 새 책장을 설치할 때마다 설명서를 볼 필요가 없죠. 인간은 이렇게 작은 문제부터 시작해서 더 큰 일을 해결하는 방법을 배웁니다. 저도 문제가 있었지만 경험을 바탕으로 규칙을 만들었고 더 큰 행동으로 옮기기 위해 이 규칙을 활용했고요. 그다음에는 규칙을 그대로 둘지 수정이 필요한지 보려고 피드백을 기다렸어요. 유용한 새 규칙을 배울 때마다 머릿속에 기억했죠. 첫 책장 작업이 끝난 후에는 저는 다른 다양한 이케아 가구를 조립할 수 있을 겁니다. 머신 러닝에서 컴퓨터도 같은 방식으로 작동합니다. 데이터의 작은 부분과 같이 간단한 일부터 시험해 보죠. 이후 통계 알고리즘을 사용해서 적합한 데이터인지 확인합니다. 인간으로서, 저는 책장에 다월이 필요하다는 규칙을 세웠습니다. 기계는 두 가지 유형의 데이터를 같은 방식으로 처리해야 하는 알고리즘이 있을 수 있습니다. 그 후 기계는 알고리즘을 활용해 패턴을 찾고 피드백을 받아요. 우리는 책장을 힘껏 밀어서 책을 꽂아도 튼튼할지 시험해 봤습니다. 같은 상황에서 기계는 결괏값이 옳게 나왔는지 확인하려고 시범용 데이터와 비교해 보겠죠. 기계는 새로운 것을 배울 때마다 이를 데이터베이스에 추가합니다. 해결 방법을 개선하고 적응하려고 오래 기억할 수 있는 데이터로 저장하는 의미기도 하죠. 기계와 인간 둘 다 추가 전문 지식이 생겼단 걸 기억하세요. 저는 필요 이상으로 복잡한 책장을 조립하는 방법을 배웠으니 이제 가구 조립에 대해서 훨씬 더 많이 알게 됐습니다. 같은 맥락으로 기계도 데이터를 더 잘 알게 됐죠.

목차