안녕하세요, HELLO
오늘은 DeepLearning.AI에서 진행하는 Andrew Ng 교수님의 딥러닝 전문화의 첫 번째 과정인 "Neural Networks and Deep Learning"을 정리하려고 합니다. "Neural Networks and Deep Learning"의 강의 목적은 '딥러닝의 기능, 과제 및 결과 이해'를 통해 '머신 러닝을 업무에 적용하고, 기술 수준을 높이고, AI 분야에서 단계를 밟을 수 있는 지식과 기술을 얻을 수 있는 경로'를 배우기 위함이며, 강의는 아래와 같이 구성되어 있습니다.
~ Introduction
~ Basics of Neural Network programming
~ One hidden layer Neural Networks
~ Deep Neural Networks
"Neural Networks and Deep Learning" (Andrew Ng)의 1주차 "Introduction"의 강의 내용입니다.
CHAPTER 1. 'What is a neural network?'
CHAPTER 2. 'Supervised Learning with Neural Network'
CHAPTER 3. 'What is Deep Learning taking off?'
CHAPTER 1. 'What is a neural network?'
□ Neural Network(신경망)
신경망(Neural Network)은 생물학 모델을 바탕으로한 컴퓨팅의 한 형태로서, layer를 바탕으로 많은 수의 처리 요소로 구성된 수학 모델로 정의됩니다. 간단히 정리하면, 신경망은 입력(x)과 출력(y)을 연결해주는 함수를 찾는 과정입니다. 충분한 데이터가 주어지면, 함수를 더 잘 알아낼 수 있습니다.
CHAPTER 2. 'Supervised Learning with Neural Network'
지도학습(supervised learning)은 정답이 주어져있는 데이터를 사용하여 컴퓨터를 학습시키는 방법입니다. 신경망을 적용하여 지도학습을 진행할 수 있으며, 분야에 따라 적용되는 알고리즘이 다릅니다. 예를 들어, 가격 예측을 위한 Standard Neural Network, 이미지 분류를 위해 Convolutional neural network(CNN), 순서를 가지는 시퀀스 데이터(sequence data)를 바탕한 음성을 텍스트로 변환하기 위해 Recurrental neural network(RNN) 등이 있습니다.
구조적(Structed data) 및 비구조적 데이터(Unstructed data)를 신경망을 사용하여 예측할 수 있습니다.
구조적 데이터는 데이터베이스로 표현된 데이터를 의미합니다. 구조화된 형태로 정보의 특성이 잘 정의되어 있습니다. 반면에 비구조적 데이터는 이미지, 오디오와 같이 특징적인 값을 추출하기 어려운 형태의 데이터입니다. 딥러닝 덕분에 컴퓨터가 비구조적 데이터를 인식할 수 있게 되었습니다.
CHAPTER 3. 'What is Deep Learning taking off?'
IoT, CPU, GPU 등의 발전을 바탕으로 데이터의 양이 증가하게 되었습니다. 증가한 데이터를 학습하게 됨으로써 딥러닝이 부상하게 되었습니다. 정리하면 딥러닝 성능은 scale의 증가에 따라 향상되었습니다.
- 데이터 양 증가
- 컴퓨터 성능 향상
- 알고리즘의 개선
알고리즘의 경우, 시그모이드(sigmoid) 함수에서 ReLU(Rectified Linear Unit) 함수로 발전이 대표적입니다. 시그모이드 함수는 값이 어느정도 작으면 0으로 수렴하고 어느정도 크면 1로 수렴합니다. 함수 값이 0에서 1사이의 값을 가지기에, 신경망 학습동안 계속 0.~값이 나오게 됩니다. 위 값이 계속 곱해져 나가며 편미분한 기울기(gradient, 각 지점에서 함수의 값이 낮아지는 방향)가 사라지는 vanishing gradient 문제가 발생하게 되며, 결론적으로 학습이 되지 않습니다.
이를 해결한 함수가 ReLU 함수입니다. 생각보다 간단하며, 0보다 작은 값이 나오면 0 값을 가지며, 그렇지 않으면 그 값을 그대로 가져가도록 하는 것입니다.
■ 마무리
'Neural Networks and Deep Learning'의 1주차 "Introduction"에 대해서 정리해봤습니다.
그럼 오늘 하루도 즐거운 나날 되길 기도하겠습니다
좋아요와 댓글 부탁드립니다 :)
감사합니다.
'COURSERA' 카테고리의 다른 글
week 2_벡터화(Vectorization) (Andrew Ng) (0) | 2022.02.07 |
---|---|
week 2_신경망으로서의 로지스틱 회귀 (Andrew Ng) (0) | 2022.02.03 |
[COURSERA] Neural Networks and Deep Learning (Andrew Ng) (0) | 2022.01.27 |
[COURSERA] Data Science Math Skills 자격증 취득 (0) | 2022.01.21 |
week 4_Bayes' Theorem (Probability theory, including Bayes’ theorem) (0) | 2022.01.21 |
댓글