ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • โ˜˜๏ธŽ Computer VIsion - Szeliski 5์žฅ โ˜˜๏ธŽ
    ๐Ÿฎ ์ด๊ฒƒ์ €๊ฒƒ ๊ณต๋ถ€/โ˜˜๏ธŽ Computer Vision - Szeliski 2026. 2. 13. 20:17

    5.4 Convolutional newral networks

    5.4.7 Self-supervised learning

    ํ•˜๋‚˜์˜ ์ž‘์—…์„ ์œ„ํ•ด ๋ฐฑ๋ณธ ๋„คํŠธ์›Œํฌ๋ฅผ pre-trainํ•ด๋‘๊ณ , ๋งˆ์ง€๋ง‰ ๋ช‡ ์ธต์„ ๋‹ค๋ฅธ ์ž‘์—…์— ๋งž๋Š” ์ƒˆ๋กœ์šด ํ—ค๋“œ๋กœ ๊ต์ฒดํ•œ ๋‹ค์Œ ๊ทธ ๋ถ€๋ถ„์„ ํ•™์Šต์‹œํ‚ค๋Š” ๋ฐฉ์‹์€ ๋งค์šฐ ํ”ํ•˜๋‹ค.

    ๊ฒฝ์šฐ์— ๋”ฐ๋ผ์„œ๋Š” ์›๋ž˜ ๋ฐฑ๋ณธ ๋„คํŠธ์›Œํฌ์˜ ๋งˆ์ง€๋ง‰ ๋ช‡ ๊ฐœ ์ธต์„ fine-tuningํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    transfer learning(์ „์ดํ•™์Šต) : ํ•œ ์ž‘์—…์—์„œ ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ๋‹ค๋ฅธ ์ž‘์—…์— ํ™œ์šฉํ•˜๋Š” ์•„์ด๋””์–ด์ด๋‹ค.

    domain adaptation(๋„๋ฉ”์ธ ์ ์‘) : ์ตœ์ข…์ ์œผ๋กœ ์ ์šฉํ•˜๋ ค๋Š” ์šฉ๋„์™€ ๋ฐ์ดํ„ฐ์˜ ํ†ต๊ณ„์  ํŠน์„ฑ์— ๋งž๊ฒŒ ๋„คํŠธ์›Œํฌ์˜ ๋งˆ์ง€๋ง‰ ๋ถ€๋ถ„์„ ์ˆ˜์ •, ์กฐ์ •ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค. 

    ์ด๋Ÿฌํ•œ ์ ‘๊ทผ์€ ์›๋ž˜ labeled dataset์œผ๋กœ ๋ฐฑ๋ณธ์„ ํ•™์Šต์‹œํ‚ค๋Š” fully supervised ๋ฐฉ์‹์œผ๋กœ ํ•™์Šต๋œ ๋ฐฑ๋ณธ์— ์ ์šฉ๋˜์—ˆ๋‹ค.

    ํ•˜์ง€๋งŒ unlabeled ํ˜„์‹ค ์„ธ๊ณ„ ์ด๋ฏธ์ง€๊ฐ€ ํ›จ์”ฌ ๋งŽ์ด ์กด์žฌํ•˜๋ฏ€๋กœ, ์ด๋Ÿฐ unlabeled ๋Œ€๊ทœ๋ชจ ์ด๋ฏธ์ง€๋กœ pre-trainingํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋งค์šฐ ์ข‹์„ ๊ฒƒ์ด๋‹ค.

     

    self-supervised learning์€ unlabeled ์ด๋ฏธ์ง€๋กœ๋ถ€ํ„ฐ ๋ผ๋ฒจ์„ ์ž๋™์œผ๋กœ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์žˆ๋Š” superbised learning ํ˜•ํƒœ์˜ pretext task๋ฅผ ๋งŒ๋“ ๋‹ค. 

    pre-training์„ ๋๋‚ธ ๋’ค์—๋Š”, ๋„คํŠธ์›Œํฌ๋ฅผ ์ตœ์ข…์ ์œผ๋กœ ํ’€๊ณ  ์‹ถ์€ downstream ๊ณผ์ œ์— ๋งž๊ฒŒ ์ˆ˜์ •ํ•˜๊ณ  fine-tuningํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    [image classification ๋„คํŠธ์›Œํฌ๋ฅผ pre-trainingํ•˜๊ธฐ ์œ„ํ•ด ์ œ์•ˆ๋œ pretext task]

    Context prediction : ์„œ๋กœ ๊ฐ€๊นŒ์šด ์ด๋ฏธ์ง€ ํŒจ์น˜๋“ค์„ ๊ฐ€์ ธ์™€์„œ, ๊ทธ๋“ค ์‚ฌ์ด์˜ ์ƒ๋Œ€์ ์ธ ์œ„์น˜๋ฅผ ์˜ˆ์ธกํ•œ๋‹ค.

    Context encoders : ์ด๋ฏธ์ง€์—์„œ ํ•˜๋‚˜ ์ด์ƒ์˜ ๋ˆ„๋ฝ๋œ ์˜์—ญ์„ inpainting์œผ๋กœ ์ฑ„์šด๋‹ค

    9-ํƒ€์ผ ์ง์†Œ ํผ์ฆ : ํƒ€์ผ๋“ค์„ ์˜ฌ๋ฐ”๋ฅธ ์œ„์น˜๋กœ ๋‹ค์‹œ ๋ฐฐ์—ดํ•œ๋‹ค.

    ํ‘๋ฐฑ ์ด๋ฏธ์ง€ ์ปฌ๋Ÿฌํ™”

    90๋„ ๋‹จ์œ„ ํšŒ์ „ ๋ณต์› : ์ด๋ฏธ์ง€๋ฅผ 90๋„์˜ ๋ฐฐ์ˆ˜๋กœ ํšŒ์ „์‹œํ‚จ ๋’ค, ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋˜‘๋ฐ”๋กœ ์„ธ์šฐ๋Š”(ํšŒ์ „ ๊ฐ๋„๋ฅผ ๋งžํžˆ๋Š”) ์ž‘์—…์„ ํ•œ๋‹ค. 

     

    ๋‹จ์ผ ์ด๋ฏธ์ง€ ๊ธฐ๋ฐ˜ pretext ๊ณผ์ œ๋ฅผ ์“ฐ๋Š” ๊ฒƒ ์™ธ์—๋„, ์—ฐ์† ํ”„๋ ˆ์ž„์ด ์˜๋ฏธ์ ์œผ๋กœ ๊ด€๋ จ๋œ ๋‚ด์šฉ์„ ๋‹ด๊ณ  ์žˆ๋Š” ๋น„๋””์˜ค ํด๋ฆฝ์„ ํ™œ์šฉํ•ด ์™”๋‹ค.

    ๋น„๋””์˜ค ํ”„๋ ˆ์ž„๋“ค์„ ์‹œ๊ฐ„ ์ˆœ์„œ๋Œ€๋กœ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ •๋ ฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์ฆ‰ context prediction๊ณผ ์ง์†Œ ํผ์ฆ์˜ temporal(์‹œ๊ฐ„์ ) ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

    ๋˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋ก  ์ปฌ๋Ÿฌํ™”๋ฅผ ๋น„๋””์˜ค๋กœ ํ™•์žฅํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์ฒซ ๋ฒˆ์จฐ ํ”„๋ ˆ์ž„์˜ ์ƒ‰์ƒ์„ ์ฃผ๊ณ  ๊ทธ ์ •๋ณด๋ฅผ ์ด์šฉํ•ด ๋‚˜๋จธ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. 

    ์ด๋Š” ๋„คํŠธ์›Œํฌ๊ฐ€ semantic categoreis์™€ correspondences๋ฅผ ํ•™์Šตํ•˜๋„๋ก ์œ ๋„ํ•œ๋‹ค.

    ๋น„๋””์˜ค๋Š” ๋ณดํ†ต ์†Œ๋ฆฌ(์˜ค๋””์˜ค)๋ฅผ ํ•จ๊ป˜ ํฌํ•จํ•˜๋ฏ€๋กœ, ์ด๋ฅผ self-supervised learning์—์„œ ์ถ”๊ฐ€์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์˜ˆ) ๋„คํŠธ์›Œํฌ๊ฐ€ ์‹œ๊ฐ ์‹ ํ˜ธ์™€ ์ฒญ๊ฐ ์‹ ํ˜ธ๋ฅผ ์„œ๋กœ ์ •๋ ฌํ•˜๋„๋ก ์š”๊ตฌํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์˜ˆ) unsupervised (contrastive(๋Œ€์กฐํ•™์Šต)) ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ด๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค. 

     

    semi-supervised learning ์‹œ์Šคํ…œ์€ pretext task๋ฅผ ์œ„ํ•ด ์ •๋‹ต(ground truth) ๋ผ๋ฒจ์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜์—ฌ, ์ด๋ฅผ supervised learning ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. 

    contrastive / metric learning : ๋‹ค๋ฅธ ๋Œ€์•ˆ์œผ๋กœ๋Š”, contrastive loss๋‚˜ ๋‹ค๋ฅธ ranking loss๋ฅผ ์‚ฌ์šฉํ•ด unsupervised learning์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

    ์˜๋ฏธ์ ์œผ๋กœ ๋น„์Šทํ•œ ์ž…๋ ฅ๋“ค์ด ๋น„์Šทํ•œ ์ธ์ฝ”๋”ฉ(ํ‘œํ˜„)์„ ๋งŒ๋“ค๋„๋ก ์œ ๋„ํ•˜๊ณ , ๋ฐ˜๋Œ€๋กœ ์„œ๋กœ ๋‹ค๋ฅธ ์ž…๋ ฅ๋“ค์€ ํ‘œํ˜„ ๊ณต๊ฐ„์—์„œ ๋” ๋ฉ€์–ด์ง€๋„๋ก ๋ฒŒ๋ ค ๋†“๋Š” ๊ฒƒ์ด๋‹ค. 

     

    ๋„คํŠธ์›Œํฌ๊ฐ€ ๊ฐ instance(๊ฐ ํ•™์Šต ์˜ˆ์ œ)์— ๋Œ€ํ•ด ๋ณ„๋„์˜ embedding์„ ์ƒ์„ฑํ•˜๋„๋ก ํ•™์Šต์‹œํ‚ค๋ฉฐ, ์ƒˆ ์ƒ˜ํ”Œ์ด ํ•™์Šต ์ค‘์ธ ์‹ ๊ฒฝ๋ง์„ ํ†ต๊ณผํ•  ๋•Œ๋งˆ๋‹ค ๊ทธ embedding์„ moving average memory bank์— ์ €์žฅํ•œ๋‹ค.

    ๊ทธ๋‹ค์Œ embedding ๊ณต๊ฐ„์—์„œ์˜ nearest neighbors๋ฅผ ์ด์šฉํ•ด ์ƒˆ๋กœ์šด ์ด๋ฏธ์ง€๋ฅผ ๋ถ„๋ฅ˜ํ•œ๋‹ค.

    Momemtum Contrast(MoCo)๋Š” ์ด memory bank๋ฅผ, ์‹œ๊ฐ„์— ๋”ฐ๋ผ ์กฐ์ •๋˜๋Š” momentum encoder๋ฅผ ํ†ตํ•ด ์ธ์ฝ”๋”ฉ๋œ ์ƒ˜ํ”Œ๋“ค์„ ๋‹ด๋Š” ๊ณ ์ • ๊ธธ์ด queue๋กœ ๋Œ€์ฒดํ•œ๋‹ค.

    ์ด momentum encoder๋Š” ์‹ค์ œ๋กœ ํ•™์Šต๋˜๋Š” ๋„คํŠธ์›Œํฌ์™€๋Š” ๋ถ„๋ฆฌ๋œ ๋ณ„๋„์˜ ์ธ์ฝ”๋”์ด๋‹ค.

    Pretext-Invariant Representation Learning(PIRL)์€ pretext task์™€ multi-crop data augmentation๊ณผ ํ•จ๊ผ ๋ฐฐ์น˜ ๋‚ด ๊ฐ ์ƒ˜ํ”Œ๊ณผ ๋ฐฐ์น˜์˜ ๋‹ค๋ฅธ ๋ชจ๋“  ์ƒ˜ํ”Œ ์‚ฌ์ด์— contrasive loss(normalized temperature cross-entorpy)์„ ์ ์šฉํ•œ๋‹ค.

    MoCo v2๋Š” MoCo์™€ SimCLR์˜ ์•„์ด๋””์–ด๋ฅผ ๊ฒฐํ•ฉํ•ด ๋” ์ข‹์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป๋Š”๋‹ค.

    ๋˜ํ•œ ์ƒ์„ฑ๋œ embedding์„ ์ง์ ‘ ๋น„๊ตํ•˜๊ธฐ๋ณด๋‹ค๋Š” ๋จผ์ € fully connected network(MLP)๋ฅผ ํ•œ ๋ฒˆ ์ ์šฉํ•œ ๋’ค์— ๋น„๊ตํ•œ๋‹ค. 

     

    contrastive loss๋Š” metric learning์—์„œ ์œ ์šฉํ•œ ๋„๊ตฌ๋กœ ์˜๋ฏธ์ ์œผ๋กœ ๊ด€๋ จ๋œ ์ž…๋ ฅ๋“ค์— ๋Œ€ํ•ด์„œ๋Š” embedding space์—์„œ ๊ฑฐ๋ฆฌ๊ฐ€ ์ž‘์•„์ง€๋„๋ก ์œ ๋„ํ•œ๋‹ค.

    ์ด์— ๋Œ€ํ•œ ๋Œ€์•ˆ์œผ๋กœ deep clustering์„ ์ด์šฉํ•˜์—ฌ, ๊ด€๋ จ๋œ ์ž…๋ ฅ๋“ค์ด ์œ ์‚ฌํ•œ ์ถœ๋ ฅ์„ ๋‚ด๋„๋ก ์œ ๋„ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค. 

     

    ์˜๋ฏธ์ ์œผ๋กœ ๋น„์Šทํ•œ ์ž…๋ ฅ๋“ค๋ผ๋ฆฌ์˜ ์œ ์‚ฌ์„ฑ๋งŒ ๊ฐ•์ œํ•˜๋Š” representation learning๋„ ์ž˜ ์ž‘๋™ํ•œ๋‹ค.

    contrastive learning์ฒ˜๋Ÿผ negative ์Œ์ด ์—†์œผ๋ฉด, ํ‘œํ˜„์ด ๋ชจ๋“  ์ž…๋ ฅ์— ๋Œ€ํ•ด ํ•ญ์ƒ ๊ฐ™์€ ์ƒ์ˆ˜๊ฐ’์„ ์˜ˆ์ธกํ•ด ์œ ์‚ฌ์„ฑ์„ ์ตœ๋Œ€ํ™”ํ•˜๋Š” ์‹์˜ ๋ฌด์˜๋ฏธํ•œ ํ•ด๋กœ ๋ถ•๊ดดํ•˜๊ธฐ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์— ์ง๊ด€์— ๋ฐ˜ํ•œ๋‹ค.

    ์ด๋Ÿฐ ๋ถ•๊ดด๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ๋ณดํ†ต ๋„คํŠธ์›Œํฌ ์„ค๊ณ„์— ์ฃผ์˜๋ฅผ ๊ธฐ์šธ์ธ๋‹ค.

     

    contrastive learning๊ณผ ๊ด€๋ จ ์—ฐ๊ตฌ๋“ค์€ ์—ฌ๋Ÿฌ data augmentation์„ ์กฐํ•ฉํ•ด์„œ ์‚ฌ์šฉํ•˜๋ฉฐ, ์ด๋Ÿฌํ•œ ๋ณ€ํ™”์—๋„ ๋ถˆ๋ณ€์ธ representation์„ ํ•™์Šตํ•˜๋„๋ก ํ•œ๋‹ค. 

    generative modeling์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

    ํ”ฝ์…€์„ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ representation์„ pre-trainingํ•˜๋Š”๋ฐ, ์˜ˆ์ธก ๋ฐฉ์‹์—” ๋‘ ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค.

    auto-regressive ๋ฐฉ์‹์€ GPT๋‚˜ ๋‹ค๋ฅธ ์–ธ์–ด ๋ชจ๋ธ์ฒ˜๋Ÿผ ์ด์ „ ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋‹ค์Œ ํ”ฝ์…€์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

    de-noising ๋ฐฉ์‹์€, BERT๋‚˜ masked auto-encoder์ฒ˜๋Ÿผ ์ผ๋ถ€ ํ”ฝ์…€์„ ๊ฐ€๋ฆฐ ๋’ค(๋˜๋Š” ๋…ธ์ด์ฆˆ๋ฅผ ๋„ฃ์€ ๋’ค) ์ด๋ฅผ ๋ณต์›ํ•˜๋„๋ก ํ•™์Šตํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

    generative modeling์€ ๋น„์ „๋ถ€ํ„ฐ NLP๊นŒ์ง€ ์—ฌ๋Ÿฌ ๋„๋ฉ”์ธ์— ๊ฑธ์นœ self-supervised learning์„ ํ•˜๋‚˜๋กœ ์—ฐ๊ฒฐํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค.

     

    student-teacher ๋ชจ๋ธ ๋˜ํ•œ self-supervised learning์˜ ๋ณ€ํ˜•์ด๋‹ค.

    teacher ๋„คํŠธ์›Œํฌ๊ฐ€ student ๋„คํŠธ์›Œํฌ๋ฅผ ํ•™์Šต์‹œํ‚ค๊ธฐ ์œ„ํ•œ ํ›ˆ๋ จ example๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

    ์ด๋Ÿฐ ์ข…๋ฅ˜์˜ ์•„ํ‚คํ…์ฒ˜๋Š” ์›๋ž˜ model compression, knowledge distillation์œผ๋กœ ๋ถˆ๋ ธ์œผ๋ฉฐ, ๋” ์ž‘์€ ๋ชจ๋ธ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜์—ˆ๋‹ค.

    ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ์™€ ๋” ํฐ ์šฉ๋Ÿ‰์˜ ๋„คํŠธ์›Œํฌ๋ฅผ ๊ฒฐํ•ฉํ•˜๋ฉด, ๋ชจ๋ธ ํฌ๊ธฐ๋ฅผ ์ค„์ด๋Š” ๋ชฉ์ ๋ฟ ์•„๋‹ˆ๋ผ ์„ฑ๋Šฅ ํ–ฅ์ƒ์—๋„ ๋„์›€์ด ๋œ๋‹ค. 


    5.5 More complex models

    5.5.1 Three-dimensional CNNs

    ์›์น™์ ์œผ๋กœ๋Š” 2D ๋„คํŠธ์›Œํฌ์— ์ถ”๊ฐ€ ์ถ• ๋ฐฉํ–ฅ์œผ๋กœ ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ๋ฅผ ๋ผ์›Œ ๋„ฃ๊ธฐ๋งŒ ํ•˜๋ฉด, ๋˜๋Š” groupted convolution์„ ์‚ฌ์šฉํ•˜๋ฉด 3D convolution์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

    ํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ์ „์ฒด 3D ๋ณผ๋ฅจ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ์— ๋‹ค๋ฃจ๊ณ , ๋ชจ๋“  kernel์ด 3๋ฒˆ์งธ ์ฐจ์›(์˜ˆ. ์‹œ๊ฐ„/๊นŠ์ด) ๋ฐฉํ–ฅ์œผ๋กœ๋„ ๊ฐ€์ค‘์น˜๋ฅผ ๊ณต์œ ํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ํŽธ์ด ๋” ํŽธ๋ฆฌํ•˜๋‹ค.

    ๋˜๋Š” ๊ฐ ์ธต์—์„œ 3๋ฒˆ์งธ ์ฐจ์šด์— ๋Œ€ํ•ด ์—ฌ๋Ÿฌ ์ž…๋ ฅ/์ถœ๋ ฅ feature channel์„ ํ•จ๊ป˜ ๋‹ค๋ฃจ๋Š” ๊ตฌ์กฐ๋กœ ์„ค๊ณ„ํ•˜๊ธฐ๋„ ์‰ฝ๋‹ค.

     

    temporal(์‹œ๊ฐ„์ ) ์ •๋ณด๋ฅผ ๊ฒฐํ•ฉํ•˜๋Š” ์—ฌ๋Ÿฌ ๋Œ€์•ˆ์  ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์žˆ๋‹ค.

    ๋‹จ์ผ ํ”„๋ ˆ์ž„ ์ ‘๊ทผ์€ ๊ฐ ํ”„๋ ˆ์ž„์„ ์„œ๋กœ ๋…๋ฆฝ์ ์œผ๋กœ ๋ถ„๋ฅ˜ํ•˜๋ฉฐ, ์˜ค์ง ๊ทธ ํ”„๋ ˆ์ž„ ์ž์ฒด์˜ ๋‚ด์šฉ์—๋งŒ ์˜์กดํ•œ๋‹ค.

    late fusion์€ ๊ฐ ํ”„๋ ˆ์ž„์—์„œ ์ƒ์„ฑ๋œ feature๋“ค์„ ๊ฐ€์ ธ์™€์„œ clip ๋‹จ์œ„๋กœ ํ•˜๋‚˜์˜ ๋ถ„๋ฅ˜ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ ๋‹ค.

    early fusion์€ ์ธ์ ‘ํ•œ ํ”„๋ ˆ์ž„๋“ค์˜ ์ž‘์€ ๋ฌถ์Œ์„ 2D CNN์˜ ์—ฌ๋Ÿฌ ์ฑ„๋„์ฒ˜๋Ÿผ ๋ฌถ์–ด์„œ ์ž…๋ ฅ์œผ๋กœ ๋„ฃ๋Š” ๋ฐฉ์‹์ด๋‹ค.

    ์ด๋Ÿฐ ๋ฐฉ์‹์—์„œ ์‹œ๊ฐ„ ์ถ•์— ๊ฑธ์นœ ์ƒํ˜ธ์ž‘์šฉ์€ ํ•ฉ์„ฑ๊ณฑ์ด ๊ฐ–๋Š” weight sharing์ด๋‚˜ temporal shift invariance ๊ฐ™์€ ์„ฑ์งˆ์„ ์ œ๋Œ€๋กœ ๊ฐ–์ง€ ๋ชปํ•œ๋‹ค.

    3D CNN์€ spatio-temporal ์œˆ๋„์šฐ ์œ„์—์„œ ๋™์ž‘ํ•˜๋Š” ๊ณต๊ฐ„๊ณผ ์‹œ๊ฐ„์— ๋Œ€ํ•ด ๋ถˆ๋ณ€์ธ 3์ฐจ์› Kernel์„ ํ•™์Šตํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐํ•ฉํ•˜์—ฌ ์ตœ์ข… ์ ์ˆ˜๋ฅผ ๋งŒ๋“ ๋‹ค. 

     

    ์•„์ฃผ ๋‹จ์ˆœํ•œ 3x3x3 convolution์„ ๊นŠ์€ ๋„คํŠธ์›Œํฌ์—์„œ pooling๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•ด๋„, ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. (3D CNN์˜ VGG)

     

    ๋น„๋””์˜ค ์ฒ˜๋ฆฌ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ 3D CNN์€ volumetric(๋ถ€ํ”ผ) image processing์—๋„ ์ ์šฉ๋˜์–ด ์™”๋‹ค.

     

    ์ผ๋ฐ˜์ ์ธ 2D CNN๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, 3D CNN ์•„ํ‚คํ…์ฒ˜๋„ ๊ณต๊ฐ„์ , ์‹œ๊ฐ„์  ํ•ด์ƒ๋„, ์ŠคํŠธ๋ผ์ด๋”ฉ, ์ฑ„๋„ ๊นŠ์ด ๋“ฑ์„ ๋‹ค์–‘ํ•˜๊ฒŒ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    ํ•˜์ง€๋งŒ 3D CNN์€ ๊ณ„์‚ฐ๋Ÿ‰๊ณผ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ๋งค์šฐ ํฐ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

    → SlowFast๋ผ๋Š” two-stream ์•„ํ‚คํ…์ฒ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

    slow pathway๊ฐ€ ๋” ๋‚ฎ์€ ํ”„๋ ˆ์ž„๋ ˆ์ดํŠธ์—์„œ ๋™์ž‘ํ•˜๊ณ , fast pathway๋Š” ์‹œ๊ฐ„์ ์œผ๋กœ ๋” ์ด˜์ด˜ํ•˜๊ฒŒ ์ƒ˜ํ”Œ๋ง์„ ํ•˜์ง€๋งŒ ์ฑ„๋„ ์ˆ˜๋Š” ๋” ์ ๊ฒŒ ๊ฐ€์ ธ๊ฐ€๋ฉฐ, ๋‘ ๊ฒฝ๋กœ์˜ feature๋ฅผ ๊ฒฐํ•ฉํ•œ๋‹ค.

    ๋˜ํ•œ ๋น„๋””์˜ค ์ฒ˜๋ฆฌ ๋„คํŠธ์›Œํฌ๋Š” channel-seperated convolutions์ด๋‚˜ neural architecture search์„ ํ†ตํ•ด์„œ๋„ ๋” ํšจ์œจ์ ์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. 

    multigrid ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ๋น„๋””์˜ค ์ธ์‹ ๋ชจ๋ธ์˜ ํ•™์Šต์„ ๋” ๋น ๋ฅด๊ฒŒ ๊ฐ€์†ํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    3D point clouds and meshes

    volumetric density, implicit distance functions, ๋น„๋””์˜ค ์‹œํ€€์Šค์ฒ˜๋Ÿผ 3์ฐจ์› ๊ฒฉ์ž ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ๋ฟ ์•„๋‹ˆ๋ผ, neural network๋Š” ๋‹จ์ผ ์ด๋ฏธ์ง€ ํ•œ ์žฅ์œผ๋กœ๋„ 3D ๋ชจ๋ธ์„ ์ถ”๋ก ํ•˜๋Š” ๋ฐ์—๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์ด๋Š” ํ”ฝ์…€ ๋‹จ์œ„ ๊นŠ์ด๋ฅผ ์˜ˆ์ธกํ•˜๊ฑฐ๋‚˜, ๋ถ€ํ”ผ ๋ฐ€๋„ ํ‘œํ˜„์œผ๋กœ ๋‚˜ํƒ€๋‚ธ ์™„์ „ํ•œ 3D ๋ชจ๋ธ์„ ์žฌ๊ตฌ์„ฑํ•˜์—ฌ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค. 

    ์ตœ๊ทผ์—๋Š” ์ด๋Ÿฌํ•œ 3D inference ๋„คํŠธ์›Œํฌ ์ค‘ ์ผ๋ถ€๊ฐ€ ์ •ํ™•ํ•œ 3D ๊ตฌ์กฐ๋ฅผ ์ง„์งœ๋กœ ์ถ”๋ก ํ•œ๋‹ค๊ธฐ๋ณด๋‹ค ๋‹จ์ง€ ๋Œ€๋žต์ ์ธ ๋ฌผ์ฒด ๋ฒ”์ฃผ๋ฅผ ์ธ์‹ํ•œ ๋’ค ์•ฝ๊ฐ„์˜ ๋งž์ถค์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ˆ˜์ค€์ผ ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ์ ์„ ์‹œ์‚ฌํ•œ๋‹ค.

    3D point cloud๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๊ธฐ๋„ ํ•œ๋‹ค.

    RGB-D, RGB ์ด๋ฏธ์ง€๋กœ๋ถ€ํ„ฐ ์‚ผ๊ฐํ˜• mesh๋ฅผ ์ถ”๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค.

    5.5.3 Transformers

    deep neural network์— attension ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ถ”๊ฐ€ํ•œ ์ƒˆ๋กœ์šด ์•„ํ‚คํ…์ฒ˜์ด๋‹ค.

    ์ž…๋ ฅ ํ† ํฐ์„ ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์”ฉ ์ฒ˜๋ฆฌํ•˜๋Š” RNN ๋ฐ ๊ทธ ๋ณ€ํ˜•๋“ค๊ณผ ๋‹ฌ๋ฆฌ, transformer๋Š” ์ „์ฒด ์ž…๋ ฅ ์‹œํ€€์Šค๋ฅผ ํ•œ๋ฒˆ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. 

     

    ์ปดํ“จํ„ฐ ๋น„์ „์— transformer๋ฅผ ์ ์šฉํ•˜๋ ค๋Š” ๋™๊ธฐ๋Š” NLP์— ์ ์šฉํ•˜๋ ค๋Š” ๋™๊ธฐ์™€ ๋‹ค๋ฅด๋‹ค.

    RNN์€ ์ž…๋ ฅ์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ํ•œ๊ณ„๋ฅผ ๊ฐ–์ง€๋งŒ, convolution์€ ์—ฐ์‚ฐ ์ž์ฒด๊ฐ€ ๋ณธ์งˆ์ ์œผ๋กœ ๋ณ‘๋ ฌ์ ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค.

    ๋Œ€์‹  convolution์˜ ๋ฌธ์ œ๋Š” inductive bias(๊ท€๋‚ฉ์  ํŽธํ–ฅ)๊ณผ ๊ด€๋ จ์ด ์žˆ์œผ๋ฉฐ, convolution ๋ชจ๋ธ ์•ˆ์— ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‚ด์žฅ๋˜์–ด ์žˆ๋Š” default assumptions์„ ์˜๋ฏธํ•œ๋‹ค.

     

    convolution ์—ฐ์‚ฐ์€ ๊ฐ€๊นŒ์ด ์žˆ๋Š” ํ”ฝ์…€๋“ค์ด ๋ฉ€๋ฆฌ ์žˆ๋Š” ํ”ฝ์…€๋“ค๋ณด๋‹ค ๋” ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฐ€์ •์„ ๋‚ดํฌํ•˜๊ณ  ์žˆ๋‹ค.

    ์—ฌ๋Ÿฌ ๊ฐœ์˜ convolution ์ธต์„ ์ฐจ๊ณก์ฐจ๊ณก ์Œ“์•„ ์˜ฌ๋ ค์•ผ๋งŒ receptive fields์ด ์ถฉ๋ถ„ํžˆ ์ปค์ ธ์„œ ์ด๋ฏธ์ง€ ์ „์ฒด๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

    ๋„คํŠธ์›Œํฌ์— non-local ์—ฐ์‚ฐ์„ ๋ถ€์—ฌํ•˜๋ฉด ์ด๋Ÿฐ ํ•œ๊ณ„๋ฅผ ์™„ํ™”ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๋Š” ์ผ๋ถ€ image denoising ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์—ฐ์‚ฐ๊ณผ ์œ ์‚ฌํ•˜๋‹ค.

     

    transformer์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ์š”์†Œ๋Š” self-attention์œผ๋กœ, ๋„คํŠธ์›Œํฌ์˜ ํ•œ layer์— ์žˆ๋Š” N๊ฐœ์˜ unit activations ๊ฐ๊ฐ์— attention์„ ์ ์šฉํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.

    key-value ์Œ {(k_i, v_i)}์˜ ์ง‘ํ•ฉ๊ณผ query q๊ฐ€ ์ฃผ์–ด์ง€๋ฉด, ๋”•์…”๋„ˆ๋ฆฌ๋Š” query์™€ ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜๋Š” ํ‚ค k_i์— ๋Œ€์‘ํ•˜๋Š” ๊ฐ’ v_i๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

    neural network์—์„œ๋Š” key์™€ query๊ฐ€ rea-valued vectors(์‹ค์ˆ˜ ๋ฒกํ„ฐ)๋กœ ์ฃผ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์—, ํ•ด๋‹น ์—ฐ์‚ฐ์€ ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜๋Š” ํ•˜๋‚˜๋ฅผ ๊ณ ๋ฅด๋Š” ๋Œ€์‹ , query vector์™€ key vector๋“ค ์‚ฌ์ด์˜ (์Œ๋ณ„) ๊ฑฐ๋ฆฌ/์œ ์‚ฌ๋„์— ๋”ฐ๋ผ ๊ฐ€์ค‘์น˜๊ฐ€ ์ •ํ•ด์ง€๊ณ , ๊ทธ ๊ฐ€์ค‘์น˜๋กœ value vector๋“ค์„ weighted sumํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

    ์ด๋Š” scattered data interpolation(์‚ฐ์žฌ ๋ฐ์ดํ„ฐ ๋ณด๊ฐ„)๊ณผ ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ฐ™์€ ์•„์ด๋””์–ด์ด์ง€๋งŒ, radial distance(๋ฐฉ์‚ฌ ๊ฑฐ๋ฆฌ)๋ฅผ ์“ฐ๋Š” ๋Œ€์‹  scaled dot-product attention(์Šค์ผ€์ผ๋œ ์ ๊ณฑ ์–ดํ…์…˜)์„ ์‚ฌ์šฉํ•œ๋‹ค. 

    scaled dot-product attention์€ query ๋ฒกํ„ฐ์™€ key ๋ฒกํ„ฐ์˜ ๋‚ด์ ์„ ๊ณ„์‚ฐํ•œ ๋’ค, ์ž„๋ฒ ๋”ฉ ์ฐจ์› D์˜ ์ œ๊ณฑ๊ทผ์œผ๋กœ ๋‚˜๋ˆ  ์Šค์ผ€์ผ์„ ์ค„์ด๊ณ  softmax ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•œ๋‹ค.

    K์™€ V๋Š” ๊ฐ๊ฐ ํ‚ค ๋ฒกํ„ฐ๋“ค๊ณผ ๊ฐ’ ๋ฒกํ„ฐ๋“ค์„ ํ–‰ ๋ฐฉํ–ฅ์œผ๋กœ ์Œ“์•„ ๋งŒ๋“  ํ–‰๋ ฌ์ด๊ณ  y๋Š” ์–ดํ…์…˜ ์—ฐ์‚ฐ์ž์˜ ์ถœ๋ ฅ์ด๋‹ค.

    ์ž…๋ ฅ ๋ฒกํ„ฐ๋“ค์˜ ์ง‘ํ•ฉ {x_0, x_1, ..., x_N-1}์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, self-attention ์—ฐ์‚ฐ์€ ์ถœ๋ ฅ ๋ฒกํ„ฐ๋“ค์˜ ์ง‘ํ•ฉ {x'_0, x'_1, ...., x'_N-1}์„ ๋งŒ๋“ ๋‹ค.

    self-attention์˜ ๊ณ„์‚ฐ ๊ทธ๋ž˜ํ”„๋ฅผ ์‚ฌ์šฉํ•ด ํ•˜๋‚˜์˜ ์ถœ๋ ฅ ๋ฒกํ„ฐ x_2๋ฅผ ์–ป๋Š” ๊ณผ์ •

    self-attention์€ ํ•™์Šต๋˜๋Š” ์„ธ ๊ฐœ์˜ ๊ฐ€์ค‘์น˜ ํ–‰๋ ฌ W_q, W_k, W_v๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ์ด๋“ค์€ ๊ฐ ์œ ๋‹›(ํ† ํฐ/์œ„์น˜)์— ๋Œ€ํ•ด ์–ดํ…์…˜ ๋ธ”๋ก์— ๋“ค์–ด๊ฐ€๋Š” query, key, value ๋ฒกํ„ฐ๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค.

    ๊ทธ ๋‹ค์Œ value vector๋“ค์˜ weighted sum์„ ๊ณ„์‚ฐํ•˜๊ณ , ํ•„์š”์— ๋”ฐ๋ผ ์ด๋ฅผ MLP(๋‹ค์ธต ํผ์…‰ํŠธ๋ก )์— ํ†ต๊ณผ์‹œ์ผœ ์ตœ์ข…์ ์œผ๋กœ x'_2๋ฅผ ๋งŒ๋“ ๋‹ค.

     

    fully connected layer์ด๋‚˜ convolutional layer๊ณผ ๋น„๊ตํ•˜๋ฉด self-attention์€ ๊ฐ ์ถœ๋ ฅ์„ ๊ณ„์‚ฐํ•  ๋•Œ ์ž…๋ ฅ ๋ฒกํ„ฐ ์ „์ฒด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค.

    fully connected layer๋Š” ๊ฐ ์ž…๋ ฅ์— ๋Œ€ํ•œ ๊ฐ€์ค‘์น˜๊ฐ€ ๊ณ ์ •๋˜์–ด ์žˆ๋Š” ๋ฐ˜๋ฉด, self-attention์—์„œ๋Š” ๊ฐ€์ค‘์น˜๊ฐ€ ์ž…๋ ฅ์— ๋”ฐ๋ผ ์ฆ‰์„์—์„œ ์กฐ์ •๋œ๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

    ๋˜ํ•œ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ž…๋ ฅ์˜ ๋ชจ๋“  ๋ถ€๋ถ„์— ์ฃผ์˜๋ฅผ ๊ธฐ์šธ์ผ ์ˆ˜ ์žˆ๋‹ค.

    ์ž…๋ ฅ์˜ local region๋งŒ ๋ณด๋„๋ก ์ œํ•œ๋˜๋Š” ๋Œ€์‹  ์ „์ฒด ๋ฒ”์œ„๋ฅผ ๋ฐ”๋กœ ๋ณผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋ฌผ์ฒด๋“ค์„ ๊ตฌ๋ถ„ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ๋ฌธ๋งฅ ์ •๋ณด๋ฅผ ๋” ์ž˜ ๋„์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค. 

     

    transformer block์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” self-attention๊ณผ ํ•จ๊ป˜ ๊ฒฐํ•ฉ๋˜๋Š” ์—ฌ๋Ÿฌ ๊ตฌ์„ฑ ์š”์†Œ๋“ค์ด ์žˆ๋‹ค.

    ์™„์ „ํ•œ transformer๋Š” encoder ๋ธ”๋ก๊ณผ decoder ๋ธ”๋ก์œผ๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๋‘ ๋ธ”๋ก์€ ๋งŽ์€ ๊ตฌ์„ฑ์š”์†Œ๋“ค์„ ์„œ๋กœ ๊ณต์œ ํ•œ๋‹ค.

     

    set-to-set ์—ฐ์‚ฐ์„ ๋ชจ๋ธ๋งํ•˜๋Š” ๋Œ€์‹ , ๊ฐ ์ž…๋ ฅ ๋ฒกํ„ฐ์— ์œ„์น˜ ์ธ์ฝ”๋”ฉ์„ ๋”ํ•ด sequence-to-sequence ์—ฐ์‚ฐ์„ ๋ชจ๋ธ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์œ„์น˜ ์ธ์ฝ”๋”ฉ์€ ๋ณดํ†ต ์‹œ๊ฐ„์ ์œผ๋กœ(์œ„์น˜์— ๋”ฐ๋ผ) ์œ„์ƒ์ด ์กฐ๊ธˆ์”ฉ ์ด๋™๋œ ์‚ฌ์ธํŒŒ๋“ค์˜ ์ง‘ํ•ฉ์œผ๋กœ ์ด๋ฃจ์–ด์ง€๋ฉฐ, ์ด๋กœ๋ถ€ํ„ฐ ์œ„์น˜ ์ •๋ณด๋ฅผ ๋ณต์›(๋””์ฝ”๋”ฉ)ํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์ž…๋ ฅ์— self-attention์„ ํ•œ ๋ฒˆ๋งŒ ์ ์šฉํ•˜๋Š” ๋Œ€์‹ , ์„œ๋กœ ๋‹ค๋ฅธ ํ•™์Šต ๊ฐ€์ค‘์น˜ ํ–‰๋ ฌ๋กœ ์„œ๋กœ ๋‹ค๋ฅธ key, value, query๋ฅผ ๋งŒ๋“ค๊ณ , ์ด๋Ÿฐ self-attention์„ ์—ฌ๋Ÿฌ ๊ฐœ ๋ณ‘๋ ฌ๋กœ ์ ์šฉํ•ด multi-headed self-attention์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

    ๊ฐ ํ—ค๋“œ์˜ ๊ฒฐ๊ณผ๋Š” ์„œ๋กœ ์ด์–ด ๋ถ™์ธ ๋’ค, ์ „์ฒด๋ฅผ MLP์— ํ†ต๊ณผ์‹œํ‚จ๋‹ค.

    ๊ทธ ๋‹ค์Œ MLP์˜ ์ถœ๋ ฅ์— layer normalization๋ฅผ ์ ์šฉํ•œ๋‹ค. (ํ•™์Šต์ด ํ”๋“ค๋ฆฌ์ง€ ์•Š๊ฒŒ ์•ˆ์ •์ ์œผ๋กœ ๋งŒ๋“ ๋‹ค.)

    ์ดํ›„ ๊ฐ ๋ฒกํ„ฐ๋Š” ๊ฐ€์ค‘์น˜๋ฅผ ๊ณต์œ ํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ MLP๋ฅผ ๋…๋ฆฝ์ ์œผ๋กœ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ทธ ๋’ค ๋‹ค์‹œ layer normalization์„ ์ ์šฉํ•œ๋‹ค.

    residual connection์€ multi-head attention ๋’ค์™€ ๋งˆ์ง€๋ง‰ MLP ๋’ค์— ๊ฐ๊ฐ ์‚ฌ์šฉ๋œ๋‹ค.

     

    training ๊ณผ์ •์—์„œ ๋””์ฝ”๋”์˜ ๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์€, self-attention์— ๋“ค์–ด๊ฐ€๋Š” ์ž…๋ ฅ ๋ฒกํ„ฐ๋“ค ์ค‘ ์ผ๋ถ€๋ฅผ ๋งˆ์Šคํ‚น ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด๋‹ค. 

    ์ด๋Š” autoregressive ์˜ˆ์ธก ๊ณผ์ •์—์„œ parallel training์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด ์ค€๋‹ค.

    transformer๋ฅผ ์ด๋ฏธ์ง€ ๋„๋ฉ”์ธ์— ์ ์šฉํ•  ๋•Œ ํ•ต์‹ฌ์ ์ธ ์–ด๋ ค์›€ ์ค‘ ํ•˜๋‚˜๋Š” ์ด๋ฏธ์ง€ ์ž…๋ ฅ์˜ ํฌ๊ธฐ์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค.

     

    Vision Trasformer(ViT)๋ฅผ ํ†ตํ•ด transformer๊ฐ€ ํ›จ์”ฌ ํฐ ์ด๋ฏธ์ง€๋„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์คฌ๋‹ค. 

    image recognition ๊ณผ์ œ์—์„œ ๊ฐ ํ”ฝ์…€์„ transformer์˜ ๊ฐœ๋ณ„ ์ž…๋ ฅ ๋ฒกํ„ฐ๋กœ ์ทจ๊ธ‰ํ•˜๋Š” ๋Œ€์‹ , ํฌ๊ธฐ 224x224์ธ ์ด๋ฏธ์ง€๋ฅผ 16x16 ํฌ๊ธฐ์˜ ๊ฒฉ์ž ํ˜•ํƒœ ํŒจ์น˜๋กœ ๋‚˜๋ˆ„์–ด ์ด 196๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ํŒจ์น˜๋กœ ๋‚˜๋ˆˆ๋‹ค.

    ๊ทธ๋‹ค์Œ ๊ฐ ํŒจ์น˜๋ฅผ ์ผ๋ ฌ๋กœ ํŽผ์นœ ๋’ค, ๋ชจ๋“  ํŒจ์น˜์— ๊ณตํ†ต์œผ๋กœ ์ ์šฉ๋˜๋Š” ์ž„๋ฒ ๋”ฉ ํ–‰๋ ฌ์„ ํ†ต๊ณผ์‹œํ‚จ๋‹ค. (== ์ŠคํŠธ๋ผ์ด๋“œ๊ฐ€ 16์ธ 16x16 ํ•ฉ์„ฑ๊ณฑ์„ ์ ์šฉํ•˜๋Š” ๊ฒƒ)

    ์ด๋ ‡๊ฒŒ ์–ป์€ ๊ฒฐ๊ณผ ์œ„์น˜ ์ธ์ฝ”๋”ฉ ๋ฒกํ„ฐ๋ฅผ ๋”ํ•œ ๋’ค transformer์— ์ž…๋ ฅํ•œ๋‹ค.

     

    ํ•ฉ์„ฑ๊ณฑ์ด ๊ฐ€์ง„ inductive bias(๊ท€๋‚ฉ์  ํŽธํ–ฅ)๊ณผ transformer๋ฅผ ๊ฒฐํ•ฉํ•˜๋ ค๋Š” ์‹œ๋„๋„ ์žˆ์—ˆ๋‹ค.

    ์ด๋Ÿฐ ๋„คํŠธ์›Œํฌ์˜ ์˜ํ–ฅ๋ ฅ ์žˆ๋Š” ์˜ˆ๋กœ DETR์ด ์žˆ์œผ๋ฉฐ, ์ด๋Š” object detection ๊ณผ์ œ์— ์ ์šฉ๋œ๋‹ค.

    DETR์€ ๋จผ์ € ResNet ๋ฐฑ๋ณธ์œผ๋กœ ์ด๋ฏธ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•œ ๋’ค, ๊ทธ ์ถœ๋ ฅ์„ transformer encoder-decoder ๊ตฌ์กฐ์— ์ž…๋ ฅํ•œ๋‹ค.

    transformer๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํฐ object๋ฅผ ํƒ์ง€ํ•˜๋Š” ๋Šฅ๋ ฅ์ด ํ–ฅ์ƒ๋˜์—ˆ๋Š”๋ฐ, ์ด๋Š” transformer๊ฐ€ ์ž…๋ ฅ encoder vector๋“ค ์‚ฌ์ด์˜ ๋Œ€์‘ ๊ด€๊ณ„๋ฅผ ์ „์—ญ์ ์œผ๋กœ ์ถ”๋ก ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 

     

    5.5.4 Generative models

    deep neural network๊ฐ€ semantic์„ ํฌ์ฐฉํ•˜๋Š” ๋ฐ ๋ณด์—ฌ์ค€ ๋Šฅ๋ ฅ์„ ํ™œ์šฉํ•ด, ์ƒ˜ํ”Œ ์ด๋ฏธ์ง€๋ฅผ ์‹œ๊ฐํ™”ํ•˜๊ณ  ์ƒˆ๋กœ์šด ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋ ค๋ฉด visualization ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ๊ธฐ๋ฒ•์€ ๊ฐœ๋ณ„ ์œ ๋‹›์— ๋Œ€ํ•œ insights๋Š” ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์–ด๋„ ์™„์ „ํžˆ ํ˜„์‹ค์ ์ธ ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๋ฐ์—๋Š” ์‹คํŒจํ•œ๋‹ค.

     

    ์›๋ž˜์˜ ์ธ์ฝ”๋” ๋„คํŠธ์›Œํฌ๊ฐ€ ์ˆ˜ํ–‰ํ•œ classification์„ ๋˜๋Œ๋ฆฌ๋Š” ๋””์ฝ”๋” ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜๋„ ์žˆ๋‹ค. 

    ์ด๋Ÿฐ ์ข…๋ฅ˜์˜ bottleneck(๋ณ‘๋ชฉ) ์•„ํ‚คํ…์ฒ˜๋Š” ์ด๋ฏธ์ง€๋กœ๋ถ€ํ„ฐ ํ”ฝ์…€ ๋‹จ์œ„ semantic label์„ ์–ป๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค.

     

    Variational autoencoders

    autoencoder : ์ด๋ฏธ์ง€๋ฅผ ์ž‘๊ณ  ์••์ถ•๋œ ์ฝ”๋“œ๋กœ ์ธ์ฝ”๋”ฉํ•œ ๋‹ค์Œ, ๊ทธ๊ฒƒ์„ ๋‹ค์‹œ ์›๋ž˜ ์ด๋ฏธ์ง€๋กœ ๋ณต์›(๋””์ฝ”๋”ฉ)ํ•˜๋ ค๋Š” ๋„คํŠธ์›Œํฌ์ด๋‹ค.

    ์ด๋Ÿฐ ์••์ถ• ์ฝ”๋“œ๋Š” ๋ณดํ†ต ๋ฒกํ„ฐ๋กœ ํ‘œํ˜„๋˜๋ฉฐ, ์ˆจ๊ฒจ์ ธ ์žˆ๊ณ  ์ง์ ‘ ๊ด€์ธกํ•  ์ˆ˜ ์—†๋Š” ๊ฐ’์ด๋ผ๋Š” ์˜๋ฏธ๋ฅผ ๊ฐ•์กฐํ•˜๊ธฐ ์œ„ํ•ด ํ”ํžˆ latent(์ž ์žฌ) vector๋ผ ๋ถ€๋ฅธ๋‹ค.

    ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ autoencoder๋ฅผ ํ•™์Šต์‹œํ‚ฌ ๋•Œ๋Š” unsupervised ๋ชฉ์ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ, ๋””์ฝ”๋”์˜ ์ถœ๋ ฅ ์ด๋ฏธ์ง€๊ฐ€ ์ธ์ฝ”๋”์— ์ž…๋ ฅ๋œ ํ•™์Šต ์ด๋ฏธ์ง€์™€ ์ผ์น˜ํ•˜๋„๋ก ๋งŒ๋“ ๋‹ค.

    ๊ทธ ๋‹ค์Œ ์ƒˆ๋กœ์šด ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋ ค๋ฉด, latent vector๋ฅผ ๋ฌด์ž‘์œ„๋กœ ์ƒ˜ํ”Œ๋งํ•˜๊ณ , ๊ทธ ๋ฒกํ„ฐ๋กœ๋ถ€ํ„ฐ ๋””์ฝ”๋”๊ฐ€ ํ•™์Šต ๋ฐ์ดํ„ฐ์˜ ๋ถ„ํฌ์—์„œ ๋‚˜์˜จ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ์ƒˆ๋กœ์šด ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•ด ์ฃผ๊ธฐ๋ฅผ  ๊ธฐ๋Œ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    autoencoder์—์„œ๋Š” ๊ฐ ์ž…๋ ฅ์ด ๊ทธ์— ํ•ด๋‹นํ•˜๋Š” latent vector๋กœ deterministic(๊ฒฐ์ •๋ก ์ )์ด๋ฉฐ one-to-one์œผ๋กœ ๋งคํ•‘๋œ๋‹ค.

    ๋”ฐ๋ผ์„œ ์ƒ์„ฑ๋˜๋Š” latent vector์˜ ๊ฐœ์ˆ˜๋Š” ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์˜ ๊ฐœ์ˆ˜์™€ ์ •ํ™•ํžˆ ๊ฐ™๋‹ค.

    ์ธ์ฝ”๋”์˜ ๋ชฉํ‘œ๊ฐ€ ๋””์ฝ”๋”ฉํ•˜๊ธฐ ์‰ฌ์šด latent vector๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋ผ๋ฉด, ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋Š” ๊ฐ latent vector๊ฐ€ ๋‹ค๋ฅธ ๋ชจ๋“  latent vector์™€ ๋งค์šฐ ๋ฉ€๋ฆฌ ๋–จ์–ด์ง€๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค.

    → ๊ฐ latent vector๊ฐ€ ์„œ๋กœ ๊ฑฐ์˜ ๊ฒน์น˜์ง€ ์•Š๋Š” ์™„์ „ํ•œ ๊ณ ์œ ํ•œ ๊ฐ’์ด ๋˜์–ด, ๋””์ฝ”๋”๊ฐ€ ์ž์‹ ์ด ๋ณธ latent vector๋ฅผ ๊ฐ๊ฐ ์™ธ์›Œ์„œ ๋ณต์›ํ•  ์ˆ˜ ์žˆ๋‹ค.

    ํ•˜์ง€๋งŒ ๋ฌด์ž‘์œ„๋กœ latent vector๋ฅผ ์ƒ˜ํ”Œ๋งํ•˜์—ฌ ๋””์ฝ”๋”์— ๋„ฃ์—ˆ์„ ๋•Œ ํ˜„์‹ค์ ์ธ ์ด๋ฏธ์ง€๊ฐ€ ์ƒ์„ฑ๋˜๋„๋ก ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์—, latent vector๋Š” ์ถฉ๋ถ„ํžˆ ์ž˜ ํƒ์ƒ‰๋˜์–ด ์žˆ์–ด์•ผ ํ•˜๊ณ , ๋™์‹œ์— ๊ฐ€๊นŒ์šด ๋ฒกํ„ฐ๋ผ๋ฆฌ๋Š” ์˜๋ฏธ์ ์œผ๋กœ ๋น„์Šทํ•˜๋‹ค ๊ฐ™์€ semantic structure๋ฅผ ๋‹ด๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค.

    ์ด์— ๋Œ€ํ•œ ํ•œ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์€ latent vector์— noise๋ฅผ ์ฃผ์ž…ํ•˜๋Š” ๊ฒƒ์ด๋ฉฐ ์ด๋Š” ๊ฝค ์ž˜ ๋™์ž‘ํ•œ๋‹ค.

     

    autoencoder์˜ ํ™•์žฅ์œผ๋กœ๋Š” variational autoencoder(VAE)๊ฐ€ ์žˆ๋‹ค.

    ์ž…๋ ฅ๋งˆ๋‹ค latent vector๋ฅผ ํ•˜๋‚˜๋งŒ ์ƒ์„ฑํ•˜๋Š” ๋Œ€์‹ , latent vector๊ฐ€ ๋”ฐ๋ฅด๋Š” ๋ฏธ๋ฆฌ ์ •ํ•œ ๋ถ„ํฌ๋ฅผ ์ •์˜ํ•˜๋Š” mean๊ณผ covariance์„ ์ƒ์„ฑํ•œ๋‹ค.

    ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ทธ ๋ถ„ํฌ์—์„œ ์ƒ˜ํ”Œ๋งํ•˜์—ฌ ํ•˜๋‚˜์˜ latent vector๋ฅผ ์–ป๊ณ  ์ด๋ฅผ ๋””์ฝ”๋”์— ์ž…๋ ฅํ•œ๋‹ค.

    ์ƒ˜ํ”Œ๋ง ๊ณผ์ •์ด ๊ฒฐ์ •๋ก ์ ์œผ๋กœ ๋ณ€ํ•ด๋ฒ„๋ฆฌ๋Š”(covariance ํ–‰๋ ฌ์ด 0 ํ–‰๋ ฌ์ด ๋˜์–ด๋ฒ„๋ฆฌ๋Š”) ๊ฒƒ์„ ๋ง‰๊ธฐ ์œ„ํ•ด, objective function์—๋Š” ๋ณดํ†ต regularization ํ•ญ์ด ํฌํ•จ๋œ๋‹ค.

    ์ด ํ•ญ์€ latent vector๊ฐ€ ์–ด๋–ค ์„ ํƒ๋œ ๋ถ„ํฌ์—์„œ ๋„ˆ๋ฌด ๋ฉ€์–ด์ง€๋ฉด ๋ฒŒ์ ์„ ์ฃผ๋„๋ก ์„ค๊ณ„๋œ๋‹ค.

    ์ด์ฒ˜๋Ÿผ ํ™•๋ฅ ์  ์„ฑ๊ฒฉ์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์—, VAE๋Š” ์ผ๋ฐ˜ autoencoder๋ณด๋‹ค latent vector space๋ฅผ ๋” ์ž˜ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ณ , ๊ทธ ๊ฒฐ๊ณผ ๋””์ฝ”๋”๊ฐ€ ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ ์™ธ์›Œ์„œ ๊ณผ์ ํ•ฉํ•˜๊ธฐ๊ฐ€ ๋” ์–ด๋ ค์›Œ์ง„๋‹ค.

     

    ์ž์—ฐ์–ด๊ฐ€ discrete(์ด์‚ฐ์ )์ด๋ผ๋Š” ์ ๊ณผ, ์ด๋ฏธ์ง€๊ฐ€ ๋ณดํ†ต ์–ธ์–ด๋กœ ์„ค๋ช…๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์— ์ฐฉ์•ˆํ•˜์—ฌ, vector quantized VAE(VQ-VAE)๋Š” latent space์„ categorical(๋ฒ”์ฃผํ˜•) ๋ณ€์ˆ˜๋กœ ๋ชจ๋ธ๋งํ•œ๋‹ค. 

    ์ธ์ฝ”๋”์™€ ๋””์ฝ”๋”๋Š” ์ผ๋ฐ˜์ ์ธ VAE์ฒ˜๋Ÿผ ๋™์ž‘ํ•œ๋‹ค.

    ์ฆ‰ ์ธ์ฝ”๋”๋Š” ์ž…๋ ฅ์œผ๋กœ๋ถ€ํ„ฐ ์–ด๋–ค latent representation์„ ์˜ˆ์ธกํ•˜๊ณ , ๋””์ฝ”๋”๋Š” ๊ทธ latent representation์œผ๋กœ๋ถ€ํ„ฐ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

    ํ•˜์ง€๋งŒ ์ผ๋ฐ˜ VAE์™€ ๋‹ฌ๋ฆฌ, VQ-VAE๋Š” ์ธ์ฝ”๋”๊ฐ€ ์˜ˆ์ธกํ•œ latent representation์˜ ๊ฐ spatial dimenison(๊ณต๊ฐ„ ์œ„์น˜)์— ๋Œ€ํ•ด, ๋ฏธ๋ฆฌ ์ •ํ•ด์ง„ discrete vector ์ง‘ํ•ฉ(์ด์‚ฐ ๋ฒกํ„ฐ ์ง‘ํ•ฉ, ์ฝ”๋“œ๋ถ)์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋ฒกํ„ฐ๋กœ ํ•ด๋‹น ๊ฐ’์„ ์น˜ํ™˜ํ•œ๋‹ค.

    ์ด๋ ‡๊ฒŒ discretize๋œ ์ž ์žฌ ํ‘œํ˜„์ด ๋””์ฝ”๋”๋กœ ์ „๋‹ฌ๋œ๋‹ค.

    ๋˜ํ•œ ์ฝ”๋“œ๋ถ์— ์žˆ๋Š” ๋ฒกํ„ฐ๋“ค์€ VAE์˜ ์ธ์ฝ”๋”, ๋””์ฝ”๋”์™€ ๋™์‹œ์— ํ•™์Šต๋œ๋‹ค. 

    ์ด๋•Œ ์ฝ”๋“œ๋ถ ๋ฒกํ„ฐ๋“ค์€ ์ธ์ฝ”๋”๊ฐ€ ์ถœ๋ ฅํ•œ ๊ฐ ๊ณต๊ฐ„ ์œ„์น˜์˜ ๋ฒกํ„ฐ๋“ค์— ๋” ๊ฐ€๊นŒ์›Œ์ง€๋„๋ก ์ตœ์ ํ™”๋œ๋‹ค.

     

    VG-VAE๊ฐ€ ์ด์‚ฐ์ ์ธ ๋ฒกํ„ฐ ์ง‘ํ•ฉ์„ ์“ฐ๊ธด ํ•˜์ง€๋งŒ, ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ด๋ฏธ์ง€์˜ ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ์—ฌ์ „ํžˆ ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ๋‹ค.

     

    VAE๋Š” ๋ณดํ†ต gaussian latent distribution์„ ๊ฐ€์ •ํ•˜์ง€๋งŒ, VQ-VAE์˜ latent distribution์€ ๋ช…ํ™•ํ•˜๊ฒŒ ์ •์˜๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค.

    → latent variable z๋ฅผ ์ƒ˜ํ”Œ๋งํ•˜๊ธฐ ์œ„ํ•ด ๋ณ„๋„์˜ ์ƒ์„ฑ ๋ชจ๋ธ์„ ๋”ฐ๋กœ ํ•™์Šตํ•œ๋‹ค.

    ์ด ๋ชจ๋ธ์€ ํ•™์Šต๋œ VQ-VAE ์ธ์ฝ”๋”๊ฐ€ ํ•™์Šต ๋ฐ์ดํ„ฐ ์ „์ฒด์— ๋Œ€ํ•ด ์ถœ๋ ฅํ•œ ์ตœ์ข… latent variables๋“ค์„ ๊ฐ€์ง€๊ณ  ํ•™์Šต๋œ๋‹ค.

    ์ด๋ฏธ์ง€์˜ ๊ฒฝ์šฐ z์˜ ๊ฐ ํ•ญ๋ชฉ๋“ค์€ ๊ณต๊ฐ„์ ์œผ๋กœ ์„œ๋กœ ์˜์กดํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

    ์˜ˆ) ํ•˜๋‚˜์˜ ๋ฌผ์ฒด๊ฐ€ ์„œ๋กœ ์ด์›ƒํ•œ ์—ฌ๋Ÿฌ ํ•ญ๋ชฉ์— ๊ฑธ์ณ ์ธ์ฝ”๋”ฉ๋  ์ˆ˜ ์žˆ๋‹ค.

    z์˜ ํ•ญ๋ชฉ๋“ค์ด ์ด์‚ฐ์ ์ธ ์ฝ”๋“œ๋ถ ๋ฒกํ„ฐ๋“ค ์ค‘์—์„œ ์„ ํƒ๋˜๋Š” ๊ฐ’๋“ค์ด๋ฏ€๋กœ, PixelCNN์„ ์‚ฌ์šฉํ•ด ์ด๋ฏธ ์ƒ˜ํ”Œ๋ง๋œ ์ด์›ƒ ํ•ญ๋ชฉ๋“ค์„ ๋ฐ”ํƒ•์œผ๋กœ latent variable์˜ ์ƒˆ ํ•ญ๋ชฉ๋“ค์„ ์ž๊ธฐํšŒ๊ท€์ ์œผ๋กœ ์ƒ˜ํ”Œ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.

    ํŠน์ • ์ด๋ฏธ์ง€ ํด๋ž˜์Šค๋‚˜ ํŠน์ง•์— ํ•ด๋‹นํ•˜๋Š” latent variables๋ฅผ ์ƒ˜ํ”Œ๋งํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.

     

    VQ-VAE-2๋Š” ์ด๋ฏธ์ง€๋ฅผ ๋””์ฝ”๋”ฉํ•  ๋–„ two-level ์ ‘๊ทผ์„ ์‚ฌ์šฉํ•œ๋‹ค.

    ์ž‘์€ latent vector์™€ ํฐ latent vector๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ, reconstruction(์žฌ๊ตฌ์„ฑ)๋œ ์ด๋ฏธ์ง€์™€ generation๋œ ์ด๋ฏธ์ง€์˜ fidelity(ํ’ˆ์งˆ)์„ ํ›จ์”ฌ ๋” ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.

    DALL·E๋Š” VQ-VAE-2๋ฅผ text-to-image ์ƒ์„ฑ์— ์ ์šฉํ•œ๋‹ค.

     

    Generative adversarial networks

    image synthesis์„ ์œ„ํ•ด pre-training๋œ ๋„คํŠธ์›Œํฌ๊ฐ€ ๊ณ„์‚ฐํ•œ multi-resolution(๋‹ค์ค‘ ํ•ด์ƒ๋„) ํŠน์ง•์„ ์ด์šฉํ•ด, ์ฃผ์–ด์ง„ ํ…์Šค์ฒ˜ ๋˜๋Š” ์Šคํƒ€์ผ ์ด๋ฏธ์ง€์˜ ํ†ต๊ณ„๋ฅผ ๋งž์ถ”๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

    ํŠน์ • ํ™”๊ฐ€์˜ ์Šคํƒ€์ผ์ด๋‚˜ ์‚ฌ์ง„์˜ ๊ณ ์ˆ˜์ค€ ๋‚ด์šฉ(๋ฐฐ์น˜/๊ตฌ๋„, layout)์„ ๋งž์ถ”๋Š” ๋ฐ์—๋Š” ์œ ์šฉํ•˜์ง€๋งŒ, ์™„์ „ํžˆ ์‚ฌ์ง„์ฒ˜๋Ÿผ ์‚ฌ์‹ค์ ์ธ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ์—๋Š” ์ถฉ๋ถ„ํ•˜์ง€ ์•Š๋‹ค.

     

    ์ง„์งœ๋กœ ์‚ฌ์ง„์ฒ˜๋Ÿผ ํ˜„์‹ค์ ์ธ ํ•ฉ์„ฑ ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“œ๋ ค๋ฉด, ์–ด๋–ค ์ด๋ฏธ์ง€๊ฐ€ ์ง„์งœ์ธ์ง€ ๊ฐ€์งœ์ธ์ง€ ํŒ๋ณ„ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.

    ๊ทธ๋Ÿฐ loss function์ด ์กด์žฌํ•œ๋‹ค๋ฉด, ์ด๋ฅผ ์ด์šฉํ•ด ํ•ฉ์„ฑ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋„คํŠธ์›Œํฌ๋ฅผ ํ•™์Šต์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

    ๊ทธ๋Ÿฌ๋‚˜ ์ด loss function์„ ์‚ฌ๋žŒ์ด ์ง์ ‘ ์„ค๊ณ„ํ•˜๊ธฐ๋Š” ์–ด๋ ต๋‹ค.

    generative adversarial networks(GAN)์ด ๋น„ํ‰๊ฐ€ ์—ญํ• ์„ ํ•˜๋Š” ๋ณ„๋„์˜ ์‹ ๊ฒฝ๋ง์„ ํ•™์Šต์‹œํ‚จ๋‹ค.

    generator(์ƒ์„ฑ๊ธฐ) ๋„คํŠธ์›Œํฌ G์˜ ์ถœ๋ ฅ์ด ๋ณ„๋„์˜ discriminator(ํŒ๋ณ„๊ธฐ) ๋„คํŠธ์›Œํฌ D๋กœ ๋“ค์–ด๊ฐ€๋ฉฐ, D์˜ ๊ณผ์ œ๋Š” ๊ฐ€์งœ๋กœ ์ƒ์„ฑ๋œ ํ•ฉ์„ฑ ์ด๋ฏธ์ง€์™€ ์ง„์งœ ์ด๋ฏธ์ง€๋ฅผ ๊ตฌ๋ถ„ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

    generator์˜ ๋ชฉํ‘œ๋Š” discriminator๊ฐ€ ๊ทธ๊ฒƒ์„ ์ง„์งœ๋กœ ๋ฐ›์•„๋“ค์ด๋„๋ก ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๊ฒƒ์ด๊ณ , discriminator์˜ ๋ชฉํ‘œ๋Š” ๊ทธ ์œ„์กฐ์ž๋ฅผ ์žก์•„๋‚ด๋Š” ๊ฒƒ์ด๋‹ค.

    ๋‘ ๋„คํŠธ์›Œํฌ๋Š” ๋™์‹œ์— ํ•จ๊ป˜ ํ•™์Šต๋˜๋ฉฐ, ๊ฐ ๋„คํŠธ์›Œํฌ๊ฐ€ ์ž์‹ ์˜ ์—ญํ• ์„ ์ž˜ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์œ ๋„ํ•˜๋Š” ์—ฌ๋Ÿฌ loss function์˜ ํ˜ผํ•ฉ์„ ์‚ฌ์šฉํ•œ๋‹ค.

    ์ด joint loss๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์“ธ ์ˆ˜ ์žˆ๋‹ค.

    {x_n}์€ ํ˜„์‹ค ์„ธ๊ณ„์˜ ํ•™์Šต ์ด๋ฏธ์ง€์ด๊ณ , {z_n}์€ ์ž„์˜์˜ ๋žœ๋ค ๋ฒกํ„ฐ๋กœ ์ƒ์„ฑ๊ธฐ G์— ์ž…๋ ฅ๋˜์–ด ํ•ฉ์„ฑ ์ด๋ฏธ์ง€ x_n์„ ๋งŒ๋“ค์–ด๋‚ธ๋‹ค.

    ๋˜ํ•œ {w_G, w_D}๋Š” ๊ฐ๊ฐ generator์™€ discriminator์˜ ํŒŒ๋ผ๋ฏธํ„ฐ์ด๋‹ค. 

     

    ์ด ์†์‹ค์„ ๊ทธ๋Œ€๋กœ ์ตœ์†Œํ™”ํ•˜๋Š” ๋Œ€์‹ , generator์˜ ๊ฐ€์ค‘์น˜๋Š” ์†์‹ค์˜ ๋‘ ๋ฒˆ์งธ ํ•ญ๋งŒ ์ตœ์†Œํ™”ํ•˜๋„๋ก ์กฐ์ •ํ•˜๊ณ (generator๋Š” ์ฒซ ๋ฒˆ์งธ ํ•ญ์—๋Š” ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š”๋‹ค.), discriminator์˜ ๊ฐ€์ค‘์น˜๋Š” ๋‘ ํ•ญ ๋ชจ๋‘๋ฅผ ์ตœ๋Œ€ํ™”ํ•˜๋„๋ก ์กฐ์ •ํ•œ๋‹ค.

    discriminator์˜ ์˜ค๋ฅ˜๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ํ•™์Šตํ•˜๋ฉฐ ์ด๋Ÿฌํ•œ ๊ณผ์ •์„ minimax ๊ฒŒ์ž„์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

    GAN, cGAN, infoGAN

    Deep Convolutional GAN(DCGAN)์€ deconvoluiton ๋„คํŠธ์›Œํฌ์˜ ๋’ค์ชฝ ์ ˆ๋ฐ˜์„ ์‚ฌ์šฉํ•˜์—ฌ, ๋žœ๋ค latent vector z์—์„œ ์ž„์˜ ํฌ๊ธฐ์˜ ์ด๋ฏธ์ง€๋กœ ๋งคํ•‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ–ˆ๊ณ , ๋” ๋‹ค์–‘ํ•œ ์ถœ๋ ฅ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

    LAPGAN์€ adversarial network๋ฅผ ๋ผํด๋ผ์‹œ์•ˆ ํ”ผ๋ผ๋ฏธ๋“œ ํ˜•ํƒœ๋กœ ์Œ“๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค.

    ์„œ๋กœ ๋‹ค๋ฅธ latent vecotr๋“ค ์‚ฌ์ด๋ฅผ ๋ธ”๋ Œ๋”ฉํ•˜๊ฑฐ๋‚˜(๋˜๋Š” ํŠน์ • ๋ฐฉํ–ฅ์œผ๋กœ๋งŒ ์กฐ๊ธˆ์”ฉ ๊ต๋ž€/์ด๋™์‹œํ‚ค๋ฉด), ๊ทธ ์ค‘๊ฐ„ ๋‹จ๊ณ„์— ํ•ด๋‹นํ•˜๋Š” ์ค‘๊ฐ„(intermediate) ํ•ฉ์„ฑ ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

     

    GAN๊ณผ DCGAN์€ ํŠน์ • ํด๋ž˜์Šค์—์„œ ์ƒˆ ์ƒ˜ํ”Œ์„ ์ƒ์„ฑํ•˜๋„๋ก ํ•™์Šต์‹œํ‚ฌ ์ˆ˜ ์žˆ์ง€๋งŒ, ํ•˜๋‚˜์˜ ํ•™์Šต๋œ ๋„คํŠธ์›Œํฌ๋กœ ์—ฌ๋Ÿฌ ํด๋ž˜์Šค์˜ ์ƒ˜ํ”Œ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋” ์œ ์šฉํ•˜๋‹ค.

    conditional GAN(cGAN)์€ generator๊ณผ discriminator ๋ชจ๋‘์— ํด๋ž˜์Šค ๋ฒกํ„ฐ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋„ฃ๋Š” ๋ฐฉ์‹์œผ๋กœ ์ด๋ฅผ ๋‹ฌ์„ฑํ•œ๋‹ค.

    generator G๋Š” ์ด ๋‘ ๋ฒˆ์งธ ์ž…๋ ฅ(ํด๋ž˜์Šค ๋ฒกํ„ฐ)์— ์กฐ๊ฑด์„ ๊ฑธ์–ด ์ถœ๋ ฅ์„ ๋งŒ๋“ค๊ณ , discriminator D๋„ ํด๋ž˜์Šค ๋ฒกํ„ฐ๋ฅผ ํ•จ๊ป˜ ๋ฐ›์•„, ์ƒ์„ฑ๋œ ์ด๋ฏธ์ง€๊ฐ€ ๊ทธ ํด๋ž˜์Šค์— ํ•ด๋‹นํ•˜๋Š” ์ง„์งœ์ธ์ง€ ๊ฐ€์งœ์ธ์ง€ ํŒ๋‹จํ•œ๋‹ค.

    infoGAN์€ ์ถ”๊ฐ€์ ์ธ mutual information ํ•ญ์„ ์‚ฌ์šฉํ•ด discriminator๊ฐ€ ํด๋ž˜์Šค ๋ฒกํ„ฐ์™€ ์ƒ๊ด€๋œ ํด๋ž˜์Šค๋ฅผ ์˜ˆ์ธกํ•˜๋„๋ก ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

    MNIST์—์„œ์˜ ์ˆซ์ž ๋ชจ์–‘๊ณผ ํ•„๊ธฐ ์Šคํƒ€์ผ, ํ˜น์€ ํฌ์ฆˆ์™€ ์กฐ๋ช… ๊ฐ™์€ ์š”์†Œ์ฒ˜๋Ÿผ ์„œ๋กœ ๋ถ„๋ฆฌ๋œ ํ‘œํ˜„์„ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    ๋ฌด์ž‘์œ„ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์€ ํ…์Šค์ฒ˜ ์ƒ์„ฑ, ๊ตฌ๋ฉ ๋ฉ”์šฐ๊ธฐ, ์‚ฌ์ง„ ์Šคํƒ€์ผํ™” ๋“ฑ ๋‹ค์–‘ํ•œ ๊ทธ๋ž˜ํ”ฝ์Šค ์‘์šฉ์— ์œ ์šฉํ•˜์ง€๋งŒ, ์‚ฌ๋žŒ์ด ์˜ˆ์ˆ ์ ์œผ๋กœ ์ง์ ‘ ์ œ์–ดํ•˜๋ฉด์„œ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋” ์œ ์šฉํ•ด์ง„๋‹ค.

    iGAN ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ด๋ฏธ์ง€ ํŽธ์ง‘ ์‹œ์Šคํ…œ์€ GAN์„ ์ด์šฉํ•ด ์‚ฌ์ง„์ฒ˜๋Ÿผ ํ˜„์‹ค์ ์ธ ์ด๋ฏธ์ง€๋“ค์˜ ๋งค๋‹ˆํด๋“œ๋ฅผ ํ•™์Šตํ•œ ๋’ค, ์‚ฌ์šฉ์ž์˜ ํŽธ์ง‘ ๊ฒฐ๊ณผ๊ฐ€ ์ด ๋งค๋‹ˆํด๋“œ ์œ„์— ๋†“์ด๋„๋ก ์ œ์•ฝํ•จ์œผ๋กœ์จ ์ด๋ฅผ ๊ตฌํ˜„ํ•œ๋‹ค.

     

    ์ด ์ ‘๊ทผ์€ ๋‹ค์–‘ํ•œ image-to-image ๋ณ€ํ™˜ ๊ณผ์ œ๋กœ ์ผ๋ฐ˜ํ™”๋˜์—ˆ๋‹ค.

    pix2pix ์‹œ์Šคํ…œ์—์„œ๋Š” ์Šค์ผ€์น˜๋‚˜ ์‹œ๋งจํ‹ฑ ๋ผ๋ฒจ ๊ฐ™์€ ์ด๋ฏธ์ง€๋ฅผ ์ˆ˜์ •๋œ U-Net์— ์ž…๋ ฅ์œผ๋กœ ๋„ฃ๊ณ , ์ด๋ฅผ ๋‹ค๋ฅธ ์˜๋ฏธ๋‚˜ ์Šคํƒ€์ผ์„ ๊ฐ€์ง„ ์ด๋ฏธ์ง€๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.

    semantic image systhesis(์‹œ๋งจํ‹ฑ ์ด๋ฏธ์ง€ ํ•ฉ์„ฑ) : ์ž…๋ ฅ์ด ์‹œ๋งจํ‹ฑ ๋ผ๋ฒจ ๋งต์ด๊ณ  ์ถœ๋ ฅ์ด ์‚ฌ์ง„์ฒ˜๋Ÿผ ์‚ฌ์‹ค์ ์ธ ์ด๋ฏธ์ง€์ผ ๋•Œ

    ์ด ๋ณ€ํ™˜ ๋„คํŠธ์›Œํฌ๋Š” conditional GAN์œผ๋กœ ํ•™์Šต๋˜๋Š”๋ฐ, ํ•™์Šต ์‹œ์ ์— ๋‘ ๋„๋ฉ”์ธ์— ์†ํ•œ ์ง์ง€์–ด์ง„ ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , discriminator๋Š” ์ž…๋ ฅ ์ด๋ฏธ์ง€+ํ•ฉ์„ฑ๋œ ์ด๋ฏธ์ง€๊ฐ€ ์ง„์งœ ์Œ์ธ์ง€ ๊ฐ€์งœ ์Œ์ธ์ง€๋ฅผ ํŒ๋‹จํ•œ๋‹ค.

    conditional GAN์—์„œ ํด๋ž˜์Šค c๋Š” ํ•˜๋‚˜์˜ ํด๋ž˜์Šค ID๊ฐ€ ์•„๋‹Œ ์ „์ฒด ์ด๋ฏธ์ง€ ์ž…๋ ฅ์ด๋ฉฐ, generator G์™€ discriminator D ๋ชจ๋‘์— ์ž…๋ ฅ๋œ๋‹ค.

    discriminator๋Š” ์ด๋ฏธ์ง€ ์ „์ฒด์— ๋Œ€ํ•ด ํ•œ ๋ฒˆ์— ํŒ๋‹จํ•˜๋Š” ๋Œ€์‹ , ์„œ๋กœ ๊ฒน์น˜๋Š” patch๋“ค์„ ๋ณด๊ณ  patch ๋‹จ์œ„๋กœ real/fake rufwjddmf soflsek.

    → ํ•„์š”ํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜๊ฐ€ ์ค„๊ณ , ํ•™์Šต ๋ฐ์ดํ„ฐ๊ฐ€ ๋” ๋งŽ์•„์ง€๋ฉฐ, ๋” ๊ตฌ์ฒด์ ์ธ ํŒ๋ณ„ ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค.

    ๊ตฌํ˜„์—์„œ๋Š” ๋žœ๋ค ๋ฒกํ„ฐ z๋ฅผ ๋”ฐ๋กœ ์“ฐ์ง€ ์•Š๊ณ , ํ•™์Šต ์‹œ์™€ ํ…Œ์ŠคํŠธ(๋ณ€ํ™˜) ์‹œ ๋ชจ๋‘ dropout์„ ์‚ฌ์šฉํ•˜๋ฉฐ ์ด๋Š” ๋„คํŠธ์›Œํฌ์˜ ์—ฌ๋Ÿฌ ์ˆ˜์ค€์—์„œ ๋…ธ์ด์ฆˆ๋ฅผ ์ฃผ์ž…ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค.

     

    ๋งŽ์€ ๊ฒฝ์šฐ์—๋Š” ์ง์ง€์–ด์ง„ ์ด๋ฏธ์ง€๊ฐ€ ์ด์šฉ๊ฐ€๋Šฅํ•˜์ง€ ์•Š๋‹ค.

    ์˜ˆ) ์„œ๋กœ ๋‹ค๋ฅธ ์žฅ์†Œ์—์„œ ์ˆ˜์ง‘๋œ ๊ทธ๋ฆผ๊ณผ ์‚ฌ์ง„์˜ ์ปฌ๋ ‰์…˜์ด ์žˆ๊ฑฐ๋‚˜, ๋‘ ๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ๋™๋ฌผ ํด๋ž˜์Šค์— ์†ํ•œ ์‚ฌ์ง„๋“ค๋งŒ ์žˆ๋Š” ๊ฒฝ์šฐ

    → cycle-consistent adversarial network(Cycle-GAN)์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‘ ๋„๋ฉ”์ธ ์‚ฌ์ด์˜ ๋งคํ•‘์ด ์›๋ž˜ ์ž…๋ ฅ์„ ์œ ์ง€ํ•˜๋„๋ก ๋งŒ๋“ค๋ฉด์„œ๋„, ์ƒ์„ฑ๋œ ์ด๋ฏธ์ง€๊ฐ€ ํ•™์Šต ์ด๋ฏธ์ง€๋“ค๊ณผ ์ง€๊ฐ์ ์œผ๋กœ ์œ ์‚ฌํ•˜๋„๋ก ์š”๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

    DualGAN๊ณผ DiscoGAN๋„ ๋น„์Šทํ•œ ์•„์ด๋””์–ด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

    BicycleGAN์€ ๋ณ€ํ™˜ ์‚ฌ์ดํด์ด๋ผ๋Š” ์œ ์‚ฌํ•œ ์•„์ด๋””์–ด๋ฅผ ์ด์šฉํ•ด, ์ธ์ฝ”๋”ฉ๋œ latent vector๋“ค์ด ์ถœ๋ ฅ ์ด๋ฏธ์ง€์˜ ์„œ๋กœ ๋‹ค๋ฅธ ๋ชจ๋“œ์— ๋Œ€์‘ํ•˜๋„๋ก ์œ ๋„ํ•จ์œผ๋กœ์จ, ํ•ด์„ ๊ฐ€๋Šฅ์„ฑ๊ณผ ์ œ์–ด์„ฑ์„ ๋†’์ธ๋‹ค.

     

Designed by Tistory.