< TensorFlow & Keras >
1. 선형 회귀
아이스크림 판매량에 영향을 주는 요소
→ 온도, 습도, 전단지...
식으로 나타낸다면
판매량 = 5*온도 -8*습도 +20*광고횟수+4

2. 로지스틱 회귀
아이스크림 방문 구매여부에 영향을 주는 요소
→ 매장 방문 횟수, 온라인 주문 횟수...
식으로 나타낸다면
방문구매 여부 = 5*매장방문 횟수 -4*온라인주문횟수-10

3. 멀티 클래스 분류
꽃의 종(3종류)을 구분하는 요소
→ Sepal L/W, Petal L/W
가장 확률 높은 클래스를 고르는 것
one-hot encoding / softmax function


| 선형 회귀 | 로지스틱 회귀 | 멀티클래스 분류 | |
| output layer activation |
X(or linear) | sigmoid | softmax |
| loss | mse | binary crossentropy |
categorical crossentropy |
Artificial Neural Network
복습


하든 레이어
: 인풋 레이어와 아웃풋 레이어 사이에 있는 레이어
기존에 없던 새로운 특징을 뽑아내는 것....!




Early Stopping 이란....?
딥러닝을 비롯한 머신러닝 모델의 한 가지 중요한 딜레마
→ 너무 많은 Epoch 은 overfitting 을 일으킨다. 하지만 너무 적은 Epoch 은 underfitting 을 일으킨다.
이런 상황에서 Epoch 을 어떻게 설정해야하는가?
Epoch 을 정하는데 많이 사용되는 Early stopping 은 무조건 Epoch 을 많이 돌린 후, 특정 시점에서 멈추는 것이다.
es = EarlyStopping(monitor='val_loss', mode='min', verbose=1, patience=50, baseline=0.4)
validation set 의 loss 를 monitoring 한다는 뜻
verbose=1 로 지정하면, 언제 keras 에서 training 을 멈추었는지를 화면에 출력할 수 있음
patience 는 성능이 증가하지 않는 epoch 을 몇 번이나 허용할 것인가를 정의 (partience 는 다소 주관적인 기준)
특정값에 도달했을 때, 더 이상 training 이 필요하지 않은 경우 baseline 파라미터를 통해 정의
최종적으로 mode.fit 함수의 callback 으로 early stopping 객체를 넣어주면 early stopping 을 적용할 수 있다.
hist = model.fit(train_x, train_y, nb_epoch=10,
batch_size=10, verbose=2, validation_split=0.2,
callbacks=[early_stopping])


선형 회귀에서 두 방법의 차이점
## Sequential API
# 1. 세션 클리어 : 이전에 사용했던 모델이 있다면 없애줘!
keras.backend.clear_session()
# 2. 모델 발판 생성
model = keras.models.Sequential()
# 3. 모델 레이어 쌓기
model.add( keras.layers.Input(shape=(1,)) )
model.add( keras.layers.Dense(1) )
# 4. 컴파일
model.compile(loss='mse', optimizer='adam')
## Functional API
# 1번 세션 클리어
keras.backend.clear_session()
# 2번 레이어 사슬처럼 엮기
il = keras.layers.Input(shape=(1,))
ol = keras.layers.Dense(1, activation='linear')(il)
# 3번 모델의 시작과 끝 지정!
model = keras.models.Model(il, ol)
# 4번 컴파일
model.compile(loss='mse', optimizer='adam')'AIVLE' 카테고리의 다른 글
| 시각지능 딥러닝 (0) | 2023.03.20 |
|---|---|
| AI모델 해석 (0) | 2023.03.09 |
| 머신 러닝 (1) | 2023.02.28 |
| Web Crwaling ⑥ - selenium (0) | 2023.02.21 |
| Web Crwaling ⑤ - 네이버 연관 검색어 수집 (1) | 2023.02.21 |