본문 바로가기

Deep Learning/Tensorflow

Tensorflow - 분류의 문제 모델링 하는 방법

반응형
분류의 문제 모델링 하는 방법

 

 

import tensorflow as tf
from tensorflow import keras
from keras.models import Sequential
from keras.layers import Dense

model = Sequential()
# input layer는 X_train의 컬럼의 갯수가 들어가야한다. 히든레이어
model.add( Dense( units = 6 , activation='relu', input_shape= (11,)) )
# 히든레이어
model.add(Dense(units=8, activation=tf.nn.relu))
# 아웃풋레이어
model.add(Dense(units=1, activation='sigmoid'))
model.compile( optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
model.summary()

 

 

# 이 데이터의 정확도는 학습데이터의 정확도 정말 중요한 데이터는 test데이터
model.fit(X_train, y_train, epochs = 20, batch_size = 10)

 

# 검증 라이브러리 (모델 평가)
model.evaluate(X_test, y_test)

 

# 컨퓨전 매트릭스 확인

from sklearn.metrics import confusion_matrix, accuracy_score

y_pred = model.predict(X_test)
y_pred

 

X_test

 

y_test

 

y_pred = ( y_pred > 0.5 ). astype(int)
y_pred

 

# 파라미터 첫번째는 실제값, 두번째는 예측값
cm = confusion_matrix(y_test, y_pred)
cm

 

(1553+130) / cm.sum()

 

 

accuracy_score(y_test, y_pred)

 

 

반응형