5.1. 머신러닝 개념 소개
Last updated
Last updated
머신러닝은 데이터 마이닝, 자연 언어 처리, 이미지 인식 및 전문가 시스템과 같은 광범위한 핵심 응용 분야에서 핵심적인 역할을 수행할 수 있습니다. 이 장에서는 머신러닝 이론의 기초를 소개하고, 일반적인 주제와 개념을 설명하며, 머신러닝의 기본 사항에 익숙해지도록 설명합니다.
앞장에서 설명했듯이 머신러닝에는 지도(supervised) 와 비지도(unsupervised) 학습이 있습니다.
supervised 학습 응용 프로그램의 대부분에서 궁극적인 목표는 미세 조정된 예측 함수 h (x) ("가설"이라고 함)를 개발하는 것입니다. "학습"은 정교한 수학적 알고리즘을 사용하여 특정 도메인 (예: 주택의 평방 피트)에 대한 입력 데이터 x가 주어지면 특정 값 h(x)를 정확하게 예측할 수 있도록 이 함수를 최적화하는 것입니다. (예를 들어: 그 집에 대한 시장 가격).
실제로, x는 거의 항상 여러 데이터 요소를 나타냅니다. 예를 들어, 주택 가격을 예측하기 위해 평방 피트(x1) 뿐만 아니라 침실 수(x2), 욕실 수(x3), 층 수(x4), 건축 연도(x5), 우편 번호(x6) 등 많은 요소들이 있습니다. 사용할 입력을 결정하는 것은 머신러닝 디자인의 중요한 부분이지만 설명의 편의를 위해 단일 입력 값이 사용된다고 가정하는 것이 가장 쉽습니다.
그럼 우리의 간단한 예측 인자가 다음과 같은 형식을 가지고 있다고 가정 해 봅시다.
여기서 θ0과 θ1은 상수입니다. 우리의 목표는 가능한 한 잘 예측할 수 있도록 θ0과 θ1의 완벽한 가치를 찾는 것입니다.
예측 값 h(x)를 최적화하는 것은 예제를 통한 훈련으로 수행됩니다. 훈련을 위해 제공되는 각 학습 예제에서, 우리는 입력 값 x_train과 대응하는 출력 y는 미리 알고 있습니다. 각 예제에 대해 알려진 올바른 값 y와 예측 값 h(x_train) 사이의 차이를 찾습니다. 충분한 훈련 예제를 통해 θ0과 θ1의 값을 조정하여 h(x) 값이 제공되는 값과 일치하도록 조정할 수 있습니다. 이 과정은 시스템이 θ0과 θ1에 대한 최상의 값으로 수렴할 때까지 계속해서 반복됩니다.
설명을 위해 간단한 예제를 제시했지만 현실 세계의 문제는 훨씬 더 복잡합니다. 평면 스크린에는 3 차원 데이터 세트의 그림을 그릴 수 있지만 머신러닝 문제는 일반적으로 수백만 차원의 데이터와 매우 복잡한 예측 기능을 처리합니다.