반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Tags more
Archives
Today
Total
관리 메뉴

코딩몬

[스마트인재개발원] Keras Iris 분류모델 실습(MLP 실습) 본문

Deep Learning

[스마트인재개발원] Keras Iris 분류모델 실습(MLP 실습)

탄중이 2021. 7. 11. 12:21
반응형

Keras 활용 Iris 분류모델 실습

 

입력 : 4개(꽃잎의 길이, 너비, 꽃받침의 길이, 너비)

출력 : 3개(품종)

Iris data 3개의 품종 출처 : https://morioh.com/p/eafb28ccf4e3

 

<keras 에서 모델 생성 준비>

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, InputLayer 
from tensorflow.keras.optimizers import SGD

- 딥러닝 모델의 기본 뼈대 (Sequential : 순차적인) 뉴런들을 순차적으로 붙임
- 뉴런의 모음(1개의 층을 의미) 많이 붙힐수록 뉴런들의 층이 깊어진다.
- 최적화 도구(SGD : 경사하강법)

 

<1. 모델 구조 쌓기>

model = Sequential() 
model.add(InputLayer(input_shape = 4)) # 입력층
model.add(Dense(8, activation = 'sigmoid'))# 중간층
model.add(Dense(4, activation = 'sigmoid'))# 중간층
model.add(Dense(3, activation = 'softmax')) # 출력층

* 중간층

- 한 층에 몇 개의 퍼셉트론을 연결할 것인가

* 출력층 

- activation 은 이진분류일 경우 sigmoid | 다중분류일 경우 : softmax | 회귀모델일 경우 linearRegressor, 생략

- 선형모델이 3개가 달려있는것(0번품종, 1번품종, 2번품종)

 

<2. 모델 학습 방법 설정>

model.compile(loss = 'categorical_crossentropy', optimizer = 'Adam', metrics = ['accuracy'])

compile(손실함수, 최적화함수, 평가방법)
loss : 손실함수의 종류를 설정

optimizer : w값을 어떻게 변화시켜주어야 할지 정하는 것(Adam은 optimizer계의 라면스프임 엥간한 모델은 살린다)
1. 회귀분석 : mse(mean_squared Error)
2. 이진분류 : binary_crossentropy
3. 다진분류 : categorical_crossentropy(확률을 가지고 계산할 수 있도록 해주는 알고리즘)

 

<3. 모델 학습하기>

y_train_one_hot = pd.get_dummies(y_train)
y_test_one_hot = pd.get_dummies(y_test)
model.fit(X_train, y_train_one_hot, epochs = 500)

원핫인코딩을 해주는 이유 -> 선형분류 모델이기 때문에 확률로 오차계산을 해 주어야 해서 0, 1, 2 의 정답에 대한 부분을 확률정보로 알려주어야하기 때문에

확률정보

y_train_one_hot 을 찍어보면 위 사진과 같이 0,1,2에 대해 원 핫 인코딩이 되어 확률 데이터로 나타낼 수 있도록 해준다.

확률정보 1.0 -> 100%

 

<4. 모델 평가하기>

model.evaluate(X_test, y_test_one_hot)

 

평가결과

학습 파라미터 확인

학습 파라미터를 보면 위의 사진과 같이 결과가 나옴을 알 수 있다.

입력층 파라미터 : 40

중간층 파라미터 : 36

출력층 파라미터 : 15

총 파라미터 : 91개

 

www.smhrd.or.kr

 

스마트인재개발원

4차산업혁명시대를 선도하는 빅데이터, 인공지능, 사물인터넷 전문 '0원' 취업연계교육기관

www.smhrd.or.kr

 

반응형
Comments