Contents
1 - Introduction to Deep Learning
1-1 - What is a Neural Network?
1-2 - Supervised Learning with Neural Networks
1-3 - Why is deep learning taking off?
Neural Network 신경망
은 인간의 뇌와 신경 체계의 수학적 모델을 의미한다.
집값 예측 문제
를 예를 들어보자. 여섯개의 집에 대한 데이터(집의 크기와 가격)을 알고 있을 때, 집의 크기 size of house 에 대해서 집값 price을 예측할 수 있는 함수를 도출하고 싶다.
간단한 신경망으로 생각해보면, 입력값 size of a house 이 neuron
, 노드(a single neuron)로 들어가고 츨력값 주택 가격을 출력한다. 이러한 뉴런들 여러개를 쌓아서 더 큰 신경망 모델을 구현할 수 있다. 더 많은 피쳐를 사용한 신경망 모델은 다음과 같이 나타낼 수 있다. 신경망은 입력와 출력를 매칭해주는 함수를 찾는 과정으로 볼 수 있다.
머신러닝에서 지도학습은 정답 label
이 주어진 데이터를 사용해 학습시키는 방법이다. 앞서 살펴본 주택 가격 예측 예제도 신경망을 사용해 지도학습을 구현할 수 있다. 분야에 따라 적용되는 신경망이 다르고, 데이터의 형태에 따라 모델 구현 방식이 다르다. 예를 들어, 이미지 데이터는 CNN 합성곱 신경망을, 음성 데이터 (1차원의 시계열데이터로 나타나는 시퀀스)는 RNN을 사용한다.
신경망 모델은 컴퓨터가 비구조적 데이터를 잘 학습하도록 발전해왔다.
데이터 양의 증가, 컴퓨터 성능 향상, 알고리즘 개선
으로 성능이 향상되었기 때문에, 딥러닝이 강력한 도구로 부상했다.
데이터 양의 증가
축 : Amount of labeled data
=
훈련 샘플 사이즈가 작을 때, 알고리즘의 상대적 순위가 잘 정의되어 있지 않고, 구현 방법에 따라 성능이 결정된다.
훈련 샘플 사이즈가 아주 클 때는 큰 신경망이 일관되게 다른 방법들을 압도한다.
Sigmoid함수와 ReLU함수
딥러닝은 아이디어를 코드로 구현하고 그 신경망이 얼마나 성능이 좋은 지 실험을 진행하고를 반복하는 것이다.