기계학습은 인간과 같이 학습과 추론을 거치며 얻은 경험으로 시스템을 재수정 하는 방식으로 학습을 하는 것이며, 프로그래머가 개입하지 않더라도 새로운 문제를 해결할 수 있다. 기계학습의 종류는 지도학습과 자율학습으로 구분된다.
인간은 태어나면서부터, 부모와 주위 사람들로부터 끊임없이 배우고 응용할 수 있는 학습 능력을 갖고 있기 때문에, 일정 시간이 지나면 문제를 스스로 해결할 수 있는 능력이 생긴다. 이것은 인간을 자연계의 다른 생물보다 훨씬 뛰어나게 만드는 중요한 특징 중의 하나이다. 기계 학습은 바로 이러한 인간의 능력을 모방하여, 컴퓨터가 훈련 데이터를 통해 스스로 새로운 것을 학습하고 문제해결을 할 수 있도록 하는 기술이다. 기계 학습에서는 컴퓨터가 학습을 통해 하나의 문제를 해결한 후에 그 추론과정에서 얻은 경험을 바탕으로 시스템의 지식을 수정 및 보완한다. 다음에 그 문제나 비슷한 문제가 나오면 처음보다 더 효율적이고 정확하게 문제를 해결할 수 있게 되는 것이다. 기계 학습을 통해 컴퓨터가 학습능력을 갖추게 되면, 어떤 문제에 대한 의사결정이나 판단을 스스로 내릴 수 있게 되며, 프로그래머가 직접 프로그램을 만들지 않아도 새로운 문제를 해결할 수 있다. 따라서 1959년 아서 사무엘은 기계 학습을 ‘해결해야 할 문제를 코드로 프로그램하지 않은 동작을 데이터로부터 학습하여 실행할 수 있도록 하는 ‘알고리즘’을 개발하는 연구 분야’로 정의한 바 있다. 기계 학습의 종류는 지도학습과 자율학습으로 구분할 수 있다.