PRML-01.0, 소개
Introduction
- 손글씨 인식을 예로 머신 러닝 설명의 introduction
- N개의 숫자들
이 있다고 하자.
- 이를 훈련 집합(training set)과 표적 벡터(target vector) t로 사람이 수동으로 카테고리를 부여한다.
- 머신 러닝 알고리즘의 결과물은 y(x)로 표시
- 훈련 단계는 학습 단계로도 불리기도 하고 시험 집합(test set)이라는 새로운 숫자 이미지(보지 못한)들의 정체를 찾아내는데 활용이 가능하다.
- 이러한 능력을 일반화 성능이라고 한다.
- 패턴 인식에서 가장 중요한 목표는 일반화라고 보면 된다.
- 대다수의 실용 어플리케이션에서는 기존의 입력 변수들을 전처리(preprocessed)하여 새로운 변수 공간으로 전환이 가능하다.
- 이러한 작업을 통하여 문제를 더 쉽게 해결할 수 있다.
- 예를 들면) 숫자가 고정된 크기의 박스에 들어가도록 변환, 축소, 확대하는 과정
- 언어에서는) 불용어, 특수기호 삭제 등이 있을 수 있음
- 영상에서는) 노이즈 제거등 또한 존재할 수 있음
- 이러한 전처리 과정은 특징 추출과정이라고도 불리기도 한다.
- 즉 이러한 전처리과정 및 특징 추출이 머신러닝에서 중요하다
- 계산 과정의 속도를 높이는데에도 전처리 과정을 활용하기도 한다.
- 예를 들면) 얼굴 인식을 하는데에 있어 높은 해상도 이미지 전체를 다루기는 어렵기 때문에 얼굴의 특정 부분에 대한 특징만을 가지고 설계하는 등
- 예를 들 수 있는 특징
- 주어진 이미지에서 사각형 모양 소구역의 평균 영상 강도 계산 등
- 차원 감소(ex PCA)
- 이렇게 전처리를 하다 보면, 정보들을 버리게 되는데 잘못 처리를 하면 시스템의 정확도가 악하될 수 있음!
- 주어진 훈련 데이터가 입력 벡터+표적 벡터로 이루어져 있으면 지도 학습(supervised learning) 문제라고 한다.
- 대표적으로는 분류(classification) 문제는 제한된 숫
- 기대되는 출력값이 하나 또는 그 이상의 연속값인 경우는 회귀(regression) 문제라고 함
- 훈련 데이터가 해당 표적 벡터 없이 오직 입력 벡터 x만 있는 경우는 비지도 학습(unsupervised learning) 문제라고 한다.
- 대표적으로 집단화(clustering) (ex. k-means clusetering)
- 데이터의 분포를 찾는 밀도 추정(density estimation)
- 높은 차원의 데이터를 이차원 또는 삼차원 투영하여 시각화(visualization) 등이 있음 (ex. t-SNE)
- 딥러닝에서는 auto-encoder / colorization / language modeling 등이 있음
- 마지막으로는 강화 학습 (reinforcement learning)이 있다.
- 강화 학습은 지도 학습과 다른 구성을 가지고 있음
- 일반적으로 연속된 상태와 행동들이 문제의 일부로 주어지게 된다.
- 예를 들면) 윷놀이 등이 있을 수 있음
- 요즘엔 누구나 아는 아타리 게임, 알파고, 스타크래프트 AI 등이 있음.
- 이러한 문제를 풀 때는, 네트워크가 수백만번 이상 게임을 함으로써 플레이 과정을 배우게 된다.
- 배우는 방법은 보상이라는 개념이 게임이 끝날 때 주어지는 형식이다.
- 신뢰 할당등이 문제의 예다.
- 일반적으로 탐사(exploration)과 이용(exploitation)간의 trade-off 구성이다.
- 탐사는 얼마나 새롭게 안가본길을 가는 지를 의미함.
- 이용은 이때까지 경험으로 어떤 길을 가면 좋은지를 의미함.
Reference
댓글
댓글 쓰기