728x90

[8์ผ์ฐจ]

1. Deep Learning์˜ ๊ตฌ์กฐ ์†Œ๊ฐœ

 * Wn(Weight) : ํšŒ๊ท€ ๋ถ„์„์˜ ํšŒ๊ท€ ๊ณ„์ˆ˜์™€ ๋น„์Šทํ•œ ์—ญํ• ์„ ํ•œ๋‹ค. 

ํšŒ๊ท€ ๋ถ„์„์˜ ๋ชฉ์ ๊ณผ ๋™์ผ ํ•˜๊ฒŒ ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด Output์„ ์ฐพ๋Š” ์‹์„ ๊ตฌํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. 

 

2. ๋‹ค์–‘ํ•œ Optimizer ์†Œ๊ฐœ
* ๊ฒฝ์‚ฌํ•˜๊ฐ•๋ฒ•(Gradient descent) :   

https://www.jeremyjordan.me/nn-learning-rate/


- stochastic gradient descent : ๊ฐ’์„ ํ•˜๋‚˜ํ•˜๋‚˜ ๋„ฃ์–ด ๊ฐฑ์‹ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„์ด ์˜ค๋ž˜๊ฑธ๋ฆฐ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค.

- Batch gradient descent : Training set data์˜ ๊ฐ€์ค‘์น˜ ํ‰๊ท ์„ ์ด์šฉํ•˜์—ฌ ๊ฐฑ์‹   

- Mini Batch : ์ผ๋ถ€ ํ›ˆ๋ จ์ž๋ฃŒ์˜ ๋ฌด์ž‘์œ„ ๋ณต์› ์ถ”์ถœํ•˜์—ฌ Training set data์˜ ๊ฐ€์ค‘์น˜ ํ‰๊ท ์„ ๊ฐฑ์‹ 

3. Learning rate๋ฅผ ์กฐ์ ˆํ•˜๋Š” ๋ฐฉ์‹

ADAM : Momentum๊ณผ RMSProp์˜ ํ˜ผํ•ฉํ˜•์œผ๋กœ์„œ ๊ธฐ์กด ์ง„ํ–‰๋ฐฉํ–ฅ๊ณผ ์ง„ํ–‰ํญ์„ ๋ชจ๋‘ ๋ฐ˜์˜

Momentum : ๊ธฐ์กด ์ง„ํ–‰๋ฐฉํ–ฅ์— ๋Œ€ํ•œ ๊ด€์„ฑ์„ ๊ธฐ์–ตํ•จ์œผ๋กœ์จ SGD์˜ ๋ฐฉ๋ฒ•์˜ ์ง„๋™ํญ์„ ์™„ํ™”

AdaGrad : ๊ธฐ์กด ๊ฐ€์ค‘์น˜ ๋ณ€ํ™”์˜ ์ง„ํ–‰ ํญ์„ ๊ณ ๋ คํ•˜์—ฌ ์ด๋ฅผ ๋ฐ˜์˜ํ•˜์—ฌ ํ•™์Šต๋ฅ ์„ ๋ณ€ํ™”

- RMSProp : AdaGrad์˜ gt๊ฐ€ ๋ฌด์ž‘์ • ์ปค์ง€๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ๊ณ ์•ˆ๋œ ๋ฐฉ๋ฒ•

Image Credit: CS231n  


4. RBM(Restricted Boltzmann Machine)

 ๋ณผ์ธ ๋งŒ์ด ๊ณ ์•ˆํ•œ ๋ชจ๋ธ์— ์ œํ”„๋ฆฌ ํžŒํ„ด์ด ์ œ์•ฝ์„ ๋‘์–ด ์‚ฌ์šฉ์„ ํ•˜๋‹ˆ ๋”ฅ๋Ÿฌ๋‹์˜ ์‹ ๊ฒฝ๋ง ๋ชจ๋ธ๊ณผ ์œ ์‚ฌ์„ฑ์„ ๋ฐœ๊ฒฌํ•˜์—ฌ ์œ„์— ์–ธ๊ธ‰ํ•œ ๊ธฐ์šธ๊ธฐ๊ฐ€ 0์ด ๋˜์–ด ๊ทน์†Œ์ ์„ ์ฐพ์ง€ ๋ชปํ•˜๋Š” ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค(Gradient Vanishing)์„ ํ•ด๊ฒฐ 



- ๊ฐ€์‹œ์ธต๊ณผ ์€๋‹‰์ธต์œผ๋กœ ๊ตฌ์„ฑ๋œ ๋น„์ง€๋„ ํ•™์Šต ์‹ ๊ฒฝ๋ง ๋ชจ๋ธ

- ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ๋“ค์„ ๊ฐ€์žฅ ์ž˜ ์„ค๋ช…ํ•˜๋Š” ํŠน์ • ํŒจํ„ด์„ ๋†’์€ ํ™•๋ฅ ๋กœ ๋ฐœ์ƒ์‹œํ‚จ๋‹ค.

- ๊ธฐ์ค€ MLE(Maximum Liklihood Estimate) ์‚ฌ์šฉ



5. Autoencoder



- ๋น„์ง€๋„ํ•™์Šต์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ถ•์†Œ ์ €์žฅ(encoding)ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•™์Šต

- x - Encoder - z - Decoder - x hat

6. CNN ( Convolution Neural Network)

* ๋น„์ •ํ˜• ๋ฐ์ดํ„ฐ๋ฅผ Input data๋กœ ํ™œ์šฉ ํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ์•ˆ๋œ ๋ฐฉ๋ฒ• ์ด๋ฏธ์ง€์˜ ๊ฐ€์žฅ ์ž๋ฆฌ๋“ค์€ ์ด๋ฏธ์ง€์˜ ํŠน์ง•์œผ๋กœ ๋ณด๊ธฐ ์–ด๋ ต๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋ถ€๋ถ„์„ activation ์ค‘ relu ( if x>0 x else x=0 ) ์—ฐ์‚ฐ์„ ์‚ฌ์šฉํ•ด ํ•„์š”ํ•œ ํŠน์ง•๋“ค๋งŒ์„ ๋ฝ‘๊ณ  filter๋ฅผ ํ†ตํ•ด ๋‹ค์‹œ ํ•œ ๋ฒˆ ํŠน์ง•๋“ค์„ pooling์„ ํ†ตํ•ด ์ถ”์ถœํ•œ๋‹ค. ์ถ”์ถœํ•œ input data๋ฅผ feature map์ด๋ผ ํ•œ๋‹ค. ์ด feature map์„ ๋‹ค์–‘ํ•œ ํ˜•ํƒœ๋กœ ๋ณ€ํ˜•ํ•˜์—ฌ ์›ํ•˜๋Š” ๊ฐ€์ค‘์น˜๋ฅผ ๊ตฌํ•œ๋‹ค. 


- ํŠน์ • ์œ„์น˜์— ์žˆ๋Š” Feature Mapํ™” ์ง„ํ–‰(Encoder)

- Input๊ณผ Filter์˜ ํ•ฉ์„ฑ๊ณฑ ์—ฐ์‚ฐ์„ ํ†ตํ•ด ์ด๋ฏธ์ง€์˜ ํŠน์ง•์„ ์ถ”์ถœ

*Parameter: Filter size(5x5), Filter(128), Padding, Stride

7. RNN (Recurrent Neural Network)

* ์ˆœํ™˜ ์‹ ๊ฒฝ๋ง

* ์ด์ „ step์˜ ๊ฐ€์ค‘์น˜๋ฅผ ํ˜„์žฌ step์˜ ๊ฐ€์ค‘์น˜์— ๋ฐ˜์˜ํ•˜์—ฌ ์ง„ํ–‰ํ•˜๋Š” ๋ชจ๋ธ์ด๋‹ค. 

- ํ˜„์žฌ ๋‹จ๊ณ„์˜ ์ •๋ณด๊ฐ€ ๋‹ค์Œ ๋‹จ๊ณ„์— ์ „๋‹ฌ๋˜์–ด output์— ์˜ํ–ฅ์„ ์ค€๋‹ค๋Š”๊ฒƒ์ด ํ•ต์‹ฌ

8. GNN (Graph Neural Network)

* ๊ทธ๋ž˜ํ”„ ์‹ ๊ฒฝ๋ง ๋ชจ๋ธ๋กœ ๊ฐ ๋…ธ๋“œ๋“ค์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฐ€์ค‘์น˜์— ๋Œ€ํ•œ ๋™ํ˜•์„ ์ฐพ์•„์ฃผ๋Š” ๋ชจ๋ธ



- GCN(Graph Convolution Network) : Graph Convolution Layer

- ๋…ธ๋“œ ๊ฐ„ ๊ด€๊ณ„๋ฅผ ํ†ตํ•ด ์ง€๋„ ํ•™์Šต ์ด์ „์— ๋ผ๋ฒจ๋ง์— ์‚ฌ์šฉ

9. LSTM GRU (Long Short Term Memory / Gated Recurrent Unit)
* LSTM : RNN์—์„œ์˜ ์—ฐ์‚ฐ์„ ์ถ•์†Œ์‹œํ‚ค๊ณ ์ž forget gate ์™€ reset gate๋ฅผ ๋„์ž…
* GRU : RNN์˜ ์žฅ๊ธฐ ์˜์กด์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ํ•™์Šตํ•  ๊ฐ€์ค‘์น˜๊ฐ€ LSTM์— ๋น„ํ•ด ์ ๋‹ค. 

[9์ผ์ฐจ]

1. R studio์— Keras ์„ค์น˜ ๋ฐฉ๋ฒ•
Anaconda ์„ค์น˜ ํ›„ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ • ํ›„ R์—์„œ ํŒจํ‚ค์ง€ ์‹คํ–‰
install.packages("keras")
library(keras)
library(reticulate)
use_python('/home/pc/anaconda3/envs/tf113/bin/python.exe')

library(keras)
model <- keras_model_sequential()

2. ๋ฒ ๋ฅด๋ˆ„์ด ๋ณผ์ธ ๋งŒ ๋จธ์‹  (Restricted Boltzmann Machine Derivations)          
        
- RBM์ด ๊ธฐ์กด์˜ ์ด๋ฏธ์ง€๋ณด๋‹ค ์กฐ๊ธˆ ๋” ํŠน์ง•์„ ์ž˜ ํ‘œํ˜„ ํ•œ๋‹ค.



3. GAN


4. NLP
Count Based Word Representation - WordEmbedding,Word2Vec,fastText - BERT

๋ฐ˜์‘ํ˜•
๋‹คํ–ˆ๋‹ค