[๋…ผ๋ฌธ์ •๋ฆฌ๐Ÿ“ƒ] Self-training with Noisy Student improves ImageNet classification

Self-training with Noisy Student improves ImageNet classification

- Noisy Student -

๋…ผ๋ฌธ์›๋ณธ๐Ÿ˜™

์ด๋ฒˆ ๋…ผ๋ฌธ์€ EfficientNet ์—์„œ ๋” ๋งŽ์€ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ํ•™์Šต์‹œ์ผœ ์ƒˆ๋กœ์šด SOTA ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š” Noisy student์— ๋Œ€ํ•ด ๋ฆฌ๋ทฐํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


๐ŸŒŸ Introduction

๊ทธ ๋™์•ˆ ๋”ฅ๋Ÿฌ๋‹์€ ์ด๋ฏธ์ง€ ์ธ์‹์— ์žˆ์–ด์„œ ๋ˆˆ๋ถ€์‹  ์„ฑ๊ณต์„ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ SOTA(state-of-the-art) ์„ฑ๋Šฅ์„ ๋‚ด๊ธฐ ์œ„ํ•ด์„  ์•„์ฃผ ํฐ ๋ฐ์ดํ„ฐ์…‹์ด ํ•„์š”ํ•˜๋‹ค๋Š” ํ•œ๊ณ„์— ๋ถ€๋”ชํ˜”์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ๋ณด์™„ํ•˜๊ณ ์ž ๋‚˜์˜จ๊ฒƒ์ด ๋ ˆ์ด๋ธ” ๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ์…‹(unlabeled-dataset)์„ ์ถ”๊ฐ€ํ•ด semi-supervised learning ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ๋ฒ ์ด์Šค ๋ชจ๋ธ์€ EfficientNet ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์˜€์œผ๋ฉฐ, ๊ฐ Efficient-B0~B7 ๋ชจ๋ธ๋กœ ํ•™์Šตํ•œ ๊ฒฐ๊ณผ ์„ฑ๋Šฅ์ด ๋” ํ–ฅ์ƒ๋œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

แ„†แ…ฎแ„Œแ…ฆ 3

๋ ˆ์ด๋ธ”๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ์…‹์€ JFT-300M ๋ฐ์ดํ„ฐ ์…‹์„ ์‚ฌ์šฉํ•˜์˜€์œผ๋ฉฐ ๊ตฌ๊ธ€ ๋‚ด์—์„œ ๋งŒ๋“  ๋ฐ์ดํ„ฐ์…‹์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์•ฝ 3์–ต๊ฐœ์˜ ์ด๋ฏธ์ง€๊ฐ€ ์žˆ์–ด ์•ฝ 125๋งŒ๊ฐœ ์ •๋„๋˜๋Š” imageNet ๋ฐ์ดํ„ฐ์…‹์— ๋น„ํ•˜๋ฉด ์—„์ฒญ๋‚œ ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค. JFT-300M ๋ฐ์ดํ„ฐ์…‹์— ๋Œ€ํ•œ ์„ค๋ช…์€ JFT-300M ๋ฐ์ดํ„ฐ์…‹์ด๋ž€?ํฌ์ŠคํŒ…ํ•œ ๊ธ€์„ ์ฐธ๊ณ ํ•˜์„ธ์š”!๐Ÿ‘

ํ•™์Šต ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋จผ์ €, (1) ์„ ์ƒ๋‹˜ ๋ชจ๋ธ์„ ๋ ˆ์ด๋ธ”๋œ ๋ฐ์ดํ„ฐ์…‹(imageNet dataset)์œผ๋กœ ํ•™์Šต์‹œํ‚จ ํ›„ (2) ํ•™์Šต๋œ ์„ ์ƒ๋‹˜ ๋ชจ๋ธ๋กœ ๋ ˆ์ด๋ธ”๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ์…‹(JFT-300M)์˜ ์ˆ˜๋„ ๋ ˆ์ด๋ธ”(pseudo-label)์„ ์ƒ์„ฑํ•ด๋ƒ…๋‹ˆ๋‹ค. ๊ทธ ํ›„ (3) ํ•™์ƒ ๋ชจ๋ธ์ด (1)๊ณผ (2)๊ฐ€ ํ•ฉ์ณ์ง„ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ํ•™์Šต์„ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ๋˜๋ฉด ์„ ์ƒ๋‹˜ ๋ชจ๋ธ๊ณผ ๊ฐ™๊ฑฐ๋‚˜ ๋” ํฐ ๋ชจ๋ธ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ดํ›„์— (4) step(2)์™€ (3)์„ ๋ฐ˜๋ณตํ•˜๋ฉด์„œ ๋ชจ๋ธ ์„ฑ๋Šฅ์„ ๋” ๋†’์ด๋„๋ก ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

๋…ผ๋ฌธ์—์„œ ์ œ์‹œํ•œ ์ด๋ฏธ์ง€๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

image

์ •๋ฆฌํ•˜์ž๋ฉด,

Noisy student Training process

แ„†แ…ฎแ„Œแ…ฆ

๋‹จ, ์—ฌ๊ธฐ์„œ ์˜๋ฌธ์ธ ๊ฒƒ์€ pseudo label์ด ์ดˆ๊ธฐ์—๋Š” ๋ถˆ๋ช…ํ™•ํ•  ํ…๋ฐ ์–ด๋–ป๊ฒŒ ํ•ด์„œ ๋ฐ˜๋ณตํ•˜๋ฉด์„œ ํ•™์Šตํ•˜๋ฉด ์„ฑ๋Šฅ์ด ์ข‹์•„์ง€๋Š”์ง€ ๊ทธ ๋ถ€๋ถ„์— ๋Œ€ํ•œ ์„ค๋ช…์ด ์ข€ ๋ถ€์กฑํ•˜๋‹ค. soft labeled ๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋‹ค๊ณ  ์งง๊ฒŒ ํ•œ์ค„ ์„ค๋ช…์ด ์žˆ๋Š”๋ฐ, ์ด ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋Š” ์ด ๋…ผ๋ฌธ์˜ ์ฒซ๋ฒˆ์งธ ๋ ˆํผ๋Ÿฐ์Šค์ธ Pseudo-Labeling and Confirmation Bias in Deep Semi-Supervised Learning์„ ์ฐธ๊ณ ํ•˜๋ฉด ๋„์›€์ด ๋œ๋‹ค.

๐Ÿ“š ์ด pseudo label ๋…ผ๋ฌธ์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•œ ๊ธ€์€ [๋…ผ๋ฌธ ์ •๋ฆฌ]Pseudo-Labeling and Confirmation Bias in Deep Semi-Supervised Learning์— ์ •๋ฆฌํ•ด ๋‘์—ˆ์œผ๋‹ˆ ํ•„์š”ํ•˜๋‹ค๋ฉด ์ฐธ๊ณ !โ˜˜๏ธ

์ด๋ ‡๊ฒŒ ๋ ˆ์ด๋ธ” ๋˜์ง€์•Š์€ JFT-300M ๋ฐ์ดํ„ฐ์…‹์„ ์ถ”๊ฐ€ํ•ด imageNet ์— ๋Œ€ํ•œ SOTA ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œ์ผฐ์œผ๋ฉฐ ๋™์‹œ์— ๊ฒฌ๊ณ ํ•œ ๋ชจ๋ธ์ด ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๊ฒฌ๊ณ ํ•˜๋‹ค๋Š” ๊ฒƒ์€ ๋…ผ๋ฌธ์—์„œ โ€˜robustnessโ€™๋ผ๊ณ  ํ‘œํ˜„ํ•˜์˜€๋Š”๋ฐ, robustnessํ•œ ๋ชจ๋ธ์„ ๋งŒ๋“ค์—ˆ๋‹ค๋Š” ๊ฒƒ์€ ๋ชจ๋ธ์— ๋“ค์–ด์˜ค๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์ฒ˜์Œ๋ณด๋Š” ๋ฐ์ดํ„ฐ์ด๊ฑฐ๋‚˜ ์›๋ž˜ ํ•™์Šตํ–ˆ์—ˆ๋˜ ๋ฒ”์ฃผ์™€ ์ข€ ๋™๋–จ์–ด์ง„ ๋ฒ”์ฃผ์˜ ์ด๋ฏธ์ง€๋„ ์ž˜ ๋ถ„๋ฅ˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” noisy student๋ฐฉ์‹์œผ๋กœ ํ•™์Šตํ•œ ๋ชจ๋ธ์ด ImageNet dataset๋“ค์˜ SOTA ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š” ๊ฒƒ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ง€ํ‘œ์ž…๋‹ˆ๋‹ค.

แ„†แ…ฎแ„Œแ…ฆ 2

ํ‘œ์˜ ๋งจ ์™ผ์ชฝ์€ ImageNet ๋ฐ์ดํ„ฐ์…‹์ด๋ฉฐ ์ฐจ๋ก€๋Œ€๋กœ ๋ฐ์ดํ„ฐ์…‹๊ณผ ์„ฑ๋Šฅ์ง€ํ‘œ์— ๋Œ€ํ•œ ์„ค๋ช…์„ ํ•˜์ž๋ฉด,

ImageNet-A : ๊ตฌ๋ถ„ํ•˜๊ธฐ ์–ด๋ ค์šด 200 classes์˜ ์ด๋ฏธ์ง€๋“ค๋กœ ๊ตฌ์„ฑ๋œ dataset

ImageNet-C : 15๊ฐ€์ง€ corruption์œผ๋กœ ์‹คํ—˜๋œ ๋ฐ์ดํ„ฐ์…‹์ด๋ฉฐ ๋ณ€ํ™”๊ฐ€ ์•„์ฃผํฐ ๋ฐ์ดํ„ฐ์…‹์ด๋‹ค. mCE(mean corruption error)๋ฅผ ์„ฑ๋Šฅ์ง€ํ‘œ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค.

ImageNet-P : ImageNet-C ์— ๋น„ํ•˜๋ฉด ์•ฝ๊ฐ„์˜ ๋…ธ์ด์ฆˆ๋‚˜ ๊ธฐ์šธ์–ด์ง ์ •๋„๋กœ augmentation๋œ ๋ฐ์ดํ„ฐ์…‹์ด๋‹ค. ์ ์€ ๋ณ€ํ™”์˜ ๋ฐ์ดํ„ฐ์…‹์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค. mFR(mean flip rate)์„ ์„ฑ๋Šฅ์ง€ํ‘œ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค.

mCE(mean corruption error) : image noise์— ์–ผ๋งˆ๋‚˜ ๊ฐ•ํ•œ ๋ชจ๋ธ์ธ์ง€๋ฅผ ๋ณด๋Š” ์ง€ํ‘œ๋กœ noise๊ฐ€ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋„ ์ž˜ ์˜ˆ์ธกํ•ด์•ผํ•˜๋ฏ€๋กœ ์ˆ˜์น˜๊ฐ€ ์ž‘์„ ์ˆ˜๋ก ์ข‹์€ ์„ฑ๋Šฅ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

mFR(mean flip rate) : perturbation(์ž‘์€ ๋ณ€ํ™”)์ด ๋ฐ”๋€” ๋•Œ top-1 prediction์ด ๋ฐ”๋€” ํ™•๋ฅ ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ ๋ณ€ํ™”๊ฐ€ ์ผ์–ด๋‚œ ๋ฐ์ดํ„ฐ์˜ ์˜ˆ์ธก์— ๋ณ€ํ™”ํ•  ํ™•๋ฅ ์ด ์ ์–ด์•ผ ์ข‹์€ ์„ฑ๋Šฅ์ด๋ฏ€๋กœ ์ˆ˜์น˜๊ฐ€ ์ ์„ ์ˆ˜๋ก ์ข‹์€ ์„ฑ๋Šฅ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

๐Ÿ‘‘ iterative training ์„ ํ†ตํ•ด ํ•™์Šตํ•œ ์ตœ๊ณ  ์„ฑ๋Šฅ ๋ชจ๋ธ

iterative training ์„ ํ†ตํ•ด ํ•™์Šตํ•œ ์ตœ๊ณ  ์„ฑ๋Šฅ ๋ชจ๋ธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ฒ˜์Œ teacher๊ณผ student ๋ชจ๋ธ์„ EfficientNet-B7์œผ๋กœ ํ•™์Šต์‹œํ‚จ ํ›„ ๊ทธ ์ดํ›„๋กœ๋Š” EfficientNet-L2๋กœ 3๋ฒˆ์˜ ๋ฐ˜๋ณต์„ ํ†ตํ•ด ์–ป์€ ๋ชจ๋ธ์ด SOTA์„ฑ๋Šฅ์„ ๋ณด์ธ๋‹ค๊ณ  ํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ EfficientNet-L2 ๋Š” efficientNet์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ’์˜ scaling์„ ํฌ๊ฒŒ ํ•˜์—ฌ ์ƒ์„ฑํ•œ ๋ชจ๋ธ์ด๋‹ค. ์ž์„ธํ•œ scaling ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋Š” EfficientNet ๋…ผ๋ฌธ๋ฆฌ๋ทฐ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

๋ณด๋ฉด label ๋ฐ์ดํ„ฐ์…‹๊ณผ unlabel ๋ฐ์ดํ„ฐ์…‹์˜ batch ๋น„์ค‘์„ ๋‹ค๋ฅด๊ฒŒ ํ•ด์ฃผ์—ˆ๋Š”๋ฐ unlabel ๋ฐ์ดํ„ฐ์…‹์„ ๋” ๋งŽ์ด ํ•™์Šตํ•˜๋„๋ก ํ•ด์ฃผ์—ˆ๊ณ  ๊ทธ ๊ฒฐ๊ณผ ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ธ๋‹ค๊ณ  ํ•œ๋‹ค.

แ„†แ…ฎแ„Œแ…ฆ 4


๐Ÿ‘‘ noise ๊ฐ€ ์ค‘์š”ํ•œ ์ด์œ 

training์„ ํ•  ๋•Œ, student ๋ชจ๋ธ์€ ์ตœ์ข… ๋ฐ์ดํ„ฐ์…‹์— noise๋ฅผ ์ค€ (augmentation์„ ๊ฐ€ํ•œ) ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ํ•™์Šต์„ ํ•˜๋Š”๋ฐ, ์ด๋•Œ์˜ noisesms SD(stochastic depth), dropout, data-augmentation ์ด ์„ธ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•œ๋‹ค.

์•„๋ž˜ ํ‘œ๋ฅผ ๋ถ„์„ํ•ด๋ณด๋ฉด ๊ธฐ๋ณธ EfficientNet-B5 ๋ชจ๋ธ(๋…ธ๋ž€์ƒ‰)๋ณด๋‹ค Noisy student training์„ ํ•œ ๋ชจ๋ธ(๋นจ๊ฐ„์ƒ‰)์˜ ์„ฑ๋Šฅ์ด ๋” ๋†’์€๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ, ๊ทธ์— ๋น„ํ•ด augmentation์„ ํ•˜์ง€ ์•Š์€ ๋ชจ๋ธ๋“ค์€(๋นจ๊ฐ„์ƒ‰) ์„ฑ๋Šฅ์ด ๋” ๋‚ฎ์•„์ง์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํ•œํŽธ, teacher ๋ชจ๋ธ์— augmentation์„ ์ฃผ๋ฉด ๋ฐ˜๋Œ€๋กœ ๋˜ ์„ฑ๋Šฅ์ด ๋‚ฎ์•„์ง€๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์ „์ฒด์ ์œผ๋กœ noisy student training ์„ ๊ฑฐ์นœ ๋ชจ๋ธ๋“ค์€ augmentation ์—ฌ๋ถ€์™€ ์ƒ๊ด€์—†์ด ์›๋ž˜ ๋ฒ ์ด์Šค efficientNet ๋ชจ๋ธ๋ณด๋‹ค ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š”๋ฐ ์ด๊ฒƒ์€ ๋…ผ๋ฌธ์—์„œ๋„ ์•„๋งˆ training ๋•Œ stochastic gradient descent ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋” ๋†’์•„์ง„ ๊ฒƒ์ด๋ผ๊ณ  ๊ฐ€์„ค์„ ์„ธ์› ๋‹ค.

แ„†แ…ฎแ„Œแ…ฆ 5


๐ŸŒŽ Experiments Result

์ด๋ฒˆ ๋…ผ๋ฌธ์€ ์ด์ „ SOTA ์„ฑ๋Šฅ ๋ชจ๋ธ๋ณด๋‹ค ๋” ์ ์€ ํŒŒ๋ผ๋ฏธํ„ฐ์™€ extra data ์ˆ˜๋กœ ๋” ๋†’์€ ์„ฑ๋Šฅ์„ ๋‹ฌ์„ฑํ–ˆ๋‹ค๋Š” ์ ์—์„œ ์˜๋ฏธ๊ฐ€ ์žˆ๋‹ค.

แ„†แ…ฎแ„Œแ…ฆ 6


์ฐธ๊ณ 

[1] https://deep-learning-study.tistory.com/554

[2] https://hoya012.github.io/blog/Self-training-with-Noisy-Student-improves-ImageNet-classification-Review/

ํƒœ๊ทธ: ,

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ:

๋Œ“๊ธ€๋‚จ๊ธฐ๊ธฐ