A A
[NLP] Generative Adversarial Networks (์ƒ์„ฑ์  ์ ๋Œ€ ์‹ ๊ฒฝ๋ง, GAN)

์ƒ์„ฑ์  ์ ๋Œ€ ์‹ ๊ฒฝ๋ง (GAN)?

์ƒ์„ฑ์  ์ ๋Œ€ ์‹ ๊ฒฝ๋ง(GAN)์€ ๋‘ ๊ฐœ์˜ ์‹ ๊ฒฝ๋ง์ธ ์ƒ์„ฑ์ž(Generator)์™€ ํŒ๋ณ„์ž(Discriminator)๊ฐ€ ๊ฒฝ์Ÿ์ ์œผ๋กœ ํ•™์Šตํ•˜๋ฉด์„œ, ํ˜„์‹ค๊ณผ ์œ ์‚ฌํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. GAN์€ ํŠนํžˆ ์ด๋ฏธ์ง€ ์ƒ์„ฑ, ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•, ๋น„๋””์˜ค ์ƒ์„ฑ ๋“ฑ ๋‹ค์–‘ํ•œ ์‘์šฉ ๋ถ„์•ผ์—์„œ ๋งค์šฐ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์•„๋ž˜์—์„œ GAN์˜ ๊ตฌ์„ฑ ์š”์†Œ, ํ•™์Šต ์ ˆ์ฐจ, ๋ณ€ํ˜• ๋ชจ๋ธ, ์‘์šฉ ๋ถ„์•ผ, ์žฅ์ ๊ณผ ๋‹จ์ ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

GAN์˜ ๊ตฌ์„ฑ ์š”์†Œ

https://developers.google.com/machine-learning/gan/gan_structure?hl=ko

  1. ์ƒ์„ฑ์ž(Generator):
    • ์—ญํ• : ์ƒ์„ฑ์ž๋Š” ์ž„์˜์˜ ๋…ธ์ด์ฆˆ ๋ฒกํ„ฐ๋ฅผ ๋ฐ›์•„๋“ค์—ฌ ํ˜„์‹ค๊ฐ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์—์„œ ์ƒ์„ฑ์ž๋Š” ์ž…๋ ฅ๋œ ๋…ธ์ด์ฆˆ ๋ฒกํ„ฐ๋ฅผ ์ ์ฐจ ๊ณ ์ฐจ์› ๋ฐ์ดํ„ฐ, ์˜ˆ๋ฅผ ๋“ค์–ด ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ณ ์ฐจ์› ๋ฒกํ„ฐ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ชฉํ‘œ: ์ƒ์„ฑ์ž์˜ ์ฃผ์š” ๋ชฉํ‘œ๋Š” ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ํŒ๋ณ„์ž์—๊ฒŒ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋กœ ์˜ค์ธ๋˜๋„๋ก, ์ฆ‰ ํŒ๋ณ„์ž๊ฐ€ ์ง„์งœ ๋ฐ์ดํ„ฐ์™€ ๊ตฌ๋ถ„ํ•˜์ง€ ๋ชปํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  2. ํŒ๋ณ„์ž(Discriminator):
    • ์—ญํ• : ํŒ๋ณ„์ž๋Š” ์ž…๋ ฅ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์‹ค์ œ ๋ฐ์ดํ„ฐ์ธ์ง€, ์•„๋‹ˆ๋ฉด ์ƒ์„ฑ์ž๊ฐ€ ๋งŒ๋“  ๊ฐ€์งœ ๋ฐ์ดํ„ฐ์ธ์ง€ ๊ตฌ๋ถ„ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ํŒ๋ณ„์ž๋Š” ์ด์ง„ ๋ถ„๋ฅ˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ์‹ ๊ฒฝ๋ง์ฒ˜๋Ÿผ ์ž‘๋™ํ•˜์—ฌ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ '์ง„์งœ' ๋˜๋Š” '๊ฐ€์งœ'๋กœ ๋ถ„๋ฅ˜ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ชฉํ‘œ: ํŒ๋ณ„์ž์˜ ๋ชฉํ‘œ๋Š” ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ๋ถ„๋ฅ˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ์‹ค์ œ ๋ฐ์ดํ„ฐ๋Š” '์ง„์งœ'๋กœ, ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋Š” '๊ฐ€์งœ'๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

GAN์˜ ํ•™์Šต ์ ˆ์ฐจ

GAN์˜ ํ•™์Šต์€ ์ƒ์„ฑ์ž์™€ ํŒ๋ณ„์ž๊ฐ€ ์„œ๋กœ ๊ฒฝ์Ÿํ•˜๋ฉด์„œ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

https://www.statworx.com/en/content-hub/blog/generative-adversarial-networks-how-data-can-be-generated-with-neural-networks/

  1. ์ƒ์„ฑ์ž๋Š” ๊ฐ€์งœ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑ: ๋จผ์ € ์ƒ์„ฑ์ž๋Š” ๋žœ๋คํ•œ ๋…ธ์ด์ฆˆ ๋ฒกํ„ฐ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๊ฐ€์งœ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  2. ํŒ๋ณ„์ž๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„๋ฅ˜: ์ƒ์„ฑ์ž๊ฐ€ ๋งŒ๋“  ๊ฐ€์งœ ๋ฐ์ดํ„ฐ์™€ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์„ž์–ด ํŒ๋ณ„์ž์—๊ฒŒ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ํŒ๋ณ„์ž๋Š” ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ง„์งœ์ธ์ง€ ๊ฐ€์งœ์ธ์ง€ ๋ถ„๋ฅ˜ํ•ฉ๋‹ˆ๋‹ค.
  3. ํŒ๋ณ„์ž ํ•™์Šต: ํŒ๋ณ„์ž๋Š” ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง„์งœ๋กœ, ๊ฐ€์งœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์งœ๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ํŒ๋ณ„์ž์˜ ์†์‹ค์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€์ค‘์น˜๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.
  4. ์ƒ์„ฑ์ž ํ•™์Šต: ์ƒ์„ฑ์ž๋Š” ํŒ๋ณ„์ž๋ฅผ ์†์ด๊ธฐ ์œ„ํ•ด, ํŒ๋ณ„์ž๊ฐ€ ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง„์งœ๋กœ ๋ถ„๋ฅ˜ํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ƒ์„ฑ์ž์˜ ์†์‹ค์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€์ค‘์น˜๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ณผ์ •์—์„œ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

GAN์˜ ๋ณ€ํ˜• ๋ชจ๋ธ

GAN์€ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ณ€ํ˜• ๋ชจ๋ธ์ด ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์š” ๋ณ€ํ˜• ๋ชจ๋ธ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒƒ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.

https://www.researchgate.net/publication/332445799_A_Novel_Computer-Aided_Diagnosis_Scheme_on_Small_Annotated_Set_G2C-CAD

  1. DCGAN (Deep Convolutional GAN):
    • ํŠน์ง•: DCGAN์€ ํ•ฉ์„ฑ๊ณฑ ์‹ ๊ฒฝ๋ง(CNN)์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” GAN์˜ ๋ณ€ํ˜• ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. CNN ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ, ๋” ๋ณต์žกํ•œ ํŒจํ„ด๊ณผ ๋” ๋†’์€ ํ•ด์ƒ๋„์˜ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ ์šฉ ๋ถ„์•ผ: ์ฃผ๋กœ ์ด๋ฏธ์ง€ ์ƒ์„ฑ์—์„œ ๋†’์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๋ฉฐ, ์‹ค์ œ ์ด๋ฏธ์ง€์™€ ๋งค์šฐ ์œ ์‚ฌํ•œ ๊ณ ํ•ด์ƒ๋„ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  2. CycleGAN:
    • ํŠน์ง•: CycleGAN์€ ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ๊ฐ€์ง€ ๋„๋ฉ”์ธ ๊ฐ„์˜ ์ด๋ฏธ์ง€๋ฅผ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์—ฌ๋ฆ„ ํ’๊ฒฝ์„ ๊ฒจ์šธ ํ’๊ฒฝ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ฑฐ๋‚˜, ๋ง ์ด๋ฏธ์ง€๋ฅผ ์–ผ๋ฃฉ๋ง ์ด๋ฏธ์ง€๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋“ฑ์˜ ์ž‘์—…์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
    • ์ ์šฉ ๋ถ„์•ผ: ์Šคํƒ€์ผ ๋ณ€ํ™˜, ์ด๋ฏธ์ง€ ๋„๋ฉ”์ธ ์ ์‘ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  3. StyleGAN:
    • ํŠน์ง•: StyleGAN์€ ๋งค์šฐ ๊ณ ํ•ด์ƒ๋„์˜ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ƒ์„ฑ๋œ ์ด๋ฏธ์ง€์˜ ์Šคํƒ€์ผ์„ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ด๋ฏธ์ง€์˜ ํŠน์ • ์Šคํƒ€์ผ ์š”์†Œ๋ฅผ ๋…๋ฆฝ์ ์œผ๋กœ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜์—ฌ, ์˜ˆ์ˆ ์  ์Šคํƒ€์ผ ๋ณ€ํ™˜์ด๋‚˜ ์บ๋ฆญํ„ฐ ๋””์ž์ธ ๋“ฑ์— ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค.
    • ์ ์šฉ ๋ถ„์•ผ: ์–ผ๊ตด ์ƒ์„ฑ, ์•„๋ฐ”ํƒ€ ๋””์ž์ธ, ์Šคํƒ€์ผ ๋ณ€ํ™˜ ๋“ฑ.

GAN์˜ ์‘์šฉ ๋ถ„์•ผ

GAN์€ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ์‘์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์š” ์‘์šฉ ๋ถ„์•ผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€/๋น„๋””์˜ค ์ƒ์„ฑ: GAN์€ ์‹ค์ œ์™€ ์œ ์‚ฌํ•œ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ํƒ์›”ํ•œ ์„ฑ๋Šฅ์„ ๋ณด์ž…๋‹ˆ๋‹ค. ๋น„๋””์˜ค ์ƒ์„ฑ์—์„œ๋„ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•: ๋ถ€์กฑํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์ถฉํ•˜๊ธฐ ์œ„ํ•ด GAN์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์˜๋ฃŒ ๋ฐ์ดํ„ฐ์—์„œ ๋“œ๋ฌธ ์งˆ๋ณ‘ ์‚ฌ๋ก€๋ฅผ ์ฆ๊ฐ•ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ…์ŠคํŠธ ์ƒ์„ฑ: GAN์€ ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ์—๋„ ์ ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ž์—ฐ์–ด ์ƒ์„ฑ ๋ชจ๋ธ์˜ ํ•œ ๋ถ€๋ถ„์œผ๋กœ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€ ๋ณ€ํ™˜: ๋‚ฎ ์ด๋ฏธ์ง€๋ฅผ ๋ฐค ์ด๋ฏธ์ง€๋กœ ๋ณ€ํ™˜ํ•˜๊ฑฐ๋‚˜, ํ‘๋ฐฑ ์ด๋ฏธ์ง€๋ฅผ ์ปฌ๋Ÿฌ ์ด๋ฏธ์ง€๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ž‘์—…์—๋„ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

GAN์˜ ์žฅ, ๋‹จ์ 

GAN์˜ ์žฅ์ 

  1. ํ˜„์‹ค๊ณผ ์œ ์‚ฌํ•œ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ: GAN์€ ๋งค์šฐ ํ˜„์‹ค์ ์ธ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์–ด ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  2. ๋‹ค์–‘ํ•œ ๋ณ€ํ˜• ๋ชจ๋ธ ๊ฐœ๋ฐœ ๊ฐ€๋Šฅ: GAN์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์—ฌ๋Ÿฌ ๋ณ€ํ˜• ๋ชจ๋ธ์ด ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ด๋Š” ํŠน์ • ๋ฌธ์ œ์— ๋” ์ ํ•ฉํ•œ ๋ชจ๋ธ์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
  3. ๋ฌดํ•œํ•œ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ: ํ•œ ๋ฒˆ ํ•™์Šต๋œ GAN ๋ชจ๋ธ์€ ์ด๋ก ์ ์œผ๋กœ ๋ฌดํ•œํžˆ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GAN์˜ ๋‹จ์ 

  1. ๋ถˆ์•ˆ์ •ํ•œ ํ•™์Šต ๊ณผ์ •: GAN์˜ ํ•™์Šต ๊ณผ์ •์€ ๋งค์šฐ ๋ถˆ์•ˆ์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ƒ์„ฑ์ž์™€ ํŒ๋ณ„์ž๊ฐ€ ๊ท ํ˜•์„ ์ด๋ฃจ์ง€ ๋ชปํ•˜๋ฉด ํ•™์Šต์ด ์‹คํŒจํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํ•™์Šต์ด ์ž˜ ์ง„ํ–‰๋˜์ง€ ์•Š๊ฑฐ๋‚˜, ํ•™์Šต๋œ ๋ชจ๋ธ์ด ์˜๋ฏธ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜์ง€ ๋ชปํ•˜๋Š” ์ƒํ™ฉ์„ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ๋ชจ๋“œ ๋ถ•๊ดด(Mode Collapse): GAN์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋กœ, ์ƒ์„ฑ์ž๊ฐ€ ์ œํ•œ๋œ ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ๋งŒ ์ƒ์„ฑํ•˜๊ฒŒ ๋˜์–ด ๋‹ค์–‘์„ฑ์„ ์žƒ๊ฒŒ ๋˜๋Š” ํ˜„์ƒ์ž…๋‹ˆ๋‹ค.
  3. ๋งŽ์€ ๊ณ„์‚ฐ ์ž์› ํ•„์š”: GAN์˜ ํ•™์Šต์—๋Š” ๋งŽ์€ ๊ณ„์‚ฐ ์ž์›์ด ํ•„์š”ํ•˜๋ฉฐ, ํ•™์Šต ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํŠนํžˆ ๊ณ ํ•ด์ƒ๋„ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ์— ๋” ํฐ ๋ฌธ์ œ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.