뉴로 컴퓨터 개론 제 13 장 제 13 장 오류 역전파 알고리즘 제 13 장 오류 역전파 알고리즘.
Download
Report
Transcript 뉴로 컴퓨터 개론 제 13 장 제 13 장 오류 역전파 알고리즘 제 13 장 오류 역전파 알고리즘.
뉴로 컴퓨터 개론
제 13 장
1
제 13 장
오류 역전파 알고리즘
2
제 13 장 오류 역전파 알고리즘
차례
13.1 BP 알고리즘
13.2 학습인자
3
제 13 장 오류 역전파 알고리즘
BP 알고리즘
4
오류 역전파 알고리즘
BP 알고리즘
Error Back Propagation
순방향 다층 신경망의 학습
다양한 분야에 널리 활용
5
제 13 장 오류 역전파 알고리즘
BP 알고리즘
순방향 다층 신경망
입력층
은닉층
v
x1
z1
출력층
w
y1
.
.
xi
.
.
xn
1
zj
yk
zp
ym
1
6
제 13 장 오류 역전파 알고리즘
BP 알고리즘
은닉층의 출력
NETz
Z
XV T
f ( NETz )
1
1 e NETz
7
제 13 장 오류 역전파 알고리즘
BP 알고리즘
출력층의 출력
NETy
ZW T
y
f ( NETy )
1
NET y
1 e
8
제 13 장 오류 역전파 알고리즘
BP 알고리즘
BP 알고리즘 학습 절차(1)
단계 1 연결 강도 초기화 및 학습 패턴쌍 선정
단계 2 학습률과 오차의 한계치 결정
단계 3 학습 패턴 입력
단계 4 은닉층의 출력 구함
단계 5 출력층의 출력 구함
단계 6 목표치와 출력을 비교하여 오차 계산
9
제 13 장 오류 역전파 알고리즘
BP 알고리즘
BP 알고리즘 학습 절차(2)
단계 7 출력층의 오차 신호 구함
단계 8 은닉층에 전파되는 오차 신호 구함
단계 9 출력층과 은닉층의 연결 강도 변경
단계 10 학습 패턴쌍 반복 입력하여 연결 강도 변경
단계 11 오차가 특정 범위보다 작아지면 학습 종료
10
제 13 장 오류 역전파 알고리즘
BP 알고리즘
오차 신호
출력층의 오차 신호
y d yy1 y
은닉층의 오차 신호
m
z z1 z y w
I 1
11
제 13 장 오류 역전파 알고리즘
BP 알고리즘
연결 강도 변경
출력층의 연결 강도 갱신
W y Z
Wk 1 Wk W
은닉층의 연결 강도 갱신
V z X
Vk 1 Vk V
12
제 13 장 오류 역전파 알고리즘
BP 학습 알고리즘(1)
BP 알고리즘
Step 1 : Initialize weights and counter
V, W small random value
p number of training pattern pairs
k1
E0
Step 2 : Set learning rate and Emax
Step 3 : For each training pattern pair
do Step 4-10 until k = p
Step 4 : Compute output of hidden layer
NETz XV T
1
Z
1 e NETz
13
제 13 장 오류 역전파 알고리즘
BP 알고리즘
BP 학습 알고리즘(2)
Step 5 : Compute output
NETy ZW T
1
y
NETy
1 e
Step 6 : Compute output error
1
2
E d y E
2
Step 7 : Compute error signal of output layer
y d y y1 y
Step 8 : Compute error signal of hidden layer
m
z z1 z zW
i 1
14
제 13 장 오류 역전파 알고리즘
BP 알고리즘
BP 학습 알고리즘(3)
Step 9 : Update weights
W W y Z
V V z X
Step 10 : Increase counter and goto Step 3
k k 1
Step 11 : Test stop condition
If E Emax stop
else, E 0 and goto Step 3
15
제 13 장 오류 역전파 알고리즘
두 클러스터 분류하는 3계층 신경망의
BP 알고리즘 학습
학습 패턴 A를 입력할 때의 오차는?
BP 알고리즘
초기 연결 강도
0.1 0.2 0.5
V
0
.
3
0
.
1
0
.
3
W 0.1 0.2
16
제 13 장 오류 역전파 알고리즘
BP 알고리즘
3계층 신경망과 학습 패턴
연결 강도
입력층
x1
x2
x3
0.1
0.3
0.2
0.1
-0.5
-0.3
A
B
C
D
V
은닉층 연결 강도출력층
z1
W
0.1
0.2
y
z2
-1 (클러스터 1)
+1 (클러스터 2)
+1 (클러스터 2)
-1 (클러스터 1)
17
제 13 장 오류 역전파 알고리즘
BP 알고리즘
은닉층 첫 번째 뉴런의 출력
NET XV T
0.1
0 0 1 0.2
0.5
0.5
z1 f NET
1
1 e NET
1
1 e 0.5
0.38
18
제 13 장 오류 역전파 알고리즘
BP 알고리즘
은닉층 두 번째 뉴런의 출력
NET XV
T
0.3
0 0 1 0.1
0.3
0.3
1
z2
1 e 0.3
0.43
19
제 13 장 오류 역전파 알고리즘
BP 알고리즘
출력층 뉴런의 최종 출력
NET ZWT
0.1
0.38 0.43
0.2
0.12
1
y
1 e 0.12
0.53
20
제 13 장 오류 역전파 알고리즘
BP 알고리즘
패턴 A의 오류
1
2
E d y
2
1
2
1 0.53
2
1.17
21
제 13 장 오류 역전파 알고리즘
BP 알고리즘
학습 패턴 A를 입력할 때
은닉층과 출력층간의 연결 강도 변화량은?
학습률 1
입력층
x1
x2
x3
연결 강도
0.1
0.3
0.2
0.1
-0.5
-0.3
A
B
C
D
V
은닉층 연결 강도출력층
z1
W
0.1
0.2
y
z2
-1 (클러스터 1)
+1 (클러스터 2)
+1 (클러스터 2)
-1 (클러스터 1)
22
제 13 장 오류 역전파 알고리즘
BP 알고리즘
출력층의 오차 신호
출력층의 출력
은닉층의 출력
y = 0.53
Z = [0.38 0.43]
학습 패턴 A의 목표치
d = -1
y d y y 1 y
1 0.53 0.53 1 0.53
0.38
23
제 13 장 오류 역전파 알고리즘
은닉층과 출력층간의
연결 강도 변화량
BP 알고리즘
은닉층의 출력
Z = [0.38 0.43]
출력층의 오차 신호
y = -0.38
W a y Z
1 0.38 0.38 0.43
0.14 0.16
24
제 13 장 오류 역전파 알고리즘
학습 패턴 A를 입력할 때
BP 알고리즘
입력층과 은닉층간의 연결 강도 변화량은?
학습률 1
연결 강도
입력층
x1
x2
x3
0.1
0.3
0.2
0.1
-0.5
-0.3
A
B
C
D
V
은닉층 연결 강도출력층
z1
W
0.1
0.2
y
z2
-1 (클러스터 1)
+1 (클러스터 2)
+1 (클러스터 2)
-1 (클러스터 1)
25
제 13 장 오류 역전파 알고리즘
은닉층의 첫 번째 뉴런에 전파되는
오차 신호
출력층의 오차 신호
y = -0.38
은닉층의 출력
Z = [0.38 0.43]
BP 알고리즘
z z1 1 z1 y w1
0.38 1 0.38 0.38 0.1
0.01
26
제 13 장 오류 역전파 알고리즘
은닉층의 첫 번째 뉴런의
연결 강도 변화량
BP 알고리즘
V a z X
1 0.01 0 0 1
0 0 0.01
27
제 13 장 오류 역전파 알고리즘
은닉층의 두 번째 뉴런에 전파되는
오차 신호
출력층의 오차 신호
y = -0.38
은닉층의 출력
Z = [0.38 0.43]
BP 알고리즘
z z 2 1 z 2 y w2
0.43 1 0.43 0.38 0.2
0.02
28
제 13 장 오류 역전파 알고리즘
은닉층의 두 번째 뉴런의
연결 강도 변화량
BP 알고리즘
V z X
1 0.02 0 0 1
0 0 0.02
29
제 13 장 오류 역전파 알고리즘
BP 알고리즘
모멘텀 BP 알고리즘
연결 강도 변화량 Vk , Wk
Vk z X Vk 1
Wk z Z Wk 1
α 학습률
β 모멘텀 상수
z 은닉층의 오차 신호 y 출력층의 오차 신호
30
제 13 장 오류 역전파 알고리즘
학습 인자
31
학습 인자
학습 인자
초기 연결 강도
신경망의 구조
학습 패턴
학습률
32
제 13 장 오류 역전파 알고리즘
학습 인자
초기 연결 강도
일반적으로 –0.5 ~+0.5 범위의 값
오차의 국부 최소점
33
제 13 장 오류 역전파 알고리즘
학습 인자
오차의 국부 최소점
오차
E
A
C
D
B
Emin
연결 강도
W
W1
W2
W
34
제 13 장 오류 역전파 알고리즘
학습 인자
신경망의 구조
신경망을 구성하는 뉴런 수가 많으면
연결 강도 수가 많아져서 학습 느림
입출력층의 뉴런 수는 응용 분석시 결정
최적의 은닉층 뉴런 수 결정이 중요
35
제 13 장 오류 역전파 알고리즘
학습 인자
신경망의 연결 강도 수
전체 연결 강도 수
nppm
n 입력층의 뉴런수
p 은닉층의 뉴런수
m 출력층의 뉴런수
36
제 13 장 오류 역전파 알고리즘
학습 인자
입력 패턴의 표현
X1
X2
X3
x1 x2 x3 x4 x5 x6 x7 x8 x9
ㄱ : X 1 1 1 1 0 0 1 0 0 1
ㄴ : X 2 1 0 0 1 0 0 1 1 1
ㄷ : X 3 1 1 1 1 0 0 1 1 1
37
제 13 장 오류 역전파 알고리즘
학습 인자
출력 패턴의 표현
ㄱ : d1
ㄴ : d
2
ㄷ : d3
1
0
0
0 0
1 0
0 1
ㄱ : d1 [ 0 1]
ㄴ : d 2 [1 0]
ㄷ : d 3 [1 1 ]
38
제 13 장 오류 역전파 알고리즘
학습 인자
한글 인식 3계층 신경망(1)
입력층 63개 뉴런
은닉층 20개 뉴런
출력층
5개 뉴런
ㄱ
ㄴ
ㄷ
ㄹ
ㅁ
: d1 1 0 0 0 0
: d 2 0 1 0 0 0
: d 3 0 0 1 0 0
: d 4 0 0 0 1 0
: d 5 0 0 0 0 1
39
제 13 장 오류 역전파 알고리즘
학습 인자
한글 인식 3계층 신경망(2)
입력층
은닉층
y1
x1
z1
x2
y2
y3
z20
x63
출력층
y4
y5
40
제 13 장 오류 역전파 알고리즘
학습 인자
한글 인식 3계층 신경망(3)
입력층 63개 뉴런
은닉층 20개 뉴런
출력층
3개 뉴런
ㄱ
ㄴ
ㄷ
ㄹ
ㅁ
: d1
: d2
: d3
: d4
: d5
0
0
0
1
1
0 1
1 0
1 1
0 0
0
1
41
제 13 장 오류 역전파 알고리즘
학습 인자
한글 인식 3계층 신경망(4)
입력층
은닉층 출력층
x1
x2
y1
z1
y2
z20
x63
y3
42
제 13 장 오류 역전파 알고리즘
학습 인자
학습 패턴
E. Baum과 D. Haussler 이론
N
p
1 a
p 학습 패턴의 수
a 정확도
N 연결 강도의 수
양극성 데이터를 사용하면 학습이 빠름
43
제 13 장 오류 역전파 알고리즘
학습 인자
학습률
일반적으로 0.001∼10 값 사용
학습률이 크면 학습이 빠름
학습률이 작으면 학습이 느림
44
제 13 장 오류 역전파 알고리즘