인공지능의 영역
-
위 그림에서 알 수 있듯이, 인공지능은 크게 기계 학습(machine learning), 자연어 처리(natural language processing), 전문가 시스템(expert system), 컴퓨터 비전(vision), 스피치(speech), 계획(planning), 그리고 로보틱스(robotics)로 구분된다.
-
기계 학습은 경험을 통해 자동으로 개선하는 컴퓨터 알고리즘 연구 분야로, 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야이다.
-
기계 학습의 핵심은 표현(representation)과 일반화(generalization)에 있으며, 표현이란 데이터의 평가이며 일반화란 훈련 이후 새롭게 들어온 데이터를 정확히 처리할 수 있는 능력을 말한다.
-
기계 학습과 데이터 마이닝은 종종 같은 방법을 사용하여 중첩되는데 다음과 같은 차이가 존재한다.
-
기계 학습은 훈련 데이터를 통해 학습된 알려진 속성을 기반으로 예측하는데 초점을 둔다.
-
데이터 마이닝은 데이터의 미처 몰랐던 속성을 발견하는 것에 집중한다.
-
-
기존 프로그램은 동작이 명시된 explicit programming 인 반면, 기계 학습이 적용된 프로그램의 경우 컴퓨터가 스스로 데이터를 학습하는 프로그램이라 볼 수 있다.
-
기계 학습 알고리즘은 여러 가지 종류가 있으며 데이터의 유형(연속형/범주형)과 학습 목적에 따라 다음과 같이 나눠볼 수 있다.
-
분류
-
[범주형] 퍼셉트론
-
[범주형] 로지스틱 회귀
-
[범주형] 신경망
-
[범주형] 서포트 벡터 머신
-
[범주형] k-최근접 이웃 탐색
-
[범주형] 나이브 베이즈
-
[연속형/범주형] 결정 트리
-
[연속형/범주형] 랜덤 포레스트
-
[연속형/범주형] GBDT
-
-
회귀
-
[연속형] 선형 회귀
-
[연속형] 다항 회귀
-
-
군집화 및 차원축소
-
[연속형] 특이값 분해
-
[연속형] 주성분 분석
-
[연속형] K-Means
-
-
연관 분석
-
[범주형] 연관 규칙(A priori algorithm)
[범주형] FP-Growth
-
-
은닉 마르코프 모형
-
기계 학습의 영역
-
심층 학습(Deep Learning)은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions)를 시도하는 기계 학습 알고리즘의 집합으로 정의된다. (by 위키백과)
-
"높은 수준의 추상화"란 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업을 말한다.
-
"비선형 변환기법의 조합"이란 비선형 함수들로 구성된 복합 함수를 의미하며, 복합 함수를 찾을 수 있도록(=함수의 매개변수를 찾는 행위) 인공 신경망을 설계하는 학문이 심층 학습에 해당된다.
-
초기의 인공 신경망 모델인 퍼셉트론(perceptron)은 2차원 좌표계에서 선형 함수로 영역을 구분할 수 있는 단층 퍼셉트론(입력과 출력만 받는 구조)이었지만, XOR 게이트 문제를 해결하기 위해 중간에 선형 분리를 하는 층(Layer)을 추가하여 비선형 함수로도 영역을 구분할 수 있는 다층 퍼셉트론(입력과 출력을 받는 층 사이에 연산을 수행하는 층이 추가된 구조)으로 발전하였다.
-
이처럼 입력층과 출력층 사이에 은닉층이 2개 이상 존재하는 경우 심층 신경망(Deep Neural Network)이라고 하며 층이 늘어날수록 시간 복잡도가 매우 커지기 때문에 이를 최적화할 수 있는 연구가 계속 진행되오고 있다.
-
-
지도 학습(Supervised Learning)은 훈련 데이터로부터 하나의 함수를 유추해내기 위한 기계 학습의 한 방법이다. 훈련 데이터는 일반적으로 입력에 대한 속성을 벡터(vector) 형태로 포함하고 있으며 각각의 벡터에 대해 원하는 결과가 무엇인지 표시되어 있다. (by 위키백과)
-
이렇게 유추된 함수 중 연속적인 값을 출력하는 것을 회귀 분석(regression)이라 하고 주어진 입력 벡터가 어떤 종류의 값인지 표시하는 것을 분류(classification)라고 한다.
-
"함수를 유추"라는 의미는 함수의 매개변수를 찾는 행위이다.
-
"입력에 대한 속성을 벡터 형태로 포함한다"는 것은 데이터셋의 속성이 여러 개일 경우 데이터셋이 행렬 형태가 되는 것을 의미한다.
-
"원하는 결과가 표시"라는 것은 데이터셋에 입력에 대한 출력값이 정해져 있다는 의미이며, 이러한 데이터셋을 정답이 있는 데이터(Labeled-data)라고 한다.
-
지도 학습의 목적은 훈련 데이터로부터 주어진 데이터에 대해 예측하고자 하는 값을 올바르게 추측해내는 것이다.
-
지도 학습에서는 훈련 데이터의 각 정답을 맞출 때까지 학습을 시키며, 훈련 데이터에 없는 데이터까지 맞추는 것을 목표로 하므로 테스트 데이터셋(test set)과 검증 데이터셋(validation set)을 추가로 학습시킨다.
-
-
비지도 학습(Unsupervised Learning)은 데이터가 어떻게 구성되었는지를 알아내개 위한 기계 학습의 한 방법이다. 지도 학습과 달리 입력값에 대한 목표값 혹은 출력값이 주어지지 않는다. 즉, 정답이 없는 데이터(unlabeled-data)를 학습하여 정답을 만드는 것이 목적이다.
-
군집 분석(Clustering), 차원 축소(Dimension Reduction), 연관 분석(Association) 문제를 해결할 때 이용된다.
-
지도 학습(Supervised Learning)
-
정해진 데이터라는 건, label 이 명시된 training set 을 의미하며, 아래의 그림처럼 cat 이라고 명명된 데이터를 입력으로 주어 학습시킨다. 다른 데이터가 학습된 데이터에 포함될 수 있는지 없는지를 따진다.
-
예를 들면, 종류는 다음과 같이 구분할 수 있다.
-
시간에 따른 예측: regression
-
시간에 따른 pass / non-pass: binary classification
-
시간에 따른 분류: multi-label classification
-
비지도 학습(Unsupervised Learning)
-
비지도 학습에서는 정해지지 않은 데이터 (명명되지 않은 데이터, unlabeled data)를 그룹화하거나, 구분(분류가 아니다)을 하도록 학습시킨다.
-
그리고 새로운 데이터를 학습할수록 데이터 셋에 추가되어 머신이 업데이트 된다.
기계 학습 알고리즘
-
컴퓨터가 학습하는 방식에 따라 기계 학습 알고리즘은 다음과 같이 나눌 수 있다.
-
심층 학습
-
(심층) 신경망
-
-
지도 학습
-
회귀
-
[연속형] 선형 회귀, 다항 회귀
-
-
분류
-
[범주형] 로지스틱 회귀: 이진 분류, 다중 분류
-
[범주형] k-최근접 이웃(KNN)
-
[범주형] 나이브 베이즈(Naive-bayes)
-
[범주형] 서포트 벡터 머신(SVM)
-
[연속형/범주형] 결정 트리(Decision Tree), 랜덤 포레스트(Random Forest), GBDT
-
-
-
비지도 학습
-
군집화 및 차원 축소
-
[연속형] 특이값 분해(SVD)
-
[연속형] 주성분 분석(PCA)
-
[범주형] K-means
-
-
연관 분석
-
[범주형] 연관 규칙(A-priori)
-
[범주형] FP-Growth
-
-
[범주형] 은닉 마르코프 유형
-
'Machine Learning > Theory' 카테고리의 다른 글
[지도 학습 02] 로지스틱 회귀 (0) | 2021.02.09 |
---|---|
[지도 학습 01] 선형 회귀와 다항 회귀 (0) | 2021.02.09 |
[심층 학습 03] 학습에 영향을 주는 요소 (0) | 2021.02.08 |
[심층 학습 02] 역전파법(Backpropagation) (0) | 2021.02.07 |
[심층 학습 01] 신경망(Neural Network) (0) | 2021.02.07 |