이 포스팅은 edwith의 딥러닝 1단계 : 신경망과 딥러닝을 듣고 공부 목적으로 작성되었습니다.
이 강의는 4주 차 기준으로 되어있어 한 주차에 해당하는 내용을 기준으로 포스팅을 하려고 하고, 이번 포스팅은 1주 차에 해당하는 내용이다.
Deep Learning은 어디에 사용되는가?
- 웹 검색/ 인터넷 광고
- 새로운 종류의 산업 상품 개발
- x-ray/ 헬스 케어
- 개인 맞춤 교육
- 정교한 농업 기술
그렇다면 Deep Learning 이란 무엇인가?
"AI is the new Electricity." - Andrew Ng
100여 년 전부터 우리 사회에서 전기화는 많은 산업에 변화를 이끌어 왔다. 오늘날에는 인공지능이 그에 버금가는 큰 변화를 보여주고 있다. 딥러닝도 AI의 일부이며, 이제는 과학기술사회에서 가장 필요한 능력이다.
딥러닝의 의미 1. 신경망( Neural Network) 학습시키기
의미 2. 아주 큰 신경망
Neural Network 신경망이란 무엇인가?

input을 가지고 output을 도출해내는 그 무언가가 neuron이다.
위의 그림은 하나의 싱글 뉴런이다.
Neural Network이란?

size/ #bedrooms/ zip code/ wealth => Input
Price => Output
Hidden Unit은 신경망의 은닉 유닛이다.
은닉 유닛과 인풋은 중앙에 있는 원 모두에 연결되어있기 때문에 조밀하게 연결되어 있다.
( x , y )가 충분한 양으로 많아진다면 이 신경망의 적중률도 높아질 것이다.
X와 Y를 매칭 하는 데에 신경망은 지도 학습에서 가장 실용적이며 효과적이다.
Supervised Learning 이란 무엇인가?
: Input X와 Output Y를 mapping 되는 함수를 학습시키려고 한다.
즉, x에 대한 답 y가 정해져 있는 것을 학습시키기 위함이다.

이미지 같은 경우, 합성곱 뉴럴 넷( Convolutional NN=CNN)
오디오나 언어 같은 시간 또는 흐름이 중요한 경우, 시퀀스 데이터를 활용한 Recurrent NN = RNN
레이더의 경우, 이미지와는 구조가 조금 다르기 때문에 Customal/ Hybrid NN을 사용한다.
신경망을 통한 많은 값들의 생성은
어떤 문제를 해결하기 위한 적절한 x와 y를 통해 이루어지고
자율주행 같은 더 큰 시스템에 지도 학습 요소들을 적합하게 한다.
DATA의 종류 - Structured Data & Unstructrued Data
Structured Data Unstructrued Data


- 기본적으로 데이터베이스로 표현된 데이터 - 인식하고자 하는 이미지 / 오디오 / 텍스트 데이터
- 신경망에서 발생하는 경제적인 이익이 많이 나옴 - 비구조적 데이터는 컴퓨터가 작업하기 어렵습니다.
※ 인류는 음성이나 이미지, 비교적 최근 발명품인 text도 잘 이해하도록 진화되어왔습니다.
그래도 "신경망" 덕분에 컴퓨터들이 비구조적 데이터들을 해석하는데 많은 발전을 했습니다!!
왜 최근에서야 딥러닝이 뜨고 있을까???

performance : 알고리즘 학습의 성능
Amount of data : m이라고 표기할 것이며, 실은 x , y 가 짝지어져 있는 labeled data이다.
그래프 해석
1. data가 클 때 큰 신경망이 일관되게 다른 방법을 압도하는 경향을 보인다.
가장 큰 large NN이 data가 커질수록 다른 신경망을 압도하는데,
large NN 이란?
충분히 큰 데이터를 소화시킬 수 있을 만하게 큰 신경망 규모이며, 충분히 큰 데이터를 가져야 한다.
신경망의 규모란?
신경망의 크기/ 은닉 유닛/ 많은 연결/ 많은 parameter/ 데이터의 규모 등을 일컫는다.
2. Small training sets 구간에서, 알고리즘의 상대적 순위가 잘 정의되어 있지 않다.
알고리즘 특성을 다루는 실력 또는 알고리즘의 작은 부분이 성능을 크게 좌우한다.
그렇다면, 왜 최근에서야 딥러닝이 뜨고 있을까???
- 디지털 기기에서 많은 활동 : 사람들이 디지털 디바이스를 통해 많은 활동을 하면서 많은 양의 데이터가 모였다.
- 가속도계, IOT 센서등의 성능 향상
- 데이터를 모으려는 노력
- 초창기 딥러닝 문제에 대한 해결
위의 3가지는 결국 충분한 양의 데이터를 확보했기 때문에,
보다 복잡하고 큰 신경망 구조들이 빛을 발하기 시작했다는 것이다.
초창기 딥러닝 문제를 조금 더 알아보자.
- DATA
- Computation의 규모
- Algorithms

Sigmoid 와 ReLU
시그모이드는 양 쪽 끝으로 갈수록 함수의 경사가 거의 0이 됨.
=> 경사가 0일때, 경사하강법을 사용하면 파라메터가
아주 천천히 바뀌어서 학습이 굉장히 느림.
ReLU는 경사가 0에 수렴할 가능성이 매우 적음
=> 경사하강법을 매우 빠르게 함.
알고리즘의 혁신
=> 계산능력 크게 향상!!
=> 더 큰 신경망을 훈련시키더나 많은 데이터를 가진 신경망을 적당한 시간내에 처리

The process of training a neural network is iterative.
아이디어를 찾고, 코드로 구현하고, 그 것에 대한 경험을 하며 장단점을 분석하여 다시 아이디어를 찾는 과정이 무한정으로 반복된다.
계산 능력 및 속도가 알고리즘 or 하드웨어의 발전을 인해 짧아질 수 있다.
1주기 돌 때, 짧은 시간에 도는 것을 하는것이 매우 효율적이겠죠??
종합하자면, 알고리즘의 혁신, 하드웨어의 발전, 충분히 많은 데이터들이
딥러닝을 최근에서야 뜨게 만들었다.
이상으로, 1주 차 강의였습니다.
Keyword
Deep Learning/ Neural Network/ Supervised Learning/ Structured Data/ Unstructured Data/ 딥러닝이 뜬 이유
ps. 수업을 정말 간결하고 알아듣기 편하게 직관적으로 설명을 해주신다. 코세라 강의를 번역한 거기 때문에 강의의 질에 대해서는 따로 말 안 해도 알 거라고 생각한다.
'Deep Learning' 카테고리의 다른 글
[Deep Learning] 입력값의 정규화 : Improving Deep NN (0) | 2020.02.05 |
---|