Intro
머신러닝은 데이터로부터 의미있는 정보를 자동으로 추출하는 알고리즘을 디자인하는 것입니다.
여기서 ‘automatic’이라는 점을 강조합니다. 즉, 머신러닝은 의미있는 무언가를 생성하면서 많은 데이터셋에 적용할 수 있는 범용(general-purpose) 방법론(methodologies)을 연구합니다.
머신러닝에는 data, model, learning이라는 3가지 핵심 개념이 있습니다.
머신러닝은 본질적으로 데이터 기반이며, 데이터는 머신러닝의 핵심입니다. 머신러닝의 목표는 데이터를 통해 의미있는 패턴을 추출하는 범용 방법론을 설계하는 것이며, 이 목표를 달성하기 위해 데이터를 생성하는 모델을 설계합니다. 예를 들어, 회귀(regression)에서 모델은 입력(input)을 받아 실제 값을 출력합니다.
목표는 관심을 가지지만 아직 본 적이 없는 데이터들로 잘 일반화시키는 좋은 모델을 찾는 것이며, 학습은 모델의 매개변수를 최적화하여 데이터에서 패턴과 구조를 자동으로 찾는 것을 의미합니다.
머신러닝에 많은 성공 사례들이 있고 SW를 사용하여 쉽게 머신러닝 시스템을 설계하고 학습할 수 있지만, 머신러닝의 기본 원리를 이해하고 더 복잡한 모델을 설계하기 위해서는 수학적인 기초가 중요합니다. 수학적 이해를 갖추면, 새로운 머신러닝 솔루션을 만들거나, 이미 존재하는 접근론을 이해하고 디버깅하거나 방법론의 본질적인 가정(assumptions)이나 제한들을 학습하는데 도움이 됩니다.