1 of 17

캐글 뽀개기

12/ 신경망, Keras

2 of 17

순서

1/ 공지

2/ 신경망 (MLP)

3/ Keras

2

3 of 17

1/ 지난 과제 + 공지

  1. 발표
  2. Zoom 강의 때 프로필 사진 + 배경 사진
  3. 이메일은 강사 + 담당 조교에게 함께
  4. 강의 내용 질문은 GitHub 과목 리포 Issues
  5. 그 밖의 질문은 GitHub 팀 게시판

3

4 of 17

1/ 지난 과제 + 공지

중간고사 팀 코드 10%

중간고사 팀 발표 10%

기말고사 팀 코드 20%

기말고사 팀 발표 20%

대회 성적 30%

출석 10%

4

5 of 17

2/ 신경망

5

6 of 17

2/ 로지스틱회귀 (Logistic Regression)

6

종속변수가 범주형 변수인 경우 (예: 성별, 암 여부)

종속변수와 독립변수의 관계를 선형 수식 + 로지스틱 함수로 표현

손실함수

경사하강법

g

x1

x2

x3

Input layer

Output layer

θ1

θ2

θ3

7 of 17

2/ 신경망 (Neural Networks)

7

입력층과 출력층 사이에 hidden 레이어를 추가

Hidden 레이어는 여러 뉴런 포함

각 뉴런은 이전 레이어의 출력 값에 activation 함수 적용

경사하강법 + chain rule → Backpropagation 으로 학습

많이 사용되는 activation 함수:

h

x1

x2

x3

Input layer

Output layer

g

h

h

h

h

h

Hidden layer

Hidden layer

8 of 17

2/ 신경망 - 특수 레이어

8

Dropout: 학습시 랜덤하게 일정 비율의 뉴론을 drop

Batch/Layer Normalization: 레이어의 입력값을 표준화

Max/Average Pooling: 입력값 중 Max/Average만 선택

Embedding: Label/Ordinal 인코딩된 정수를 실수 벡터로 변환

예) 2 → [0.25, 1], 3 → [0.7, 0.1], …

Convolution: 1D/2D Convolution

Recurrent: LSTM, GRU

h

x1

x2

x3

Input layer

Output layer

g

h

h

h

h

h

Hidden layer

Hidden layer

Dropout layer

9 of 17

3/ Keras

9

10 of 17

3/ Keras

10

주요 오픈소스 신경망 프레임워크 중 하나

구글의 François Chollet이 2015년 발표

Tensorflow/Theano/CNTK/PlaidML의 high-level API 제공

Tensorflow 2.0부터 Tensorflow에 포함

11 of 17

3/ Keras - Sequential API (노트)

11

손쉽게 신경망을 생성할 수 있는 API

입력층에서 출력층까지 차례로 레이어를 추가

12 of 17

3/ Keras - Functional API (노트북)

12

레이어들을 다양하게 조합한 신경망을 생성할 수 있는 API

임의의 레이어의 출력들을 다음 레이어의 입력으로 사용가능

13 of 17

3/ Keras - Callbacks (노트북)

13

EarlyStoping: 검증셋 성능이 향상되지 않으면 학습 중단

ReduceLROnPlateau: 검증셋 성능이 향상되지 않으면 learning rate 감소

LearningRateScheduler: Learning rate을 커스텀하게 변경

ModelCheckpoint: 모델 저장

TensorBoard: 학습 과정 시각화

14 of 17

3/ 참고자료

14

15 of 17

3/ 참고자료

  1. Stanford CS229 Lecture 8: Neural Networks
  2. Deep Learning with Python
  3. Keras 공식 홈페이지 문서 (한글)

15

16 of 17

4/ 과제

16

17 of 17

4/ 과제

  • Tensorflow/Keras 설치
  • 대회 데이터로 신경망 모델 학습

17