๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ’ ํ”„๋กœ๊ทธ๋ž˜๋ฐ·๊ฐœ๋ฐœ/๐Ÿ”ธ๋จธ์‹ ๋Ÿฌ๋‹

์ธ๊ณต์‹ ๊ฒฝ๋ง

by Jenny:! 2024. 1. 25.

โœ…์ธ๊ณต์‹ ๊ฒฝ๋ง(ANN, Artificial Neural Network)

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

 

โœ…์ธ๊ณต์‹ ๊ฒฝ๋ง์˜ ๊ตฌ์กฐ

  • ๋™๊ทธ๋ž€ ์›์ด ํ•˜๋‚˜์˜ ๋‰ด๋Ÿฐ์ด ๋˜๊ณ , ์ด๋“ค์ด ์—ฐ๊ฒฐ๋˜์–ด ํ•˜๋‚˜์˜ ์‹ ๊ฒฝ๋ง์„ ์ด๋ฃธ
  • ์ž…๋ ฅ์ธต ๋…ธ๋“œ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด, ๋‹จ๊ณ„๋ณ„ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ด ์ถœ๋ ฅ์ธต์—์„œ ๊ฒฐ๊ณผ ๊ฐ’์„ ์–ป์Œ

 

โœ…ํผ์…‰ํŠธ๋ก 

  • ์ง€๋„ํ•™์Šต์˜ ์‹ ๊ฒฝ๋ง
    • ๊ธฐ๋ณธ์‹
      •  
         
        • X ๋…ธ๋“œ๋“ค์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š” ์ž…๋ ฅ์ธต ๋…ธ๋“œ์ด๊ณ , ์ตœ์ข… ๊ฒฐ๊ณผ๊ฐ’์ธ Y๋Š” ์ถœ๋ ฅ์ธต ๋…ธ๋“œ์ด๋‹ค. ์ž…๋ ฅ์ธต ๋…ธ๋“œ์™€ ์ถœ๋ ฅ์ธต ๋…ธ๋“œ๋Š” ๊ฐ€์ค‘์น˜(W) ๊ฐ’์œผ๋กœ ์—ฐ๊ฒฐ๋จ
        • ์ด ์‹๋งŒ์œผ๋กœ๋Š” ์ตœ์ข… ์ถœ๋ ฅ ๊ฐ’์˜ ๋ฒ”์œ„๋ฅผ ์ •ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์ข… ์ถœ๋ ฅ ๊ฐ’์„ ํ™œ์„ฑํ™” ํ•จ์ˆ˜(Activation Function)์— ๋„ฃ์–ด ์ผ์ • ๋ฒ”์œ„์˜ ๊ฐ’์œผ๋กœ ์กฐ์ ˆํ•ด์•ผ ํ•จ
        • ํ™œ์„ฑํ™” ํ•จ์ˆ˜ f๋ฅผ ๊ตฌํ•  ๋•Œ๋Š” ๊ณ„๋‹จ ํ•จ์ˆ˜(Step Function)๋ฅผ ์‚ฌ์šฉํ•จ
          • ๊ณ„๋‹จ ํ•จ์ˆ˜๋Š” ๋ณดํ†ต -1~+1 ๋˜๋Š” 0~+1๊นŒ์ง€์˜ ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋„๋ก ๊ตฌํ˜„๋จ
          • ๋‹จ๊ทน์„ฑ(0~1) ํ•จ์ˆ˜, ์–‘๊ทน์„ฑ(-1~+1) ํ•จ์ˆ˜
        • T๋Š” ์ž„๊ณ„์น˜์ธ๋ฐ, ๊ฐ€์ค‘ํ•ฉ๋œ ๊ฒฐ๊ณผ์™€ ๋น„๊ตํ•ด ์ถœ๋ ฅ๊ฐ’์„ ๊ฒฐ์ •ํ•จ
        • ํ•ด๋‹น ๋…ธ๋“œ ์ž…๋ ฅ ๊ฐ’๋“ค์˜ ๊ฐ€์ค‘ํ•ฉ์ด ์ž„๊ณ„์น˜๋ฅผ ๋„˜์œผ๋ฉด 1์„ ์ถœ๋ ฅํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 0 ๋˜๋Š” -1์„ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ์ด ๊ณ„๋‹จ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ ํ™œ์„ฑํ™” ํ•จ์ˆ˜

๐Ÿ‘‰ํ•™์Šต ๋ฐฉ๋ฒ•

  • ํผ์…‰ํŠธ๋ก  ์ธ๊ณต์‹ ๊ฒฝ๋ง์„ ํ•™์Šต์‹œํ‚จ๋‹ค๋Š” ๊ฒƒ์€ ์ธ๊ณต์‹ ๊ฒฝ๋ง ๊ฐ ๋…ธ๋“œ ์‚ฌ์ด์˜ ๊ฐ€์ค‘์น˜ ๊ฐ’์„ ํ•™์Šตํ•œ๋‹ค๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Œ
  • ํผ์…‰ํŠธ๋ก  ํ•™์Šต๋ฒ•์—์„œ ์ดˆ๊ธฐ ๊ฐ€์ค‘์น˜๋Š” ์ž„์˜์˜ ๊ฐ’์„ ๊ฐ€์ง€๋ฉฐ, ํ•™์Šต ์‹ ํ˜ธ๋กœ ์ฃผ์–ด์ง„ ๋ชฉํ‘œ์น˜์™€ ํผ์…‰ํŠธ๋ก ์˜ ์‹ค์ œ ์ถœ๋ ฅ์˜ ์ฐจ์ด, ์ฆ‰ ์˜ค์ฐจ๋ฅผ ๋ฐ˜๋ณต ์ˆ˜์ •ํ•ด ๊ฐ’์„ ์–ป์Œ
  • ํผ์…‰ํŠธ๋ก ์˜ ๊ฐ€์ค‘์น˜ ํ•™์Šต์€ ์ž…๋ ฅ ๊ฐ’๋“ค์— ๋Œ€ํ•œ ์ถœ๋ ฅ ๊ฐ’ ์˜ค๋ฅ˜๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ๋ผ๊ณ  ๋ณด๋ฉด ๋จ

โ˜‘๏ธ๋™์ž‘ ๋ฐฉ์‹์˜ ์˜ˆ

ํผ์…‰ํŠธ๋ก  ์‹ ๊ฒฝ๋ง์—์„œ ์•„๋ž˜์˜ ์„ค์ •์„ ํ•  ๋•Œ, NET ๊ฐ’์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • ์ž…๋ ฅ๋ฒกํ„ฐ :  x = [xโ‚€,xโ‚] = [1, 2]
  • weight : w = [wโ‚€,wโ‚] = [1, 1]
  • ์ž„๊ณ„์น˜(T) : 1.5

์ฆ‰, ๋…ธ๋“œ์˜ ๊ธฐ๋ณธ ์—ฐ์‚ฐ์€ ์ž…๋ ฅ ๊ฐ’์˜ ๊ฐ€์ค‘ํ•ฉ์ž„. ์ด๋ฅผ ํ™œ์„ฑํ™” ํ•จ์ˆ˜์— ๋„ฃ์œผ๋ฉด ์ˆ˜์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

์ด์— ๋”ฐ๋ผ, ์ž…๋ ฅ ๋ฒกํ„ฐ x = [xโ‚€,xโ‚] = [1, 2]์— ๋Œ€ํ•œ ์ตœ์ข… ์ถœ๋ ฅ๊ฐ’์€ 1์ด ๋œ๋‹ค.

โ˜‘๏ธ๋”๋ฏธ๋…ธ๋“œ

1*wโ‚‚๊ฐ€ ์ž„๊ณ„์น˜ ๊ฐ’์œผ๋กœ ์ž‘์šฉํ•œ๋‹ค.

 

๋‹ค์ธต ํผ์…‰ํŠธ๋ก 

 ๋“ฑ์žฅ ๋ฐฐ๊ฒฝ

  • ํผ์…‰ํŠธ๋ก ์˜ ์ž…๋ ฅ ๊ฐ’๋“ค์€ ์„ ํ˜• ๋ถ„๋ฆฌ(Linearly Separable) ํ•จ์ˆ˜๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์„ ํ˜•๋ถ„๋ฆฌ ํ•จ์ˆ˜๋ž€ ๋ถ„๋ฆฌ๋œ ๋ฉด์ด ์„ ํ˜• ํ•จ์ˆ˜๋กœ ํ‘œ์‹œ๋œ๋‹ค๋Š” ์˜๋ฏธ์ž„
  • ์ด ํ•จ์ˆ˜๋Š” 2๊ฐœ์˜ ์ž…๋ ฅ ๊ฐ’ ์ค‘ ํ•˜๋‚˜์˜ ๊ฐ’์ด 1์ผ ๋•Œ 1์„ ์ถœ๋ ฅํ•˜๋Š” XOR ๋…ผ๋ฆฌ๊ฒŒ์ดํŠธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•จ. ๊ณก์„ ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ 2๊ฐœ ์ด์ƒ์˜ ์ง์„ ์„ ์‚ฌ์šฉํ•ด์•ผ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž„
  • ์‹ค์ œ๋กœ๋„ ํผ์…‰ํŠธ๋ก ์€ ๋‹จ์ธต ํ•˜๋‚˜๋กœ๋Š” ์ œ๋Œ€๋กœ ๊ธฐ๋Šฅํ•  ์ˆ˜ ์—†์Œ. ์„ ํ˜•๋ถ„๋ฆฌ ํ•จ์ˆ˜์—์„œ ์ž…๋ ฅ ๊ฐ’์ด 2๊ฐœ ์ฆ‰, ์ž…๋ ฅ ๊ฐ’์ด 2์ฐจ์›์ด๋ฉด ์ง์„ ์ด ๋˜๊ณ , ์ž…๋ ฅ ๊ฐ’์ด 3๊ฐœ๋ฉด ํ‰๋ฉด์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์ž„
  • ์ด๋ฅผ ์ผ๋ฐ˜ํ™”ํ•ด์„œ ์ƒ๊ฐํ•˜๋ฉด n์ฐจ์›์˜ ์ž…๋ ฅ ๊ฐ’์„ ๋ถ„๋ฆฌํ•˜๋Š” ํ•จ์ˆ˜๋Š” n-1 ์ฐจ์›์ด ๋จ. ๋ฐ”๋กœ ์ด๋Ÿฌํ•œ ๋น„์„ ํ˜•(Non-linear) ๋ถ„๋ฆฌ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์ด ๋“ฑ์žฅํ•จ

๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์˜ ๊ตฌ์กฐ ๋ฐ ํŠน์ง•

  • ๋‹ค์ธต ํผ์…‰ํŠธ๋ก (MLP)์€ ์ž…๋ ฅ์ธต๊ณผ ์ถœ๋ ฅ์ธต ์‚ฌ์ด์— ํ•˜๋‚˜ ์ด์ƒ์˜ ์€๋‹‰์ธต(hidden layer) ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๋น„์„ ํ˜• ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋œ ์‹ ๊ฒฝ๋ง ๊ตฌ์กฐ์ž„
  • ๊ฐ ์ธต์˜ ๋‰ด๋Ÿฐ์€ ์ด์ „ ์ธต์˜ ๋ชจ๋“  ๋…ธ๋“œ์™€ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ฐ ์—ฐ๊ฒฐ์—๋Š” ๊ณ ์œ ํ•œ ๊ฐ€์ค‘์น˜๊ฐ€ ๋ถ€์—ฌ๋จ
  • ์€๋‹‰์ธต์˜ ๋‰ด๋Ÿฐ๋“ค์€ ์ž…๋ ฅ์˜ ๋‹จ์ˆœ ๊ฐ€์ค‘ํ•ฉ์ด ์•„๋‹ˆ๋ผ, ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ๋น„์„ ํ˜• ๋ณ€ํ™˜์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ์ž…๋ ฅ ๊ณต๊ฐ„์„ ๋ณต์žกํ•œ ํ˜•ํƒœ๋กœ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ
  • ์ด๋ ‡๊ฒŒ ํ•จ์œผ๋กœ์จ ๋‹จ์ธต ํผ์…‰ํŠธ๋ก ์ด ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ๋˜ XOR ๋ฌธ์ œ ๊ฐ™์€ ๋น„์„ ํ˜• ํŒจํ„ด ์ธ์‹์ด ๊ฐ€๋Šฅํ•ด์ง

๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์˜ ํ•œ๊ณ„์™€ ๋ฐœ์ „ ๋ฐฉํ–ฅ

  • ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์€ ๋น„์„ ํ˜• ๋ฌธ์ œ ํ•ด๊ฒฐ์˜ ํฐ ๋ŒํŒŒ๊ตฌ์˜€์ง€๋งŒ, ์€๋‹‰์ธต์ด ๋งŽ์•„์งˆ์ˆ˜๋ก ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค(vanishing gradient) ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ , ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ํ•™์Šต ํšจ์œจ์ด ๋–จ์–ด์ง€๋ฉฐ, ํŠน์ง• ์ถ”์ถœ(feature extraction) ์„ ์Šค์Šค๋กœ ์ˆ˜ํ–‰ํ•˜์ง€ ๋ชปํ•จ
  • ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ํ•ฉ์„ฑ๊ณฑ ์‹ ๊ฒฝ๋ง(CNN), ์ˆœํ™˜ ์‹ ๊ฒฝ๋ง(RNN) ๋“ฑ์˜ ๋‹ค์–‘ํ•œ ๊ตฌ์กฐ๊ฐ€ ๋“ฑ์žฅํ–ˆ๊ณ , ํ˜„๋Œ€์˜ ๋”ฅ๋Ÿฌ๋‹(Deep Learning)์€ ์ด ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐœ์ „ํ•จ