-
[AI] ์ค์ฐจ์ญ์ ํ๋ฒ(๋ฐ๋ฐ๋ฅ๋ถํฐ ์์ํ๋ ๋ฅ๋ฌ๋)๐ปProgramming/AI 2023. 12. 18. 22:53
โจ Backpropagation(์ค์ฐจ์ญ์ ํ๋ฒ)
์ค์ฐจ๋ฅผ ์ญ์ผ๋ก ์ ํํ๋ ๋ฐฉ๋ฒ์ผ๋ก ๊ฐ์ค์น ๋งค๊ฐ๋ณ์์ ๊ธฐ์ธ๊ธฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ณ์ฐํ ์ ์๋ ๋ฐฉ๋ฒ์ด๋ค.
โจ Computational Grap(๊ณ์ฐ ๊ทธ๋ํ)
๊ณ์ฐ ๊ณผ์ ์ ๊ทธ๋ํ๋ก ๋ํ๋ธ ๊ฒ์ผ๋ก ๋ณต์์ Node์ Edge๋ก ํํ
โจ ๋ฌธ์ 1: ํ๋น์ ์ํผ์์ 1๊ฐ์ 100์์ธ ์ฌ๊ณผ๋ฅผ 2๊ฐ ์๊ณ , ์๋น์ธ๊ฐ 10% ๋ถ๊ณผ๋ ๋ ์ง๋ถ ๊ธ์ก์ ๊ตฌํ์ธ์.
์ฌ๊ณผ์ ๊ฐ์์ ์๋น์ธ๋ฅผ ๋ณ์๋ก ์ทจ๊ธํด ์ ๋ฐ์ ํ๊ธฐ
โจ ๋ฌธ์ 2: ํ๋น์ ์ํผ์์ ์ฌ๊ณผ๋ฅผ 2๊ฐ, ๊ทค์ 3๊ฐ ์๋ค. ์ฌ๊ณผ๋ 1๊ฐ์ 100์, ๊ทค์ 1๊ฐ 150์์ด๋ค. ์๋น์ธ๊ฐ 10%์ผ ๋ ์ง๋ถ ๊ธ์ก์ ๊ตฌํด๋ผ.
โจ ์ด ๋ ๋ฌธ์ ์ ํ๋ฆ
1. ๊ณ์ฐ ๊ทธ๋ํ๋ฅผ ๊ตฌ์ฑํ๋ค.
2. ๊ทธ๋ํ์์ ๊ณ์ฐ์ ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ์งํ -> ๊ณ์ฐ์ ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ์งํํ๋ ๊ฒ์ ์์ ํ(forward propagation)๋ผ๊ณ ํ๋ค
๐ ๊ตญ์์ ๊ณ์ฐ
๊ณ์ฐ ๊ทธ๋ํ์ ํน์ง์ '๊ตญ์์ ๊ณ์ฐ'์ ์ ํํจ์ผ๋ก์ ์ต์ข ๊ฒฐ๊ณผ๋ฅผ ์ป๋๋ค๋ ์ ์ ์๋ค.
โจ ๊ตญ์์ ๊ณ์ฐ
์ ์ฒด์์ ์ด๋ค ์ผ์ด ๋ฒ์ด์ง๋ ์๊ด ์์ด ์์ ๊ณผ ๊ด๊ณ๋ ์ ๋ณด๋ง์ผ๋ก ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ ์ ์๋๋ก ํ๋ ๊ฒ.
์ด ๊ทธ๋ํ์์ ๊ฐ ๋ ธ๋์ ๊ณ์ฐ์ ๊ตญ์์ ๊ณ์ฐ์ด๋ค. ์ฌ๊ณผ์ ๊ทธ ์ธ์ ๋ฌผํ ๊ฐ์ ๋ํ๋ ๊ณ์ฐ์ด ์ด๋ป๊ฒ ๊ณ์ฐ๋์๋๋์๋ ์๊ด ์์ด, ๋จ์ง ๋ ์ซ์๋ฅผ ๋ํ๋ฉด ๋๋ค. ๊ฐ ๋ ธ๋๋ ์์ ๊ณผ ๊ด๋ จํ ๊ณ์ฐ ์ธ์๋ ์๋ฌด๊ฒ๋ ์ ๊ฒฝ ์ธ ํ์๊ฐ ์๋ค.
โจ ๊ณ์ฐ ๊ทธ๋ํ์ ์ฅ์
1. ๊ตญ์์ ๊ณ์ฐ: ์ ์ฒด๊ฐ ์๋ฌด๋ฆฌ ๋ณต์กํด๋ ๊ฐ ๋ ธ๋์์์ ๋จ์ํ ๊ณ์ฐ์ ์ง์คํ์ฌ ๋ฌธ์ ๋ฅผ ๋จ์ํ ๊ฐ๋ฅ
2. ์ค๊ฐ ๊ณ์ฐ ๊ฒฐ๊ณผ๋ฅผ ๋ชจ๋ ๋ณด๊ด ๊ฐ๋ฅ
3. ์ญ์ ํ๋ฅผ ํตํด '๋ฏธ๋ถ'์ ํจ์จ์ ์ผ๋ก ๊ณ์ฐ ๊ฐ๋ฅ
๊ณ์ฐ ๊ทธ๋ํ๋ฅผ ํตํ ์ญ์ ํ ๋ฏธ๋ถ๊ฐ=๊ตญ์์ ๋ฏธ๋ถ์ ์ ๋ฌ
๐ ์ฐ์๋ฒ์น(Chain Rule)
์ญ์ ํ๋ '๊ตญ์์ ์ธ ๋ฏธ๋ถ'์ ์๋ฐฉํฅ๊ณผ๋ ๋ฐ๋์ธ ์ค๋ฅธ์ชฝ์์ ์ผ์ชฝ์ผ๋ก ์ ๋ฌ. ๋ํ ์ด '๊ตญ์์ ๋ฏธ๋ถ'์ ์ ๋ฌํ๋ ์๋ฆฌ๋ "์ฐ์๋ฒ์น"์ ๋ฐ๋ฅธ ๊ฒ.
โจ ๊ณ์ฐ ๊ทธ๋ํ์ ์ญ์ ํ
์๋ฐฉํฅ๊ณผ๋ ๋ฐ๋ ๋ฐฉํฅ์ผ๋ก ๊ตญ์์ ๋ฏธ๋ถ์ ๊ณฑํ๋ค
์์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ญ์ ํ์ ๊ณ์ฐ ์ ์ฐจ๋ ์ ํธ E์ ๊ตญ์์ ๋ฏธ๋ถ์ ๊ณฑํ ํ ๋ค์ ๋ ธ๋๋ก ์ ๋ฌํ๋ ๊ฒ
โจ ํฉ์ฑํจ์
์ฌ๋ฌ ํจ์๋ก ๊ตฌ์ฑ๋ ํจ์
โจ ์ฐ์ ๋ฒ์น๊ณผ ๊ณ์ฐ ๊ทธ๋ํ
โจ ๋ง์ ๋ ธ๋์ ์ญ์ ํ
์์ ์์์ ๊ณ์ฐ์ผ๋ก ๊ฐ๋ ๋ ธ๋๋ x ๊ธฐ์ค์ผ๋ก ํธ๋ฏธ๋ถ ํ๋ฉด y๊ฐ ์ฌ๋ผ์ง๋ฉด์ 1์ด ๋จ๊ฒ๋๋ค. ๋ฐ์ ์์์ ๊ณ์ฐ์ผ๋ก ๊ฐ๋ ๋ ธ๋๋ y๋ฅผ ๊ธฐ์ค์ผ๋ก ํธ๋ฏธ๋ถ์ ํ๋ฏ๋ก x๊ฐ ์ฌ๋ผ์ง๋ฉด์ 1์ด ๋จ๊ฒ๋๋ค. ๋ฐ๋ผ์ + ๋ ธ๋๋ฅผ ๋์์ผ๋ก ํ๋ ์ญ์ ํ๋ ๊ฒฐ๊ณผ์ ์ผ๋ก ์ ๋ ฅ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก ํ๋ ค์ฃผ๊ฒ ๋๋ค.
โจ ๊ณฑ์ ๋ ธ๋์ ์ญ์ ํ
z = x*y์ผ ๊ฒฝ์ฐ
x๋ก ํธ๋ฏธ๋ถ: y
y๋ก ํธ๋ฏธ๋ถ: x
โจ ์ฌ๊ณผ์ ๊ทค ์ผํ์ ์
๐ ํ์ฑํ ํจ์ ๊ณ์ธต ๊ตฌํํ๊ธฐ
๐ ReLU ๊ณ์ธต
0์ดํ์ ๊ฐ์ 0์ผ๋ก ์ถ๋ ฅํ๊ณ , 0 ์ด์์ ์ ๋ ฅ๊ฐ ๊ทธ๋๋ก์ ๊ฐ์ ์ถ๋ ฅ
๐ Affine/Softmax ๊ณ์ธต
โจ Affine ๊ณ์ธต
Affine Transformation: ์ ๊ฒฝ๋ง์ ์์ ํ ๋ ์ํํ๋ ํ๋ ฌ ๋ด์
Affine Layer: ์ดํ์ธ ๋ณํ์ ์ํํ๋ ๊ณ์ธต
โจ Softmax ํจ์
์ ๋ ฅ๊ฐ์ ์ ๊ทํํ์ฌ ์ถ๋ ฅ
๐ ์ ๊ฒฝ๋ง ํ์ต ์ ์ฐจ
โจ 1๋จ๊ณ: ๋ฏธ๋๋ฐฐ์น
ํ๋ จ ๋ฐ์ดํฐ ์ค ์ผ๋ถ๋ฅผ ๋ฌด์์๋ก ๊ฐ์ ธ์ ์ ๋ณํ ๋ฐ์ดํฐ(๋ฏธ๋๋ฐฐ์น)์ ์์คํจ์ ๊ฐ์ ์ค์ด๋ ๊ฒ์ด ๋ชฉํ์
โจ 2๋จ๊ณ: ๊ธฐ์ธ๊ธฐ ์ฐ์ถ
๋ฏธ๋๋ฐฐ์น์ ์์ค ํจ์ ๊ฐ์ ์ค์ด๊ธฐ ์ํด ๊ฐ ๊ฐ์ค์น ๋งค๊ฐ๋ณ์์ ๊ธฐ์ธ๊ธฐ๋ฅผ ๊ตฌํจ
๊ธฐ์ธ๊ธฐ๋ ์์คํจ์์ ๊ฐ์ ๊ฐ์ฅ ์๊ฒ ํ๋ ๋ฐฉํฅ์ผ๋ก ์ ์
โจ 3๋จ๊ณ: ๋งค๊ฐ๋ณ์ ๊ฐฑ์
๊ฐ์ค์น ๋งค๊ฐ๋ณ์๋ฅผ ๊ธฐ์ธ๊ธฐ ๋ฐฉํฅ์ผ๋ก ์กฐ๊ธ์ฉ ๊ฐฑ์
โจ 4๋จ๊ณ: ๋ฐ๋ณต
1~3๋จ๊ณ๋ฅผ ๋ฐ๋ณตํจ
๐ ์ ๋ฆฌ
1. ๊ณ์ฐ ๊ทธ๋ํ๋ฅผ ์ด์ฉํ๋ฉด ๊ณ์ฐ ๊ณผ์ ์ ์๊ฐ์ ์ผ๋ก ํ์ ํ ์ ์๋ค
2. ๊ณ์ฐ ๊ทธ๋ํ์ ๋ ธ๋๋ ๊ตญ์์ ๊ณ์ฐ์ผ๋ก ๊ตฌ์ฑ๋๋ค. ๊ตญ์์ ๊ฒ์ฐ์ ์กฐํฉํ์ฌ ์ ์ฒด ๊ณ์ฐ์ ๊ตฌ์ฑํ๋ค.
3. ๊ณ์ฐ ๊ทธ๋ํ์ ์์ ํ๋ ํต์์ ๊ณ์ฐ์ ์ํํ๋ค. ํํธ, ๊ณ์ฐ ๊ทธ๋ํ์ ์ญ์ ํ๋ ๊ฐ ๋ ธ๋์ ๋ฏธ๋ถ์ ๊ตฌํ ์ ์๋ค.
4. ์ ๊ฒฝ๋ง์ ๊ตฌ์ฑ ์์๋ฅผ ๊ณ์ธต์ผ๋ก ๊ตฌํํ์ฌ ๊ธฐ์ธ๊ธฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ณ์ฐํ ์ ์๋ค.
'๐ปProgramming > AI' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ