40
Chapter 6. 딥하이퍼넷 <기계학습 개론> 강의 서울대학교 컴퓨터공학부 장병탁 교재: 장교수의 딥러닝, 홍릉과학출판사, 2017. Slides Prepared by 장병탁, 김경민, 김준호 Biointelligence Laboratory School of Computer Science and Engineering Seoul National University Version 201710011

Chapter 6. 딥하이퍼넷scai/Courses/ML2017/Ch6_DHN.pdf · 2017-10-11 · Chapter 6. 딥하이퍼넷 강의 서울대학교컴퓨터공학부 장병탁

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Chapter 6. 딥하이퍼넷

<기계학습개론> 강의

서울대학교컴퓨터공학부

장병탁

교재: 장교수의 딥러닝, 홍릉과학출판사, 2017.

Slides Prepared by

장병탁, 김경민, 김준호

Biointelligence Laboratory

School of Computer Science and Engineering

Seoul National University

Version 201710011

목차

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 2

6.1 하이퍼넷 구조 ………………………………….……. 3

6.2 하이퍼넷 학습 …………………………….…………. 12

6.3 하이퍼넷 응용 사례 ……………………….……..…… 13

6.4 딥하이퍼넷(DHN) ……………………....…....……… 22

6.5 딥하이퍼넷 응용 사례 ……………………….......…… 28

요약 ……………………………………...………………. 40

들어가는질문 하이퍼넷의 구조적 특성을 설명하시오. 하이퍼넷의 에너지함수와 목적함

수는 무엇인가?

하이퍼넷을 볼쯔만머신 및 베이지안넷과 비교하시오. 유사점과 차이점은

무엇인가? 하이퍼넷의 장점은 무엇인가? 단점은 무엇인가?

하이퍼넷 학습은 망의 구조를 최적화하는 구조 학습과정을 포함한다. 구

조학습을 위해 분자프로그래밍으로 불리는 진화연산기반 학습알고리듬

을 사용한다. 방법과특징을 설명하시오.

하이퍼넷을 이용하여 음악 데이터를 학습하여 작곡을 하는 방법을 설명하

시오.

딥하이퍼넷은 하이퍼넷을 다층구조로 만든 심층신경망 구조의 생성모델

이다. 딥하이퍼넷을 학습하는 그래프몬테칼로(GMC) 방법을 설명하시오.

딥하이퍼넷을 이용하여 만화영화 비디오 빅데이터를 학습하여 글로부터

그림을 생성하고 반대로 그림으로부터 글을 생성하는 방법을 설명하시오.

© 2017, 장교수의딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 3

하이퍼넷(hypernetworks, 줄여서 hypernet)은 데이터에 존재하는 고차 관계를 학습

하는 확률그래프 모델

하이퍼넷은 하이퍼그래프(hypergraph) 구조를 이용한 트리플로 정의 H=(X, E, W)

X : 데이터

E : 하이퍼에지

W : 에지가중치

모델로부터 데이터 가 생성될 확률 즉 우도는 다음과 같이 표현.

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.1 하이퍼넷구조 (1/4)

3

하이퍼넷의 예시

1 2

1 2 | |

1 2 | |

{ , ,..., ,}

{ , ,..., ,}

{ , ,..., }k

E

E

i i i i

E E E E

W w w w

E x x x

( )

1

( | ) ( | )

N

d

d

P D W P Wx

( )

1

Nd

dD

x

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.1 하이퍼넷구조 (2/4)

4

통계역학에서 매개변수 W 라를 가진 모델(시스템)이 상태 x에 있을 확률

은 깁스(Gibbs) 분포로 주어짐

E(x|W): 에너지, kB: 볼쯔만 상수, T: 절대 온도

Z(W)는 분배함수라고 하며 상태합을 나타내고 정규화 상수 역할을 한다.

머신러닝 관점에서 모델 W로부터 특정 데이터 x(d)가 관측될 확률은 다음으로 주어진다

'

( '| )( ) exp

B

E WZ W

k T

x

x

( )

( ) exp[ ( ; )]( | )

exp[ ( ; )]

d

d E WP W

E W

x

xx

x

1 ( | ) 1( | ) exp exp ( | )

( ) ( )B

E WP W E W

Z W k T Z W

xx x

하이퍼넷은 에너지를 다음과 같이 표현

확률분포식에 에너지 함수를 대입

정규화항 Z(W)는 다음과 같음

6.1 하이퍼넷구조 (3/4)

5

x1x2

x3

x4

x5

x6

x7

x8 x9

x10

x11

x12

x13

x14

x15

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.1 하이퍼넷구조 (4/4)

6

특성 설명

고차 연관관계 표현 특징의 조합을 명시적으로 표현

일반적인 그래프 구조만을 허용하는 베이지안망과 비교할 때 빠른 학습을 기대

구조 학습 학습 과정에서 구조의 진화 과정을 적용

의미 있는 모듈 발견을 기대

군집 기반 부호화 하이퍼엣지와 그 조합으로 구성된 모듈로 데이터의 정보가 표현됨. 점진적 학습 가능

베이지안망의 조건확률표 기반 정보 표현과 대비

조합성

(compositionality)

학습 과정에서 선택, 생성된 하이퍼엣지와 모듈의 조합으로 새로운 모듈 생성

추상화 및 추상화 수준을 높인 기호 기반 계산

자가감독학습 레이블이 없는 데이터로도 학습 가능

학습 과정에서 레이블 탐색

동적 조정 가능 체계 동적 자기조직 방식의 학습과 추론

상시 추론 가능

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.2 하이퍼넷학습 (1/5)

7

학습은 최대 우도값을 갖는 가중치 벡터를 찾는 문제와 같음

가중치 연결 wij 하나에 대해서 다시 표현하면, 확률 변화에 대한 가중치의 기울기가

0이 되는 것을 찾는 문제로 볼 수 있음

가중치 변경식은 다음과 같이 유도됨 (식의 유도는 다음 페이지 참조)

<>Data : 관측 데이터의 분포

<>P : 모델로부터 생성한 데이터 분포

이를 대조분산학습(contrastive divergence learning) 방법이라 함

* argmax ( ) argmaxlog ( )P P w ww w

w x x

log ( )

0ij

P

w

w x

1 2 1 2 ( | ) ... ...

log ( ) i i ik i i ikData P W

ijij

x x x x x xP

ww

xw x

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.2 하이퍼넷학습 (2/5)

8

학습은 우도함수 또는 다음의 로그우도함수를 최대화하는 하이퍼넷 모델을찾는 과정

로그우도함수를 가중치(모델 파라미터)에 대해서 미분하면

1 2 1 2

1 2

1

...

1 1 , ,...,

ln ( | ) ln ( | )

1 ... ln

( ) k k

k

Nn

d

N Kk n n n

i i i i i i

d k i i i

P D W P W

w x x x Z WC k

x

1

| |N

n

n

P D W P x W

1 2

1 2 1 2

1 21 2

1 2 1 2

1 21 2

1, ,...,

...

1 1 , ,...,, ,...,

...

1 , ,...,, ,...,

ln ( | )

1... ln ( )

( )

1...

( )

k

k k

kk

k k

kk

Nd

kdi i i

N Kk d d d

i i i i i ikd k i i ii i i

Kk d d d

i i i i i ikk i i ii i i

P Ww

w x x x Z WC kw

w x x xC kw

x

1 2

1 21 2

1 2 1 2

1 , ,...,

|1

|

ln

... ...

... ... ,

k

kk

k k

N

kd i i i

Nd d d

i i ii i i P Wd

i i i i i iData P W

Z Ww

x x x x x x

N x x x x x x

x

x

,

xi1

xi2

...xik Data

=1

Nx

i1

d( )x

i2

d( )...x

ik

d( )éë

ùû

d=1

N

å

xi1

xi2

...xik P x|W( )

= xi1

xi2

...xik

P(x |W )éë

ùû

x

å .

학습은이두분포가수렴하는지점에서일어남

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.2 하이퍼넷학습 (3/5)

9

학습 알고리듬 (a.k.a. 분자프로그래밍)

1. 데이터 벡터 x를 입력층에 할당한다.

2. 입력노드에 연결된 은닉층 뉴런들을 활성화한다. 활성화된 은닉 벡터를h 라 하자. P (h ❘ x, W )

3. 활성화된 은닉 뉴런들로부터 입력층의 재생성 이미지 x' 를 생성한다.P (x ❘ h, W )

4. x 와 x' 의 차이를 줄여주는 방향으로 하이퍼넷의 구조와 매개변수 W 를조정한다.

{ }i

i i i

H H e

w w w

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.2 하이퍼넷학습 (4/5)

10

하이퍼넷 구조와 파라미터 조정

1. 새로운 하이퍼에지의 추가:if , then 들로만 구성된 하이퍼에지 를 새로 만들어에 추가 한다.

2. 하이퍼에지 가중치 값의 변경:if , then for containing

if , then for containing

3.하이퍼에지의 제거:

인 하이퍼에지를 제거한다.

i iw w 1 0i ix x

0 1i ix x

1 0i ix x i

x ke

ixk

e

i iw w k

ei

x

minkw w

H

하이퍼에지 구성 과정 및 이를 통한 하이퍼넷 업데이트 과정

감독학습을 위한 데이터의 경우 레이블(y)은 하나의 벡터에서 나온 모든 하이퍼에지에 공통으로 추가됨

12

x0=0

x1=0

x2=1

x3=1

x4=0

x5=1

x6=1

x7=0

y=1

x0=0 x1=0 y=1

x1=0 x5=1 x6=1 y=1

x0=0 x3=1 y=1

x2=0 x4=0 x7=0 y=1

x0=0 x2=1 x7=0 y=1

A Data

SampleHyperedges Hypernetwork

x1x2

x3

x4

x5

x6

x7

x8 x9

x10

x11

x12

x13

x14

x0

6.2 하이퍼넷학습 (5/5)

11

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.3 하이퍼넷응용사례: 비디오학습및생성 (1/9)

12

다중 모달리티를 갖는 정보 간의 연관 관계를 학습하여 교차로 생성하는‘다중

모달’ 학습 및 교차모달 생성 문제에 응용됨

드라마 이미지(image)와 대사(text) 간 연관성을 학습하는 Videome 프로젝트

(Zhang, 2008)

(a) 이미지를 질문으로 한 대사 연상(I2T) (b) 대사를 질문으로 한 이미지 연상 작업을수행(T2I)

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.3 하이퍼넷응용사례: 분자머신러닝 (2/9)

13

암 진단을 위해 두 형태의 유전자 발현 패턴을 하이퍼넷을 이용하여 종합 분석하

고, 암의 유전적 특징 발견에 기여 (하이퍼넷의 조합적 모듈 발굴 능력을 활용)

그림/텍스트/음악 생성, 필기체 숫자(Kim & Zhang, 2007), 질병 예측(Kim, Ha, &

Zhang, 2014)

분자하이퍼넷 모델은 하이퍼넷의 초병렬성을 살려 DNA 컴퓨팅, 분자 컴퓨팅 환

경에서 머신러닝 알고리듬으로 구현될 수 있음 (Lim et al., 2010)(Lee et al., 2014).

하이퍼넷을사용하여음악을학습및생성

CORPUS of MIDI

• Set the order range. Usually 2 to Lmax

• Generate every possible fragments of contiguous notes with the order range

A ‘library’ of ‘hyperedges’

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.3 하이퍼넷응용사례: 음악학습및생성 (3/9)

14

1.0

♩♬ ♪ ♬

♩♬♩♩♩ ♬

♩♩♩♬

♭♪ ♩♩♬ ♪♪♪

♬♩♩♩♬

♬♩♩♩♬ ♩♩

♬♩♩♩♬ ♪♪♪

Select the

highest

weight

Generate music based on given cue

Hyperedge

A hypernetwork model consists

of hyperedges of variable orders

16

Replace hyperedges

♬♩♩♩♩♬

♩♪♪♩♬

♩♬♩♩♩ ♬

♩♩♩♬ ♬♩♩♩♬

♬♩♩♩♬ ♩♩1.0

1.3

0.7

1.1

1.21.4

Compare generated notes to

original notes & update

weights of hyperedges

1.4

1.5 1.3

1.51.6

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 15

6.3 하이퍼넷응용사례: 음악학습및생성 (4/9)

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 16

6.3 하이퍼넷응용사례: 음악학습및생성 (5/9)

멜로디를 생성하도록 학습 (pitch와 duration의 순열)

모델은 가중치를 적용한 부분적 멜로디의 집합으로 표현됨

특정 큐가 주어졌을 때 다양한 곡들의 일부 멜로디를 회상할수 있도록 학습됨

u v

u' v

u'' vVariable-order context is used to predict v

HN( ) ( ) ( ; )P v P v f u u wh h

h: hyperedgeshw: weights of hyperedges

?

The next symbol w after some context u can be determined based on weights of the ‘pool of hyperedges’ that matches the context

HyperMuse

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 17

6.3 하이퍼넷응용사례: 음악학습및생성 (6/9)

(a) Learning curve (1~100 epoch)

(b) Max order (3~20) vs. hit ratio

(c) Evolution of the structure of the model

19

2 4 6 8 10 12 14 16 18 200.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

maximum order

hit r

atio

training

test

0 10 20 30 40 50 60 70 80 90 1000.55

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

epoch

hit ra

tio

0 20 40 60 80 1000

200

400

600

800

1000

1200

epoch

#hyp

ered

ges

per o

rder

order = 2

order = 3

order = 4

order = 5

order = 6

order = 7

order = 8

order = 9

order = 10

(a)

(b)

(c)

… …

Training set Test set

Song 1

Song 2

Song 30 2 4 6 8 10 12 14 16 18 200.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

maximum order

hit r

atio

training

test

All My Loving (good prediction)

Eleanor Rigby (good prediction)

Dear Prudence (transit to another song)

Yellow Submarine (transit to another song)

Yesterday (fall in a large loop)

Hey Jude (fall in a monotonic pattern)

Setting former/latter half as the training/test

set

Generation Results Original / Generated

Charts

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 18

6.3 하이퍼넷응용사례: 음악학습및생성 (7/9)

(a) Learning curve (1~100 epoch)

(b) Max order (3~20) vs. hit ratio

(c) Evolution of the structure of the model

(a)

(b)

(c)

… …

Training set Test set

Song 1

Song 2

Song 302 4 6 8 10 12 14 16 18 20

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

maximum order

hit r

atio

training

test

Another Town, Another Train (good prediction)

Nina, Pretty Ballerina (good prediction)

Hasta Manana (transit to another song)

My Mama Said (fall in a large loop)

Mamma Mia (fall in a monotonic pattern)

Setting former/latter half as the training/test

set

Generation Results Original / Generated

Charts

2 4 6 8 10 12 14 16 18 200.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

maximum n

recall

rate

Max n vs. recal rate (ABBA30 set)

training

test

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 19

6.3 하이퍼넷응용사례: 음악학습및생성 (8/9)

유명한 미국 folk song “Swanee River” 로부터 HyperMuse가 생성한 4개의 곡

(A)는 미국식 곡을 학습한 HyperMuse로부터,

(B)는 스코틀랜드식 곡을 학습한 HyperMuse로부터,

(C)는 김건모 곡을 학습한 HyperMuse로부터,

(D) 는 신승훈 곡을 학습한 HyperMuse로부터 생성됨[H.-W. Kim and B.-H. Kim]

20

6.3 하이퍼넷응용사례: 음악학습및생성 (9/9)

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.4 딥하이퍼넷 (1/6)

21

딥하이퍼넷 (deep hypernetwork, DHN) 은 하이퍼넷을 빌딩블록으로 하여

다층으로 쌓은 딥러닝 구조

생성적 딥러닝 모델

핵심아이디어: 은닉층 h1을 모두 탐색하는 대신, 또 다른 하나의 은닉층을

상위층에 쌓음.

1

1 1( ) ( | ) ( )P P Ph

x x h h

1

1 2

2 1

1 1

1 1 2 2

1 1 2 2

( ) ( | ) ( )

( | ) ( | ) ( )

( | ) ( | ) ( )

P P P

P P P

P P P

h

h h

h h

x x h h

x h h h h

x h h h h

h1층위에 h2 층을하나더쌓을때확장된식

e

e

e

e

e

e

e

e

e

e

e

e

e

e

e

e

e

e

r

r

r

r

w

w

w

w

w

w

w

w

w

w

r

r

r

r

x h1h2 h3 h2h1 x’

딥하이퍼넷 vs. 기존모델

기준 Topic Models Deep Networks Deep HNs

모델 구조 고정 고정 유연

관측 노드 고정 고정 유연

의미적 표현력 중간 낮음 높음

은닉노드의 해석 용이성

낮음 낮음 높음

점진적 학습에 대한적합성

낮음 중간 높음

모델 복잡도 중간 높음 낮음

지식 표현력 낮음 낮음 높음

문장 생성 x △ (RNN) ○

이미지 생성 x △ ○

구조 학습에 대한오버헤드

낮음 낮음 High

23

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.4 딥하이퍼넷 (2/6)

22

타 모델과의 특성 비교

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )

1 1 1 2 1 2 1... 1

1 1, 2 1, 2,...,

exp( ( ))( )

exp( ( ))

( ) ( ( ))

( ) ... ...

ss

j

j

j j

j j j j j j j j

j i i i i i i i ik i ik

i i i i i ik

EP

E

E h s

s w h w h h w h h

hh

h

h h

h

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.4 딥하이퍼넷 (3/6)

23

구조를 명시적으로 W로 표시한 뒤, n개의 은닉층을 사용하여 계층적 은닉 표현

구조를 확장

P(hs)는 에너지 함수 E(hs) 와 소프트맥스(softmax)를 사용하여 다음과 같이 정의

1

1 1 2 1( | ) ... ( | ) ( | ) ( | ) ( )n

n n nP W P P P P h h

x x h h h h h h

1

1 2 1 1( | ) ... ( | ) ( | ) ( | ) ( )n

n nP W P P P P h h

x h h h h h x x

11

1

exp( ( , ))( | )

exp( ( ))

s ss s

s

EP

E

h hh h

h,

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.4 딥하이퍼넷 (4/6)

24

딥하이퍼넷의 구조와 학습

딥하이퍼넷 모델의 우도식

위의 우도를 최대화하도록 딥하이퍼넷의 하이퍼에지 구조와 연결 가중치의 값들 W을

포함하는 다음 식을 조정하는 것이 목표

각 층에 있는 하이퍼에지의 종류와 개수 및 가중치를 진화적 탐색을 통해서 변형하면

서 더욱 좋은 해가 나오면 받아들이고 그렇지 않으면 버리는 방식을 취함(다음 페이지

GMC 방법)

1

1 1 2 1( | ) ... ( | ) ( | ) ( | ) ( )n

n n nP W P P P P h h

x x h h h h h h

( ) ( ) ( ) ( ) ( )

1 1 1 2 1 2

1 1, 2

( ) ...j j j j j

j i i i i i i

i i i

s w h w h h h

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.4 딥하이퍼넷 (5/6)

25

그래프몬테칼로기반의딥하이퍼넷학습알고리듬

1. 새로운 학습 예 x를 가져온다. 입력층에 관측 변수값들을 할당한다.

2. 이로부터 상위층으로 확률값 을 계산하고 변수값을 순차적으로 할당하며 를 계산하면 이를 반복하여 최상위 은닉변수 값을 로부터 할당한다.

3. 최상위의 확률분포 로부터 은닉변수 값을 항당하고 이를 거꾸로 하위층으로 전파하면서 확률값 을 계산하고 은닉변수값들을 순차적으로 할당하며 최하위층의 확률 분포 를 추정하고 이로부터 변수값 즉 관측 변수값을 할당한다.

4. 관측변수 벡터와 생성한 관측변수 벡터를 비교하여 그 차이를 줄여주는 방향으로중간 은닉층들에 있는 하이퍼에지의 구성과 그 가중치 를 변경한다.

위의 4의 과정을 M 번 반복한다.

P(h1 | x)P(h2 |h1)

1( | )n nP h h

P(hn )

1( | )n nP h hP(x) x '

W

1 2 1 2

1 2

( )

|1, ,...,

ln | ... ...k k

k

Nn

i i i i i ik Data P Wni i i

P W N x x x x x xw

xx

알고리즘: 개념층의학습

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.4 딥하이퍼넷 (6/6)

26

위의 알고리듬 스텝 2와 3에서 상향, 하향 추론에 의해서 구현될 수 있음을

보이기 위해서 다음 식을 변형

베이즈규칙을 사용하여 원래의 딥하이퍼넷의 우도 식은 다음과 같이 다시

쓸 수 있음

1

1 1 2 1( ) ... ( | ) ( | ) ( | ) ( )n

n n nP P P P P h h

x x h h h h h h

11

1

( | ) ( )( | )

( )

P PP

P

h x xx h

h

P(h1 | h2 ) =P(h2 | h1)P(h1)

P(h2 )

1 11

( | ) ( )( | )

( )

n n nn n

n

P PP

P

h h hh h

h

1

1

1

1

1 1 2 1

1 11 2 1 1

1 2

1 2 1 1

1 2 1

( )

... ( | ) ( | ) ( | ) ( )

( | ) ( )( | ) ( ) ( | ) ( )... ( )

( ) ( ) ( )

... ( | ) ( ) ( | ) ( | )

... ( | ) ( | ) (

n

n

n

n

n n n

n n nn

n

n n

n n

P

P P P P

P PP P P PP

P P P

P P P P

P P P

h h

h h

h h

h h

x

x h h h h h h

h h hh x x h h hh

h h h

h x x h h h h

h h h h h1 | ) ( )Px x 베이즈규칙

새로운개념의학습 (비디오)

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 비디오로부터개념망생성(1/12)

27

Image 개수 :

Word 개수 :

300

50

350

80

400

110

450

140

500

170

550

210

600

240

650

270

700

300

750

330

800

360

850

390

900

420

950

450

1000

480

1050

510

1100

540

1150

570

1200

600

1250

630

1300

660

1400

690

1500

720

1600

750

1700

780

1800

810

1900

830

2000

850

3000

1600

4000

1700

7000

1800

10000

1900

2500

1000

Episode 개수 : 18315010080757065605550454035302520151051

개념신경망의진화

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 비디오로부터개념망생성(2/12)

28

딥개념신경망 (딥하이퍼넷)

r r r r w w w w w

c1

h

x

Growing

Growing and

shrinking

c2

e1

e2

e3

e4

e5

(b) Hypergraph representation of (a)

h

c1

c2

“it”

“playful”

“start”“crong”

“sky”

“plane”

“robot”

(a) Example of deep concept hierarchy learned from Pororo videos

r

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 비디오로부터개념망생성(3/12)

29

1 2 1 2 1 2( , | , ) ( , | , , ) ( | , )hP r w c c P r w h c c P h c c

대사로부터장면의생성

질의 문장으로부터 생성된 이미지 결과들

질의문장 에피소드 1~52 (1개시즌)에피소드 1~104 (2개시즌)에피소드 1~183 (전시즌)

• Tongtong,

please

change this

book using

magic.

• Kurikuri,

Kurikuri-

tongtong!

• I like

cookies.

• It looks

delicious

• Thank you,

loopy

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 문장으로부터이미지생성(4/12)

30

질의문장 :

Hi

Pororo

Let’s

Play

Hi Pororo Let’s

대사로부터장면의생성

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 문장으로부터이미지생성(5/12)

31

질의문장 :Hi PororoLet’s Play!

Pororo

Let’s

Play

H

i

대사로부터장면의생성

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 문장으로부터이미지생성(6/12)

32

장면으로부터대사의생성

정답 자막: clock, I have made another potion come and try it

생성된자막• as i don't have the right magic potion come and try it was nice

• ah, finished i finally made another potion come and try it we'll all alone?

질의 = {i, try} 질의 = {thanks, drink}

정답 자막: Oh, thanks Make him drink this

생성된자막• oh, thanks make him drink this bread

• oh, thanks make him drink this forest

질의 = {he, take}

정답자막: Tong. Tong Let. Me. Take. It. To. Clock

생성된자막• take your magic to know what is he doing?

• take your magic to avoid the house to know what is he keeps

going in circles like this will turn you back to normal

질의 = {ship, pulled}

정답자막: The ship is being pulled

생성된자막• wow looks as if that's the ship is being pulled

• the ship is being pulled

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 이미지로부터문장생성 (7/12)

33

질의이미지

magic

making

i

food

am

sorry

iam making magic

sorry

iam making food

장면으로부터대사의생성

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 이미지로부터문장생성 (8/12)

34

시각적스토리텔링

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 시각적스토리텔링 (9/12)

35

시각적스토리텔링

에피소드 1 : 뽀뽀와삐삐등장에피소드 2 : 에디가 로디를만듦에피소드 3 : 뽀로로와크롱의갈등에피소드 4 : 통통등장에피소드 5 : 상어등장

뽀뽀 & 삐삐 개념 발달에디 & 로디 개념 발달뽀로로 & 크롱 개념 발달통통개념 발달상어 개념 발달

개념신경망에피소드에따른주요등장인물분석© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 시각적스토리텔링 (10/12)

36

구축된개념망분석결과

뚜렷한 특징을 갖는 개념 노드들 (PCA 사용)

등장인물들의 성격이 개념노드에 반영됨 (Petty and Loopy)

-400 -200 0 200-100

0

100

200

300

pororo

eddy

(a) Microcodes (b) Centroids of c1-nodes

• Tongtong

• Eddy

• Pororo

• Pororo

• Eddy

-50 0 50 100-60

-40

-20

0

20

40

60

80

Loopy

Crong

Petty

(a) Episode 1

• Loopy

• Crong

• Petty

-100 0 100 200-100

0

100

200

300

400

500

Petty

Loopy

Crong

(b) Episodes 1~52

• Loopy

• Crong

• Petty

Loopy:

- A female beaver

- Girlish and shy

- Likes cooking

Petty:

- A female penguin

- Boyish and active

- Likes sports

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: 구축된개념망분석결과(11/12)

37

Pororobot Demo Video

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

6.5 딥하이퍼넷응용사례: Pororobot Demo Video(12/12)

38

https://youtu.be/OtkEkLpjs3s

하이퍼넷 하이퍼넷은 데이터에 존재하는 고차 관계를 학습하는 확률그래프 모델이며, 하이퍼그래프 구조를 이용한 트리플로 정의 H=(X, E, W). X는 노드, E는 하이퍼에지, W는 가중치를 나타냄

하이퍼넷의 학습 학습은 최대 우도값을 갖는 가중치 벡터를 찾는 문제로써 분자프로그래밍(진화연산 알고리듬) 기반 대조분산학습 등을 활용하여 계산할 수 있음

딥하이퍼넷 딥 하이퍼넷 (deep hypernetwork, DHN) 은 하이퍼넷을 빌딩블록으로 하여 다층으로 쌓은 딥러닝 구조로써 생성적 딥러닝 모델임

딥하이퍼넷의 학습 그래프 몬테칼로 기반의 딥하이퍼넷 학습 알고리듬

하이퍼넷과 딥하이퍼넷의 응용 다중 모달리티 정보의 학습 및 교차모달리티 생성(예: 비디오 개념 학습, 상상력기계)

조합적 구조학습 능력을 이용한 서열 생성(예: 음악 작곡, 필기체 숫자 인식 및생성)

DNA 컴퓨팅, 분자 컴퓨팅을 이용한 초병렬적 분자 머신러닝 모델 구현

© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr

요약

40