우리가 사용하는 자동문을 생각해 봅시다. 사람 혹은 어떤 물체가 다가가면 자동으로 문이 열립니다. 그 이유는 문을 언제 여는지, 어떤 속도로 열고 언제 닫는지에 대한 명령을 프로그래머가 자동문 프로그램에 작성해서, 이를 자동문 시스템에 넣어두었기 때문입니다.
하지만 머신러닝의 방법은 조금 다릅니다. 머신러닝을 직역하면 ‘기계가 공부하는 것’입니다. 즉, 사람이 직접 프로그램을 만들어서 기계에 넣어주는 것이 아니라, 문을 언제 어떻게 열 것인지 등 기계가 스스로 문제를 해결하는 방법을 학습하는 것입니다.
그러면 머신러닝은 무엇을 가지고 학습할까요?
바로 데이터입니다. 수많은 데이터, 즉 빅데이터 속에서 스스로 규칙을 찾고, 그 규칙을 학습하는 것입니다. 다시 말해, 머신러닝은 데이터를 사용해서 기계가 스스로 학습하는 방식이라고 볼 수 있습니다.
그림 1-3 | 전통적인 프로그래밍 vs 머신러닝