[Paper Review] Transferring Inductive Bias Through Knowledge Distillation - (3/3)

์„œ์ฟ ยท2021๋…„ 9์›” 12์ผ
1

Inductive-Bias-Series

๋ชฉ๋ก ๋ณด๊ธฐ
4/4
post-thumbnail

์•ˆ๋…•ํ•˜์„ธ์š” :) ์˜ค๋Š˜์€ ์ง€๋‚œ๋ฒˆ ํฌ์ŠคํŒ…์— ์ด์–ด์„œ "Transferring Inductive Bias Through Knowledge Distillation" ๋…ผ๋ฌธ์— ๋Œ€ํ•œ ์ •๋ฆฌ๋ฅผ ์ด์–ด๋‚˜๊ฐ€ ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด์ „ ํฌ์ŠคํŒ…์—์„œ ๋ณธ ๋…ผ๋ฌธ์—์„œ ๋‹ค๋ฃจ๊ฒŒ ๋  ์ฃผ์š” ๊ฐœ๋…๋“ค์ธ Knowledge Distillation๊ณผ Inductive Bias์— ๋Œ€ํ•œ ์„ค๋ช…๊ณผ RNNs vs Transformers์— ๋Œ€ํ•˜ ์‹คํ—˜์„ ์ง„ํ–‰ํ•œ Scenario 1์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐ๋ฅผ ํ’€์–ด๋ดค๋Š”๋ฐ์š”.

์ด์ „ ํฌ์ŠคํŠธ๊ฐ€ ๊ถ๊ธˆํ•˜์‹  ๋ถ„์€ ์•„๋ž˜ ๋งํฌ๋“ค์„ ํ†ตํ•ด ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
1. ๋…ผ๋ฌธ์— ํ•„์š”ํ•œ ๊ฐœ๋…: Knowledge Distillation & Inductive Bias (๋งํฌ)
2. ๋…ผ๋ฌธ ์‹œ๋‚˜๋ฆฌ์˜ค 1 : RNNs vs Transformers (๋งํฌ)

๋…ผ๋ฌธ์˜ ๋ชฉ์ (๋ณต์Šต)

๋ณธ ๋…ผ๋ฌธ์€ "Knowledge Distillation์—์„œ Teacher Model์ด Student Model์— ์ „ํ•˜๋Š” Dark Knowledge์— ๊ณผ์—ฐ Inductive Bias์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์กด์žฌํ• ๊นŒ?" ๋ผ๋Š” ์งˆ๋ฌธ์—์„œ ๋น„๋กฏ๋œ ์˜๋ฌธ์ ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋‘๊ฐ€์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ๊ฐ€์ง€๊ณ  ์‹คํ—˜์„ ์ „๊ฐœํ•ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” RNNs(Teacher Model)๊ณผ Transformers(Student Model)๋ฅผ, ๊ทธ๋ฆฌ๊ณ  ๋‘ ๋ฒˆ์งธ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” CNNs(Teacher Model)๊ณผ MLPs(Student Model)๋ฅผ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.

Two Scenerios

๋ณธ ์—ฐ๊ตฌ๋Š” (1) ์ •๋ง ์„ ์ƒ ๋ชจ๋ธ๋“ค์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” Inductive Bias๊ฐ€ ์–ผ๋งˆ๋‚˜ ์œ ์˜๋ฏธํ•œ๊ฐ€๋ฅผ ๋ณด์—ฌ์ฃผ๊ฐ€, (2) ์„ ์ƒ ๋ชจ๋ธ์—๊ฒŒ ์ง€์‹์€ ์ „์ˆ˜ ๋ฐ›์€ ํ•™์ƒ ๋ชจ๋ธ์ด ์ •๋ง ์„ ์ƒ ๋ชจ๋ธ๊ณผ ์œ ์‚ฌํ•œ ํ•™์Šต์˜ ๊ฒฐ๊ณผ๋ฌผ์„ ๋ณด์—ฌ์ฃผ๋Š” ๊ฐ€ ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์„ ๋ชฉ์ ์œผ๋กœ ์‹คํ—˜์„ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.


์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋‘๋ฒˆ์งธ ์‹œ๋‚˜๋ฆฌ์˜ค(CNNs vs MLPs)์— ๋Œ€ํ•ด ๋‹ค๋ค„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

Scenerio 2

Convolutional Neural Nets (CNNs)

CNN

์ปดํ“จํ„ฐ ๋น„์ „์— ๋Œ€ํ•ด ๊ด€์‹ฌ์žˆ๋Š” ๋ถ„๋“ค์€ ์™ ๋งŒํ•˜๋ฉด ๋“ค์–ด๋ดค์„ ์šฉ์–ด๊ฐ€ ๋ฐ”๋กœ CNN์ผ ํ…๋ฐ์š”. CNN์€ Convolutional Neural Network์˜ ์ค„์ž„๋ง๋กœ, ํ•œ๊ธ€๋กœ๋Š” ํ•ฉ์„ฑ๊ณฑ์‹ ๊ฒฝ๋ง์ด๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ์— ์ด๋ฏธ์ง€๊ฐ€ ๋“ค์–ด์˜ค๊ฒŒ ๋˜๋ฉด Convolution Layer๊ณผ Pooling Layer๋ฅผ ํ†ตํ•ด ์ด๋ฏธ์ง€์˜ ํŠน์ง•๋“ค(Features)์„ ์ถ”์ถœํ•˜๊ณ , ์ถ”์ถœ๋œ ํŠน์ง•๋“ค์„ Fully Connected Layer์— ํ†ต๊ณผ์‹œ์ผœ ์ฃผ์–ด์ง„ task๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ๋งŒ ์‚ดํŽด๋ณผ๊นŒ์š”?

Convolution Layer์€ ์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ Window(Kernel)๊ฐ€ ์ด๋ฏธ์ง€๋ฅผ ์ด๋™ํ•˜๋ฉด์„œ ๊ฐ๊ฐ์˜ ๊ฒน์ณ์ง€๋Š” ํ”ฝ์…€๊ณผ์˜ ๊ณฑ์„ ๋”ํ•œ ๋”ํ•˜๋Š” ์—ฐ์‚ฐ(Convolution, ํ•ฉ์„ฑ๊ณฑ)์„ ์ˆ˜ํ–‰ํ•˜๋Š” Layer์ž…๋‹ˆ๋‹ค. ์ด๋•Œ Window์˜ ๊ฐ’๋“ค์€ ๋ชจ๋ธ์ด ํ•™์Šตํ•˜๊ฒŒ ๋˜๋ฉฐ, Window์˜ ์—ญํ• ์€ ๋ฐ์ดํ„ฐ(์ด๋ฏธ์ง€)์˜ ํŠน์ง•์„ ๋งต ํ˜•ํƒœ์ธ Feature Map(๋˜๋Š” Activation Map)์œผ๋กœ ์ถœ๋ ฅํ•ด์ฃผ๋Š” ์—ญํ• ์ž…๋‹ˆ๋‹ค.

CNN-how

Pooling Layer๋Š” ์•ž์˜ Convolution Layer์˜ ์ถœ๋ ฅ ๊ฐ’(Feature Map)๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„์„œ Feature Map์˜ ํฌ๊ธฐ๋ฅผ ์ค„์ด๊ฑฐ๋‚˜ ํŠน์ • ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ•์กฐํ•˜๋Š” ์šฉ๋„๋กœ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋˜๋Š” ์—ฐ์‚ฐ์„ Pooling(ํ’€๋ง) ์—ฐ์‚ฐ์ด๋ผ๊ณ  ํ•˜๋Š”๋ฐ, ์ด๋Š” ์ •์‚ฌ๊ฐ ํ–‰๋ ฌ(Filter)์˜ ํŠน์ • ์˜์—ญ ์•ˆ์— ๊ฐ’์˜ ๋Œ€ํ‘ฏ๊ฐ’์„ ๊ตฌํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. Pooling์—๋Š” Max Pooling, Average Pooling, Min Pooling์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฆ„์—์„œ ์•Œ ์ˆ˜ ์žˆ๋‹ค์‹œํ”ผ Max Pooling์€ ๊ฐ€์žฅ ํฐ ๊ฐ’์ด, Average Pooling์€ ํ‰๊ท ๊ฐ’์ด, Min Pooling์€ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์ด ์‚ด์•„๋‚จ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.(์‚ฌ์ง„์ฐธ๊ณ )

Pooling Example

Multi Layer Perceptrons (MLPs)

Multi Layer Perceptron์— ๋Œ€ํ•ด ๋…ผํ•˜๊ธฐ ์ „์— ๋จผ์ € Perceptron์— ๋Œ€ํ•ด ๋‹ค๋ฃฐ ์ˆ˜ ๋ฐ–์— ์—†๊ฒ ์ฃ ? ํผ์…‰ํŠธ๋ก (Perceptron)์€ Frank Rosenblatt๊ฐ€ 1957๋…„์— ์ œ์•ˆํ•œ ์ดˆ๊ธฐ ํ˜•ํƒœ์˜ ์ธ๊ณต ์‹ ๊ฒฝ๋ง์œผ๋กœ ๋‹ค์ˆ˜์˜ ์ž…๋ ฅ์œผ๋กœ๋ถ€ํ„ฐ ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ๋ฅผ ๋‚ด๋ณด๋‚ด๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ž…๋ ฅ๊ฐ’์˜ ์„ ํ˜•๊ฒฐํ•ฉ ๊ฐ’์„ ๊ตฌํ•˜๊ณ , ๊ทธ ๊ฐ’์ด 0(threshold)๋ณด๋‹ค ํฐ์ง€๋ฅผ ์—ฌ๋ถ€๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

๋‹จ์ธต Perceptron

๋‹จ์ธต ํผ์…‰ํŠธ๋ก ์€ OR/AND/XOR ์ค‘ OR๊ณผ AND๋ฌธ์ œ๋ฅผ ํ’€ ์ˆ˜ ์žˆ์—ˆ์ง€๋งŒ XOR๋ฌธ์ œ๋Š” ํ’€ ์ˆ˜๊ฐ€ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.
OR/AND/XOR

๋‹จ์ธต ํผ์…‰ํŠธ๋ก ์œผ๋กœ๋Š” ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์ž ์ด์ œ ํ•ด๊ฒฐ์ฑ…์œผ๋กœ ์ œ์‹œ๋œ ๋ฐฉ๋ฒ•์ด ๋‘๊ฐœ์˜ ํผ์…‰ํŠธ๋ก ์„ ๊ฒฐํ•ฉํ•œ ์ค‘ ํผ์…‰ํŠธ๋ก  (2-layer Perceptron)์ธ๋ฐ, ์ด๋ ‡๊ฒŒ ์ธต์ด ์—ฌ๋Ÿฌ๊ฐœ์ธ ํผ์…‰ํŠธ๋ก ์„ ๋‹ค์ธต ํผ์…‰ํŠธ๋ก (Multilayer Perceptron)์ด๋ผ๊ณ  ์นญํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์ด ์šฐ๋ฆฌ๊ฐ€ ์•Œ๊ณ  ์žˆ๋Š” ์ธ๊ณต์‹ ๊ฒฝ๋ง(ANN, Artificial Neural Network)๊ฐ€ ๋˜๊ฒŒ๋ฉ๋‹ˆ๋‹ค.

MLP

Source : https://blog.goodaudience.com/artificial-neural-networks-explained-436fcf36e75

์ธ๊ณต ์‹ ๊ฒฝ๋ง(๋˜๋Š” ๋‹ค์ธต ํผ์ƒ™ํŠธ๋ก )์€ ์œ„ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์ž…๋ ฅ์ธต, ์€๋‹‰์ธต, ์ถœ๋ ฅ์ธต์œผ๋กœ ๊ตฌ์„ฑ์ด ๋ฉ๋‹ˆ๋‹ค. ์ž…๋ ฅ์ธต์€ ์ž…๋ ฅ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ๋“ค์–ด์˜ค๋Š” ์ธต, ์€๋‹‰์ธต์€ ๋‹ค์ˆ˜ ๋…ธ๋“œ ๋˜๋Š” ์ธต๋“ค์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ฐ์ดํ„ฐ๋กœ๋ถ€ํ„ฐ ์ˆจ๊ฒจ์ง„ ์˜๋ฏธ(ํŠน์ง•)์„ ํ•™์Šตํ•˜๋Š” ์ธต, ์ถœ๋ ฅ์ธต์€ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ์ธต์ž…๋‹ˆ๋‹ค.

๋‰ด๋Ÿด๋„คํŠธ์›Œํฌ

๋‰ด๋Ÿด๋„คํŠธ์›Œํฌ์—๋Š” ์†Œ๊ฐœํ•˜์ง€ ์•Š๊ณ  ๋„˜์–ด๊ฐˆ ์ˆ˜ ์—†๋Š” ์ค‘์š”ํ•œ ์šฉ์–ด๋“ค์ด ์กด์žฌํ•˜๋Š” ๋ฐ์š”. ์ด๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํŒŒ๋ผ๋ฏธํ„ฐ(Parameter) : ์ธต ๊ฐ„ ๋…ธ๋“œ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฐ€์ค‘์น˜ (๐‘ค11, ๐‘ค11, โ‹ฏ , ๐‘ง11)๋กœ, ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ํ•™์Šต๋˜์–ด์ง€๋Š” ๊ฐ’์ž…๋‹ˆ๋‹ค.
  • ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ(Hyper-Parameter) : ์€๋‹‰์ธต ๊ฐœ์ˆ˜, ์€๋‹‰๋…ธ๋“œ ๊ฐœ์ˆ˜, activation function๋กœ, ๋ชจ๋ธ์„ ์ •์˜ํ•˜๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ž„์˜๋กœ ๊ฒฐ์ •ํ•˜๋Š” ๊ฐ’์ž…๋‹ˆ๋‹ค.
  • ํ™œ์„ฑํ™” ํ•จ์ˆ˜(Activation Function) : ๋”ฅ๋Ÿฌ๋‹ ๋„คํŠธ์›Œํฌ์—์„œ๋Š” ๋…ธ๋“œ์— ๋“ค์–ด์˜ค๋Š” ๊ฐ’๋“ค์— ๋Œ€ํ•ด ๊ณง๋ฐ”๋กœ ๋‹ค์Œ ๋ ˆ์ด์–ด๋กœ ์ „๋‹ฌํ•˜์ง€ ์•Š๊ณ  ์ฃผ๋กœ ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ผ๊ณ  ๋ถˆ๋ฆฌ์šฐ๋Š” ๋น„์„ ํ˜• ํ•จ์ˆ˜๋ฅผ ํ†ต๊ณผ์‹œํ‚จ ํ›„ ๊ฐ’์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

ํ™œ์„ฑํ™” ํ•จ์ˆ˜์˜ ์ข…๋ฅ˜๋Š” ๋‹ค์–‘ํ•˜์ง€๋งŒ ๋Œ€ํ‘œ์ ์ด๊ณ , ๊ณ ์ „์ ์ธ ๋ช‡ ๊ฐ€์ง€๋งŒ ์†Œ๊ฐœํ•˜์ž๋ฉด ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ์‹œ๊ทธ๋ชจ์ด๋“œ ํ•จ์ˆ˜(Sigmoid Function) : ์‹œ๊ทธ๋ชจ์ด๋“œ(sigmoid)๋Š” S์ž ํ˜•ํƒœ๋ผ๋Š” ์˜๋ฏธ๋กœ, ์‹์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Sigmoid1
Sigmoid2

  • tanh ํ•จ์ˆ˜(Hyperbolic tangent function) : tanh(Hyperbolic tangent)๋Š” ์Œ๊ณก์„  ํ•จ์ˆ˜์˜ ์ผ์ข…์œผ๋กœ, ์‹์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

tanh1
tanh2

  • Rectified Linear Unit(ReLU) : Gradient Vanishing ํ˜„์ƒ์„ ๋ง‰๊ธฐ ์œ„ํ•ด ์ œ์•ˆ๋œ ํ•จ์ˆ˜๋กœ, x ๊ฐ€ ์–‘์ˆ˜๋ฉด Gradient๊ฐ€ 1๋กœ ์ผ์ •ํ•˜๊ฒŒ ๋˜๋ฏ€๋กœ Gradient๊ฐ€ ์ฃฝ๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์‹์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ReLU1
ReLU2

CNNs VS MLPs

์œ„์— ๊ฐœ๋…๋“ค์„ ๋ณด๋ฉด์„œ ๋ˆˆ์น˜์ฑ„์‹  ๋ถ„๋“ค๋„ ์ด๋ฏธ ๊ณ„์‹œ๊ฒ ์ง€๋งŒ, CNN์€ MLP์— ๋น„ํ•ด ๊ตฌ์กฐ์ ์œผ๋กœ ์ œ์•ฝ(Inductive Bias)์„ ๋” ๋งŽ์ด ๋‘๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ ๊ทธ๋ฆผ์„ ๋ณด์‹œ๋ฉด CNN์˜ ๊ฒฝ์šฐ Window๊ฐ€ ์ง€๋‚˜๋‹ค๋‹ˆ๋ฉด์„œ input์— Fixed๋œ Window Weight๋“ค์„ ๋™์ผํ•˜๊ฒŒ ๊ณฑํ•ด์ฃผ๋Š” ๋ฐ˜๋ฉด, MLP์˜ ๊ฒฝ์šฐ๋Š” input์— ๋‹ค๋ฅธ Weight๋“ค์„ ๊ณฑํ•ด์ฃผ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

CNNvsMLP

CNN์˜ Inductive Bias๋กœ๋Š” ํฌ๊ฒŒ ๋‘๊ฐ€์ง€๋ฅผ ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐ”๋กœ Translation Invariance์™€
Scale Invariance์ž…๋‹ˆ๋‹ค. Translation Invariance๋Š” ๋ฌผ์ฒด๋ฅผ ์ด๋™(translate) ์‹œ์ผœ๋„ ์ถœ๋ ฅ ๊ฐ’์ธ Logit ๊ฐ’์€ ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ด๊ณ , Scale Invariance๋Š” ๋ฌผ์ฒด์˜ ์Šค์ผ€์ผ(scale)์„ ์•„๋ฌด๋ฆฌ ๋ฐ”๊พธ์–ด๋„ ์ถœ๋ ฅ ๊ฐ’์ธ Logit ๊ฐ’์€ ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

Translate & Scale

์ด๋Ÿฌํ•œ Inductive Bias๋Š” CNN์˜ ์•„๋ž˜์˜ ํŠน์„ฑ๋“ค๋กœ ์ธํ•ด Translation๊ณผ Scaling์„ ์ˆ˜ํ–‰ํ•ด๋„ ๊ฐ’์ด ๋ณด์กดํ•  ์ˆ˜ ์žˆ๊ฒŒ๋ฉ๋‹ˆ๋‹ค. ๋ฐ”๋กœ Convolution ์—ฐ์‚ฐ, Pooling ์—ฐ์‚ฐ, ๊ทธ๋ฆฌ๊ณ  Cross-Channel Pooling ์—ฐ์‚ฐ์„ ํ†ตํ•ด ์ด๋ฅผ ๋ณด์กดํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์•ž์— ๋‘ ์—ฐ์‚ฐ์€ ์•ž์— Convolutional Neural Nets (CNNs) ํŒŒํŠธ์—์„œ ์†Œ๊ฐœ๋“œ๋ ธ์œผ๋‹ˆ, ๊ฐ„๋‹จํ•˜๊ฒŒ Cross-Channel Pooling ์—ฐ์‚ฐ์€, ํ•œ ์ฑ„๋„ ๋‚ด์—์„œ Pooling ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ธฐ๋ณธ Pooling๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ, ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ฑ„๋„ ์•ˆ์—์„œ ์ด๋ฃจ์–ด์ง€๋ฉฐ Channel๊ฐ„์— Pooling์„ ์ˆ˜ํ–‰ํ•œ ๊ฒƒ์œผ๋กœ ์ดํ•ดํ•˜์‹œ๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.(์•„๋ž˜ ๊ทธ๋ฆผ ์ฐธ๊ณ )

CNN Inductive Bias

์‹คํ—˜ ์„ค๊ณ„ ๋ฐ ๊ฒฐ๊ณผ

๋ณธ ์‹œ๋‚˜๋ฆฌ์˜ค ์—ญ์‹œ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ CNN๋ชจ๋ธ์ด MLP๋ชจ๋ธ๋ณด๋‹ค Translation๊ณผ Scaling์— ๋” ์ข‹์€ Inductive Bias๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”๊ฐ€, ๊ทธ๋ฆฌ๊ณ  ๊ณผ์—ฐ CNN๋ชจ๋ธ์„ Teacher๋กœ, MLP๋ชจ๋ธ์„ Student๋กœ Knowledge Distillation์„ ์ˆ˜ํ–‰ํ•˜์˜€์„ ๋•Œ ์ข‹์€ ์„ฑ๋Šฅ์ด ๋‚˜์˜ค๋Š”๊ฐ€๋ฅผ ์‹คํ—˜์„ ํ†ตํ•ด ๋ณด์ด๊ณ ์ž ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๋ชจ๋ธ Training์„ ์œ„ํ•ด MNIST ๋ฐ์ดํ„ฐ ์…‹์„ ์‚ฌ์šฉํ•˜์˜€๊ณ , Inference ์„ฑ๋Šฅ ํ™•์ธ์„ ์œ„ํ•ด ๊ธฐ๋ณธ MNIST ๋ฐ์ดํ„ฐ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ MNIST-C(Corrupted) ์ค‘ Traslated์™€ Scaled ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

Dataset

๋จผ์ €, ๊ฐ๊ฐ CNN๋ชจ๋ธ๊ณผ MLP๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ํ™•์ธํ•ด๋ณด์•˜๋Š”๋ฐ์š”. Original MNIST ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด์„œ๋Š” CNN๊ณผ MLP ๋‘˜ ๋‹ค ์ข‹์€ ์„ฑ๋Šฅ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ๊ทธ ์™ธ์˜ Translated์™€ Scaled MNIST-C ๋ฐ์ดํ„ฐ์—์„œ๋Š” ์„ฑ๋Šฅ(Accuracy, Expected Calibration Error) ์ฐจ์ด๊ฐ€ ํฌ๊ฒŒ ๋ฒŒ์–ด์งˆ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ๊ฐ’์˜ ๋ถ„์‚ฐ๋„๊ฐ€ ํฐ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด CNN์ด ๊ฐ€์ง„ ๊ตฌ์กฐ์ ์ธ ํŽธํ–ฅ(Inductive Bias)๋ฅผ ํ†ตํ•ด Translation๊ณผ Scaling์— MLP๋ณด๋‹ค ๊ฐ•ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ฑ๋Šฅํ‘œ

์ด์ œ Inductive Bias๊ฐ€ ๋” ํฐ CNN๋ชจ๋ธ์„ Teacher๋ชจ๋ธ๋กœ ํ•˜๊ณ , ์ž‘์€ MLP๋ชจ๋ธ์„ Student๋ชจ๋ธ๋กœ Knowledge Distillation(KD)์„ ์ˆ˜ํ–‰ํ–ˆ์„ ๋•Œ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์™”๋Š”๋ฐ์š”. ์ด๋ฅผ ๋ณด๋ฉด ์œ„์˜ ์„ฑ๋Šฅํ‘œ์— ๋น„ํ•ด์„œ MLP๋ชจ๋ธ๋“ค์˜ ์„ฑ๋Šฅ์ด ๋งŽ์ด ์ƒ์Šนํ•œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ณ , ๋ถ„์‚ฐ๋„ ๊ธฐ์กด MLP๋ณด๋‹ค CNN-MLP๊ฐ€ ์ž‘์€ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ฑ๋Šฅํ‘œ-Distill

์œ„์—์„œ ์ •๋Ÿ‰์ ์œผ๋กœ Inductive Bias๊ฐ€ ์ •๋ง ์ „๋‹ฌ๋˜์–ด ๋ชจ๋ธ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋˜์—ˆ๋Š”๊ฐ€๋ฅผ ํ™•์ธํ–ˆ๋‹ค๋ฉด, ์ด๋ฒˆ์—๋Š” Multi-dimensional Scaling(MDS)๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ณ ์ฐจ์›์˜ Feature Map์„ ์‹œ๊ฐํ™”ํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ MLP์˜ ๋ถ„์‚ฐ์ด CNN๋ณด๋‹ค ํฌ๊ณ , CNN์„ Teacher๋กœ ํ•™์Šต์„ ์ˆ˜ํ–‰ํ•˜๋ฉด ๋ถ„์‚ฐ์ด ๊ฐ์†Œํ•˜๋ฉฐ ์‹œ๊ฐํ™”๋˜๋Š” ์œ„์น˜๊ฐ€ ์ ์  CNN์— ๊ฐ€๊นŒ์›Œ์ง€๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

MDS-1

๋˜ ํ•œ๊ฐ€์ง€ ํฅ๋ฏธ๋กœ์šด ์‹œ๊ฐํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜์˜€๋Š”๋ฐ์š”. ์•„๋ž˜ ๊ทธ๋ฆผ์„ ๋ณด์‹œ๋ฉด ๊ฐ๊ฐ (a),(b),(c)๋Š” MLP, CNN, CNN->MLP๊ฐ€ epoch๋ณ„๋กœ ํ•™์Šต๋˜์–ด ๊ฐ€๋Š” ๊ฒƒ์„ MDS๋กœ ์‹œ๊ฐํ™” ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. (a)์˜ MLP๋ฅผ ๋ณด๋ฉด ์ค‘๊ตฌ๋‚œ๋ฐฉ์ ์œผ๋กœ ํ•ด๊ฐ€ ์ˆ˜๋ ดํ•˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๊ณ , (b)์˜ CNN์„ ๋ณด๋ฉด ๋ญ”๊ฐ€ ์„œ์„œํžˆ ํŠน์ •ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ์ˆ˜๋ ดํ•ด๊ฐ€๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (c)๋Š” CNN(teacher)->MLP(student)์ธ๋ฐ ๊ธฐ์กด MLP(a)์˜ ํ•™์Šต ์–‘์ƒ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ๊ทœ์น™์ ์œผ๋กœ ํ•ด๊ฐ€ ์ˆ˜๋ ดํ•ด๊ฐ€๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

MDS-2

Conclusion

๋ณธ ๋…ผ๋ฌธ์€ Knowledge Distillation(KD)์˜ ๊ฒฝ๋Ÿ‰ํ™” ํšจ๊ณผ ์ด์™ธ์— ๋‹ค๋ฅธ ๋ชจ๋ธ๋“ค๊ณผ ํ•จ๊ป˜ ์“ฐ์ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์„ ์ฐฉ์•ˆํ•˜์—ฌ inductive bias๋ฅผ ๊ณผ์—ฐ KD๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋ฅผ ์‹คํ—˜์„ ํ†ตํ•ด ์•„๋ž˜ ์ˆœ์„œ๋Œ€๋กœ ์ž…์ฆํ•ด๋ณด์ด๊ณ ์ž ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์ฒซ์งธ, ํŠน์ • task์— ์ ๋‹นํ•œ inductive bias๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์ด ์ •๋ง ์ค‘์š”ํ•œ ๊ฐ€๋ฅผ ์‹คํ—˜์„ ํ†ตํ•ด ์ž…์ฆํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๋‘˜์งธ, ํ•ด๋‹น ๋ชจ๋ธ์ด ์ ๋‹นํ•œ inductive bias๋ฅผ ๊ฐ–๊ณ  ์žˆ๋‹ค๋ฉด, inductive bias๊ฐ€ ๋ถ€์กฑํ•œ ๋‹ค๋ฅธ ๋ชจ๋ธ๋“ค์—๊ฒŒ ํ•™์Šต์— ๊ฐ€์ด๋“œ๋ผ์ธ์„ ์ œ๊ณตํ•ด์ค„ ์ˆ˜ ์žˆ์Œ์„ ์‹คํ—˜์„ ํ†ตํ•ด ์ •๋Ÿ‰์ , ๊ทธ๋ฆฌ๊ณ  ์ •์„ฑ์ ์œผ๋กœ ์ž…์ฆํ•˜์˜€์Šต๋‹ˆ๋‹ค.

  • ์ •๋Ÿ‰์ ์œผ๋กœ ์ฆ๋ช… : Accuracy, Expected Calibration Error
  • ์ •์„ฑ์ ์œผ๋กœ ์ฆ๋ช… : ์‹œ๊ฐํ™” (Multi-Dimensional Scaling 2D projection)

ํฅ๋ฏธ๋กญ๊ฒŒ ์ฝ์—ˆ๋˜ ๋…ผ๋ฌธ์„ ๋ฌด๋ ค 3์ฐจ๋ก€์— ๊ฑธ์ณ์„œ ์ž์„ธํ•˜๊ฒŒ ํ•œ๋ฒˆ ๋‹ค๋ฃจ์–ด๋ณด์•˜๋Š”๋ฐ์š”. ์ด๋ ‡๊ฒŒ ์ž์„ธํ•˜๊ฒŒ ๋…ผ๋ฌธ์„ ๋ฆฌ๋ทฐํ•˜๋Š” ๋ฐฉ์‹์€ ์–ด๋• ๋Š”์ง€ ๊ตฌ๋…์ž๋“ค์˜ ์˜๊ฒฌ ๋˜ํ•œ ๊ถ๊ธˆํ•˜๋„ค์š” ๐Ÿ™‚

๊ธด ๊ธ€ ์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ^~^

profile
Always be passionate โœจ

0๊ฐœ์˜ ๋Œ“๊ธ€