์ƒ์„ธ ์ปจํ…์ธ 

๋ณธ๋ฌธ ์ œ๋ชฉ

[Coursera1] Neural-Networks-Deep-Learning : Neural Network - Representation, Vectorization, Activation Function, Gradient Descent, Initialization

๐Ÿ˜Ž ์ง€์‹ in Action/AI (learn, usage)๐Ÿฆพ

by :ํ•ดํ”ผ๋ž˜๋น—๐Ÿพ 2022. 6. 28. 21:55

๋ณธ๋ฌธ

๋™๊ธฐ๋“ค.. Thank you..

[ ํ—ท๊ฐˆ๋ ธ๋˜ ๋ถ€๋ถ„์— ๋Œ€ํ•œ ๋™๊ธฐ์˜ ๋‹ต๋ณ€ ]

๋กœ์ง€์Šคํ‹ฑ์—์„œ์˜ ๊ฐ€์ค‘์น˜ ์‹์€ ๋‰ด๋Ÿด ๋„คํŠธ์›Œํฌ์˜ ๊ฐ€์ค‘์น˜ ์‹์ค‘์— ๊ฐ€์žฅ ์‰ฌ์šด ์‹์ด๋‹ค.

(๊ทธ๋ž˜์„œ NN์„ค๋ช… ์ „์— ๋กœ์ง€์Šคํ‹ฑ ์„ค๋ช…ํ•œ ๊ฑฐ์ž„)

๊ฐ€์ค‘์น˜ ๊ณ„์‚ฐ ๋ฐฉ๋ฒ•์€ ๋น„์Šทํ•œ๋ฐ

1) input ๊ฐœ์ˆ˜

2) activation Function ํ•จ์ˆ˜

3) ์ฐจ์ˆ˜ 

๋“ฑ์— ๋”ฐ๋ผ ๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„ ๋ชจ์–‘์ด ๋‹ฌ๋ผ์ง„๋‹ค.


 

1 layer NN ์„ backwardํ•˜๊ณ ,
1 hidden layer(=2 layer NN)NN ๋„ ๋™์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ backwardํ•ด๋ณด์ž
>> ๋‚˜์ค‘์—๋Š” N Layer (Deep Layer)์— ๋Œ€ํ•ด Backwardํ•  ๊ฒƒ์ด๋‹ค.

Neural Network ์˜ ํ•˜๋‚˜์˜ ๋…ธ๋“œ๋“ค์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.
๋™๊ธฐ๊ฐ€ ๋งํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ์ด๋ฒˆ ์˜ˆ์ œ์—์„œ z๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

์•ž์œผ๋กœ ์˜ˆ์ œ์—์„œ ์‚ฌ์šฉํ•  ํ‘œ๊ธฐ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

๋ ˆ์ด์–ด ๋‚ด์˜ ๋…ธ๋“œ๊ฐ€ ๋‹ค๋ฅธ ๊ฒฝ์šฐ ์ˆ˜์ง์œผ๋กœ ์Œ“๋Š”๋‹ค.
์ด๋ฅผ ๋ˆˆ์œผ๋กœ ํ™•์ธํ•ด๋ณด์ž

1๊ฐœ์˜ ์˜ˆ์ œ๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œํ˜„๋œ๋‹ค.

 

m๊ฐœ์˜ ์˜ˆ์ œ๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด vectorization ํ•˜์ž

 


 

 Activation Function์˜ ์ข…๋ฅ˜์™€ ์„ ํƒ

 

activation function ์— sigmoid ๋ง๊ณ  ๋‹ค๋ฅธ ๊ฒƒ๋“ค์ด ์žˆ๋Š”๊ฐ€?
: yes!

ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋Š” layer๋งˆ๋‹ค ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค.
๋‹ค๋ฅธ activation function๊ณผ ๊ทธ๊ฒƒ๋“ค์˜ ๋„ํ•จ์ˆ˜

1) (ํŠน์ˆ˜๊ฒฝ์šฐ๋ฅผ ์ œ์™ธํ•˜๊ณ ) sigmoid ๋ณด๋‹ค tanh๋ฅผ ์„ ํƒํ•˜์ž

hidden layer์—์„œ activatin Function์œผ๋กœ tanh๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

-1์™€ 1 ์‚ฌ์ด์˜ ๊ฐ’์œผ๋กœ activation ํ‰๊ท ์€ 0์— ๊ฐ€๊น๊ธฐ์— ๋‹ค์Œ layer ํ•™์Šต์— ํšจ๊ณผ์ ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

! ํŠน์ˆ˜ ๊ฒฝ์šฐ) Output layer์˜ ๊ฒฐ๊ณผ๊ฐ’์ด 0๋˜๋Š”1์ด ๋‚˜์˜ค๋Š” ์ด์ง„๋ถ„๋ฅ˜ ๋ฌธ์ œ์ด๋ฉด, 0<=yhat<=1์ด ํšจ๊ณผ์ ์ด๋‹ค. 

์ด์ง„ ๋ถ„๋ฅ˜ ๋ฌธ์ œ ์กฐ์ฐจ๋„  output Layer์—๋งŒ sigmoid๋ฅผ ์‚ฌ์šฉํ•˜์ž.

 

(์ฃผ์˜) Sigmoid, tanh ๋ชจ๋‘ Z๊ฐ€ ๋„ˆ๋ฌด ํฌ๊ฑฐ๋‚˜ ์ž‘์œผ๋ฉด, Activation Function์˜ ๋„ํ•จ์ˆ˜์˜ ๊ธฐ์šธ๊ธฐ๊ฐ€ ๋งค์šฐ ์ž‘์•„์ง„๋‹ค.

์ด๋Ÿฐ ๊ฒฝ์šฐ์—, w์™€ b๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜๋Š” ์†๋„(=ํ•™์Šต ์†๋„)๊ฐ€ ๋งค์šฐ ๋А๋ ค์ง„๋‹ค.

 

2) ์™ ๋งŒํ•œ hidden layer์˜ Activation Function์€ Relu๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค

Relu ํ•จ์ˆ˜์˜ ๊ฒฝ์šฐ z๊ฐ€ 0์ผ ๋•Œ, ๋„ํ•จ์ˆ˜๋Š” ์ •์˜๋˜์ง€ ์•Š์ง€๋งŒ, z๊ฐ€ 0์ด ๋  ํ™•๋ฅ ์€ ๋‚ฎ๋‹ค (๋Œ€๋ถ€๋ถ„์˜ hidden layer์—์„œ z๋Š” ์–‘์ˆ˜)

 

Relu์™€ Leaky Reluํ•จ์ˆ˜๋Š” Sigmoid, tanh์™€ ๋‹ค๋ฅด๊ฒŒ,

ํ•ด๋‹น ํ•จ์ˆ˜์˜ ๋„ํ•จ์ˆ˜์˜ ๊ธฐ์šธ๊ธฐ๊ฐ€ ๋งŽ์€ Z์— ๋Œ€ํ•ด 0์ด ์•„๋‹ˆ๋‹ค. (ํ•™์Šต์ด ๋А๋ ค์งˆ ํ™•๋ฅ  ์ ์Œ!)

 


Non- Linearํ•œ Activation Function์ด ํ•„์š”ํ•œ ์ด์œ 

 


Gradient descent for Neural Network


Neural Network์—์„œ๋Š” 0์ด ์•„๋‹Œ ๊ฐ’์œผ๋กœ Random ํ•˜๊ฒŒ initializationํ•ด์•ผ ํ•œ๋‹ค.
np.random.randn((2,2)) * 0.01  

๊ฐ€์ค‘์น˜๋ฅผ ์ž‘๊ฒŒ ์„ค์ •ํ•˜๋Š” ๊ฒŒ ์ค‘์š”ํ•œ ์ด์œ 

 


 

์ตœ๊ทผ ๋ฉ˜ํƒˆ ์™€๋ฅด๋ฅด๋ฅด ๋ฌด๋„ˆ์กŒ์—ˆ๋Š”๋ฐ, ๋‚˜๋ณด๋‹ค ๋‚˜๋ฅผ ๋” ๋ฏฟ์–ด์ฃผ๋Š” ์‚ฌ๋žŒ๋“ค

 

728x90

๊ด€๋ จ๊ธ€ ๋”๋ณด๊ธฐ