기계 학습 알고리즘은 자료로부터 뭔가를 학습하는 능력을 가진 알고리즘이다.
학습이란 "한 컴퓨터 프로그램이 어떤 과제류 T 에 속하는 과제들을 수행하며 그 수행의 성과를 측정한 측도가 P 라고 할 때, 만일 어떤 경험 E 때문에 T 의 어떤 과제에 대한 성과 측도 P 가 개선되었다면, 그 컴퓨터 프로그램은 경험 E 로 부터 학습한다고 말할 수 있다."
5.1.1 과제 T
과학과 철학의 관점에서 기계 학습이 흥미로운 것은, 기계 학습을 이애하면 지능에 깔린 원리들을 좀 더 잘 이해할 수 있을 것이다.
기계 학습을 구성하는 한 요소인 과제의 이러한 비교적 공식적인 정의에서, 학습 과정 자체는 과제가 아니다. 학습은 과제를 수행하는 능력을 얻기 위한 수단이다.
기계 학습의 과제는 일반적으로 기계 학습 시스템이 견본을 처리하는 방식을 서술하는 형태로 정의된다. 여기서 견본이란 기계 학습 시스템의 처리 대상인 어떤 물체나 사건으로부터 정량적으로 측정한 특징들의 집합이다.
기계 학습의 과제 몇 가지
- 분류 classification : 주어진 입력이 k 개의 범주 중 어떤 범주에 속하는지 판단해야 한다. 일반적으로, 이 과제를 풀기 위한 학습 알고리즘은 하나의 함수 f : R^n → {1,...,k} 를 산출해야 한다. y = f(x) 라고 할 때, 학습 모형은 벡터 x 로 표현된 하나의 입력을 수치 부호 y 가 나타내는 한 범주에 배정한다.
- 기본적인 형태에서 변형된 분류 과제들도 있는데, 함수 f 가 부류들에 관한 확률분포를 산출하는 경우도 있다. 분류 과제의 좋은 예는 물체 인식이다.
- 결측 입력이 있는 자료의 분류 classification with miss input : 입력 벡터의 모든 측도가 항상 제공된다는 보장이 없을 때는 분류가 좀 더 어려워진다. 보통의 경우 학습 알고리즘이 분류 과제를 푸는 데 필요한 것은 입력 벡터를 출력 범주로 사상하는 하나의 함수를 배워서 정의하는 것 뿐이다. 그러나 결측 입력이 있는 환경에서는 학습 알고리즘이 하나의 분류 함수가 아니라 여러 분류 함수들의 집합을 배워야 한다. 그러한 집합의 각 함수는 입력의 서로 다른 결측값들의 부분집합으로 x 를 분류하는 분류함수이다.
- 회귀 regression 컴퓨터 프로그램은 주어진 입력에 기초해서 하나의 수치를 예측해야 한다. R^n → R 의 함수를 배워야 한다.
- 전사 transciption : 구조적이지 않은 형태로 ㅇ표현된 어떤 자료를 입력받아서 그 자료에 있는 정보를 이산적인 텍스트 형식으로 출력해야 한다.
- 기계 번역 machine translation : 기계 번역 과제의 입력은 어떤 언어의 기호들로 이루어진 문자열이다. 컴퓨터 프로그램은 그러한 입력을 다른 언어의 기호들로 이루어진 문자열로 변환해야 한다.
- 구조적 출력 structured output : 출력이 하나의 벡터이고 벡터의 성분들 사이에 중요한 관계가 존재하는 형태의 모든 과제를 말한다.
- 비정상 검출 anomaly detection :일단의 사건들 또는 물체들을 살펴보고 그중 특이하거나 비정상적인 것들을 골라낸다.
- 합성과 표본추출 synthesis and sampling : 훈련 자료에 있는 견본들과 비슷한 새 견본들을 생성해야 한다.
- 결측값 대체 imputation of missing values : ㅇ
- 잡음 제거 denoising
- 밀도 추정 density estimation, 확률질량함수 추정 porbability mass functoin estimation
5.1.2 성과 측도 P
기계 학습 알고리즘의 능력을 평가하려면 그 성과를 수치로 측정한 측도 measure 를 고안할 필요가 있다. 일반적으로 그러한 성과 측도 P 는 시스템이 수행하는 과제 T 에 따라 다를 수 있다.
분류나 결측 입력이 있는 자료의 분류, 전사 같은 과제들에서는 모형의 정확도 accuracy 를 성과 측도로 사용할 때가 많다. 정확도는 주어진 견본 전체 중 모형이 정확한 결과를 출력한 견본들의 비율이다. 오류율 error rate, 모형이 틀린 겨로가를 출력한 결본들의 비율로도 그와 동등한 정보를 얻을 수 있다.
오류율을 기대 0-1 손실이라고 부르는 경우가 많다. 구체적인 하나의 견본에 대한 0-1 손실은 만일 그 견본이 정확히 분류되었으면 0, 그렇지 않으면 1 이다.
한편, 밀도 추정 같은 과제에서는 정확도나 오류율, 또는 다른 종류의 0-1 손실 같은 측도가 말이 되지 않는다. 그런 과제에서는 각 견본에 하나의 연속값 점수를 부여하는 성과 측정 방법이 필요하다.
가장 흔히 쓰이는 접근 방식은 학습 모형이 일부 견본들에 부여한 평균 로그 확률 log-probability 를 사용하는 것이다.
일반적으로 우리가 관심을 두는 것은 이전에 입력한 적이 없는 자료에 대한 기계 학습 알고리즘의 성과이다. 그러한 성과 측도를 얻기 위해, 기계 학습 시스템을 훈련하는 데 사용한 것과는 다른 시험 자료 집합으로 학습 시스템의 성과를 측정한다.
때에 따라서는 무엇을 측정할 것인지 결정하기 어렵기 때문에 성과 측도의 선택이 어려울 수 있다.
한편, 측정하기에 적합한 수량들이 명확하긴 하지만 실제 측정 자체가 비현실적일 때도 있다.
최선의 확률 모형 중에는 확률분포를 오직 암묵적으로만 표현하는 것들이 많다. 그런 모형에서는 공간의 특정한 점에 부여된 실제 확률의 계산이 처리 불가능이다.
5.1.3 경험 E
비지도 학습, 지도 학습으로 나뉘는데
대부분의 기계 학습 알고리즘은 자료 집합 전체를 경함할 수 있는 부류에 속한다.
자료 집합은 다수의 견본을 모은 것이다. 자료 집합을 구성하는 견본을 자료점이라고 부르기도 한다.
비지도 학습 알고리즘은 다수의 특징을 담은 자료 집합을 경험하고, 구조가 가진 유용한 성질들을 배운다. 심층 학습의 맥락에서 학습 알고리즘의 목표는, 주어진 자료 집합을 만들어 낸 생성원에 해당하는 전체 확률분포를 명시적으로 또는 암묵적으로 학습하는 것이다. 군집화 같은 다른 과제를 수행하는 비지도 학습 알고리즘도 있다.
비지도 학습은 한 확률벡터 x 의 여러 견본을 관측해서 확률분포 p(x) 자체 또는 그 분포의 어떤 흥미로운 성질을 암묵적으로 또는 명시적으로 배우려 하는 것이다. 반면, 지도 학습에서는 확률벡터 x 와 그에 연관된 어떤 값 또는 벡터 y 의 여러 견본을 관측해서, x 로부터 y 를 예측하는 방법을 배우려 한다.
이때, 흔히 p(y|x) 를 추정함으로써 y 를 예측한다.
확률의 연쇄법칙에 따르면 벡터 x ∈ R^n 에 대한 결합확률분포를 다음과 같이 분해할 수 있다.
이러한 분해가 뜻하는 것은 p(x) 를 모형화하는 하나의 비지도 학습 문제를 n 개의 지도 학습 문제로 분할할 수 있다는 것이다.
반대로, p(y|x) 를 학습하는 지도 학습 문제를 전통적인 비지도 학습 기술들을 이용해서 풀 수도 있다.
그런 경우 학습 알고리즘은 결합분포 p(x,y) 를 배운 후 다음을 추론한다.
기계 학습 알고리즘으로 할 수 있는 일들을 개괄적으로나마 분류할 때 실제로 도움이 된다.
'심층 학습 (아인 굿펠로, 오슈아 벤지오, 에런 쿠빌)' 카테고리의 다른 글
5.2 수용력, 과대적합, 과소적합 (0) | 2023.11.07 |
---|---|
5.1.4 예제 : 선형회귀 (0) | 2023.11.01 |
5. 기계 학습의 기초 (0) | 2023.10.24 |
4.3 기울기 벡터 기반 최적화 (1) | 2023.10.23 |
4.2 나쁜 조건 (0) | 2023.10.23 |