deview deep learning-김정희

34
Deep Learning Machine Learning with Deep Neural Network 김정희 부장 / 딥러닝 연구 Lab NAVER LABS

Upload: naver-d2

Post on 13-Jan-2015

14.795 views

Category:

Documents


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Deview deep learning-김정희

Deep Learning Machine Learning with Deep Neural Network

김정희 부장 / 딥러닝 연구 Lab NAVER LABS

Page 2: Deview deep learning-김정희

CONTENTS 1. 왜 다시 Deep Learning 인가?

2. Deep Learning Tips����������� ������������������  

3. Deep Learning 과 Speech Recognition����������� ������������������  

Page 3: Deview deep learning-김정희

1. 왜 다시 Deep Learning 인가?

Page 4: Deview deep learning-김정희

1.1 Deep Neural Network

Deep Neural Network (DNN) 1.  1 개 이상의 Hidden Layer를 가진 Neural Network

Non Linear

Activation Sigmoid

C_1 C_2 C_n

���

���

���

���

Input Layer

Output Layer

Hidden Layer

Weight

Page 5: Deview deep learning-김정희

1.1 Deep Neural Network

Non Linear

Activation Sigmoid

C_1 C_2 C_n

���

���

���

���

Hidden Layer

Weight

‘학교’, ‘학과’ ‘고양이’, ‘호랑이’

Page 6: Deview deep learning-김정희

1.1 Deep Neural Network

[InputVector]T

tanhsigmoid

WeightMatrix!

"#

$

%&

T tanhsigmoid

Linear Multiplication

Non-Linear Activation

WeightMatrix!

"#

$

%&

T

Page 7: Deview deep learning-김정희

1.2 Deep Learning의 부활

New Algorithms Big Data GPU

DNN-Back propagation 1.  1980년대에 개발된 방법

2.  Overfitting 문제와 느린 학습으로 인해, Shallow Learning – SVM, GMM 에 완전히 밀림

Page 8: Deview deep learning-김정희

1.2 Deep Learning의 부활

New Algorithms Big Data GPU

Re-Birth

Page 9: Deview deep learning-김정희

1.2 Deep Learning의 부활

New Algorithms Big Data GPU

‘망설이는 호랑이는 벌보다 못하다’ – 사기열전 한신

Page 10: Deview deep learning-김정희

1.3 New Algorithms

Pre-Training : Restricted Boltzmann Machine (RBM) 1.  2000 년 대 Deep Learning 의 새로운 시작

2.  Unsupervised & Generative Training

Drop-Out 1.  2010 년 대 Overfitting 을 방지하기 위한 효율적 방법

2.  Regularizer by Randomness

Page 11: Deview deep learning-김정희

1.4 Pre-Training with RBM

Page 12: Deview deep learning-김정희

1.5 Restricted Boltzmann Machine

Pre-Training : Restricted Boltzmann Machine (RBM) 1.  Hidden Node 들 끼리, Visible Node 들 끼리는 Independent

2.  Hidden Node 와 Visible Node 사이의 Weight는 Bipartite

V_1 … V_M

H_1 … H_N

Visible

Hidden

Page 13: Deview deep learning-김정희

1.6 Learning Restricted Boltzmann Machine

New Algorithm GPU Big Data

Generative Training 1.  p( Label | Image )를 Maximize 하는 것이 아니라, p(Image)를 Maximize 하기 위한 것

a. 

b.  Ideal 하게는 무한대의 Markov Chain – Monte Carlo

i

j

i i

j

i

j

t = 0

j

t = 1 t = 2 t = infinity

Δwij =< vihj >data − < vihj >model

Page 14: Deview deep learning-김정희

1.7 Contrastive Divergence

Hinton 의 제안 ( Toronto Univ.) 1.  2002년 RBM을 이용한 Pre-Training

a.  CD-1 만으로도 Overfitting 문제를 피할 수 있는 Initial Point

b.  Generative Training 후 Discriminative Training

c. 

t = 0 reconstruction data

i

j

i

j

t = 1

Δwij =< vihj >data − < vihj >recon

Page 15: Deview deep learning-김정희

1.8 Layer Stacking

Greedy Algorithm

Visible Layer

Hidden Layer 1

Learn & Freeze

Visible Layer

Hidden Layer 1

Hidden Layer 2

Visible Layer

Hidden Layer 1

Hidden Layer 2

Hidden Layer 3

반복하여 Layer를 쌓는다

Page 16: Deview deep learning-김정희

1.9 Drop-Out

Big Data

Drop-Out 1.  Regularizer 의 일종

a.  Randomness 를 추가함

2.  Hidden Node를 모두 훈련시키지 않고, Random 하게 Drop Out 시킨다

a.  관련된 Weight들은 모두 훈련되지 않는다.

GPU Random Value > 0.6 Random Value < 0.6

Page 17: Deview deep learning-김정희

1.9 Drop-Out

GPU

GPU

GPU

Multi Neural Networks 의 Merge

Page 18: Deview deep learning-김정희

1.10 Rectified Linear Unit (ReLU)

Drop-Out & ReLU

1.  Drop-Out 은 학습 Curve 의 수렴이 느리다

a.  Drop Out 되고 남은 일부분만 학습되므로

2.  Non-Linear Activation Function 의 교체

a.  일반적으로 사용되는 tanh, Logistic Sigmoid 대신

b.  ReLU 사용

Logistic Sigmoid ReLU

Page 19: Deview deep learning-김정희

1.11 Big Data

Big Data

포털, 검색 업체 들 대량의 학습 DB 보유 1.  Modeling 을 정교하게 하기 위해서는 많은 Parameter 들이 필요

2.  많은 Parameter 들을 Overfitting 없이 훈련하려면 Big Data 필요

3.  Google 음성 인식에 사용된 DB Size

a.  5800 시간 이상

b.  DNN 훈련을 위한 입력 Data 20 억개 이상

c.  지금도 게속하여 수집되어지는 음성 인식 데이터로 성능 개선 진행 중

d.  Google의 DB 수집 노력

•  https://www.peanutgalleryfilms.com

Page 20: Deview deep learning-김정희

1.12 GPU

Big Data

Training Time 1.  New Algorithm 은 모두 Overfitting 을 방지 하기 위한 것

2.  추가 알고리즘에 의해 Training Time 은 더 늘어난다.

3.  다행히 DNN 의 Training 은 Non Linear Activation 을 제외하면 Matrix Operation

4.  GPU

a.  NVIDIA – CUBLAS

b.  NVIDIA 최신 GPU

•  GeForce GTX Titan

•  CUDA Core 2688 개

Page 21: Deview deep learning-김정희

2. Deep Learning Tips

Page 22: Deview deep learning-김정희

2.1 RBM or Drop-Out ?

Drop-Out is better than RBM

1.  Overfitting 을 막을 Pre-Training 목적이라면 굳이 RBM 쓸 필요 없음

2.  Drop-Out 과 함께 Discriminative Training

a.  많은 hidden node 와 hidden layer

b.  ReLU

c.  Drop-Out

3.  RBM의 효용성

a.  Unsupervised Training

b.  Feature Extractor

Page 23: Deview deep learning-김정희

2.2 Input Data

Noisy 한 Real Data 가 많다면 굳이 RBM도 Drop-Out도 쓰지 않아도 됨

1.  Noisy Data의 역할

a.  Local Minimum에 빠지는 것을 방지해 준다

b.  Regularizer by Randomness 의 역할

2.  Noisy Data 가 없다면

a.  만들어서라도 넣어 주어야

•  Image Data의 경우

ü  좌우 반전, 약간의 왜곡 등

•  음성의 경우

ü  임의의 배경 잡음 삽입

Page 24: Deview deep learning-김정희

2.3 Noisy Data가 많다면

Page 25: Deview deep learning-김정희

2.4 Learning Rate

계속 같은 Learning Rate를 써야 하나요?

1.  Iteration이 진행 될 수록 Learning Rate를 감소

a.  Validation Data Set을 설정

b.  Test 해 보며 성능이 Saturation 할 때마다 감소시키는 것이 정석

c.  귀찮고, 얼마나 감소시켜야 하는지도 애매

•  음성 인식 AM의 경우

•  Practically Exponentially 감소시키기

Page 26: Deview deep learning-김정희

2.5 남은 어려운 점

DNN 을 훈련시키기 위해 결정되어져야 할 Parameters 1.  DNN Structure

a.  Input Layer 의 Node 개수

b.  Output Layer 의 Node 개수

c.  Hidden Layer 의 개수

d.  Hidden Layer 의 Node 수

2.  Training 단계 Parameters

a.  Momentum

b.  Learning Rate

c.  Weight Initial Value

d.  Drop Out 비율

e.  Mini-Batch Size

f.  Big-Batch Size

Page 27: Deview deep learning-김정희

3. Deep Learning 과 Speech Recognition

Page 28: Deview deep learning-김정희

3.1 Speech Recognition with DNN

Speech Recognition 1.  Observation Data

a.  Speech Signal : x

2.  Maximum A Posteriori

a.  p( w | x ) 를 최대로 하는 Word Sequence w

^w =

wargmaxp(w | x) =

wargmax p(x |w)p(w)

p(x)

Page 29: Deview deep learning-김정희

3.1 Speech Recognition with DNN

Acoustic Model & Language Model 1.  p(x)

a.  w와 Independent 하므로 제외

2.  p(w)

a.  Prior Probability : Language Model

3.  p( x | w )

a.  Likelihood : Acoustic Model

b.  현재의 흐름은 DNN 을 이용하여 Acoustic Model을 표현

^w =

wargmaxp(w | x) =

wargmax p(x |w)p(w)

p(x)

Page 30: Deview deep learning-김정희

3.2 Acoustic Model with DNN

Acoustic Model & Language Model 1.  q

a.  Word w 를 구성하는 Senone q

2.  기존 방법

1.  p( x | q )를 표현하기 위해 Gaussian Mixture Model (GMM) 을 사용

2.  p( x | q ) Acoustic Model을 GMM 대신 DNN 사용

p(x |w) =max p(xt | qt )t=1

T∏

Page 31: Deview deep learning-김정희

3.3 HMM-DNN Hybrid

Gaussian Mixture Model (GMM) 의 대체 1.  GMM Acoustic Model (AM)

a.  음성 신호의 Likelihood 를 표현

2.  AM 을 DNN 으로 표현

s1 s2 s3 HMM

v

H(M)

H(M-1)

H(1) DNN …

Observation

Observation Probabilities

Page 32: Deview deep learning-김정희

3.4 Deep Learning 음성인식 현황

Deep Learning NAVER 음성인식 서비스 1.  2013년 하반기부터 서비스

a.  기존 HMM-GMM 방식으로는 넘어설 수 없었던 수준

•  기존 GMM 방식과 DNN 방식은

청동기 시대 철기 시대의 차이

b.  지금도 계속 성능 개선 진행 중

2.  Google, Microsoft 등 대부분 음성 인식 서비스 제공 업체들

이미 DNN 방식 사용

a.  Google 은 2012 년 Jelly Bean 부터

b.  Microsoft 는 2013년 하반기 부터

Page 33: Deview deep learning-김정희

Q&A

Page 34: Deview deep learning-김정희

THANK YOU