Beginning of DeepLearning

Tensorflow란?

- 머신러닝을 위한 오픈소스 플랫폼 - 딥러닝 프레임워크
- 구글이 주도적으로 개발 - 구글 코랩에는 기본 장착
- 텐서플로우 의미
- Keras라고 하는 고수준 API를 병합
- Tensor : 벡터나 행렬을 의미
- Graph : 텐서가 흐르는 경로(혹은 공간)
- Tensor Flow : 텐서가 Graph를 통해 흐른다~
딥러닝의 기초 feat. Keras
신경망에서 아이디어를 얻어서 시작된 Neural Net

뉴런

- 뉴런은 입력, 가중치, 활성화함수, 출력으로 구성
- 뉴런에서 학습할 때 변하는 것은 가중치. 처음에는 초기화를 통해 랜덤값을 넣고,
학습과정에서 일정한 값으로 수렴
레이어와 망(net)

딥러닝

데이터 하나 무작정 읽어보자

현재 간단한 딥러닝의 목표

먼저 모델을 주어진 데이터로 얻는 것

모델을 구한 후에는?

현재 우리의 목표

학습 대상 데이터를 추리고 모델 구현 & summary

loss

optimizer

모델 구성 완료

다음은?

Fit

loss가 잘 떨어진다

predict 해볼까?

사용법은 sklearn과 비슷하다

가중치와 bias를 알고 싶다면

모델이 잘 만들어졌는지 확인

XOR 문제
XOR

선형 모델로는 XOR를 풀 수가 없다

간단한 데이터 준비

위 모델은 어떻게 생겼을까

model.compile & summary
- 옵티마이저를 선정하고, 학습률을 선정한다.
- loss 함수는 mse로 한다 mean squared error

학습
- epochs는 지정된 횟수만큼 학습을 하는 것
- batch_size는 한번의 학습에 사용될 데이터의 수를 지정

학습 결과

loss 상황

학습에서 찾은 가중치

이번에는 분류
iris 데이터

One hot encoding

sklearn의 one hot encoding

데이터 나누고

난 망(net)을 이렇게 구성하기로 했다

이렇게 코드 작성

activation

역전파 back-propagation

역전파에서는 sigmoid가 문제가 있다

gradient vanishing

ReLU의 등장

softmax?

완성된 모델

gradient decent는 배웠다

복습

SGD

GD vs SGD

옵티마이저의 선택

옵티마이저 계보

데이터가 복잡할 때는?

summary 결과

학습

test 데이터에 대한 accuracy

loss와 acc의 변화
