activation_layer
make_activation_layer
ํจ์ ์ด๋ฆ: make_activation_layer
์ ๋ ฅ:
batch: ๋ฐฐ์น ํฌ๊ธฐ
inputs: ์ ๋ ฅ์ ํฌ๊ธฐ
activation: ํ์ฑํ ํจ์
๋์: ์
์ ๋ ฅ๊ฐ์ ๋ฐ์ ํ์ฑํ ํจ์๋ฅผ ์ ์ฉํ ์ถ๋ ฅ๊ฐ์ ๋ฐํํ๋ ๋ ์ด์ด๋ฅผ ์์ฑํ๋ค.
์ค๋ช :
layer ๊ตฌ์กฐ์ฒด๋ฅผ ์ด๊ธฐํํ๊ณ , ํ๋์ ์ ๋ ฅ๊ฐ์ ์ค์ ํ๋ค.
์ถ๋ ฅ๊ฐ๊ณผ delta๋ฅผ ์ ์ฅํ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๋์ ์ผ๋ก ํ ๋นํ๋ค.
forward_activation_layer ๋ฐ backward_activation_layer ํจ์๋ฅผ ์ค์ ํ๋ค.
activation ํจ์๋ฅผ ์ค์ ํ๊ณ , ์ด๊ธฐํ๋ layer ๊ตฌ์กฐ์ฒด๋ฅผ ๋ฐํํ๋ค.
ํ์ฑํ ๋ ์ด์ด๊ฐ ์์ฑ๋ ๋, ์ ๋ ฅ๊ฐ์ ํฌ๊ธฐ(inputs)์ ํ์ฑํ ํจ์์ ์ข ๋ฅ๋ฅผ ์ถ๋ ฅํ๋ค.
forward_activation_layer
ํจ์ ์ด๋ฆ: forward_activation_layer
์ ๋ ฅ:
l: layer ๊ตฌ์กฐ์ฒด
net: network ๊ตฌ์กฐ์ฒด
๋์:
ํ์ฌ ์ธต(layer)์ ์ถ๋ ฅ ๊ฐ์ ๋คํธ์ํฌ(network)์ ์ ๋ ฅ ๊ฐ์ผ๋ก ๋ณต์ฌํ ๋ค, ํ์ฑํ ํจ์(activation function)๋ฅผ ์ด์ฉํด ์ถ๋ ฅ ๊ฐ์ ๋ณ๊ฒฝ
์ค๋ช :
๋ฅ๋ฌ๋ ์ ๊ฒฝ๋ง์ ์์ ํ(forward propagation) ๊ณผ์ ์ค, ํ์ฌ ์ธต์ ์ถ๋ ฅ ๊ฐ์ ๋ค์ ์ธต์ ์ ๋ ฅ ๊ฐ์ผ๋ก ์ ๋ฌํ๊ธฐ ์ ์ ํ์ฑํ ํจ์๋ฅผ ์ ์ฉํด ์ถ๋ ฅ ๊ฐ์ ๋ณ๊ฒฝํ๋ ํจ์์ ๋๋ค.
๋จผ์ , l.outputs*l.batch ํฌ๊ธฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ net.input์์ l.output์ผ๋ก ๋ณต์ฌํฉ๋๋ค.
์ดํ, l.activation์ผ๋ก ์ง์ ๋ ํ์ฑํ ํจ์๋ฅผ l.output์ ์ ์ฉํด ์ถ๋ ฅ ๊ฐ์ ๋ณ๊ฒฝํฉ๋๋ค.
backward_activation_layer
ํจ์ ์ด๋ฆ: backward_activation_layer
์ ๋ ฅ:
layer l: ์ญ์ ํ๋ฅผ ์ํํ activation layer
network net: ์ญ์ ํ์ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ ๋คํธ์ํฌ
๋์:
l.output์ gradient๋ฅผ l.delta๋ก ๊ณ์ฐ
l.delta๋ฅผ net.delta๋ก ๋ณต์ฌ
์ค๋ช :
Activation layer์์๋ ์ ๋ ฅ๊ฐ์ ํ์ฑํ ํจ์๋ฅผ ํตํด ๋ณํํ ๋ค ์ถ๋ ฅ๊ฐ์ ๊ณ์ฐํ๊ฒ ๋ฉ๋๋ค.
์ด๋, ์ญ์ ํ๋ฅผ ์ํํ๊ธฐ ์ํด์๋ ์ถ๋ ฅ๊ฐ์ ๋ํ gradient๋ฅผ ๊ณ์ฐํด์ผ ํฉ๋๋ค.
backward_activation_layer ํจ์๋ l.output์ ๋ํ gradient๋ฅผ l.activation ํจ์๋ฅผ ์ด์ฉํ์ฌ ๊ณ์ฐํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ l.delta์ ์ ์ฅํฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก, l.delta๋ฅผ ๋คํธ์ํฌ์ ์ ์ฒด delta๊ฐ์ธ net.delta๋ก ๋ณต์ฌํฉ๋๋ค.
Last updated
Was this helpful?