Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Peephole Connection
- Linear
- DL
- Skip Connection
- python
- Inception Module
- Skip Connectioin
- GCN
- version
- Vanilla RNN
- classification
- GoogLeNet
- Inception V1
- Generative
- iTerm2
- jupyter
- DCGAN
- Residual Connection
- Bottleneck Layer
- AI
- cnn
- RNN
- ResNet
- vim-plug
- Regression
- Gated Skip Connection
- sigmoid
- Optimizer
- virtualenv
- Manager
Archives
- Today
- Total
IT Repository
(1) What is Deep Learning? 본문
Scope of AI¶
- AI
- 명시적이거나(explicitly) 암시적으로(implicitly) 계획(방법)을 통해 어떤 문제를 해결하는 방법의 총칭
- Macine Learning (ML)
- 명시적인 계획이 아니라 암시적인 계획을 통해 문제해결 방식 (예를 들면 Logistic regression)
- Representation Learning
- 표현학습은 ML을 통해 학습하는 feature들을 기존보다 조금 더 잘 또는 유연하게 학습할 수 있도록 유도
- 예를 들어, Logistic regression을 Shallow neural network를 통해 하는 것
- 크게 대두되는 방식이 아니라 넘어가셔도 좋습니다.
- Deep Learning (DL)
- Deep neural network
- 기존의 ML이 암시적인 방법을 통해 문제를 해결했지만 feature들을 추출함에 있어서는 사람의 손을 필요로 하는 부분이 있었음
- 이러한 수동적인 feature 추출방식을 뉴럴 네트워크가 스스로 유용한 feature를 추출할 수 있도록 함
(위 개념의 순서는 Scope의 크기 순서입니다.)
Categories of ML Problems¶
ML 분야에서는 해결하고자 하는 Task를 Problem 이라고 표현 합니다.
아래는 Problem들의 종류를 설명하고 구분하였습니다.
앞으로 여러분들이 해결해야 하는 문제는 분류 속에서 속하게 됩니다.
학습법→ Output space↓ |
Supervised Learning | Unsupervised Learning | Reinforcement Learning |
---|---|---|---|
Discrete | Classification | Clustering | Discrete Action Space Agent |
Continuous | Regression | Dimensionality Reduction |
Continuous Action Space Agent |
(Regression, Dimensionality Reduction는 Semi-Supervised Learning으로 볼 수도 있습니다.)
- Learning
- Supervised Learning: 데이터와 그 답을 함께 학습시키는 경우
- Unsupervised Learning: 데이터 만으로 학습을 하는 경우
- Reinforcement Learning: 데이터와 답이 모두 주어지지 않는 상황에서 어떤 행동을 했을 때 가장 좋은지, 즉 행동가치함수를 정의하여 학습하는 경우
- Outer space
- Discrete
- 이산형 데이터 라고도 합니다.
- 0, 1, 2, 3, ... 과 같이 개수를 정의할 수 있는 데이터를 말합니다.
- Continuous
- 연속형 데이터 라고도 합니다.
- 0 ~ 1 사이의 실수와 같이 개수를 정의할 수 없는 데이터를 말합니다.
- 따라서, 통계학에서는 일반적으로 개수가 아니라 구간으로 표현합니다.
- Discrete
- Regression
- $x$(데이터)와 $y$(답)를 인풋으로 사용하여 함수 $f(x)$를 학습
- $x$에 대한 $y$의 경향을 학습하여, 새로운 인풋 $x'$이 입력되었을 때의 $y$를 예측하는 문제
- 입력값에 대해 0, 1, 2, ... 등으로 구분된 값이 출력되는 것이 아니므로 Continuous
- 함수의 선형성 여부에 따라 Linear regression, Non-linear regression으로 구분
- ML으로도 Non-linear regression이 가능하지만, 데이터가 복잡한 분포를 가질 수록 한계에 다다르기 때문에 DL을 사용하면 유용
- 예) 집 값 예측이나 주가 예측 등
- Classification
- $x$(데이터)와 $y$(답)를 인풋으로 사용하여 함수 $f(x)$를 학습
- $x$에 대한 $y$의 경향을 학습하여, 새로운 인풋 $x'$이 입력되었을 때의 $y$를 예측하는 문제
- 단, 입력된 x로부터 y값이 특정 레이블로 도출되므로 Discrete한 Outer space를 가짐
- 구분해야 할 레이블에 따라 Binary Classification(2개), Multi-class Classification(2개 이상)로 구분
- 예) 강아지와 고양이의 분류, 학점의 분류 등
- Clustering Problem
- 답이 주어지지 않은 상태에서 데이터 간의 유사성 만을 통해 군집화하는 것 (Automatic grouping of instances)
- 데이터 간의 Similarity 또는 Distance를 계산해서 비슷한 종류끼리 모으는 작업을 수행
- 기존 ML 테크닉을 적용한다면, Feature selection/extraction을 직접 하고 feature들 간의 Distance나 Similarity를 바탕으로 군집
- DL 테크닉을 적용한다면 feature extraction을 DL모델이 수행하는 장점이 있음
참고.
feature selection : 사람이 role-based 로 feature를 고르거나 프로그래밍하여 선택
feature extraction : 통계적인 기법 혹은 ML, DL 테크닉을 통해 유효하다고 여겨지는 feature를 뽑아내는 것
- Dimensionality Reduction
- 불필요한 정보가 섞인 고차원의 데이터를 유용하고 압축된 정보를 가진 저차원으로 줄이는 것
- 차원을 줄이는 이유
- 차원의 저주 효과를 피하기 위해서
- 차원의 저주 (curse of dimensionality) 란?
데이터의 차원이 올라갈 수록 불필요한 데이터 때문에 거리값이 방해받는 정도가 심해져서, 고차원 공간에서 계산되는 유클리디안 거리가 의미가 없게 되는 현상
- 차원을 압축함으로써 얻는 성능적인 장점이 많아서, 다른 Problem에서 함께 사용되는 일이 많음
- 대표적인 Dimensionality Reduction으로는
통계학에서 사용하는 기초적인 차원 축소방법인 PCA가 있으며, 데이터의 분산이 커지는 방향으로 차원을 축소해야 데이터가 덜 겹치고 손실이 적어짐
(이해가 어렵다면 넘어가셔도 좋습니다.)
ML 모델이 학습한다는 것은 결국, 레이블을 결정하는 Decision boundary를 학습하는 것을 말합니다.
이에 대해서는 추후에 Regression 문제를 다루면서 설명합니다.
'Introduction' 카테고리의 다른 글
(5) Classification - Multinomial (0) | 2020.01.06 |
---|---|
(4) Classification - Binary (0) | 2020.01.06 |
(3) Regression - Multi variable Linear Regression (0) | 2020.01.05 |
(2) Regression - Linear Regression (0) | 2020.01.05 |
Comments