패턴인식과 머신러닝을 공부하고 내용을 정리한 포스팅입니다.
1. 소개
위 그림과 같은 손글씨로 쓰인 숫자를 인식하는 예시를 살펴보겠습니다. 각 숫자는 28 x 28 픽셀 이미지이며, 따라서 784개의 실수로 구성된 벡터로 표현될 수 있습니다. 이런 벡터 X를 입력값으로 받았을 때 숫자 0~9 중 하나의 값을 올바르게 출력하는 기계를 만드는 것입니다.
머신 러닝을 적용하면 좋은 결과를 얻을 수 있습니다.
머신 러닝 : N개의 숫자들 {$x_1, ... , x_N$}을 훈련 집합(training set)으로 활용해서 변경 가능한 모델의 매개변수들을 조절하는 방법
훈련 집합(training set) : 손글씨 숫자 데이터 N개, {$x_1, ... , x_N$}
표적 벡터(target vector) : 훈련 집합에 있는 숫자들의 카테고리(정답), 각각의 숫자 이미지(훈련 집합) x에 대한 표적 벡터 t는 하나입니다.
머신 러닝 알고리즘의 결과물 : 함수 y(x)로 표현
y(x) : 새로운 숫자 이미지 x를 입력값으로 받았을 때 벡터 y를 출력하는 함수, 정확한 형태는 훈련 단계(training phase)에서 훈련 집합을 바탕으로 결정,
시험 집합(test set) : 한 번 훈련되고 난 모델은 새로운 숫자 데이터인 시험 집합(test set)으로 성능 평가
일반화(generation) : 훈련 단계에서 사용되지 않았던 새로운 데이터들을 올바르게 분류하는 능력
전처리(preprocessed) : 입력 변수들을 새로운 변수 공간으로 전환하여 문제를 더 쉽게 해결할 수 있도록 하는 것.
ex) 숫자 데이터들을 변환, 축소, 확대 -> 각 숫자들의 위치와 척도가 같기 때문에 알고리즘이 각각의 클래스ㅡㄹ 구별해 내기가 더 쉬워집니다.
특징 추출(feature extraction) : 전처리 과정의 다른 이름
차원 감소(dimensionality reduction) : 하나의 전처리 방법, 계산 과정의 속도를 높이기 위해 활용하며 모든 데이터를 다 사용하는 대신, 유용한 특징들을 찾아내서 사용.
ex) 주어진 이미지에서 crop하여 평균 영상 강도를 계산.
지도 학습(supervised learning)은 주어진 훈련 데이터가 입력 벡터와 그에 해당하는 표적 벡터로 이주어지는 문제들을 의미합니다. 종류는 다음과 같습니다.
분류(classification) : 각각의 입력 벡터를 제한된 숫자의 분리된 카테고리 중 하나에 할당하는 문제. 위 숫자 인식 문제가 해당합니다.
회귀(regression) : 기대되는 출력값이 하나 또는 그 이상의 연속된 값일 경우의 문제. 예를 들어, 반응 물질의 농도, 온도, 압력이 주어졌을 경우 화학 반응을 통해 결과물이 얼마나 산출될 것인지 예측하는 문제가 있습니다.
비 지도 학습(unsupervised learning)은 훈련 데이터가 표적 벡터 없이 오직 입력 벡터 x로만 주어지는 경우의 문제입니다. 종류는 다음과 같습니다.
집단화(clustering) : 데이터 내에서 비슷한 예시들의 집단을 찾는 문제
밀도 추정(densirt estimation) : 입력 공간에서의 데이터의 분포를 찾는 문제
시각화(visualization) : 높은 차원의 데이터를 이차원 또는 삼차원에 투영하여 이해하기 쉽게 만들어 보여주는 것
강화 학습(reinforcement learning)은 주어진 상황에서 보상을 최대화하기 위한 행동을 찾는 문제를 푸는 방법입니다. 알고리즘에 입력값과 최적의 출력값을 예시로 주지 않습니다. 입력값을 받았을 때 이길 수 있는 다음 플레이를 출력 값으로 내놓을 수 있도록 학습되어야 합니다. 이러한 학습은 알고리즘 복사본과 많은 수의 게임을 수행하게 함으로써 가능해집니다.
보상은 오직 게임이 끝났을 때 승리라는 형태로 주어집니다. 보상은 최종 승리까지 이끄는 모든 선택지에 대해서 잘 분배되어야 합니다. 강화 학습은 탐사(exploration)와 이용(exploitation)간에 트레이드 오프(균형)가 있습니다. 탐사와 이용 중 어느 하나에 너무 집중한 알고리즘은 좋지 않은 결과를 내놓습니다.
신뢰 할당(credit assignment) : 어떤 것이 보상을 받기 위한 좋은 선택지, 덜 좋은 선택지인지 보상을 분배하는 것.
탐사(exploration) : 시스템이 새로운 종류의 행동을 시도하여 각각이 얼마나 효과적인지 확인
이용(exploitation) : 시스템이 높은 보상을 주는 것으로 알려진 행동들을 시행
'수학 > 기타 정리' 카테고리의 다른 글
[통계학] 최대 우도 추정법(Maximum Likelihood) (0) | 2021.03.13 |
---|---|
[MML] ch 2.3 연립 방정식의 해(Solving Systems of Linear Equation) - 1 (0) | 2021.03.13 |
[MML] ch 2.2 행렬(Matrices) (0) | 2021.03.12 |
[MML] 2.1 Systems of Linear Equations(연립 방정식) (0) | 2021.03.09 |
[MML] ch 2. 선형 대수학(Linear Algebra) (0) | 2021.03.06 |