1. 지도 학습(Supervised learning)

지도 학습은 훈련 데이터에서 함수를 추론하는 작업이다. 훈련 데이터는 결과 집합과 함께 일련의 관찰로 구성된다. 훈련에 사용할 수있는 데이터 세트를 라벨링 한 경우에 사용된다. 악성 또는 양성으로 분류된 인체 조직 및 세포 의료 이미지 세트가 이에 해당한다.

지도 학습은 회귀 분석, 분류 분석 등으로 세분화 할 수 있다. 회귀 분석은 수치를 예측하는 데 사용된다. 상위 회귀 알고리즘은 다음과 같다.

선형 회귀

직선을 사용한 관찰과 결과 간의 선형 회귀 모형 관계. 루트 평균 제곱 오류 및 그래디언트 디센트는 가능한 최상의 선을 맞추기 위해 사용된다. 이 방법론은 결과에 더 큰 영향을주는 요소에 대한 통찰력을 제공한다. 예를 들어, 자동차의 색상은 자동차가 고장날 확률와 강한 상관 관계를 갖지 않을 수 있지만 제조업체 / 모델은 훨씬 더 강한 상관 관계를 가질 수 있다.

다항식 회귀(Polynomial Regression)

다항식 회귀 분석은 관측치와 결과 값 간의 관계를 n 차 다항식으로 모델링 한 회귀 분석의 한 형태다. 이 곡선은 곡선에 분포 된 많은 수의 관측치를 기반으로 작성되거나 일련의 혹 및 선형이 아니다.

분류 분석

분류 분석은 범주 형 값을 예측하는 데 사용되는 일련의 기술이다. 즉, 데이터 요소를 범주에 할당한다. 스팸 전자 메일 또는 비스팸 전자 메일 또는 빨간색 대 파란색 대 녹색 개체. 상위 분류 알고리즘은 다음과 같다.

로지스틱 회귀

로지스틱 회귀는 이름이 회귀를 암시하지만 오해를 부를수 있는 명칭으로 실제로는 분류 기법이다. 그것은 악성 또는 양성, 이진 (1 또는 0) 응답의 확률을 추정하는데 사용된다. 동물, 인간 또는 자동차 등 2 개 이상의 카테고리 값을 예측하도록 일반화 할 수있다.

2. 준지도 학습(Semi-supervised learning)

지도 학습은 데이터 분류(레이블링) 작업에 많은 비용과 시간이 소요될 수 있다는 단점을 지닌다. 따라서 분류된 자료가 한정적일 때에는 지도 학습을 개선하기 위해 미분류(unlabeled) 사례를 이용할 수 있다. 이에 준지도(semi-supervised)라고 표현한다.

3. 비지도(자율) 학습(Unsupervised learning)

비지도 학습은 미분류 데이터만을 제공 받는다. 학습을 통해 클러스터링 구조(clustering structure), low-dimensional manifold, a sparse tree and graph 등과 같은 데이터의고유 패턴을 발견한다.

클러스터링(Clustering)

일정 기준에 따라 유사한 데이터 사례들을 하나의 세트로 그룹화한다. 이 과정은 전체 데이터 세트를 여러 그룹으로 분류하는 과정이다. 사용자는 고유한 패턴을 찾기 위해 개별 그룹 차원에서 분석을 수행할 수 있다.

차원 축소(Dimension Reduction)

변수 분류 차원를 줄이는 작업이다. 대체로 원 데이터(raw data)는 분류 측면에서 다양한 차원을 갖는다. 이때 일부 특징들은 중복되거나 작업과 아무 관련이 없다. 따라서 차원수(dimensionality)를 줄이면 잠재된 유의미한 관계를 도출하기 용이해진다.

4. 강화 학습(Reinforcement learning)

강화 학습은 환경으로부터 피드백을 기반으로 행위자(agent)의 행동을 분석하고 최적화한다. 최고의 보상을 산출하는 활동을 발견하기 위해 서로 다른 시나리오를 시도한다. 시행 착오(Trial-and-error)와 지연 보상(delayed reward)은 다른 기법과 구별되는 강화 학습만의 특징이다.

알고리즘 개요

1. 선형 회귀(Linear regression)와 로지스틱 회귀(Logistic regression)

머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트
머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트

▲선형 회귀(왼쪽)와 로지스틱 회귀(오른쪽)

선형 회귀는 연속적인 종속 변수 와 한 개 이상의 예측 변수  사이의 관계를 모델링하는 접근법이다. 

종속 변수가 연속형이 아니라 범주형이라면 선형 회귀는 로짓 연결(logit link) 함수를 이용해 로지스틱 회귀로 변환될 수 있다. 로지스틱 회귀는 단순하고 빠르지만 강력한 분류 알고리즘이다.

로지스틱 회귀에서는 주어진 자료가  각각의 클래스에 속할 때 그 개연성을 비교 예측하기 위해 각기 다른 가설 클래스(hypothesis class)를 사용한다.

2. 선형(Linear) SVM 및 커널(Kernel) SVM

커널 트릭(기법)은 분리 가능한 비선형 함수를 다차원 분리 가능한 선형 함수로 매핑하기 위해 사용된다. 서포트 벡터 머신(SVM; support vector machine) 학습 알고리즘은 초평면(hyperplane)의 일반 벡터(normal vector) ‘w’와 편향 값(bias) ‘b’로 표현되는 분류기(classifier)를 찾는다. 이러한 초평면(경계)은 가능한 최대 오차(margin)로 각기 다른 클래스를 분리한다. 그러면 문제를 제약 조건이 있는(constrained) 최적화 문제로 변환할 수 있다.

머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트
머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트

▲커널 트릭(기법)은 분리 가능한 비선형 함수를 다차원의 분리 가능한 선형 함수로 매핑하기 위해 사용된다.

3. 의사결정 트리, 앙상블 트리(ensemble tree)

머신러닝, 인공지능, 데이터과학자,


의사결정 트리, 랜덤 포레스트(random forest), 그래디언트 부스팅(gradient boosting)은 모두 의사결정 트리를 기반으로 한 알고리즘이다. 의사결정 트리는 훈련 데이터에서 간단한 의사 결정 규칙을 학습해 예측하는 모델이다. 다양한 종류의 트리가 있지만, 모두 동일한 작업을 수행한다. 즉 특징 공간(feature space)을 거의 같은 레이블로 구별되도록 분리한다. 의사결정 트리는 이해와 구현이 쉽지만 가지를 다 쳐내고 트리의 깊이가 너무 깊어질 경우 데이터를 과적합(overfit)하는 경향이 있다. 랜덤 포레스트와 그래디언트 부스팅은 일반적으로 높은 정확성을 달성하고 과적합 문제를 해결하기 위해 트리 알고리즘을 사용하는 두 가지 방법이다.

4. 신경망과 딥러닝

머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트

▲컨볼루션 신경망(convolution neural network) 아키텍처

신경망은 병렬 분산 처리 능력 덕분에 1980년대 중반 크게 성장했다. 그러나 신경망 매개 변수를 최적화하기 위해 널리 사용된 역전파(back-propagation) 학습 알고리즘이 효과가 없어 신경망 연구가 지연됐다. 이후 컨벡스(볼록) 최적화(convex optimization) 문제가 해결됨으로써 쉽게 학습할 수 있는 서포트 벡터 머신(SVM)과 여타 단순한 다른 모델들이 서서히 머신러닝의 신경망을 대체했다.

비지도 사전 학습(unsupervised pre-training), layer-wise greedy training 등의 학습 기법들은 신경망에 대한 관심을 제고했다. GPU(graphical processing unit)와 MPP(massively parallel processing) 등 강력한 연산 능력은 신경망의 새 원동력이 됐다.

신경망 연구는 얕은(shallow) 신경망이 심층 신경망, 딥러닝으로 진화하는 계기가 됐다. 심층신경망은 지도 학습에 매우 성공적이었다. 딥러닝은 음성이나 이미지 인식에 사용될 때 인간만큼 또는 심지어 인간보다 더 나은 성능을 보인다. 또 딥러닝은 특징 추출과 같은 비지도 학습 과제에 적용될 때 인간의 개입이 훨씬 줄어든 상황에서 원 이미지(raw images)나 음성으로부터 특징을 추출할 수 있다.

신경망은 입력 계층(input layer), 은닉 계층(hidden layers), 출력 계층(output layer)의 세 부분으로 구성된다. 학습 표본(training samples)은 입력 및 출력 계층을 정의한다. 출력 계층이 범주형 변수일 때 신경망은 분류 문제를 해결한다. 출력 계층이 연속 변수일 때 신경망은 회귀 작업을 위해 사용될 수 있다. 또 출력 계층이 입력 계층과 동일할 때 신경망은 고유한 특징을 추출할 수 있다. 이때 은닉 계층의 수는 모델 복잡성과 모델링 수용력(capacity)을 결정한다.

5. K-최근접 이웃(K-Nearest Neighbor)

K-Nearest Neighbor 는 객체가 다수표( majority vote)로 분류되는 기법이다. 꽃 이미지를 해바라기 또는 장미로 분류할 경우, K가 3으로 선택되면 3의 가장 가까운 분류 이웃 중 2 개 또는 3 개 모두가 동일한 꽃에 속해야 테스트 샘플 이미지가 된다. 그 꽃 클래스를 지정, 분류에 사용되는 각 차원 (예 : 색상 및 시험 샘플의 색상을 다른 미리 분류된 꽃 이미지의 색상에 근접시키는 방법)에 대해 근거리가 측정된다. 관측치가 가장 가까운 K 개의 이웃 사이에서 가장 공통 클래스에 할당 된 것은 이웃이다. K의 최선의 선택은 일반적으로 데이터에 달려 있다. K의 값이 클수록 노이즈가 분류 번호에 미치는 영향이 줄어 든다.

6. K-평균/K-모드(k-means/k-modes), 가우시안 혼합 모델(GMM; Gaussian mixture model) 클러스터링

머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트
머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트

▲K-평균 클러스터링(왼쪽)과 가우시안 혼합 모델

K-평균/K-모드 클러스터링과 GMM 클러스터링의 목표는 n개의 관측치(observations)를 k개의 클러스터로 나누는 것이다. K-평균은 표본을 하나의 클러스터에만 강하게 결속시키는 ‘하드 할당(hard assignment)’를 의미한다. 반면 GMM은 각 표본이 확률 값을 갖는다. 어느 한 클러스터에만 결속되지 않는 ‘소프트 할당(soft assignment)’을 의미한다. 두 알고리즘 모두 클러스터 k의 수가 주어질 때 클러스터링을 빠르고 단순하게 수행할 수 있다.

7. DBSCAN

머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트

▲DBSCAN 도해(이미지 출처: Wikipedia)

클러스터 k의 수가 주어지지 않을 때에는 밀도 확산(density diffusion)을 통해 표본을 연결, DBSCAN(density-based spatial clustering)을 사용할 수 있다.

8. 계층적 군집화(Hierarchical clustering)

머신러닝, 인공지능, 데이터과학자, 데이터사이언티스트

계층적 분할은 트리 구조 덴드로그램(dendrogram)를 이용해 시각화할 수 있다. 각기 다른 K를 사용해 클러스터를 정제하거나 최대화할 수 있다. 각기 다른 세분화(granularities) 수준에서 입력과 분할 결과를 확인할 수 있다.

9. PCA, SVD, LDA

일반적으로 머신러닝 알고리즘에 많은 수의 특징을 직접 투입하는 것은 선호되지 않는다. 따라서 주성분 분석(PCA; principal component analysis), 특이값 분해(SVD; singular value decomposition), 잠재 디리클레 할당(LDA; latent Dirichlet allocation)을 이용해 차원 축소를 수행할 수 있다.

PCA는 원래의 데이터 공간을 저차원의 공간으로 매핑하면서 가능한 많은 정보를 보존하는 비지도 클러스터링 방식이다. PCA는 기본적으로 데이터 분산(variance)을 가장 많이 포함하는 하위 공간(subspace)을 찾는다. 하위 공간은 데이터의 공분산 매트릭스(covariance matrix)의 지배적인 고유 벡터(eigenvectors)에 따라 정의된다.

SVD는 중앙 데이터 매트릭스의 SVD(특징 vs. 표본)가 PCA로 찾은 것과 동일한 하위 공간을 정의하는 지배적인 left singular vectors를 제공한다는 점에서 PCA와 관련돼 있다. 그러나 SVD는 PCA가 할 수 없는 작업을 수행할 수 있는 기법이다. 예를 들어, 사용자 vs. 영화 매트릭스의 SVD는 추천 시스템에서 사용할 수 있는 사용자 프로파일과 영화 프로파일을 추출할 수 있다. 또 SVD는 자연어 처리(NLP; natural language processing) 과정에서 잠재 의미 분석(latent semantic analysis)으로 알려진 주제 모델링(topic modeling) 도구로서 널리 사용된다.

자연어 처리(NLP)와 관련된 기법은 잠재 디리클레 할당(LDA)이다. LDA는 확률적 주제 모델(probabilistic topic model)로 가우시안 혼합 모델(GMM)이 연속 데이터를 가우시안 밀도로 분해하는 것과 비슷한 방식으로 문서를 주제를 기준으로 분리한다. GMM과 다르게 LDA는 이산 데이터(discrete data, 문서 내 단어)를 모델링하고, 주제는 디리클레 분포(Dirichlet distribution)에 따라야 하는 제약이 있다.

*참고: SAS 공식 블로그,오라클블로그