코딩하는 애옹😸

[딥러닝] 딥러닝(Deep Learning)의 기본 개념 본문

Programming/Deep Learning

[딥러닝] 딥러닝(Deep Learning)의 기본 개념

DevYe 2020. 2. 23. 02:39
728x90
딥러닝 이론

 

1. 딥러닝

 딥러닝(Deep Learning)은 인공신경망(Artificial Neural Neteork)의 한계를 극복하기 위해 제안된 기계학습 방법이다. 인공신경망은 생물학의 신경망(뉴런)에서 영감을 받아 모델링한 것이며, 시냅스의 결합으로 네트워크를 형성한 인공 뉴런이 학습을 통해 시냅스의 결합 세기를 변화시켜, 문제 해결 능력을 가지는 모델 전반을 가리킨다.

 

 


2. 딥러닝 모델

 대표적인 딥러닝 모델은 CNN과 RNN이 있다. 구체적인 개념은 다음 포스트에서 설명하고, 간단하게 설명하겠다.

 

2.1 CNN(Convolution Neural Networks)

 CNN(Convolution Neural Networks)은 주로 이미지를 인식할 때 사용된다. 이동이나 회전 등으로 왜곡된 이미지를 정확하게 인식하기 위해 ConvolutionPooling 과정을 반복하여 적용한 후, 이미지의 정보를 얻는다.

 

참고 1

Convolution은 합성곱이라는 의미로 여러 가지 필터(filter)를 이용하여 이미지의 특징을 추출한다.

Pooling은 픽셀 패치를 단일 값으로 매핑하여 이미지의 크기를 줄인다.

 

 

2.2 RNN(Recurrent Neural Networks)

 RNN(Recurrent Neural Networks)은 순차적인(Sequential) 정보인 음성과 단어를 인식할 때 사용된다. 구조를 살펴보면 이전의 값(s)에 따라 결과를 다르게 출력한다. 이는 문맥(Context)에 따라 단어를 다르게 처리하고, 이전의 단어들을 이용해 다음에 나올 단어를 추측 가능하게 한다.

 

참고 2

RNN은 자연어처리 문제에 효과적이기 때문에 언어 모델링 텍스트 생성, 자동 번역 부분에서 사용되고 있다.

 

 

 

이렇게 딥러닝에 대한 간단한 개념과 대표적인 모델인 CNN, RNN에 대해 가볍게 알아봤습니다.

앞으로는 더 구체적인 개념들과 간단한 예제를 구현해 볼 예정입니다.

감사합니다 :)

 

 

참고 1 - http://taewan.kim/post/cnn/ 

참고 2 - http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/

'Programming > Deep Learning' 카테고리의 다른 글

[Streamlit] 0. 시작하기  (0) 2022.04.20
Comments