ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [AI] ํผ์…‰ํŠธ๋ก ๊ณผ ํ™œ์„ฑํ™” ํ•จ์ˆ˜
    ๐Ÿ’ปProgramming/AI 2023. 10. 31. 23:41
    ๋ฐ˜์‘ํ˜•

    ๐Ÿ”— ํผ์…‰ํŠธ๋ก 

    • ์ธ๊ณต ์‹ ๊ฒฝ๋ง(Artificial Neural Network, ANN)์˜ ๊ตฌ์„ฑ์š”์†Œ๋กœ ๋‹ค์ˆ˜์˜ ๊ฐ’์„ ์ž…๋ ฅ ๋ฐ›์•„ ํ•˜๋‚˜์˜ ๊ฐ’์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜.
    • ์ด์ง„ ๋ถ„๋ฅ˜(Binary Classification) ๋ชจ๋ธ์„ ํ•™์Šตํ•˜๊ธฐ ์œ„ํ•œ ์ง€๋„ํ•™์Šต(Supervised Learning) ๊ธฐ๋ฐ˜์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜.
      • ์ด์ง„ ๋ถ„๋ฅ˜: ๊ณ ์–‘์ด์™€ ๊ฐ•์•„์ง€ ์‚ฌ์ง„์„ ๋ฌด์ž‘์œ„๋กœ ๋ณด์—ฌ์ฃผ์—ˆ์„ ๋•Œ ๊ณ ์–‘์ด ์‚ฌ์ง„์ธ์ง€ ๊ฐ•์•„์ง€ ์‚ฌ์ง„์ธ์ง€ ๋ถ„๋ฅ˜ํ•˜๋Š” ๊ฒƒ. ← ๊ณ ์–‘์ด, ๊ฐ•์•„์ง€์™€ ๊ฐ™์€ ์„ ํƒ์ง€๋ฅผ ํด๋ž˜์Šค๋ผ๊ณ  ๋ถ€๋ฅด๊ณ  ์„ ํƒ์ง€๊ฐ€ 2๊ฐœ์ธ ๊ฒฝ์šฐ๋ฅผ ์ด์ง„ ๋ถ„๋ฅ˜๋ผ๊ณ  ํ•จ.
      • ์ง€๋„ํ•™์Šต: ๋ฐ์ดํ„ฐ(=feature)์™€ ์ •๋‹ต(=label)์„ ๋ชจ๋‘ ํ™œ์šฉํ•˜์—ฌ ํ•™์Šตํ•˜๋Š” ๋ฐฉ์‹. ์˜ˆ๋ฅผ๋“ค์–ด ๊ฐ•์•„์ง€์™€ ๊ณ ์–‘์ด ์‚ฌ์ง„์„ ๋ถ„๋ฅ˜ํ•˜๋Š” ๋ชจ๋ธ์„ ํ•™์Šตํ•  ๋•Œ ๋™๋ฌผ ์ด๋ฆ„๊นŒ์ง€ ํ•จ๊ป˜ ์•Œ๋ ค์ฃผ๋Š” ๊ฒฝ์šฐ.

    ์ด์ง„ ๋ถ„๋ฅ˜

    ๐Ÿ“ ํผ์…‰ํŠธ๋ก ์˜ ๋™์ž‘๊ณผ์ •

    • ๋‹ค์ˆ˜์˜ ๊ฐ’ x๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ , ์ž…๋ ฅ๋œ ๊ฐ’๋งˆ๋‹ค ๊ฐ€์ค‘์น˜(weight)๋ฅผ ๊ณฑํ•œ๋‹ค.
    • ๊ฐ€์ค‘์น˜๊ฐ€ ํด์ˆ˜๋ก ์ž…๋ ฅ๊ฐ’์ด ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธ. ์ž…๋ ฅ๊ฐ’์œผ๋กœ์จ x์™ธ์—๋„ ํŽธํ–ฅ(bias)์€ ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ ์ตœ์ ํ™”์˜ ์ค‘์š” ๋ณ€์ˆ˜ ์ค‘ ํ•˜๋‚˜.
    • ์ž…๋ ฅ๊ฐ’๊ณผ ๊ฐ€์ค‘์น˜์˜ ๊ณฑ, ํŽธํ–ฅ์€ ํผ์…‰ํŠธ๋ก ์œผ๋กœ ์ „๋‹ฌ. ํผ์…‰ํŠธ๋ก ์€ ์ „๋‹ฌ๋œ ๊ฐ’์„ ๋ชจ๋‘ ํ•ฉ์‚ฐ. → ํ•ฉ์‚ฐ๋œ ๊ฒฐ๊ณผ๊ฐ’: ๊ฐ€์ค‘ํ•ฉ

    ๐Ÿ”— ํผ์…‰ํŠธ๋ก ์˜ ์ข…๋ฅ˜

    • ์ž…๋ ฅ์ธต๊ณผ ์ถœ๋ ฅ์ธต ์‚ฌ์ด์— ์€๋‹‰์ธต์˜ ์กด์žฌ ์—ฌ๋ถ€์— ๋”ฐ๋ผ ๋‹จ์ธต ํผ์…‰ํŠธ๋ก ๊ณผ ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์œผ๋กœ ๋ถ„๋ฅ˜

    ๐Ÿ“ ๋‹จ์ธต ํผ์…‰ํŠธ๋ก 

    • ์€๋‹‰์ธต์ด ์—†์ด ์ž…๋ ฅ์ธต๊ณผ ์ถœ๋ ฅ์ธต๋งŒ ์žˆ๋Š” ๊ฒฝ์šฐ. ๋””์ง€ํ„ธ ๋…ผ๋ฆฌ ํšŒ๋กœ ๊ฐœ๋…์—์„œ AND, NAND, OR ๊ฒŒ์ดํŠธ๋ฅผ ๊ตฌํ˜„ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, XOR ๊ฒŒ์ดํŠธ๋Š” ๊ตฌํ˜„ ๋ถˆ๊ฐ€๋Šฅ → ๋‹จ์ธต ํผ์…‰ํŠธ๋ก ์€ ์ž…๋ ฅ๊ฐ’์— ๋”ฐ๋ฅธ ์ถœ๋ ฅ๊ฐ’์„ ๊ตฌ๋ถ„์ง“๋Š” ์ง์„ ์„ 1๊ฐœ๋ฐ–์— ๊ทธ๋ฆด ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ
    • XOR๊ฒŒ์ดํŠธ์™€ ๊ฐ™์ด ์กฐ๊ธˆ๋งŒ ๋กœ์ง์ด ๋ณต์žกํ•ด์ง€๋ฉด ์ด๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์ ์ด ๋‹จ์ธต ํผ์…‰ํŠธ๋ก ์˜ ํ•œ๊ณ„

    XOR ๊ฒŒ์ดํŠธ

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

    • ์ž…๋ ฅ์ธต๊ณผ ์ถœ๋ ฅ์ธต ์‚ฌ์ด์— 1๊ฐœ ์ด์ƒ์˜ ์€๋‹‰์ธต์ด ์žˆ๋Š” ํผ์…‰ํŠธ๋ก (Multi-Layer Perceptron, MLP)
    • ๋‹จ์ผ ํผ์…‰ํŠธ๋ก ์ด XOR ๊ฒŒ์ดํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•œ๋‹ค๋Š” ํ•œ๊ณ„๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅ
    • AND, NAND, OR ๊ฒŒ์ดํŠธ๋ฅผ ์กฐํ•ฉํ•˜์—ฌ XOR ๊ฒŒ์ดํŠธ ๊ตฌํ˜„. XOR ๊ฒŒ์ดํŠธ๋Š” ์€๋‹‰์ธต 1๊ฐœ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๊ตฌํ˜„ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ๋”์šฑ ๋ณต์žกํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋ฐ˜์ ์œผ๋กœ 2๊ฐœ ์ด์ƒ์˜ ์€๋‹‰์ธต ์ถ”๊ฐ€. → 2๊ฐœ ์ด์ƒ์˜ ์€๋‹‰์ธต์„ ๊ฐ€์ง„ ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์„ “์‹ฌ์ธต ์‹ ๊ฒฝ๋ง(Deep Neural Network, DNN)์ด๋ผ ๋ถ€๋ฅธ๋‹ค.
    • ๋”ฅ๋Ÿฌ๋‹์€ ์ด๋Ÿฌํ•œ ์‹ฌ์ธต ์‹ ๊ฒฝ๋ง์„ ํ•™์Šต(Learning)ํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธ

    ๐Ÿ”— ํ™œ์„ฑํ™” ํ•จ์ˆ˜

    • ํผ์…‰ํŠธ๋ก ์˜ ์ถœ๋ ฅ๊ฐ’์„ ๊ฒฐ์ •ํ•˜๋Š” ๋น„์„ ํ˜•(non-linear) ํ•จ์ˆ˜. ์ž…๋ ฅ๊ฐ’์˜ ์ดํ•ฉ์„ ์ถœ๋ ฅํ• ์ง€ ๋ง์ง€ ๊ฒฐ์ •ํ•˜๊ณ , ์ถœ๋ ฅํ•œ๋‹ค๋ฉด ์–ด๋–ค ๊ฐ’์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ถœ๋ ฅํ• ์ง€ ๊ฒฐ์ •ํ•˜๋Š” ํ•จ์ˆ˜.
    • ํ™œ์„ฑํ™” ํ•จ์ˆ˜์˜ ์ข…๋ฅ˜์—๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค.

    ๐Ÿ“ 1. Sign ํ•จ์ˆ˜

    Sign ํ•จ์ˆ˜

    • ํผ์…‰ํŠธ๋ก  ๋‚ด ์ž…๋ ฅ๊ฐ’์˜ ์ดํ•ฉ์ด 0๋ณด๋‹ค ์ž‘์„ ๊ฒฝ์šฐ -1์„ ์ถœ๋ ฅํ•˜๊ณ , 0๋ณด๋‹ค ํด๊ฒฝ์šฐ 1์„ ์ถœ๋ ฅํ•˜๋Š” ์—ญํ•  → ๋น„์„ ํ˜• ํ•จ์ˆ˜

    ํ•œ๊ณ„: ๋ฐ์ดํ„ฐ์™€ ๊ฒฐ์ •๊ฒฝ๊ณ„(Decision Boundary) ๊ฐ„ ๊ฑฐ๋ฆฌ ์ •๋ณด๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š๋Š” ํ•œ๊ณ„ ์กด์žฌ → ์•„๋ž˜์˜ ์ž๋ฃŒ์ฒ˜๋Ÿผ ์šฐ์ธก ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ๋” ์ข‹์€ ๊ฒฐ์ • ๊ฒฐ๊ณ„๊ฐ€ ์žˆ์„์ˆ˜๋„ ์žˆ๋Š”๋ฐ ๊ณ ๋ ค ์•ˆํ•จ.

    • ๊ฒฐ์ • ๊ฒฐ๊ณ„: ํด๋ž˜์Šค๋ณ„๋กœ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋ฐ์ดํ„ฐ๊ฐ„ ๊ฑฐ๋ฆฌ๋ฅผ ๋งˆ์ง„(margin)์ด๋ผ๊ณ  ๋ถ€๋ฅด๋Š”๋ฐ, ๋งˆ์ง„์˜ ํฌ๊ธฐ๊ฐ€ ํด์ˆ˜๋ก ์ข‹์€ ๊ฒฐ์ •๊ฒฝ๊ณ„

    ๋งˆ์ง„๊ณผ ๊ฒฐ์ •๊ฒฝ๊ณ„

    ๐Ÿ“ 2. ๊ณ„๋‹จ ํ•จ์ˆ˜(step function)

    ๊ณ„๋‹จ ํ•จ์ˆ˜

    • ํผ์…‰ํŠธ๋ก  ๋‚ด ์ž…๋ ฅ๊ฐ’์˜ ํ•ฉ์ด 0๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฉด 0, ํฌ๋ฉด 1์„ ์ถœ๋ ฅํ•˜๋Š” ์—ญํ• . → ๋น„์„ ํ˜• ํ•จ์ˆ˜

    ๐Ÿ“ 3. ์‹œ๊ทธ๋ชจ์ด๋“œ ํ•จ์ˆ˜(Sigmoid ํ•จ์ˆ˜)

    • ํŠน์ง•
      • ๋ชจ๋“  ์ž…๋ ฅ๊ฐ’์— ๋Œ€ํ•ด ์ถœ๋ ฅ๊ฐ’์ด ์‹ค์ˆ˜๊ฐ’์œผ๋กœ ์ •์˜(=Soft Decision)
      • ๊ฐ’์ด ์ž‘์•„์งˆ์ˆ˜๋ก 0, ์ปค์งˆ์ˆ˜๋ก 1์— ์ˆ˜๋ ด
      • ์ถœ๋ ฅ์ด 0~1์‚ฌ์ด๋กœ ํ™•๋ฅ  ํ‘œํ˜„ ๊ฐ€๋Šฅ(=Binary Classification)
      • Vanishing Gradinet(๊ธฐ์šธ๊ธฐ ์†์‹ค) ๋ฌธ์ œ ์กด์žฌ

    ๐Ÿ“ 4. ReLU ํ•จ์ˆ˜(Rectified Linear Unit, ReLU)

    • y = x์ธ ์„ ํ˜•ํ•จ์ˆ˜๊ฐ€ ์ž…๋ ฅ๊ฐ’ 0 ์ดํ•˜์—์„œ๋ถ€ํ„ฐ rectified(์ •๋ฅ˜)๋œ ํ•จ์ˆ˜ → ํผ์…‰ํŠธ๋ก  ๋‚ด ์ž…๋ ฅ๊ฐ’์˜ ์ดํ•ฉ์ด 0๋ณด๋‹ค ์ž‘์„ ๊ฒฝ์šฐ 0, ํฌ๋ฉด ๊ทธ ๊ฐ’ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋Š” ํ•จ์ˆ˜.
    • ํŠน์ง•
      • ๋”ฅ๋Ÿฌ๋‹ ๋ถ„์•ผ์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ํ™œ์„ฑํ™” ํ•จ์ˆ˜
      • ์ž…๋ ฅ๊ฐ’์ด ์Œ์ˆ˜์ผ ๊ฒฝ์šฐ ์ถœ๋ ฅ๊ฐ’๊ณผ ๋ฏธ๋ถ„๊ฐ’์„ ๋ชจ๋‘ 0์œผ๋กœ ๊ฐ•์ œํ•˜๋ฏ€๋กœ ์ฃฝ์€ ๋‰ด๋Ÿฐ์„ ํšŒ์ƒํ•˜๋Š”๋ฐ ์–ด๋ ค์›€ ์กด์žฌ
      • ๊ตฌํ˜„์ด ๋‹จ์ˆœํ•˜๊ณ  ์—ฐ์‚ฐ์ด ํ•„์š” ์—†์ด ์ž„๊ณ„๊ฐ’(์–‘์ˆ˜/์Œ์ˆ˜ ์—ฌ๋ถ€)๋งŒ ํ™œ์šฉํ•˜๋ฏ€๋กœ ์—ฐ์‚ฐ์†๋„ ๋น ๋ฆ„

    ๐Ÿ“ 5. Softmax ํ•จ์ˆ˜

    • N๊ฐ€์ง€ ์ถœ๋ ฅ๊ฐ’์„ ๊ฐ–๋Š” ํ•จ์ˆ˜๋กœ์จ ์ž…๋ ฅ๊ฐ’์„ N๊ฐ€์ง€ ํด๋ž˜์Šค ์ค‘ ํ•˜๋‚˜๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” Multi-class Classification์— ์ฃผ๋กœ ์‚ฌ์šฉ

    Softmax ํ•จ์ˆ˜

    • ํŠน์ง•
      • ์ถœ๋ ฅ๊ฐ’ N๊ฐœ
      • ์ž…๋ ฅ๊ฐ’์„ ๊ฐ๊ฐ ์ง€์ˆ˜ํ•จ์ˆ˜๋กœ ์ทจํ•˜๊ณ , ์ด๋ฅผ ์ •๊ทœํ™”(=์ดํ•ฉ์„ 1๋กœ ๋งŒ๋“ฆ)
      • ๋ชจ๋“  ์ถœ๋ ฅ๊ฐ’์˜ ํ•ฉ์€ ๋ฐ˜๋“œ์‹œ 1
      • N๊ฐ€์ง€ ์ค‘ ํ•œ ๊ฐ€์ง€์— ์†ํ•  ํ™•๋ฅ  ํ‘œํ˜„ ๊ฐ€๋Šฅ → Multi-class Classification

    ๐Ÿ“ ํ™œ์„ฑํ™” ํ•จ์ˆ˜์˜ ์ ์ ˆํ•œ ์ด์šฉ

    • ํšŒ๊ท€ ๋ฌธ์ œ: ํ•ญ๋“ฑ ํ•จ์ˆ˜
    • ์ด์ง„ ๋ถ„๋ฅ˜: Sigmoid ํ•จ์ˆ˜
    • ๋‹ค์ค‘ ๋ถ„๋ฅ˜: Softmax ํ•จ์ˆ˜

    ๐Ÿ”— ํ™œ์„ฑํ™” ํ•จ์ˆ˜: ์„ ํ˜•ํ•จ์ˆ˜ vs ๋น„์„ ํ˜•ํ•จ์ˆ˜

    • ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์—์„œ ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋Š” “๋น„์„ ํ˜• ํ•จ์ˆ˜”์—ฌ์•ผ ํ•œ๋‹ค.
    • ์„ ํ˜•ํ•จ์ˆ˜์˜ ์˜๋ฏธ: ์ž…๋ ฅ๊ฐ’์˜ ์ถœ๋ ฅ์ด ์ž…๋ ฅ์— ์ƒ์ˆ˜๋ฅผ ๊ณฑํ•œ ๊ฒƒ์ธ ํ•จ์ˆ˜.
    • ์„ ํ˜• ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์‹ ๊ฒฝ๋ง์˜ ์ธต์„ ๊นŠ๊ฒŒ ์Œ“๋Š” ๊ฒƒ์˜ ์˜๋ฏธ๊ฐ€ ์‚ฌ๋ผ์ง€๊ธฐ ๋•Œ๋ฌธ.
    • ์˜ˆ๋ฅผ ๋“ค์–ด, ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ h(x) = cx๋ผ ํ•  ๋•Œ, y(x) = h(h(x)) = c * c * c * x = c^3x → y=ax์—์„œ a =c^3๊ณผ ๊ฐ™๋‹ค. ์ฆ‰ ์œ„์˜ ๋งํ•œ ์„ ํ˜•ํ•จ์ˆ˜์˜ ์˜๋ฏธ์— ๋”ฑ ๋“ค์–ด๋งž๋Š”๋‹ค. → 3์ธต์ด๋‚˜ ์Œ“์•˜๋Š”๋ฐ 1์ธต๋งŒ ์Œ“์€ ๊ฒƒ๊ณผ ๊ฐ™์€ ํšจ๊ณผ → ๋น„์„ ํ˜•ํ•จ์ˆ˜ ์‚ฌ์šฉํ•˜์ž^^

    ๐Ÿ”— ์ •๋ฆฌ

    1. ํผ์…‰ํŠธ๋ก ์€ ์ž…์ถœ๋ ฅ์„ ๊ฐ–์ถ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์ž…๋ ฅ์„ ์ฃผ๋ฉด ์ •ํ•ด์ง„ ๊ฐ’์— ๋”ฐ๋ฅธ ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.

    2. ํผ์…‰ํŠธ๋ก ์—์„œ๋Š” ๊ฐ€์ค‘์น˜์™€ ํŽธํ–ฅ์„ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์„ค์ •ํ•œ๋‹ค. 

    3. ํผ์…‰ํŠธ๋ก ์œผ๋กœ AND, OR ๊ฒŒ์ดํŠธ ๋“ฑ์˜ ๋…ผ๋ฆฌํšŒ๋กœ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

    4. XOR ๊ฒŒ์ดํŠธ๋Š” ๋‹จ์ธต ํผ์…‰ํŠธ๋ก ์œผ๋กœ๋Š” ํ‘œํ˜„ํ•  ์ˆ˜ ์—†๋‹ค.

    5. 2์ธต ํผ์…‰ํŠธ๋ก ์„ ์ด์šฉํ•˜๋ฉด XOR ๊ฒŒ์ดํŠธ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. 

    6. ๋‹จ์ธต ํผ์…‰ํŠธ๋ก ์€ ์ง์„ ํ˜• ์˜์—ญ๋งŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ณ , ๋‹ค์ธต ํผ์…‰ํŠธ๋ก ์€ ๋น„์„ ํ˜• ์˜์—ญ๋„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.


    ๐Ÿ“š References

    [Deep Learning] Activation Function ๊ฐœ๋… ๋ฐ ์ข…๋ฅ˜: sign, tanh, sigmoid, softmax, ReLU, Leaky ReLU

    https://heytech.tistory.com/332

    ๋ฐ˜์‘ํ˜•
Designed by Tistory.