Learning how to explain neural networks
PatternNet and PatternAttribution
PJ Kindermans et al. 2017
์†๊ทœ๋นˆ

๊ณ ๋ ค๋Œ€ํ•™๊ต ์‚ฐ์—…๊ฒฝ์˜๊ณตํ•™๊ณผ

Data Science & Business Analytics ์—ฐ๊ตฌ์‹ค
/ 29
๋ชฉ์ฐจ
1. ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก ๋“ค์˜ ์ „๋ฐ˜์ ์ธ ๋ฌธ์ œ์ 
2. ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  ๋ถ„์„
1) DeConvNet
2) Guided BackProp
3. Linear model ๊ตฌ์ƒ
1) Deterministic distractor
2) Additive isotropic Gaussian noise
4. Approaches
5. Quality criterion for signal estimator
6. Learning to estimate signal
1) Existing estimators
2) PatternNet & PatternAttribution
7. Experiments
2
/ 29
0. ์š”์•ฝ
Data๋Š” ์ค‘์š”ํ•œ ์˜๋ฏธ๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” Signal๊ณผ ์“ธ๋ชจ์—†๋Š” ๋ถ€๋ถ„์ธ Distractor๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.
์‹œ๊ฐํ™”๋ฅผ ํ•œ๋‹ค๋ฉด Signal ๋ถ€๋ถ„์— ์ค‘์ ์„ ๋‘์–ด์•ผ ํ•œ๋‹ค.
Model์˜ weight๋Š” Distractor์— ์˜ํ–ฅ์„ ๋งŽ์ด ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์—โ€จ
์‹œ๊ฐํ™”๋ฅผ ํ•  ๋•Œ weight์—๋งŒ ์˜์กดํ•˜๋ฉด ์ข‹์ง€ ์•Š์€ ๊ฒฐ๊ณผ๋ฅผ ๋‚ธ๋‹ค.
output y์™€ distractor์˜ correlation์œผ๋กœ signal์˜ ์งˆ์„ ํŒ๋‹จ, ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
์ถฉ๋ถ„ํžˆ ํ•™์Šต๋œ ๋ชจ๋ธ์˜ { weight, input, output } ๊ฐ’์œผ๋กœ linear, non-linearโ€จ
๋‘ ๋ฐฉ์‹์œผ๋กœ signal์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๊ณ , ์ด ์‹œ๊ทธ๋„๋กœ ์‹œ๊ฐํ™”ํ•œ๋‹ค.
3
/ 29
1. ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก ๋“ค์˜ ๋ฌธ์ œ์ 
Deep learning์„ ์„ค๋ช…ํ•˜๊ธฐ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ์‹œ๋„๋“ค์ด ์žˆ์–ด์™”์Œ
โ€ขDeConvNet, Guided BackProp, LRP(Layer-wise Relevance Propagation)
์œ„ ๋ชจ๋ธ๋“ค์˜ ์ฃผ์š” ๊ฐ€์ •์€ ์ค‘์š”ํ•œ ์ •๋ณด๊ฐ€ ์••์ถ•๋œ Output์„ ๋’ค๋กœ Backpropagation ์‹œํ‚ค
๋ฉด input์— ์ค‘์š”ํ•œ ์ •๋ณด๋“ค์ด ์–ด๋–ป๊ฒŒ ํ•จ์ถ•๋˜์–ด์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ
4
/ 29
1. ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก ๋“ค์˜ ๋ฌธ์ œ์ (Contโ€™d)
ํ•˜์ง€๋งŒ ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก ๋“ค์ด ์ถ”์ถœํ•œ saliency map๋“ค์ด ๊ฒ‰์œผ๋ก  ๊ทธ๋Ÿด์‹ธํ•ด๋ณด์—ฌ๋„,โ€จ
์ด๋ก ์ ์œผ๋กœ ์™„๋ฒฝํ•˜๊ฒŒ input data์˜ ์ค‘์š”ํ•œ ๋ถ€๋ถ„๋“ค์„ ์ถ”์ถœํ•˜์ง„ ๋ชปํ•จ
Data๋Š” Signal๊ณผ Distractor ๋‘ ๊ฐ€์ง€๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ
โ€ขRelevant signal: Data๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ค‘์š”ํ•œ ๋ถ€๋ถ„, ํ•ต์‹ฌ ๋‚ด์šฉ
โ€ขDistracting component: Data์™€ ๊ด€๊ณ„์—†๋Š” noise
Signal์ด ์•„๋‹ˆ๋ผ Distractor์— ํฌ๊ฒŒ ์ขŒ์ง€์šฐ์ง€๋˜๋Š” Weight vector๋กœ ๋ชจ๋ธ์„ ์„ค๋ช…ํ•จ
โ€ข์ผ๋ฐ˜์ ์œผ๋กœ Deep learning model์ด ํ•˜๋Š” ์ผ์€ Data์—์„œ Distractor๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ
โ€ข๊ทธ๋ž˜์„œ weight vector๋ฅผ filter๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค
5
- Distractor์˜ direction์—
๋”ฐ๋ผ weight vector์˜
direction์ด ๋งˆ๊ตฌ ๋ณ€ํ•˜๋Š”โ€จ
๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Œ
- Weight vector์˜ ์—ญํ• ์€
distractor์˜ ์ œ๊ฑฐ์ด๋ฏ€๋กœโ€จ
๋‹น์—ฐํ•œ ํ˜„์ƒ
/ 29
2.1 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus
DeconvNet ์ด์ „๊นŒ์ง€๋Š”
โ€ขinput layer์™€ ๋ฐ”๋กœ ๋งž๋‹ฟ์•„์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ layer์˜ ํšจ๊ณผ์— ๋Œ€ํ•ด์„œ๋งŒ ์„ค๋ช…ํ•˜๊ฑฐ๋‚˜ -> ์„ค๋ช… ๋ถ€์กฑ
โ€ขHessian matrix๋ฅผ ์ด์šฉํ•ด์„œ ๋‹ค๋ฅธ layer์˜ ํšจ๊ณผ๋„ ์„ค๋ช…โ€จ
-> layer๋ฅผ ๋„˜์–ด๊ฐˆ์ˆ˜๋ก ๋ณต์žกํ•ด์ง€๊ธฐ ๋•Œ๋ฌธ์— quadratic approximation์œผ๋ก  ํ•œ๊ณ„๊ฐ€ ์žˆ์Œ
์ฃผ์š” ์ปจ์…‰
โ€ขGradient descent๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • neuron์„ ํ™œ์„ฑํ™”์‹œํ‚ค๋Š” input space์˜ ํŒจํ„ด ์ฐพ๊ธฐ
โ€ข๊ฐ™์€ ๋งฅ๋ฝ์—์„œ ๋น„์Šทํ•œ ์—ฐ๊ตฌ๋“ค ์กด์žฌ
โ€ขSimonyan et al. -> fully connected layer์—์„œ saliency map์„ ์ฐพ๋Š” ์—ฐ๊ตฌ
โ€ขGirchick et al. -> image์˜ ์–ด๋–ค patch๊ฐ€ filter๋ฅผ activation ์‹œํ‚ค๋Š”์ง€ ์ฐพ๊ธฐ
6
(1) Adaptive Deconvolutional Networks for Mid and High Level Feature Learning - Matthew D. Zeiler and Rob Fergus, 2011

(2) Visualizing and Understanding Convolutioinal Networks - Matthew D. Zeiler and Rob Fergus, 2014
/ 29
2.1 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus (Contโ€™d)
์‚ฌ์šฉํ•œ ๋„คํŠธ์›Œํฌ ๊ตฌ์กฐ(AlexNet)
1. ๊ฐ layer๋“ค์€ Convolution layer๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Œ
2. Convolution layer ๋’ค์—๋Š” ํ•ญ์ƒ ReLU ๋ถ™์Œ
3. (Optionally) Max pooling layer ์‚ฌ์šฉ
DeConvNet ์ ˆ์ฐจ
1. image๋ฅผ ๊ธฐ์กด ํ•™์Šต๋œ ConvNet model(์šฐ์ธก)์— ํ†ต๊ณผ
2. ์‚ดํŽด๋ณผ feature map์„ ์„ ์ •ํ•˜๊ณ ,โ€จ
๋‹ค๋ฅธ ๋ชจ๋“  feature map๋“ค์„ 0์œผ๋กœ ๋งŒ๋“  ๋‹ค์Œ,โ€จ
DeConvNet layer(์ขŒ์ธก)์— ํ†ต๊ณผ
(i) Unpool
(ii) Rectify
(iii)Reconstruction
7
(1) Adaptive Deconvolutional Networks for Mid and High Level Feature Learning - Matthew D. Zeiler and Rob Fergus, 2011

(2) Visualizing and Understanding Convolutioinal Networks - Matthew D. Zeiler and Rob Fergus, 2014
/ 29
2.1 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus (Contโ€™d)
Unpooling
โ€ขMax pooling์€ non-invertible -> Approximation
โ€ข๊ทธ๋ž˜์„œ pooling์„ ํ•  ๋•Œ๋งˆ๋‹ค ํ•ด๋‹น layer์—์„œ์˜ ์ตœ๋Œ€๊ฐ’
์œ„์น˜๋ฅผ recordํ•ด๋‘๊ณ , DeConvNet์—์„œ Switchํ•˜๋Š”
๋ฐฉ์‹์„ ์‚ฌ์šฉํ•œ๋‹ค.
Rectification
โ€ขReLU๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— feature map์€ ํ•ญ์ƒ 0 ์ด์ƒ
โ€ขDeConvNet์—์„œ๋„ ์–‘์ˆ˜ ๊ฐ’์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ReLU ํ†ต๊ณผ
Convolutional Filtering(Reconstruction)
โ€ข๊ธฐ์กด learned conv filter๋ฅผ vertically, horizontally
flip์‹œ์ผœ์„œ ์‚ฌ์šฉ(transposed)
โ€ขํ•œ ๊ฐœ activation๋งŒ์„ BackProp์‹œํ‚ค๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ์˜๋ฏธ
8
(1) Adaptive Deconvolutional Networks for Mid and High Level Feature Learning - Matthew D. Zeiler and Rob Fergus, 2011

(2) Visualizing and Understanding Convolutioinal Networks - Matthew D. Zeiler and Rob Fergus, 2014
< ๋…ผ๋ฌธ(1)์˜ figure >
< from towardsdatascience.com >
/ 29
2.1 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus (Contโ€™d)
Occlusion Sensitivity test
โ€ขํŠน์ • ๋ถ€๋ถ„์„ ํšŒ์ƒ‰ ์ƒ์ž๋กœ ๊ฐ€๋ฆผ
ํ•ด๋‹น ๋ถ€๋ถ„์ด ๊ฐ€๋ ค์กŒ์„ ๋•Œ
โ€ข(b) total activation์˜ ๋ณ€ํ™”
โ€ข(d) probability score ๋ณ€ํ™”
โ€ข(e) most probable class ๋ณ€ํ™”
(c) projection ๊ฒฐ๊ณผ
โ€ข๊ฒ€์€ ํ…Œ๋‘๋ฆฌ๋Š” ํ•ด๋‹น ์ด๋ฏธ์ง€
โ€ข๋‹ค๋ฅธ 3๊ฐœ๋Š” ๋‹ค๋ฅธ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ
์˜ˆ์‹œ
ํ•ด์„: Convolution filter๊ฐ€โ€จ
์ด๋ฏธ์ง€์˜ ํŠน์ • ๋ถ€๋ถ„(๊ฐ์ฒด)์„โ€จ
์ž˜ ์žก์•„๋‚ด๊ณ  ์žˆ๋‹ค.โ€จ 9
/ 29
2.2 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg
ํ•ด๋‹น ๋…ผ๋ฌธ์˜ ๋ชฉ์ 
โ€ข์ƒˆ๋กœ์šด ๋ชจ๋ธ์ด ๊ฐœ๋ฐœ๋  ๋•Œ ์‚ฌ์‹ค์ƒ ๋ฒ ์ด์Šค๋Š” ๋™์ผํ•œ๋ฐ ์ž๊พธ ๋ณต์žกํ•ด์ ธ๊ฐ€๊ณ  ์žˆ๋‹ค.
โ€ข๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์š”์†Œ ์ค‘ ์ตœ๊ณ ์˜ ์„ฑ๋Šฅ์„ ๋‚ด๋Š”๋ฐ ์žˆ์–ด ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ด ๋ฌด์—‡์ผ์ง€ ์ฐพ์•„๋ณด์ž
โ€ข๋ชจ๋ธ ํ‰๊ฐ€ ๋ฐฉ๋ฒ•์ด โ€œdeconvolution approachโ€(Guided BackProp)
๋…ผ๋ฌธ์˜ ๊ฒฐ๋ก 
โ€ขConvolution layer๋งŒ์œผ๋กœ ๋ชจ๋“  ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์„ฑ
โ€ขmax-pooling layer๋ฅผ ์“ฐ์ง€ ๋ง๊ณ  -> Strided convolution layer ์‚ฌ์šฉ(stride 2, 3x3 filter)
10(3) Striving for Simplicity: The All Convolutional Net - Jost Tobias Springenberg et al. 2014
/ 29
2.2 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg(Contโ€™d)
Max-pooling์„ Strided Convolution layer๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ์ด์œ 
โ€ขPooling equation
โ€ขConvolution equation
=> pooling, convolution ๋‘˜ ๋ชจ๋‘ ๊ฐ™์€ input์„ ๋ฐ›์œผ๋ฉฐโ€จ
pooling์€ activation function์„ p-norm์„ ์‚ฌ์šฉํ•œ ๊ฒƒ๊ณผ ๊ฐ™๋‹ค.
11(3) Striving for Simplicity: The All Convolutional Net - Jost Tobias Springenberg et al. 2014
si,j,u(f ) = (
โŒŠk/2โŒ‹
โˆ‘
h=โˆ’โŒŠk/2โŒ‹
โŒŠk/2โŒ‹
โˆ‘
w=โˆ’โŒŠk/2โŒ‹
| fg(h,w,i,j,u) |p
)1/p
Notation
โ€ข f : feature map
โ€ข W,H : width, height
โ€ข N : Number of channels
โ€ข k : pooling size
โ€ข r : stride
โ€ข g(h,w,i,j,u) = (r*i + h,โ€จ
r*j + w, u)
โ€ข p : order of p-norm,โ€จ
p๊ฐ€ ๋ฌดํ•œ์œผ๋กœ ๊ฐˆ ๋•Œโ€จ
max-pooling๊ณผ ๊ฐ™์€ ์˜๋ฏธ
โ€ข theta : convolutional
weight
โ€ข sigma : activation function
โ€ข o : # of output channel
ci,j,o(f ) = ฯƒ(
โŒŠk/2โŒ‹
โˆ‘
h=โˆ’โŒŠk/2โŒ‹
โŒŠk/2โŒ‹
โˆ‘
w=โˆ’โŒŠk/2โŒ‹
N
โˆ‘
u=1
ฮธh,w,u,o โ‹… fg(h,w,i,j,u))
/ 29
2.2 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg(Contโ€™d)
์‹คํ—˜์—์„œ ๋น„๊ตํ•œ ๋„คํŠธ์›Œํฌ ์ข…๋ฅ˜
โ€ขA, B, C : Convolutional filter size๊ฐ€ ๋‹ค๋ฆ„
โ€ขC์—์„œ 3๊ฐ€์ง€ ํ˜•ํƒœ๋กœ ์ข€ ๋” ๋‹ค์–‘ํ™”: ํŠนํžˆ ์šฐ์ธก ๋นจ๊ฐ„ ํ‘œ์‹œ๋œ ๋‘ ๋ชจ๋ธ ๋น„๊ต
12(3) Striving for Simplicity: The All Convolutional Net - Jost Tobias Springenberg et al. 2014
๊ฐ€์žฅ ์šฐ์ˆ˜
/ 29
2.2 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg(Contโ€™d)
All-CNN-C ๋ชจ๋ธ์„ Deconvolution ๋ฐฉ์‹์œผ๋กœ ํ‰๊ฐ€
โ€ข์ง์ „์— ์†Œ๊ฐœํ•œ Zeiler & Fergus(2014)์˜ Deconvolution ๋ฐฉ๋ฒ•์€โ€จ
ํ•ด๋‹น ๋ชจ๋ธ์— Max-Pooling layer๊ฐ€ ์—†์–ด์„œ ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š๊ฒŒ ๋‚˜์˜ด
Guided BackProp
โ€ขConvolution layer๋งŒ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— switch ํ•„์š”์—†์Œ
โ€ขActivation ๊ฐ’์ด 0 ์ด์ƒ์ด๊ณ , Gradient๋„ 0 ์ด์ƒ์ธ ๊ฒƒ๋งŒ ์ „ํŒŒ
a) Zeiler&Fergus(2014)
13
/ 29
2.3 ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  - Weight vector์—๋งŒ ์ง‘์ค‘
DeConvNet, Guided BackProp ๋ฐฉ๋ฒ• ๋ชจ๋‘โ€จ
Weight(Conv filter) ์—ฐ์‚ฐ ๊ฒฐ๊ณผ์— ๊ด€์‹ฌ
Weight๊ฐ€ Data์˜ Signal์„ ๋”ฐ๋ผ๊ฐ€์ง€ ์•Š์œผ๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•๋“ค์€โ€จ
Data์˜ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์„ ์žก์•„๋‚ด์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์Œ
14
/ 29
3.1 ๋‹จ์ˆœํ•œ Linear Model ๊ตฌ์ƒ - Deterministic distractor
๋‹จ์ˆœํ•œ Linear model์„ ํ†ตํ•ด signal๊ณผ distractor์˜ ์›€์ง์ž„ ๊ด€์ฐฐ
15
Notation
โ€ข w : filter or weight
โ€ข x : data
โ€ข y : condensed output
โ€ข s : relevant signal
โ€ข d : distracting component.
์›ํ•˜๋Š” output์— ๋Œ€ํ•ด ์•„๋ฌด๋Ÿฐ
์ •๋ณด๋„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์€ ๋ถ€๋ถ„
โ€ข a_s : direction of signal.โ€จ
์›ํ•˜๋Š” output์˜ ํผ์ง„ ๋ชจ์–‘
โ€ข a_d : direction of distractor
s = asyx = s + d
d = adฯต
as = (1,0)T
ad = (1,1)T
y โˆˆ [โˆ’1,1]
ฯต โˆผ ๐’ฉ(ฮผ, ฯƒ2
)
โ€ขData x ๋Š” signal s์™€ distractor d์˜ ํ•ฉ
โ€ข์œ„ ์ˆ˜์‹์—์„œ ์„ ๋งŒ์กฑํ•˜๊ธฐ ์œ„ํ•ด์„ 
โ€ข ์ด๊ณ , ์ด์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ
wT
x = y w = [1, โˆ’ 1]T
wT
asy = y wT
adฯต = 0
/ 29
3.1 ๋‹จ์ˆœํ•œ Linear Model ๊ตฌ์ƒ - Deterministic distractor
16
, ๋‘ ์‹ ๋ชจ๋‘๋ฅผ ์ถฉ์กฑ์‹œ์ผœ์•ผ ํ•จ
โ€ขweight๋Š” distractor๋ฅผ ์ œ๊ฑฐํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— distractor์˜ direction๊ณผ orthogonal ํ•˜๋ ค๊ณ  ํ•จ
โ€ข์ฆ‰ w๋Š” signal์˜ direction๊ณผ alignํ•˜์ง€ ์•Š๋Š”๋‹ค.
โ€ขweight๋Š” distractor์™€ orthogonal ํ•จ์„ ์œ ์ง€ํ•˜๋ฉด์„œ,โ€จ
ํฌ๊ธฐ ์กฐ์ •์„ ํ†ตํ•ด ์„ ์œ ์ง€ํ•˜๋ ค ํ•œ๋‹ค.
Weight vector๋Š” distractor์— ์˜ํ•ด ํฌ๊ฒŒ ์ขŒ์ง€์šฐ์ง€ ๋จ
weight vector๋งŒ์œผ๋กœ ์–ด๋–ค input pattern์ด output์— ์˜ํ–ฅ์„ ๋ผ์น˜๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์Œ
wT
asy = y wT
adฯต = 0
- signal direction์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€
- distractor direction์ด ๋ฐ”๋€Œ๋‹ˆโ€จ
weight direction ์—ญ์‹œ ๋ฐ”๋€œ
wT
as = 1
/ 29
3.2 ๋‹จ์ˆœํ•œ Linear Model ๊ตฌ์ƒ - No distractor, Additive isotropic Gaussian noise
17
Isotropic Gaussian noise๋ฅผ ์„ ํƒํ•œ ์ด์œ 
โ€ขzero mean: noise์˜ mean์€ bias๋ฅผ ํ†ตํ•ด ์–ผ๋งˆ
๋“ ์ง€ ์ƒ์‡„๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋‹จ์ˆœํžˆ 0์œผ๋กœ ์ •ํ•œ๋‹ค.
โ€ขcorrelation์ด๋‚˜ structure๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์—
weight vector๋ฅผ ์ž˜ ํ•™์Šตํ•œ๋‹ค๊ณ  ํ•ด์„œโ€จ
noise๊ฐ€ ์ œ๊ฑฐ๋˜์ง€ ์•Š๋Š”๋‹ค.
โ€ขGaussian noise๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์€โ€จ
L2 regularization๊ณผ ๊ฐ™์€ ํšจ๊ณผ๋ฅผ ๋‚ธ๋‹ค.โ€จ
์ฆ‰ weight๋ฅผ shirink ์‹œํ‚จ๋‹ค.
์œ„ ์กฐ๊ฑด ๋•Œ๋ฌธ์— ์„ ๋งŒ์กฑํ•˜๋Š”โ€จ
๊ฐ€์žฅ ์ž‘์€ weight vector๋Š”โ€จ
์™€ ๊ฐ™์€ ๋ฐฉํ–ฅ์˜ vector
< Gaussian pattern >
yn = ฮฒxn + ฯต
N
โˆ
n=1
๐’ฉ(yn |ฮฒxn, ฯƒ2
)
N
โˆ
n=1
๐’ฉ(yn |ฮฒxn, ฯƒ2
)๐’ฉ(ฮฒ|0,ฮปโˆ’1
)
N
โˆ‘
n=1
โˆ’
1
ฯƒ2
(yn โˆ’ ฮฒxn)2
โˆ’ ฮปฮฒ2
+ const
< Gaussian noise & L2 regularization >
โ€”โ€”> likelihood,
โฌ‡ Logarithm
wT
as = 1
as
as
wโ€ฒ
wโ€ฒโ€ฒ
w
1
/ 29
4. Approaches
18
Functions
โ€ขdata x์—์„œ output y๋ฅผ ๋ฝ‘์•„๋‚ผ ๋•Œ ์“ฐ๋Š” ๋ฐฉ๋ฒ•. ex) gradients, saliency map
โ€ขy๋ฅผ x๋กœ ๋ฏธ๋ถ„ํ•ด์„œ input์˜ ๋ณ€ํ™”๊ฐ€ ์–ด๋–ป๊ฒŒ output์„ ๋ณ€ํ•˜๊ฒŒํ•˜๋Š”์ง€ ์‚ดํŽด๋ณธ๋‹ค.
โ€ขํ•ด๋‹น model์˜ gradient๋ฅผ ์“ฐ๋Š” ๊ฒƒ์ด๊ณ  ๊ฒฐ๊ตญ ์ด gradient๋Š” weight๋‹ค.
Signal
โ€ขSignal: ๋ชจ๋ธ์˜ neuron์„ activate ์‹œํ‚ค๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์„ฑ ์š”์†Œ
โ€ขOutput์—์„œ input space๊นŒ์ง€ gradient๋ฅผ backprop์‹œ์ผœ์„œ ๋ณ€ํ™” ๊ด€์ฐฐ
โ€ขDeConvNet, Guded BackProp์€ ์ „ํŒŒ๋œ ๊ฒƒ์ด signal์ด๋ผ ๋ณด์žฅ ๋ชปํ•œ๋‹ค.
Attribution
โ€ขํŠน์ • Signal์ด ์–ผ๋งˆ๋‚˜ output์— ๊ธฐ์—ฌํ•˜๋Š”์ง€ ๋‚˜ํƒ€๋‚ด๋Š” ์ง€ํ‘œ
โ€ขLinear model์—์„  signal๊ณผ weight vector์˜ element-wise ๊ณฑ์œผ๋กœ ๋‚˜ํƒ€๋‚ด์–ด์ง
โ€ขDeep taylor decomposition ๋…ผ๋ฌธ์—์„  activation ๊ฐ’์„ input์— ๋Œ€ํ•œโ€จ
contribution์œผ๋กœ ๋ถ„ํ•ดํ•˜๊ณ , LRP์—์„  relevance๋ผ ์นญํ•œ๋‹ค.
y = wT
x
โˆ‚y/โˆ‚x = w
PatternNet
PatternAttribution
/ 29
5. Quality criterion for signal estimator
19
์ด์ „ ์ˆ˜์‹์—์„œ ์œ ๋„
wT
x = y
wT
s + wT
d = y
(x = s + d)wT
(s + d) = y
wT
s = y (wT
d = 0)
(wT
)โˆ’1
wT
s = (wT
)โˆ’1
y
ฬ‚s = uuโˆ’1
(wT
)โˆ’1
y
ฬ‚s = u(wT
u)โˆ’1
y
u = random vector
(wT
u โ‰  0)
Quality measure ฯ
S(x) = ฬ‚s
ฯ(S) = 1 โˆ’ maxvcorr(wT
x, vT
(x โˆ’ S(x)))
ฬ‚d = x โˆ’ S(x) y = wT
x, ,
= 1 โˆ’ maxv
vT
cov[y, ฬ‚d]
ฯƒ2
vT ฬ‚d
ฯƒ2
y
โ€ข์ข‹์€ signal estimator๋Š” correlation์„ 0์œผ๋กœ -> ํฐ
โ€ขw๋Š” ์ด๋ฏธ ์ž˜ ํ•™์Šต๋œ ๋ชจ๋ธ์˜ weight๋ผ ๊ฐ€์ •
โ€ขcorrelation์€ scale์— invariant ํ•˜๊ธฐ ๋•Œ๋ฌธ์—โ€จ
์˜ ๋ถ„์‚ฐ์€ ์˜ ๋ถ„์‚ฐ๊ณผ ๊ฐ™์„ ๊ฒƒ์ด๋ž€ ์ œ์•ฝ์กฐ๊ฑด ์ถ”๊ฐ€
โ€ขS(x)๋ฅผ ๊ณ ์ •์‹œํ‚ค๊ณ  optimal ๋ฅผ ์ฐพ๋Š”๋ฐโ€จ
ํ•™์Šต ๋ฐฉ์‹์€ d์™€ y์— ๋Œ€ํ•œ Least-squares regression
ฯ
vT ฬ‚d y
v
illposed problem.
์ด๋Œ€๋ก  ํ’€๋ฆฌ์ง€ ์•Š๋Š”๋‹ค.
๋‹ค๋ฅธ ๋ฐฉ์‹์ด ํ•„์š”
/ 29
6.1 ๊ธฐ์กด Signal estimator ๋ฐฉ์‹
20
The identity estimator
โ€ขdata์— distractor ์—†์ด, signal๋งŒ ์กด์žฌํ•œ๋‹ค ๊ฐ€์ •
โ€ขdata๊ฐ€ ์ด๋ฏธ์ง€์ผ ๋•Œ signal์€ ์ด๋ฏธ์ง€ ๊ทธ๋Œ€๋กœ์ด๋‹ค.
โ€ข๋‹จ์ˆœํ•œ linear model์ผ ๋•Œ attribution ๊ตฌํ•˜๋Š” ์ˆ˜์‹.โ€จ
(distractor๊ฐ€ ์กด์žฌํ•˜๋”๋ผ๋„, attribution์— ํฌํ•จ)
โ€ข์‹ค์ œ ๋ฐ์ดํ„ฐ์— distractor๊ฐ€ ์—†์„ ์ˆ˜ ์—†๊ณ ,โ€จ
forward pass์—์„  ์ œ๊ฑฐ๋˜์ง€๋งŒโ€จ
backward pass์—์„  element wise ๊ณฑ์— ์˜ํ•ด ์œ ์ง€
โ€ข์‹œ๊ฐํ™”์— noise๊ฐ€ ๋งŽ์ด ๋ณด์ธ๋‹ค(LRP)
Sx(x) = x
r = w โŠ™ x = w โŠ™ s + w โŠ™ d
The filter based estimator
โ€ข๊ด€์ธก๋œ signal์€ weight์˜ direction์— ์†ํ•จ์„ ๊ฐ€์ •โ€จ
ex) DeConvNet, Guided BackProp
โ€ขweight๋Š” normalize ๋˜์–ด์•ผ ํ•จ
โ€ขlinear model์ผ ๋•Œ attribution ๊ณต์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๊ณ โ€จ
signal์„ ์ฉ ์ œ๋Œ€๋กœ ์žฌ๊ตฌ์„ฑํ•˜์ง€ ๋ชปํ•จ
Sw(x) =
w
wTw
wT
x
r =
w โŠ™ w
wTw
y
/ 29
6.2 PatternNet & PatternAttribution
21
ํ•™์Šต ๋ฐฉ์‹ ๋ฐ ๊ฐ€์ •
โ€ข criterion์„ ์ตœ์ ํ™”ํ•˜๋Š” ํ•™์Šต๋ฐฉ์‹
โ€ข๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ๋ฒกํ„ฐ ์—์„œ y์™€ d์˜ correlation์ด 0์ผ ๋•Œโ€จ
signal estimator S๊ฐ€ optimal์ด๋ผ ํ•  ์ˆ˜ ์žˆ๋‹ค.
โ€ขLinear model์ผ ๋•Œ y์™€ d์˜ covariance๋Š” 0์ด๋‹ค
cov[y, x] โˆ’ cov[y, S(x)] = 0
ฯ
v
cov[y, x] = cov[y, S(x)]
cov[y, ฬ‚d] = 0
ฯ(S) = 1 โˆ’ maxvcorr(wT
x, vT
(x โˆ’ S(x)))
= 1 โˆ’ maxv
vT
cov[y, ฬ‚d]
ฯƒ2
vT ฬ‚d
ฯƒ2
y
Quality measure
/ 29
6.2 PatternNet & PatternAttribution
22
The linear estimator
โ€ขlinear neuron์€ data x์—์„œ linearํ•œ signal๋งŒ ์ถ”์ถœ ๊ฐ€๋Šฅ
โ€ข์œ„ ์‹์—์„œ์ฒ˜๋Ÿผ y์—๋‹ค linear ์—ฐ์‚ฐ์„ ํ–ˆ์„ ๋•Œ signal ๋‚˜์˜ด
โ€ขlinear model์ผ ๋•Œ y, d์˜ covariance๋Š” 0์ด๋ฏ€๋กœ
Sa(x) = awT
x = ay
cov[x, y]
= cov[S(x), y]
= cov[awT
x, y]
= a โ‹… cov[y, y]
โ‡’ a =
cov[x, y]
ฯƒ2
y
โ€ข๋งŒ์•ฝ d์™€ s๊ฐ€ orthogonal ํ•˜๋‹ค๋ฉด
DeConvNet๊ณผ ๊ฐ™์€ filter-based ๋ฐฉ์‹
๊ณผ ์ผ์น˜ํ•œ๋‹ค.
โ€ขConvolution layer์—์„œ ๋งค์šฐ ์ž˜ ๋™์ž‘
โ€ขFC layer์— ReLU๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด์žˆ๋Š” ๋ถ€๋ถ„
์—์„  correlation์„ ์™„์ „ํžˆ ์ œ๊ฑฐํ•  ์ˆ˜ ์—†
์œผ๋ฏ€๋กœ ์•„๋ž˜ ํ‘œ์ฒ˜๋Ÿผ criterion ์ˆ˜์น˜ ๋‚ฎ์Œ
VGG16์—์„œ

criterion ๋น„๊ต

๋ง‰๋Œ€๊ทธ๋ž˜ํ”„ ์ˆœ์„œ๋Œ€๋กœ

random, S_w,โ€จ
S_a, S_a+-
/ 29
6.2 PatternNet & PatternAttribution
23
The two-component(Non-linear) estimator
โ€ข์•ž์„  linear estimator์™€ ๊ฐ™์€ trick์„ ์“ฐ์ง€๋งŒโ€จ
y ๊ฐ’์˜ ๋ถ€ํ˜ธ์— ๋”ฐ๋ผ ๊ฐ๊ฐ ๋‹ค๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•œ๋‹ค.
โ€ข๋‰ด๋Ÿฐ์ด ํ™œ์„ฑํ™”๋˜์–ด์žˆ๋Š”์ง€์˜ ์—ฌ๋ถ€์— ๋Œ€ํ•œ ์ •๋ณด๋Š”โ€จ
distractor์—๋„ ์กด์žฌ y๊ฐ€ ์Œ์ˆ˜์ธ ๋ถ€๋ถ„๋„ ๊ณ„์‚ฐ ํ•„์š”
โ€ขReLU ๋•Œ๋ฌธ์— ์˜ค์ง positive domain๋งŒโ€จ
locally ์—…๋ฐ์ดํŠธ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ๋ณด์ •
โ€ขcovariance ๊ณต์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๊ณ 
โ€ข๋ถ€ํ˜ธ์— ๋”ฐ๋ผ ๋”ฐ๋กœ ๊ณ„์‚ฐ, ๊ฐ€์ค‘์น˜๋กœ ํ•ฉํ•œ๋‹ค.
Sa+โˆ’(x) =
{
a+wโŠบ
x ifย wโŠบ
x > 0
aโˆ’wโŠบ
x otherwise
x =
{
s+ + d+ ifย y > 0
sโˆ’ + dโˆ’ otherwise
cov(x, y) = ๐”ผ[xy] โˆ’ ๐”ผ[x]๐”ผ[y]
cov(x, y) = ฯ€+(๐”ผ+[xy] โˆ’ ๐”ผ+[x]๐”ผ[y])
+(1 โˆ’ ฯ€+)(๐”ผโˆ’[xy] โˆ’ ๐”ผโˆ’[x]๐”ผ[y])
cov(s, y) = ฯ€+(๐”ผ+[sy] โˆ’ ๐”ผ+[s]๐”ผ[y])
+(1 โˆ’ ฯ€+)(๐”ผโˆ’[sy] โˆ’ ๐”ผโˆ’[s]๐”ผ[y])
โ€ขcov(x,y), cov(s,y)๊ฐ€ ์ผ์น˜ํ•  ๋•Œ, ์–‘์˜ ๋ถ€ํ˜ธ์— ๋Œ€ํ•ด ํ’€๋ฉด
a+ =
๐”ผ+[xy] โˆ’ ๐”ผ+[x]๐”ผ[y]
wโŠบ ๐”ผ+[xy] โˆ’ wโŠบ ๐”ผ+[x]๐”ผ[y]
/ 29
6.2 PatternNet & PatternAttribution
24
PatternNet and PatternAttribution
/ 29
6.2 PatternNet & PatternAttribution
25
PatternNet and PatternAttribution
โ€ขPatternNet, Linear
โ€ขcov[x,y], cov[s,y]๊ฐ€ ๊ฐ™์•„์„œ
โ€ขa๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ x, y๋กœ๋งŒ ๊ณ„์‚ฐ ๊ฐ€๋Šฅ
โ€ขPatternNet, Non-linear
โ€ขReLU activation ํŠน์„ฑ ๊ณ ๋ ค
โ€ข์–‘/์Œ ๋‚˜๋ˆ ์„œ a ๊ฐ’ ๊ณ„์‚ฐ
โ€ขNon-linear ๋ชจ๋ธ์—์„œ ์„ฑ๋Šฅ ์ข‹์Œ
โ€ขPatternAttribution
โ€ขa ๊ฐ’์— w๋ฅผ element-wise ๊ณฑํ•œ ๊ฒฐ๊ณผ๋กœ
โ€ขํ•ด์„ํ•˜๊ธฐ ์‰ฌ์šด ์ข€ ๋” ๊น”๋”ํ•œโ€จ
heat map์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. r = w โŠ™ a+
a =
cov[x, y]
ฯƒ2
y
a+ =
๐”ผ+[xy] โˆ’ ๐”ผ+[x]๐”ผ[y]
wโŠบ ๐”ผ+[xy] โˆ’ wโŠบ ๐”ผ+[x]๐”ผ[y]
/ 29
7. Experiments
26
๊ฐ’ ๋น„๊ต, VGG16 on ImageNetฯ(S)
โ€ขConvolution layer
โ€ข๋ณธ ๋…ผ๋ฌธ์—์„œ ์ œ์‹œํ•œ linear estimator๊ฐ€ ๋‹จ์ˆœํ•˜๋ฉด์„œ๋„ ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๊ณ  ์žˆ์Œ
โ€ข๋ณธ ๋…ผ๋ฌธ์˜ non-linear estimator ์—ญ์‹œ ๋‹ค๋ฅธ filter-based, random ๋ณด๋‹ค ์›”๋“ฑํ•œ ์„ฑ๋Šฅ
โ€ขFC layer with ReLU
โ€ข๋ณธ ๋…ผ๋ฌธ์˜ linear estimator ์„ฑ๋Šฅ ๊ธ‰๊ฒฉํžˆ ๋–จ์–ด์ง
โ€ขnon-linear estimator ์„ฑ๋Šฅ ์œ ์ง€
/ 29
7. Experiments
27
Qualitative evaluation
โ€ขํŠน์ • ์ด๋ฏธ์ง€ ํ•œ ์žฅ์— ๋Œ€ํ•ด ๋น„๊ต ํ•ด์„
โ€ขMethods ๊ตฌ๋ถ„
โ€ขSx : Identity estimator
โ€ขSw : DeConvNet, Guided BackProp
โ€ขSa : Linear
โ€ขSa+- : Non-linear
โ€ข์šฐ์ธก์œผ๋กœ ๊ฐˆ ์ˆ˜๋ก ์ข€ ๋” structure๋ฅผโ€จ
์ž์„ธํ•˜๊ณ  ์„ธ๋ฐ€ํ•˜๊ฒŒ ์žก์•„๋‚ธ๋‹ค.
/ 29
7. Experiments
28
/ 2929
๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
PatternNet & PatternAttribution

Learning how to explain neural networks: PatternNet and PatternAttribution

  • 1.
    Learning how toexplain neural networks PatternNet and PatternAttribution PJ Kindermans et al. 2017 ์†๊ทœ๋นˆ ๊ณ ๋ ค๋Œ€ํ•™๊ต ์‚ฐ์—…๊ฒฝ์˜๊ณตํ•™๊ณผ Data Science & Business Analytics ์—ฐ๊ตฌ์‹ค
  • 2.
    / 29 ๋ชฉ์ฐจ 1. ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก ๋“ค์˜ ์ „๋ฐ˜์ ์ธ ๋ฌธ์ œ์  2. ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก  ๋ถ„์„ 1) DeConvNet 2) Guided BackProp 3. Linear model ๊ตฌ์ƒ 1) Deterministic distractor 2) Additive isotropic Gaussian noise 4. Approaches 5. Quality criterion for signal estimator 6. Learning to estimate signal 1) Existing estimators 2) PatternNet & PatternAttribution 7. Experiments 2
  • 3.
    / 29 0. ์š”์•ฝ Data๋Š”์ค‘์š”ํ•œ ์˜๋ฏธ๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” Signal๊ณผ ์“ธ๋ชจ์—†๋Š” ๋ถ€๋ถ„์ธ Distractor๋กœ ๊ตฌ์„ฑ๋œ๋‹ค. ์‹œ๊ฐํ™”๋ฅผ ํ•œ๋‹ค๋ฉด Signal ๋ถ€๋ถ„์— ์ค‘์ ์„ ๋‘์–ด์•ผ ํ•œ๋‹ค. Model์˜ weight๋Š” Distractor์— ์˜ํ–ฅ์„ ๋งŽ์ด ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์—โ€จ ์‹œ๊ฐํ™”๋ฅผ ํ•  ๋•Œ weight์—๋งŒ ์˜์กดํ•˜๋ฉด ์ข‹์ง€ ์•Š์€ ๊ฒฐ๊ณผ๋ฅผ ๋‚ธ๋‹ค. output y์™€ distractor์˜ correlation์œผ๋กœ signal์˜ ์งˆ์„ ํŒ๋‹จ, ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ถฉ๋ถ„ํžˆ ํ•™์Šต๋œ ๋ชจ๋ธ์˜ { weight, input, output } ๊ฐ’์œผ๋กœ linear, non-linearโ€จ ๋‘ ๋ฐฉ์‹์œผ๋กœ signal์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๊ณ , ์ด ์‹œ๊ทธ๋„๋กœ ์‹œ๊ฐํ™”ํ•œ๋‹ค. 3
  • 4.
    / 29 1. ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก ๋“ค์˜ ๋ฌธ์ œ์  Deep learning์„ ์„ค๋ช…ํ•˜๊ธฐ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ์‹œ๋„๋“ค์ด ์žˆ์–ด์™”์Œ โ€ขDeConvNet, Guided BackProp, LRP(Layer-wise Relevance Propagation) ์œ„ ๋ชจ๋ธ๋“ค์˜ ์ฃผ์š” ๊ฐ€์ •์€ ์ค‘์š”ํ•œ ์ •๋ณด๊ฐ€ ์••์ถ•๋œ Output์„ ๋’ค๋กœ Backpropagation ์‹œํ‚ค ๋ฉด input์— ์ค‘์š”ํ•œ ์ •๋ณด๋“ค์ด ์–ด๋–ป๊ฒŒ ํ•จ์ถ•๋˜์–ด์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ 4
  • 5.
    / 29 1. ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก ๋“ค์˜ ๋ฌธ์ œ์ (Contโ€™d) ํ•˜์ง€๋งŒ ๊ณผ๊ฑฐ ๋ฐฉ๋ฒ•๋ก ๋“ค์ด ์ถ”์ถœํ•œ saliency map๋“ค์ด ๊ฒ‰์œผ๋ก  ๊ทธ๋Ÿด์‹ธํ•ด๋ณด์—ฌ๋„,โ€จ ์ด๋ก ์ ์œผ๋กœ ์™„๋ฒฝํ•˜๊ฒŒ input data์˜ ์ค‘์š”ํ•œ ๋ถ€๋ถ„๋“ค์„ ์ถ”์ถœํ•˜์ง„ ๋ชปํ•จ Data๋Š” Signal๊ณผ Distractor ๋‘ ๊ฐ€์ง€๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ โ€ขRelevant signal: Data๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ค‘์š”ํ•œ ๋ถ€๋ถ„, ํ•ต์‹ฌ ๋‚ด์šฉ โ€ขDistracting component: Data์™€ ๊ด€๊ณ„์—†๋Š” noise Signal์ด ์•„๋‹ˆ๋ผ Distractor์— ํฌ๊ฒŒ ์ขŒ์ง€์šฐ์ง€๋˜๋Š” Weight vector๋กœ ๋ชจ๋ธ์„ ์„ค๋ช…ํ•จ โ€ข์ผ๋ฐ˜์ ์œผ๋กœ Deep learning model์ด ํ•˜๋Š” ์ผ์€ Data์—์„œ Distractor๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ โ€ข๊ทธ๋ž˜์„œ weight vector๋ฅผ filter๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค 5 - Distractor์˜ direction์— ๋”ฐ๋ผ weight vector์˜ direction์ด ๋งˆ๊ตฌ ๋ณ€ํ•˜๋Š”โ€จ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Œ - Weight vector์˜ ์—ญํ• ์€ distractor์˜ ์ œ๊ฑฐ์ด๋ฏ€๋กœโ€จ ๋‹น์—ฐํ•œ ํ˜„์ƒ
  • 6.
    / 29 2.1 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus DeconvNet ์ด์ „๊นŒ์ง€๋Š” โ€ขinput layer์™€ ๋ฐ”๋กœ ๋งž๋‹ฟ์•„์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ layer์˜ ํšจ๊ณผ์— ๋Œ€ํ•ด์„œ๋งŒ ์„ค๋ช…ํ•˜๊ฑฐ๋‚˜ -> ์„ค๋ช… ๋ถ€์กฑ โ€ขHessian matrix๋ฅผ ์ด์šฉํ•ด์„œ ๋‹ค๋ฅธ layer์˜ ํšจ๊ณผ๋„ ์„ค๋ช…โ€จ -> layer๋ฅผ ๋„˜์–ด๊ฐˆ์ˆ˜๋ก ๋ณต์žกํ•ด์ง€๊ธฐ ๋•Œ๋ฌธ์— quadratic approximation์œผ๋ก  ํ•œ๊ณ„๊ฐ€ ์žˆ์Œ ์ฃผ์š” ์ปจ์…‰ โ€ขGradient descent๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • neuron์„ ํ™œ์„ฑํ™”์‹œํ‚ค๋Š” input space์˜ ํŒจํ„ด ์ฐพ๊ธฐ โ€ข๊ฐ™์€ ๋งฅ๋ฝ์—์„œ ๋น„์Šทํ•œ ์—ฐ๊ตฌ๋“ค ์กด์žฌ โ€ขSimonyan et al. -> fully connected layer์—์„œ saliency map์„ ์ฐพ๋Š” ์—ฐ๊ตฌ โ€ขGirchick et al. -> image์˜ ์–ด๋–ค patch๊ฐ€ filter๋ฅผ activation ์‹œํ‚ค๋Š”์ง€ ์ฐพ๊ธฐ 6 (1) Adaptive Deconvolutional Networks for Mid and High Level Feature Learning - Matthew D. Zeiler and Rob Fergus, 2011 (2) Visualizing and Understanding Convolutioinal Networks - Matthew D. Zeiler and Rob Fergus, 2014
  • 7.
    / 29 2.1 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus (Contโ€™d) ์‚ฌ์šฉํ•œ ๋„คํŠธ์›Œํฌ ๊ตฌ์กฐ(AlexNet) 1. ๊ฐ layer๋“ค์€ Convolution layer๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Œ 2. Convolution layer ๋’ค์—๋Š” ํ•ญ์ƒ ReLU ๋ถ™์Œ 3. (Optionally) Max pooling layer ์‚ฌ์šฉ DeConvNet ์ ˆ์ฐจ 1. image๋ฅผ ๊ธฐ์กด ํ•™์Šต๋œ ConvNet model(์šฐ์ธก)์— ํ†ต๊ณผ 2. ์‚ดํŽด๋ณผ feature map์„ ์„ ์ •ํ•˜๊ณ ,โ€จ ๋‹ค๋ฅธ ๋ชจ๋“  feature map๋“ค์„ 0์œผ๋กœ ๋งŒ๋“  ๋‹ค์Œ,โ€จ DeConvNet layer(์ขŒ์ธก)์— ํ†ต๊ณผ (i) Unpool (ii) Rectify (iii)Reconstruction 7 (1) Adaptive Deconvolutional Networks for Mid and High Level Feature Learning - Matthew D. Zeiler and Rob Fergus, 2011 (2) Visualizing and Understanding Convolutioinal Networks - Matthew D. Zeiler and Rob Fergus, 2014
  • 8.
    / 29 2.1 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus (Contโ€™d) Unpooling โ€ขMax pooling์€ non-invertible -> Approximation โ€ข๊ทธ๋ž˜์„œ pooling์„ ํ•  ๋•Œ๋งˆ๋‹ค ํ•ด๋‹น layer์—์„œ์˜ ์ตœ๋Œ€๊ฐ’ ์œ„์น˜๋ฅผ recordํ•ด๋‘๊ณ , DeConvNet์—์„œ Switchํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•œ๋‹ค. Rectification โ€ขReLU๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— feature map์€ ํ•ญ์ƒ 0 ์ด์ƒ โ€ขDeConvNet์—์„œ๋„ ์–‘์ˆ˜ ๊ฐ’์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ReLU ํ†ต๊ณผ Convolutional Filtering(Reconstruction) โ€ข๊ธฐ์กด learned conv filter๋ฅผ vertically, horizontally flip์‹œ์ผœ์„œ ์‚ฌ์šฉ(transposed) โ€ขํ•œ ๊ฐœ activation๋งŒ์„ BackProp์‹œํ‚ค๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ์˜๋ฏธ 8 (1) Adaptive Deconvolutional Networks for Mid and High Level Feature Learning - Matthew D. Zeiler and Rob Fergus, 2011 (2) Visualizing and Understanding Convolutioinal Networks - Matthew D. Zeiler and Rob Fergus, 2014 < ๋…ผ๋ฌธ(1)์˜ figure > < from towardsdatascience.com >
  • 9.
    / 29 2.1 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - DeConvNet by Zeiler & Fergus (Contโ€™d) Occlusion Sensitivity test โ€ขํŠน์ • ๋ถ€๋ถ„์„ ํšŒ์ƒ‰ ์ƒ์ž๋กœ ๊ฐ€๋ฆผ ํ•ด๋‹น ๋ถ€๋ถ„์ด ๊ฐ€๋ ค์กŒ์„ ๋•Œ โ€ข(b) total activation์˜ ๋ณ€ํ™” โ€ข(d) probability score ๋ณ€ํ™” โ€ข(e) most probable class ๋ณ€ํ™” (c) projection ๊ฒฐ๊ณผ โ€ข๊ฒ€์€ ํ…Œ๋‘๋ฆฌ๋Š” ํ•ด๋‹น ์ด๋ฏธ์ง€ โ€ข๋‹ค๋ฅธ 3๊ฐœ๋Š” ๋‹ค๋ฅธ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์˜ˆ์‹œ ํ•ด์„: Convolution filter๊ฐ€โ€จ ์ด๋ฏธ์ง€์˜ ํŠน์ • ๋ถ€๋ถ„(๊ฐ์ฒด)์„โ€จ ์ž˜ ์žก์•„๋‚ด๊ณ  ์žˆ๋‹ค.โ€จ 9
  • 10.
    / 29 2.2 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg ํ•ด๋‹น ๋…ผ๋ฌธ์˜ ๋ชฉ์  โ€ข์ƒˆ๋กœ์šด ๋ชจ๋ธ์ด ๊ฐœ๋ฐœ๋  ๋•Œ ์‚ฌ์‹ค์ƒ ๋ฒ ์ด์Šค๋Š” ๋™์ผํ•œ๋ฐ ์ž๊พธ ๋ณต์žกํ•ด์ ธ๊ฐ€๊ณ  ์žˆ๋‹ค. โ€ข๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์š”์†Œ ์ค‘ ์ตœ๊ณ ์˜ ์„ฑ๋Šฅ์„ ๋‚ด๋Š”๋ฐ ์žˆ์–ด ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ด ๋ฌด์—‡์ผ์ง€ ์ฐพ์•„๋ณด์ž โ€ข๋ชจ๋ธ ํ‰๊ฐ€ ๋ฐฉ๋ฒ•์ด โ€œdeconvolution approachโ€(Guided BackProp) ๋…ผ๋ฌธ์˜ ๊ฒฐ๋ก  โ€ขConvolution layer๋งŒ์œผ๋กœ ๋ชจ๋“  ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์„ฑ โ€ขmax-pooling layer๋ฅผ ์“ฐ์ง€ ๋ง๊ณ  -> Strided convolution layer ์‚ฌ์šฉ(stride 2, 3x3 filter) 10(3) Striving for Simplicity: The All Convolutional Net - Jost Tobias Springenberg et al. 2014
  • 11.
    / 29 2.2 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg(Contโ€™d) Max-pooling์„ Strided Convolution layer๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ์ด์œ  โ€ขPooling equation โ€ขConvolution equation => pooling, convolution ๋‘˜ ๋ชจ๋‘ ๊ฐ™์€ input์„ ๋ฐ›์œผ๋ฉฐโ€จ pooling์€ activation function์„ p-norm์„ ์‚ฌ์šฉํ•œ ๊ฒƒ๊ณผ ๊ฐ™๋‹ค. 11(3) Striving for Simplicity: The All Convolutional Net - Jost Tobias Springenberg et al. 2014 si,j,u(f ) = ( โŒŠk/2โŒ‹ โˆ‘ h=โˆ’โŒŠk/2โŒ‹ โŒŠk/2โŒ‹ โˆ‘ w=โˆ’โŒŠk/2โŒ‹ | fg(h,w,i,j,u) |p )1/p Notation โ€ข f : feature map โ€ข W,H : width, height โ€ข N : Number of channels โ€ข k : pooling size โ€ข r : stride โ€ข g(h,w,i,j,u) = (r*i + h,โ€จ r*j + w, u) โ€ข p : order of p-norm,โ€จ p๊ฐ€ ๋ฌดํ•œ์œผ๋กœ ๊ฐˆ ๋•Œโ€จ max-pooling๊ณผ ๊ฐ™์€ ์˜๋ฏธ โ€ข theta : convolutional weight โ€ข sigma : activation function โ€ข o : # of output channel ci,j,o(f ) = ฯƒ( โŒŠk/2โŒ‹ โˆ‘ h=โˆ’โŒŠk/2โŒ‹ โŒŠk/2โŒ‹ โˆ‘ w=โˆ’โŒŠk/2โŒ‹ N โˆ‘ u=1 ฮธh,w,u,o โ‹… fg(h,w,i,j,u))
  • 12.
    / 29 2.2 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg(Contโ€™d) ์‹คํ—˜์—์„œ ๋น„๊ตํ•œ ๋„คํŠธ์›Œํฌ ์ข…๋ฅ˜ โ€ขA, B, C : Convolutional filter size๊ฐ€ ๋‹ค๋ฆ„ โ€ขC์—์„œ 3๊ฐ€์ง€ ํ˜•ํƒœ๋กœ ์ข€ ๋” ๋‹ค์–‘ํ™”: ํŠนํžˆ ์šฐ์ธก ๋นจ๊ฐ„ ํ‘œ์‹œ๋œ ๋‘ ๋ชจ๋ธ ๋น„๊ต 12(3) Striving for Simplicity: The All Convolutional Net - Jost Tobias Springenberg et al. 2014 ๊ฐ€์žฅ ์šฐ์ˆ˜
  • 13.
    / 29 2.2 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - Guided BackProp by Springenberg(Contโ€™d) All-CNN-C ๋ชจ๋ธ์„ Deconvolution ๋ฐฉ์‹์œผ๋กœ ํ‰๊ฐ€ โ€ข์ง์ „์— ์†Œ๊ฐœํ•œ Zeiler & Fergus(2014)์˜ Deconvolution ๋ฐฉ๋ฒ•์€โ€จ ํ•ด๋‹น ๋ชจ๋ธ์— Max-Pooling layer๊ฐ€ ์—†์–ด์„œ ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š๊ฒŒ ๋‚˜์˜ด Guided BackProp โ€ขConvolution layer๋งŒ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— switch ํ•„์š”์—†์Œ โ€ขActivation ๊ฐ’์ด 0 ์ด์ƒ์ด๊ณ , Gradient๋„ 0 ์ด์ƒ์ธ ๊ฒƒ๋งŒ ์ „ํŒŒ a) Zeiler&Fergus(2014) 13
  • 14.
    / 29 2.3 ๊ณผ๊ฑฐ๋ฐฉ๋ฒ•๋ก  - Weight vector์—๋งŒ ์ง‘์ค‘ DeConvNet, Guided BackProp ๋ฐฉ๋ฒ• ๋ชจ๋‘โ€จ Weight(Conv filter) ์—ฐ์‚ฐ ๊ฒฐ๊ณผ์— ๊ด€์‹ฌ Weight๊ฐ€ Data์˜ Signal์„ ๋”ฐ๋ผ๊ฐ€์ง€ ์•Š์œผ๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•๋“ค์€โ€จ Data์˜ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์„ ์žก์•„๋‚ด์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์Œ 14
  • 15.
    / 29 3.1 ๋‹จ์ˆœํ•œLinear Model ๊ตฌ์ƒ - Deterministic distractor ๋‹จ์ˆœํ•œ Linear model์„ ํ†ตํ•ด signal๊ณผ distractor์˜ ์›€์ง์ž„ ๊ด€์ฐฐ 15 Notation โ€ข w : filter or weight โ€ข x : data โ€ข y : condensed output โ€ข s : relevant signal โ€ข d : distracting component. ์›ํ•˜๋Š” output์— ๋Œ€ํ•ด ์•„๋ฌด๋Ÿฐ ์ •๋ณด๋„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์€ ๋ถ€๋ถ„ โ€ข a_s : direction of signal.โ€จ ์›ํ•˜๋Š” output์˜ ํผ์ง„ ๋ชจ์–‘ โ€ข a_d : direction of distractor s = asyx = s + d d = adฯต as = (1,0)T ad = (1,1)T y โˆˆ [โˆ’1,1] ฯต โˆผ ๐’ฉ(ฮผ, ฯƒ2 ) โ€ขData x ๋Š” signal s์™€ distractor d์˜ ํ•ฉ โ€ข์œ„ ์ˆ˜์‹์—์„œ ์„ ๋งŒ์กฑํ•˜๊ธฐ ์œ„ํ•ด์„  โ€ข ์ด๊ณ , ์ด์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ wT x = y w = [1, โˆ’ 1]T wT asy = y wT adฯต = 0
  • 16.
    / 29 3.1 ๋‹จ์ˆœํ•œLinear Model ๊ตฌ์ƒ - Deterministic distractor 16 , ๋‘ ์‹ ๋ชจ๋‘๋ฅผ ์ถฉ์กฑ์‹œ์ผœ์•ผ ํ•จ โ€ขweight๋Š” distractor๋ฅผ ์ œ๊ฑฐํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— distractor์˜ direction๊ณผ orthogonal ํ•˜๋ ค๊ณ  ํ•จ โ€ข์ฆ‰ w๋Š” signal์˜ direction๊ณผ alignํ•˜์ง€ ์•Š๋Š”๋‹ค. โ€ขweight๋Š” distractor์™€ orthogonal ํ•จ์„ ์œ ์ง€ํ•˜๋ฉด์„œ,โ€จ ํฌ๊ธฐ ์กฐ์ •์„ ํ†ตํ•ด ์„ ์œ ์ง€ํ•˜๋ ค ํ•œ๋‹ค. Weight vector๋Š” distractor์— ์˜ํ•ด ํฌ๊ฒŒ ์ขŒ์ง€์šฐ์ง€ ๋จ weight vector๋งŒ์œผ๋กœ ์–ด๋–ค input pattern์ด output์— ์˜ํ–ฅ์„ ๋ผ์น˜๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์Œ wT asy = y wT adฯต = 0 - signal direction์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€ - distractor direction์ด ๋ฐ”๋€Œ๋‹ˆโ€จ weight direction ์—ญ์‹œ ๋ฐ”๋€œ wT as = 1
  • 17.
    / 29 3.2 ๋‹จ์ˆœํ•œLinear Model ๊ตฌ์ƒ - No distractor, Additive isotropic Gaussian noise 17 Isotropic Gaussian noise๋ฅผ ์„ ํƒํ•œ ์ด์œ  โ€ขzero mean: noise์˜ mean์€ bias๋ฅผ ํ†ตํ•ด ์–ผ๋งˆ ๋“ ์ง€ ์ƒ์‡„๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋‹จ์ˆœํžˆ 0์œผ๋กœ ์ •ํ•œ๋‹ค. โ€ขcorrelation์ด๋‚˜ structure๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— weight vector๋ฅผ ์ž˜ ํ•™์Šตํ•œ๋‹ค๊ณ  ํ•ด์„œโ€จ noise๊ฐ€ ์ œ๊ฑฐ๋˜์ง€ ์•Š๋Š”๋‹ค. โ€ขGaussian noise๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์€โ€จ L2 regularization๊ณผ ๊ฐ™์€ ํšจ๊ณผ๋ฅผ ๋‚ธ๋‹ค.โ€จ ์ฆ‰ weight๋ฅผ shirink ์‹œํ‚จ๋‹ค. ์œ„ ์กฐ๊ฑด ๋•Œ๋ฌธ์— ์„ ๋งŒ์กฑํ•˜๋Š”โ€จ ๊ฐ€์žฅ ์ž‘์€ weight vector๋Š”โ€จ ์™€ ๊ฐ™์€ ๋ฐฉํ–ฅ์˜ vector < Gaussian pattern > yn = ฮฒxn + ฯต N โˆ n=1 ๐’ฉ(yn |ฮฒxn, ฯƒ2 ) N โˆ n=1 ๐’ฉ(yn |ฮฒxn, ฯƒ2 )๐’ฉ(ฮฒ|0,ฮปโˆ’1 ) N โˆ‘ n=1 โˆ’ 1 ฯƒ2 (yn โˆ’ ฮฒxn)2 โˆ’ ฮปฮฒ2 + const < Gaussian noise & L2 regularization > โ€”โ€”> likelihood, โฌ‡ Logarithm wT as = 1 as as wโ€ฒ wโ€ฒโ€ฒ w 1
  • 18.
    / 29 4. Approaches 18 Functions โ€ขdatax์—์„œ output y๋ฅผ ๋ฝ‘์•„๋‚ผ ๋•Œ ์“ฐ๋Š” ๋ฐฉ๋ฒ•. ex) gradients, saliency map โ€ขy๋ฅผ x๋กœ ๋ฏธ๋ถ„ํ•ด์„œ input์˜ ๋ณ€ํ™”๊ฐ€ ์–ด๋–ป๊ฒŒ output์„ ๋ณ€ํ•˜๊ฒŒํ•˜๋Š”์ง€ ์‚ดํŽด๋ณธ๋‹ค. โ€ขํ•ด๋‹น model์˜ gradient๋ฅผ ์“ฐ๋Š” ๊ฒƒ์ด๊ณ  ๊ฒฐ๊ตญ ์ด gradient๋Š” weight๋‹ค. Signal โ€ขSignal: ๋ชจ๋ธ์˜ neuron์„ activate ์‹œํ‚ค๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์„ฑ ์š”์†Œ โ€ขOutput์—์„œ input space๊นŒ์ง€ gradient๋ฅผ backprop์‹œ์ผœ์„œ ๋ณ€ํ™” ๊ด€์ฐฐ โ€ขDeConvNet, Guded BackProp์€ ์ „ํŒŒ๋œ ๊ฒƒ์ด signal์ด๋ผ ๋ณด์žฅ ๋ชปํ•œ๋‹ค. Attribution โ€ขํŠน์ • Signal์ด ์–ผ๋งˆ๋‚˜ output์— ๊ธฐ์—ฌํ•˜๋Š”์ง€ ๋‚˜ํƒ€๋‚ด๋Š” ์ง€ํ‘œ โ€ขLinear model์—์„  signal๊ณผ weight vector์˜ element-wise ๊ณฑ์œผ๋กœ ๋‚˜ํƒ€๋‚ด์–ด์ง โ€ขDeep taylor decomposition ๋…ผ๋ฌธ์—์„  activation ๊ฐ’์„ input์— ๋Œ€ํ•œโ€จ contribution์œผ๋กœ ๋ถ„ํ•ดํ•˜๊ณ , LRP์—์„  relevance๋ผ ์นญํ•œ๋‹ค. y = wT x โˆ‚y/โˆ‚x = w PatternNet PatternAttribution
  • 19.
    / 29 5. Qualitycriterion for signal estimator 19 ์ด์ „ ์ˆ˜์‹์—์„œ ์œ ๋„ wT x = y wT s + wT d = y (x = s + d)wT (s + d) = y wT s = y (wT d = 0) (wT )โˆ’1 wT s = (wT )โˆ’1 y ฬ‚s = uuโˆ’1 (wT )โˆ’1 y ฬ‚s = u(wT u)โˆ’1 y u = random vector (wT u โ‰  0) Quality measure ฯ S(x) = ฬ‚s ฯ(S) = 1 โˆ’ maxvcorr(wT x, vT (x โˆ’ S(x))) ฬ‚d = x โˆ’ S(x) y = wT x, , = 1 โˆ’ maxv vT cov[y, ฬ‚d] ฯƒ2 vT ฬ‚d ฯƒ2 y โ€ข์ข‹์€ signal estimator๋Š” correlation์„ 0์œผ๋กœ -> ํฐ โ€ขw๋Š” ์ด๋ฏธ ์ž˜ ํ•™์Šต๋œ ๋ชจ๋ธ์˜ weight๋ผ ๊ฐ€์ • โ€ขcorrelation์€ scale์— invariant ํ•˜๊ธฐ ๋•Œ๋ฌธ์—โ€จ ์˜ ๋ถ„์‚ฐ์€ ์˜ ๋ถ„์‚ฐ๊ณผ ๊ฐ™์„ ๊ฒƒ์ด๋ž€ ์ œ์•ฝ์กฐ๊ฑด ์ถ”๊ฐ€ โ€ขS(x)๋ฅผ ๊ณ ์ •์‹œํ‚ค๊ณ  optimal ๋ฅผ ์ฐพ๋Š”๋ฐโ€จ ํ•™์Šต ๋ฐฉ์‹์€ d์™€ y์— ๋Œ€ํ•œ Least-squares regression ฯ vT ฬ‚d y v illposed problem. ์ด๋Œ€๋ก  ํ’€๋ฆฌ์ง€ ์•Š๋Š”๋‹ค. ๋‹ค๋ฅธ ๋ฐฉ์‹์ด ํ•„์š”
  • 20.
    / 29 6.1 ๊ธฐ์กดSignal estimator ๋ฐฉ์‹ 20 The identity estimator โ€ขdata์— distractor ์—†์ด, signal๋งŒ ์กด์žฌํ•œ๋‹ค ๊ฐ€์ • โ€ขdata๊ฐ€ ์ด๋ฏธ์ง€์ผ ๋•Œ signal์€ ์ด๋ฏธ์ง€ ๊ทธ๋Œ€๋กœ์ด๋‹ค. โ€ข๋‹จ์ˆœํ•œ linear model์ผ ๋•Œ attribution ๊ตฌํ•˜๋Š” ์ˆ˜์‹.โ€จ (distractor๊ฐ€ ์กด์žฌํ•˜๋”๋ผ๋„, attribution์— ํฌํ•จ) โ€ข์‹ค์ œ ๋ฐ์ดํ„ฐ์— distractor๊ฐ€ ์—†์„ ์ˆ˜ ์—†๊ณ ,โ€จ forward pass์—์„  ์ œ๊ฑฐ๋˜์ง€๋งŒโ€จ backward pass์—์„  element wise ๊ณฑ์— ์˜ํ•ด ์œ ์ง€ โ€ข์‹œ๊ฐํ™”์— noise๊ฐ€ ๋งŽ์ด ๋ณด์ธ๋‹ค(LRP) Sx(x) = x r = w โŠ™ x = w โŠ™ s + w โŠ™ d The filter based estimator โ€ข๊ด€์ธก๋œ signal์€ weight์˜ direction์— ์†ํ•จ์„ ๊ฐ€์ •โ€จ ex) DeConvNet, Guided BackProp โ€ขweight๋Š” normalize ๋˜์–ด์•ผ ํ•จ โ€ขlinear model์ผ ๋•Œ attribution ๊ณต์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๊ณ โ€จ signal์„ ์ฉ ์ œ๋Œ€๋กœ ์žฌ๊ตฌ์„ฑํ•˜์ง€ ๋ชปํ•จ Sw(x) = w wTw wT x r = w โŠ™ w wTw y
  • 21.
    / 29 6.2 PatternNet& PatternAttribution 21 ํ•™์Šต ๋ฐฉ์‹ ๋ฐ ๊ฐ€์ • โ€ข criterion์„ ์ตœ์ ํ™”ํ•˜๋Š” ํ•™์Šต๋ฐฉ์‹ โ€ข๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ๋ฒกํ„ฐ ์—์„œ y์™€ d์˜ correlation์ด 0์ผ ๋•Œโ€จ signal estimator S๊ฐ€ optimal์ด๋ผ ํ•  ์ˆ˜ ์žˆ๋‹ค. โ€ขLinear model์ผ ๋•Œ y์™€ d์˜ covariance๋Š” 0์ด๋‹ค cov[y, x] โˆ’ cov[y, S(x)] = 0 ฯ v cov[y, x] = cov[y, S(x)] cov[y, ฬ‚d] = 0 ฯ(S) = 1 โˆ’ maxvcorr(wT x, vT (x โˆ’ S(x))) = 1 โˆ’ maxv vT cov[y, ฬ‚d] ฯƒ2 vT ฬ‚d ฯƒ2 y Quality measure
  • 22.
    / 29 6.2 PatternNet& PatternAttribution 22 The linear estimator โ€ขlinear neuron์€ data x์—์„œ linearํ•œ signal๋งŒ ์ถ”์ถœ ๊ฐ€๋Šฅ โ€ข์œ„ ์‹์—์„œ์ฒ˜๋Ÿผ y์—๋‹ค linear ์—ฐ์‚ฐ์„ ํ–ˆ์„ ๋•Œ signal ๋‚˜์˜ด โ€ขlinear model์ผ ๋•Œ y, d์˜ covariance๋Š” 0์ด๋ฏ€๋กœ Sa(x) = awT x = ay cov[x, y] = cov[S(x), y] = cov[awT x, y] = a โ‹… cov[y, y] โ‡’ a = cov[x, y] ฯƒ2 y โ€ข๋งŒ์•ฝ d์™€ s๊ฐ€ orthogonal ํ•˜๋‹ค๋ฉด DeConvNet๊ณผ ๊ฐ™์€ filter-based ๋ฐฉ์‹ ๊ณผ ์ผ์น˜ํ•œ๋‹ค. โ€ขConvolution layer์—์„œ ๋งค์šฐ ์ž˜ ๋™์ž‘ โ€ขFC layer์— ReLU๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด์žˆ๋Š” ๋ถ€๋ถ„ ์—์„  correlation์„ ์™„์ „ํžˆ ์ œ๊ฑฐํ•  ์ˆ˜ ์—† ์œผ๋ฏ€๋กœ ์•„๋ž˜ ํ‘œ์ฒ˜๋Ÿผ criterion ์ˆ˜์น˜ ๋‚ฎ์Œ VGG16์—์„œ criterion ๋น„๊ต ๋ง‰๋Œ€๊ทธ๋ž˜ํ”„ ์ˆœ์„œ๋Œ€๋กœ random, S_w,โ€จ S_a, S_a+-
  • 23.
    / 29 6.2 PatternNet& PatternAttribution 23 The two-component(Non-linear) estimator โ€ข์•ž์„  linear estimator์™€ ๊ฐ™์€ trick์„ ์“ฐ์ง€๋งŒโ€จ y ๊ฐ’์˜ ๋ถ€ํ˜ธ์— ๋”ฐ๋ผ ๊ฐ๊ฐ ๋‹ค๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•œ๋‹ค. โ€ข๋‰ด๋Ÿฐ์ด ํ™œ์„ฑํ™”๋˜์–ด์žˆ๋Š”์ง€์˜ ์—ฌ๋ถ€์— ๋Œ€ํ•œ ์ •๋ณด๋Š”โ€จ distractor์—๋„ ์กด์žฌ y๊ฐ€ ์Œ์ˆ˜์ธ ๋ถ€๋ถ„๋„ ๊ณ„์‚ฐ ํ•„์š” โ€ขReLU ๋•Œ๋ฌธ์— ์˜ค์ง positive domain๋งŒโ€จ locally ์—…๋ฐ์ดํŠธ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ๋ณด์ • โ€ขcovariance ๊ณต์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๊ณ  โ€ข๋ถ€ํ˜ธ์— ๋”ฐ๋ผ ๋”ฐ๋กœ ๊ณ„์‚ฐ, ๊ฐ€์ค‘์น˜๋กœ ํ•ฉํ•œ๋‹ค. Sa+โˆ’(x) = { a+wโŠบ x ifย wโŠบ x > 0 aโˆ’wโŠบ x otherwise x = { s+ + d+ ifย y > 0 sโˆ’ + dโˆ’ otherwise cov(x, y) = ๐”ผ[xy] โˆ’ ๐”ผ[x]๐”ผ[y] cov(x, y) = ฯ€+(๐”ผ+[xy] โˆ’ ๐”ผ+[x]๐”ผ[y]) +(1 โˆ’ ฯ€+)(๐”ผโˆ’[xy] โˆ’ ๐”ผโˆ’[x]๐”ผ[y]) cov(s, y) = ฯ€+(๐”ผ+[sy] โˆ’ ๐”ผ+[s]๐”ผ[y]) +(1 โˆ’ ฯ€+)(๐”ผโˆ’[sy] โˆ’ ๐”ผโˆ’[s]๐”ผ[y]) โ€ขcov(x,y), cov(s,y)๊ฐ€ ์ผ์น˜ํ•  ๋•Œ, ์–‘์˜ ๋ถ€ํ˜ธ์— ๋Œ€ํ•ด ํ’€๋ฉด a+ = ๐”ผ+[xy] โˆ’ ๐”ผ+[x]๐”ผ[y] wโŠบ ๐”ผ+[xy] โˆ’ wโŠบ ๐”ผ+[x]๐”ผ[y]
  • 24.
    / 29 6.2 PatternNet& PatternAttribution 24 PatternNet and PatternAttribution
  • 25.
    / 29 6.2 PatternNet& PatternAttribution 25 PatternNet and PatternAttribution โ€ขPatternNet, Linear โ€ขcov[x,y], cov[s,y]๊ฐ€ ๊ฐ™์•„์„œ โ€ขa๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ x, y๋กœ๋งŒ ๊ณ„์‚ฐ ๊ฐ€๋Šฅ โ€ขPatternNet, Non-linear โ€ขReLU activation ํŠน์„ฑ ๊ณ ๋ ค โ€ข์–‘/์Œ ๋‚˜๋ˆ ์„œ a ๊ฐ’ ๊ณ„์‚ฐ โ€ขNon-linear ๋ชจ๋ธ์—์„œ ์„ฑ๋Šฅ ์ข‹์Œ โ€ขPatternAttribution โ€ขa ๊ฐ’์— w๋ฅผ element-wise ๊ณฑํ•œ ๊ฒฐ๊ณผ๋กœ โ€ขํ•ด์„ํ•˜๊ธฐ ์‰ฌ์šด ์ข€ ๋” ๊น”๋”ํ•œโ€จ heat map์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. r = w โŠ™ a+ a = cov[x, y] ฯƒ2 y a+ = ๐”ผ+[xy] โˆ’ ๐”ผ+[x]๐”ผ[y] wโŠบ ๐”ผ+[xy] โˆ’ wโŠบ ๐”ผ+[x]๐”ผ[y]
  • 26.
    / 29 7. Experiments 26 ๊ฐ’๋น„๊ต, VGG16 on ImageNetฯ(S) โ€ขConvolution layer โ€ข๋ณธ ๋…ผ๋ฌธ์—์„œ ์ œ์‹œํ•œ linear estimator๊ฐ€ ๋‹จ์ˆœํ•˜๋ฉด์„œ๋„ ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๊ณ  ์žˆ์Œ โ€ข๋ณธ ๋…ผ๋ฌธ์˜ non-linear estimator ์—ญ์‹œ ๋‹ค๋ฅธ filter-based, random ๋ณด๋‹ค ์›”๋“ฑํ•œ ์„ฑ๋Šฅ โ€ขFC layer with ReLU โ€ข๋ณธ ๋…ผ๋ฌธ์˜ linear estimator ์„ฑ๋Šฅ ๊ธ‰๊ฒฉํžˆ ๋–จ์–ด์ง โ€ขnon-linear estimator ์„ฑ๋Šฅ ์œ ์ง€
  • 27.
    / 29 7. Experiments 27 Qualitativeevaluation โ€ขํŠน์ • ์ด๋ฏธ์ง€ ํ•œ ์žฅ์— ๋Œ€ํ•ด ๋น„๊ต ํ•ด์„ โ€ขMethods ๊ตฌ๋ถ„ โ€ขSx : Identity estimator โ€ขSw : DeConvNet, Guided BackProp โ€ขSa : Linear โ€ขSa+- : Non-linear โ€ข์šฐ์ธก์œผ๋กœ ๊ฐˆ ์ˆ˜๋ก ์ข€ ๋” structure๋ฅผโ€จ ์ž์„ธํ•˜๊ณ  ์„ธ๋ฐ€ํ•˜๊ฒŒ ์žก์•„๋‚ธ๋‹ค.
  • 28.
  • 29.