728x90
반응형
In [129]:
import tensorflow as tf
from tensorflow import keras
from sklearn.model_selection import train_test_split
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
from sklearn.preprocessing import StandardScaler
from tensorflow.keras.losses import BinaryCrossentropy
"""평가"""
from sklearn.metrics import accuracy_score
from sklearn.metrics import precision_score
from sklearn.metrics import recall_score
from sklearn.metrics import f1_score
"""오차행렬(혼동행렬)"""
from sklearn.metrics import confusion_matrix
from sklearn.metrics import ConfusionMatrixDisplay
In [130]:
"""
- 입력계층의 출력크기 64
- 은닉계층의 크기 32
- 나머지는?
- 정밀도, 재현율, f1-score, confusion_martix 출력
"""
### 실행 결과를 동일하게 하기 위한 처리(완전 동일하지 않을 수도 있음)
tf.keras.utils.set_random_seed(42)
### 연산 고정
tf.config.experimental.enable_op_determinism()
In [131]:
data = pd.read_csv("./data/08_wine.csv")
data["class"].unique()
Out[131]:
array([0., 1.])
In [132]:
X= data.iloc[:,:-1]
y= data.iloc[:,-1]
In [133]:
ss = StandardScaler()
ss.fit(X)
X_scaled= ss.transform(X)
X_scaled.shape, y.shape
Out[133]:
((6497, 3), (6497,))
In [134]:
"""
- 먼저 훈련 : (검증+테스트) 으로 나누기
- 분류 기준 : 6 : 4
"""
X_train, X_temp, y_train, y_temp = train_test_split(X_scaled, y,
test_size=0.4,
random_state=42)
print(f"{X_train.shape} : {y_train.shape}")
print(f"{X_temp.shape} : {y_temp.shape}")
(3898, 3) : (3898,) (2599, 3) : (2599,)
In [135]:
"""
- 검증 : 테스트 데이터로 분류하기
- 분류 기준 : 5 : 5
"""
X_val, X_test, y_val, y_test = train_test_split(X_temp, y_temp,
test_size=0.5,
random_state=42)
print(f"{X_train.shape} : {y_train.shape}")
print(f"{X_val.shape} : {y_val.shape}")
print(f"{X_test.shape} : {y_test.shape}")
(3898, 3) : (3898,) (1299, 3) : (1299,) (1300, 3) : (1300,)
In [136]:
def model_c():
model = keras.Sequential()
model.add(keras.layers.Dense(64, activation="sigmoid", input_shape=(3,)))
model.add(keras.layers.Dense(32, activation="sigmoid"))
# model.add(keras.layers.Dropout(0.3))
model.add(keras.layers.Dense(1, activation="sigmoid"))
return model
In [ ]:
In [137]:
optimizers=["SGD", "Adagrad", "RMSProp", "Adam"]
for opt in optimizers:
model=model_c()
model.compile(optimizer=opt, loss="binary_crossentropy", metrics="accuracy")
checkpoint_cb = keras.callbacks.ModelCheckpoint(f"./model/best_model{opt}.h5", save_best_only=True )
early_stopping_cb = keras.callbacks.EarlyStopping( patience=5, restore_best_weights=True)
model.fit(X_train,y_train, epochs=50, validation_data=(X_val, y_val), callbacks=[checkpoint_cb,early_stopping_cb])
Epoch 1/50 122/122 [==============================] - 0s 2ms/step - loss: 0.5982 - accuracy: 0.6993 - val_loss: 0.5663 - val_accuracy: 0.7475 Epoch 2/50 122/122 [==============================] - 0s 917us/step - loss: 0.5476 - accuracy: 0.7637 - val_loss: 0.5655 - val_accuracy: 0.7475 Epoch 3/50 122/122 [==============================] - 0s 918us/step - loss: 0.5459 - accuracy: 0.7637 - val_loss: 0.5638 - val_accuracy: 0.7475 Epoch 4/50 122/122 [==============================] - 0s 936us/step - loss: 0.5443 - accuracy: 0.7637 - val_loss: 0.5618 - val_accuracy: 0.7475 Epoch 5/50 122/122 [==============================] - 0s 949us/step - loss: 0.5429 - accuracy: 0.7637 - val_loss: 0.5606 - val_accuracy: 0.7475 Epoch 6/50 122/122 [==============================] - 0s 899us/step - loss: 0.5415 - accuracy: 0.7637 - val_loss: 0.5599 - val_accuracy: 0.7475 Epoch 7/50 122/122 [==============================] - 0s 892us/step - loss: 0.5401 - accuracy: 0.7637 - val_loss: 0.5575 - val_accuracy: 0.7475 Epoch 8/50 122/122 [==============================] - 0s 942us/step - loss: 0.5385 - accuracy: 0.7637 - val_loss: 0.5569 - val_accuracy: 0.7475 Epoch 9/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5368 - accuracy: 0.7637 - val_loss: 0.5561 - val_accuracy: 0.7475 Epoch 10/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5356 - accuracy: 0.7637 - val_loss: 0.5527 - val_accuracy: 0.7475 Epoch 11/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5339 - accuracy: 0.7637 - val_loss: 0.5523 - val_accuracy: 0.7475 Epoch 12/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5325 - accuracy: 0.7637 - val_loss: 0.5494 - val_accuracy: 0.7475 Epoch 13/50 122/122 [==============================] - 0s 996us/step - loss: 0.5309 - accuracy: 0.7637 - val_loss: 0.5483 - val_accuracy: 0.7475 Epoch 14/50 122/122 [==============================] - 0s 979us/step - loss: 0.5293 - accuracy: 0.7637 - val_loss: 0.5457 - val_accuracy: 0.7475 Epoch 15/50 122/122 [==============================] - 0s 901us/step - loss: 0.5275 - accuracy: 0.7637 - val_loss: 0.5442 - val_accuracy: 0.7475 Epoch 16/50 122/122 [==============================] - 0s 911us/step - loss: 0.5257 - accuracy: 0.7637 - val_loss: 0.5423 - val_accuracy: 0.7475 Epoch 17/50 122/122 [==============================] - 0s 993us/step - loss: 0.5239 - accuracy: 0.7637 - val_loss: 0.5401 - val_accuracy: 0.7475 Epoch 18/50 122/122 [==============================] - 0s 951us/step - loss: 0.5220 - accuracy: 0.7637 - val_loss: 0.5384 - val_accuracy: 0.7475 Epoch 19/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5201 - accuracy: 0.7637 - val_loss: 0.5362 - val_accuracy: 0.7475 Epoch 20/50 122/122 [==============================] - 0s 989us/step - loss: 0.5178 - accuracy: 0.7637 - val_loss: 0.5354 - val_accuracy: 0.7475 Epoch 21/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5161 - accuracy: 0.7637 - val_loss: 0.5318 - val_accuracy: 0.7475 Epoch 22/50 122/122 [==============================] - 0s 917us/step - loss: 0.5137 - accuracy: 0.7637 - val_loss: 0.5306 - val_accuracy: 0.7475 Epoch 23/50 122/122 [==============================] - 0s 901us/step - loss: 0.5116 - accuracy: 0.7637 - val_loss: 0.5276 - val_accuracy: 0.7475 Epoch 24/50 122/122 [==============================] - 0s 966us/step - loss: 0.5095 - accuracy: 0.7637 - val_loss: 0.5249 - val_accuracy: 0.7475 Epoch 25/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5070 - accuracy: 0.7637 - val_loss: 0.5221 - val_accuracy: 0.7475 Epoch 26/50 122/122 [==============================] - 0s 988us/step - loss: 0.5046 - accuracy: 0.7637 - val_loss: 0.5192 - val_accuracy: 0.7475 Epoch 27/50 122/122 [==============================] - 0s 953us/step - loss: 0.5023 - accuracy: 0.7637 - val_loss: 0.5165 - val_accuracy: 0.7475 Epoch 28/50 122/122 [==============================] - 0s 949us/step - loss: 0.4997 - accuracy: 0.7637 - val_loss: 0.5144 - val_accuracy: 0.7475 Epoch 29/50 122/122 [==============================] - 0s 988us/step - loss: 0.4970 - accuracy: 0.7637 - val_loss: 0.5117 - val_accuracy: 0.7475 Epoch 30/50 122/122 [==============================] - 0s 937us/step - loss: 0.4944 - accuracy: 0.7637 - val_loss: 0.5082 - val_accuracy: 0.7475 Epoch 31/50 122/122 [==============================] - 0s 938us/step - loss: 0.4919 - accuracy: 0.7637 - val_loss: 0.5053 - val_accuracy: 0.7475 Epoch 32/50 122/122 [==============================] - 0s 990us/step - loss: 0.4892 - accuracy: 0.7637 - val_loss: 0.5026 - val_accuracy: 0.7475 Epoch 33/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4864 - accuracy: 0.7637 - val_loss: 0.4994 - val_accuracy: 0.7475 Epoch 34/50 122/122 [==============================] - 0s 1000us/step - loss: 0.4836 - accuracy: 0.7640 - val_loss: 0.4964 - val_accuracy: 0.7475 Epoch 35/50 122/122 [==============================] - 0s 999us/step - loss: 0.4808 - accuracy: 0.7640 - val_loss: 0.4934 - val_accuracy: 0.7475 Epoch 36/50 122/122 [==============================] - 0s 978us/step - loss: 0.4781 - accuracy: 0.7635 - val_loss: 0.4906 - val_accuracy: 0.7475 Epoch 37/50 122/122 [==============================] - 0s 969us/step - loss: 0.4753 - accuracy: 0.7624 - val_loss: 0.4888 - val_accuracy: 0.7475 Epoch 38/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4726 - accuracy: 0.7622 - val_loss: 0.4857 - val_accuracy: 0.7475 Epoch 39/50 122/122 [==============================] - 0s 997us/step - loss: 0.4695 - accuracy: 0.7630 - val_loss: 0.4815 - val_accuracy: 0.7490 Epoch 40/50 122/122 [==============================] - 0s 992us/step - loss: 0.4674 - accuracy: 0.7630 - val_loss: 0.4790 - val_accuracy: 0.7490 Epoch 41/50 122/122 [==============================] - 0s 950us/step - loss: 0.4646 - accuracy: 0.7617 - val_loss: 0.4765 - val_accuracy: 0.7490 Epoch 42/50 122/122 [==============================] - 0s 967us/step - loss: 0.4620 - accuracy: 0.7630 - val_loss: 0.4734 - val_accuracy: 0.7498 Epoch 43/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4595 - accuracy: 0.7642 - val_loss: 0.4711 - val_accuracy: 0.7506 Epoch 44/50 122/122 [==============================] - 0s 965us/step - loss: 0.4572 - accuracy: 0.7640 - val_loss: 0.4679 - val_accuracy: 0.7521 Epoch 45/50 122/122 [==============================] - 0s 976us/step - loss: 0.4546 - accuracy: 0.7653 - val_loss: 0.4669 - val_accuracy: 0.7498 Epoch 46/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4526 - accuracy: 0.7640 - val_loss: 0.4632 - val_accuracy: 0.7544 Epoch 47/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4500 - accuracy: 0.7676 - val_loss: 0.4622 - val_accuracy: 0.7521 Epoch 48/50 122/122 [==============================] - 0s 939us/step - loss: 0.4484 - accuracy: 0.7668 - val_loss: 0.4590 - val_accuracy: 0.7567 Epoch 49/50 122/122 [==============================] - 0s 973us/step - loss: 0.4461 - accuracy: 0.7689 - val_loss: 0.4559 - val_accuracy: 0.7652 Epoch 50/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4443 - accuracy: 0.7689 - val_loss: 0.4544 - val_accuracy: 0.7629 Epoch 1/50 122/122 [==============================] - 0s 2ms/step - loss: 0.6309 - accuracy: 0.7635 - val_loss: 0.6091 - val_accuracy: 0.7475 Epoch 2/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5874 - accuracy: 0.7637 - val_loss: 0.5864 - val_accuracy: 0.7475 Epoch 3/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5692 - accuracy: 0.7637 - val_loss: 0.5760 - val_accuracy: 0.7475 Epoch 4/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5598 - accuracy: 0.7637 - val_loss: 0.5706 - val_accuracy: 0.7475 Epoch 5/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5545 - accuracy: 0.7637 - val_loss: 0.5677 - val_accuracy: 0.7475 Epoch 6/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5514 - accuracy: 0.7637 - val_loss: 0.5661 - val_accuracy: 0.7475 Epoch 7/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5494 - accuracy: 0.7637 - val_loss: 0.5651 - val_accuracy: 0.7475 Epoch 8/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5481 - accuracy: 0.7637 - val_loss: 0.5646 - val_accuracy: 0.7475 Epoch 9/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5471 - accuracy: 0.7637 - val_loss: 0.5642 - val_accuracy: 0.7475 Epoch 10/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5465 - accuracy: 0.7637 - val_loss: 0.5639 - val_accuracy: 0.7475 Epoch 11/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5460 - accuracy: 0.7637 - val_loss: 0.5636 - val_accuracy: 0.7475 Epoch 12/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5455 - accuracy: 0.7637 - val_loss: 0.5634 - val_accuracy: 0.7475 Epoch 13/50 122/122 [==============================] - 0s 919us/step - loss: 0.5452 - accuracy: 0.7637 - val_loss: 0.5632 - val_accuracy: 0.7475 Epoch 14/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5448 - accuracy: 0.7637 - val_loss: 0.5630 - val_accuracy: 0.7475 Epoch 15/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5445 - accuracy: 0.7637 - val_loss: 0.5627 - val_accuracy: 0.7475 Epoch 16/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5442 - accuracy: 0.7637 - val_loss: 0.5625 - val_accuracy: 0.7475 Epoch 17/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5439 - accuracy: 0.7637 - val_loss: 0.5622 - val_accuracy: 0.7475 Epoch 18/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5436 - accuracy: 0.7637 - val_loss: 0.5620 - val_accuracy: 0.7475 Epoch 19/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5433 - accuracy: 0.7637 - val_loss: 0.5618 - val_accuracy: 0.7475 Epoch 20/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5431 - accuracy: 0.7637 - val_loss: 0.5615 - val_accuracy: 0.7475 Epoch 21/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5428 - accuracy: 0.7637 - val_loss: 0.5612 - val_accuracy: 0.7475 Epoch 22/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5425 - accuracy: 0.7637 - val_loss: 0.5610 - val_accuracy: 0.7475 Epoch 23/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5423 - accuracy: 0.7637 - val_loss: 0.5607 - val_accuracy: 0.7475 Epoch 24/50 122/122 [==============================] - 0s 978us/step - loss: 0.5420 - accuracy: 0.7637 - val_loss: 0.5605 - val_accuracy: 0.7475 Epoch 25/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5417 - accuracy: 0.7637 - val_loss: 0.5602 - val_accuracy: 0.7475 Epoch 26/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5415 - accuracy: 0.7637 - val_loss: 0.5599 - val_accuracy: 0.7475 Epoch 27/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5412 - accuracy: 0.7637 - val_loss: 0.5597 - val_accuracy: 0.7475 Epoch 28/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5409 - accuracy: 0.7637 - val_loss: 0.5594 - val_accuracy: 0.7475 Epoch 29/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5407 - accuracy: 0.7637 - val_loss: 0.5591 - val_accuracy: 0.7475 Epoch 30/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5404 - accuracy: 0.7637 - val_loss: 0.5589 - val_accuracy: 0.7475 Epoch 31/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5402 - accuracy: 0.7637 - val_loss: 0.5586 - val_accuracy: 0.7475 Epoch 32/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5399 - accuracy: 0.7637 - val_loss: 0.5583 - val_accuracy: 0.7475 Epoch 33/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5397 - accuracy: 0.7637 - val_loss: 0.5581 - val_accuracy: 0.7475 Epoch 34/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5394 - accuracy: 0.7637 - val_loss: 0.5578 - val_accuracy: 0.7475 Epoch 35/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5392 - accuracy: 0.7637 - val_loss: 0.5575 - val_accuracy: 0.7475 Epoch 36/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5389 - accuracy: 0.7637 - val_loss: 0.5572 - val_accuracy: 0.7475 Epoch 37/50 122/122 [==============================] - 0s 991us/step - loss: 0.5387 - accuracy: 0.7637 - val_loss: 0.5570 - val_accuracy: 0.7475 Epoch 38/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5384 - accuracy: 0.7637 - val_loss: 0.5567 - val_accuracy: 0.7475 Epoch 39/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5381 - accuracy: 0.7637 - val_loss: 0.5565 - val_accuracy: 0.7475 Epoch 40/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5379 - accuracy: 0.7637 - val_loss: 0.5562 - val_accuracy: 0.7475 Epoch 41/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5376 - accuracy: 0.7637 - val_loss: 0.5559 - val_accuracy: 0.7475 Epoch 42/50 122/122 [==============================] - 0s 905us/step - loss: 0.5374 - accuracy: 0.7637 - val_loss: 0.5557 - val_accuracy: 0.7475 Epoch 43/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5372 - accuracy: 0.7637 - val_loss: 0.5554 - val_accuracy: 0.7475 Epoch 44/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5369 - accuracy: 0.7637 - val_loss: 0.5552 - val_accuracy: 0.7475 Epoch 45/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5367 - accuracy: 0.7637 - val_loss: 0.5549 - val_accuracy: 0.7475 Epoch 46/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5364 - accuracy: 0.7637 - val_loss: 0.5546 - val_accuracy: 0.7475 Epoch 47/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5362 - accuracy: 0.7637 - val_loss: 0.5544 - val_accuracy: 0.7475 Epoch 48/50 122/122 [==============================] - 0s 919us/step - loss: 0.5359 - accuracy: 0.7637 - val_loss: 0.5541 - val_accuracy: 0.7475 Epoch 49/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5357 - accuracy: 0.7637 - val_loss: 0.5539 - val_accuracy: 0.7475 Epoch 50/50 122/122 [==============================] - 0s 1ms/step - loss: 0.5354 - accuracy: 0.7637 - val_loss: 0.5536 - val_accuracy: 0.7475 Epoch 1/50 122/122 [==============================] - 1s 2ms/step - loss: 0.5211 - accuracy: 0.7637 - val_loss: 0.5085 - val_accuracy: 0.7475 Epoch 2/50 122/122 [==============================] - 0s 991us/step - loss: 0.4701 - accuracy: 0.7650 - val_loss: 0.4605 - val_accuracy: 0.7513 Epoch 3/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4341 - accuracy: 0.7745 - val_loss: 0.4293 - val_accuracy: 0.7775 Epoch 4/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4202 - accuracy: 0.7889 - val_loss: 0.4206 - val_accuracy: 0.7821 Epoch 5/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4154 - accuracy: 0.7912 - val_loss: 0.4167 - val_accuracy: 0.7798 Epoch 6/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4133 - accuracy: 0.7917 - val_loss: 0.4150 - val_accuracy: 0.7760 Epoch 7/50 122/122 [==============================] - 0s 988us/step - loss: 0.4127 - accuracy: 0.7922 - val_loss: 0.4145 - val_accuracy: 0.7783 Epoch 8/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4115 - accuracy: 0.7932 - val_loss: 0.4196 - val_accuracy: 0.7768 Epoch 9/50 122/122 [==============================] - 0s 899us/step - loss: 0.4116 - accuracy: 0.7881 - val_loss: 0.4150 - val_accuracy: 0.7752 Epoch 10/50 122/122 [==============================] - 0s 1000us/step - loss: 0.4115 - accuracy: 0.7922 - val_loss: 0.4136 - val_accuracy: 0.7798 Epoch 11/50 122/122 [==============================] - 0s 966us/step - loss: 0.4114 - accuracy: 0.7871 - val_loss: 0.4210 - val_accuracy: 0.7729 Epoch 12/50 122/122 [==============================] - 0s 948us/step - loss: 0.4111 - accuracy: 0.7884 - val_loss: 0.4137 - val_accuracy: 0.7775 Epoch 13/50 122/122 [==============================] - 0s 971us/step - loss: 0.4113 - accuracy: 0.7907 - val_loss: 0.4132 - val_accuracy: 0.7768 Epoch 14/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4103 - accuracy: 0.7925 - val_loss: 0.4127 - val_accuracy: 0.7744 Epoch 15/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4095 - accuracy: 0.7889 - val_loss: 0.4122 - val_accuracy: 0.7821 Epoch 16/50 122/122 [==============================] - 0s 912us/step - loss: 0.4101 - accuracy: 0.7912 - val_loss: 0.4133 - val_accuracy: 0.7752 Epoch 17/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4099 - accuracy: 0.7909 - val_loss: 0.4119 - val_accuracy: 0.7760 Epoch 18/50 122/122 [==============================] - 0s 932us/step - loss: 0.4094 - accuracy: 0.7909 - val_loss: 0.4133 - val_accuracy: 0.7744 Epoch 19/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4092 - accuracy: 0.7904 - val_loss: 0.4116 - val_accuracy: 0.7791 Epoch 20/50 122/122 [==============================] - 0s 914us/step - loss: 0.4087 - accuracy: 0.7894 - val_loss: 0.4239 - val_accuracy: 0.7752 Epoch 21/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4091 - accuracy: 0.7891 - val_loss: 0.4113 - val_accuracy: 0.7783 Epoch 22/50 122/122 [==============================] - 0s 874us/step - loss: 0.4080 - accuracy: 0.7930 - val_loss: 0.4196 - val_accuracy: 0.7737 Epoch 23/50 122/122 [==============================] - 0s 923us/step - loss: 0.4080 - accuracy: 0.7935 - val_loss: 0.4140 - val_accuracy: 0.7760 Epoch 24/50 122/122 [==============================] - 0s 932us/step - loss: 0.4088 - accuracy: 0.7922 - val_loss: 0.4113 - val_accuracy: 0.7760 Epoch 25/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4074 - accuracy: 0.7901 - val_loss: 0.4109 - val_accuracy: 0.7768 Epoch 26/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4073 - accuracy: 0.7899 - val_loss: 0.4105 - val_accuracy: 0.7791 Epoch 27/50 122/122 [==============================] - 0s 897us/step - loss: 0.4073 - accuracy: 0.7937 - val_loss: 0.4133 - val_accuracy: 0.7768 Epoch 28/50 122/122 [==============================] - 0s 932us/step - loss: 0.4072 - accuracy: 0.7914 - val_loss: 0.4131 - val_accuracy: 0.7768 Epoch 29/50 122/122 [==============================] - 0s 947us/step - loss: 0.4054 - accuracy: 0.7958 - val_loss: 0.4121 - val_accuracy: 0.7760 Epoch 30/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4065 - accuracy: 0.7912 - val_loss: 0.4101 - val_accuracy: 0.7768 Epoch 31/50 122/122 [==============================] - 0s 931us/step - loss: 0.4062 - accuracy: 0.7901 - val_loss: 0.4107 - val_accuracy: 0.7821 Epoch 32/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4062 - accuracy: 0.7945 - val_loss: 0.4095 - val_accuracy: 0.7775 Epoch 33/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4059 - accuracy: 0.7968 - val_loss: 0.4094 - val_accuracy: 0.7844 Epoch 34/50 122/122 [==============================] - 0s 941us/step - loss: 0.4049 - accuracy: 0.7932 - val_loss: 0.4097 - val_accuracy: 0.7844 Epoch 35/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4049 - accuracy: 0.7958 - val_loss: 0.4088 - val_accuracy: 0.7783 Epoch 36/50 122/122 [==============================] - 0s 925us/step - loss: 0.4046 - accuracy: 0.7943 - val_loss: 0.4098 - val_accuracy: 0.7760 Epoch 37/50 122/122 [==============================] - 0s 949us/step - loss: 0.4039 - accuracy: 0.7937 - val_loss: 0.4160 - val_accuracy: 0.7798 Epoch 38/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4029 - accuracy: 0.7932 - val_loss: 0.4079 - val_accuracy: 0.7814 Epoch 39/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4012 - accuracy: 0.7966 - val_loss: 0.4077 - val_accuracy: 0.7898 Epoch 40/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4022 - accuracy: 0.7950 - val_loss: 0.4069 - val_accuracy: 0.7821 Epoch 41/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4010 - accuracy: 0.7981 - val_loss: 0.4068 - val_accuracy: 0.7783 Epoch 42/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3995 - accuracy: 0.7953 - val_loss: 0.4054 - val_accuracy: 0.7898 Epoch 43/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3990 - accuracy: 0.7960 - val_loss: 0.4048 - val_accuracy: 0.7814 Epoch 44/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3981 - accuracy: 0.7948 - val_loss: 0.4026 - val_accuracy: 0.7929 Epoch 45/50 122/122 [==============================] - 0s 928us/step - loss: 0.3963 - accuracy: 0.8002 - val_loss: 0.4096 - val_accuracy: 0.7798 Epoch 46/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3959 - accuracy: 0.7984 - val_loss: 0.4002 - val_accuracy: 0.7960 Epoch 47/50 122/122 [==============================] - 0s 962us/step - loss: 0.3932 - accuracy: 0.8086 - val_loss: 0.4032 - val_accuracy: 0.7868 Epoch 48/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3933 - accuracy: 0.8045 - val_loss: 0.3975 - val_accuracy: 0.7991 Epoch 49/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3915 - accuracy: 0.8063 - val_loss: 0.3962 - val_accuracy: 0.7945 Epoch 50/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3900 - accuracy: 0.8071 - val_loss: 0.3943 - val_accuracy: 0.7968 Epoch 1/50 122/122 [==============================] - 0s 2ms/step - loss: 0.5659 - accuracy: 0.7147 - val_loss: 0.5325 - val_accuracy: 0.7475 Epoch 2/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4970 - accuracy: 0.7630 - val_loss: 0.4907 - val_accuracy: 0.7475 Epoch 3/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4569 - accuracy: 0.7683 - val_loss: 0.4492 - val_accuracy: 0.7683 Epoch 4/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4318 - accuracy: 0.7819 - val_loss: 0.4300 - val_accuracy: 0.7821 Epoch 5/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4210 - accuracy: 0.7850 - val_loss: 0.4223 - val_accuracy: 0.7844 Epoch 6/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4179 - accuracy: 0.7943 - val_loss: 0.4202 - val_accuracy: 0.7775 Epoch 7/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4147 - accuracy: 0.7917 - val_loss: 0.4175 - val_accuracy: 0.7829 Epoch 8/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4139 - accuracy: 0.7927 - val_loss: 0.4197 - val_accuracy: 0.7744 Epoch 9/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4129 - accuracy: 0.7896 - val_loss: 0.4227 - val_accuracy: 0.7744 Epoch 10/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4119 - accuracy: 0.7901 - val_loss: 0.4154 - val_accuracy: 0.7814 Epoch 11/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4116 - accuracy: 0.7896 - val_loss: 0.4185 - val_accuracy: 0.7760 Epoch 12/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4119 - accuracy: 0.7914 - val_loss: 0.4140 - val_accuracy: 0.7806 Epoch 13/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4113 - accuracy: 0.7904 - val_loss: 0.4168 - val_accuracy: 0.7744 Epoch 14/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4117 - accuracy: 0.7914 - val_loss: 0.4148 - val_accuracy: 0.7760 Epoch 15/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4119 - accuracy: 0.7901 - val_loss: 0.4130 - val_accuracy: 0.7798 Epoch 16/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4106 - accuracy: 0.7904 - val_loss: 0.4140 - val_accuracy: 0.7775 Epoch 17/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4102 - accuracy: 0.7914 - val_loss: 0.4128 - val_accuracy: 0.7806 Epoch 18/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4105 - accuracy: 0.7914 - val_loss: 0.4138 - val_accuracy: 0.7775 Epoch 19/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4096 - accuracy: 0.7904 - val_loss: 0.4125 - val_accuracy: 0.7744 Epoch 20/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4082 - accuracy: 0.7943 - val_loss: 0.4160 - val_accuracy: 0.7752 Epoch 21/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4090 - accuracy: 0.7932 - val_loss: 0.4117 - val_accuracy: 0.7768 Epoch 22/50 122/122 [==============================] - 0s 968us/step - loss: 0.4069 - accuracy: 0.7945 - val_loss: 0.4187 - val_accuracy: 0.7737 Epoch 23/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4093 - accuracy: 0.7912 - val_loss: 0.4120 - val_accuracy: 0.7791 Epoch 24/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4081 - accuracy: 0.7940 - val_loss: 0.4114 - val_accuracy: 0.7760 Epoch 25/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4082 - accuracy: 0.7886 - val_loss: 0.4112 - val_accuracy: 0.7752 Epoch 26/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4081 - accuracy: 0.7925 - val_loss: 0.4116 - val_accuracy: 0.7814 Epoch 27/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4078 - accuracy: 0.7901 - val_loss: 0.4106 - val_accuracy: 0.7768 Epoch 28/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4068 - accuracy: 0.7917 - val_loss: 0.4103 - val_accuracy: 0.7760 Epoch 29/50 122/122 [==============================] - 0s 970us/step - loss: 0.4077 - accuracy: 0.7889 - val_loss: 0.4114 - val_accuracy: 0.7783 Epoch 30/50 122/122 [==============================] - 0s 974us/step - loss: 0.4064 - accuracy: 0.7899 - val_loss: 0.4104 - val_accuracy: 0.7806 Epoch 31/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4067 - accuracy: 0.7881 - val_loss: 0.4099 - val_accuracy: 0.7829 Epoch 32/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4055 - accuracy: 0.7945 - val_loss: 0.4098 - val_accuracy: 0.7791 Epoch 33/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4052 - accuracy: 0.7943 - val_loss: 0.4094 - val_accuracy: 0.7860 Epoch 34/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4049 - accuracy: 0.7909 - val_loss: 0.4087 - val_accuracy: 0.7829 Epoch 35/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4047 - accuracy: 0.7958 - val_loss: 0.4088 - val_accuracy: 0.7860 Epoch 36/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4039 - accuracy: 0.7932 - val_loss: 0.4086 - val_accuracy: 0.7775 Epoch 37/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4032 - accuracy: 0.7968 - val_loss: 0.4115 - val_accuracy: 0.7768 Epoch 38/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4036 - accuracy: 0.7937 - val_loss: 0.4075 - val_accuracy: 0.7806 Epoch 39/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4018 - accuracy: 0.7953 - val_loss: 0.4074 - val_accuracy: 0.7821 Epoch 40/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4023 - accuracy: 0.7971 - val_loss: 0.4066 - val_accuracy: 0.7798 Epoch 41/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4010 - accuracy: 0.7966 - val_loss: 0.4093 - val_accuracy: 0.7798 Epoch 42/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4009 - accuracy: 0.7950 - val_loss: 0.4057 - val_accuracy: 0.7860 Epoch 43/50 122/122 [==============================] - 0s 1ms/step - loss: 0.4005 - accuracy: 0.7945 - val_loss: 0.4060 - val_accuracy: 0.7821 Epoch 44/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3994 - accuracy: 0.7958 - val_loss: 0.4042 - val_accuracy: 0.7898 Epoch 45/50 122/122 [==============================] - 0s 973us/step - loss: 0.3982 - accuracy: 0.8014 - val_loss: 0.4054 - val_accuracy: 0.7814 Epoch 46/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3978 - accuracy: 0.8017 - val_loss: 0.4024 - val_accuracy: 0.7875 Epoch 47/50 122/122 [==============================] - 0s 977us/step - loss: 0.3962 - accuracy: 0.8035 - val_loss: 0.4050 - val_accuracy: 0.7814 Epoch 48/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3955 - accuracy: 0.7989 - val_loss: 0.4011 - val_accuracy: 0.7914 Epoch 49/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3944 - accuracy: 0.8025 - val_loss: 0.3999 - val_accuracy: 0.7952 Epoch 50/50 122/122 [==============================] - 0s 1ms/step - loss: 0.3933 - accuracy: 0.8022 - val_loss: 0.3994 - val_accuracy: 0.7906
In [138]:
for opt in optimizers:
print(f"--------------------{opt}------------------------")
model_f = keras.models.load_model(f"./model/best_model{opt}.h5")
print(model_f.evaluate(X_val, y_val))
--------------------SGD------------------------ 41/41 [==============================] - 0s 588us/step - loss: 0.4544 - accuracy: 0.7629 [0.4544166028499603, 0.7628945112228394] --------------------Adagrad------------------------ 41/41 [==============================] - 0s 573us/step - loss: 0.5536 - accuracy: 0.7475 [0.5536171793937683, 0.747498095035553] --------------------RMSProp------------------------ 41/41 [==============================] - 0s 708us/step - loss: 0.3943 - accuracy: 0.7968 [0.39430439472198486, 0.7967667579650879] --------------------Adam------------------------ 41/41 [==============================] - 0s 740us/step - loss: 0.3994 - accuracy: 0.7906 [0.3994200825691223, 0.7906081676483154]
In [143]:
y_test = [int(x) for x in y_test]
In [145]:
model=model_c()
model.compile(optimizer="RMSProp", loss="binary_crossentropy", metrics="accuracy")
# checkpoint_cb = keras.callbacks.ModelCheckpoint(f"./model/best_modelRMSProp.h5", save_best_only=True )
# early_stopping_cb = keras.callbacks.EarlyStopping( patience=5, restore_best_weights=True)
# model.fit(X_train,y_train, epochs=200, validation_data=(X_val, y_val), callbacks=[checkpoint_cb,early_stopping_cb])
model.fit(X_train,y_train, epochs=200, validation_data=(X_val, y_val))
test_pred = model.predict(X_test)
test_pred = [0 if i <= 0.5 else 1 for i in test_pred]
"""최적의 모델을 이용해서 """
"""확인을 하기 위해서 예측 정확도확인"""
# train_pred = model.predict(X_train)
# val_pred = model.predict(X_val)
# train_acc =accuracy_score(y_train,train_pred)
# val_acc =accuracy_score(y_val,val_pred)
"""정확도"""
test_acc = accuracy_score(y_test,test_pred)
"""정밀도"""
prdcision = precision_score(y_test,test_pred)
"""재현율"""
recall = recall_score(y_test,test_pred)
"""F1-score"""
f1 = f1_score(y_test,test_pred)
"""오차행렬(혼동행렬)"""
cm = confusion_matrix(y_test, test_pred)
Epoch 1/200 122/122 [==============================] - 0s 1ms/step - loss: 0.5167 - accuracy: 0.7637 - val_loss: 0.4984 - val_accuracy: 0.7475 Epoch 2/200 122/122 [==============================] - 0s 917us/step - loss: 0.4620 - accuracy: 0.7648 - val_loss: 0.4536 - val_accuracy: 0.7544 Epoch 3/200 122/122 [==============================] - 0s 907us/step - loss: 0.4303 - accuracy: 0.7786 - val_loss: 0.4267 - val_accuracy: 0.7791 Epoch 4/200 122/122 [==============================] - 0s 902us/step - loss: 0.4192 - accuracy: 0.7884 - val_loss: 0.4198 - val_accuracy: 0.7791 Epoch 5/200 122/122 [==============================] - 0s 851us/step - loss: 0.4152 - accuracy: 0.7912 - val_loss: 0.4166 - val_accuracy: 0.7798 Epoch 6/200 122/122 [==============================] - 0s 926us/step - loss: 0.4134 - accuracy: 0.7927 - val_loss: 0.4151 - val_accuracy: 0.7760 Epoch 7/200 122/122 [==============================] - 0s 918us/step - loss: 0.4129 - accuracy: 0.7914 - val_loss: 0.4146 - val_accuracy: 0.7775 Epoch 8/200 122/122 [==============================] - 0s 875us/step - loss: 0.4117 - accuracy: 0.7932 - val_loss: 0.4200 - val_accuracy: 0.7760 Epoch 9/200 122/122 [==============================] - 0s 898us/step - loss: 0.4119 - accuracy: 0.7876 - val_loss: 0.4151 - val_accuracy: 0.7768 Epoch 10/200 122/122 [==============================] - 0s 880us/step - loss: 0.4117 - accuracy: 0.7917 - val_loss: 0.4137 - val_accuracy: 0.7806 Epoch 11/200 122/122 [==============================] - 0s 920us/step - loss: 0.4116 - accuracy: 0.7863 - val_loss: 0.4212 - val_accuracy: 0.7737 Epoch 12/200 122/122 [==============================] - 0s 901us/step - loss: 0.4112 - accuracy: 0.7878 - val_loss: 0.4139 - val_accuracy: 0.7775 Epoch 13/200 122/122 [==============================] - 0s 893us/step - loss: 0.4114 - accuracy: 0.7912 - val_loss: 0.4132 - val_accuracy: 0.7768 Epoch 14/200 122/122 [==============================] - 0s 903us/step - loss: 0.4104 - accuracy: 0.7932 - val_loss: 0.4127 - val_accuracy: 0.7744 Epoch 15/200 122/122 [==============================] - 0s 888us/step - loss: 0.4095 - accuracy: 0.7889 - val_loss: 0.4122 - val_accuracy: 0.7821 Epoch 16/200 122/122 [==============================] - 0s 882us/step - loss: 0.4101 - accuracy: 0.7914 - val_loss: 0.4133 - val_accuracy: 0.7768 Epoch 17/200 122/122 [==============================] - 0s 907us/step - loss: 0.4100 - accuracy: 0.7912 - val_loss: 0.4119 - val_accuracy: 0.7768 Epoch 18/200 122/122 [==============================] - 0s 943us/step - loss: 0.4094 - accuracy: 0.7912 - val_loss: 0.4133 - val_accuracy: 0.7744 Epoch 19/200 122/122 [==============================] - 0s 798us/step - loss: 0.4092 - accuracy: 0.7912 - val_loss: 0.4115 - val_accuracy: 0.7791 Epoch 20/200 122/122 [==============================] - 0s 788us/step - loss: 0.4087 - accuracy: 0.7896 - val_loss: 0.4240 - val_accuracy: 0.7752 Epoch 21/200 122/122 [==============================] - 0s 936us/step - loss: 0.4091 - accuracy: 0.7894 - val_loss: 0.4112 - val_accuracy: 0.7806 Epoch 22/200 122/122 [==============================] - 0s 933us/step - loss: 0.4080 - accuracy: 0.7937 - val_loss: 0.4197 - val_accuracy: 0.7744 Epoch 23/200 122/122 [==============================] - 0s 899us/step - loss: 0.4080 - accuracy: 0.7935 - val_loss: 0.4139 - val_accuracy: 0.7768 Epoch 24/200 122/122 [==============================] - 0s 896us/step - loss: 0.4088 - accuracy: 0.7930 - val_loss: 0.4112 - val_accuracy: 0.7752 Epoch 25/200 122/122 [==============================] - 0s 903us/step - loss: 0.4074 - accuracy: 0.7904 - val_loss: 0.4108 - val_accuracy: 0.7775 Epoch 26/200 122/122 [==============================] - 0s 892us/step - loss: 0.4074 - accuracy: 0.7899 - val_loss: 0.4105 - val_accuracy: 0.7798 Epoch 27/200 122/122 [==============================] - 0s 920us/step - loss: 0.4073 - accuracy: 0.7937 - val_loss: 0.4132 - val_accuracy: 0.7768 Epoch 28/200 122/122 [==============================] - 0s 905us/step - loss: 0.4072 - accuracy: 0.7912 - val_loss: 0.4130 - val_accuracy: 0.7768 Epoch 29/200 122/122 [==============================] - 0s 890us/step - loss: 0.4054 - accuracy: 0.7945 - val_loss: 0.4120 - val_accuracy: 0.7760 Epoch 30/200 122/122 [==============================] - 0s 900us/step - loss: 0.4065 - accuracy: 0.7914 - val_loss: 0.4101 - val_accuracy: 0.7775 Epoch 31/200 122/122 [==============================] - 0s 939us/step - loss: 0.4062 - accuracy: 0.7904 - val_loss: 0.4107 - val_accuracy: 0.7821 Epoch 32/200 122/122 [==============================] - 0s 942us/step - loss: 0.4062 - accuracy: 0.7945 - val_loss: 0.4095 - val_accuracy: 0.7775 Epoch 33/200 122/122 [==============================] - 0s 809us/step - loss: 0.4060 - accuracy: 0.7960 - val_loss: 0.4094 - val_accuracy: 0.7844 Epoch 34/200 122/122 [==============================] - 0s 960us/step - loss: 0.4050 - accuracy: 0.7922 - val_loss: 0.4098 - val_accuracy: 0.7852 Epoch 35/200 122/122 [==============================] - 0s 927us/step - loss: 0.4050 - accuracy: 0.7948 - val_loss: 0.4089 - val_accuracy: 0.7783 Epoch 36/200 122/122 [==============================] - 0s 914us/step - loss: 0.4049 - accuracy: 0.7943 - val_loss: 0.4099 - val_accuracy: 0.7744 Epoch 37/200 122/122 [==============================] - 0s 905us/step - loss: 0.4042 - accuracy: 0.7932 - val_loss: 0.4165 - val_accuracy: 0.7783 Epoch 38/200 122/122 [==============================] - 0s 877us/step - loss: 0.4033 - accuracy: 0.7930 - val_loss: 0.4083 - val_accuracy: 0.7806 Epoch 39/200 122/122 [==============================] - 0s 934us/step - loss: 0.4019 - accuracy: 0.7955 - val_loss: 0.4083 - val_accuracy: 0.7883 Epoch 40/200 122/122 [==============================] - 0s 928us/step - loss: 0.4031 - accuracy: 0.7930 - val_loss: 0.4077 - val_accuracy: 0.7821 Epoch 41/200 122/122 [==============================] - 0s 782us/step - loss: 0.4021 - accuracy: 0.7960 - val_loss: 0.4078 - val_accuracy: 0.7798 Epoch 42/200 122/122 [==============================] - 0s 886us/step - loss: 0.4009 - accuracy: 0.7932 - val_loss: 0.4068 - val_accuracy: 0.7860 Epoch 43/200 122/122 [==============================] - 0s 904us/step - loss: 0.4008 - accuracy: 0.7945 - val_loss: 0.4067 - val_accuracy: 0.7814 Epoch 44/200 122/122 [==============================] - 0s 895us/step - loss: 0.4004 - accuracy: 0.7901 - val_loss: 0.4048 - val_accuracy: 0.7914 Epoch 45/200 122/122 [==============================] - 0s 998us/step - loss: 0.3990 - accuracy: 0.7966 - val_loss: 0.4129 - val_accuracy: 0.7821 Epoch 46/200 122/122 [==============================] - 0s 959us/step - loss: 0.3990 - accuracy: 0.7953 - val_loss: 0.4035 - val_accuracy: 0.7906 Epoch 47/200 122/122 [==============================] - 0s 903us/step - loss: 0.3968 - accuracy: 0.8019 - val_loss: 0.4074 - val_accuracy: 0.7829 Epoch 48/200 122/122 [==============================] - 0s 927us/step - loss: 0.3976 - accuracy: 0.7991 - val_loss: 0.4023 - val_accuracy: 0.7914 Epoch 49/200 122/122 [==============================] - 0s 894us/step - loss: 0.3963 - accuracy: 0.8007 - val_loss: 0.4019 - val_accuracy: 0.7875 Epoch 50/200 122/122 [==============================] - 0s 913us/step - loss: 0.3954 - accuracy: 0.7986 - val_loss: 0.4008 - val_accuracy: 0.7898 Epoch 51/200 122/122 [==============================] - 0s 891us/step - loss: 0.3945 - accuracy: 0.8014 - val_loss: 0.3995 - val_accuracy: 0.7937 Epoch 52/200 122/122 [==============================] - 0s 929us/step - loss: 0.3931 - accuracy: 0.7991 - val_loss: 0.3983 - val_accuracy: 0.7968 Epoch 53/200 122/122 [==============================] - 0s 928us/step - loss: 0.3919 - accuracy: 0.8053 - val_loss: 0.3966 - val_accuracy: 0.8006 Epoch 54/200 122/122 [==============================] - 0s 934us/step - loss: 0.3906 - accuracy: 0.8053 - val_loss: 0.3964 - val_accuracy: 0.7929 Epoch 55/200 122/122 [==============================] - 0s 915us/step - loss: 0.3897 - accuracy: 0.8079 - val_loss: 0.3968 - val_accuracy: 0.7945 Epoch 56/200 122/122 [==============================] - 0s 873us/step - loss: 0.3888 - accuracy: 0.8063 - val_loss: 0.3930 - val_accuracy: 0.8022 Epoch 57/200 122/122 [==============================] - 0s 912us/step - loss: 0.3874 - accuracy: 0.8076 - val_loss: 0.3911 - val_accuracy: 0.8068 Epoch 58/200 122/122 [==============================] - 0s 887us/step - loss: 0.3851 - accuracy: 0.8127 - val_loss: 0.3897 - val_accuracy: 0.8075 Epoch 59/200 122/122 [==============================] - 0s 802us/step - loss: 0.3842 - accuracy: 0.8135 - val_loss: 0.3891 - val_accuracy: 0.8122 Epoch 60/200 122/122 [==============================] - 0s 888us/step - loss: 0.3833 - accuracy: 0.8155 - val_loss: 0.3871 - val_accuracy: 0.8114 Epoch 61/200 122/122 [==============================] - 0s 905us/step - loss: 0.3813 - accuracy: 0.8148 - val_loss: 0.3866 - val_accuracy: 0.8114 Epoch 62/200 122/122 [==============================] - 0s 912us/step - loss: 0.3801 - accuracy: 0.8179 - val_loss: 0.3850 - val_accuracy: 0.8137 Epoch 63/200 122/122 [==============================] - 0s 996us/step - loss: 0.3784 - accuracy: 0.8191 - val_loss: 0.3890 - val_accuracy: 0.8006 Epoch 64/200 122/122 [==============================] - 0s 930us/step - loss: 0.3776 - accuracy: 0.8199 - val_loss: 0.3821 - val_accuracy: 0.8191 Epoch 65/200 122/122 [==============================] - 0s 931us/step - loss: 0.3766 - accuracy: 0.8222 - val_loss: 0.3817 - val_accuracy: 0.8206 Epoch 66/200 122/122 [==============================] - 0s 890us/step - loss: 0.3758 - accuracy: 0.8253 - val_loss: 0.3796 - val_accuracy: 0.8276 Epoch 67/200 122/122 [==============================] - 0s 953us/step - loss: 0.3739 - accuracy: 0.8263 - val_loss: 0.3789 - val_accuracy: 0.8260 Epoch 68/200 122/122 [==============================] - 0s 942us/step - loss: 0.3729 - accuracy: 0.8258 - val_loss: 0.3771 - val_accuracy: 0.8268 Epoch 69/200 122/122 [==============================] - 0s 910us/step - loss: 0.3717 - accuracy: 0.8258 - val_loss: 0.3758 - val_accuracy: 0.8283 Epoch 70/200 122/122 [==============================] - 0s 969us/step - loss: 0.3698 - accuracy: 0.8304 - val_loss: 0.3749 - val_accuracy: 0.8276 Epoch 71/200 122/122 [==============================] - 0s 940us/step - loss: 0.3684 - accuracy: 0.8294 - val_loss: 0.3785 - val_accuracy: 0.8168 Epoch 72/200 122/122 [==============================] - 0s 984us/step - loss: 0.3675 - accuracy: 0.8338 - val_loss: 0.3756 - val_accuracy: 0.8206 Epoch 73/200 122/122 [==============================] - 0s 1ms/step - loss: 0.3658 - accuracy: 0.8338 - val_loss: 0.3705 - val_accuracy: 0.8345 Epoch 74/200 122/122 [==============================] - 0s 982us/step - loss: 0.3637 - accuracy: 0.8374 - val_loss: 0.3736 - val_accuracy: 0.8206 Epoch 75/200 122/122 [==============================] - 0s 1ms/step - loss: 0.3621 - accuracy: 0.8361 - val_loss: 0.3670 - val_accuracy: 0.8345 Epoch 76/200 122/122 [==============================] - 0s 991us/step - loss: 0.3613 - accuracy: 0.8350 - val_loss: 0.3636 - val_accuracy: 0.8353 Epoch 77/200 122/122 [==============================] - 0s 899us/step - loss: 0.3589 - accuracy: 0.8381 - val_loss: 0.3637 - val_accuracy: 0.8368 Epoch 78/200 122/122 [==============================] - 0s 842us/step - loss: 0.3568 - accuracy: 0.8384 - val_loss: 0.3595 - val_accuracy: 0.8376 Epoch 79/200 122/122 [==============================] - 0s 895us/step - loss: 0.3541 - accuracy: 0.8420 - val_loss: 0.3574 - val_accuracy: 0.8453 Epoch 80/200 122/122 [==============================] - 0s 942us/step - loss: 0.3520 - accuracy: 0.8443 - val_loss: 0.3551 - val_accuracy: 0.8422 Epoch 81/200 122/122 [==============================] - 0s 894us/step - loss: 0.3495 - accuracy: 0.8450 - val_loss: 0.3556 - val_accuracy: 0.8453 Epoch 82/200 122/122 [==============================] - 0s 955us/step - loss: 0.3481 - accuracy: 0.8440 - val_loss: 0.3510 - val_accuracy: 0.8483 Epoch 83/200 122/122 [==============================] - 0s 907us/step - loss: 0.3461 - accuracy: 0.8486 - val_loss: 0.3501 - val_accuracy: 0.8476 Epoch 84/200 122/122 [==============================] - 0s 979us/step - loss: 0.3435 - accuracy: 0.8502 - val_loss: 0.3472 - val_accuracy: 0.8522 Epoch 85/200 122/122 [==============================] - 0s 913us/step - loss: 0.3413 - accuracy: 0.8492 - val_loss: 0.3501 - val_accuracy: 0.8445 Epoch 86/200 122/122 [==============================] - 0s 902us/step - loss: 0.3400 - accuracy: 0.8525 - val_loss: 0.3419 - val_accuracy: 0.8560 Epoch 87/200 122/122 [==============================] - 0s 949us/step - loss: 0.3367 - accuracy: 0.8530 - val_loss: 0.3506 - val_accuracy: 0.8399 Epoch 88/200 122/122 [==============================] - 0s 958us/step - loss: 0.3357 - accuracy: 0.8533 - val_loss: 0.3406 - val_accuracy: 0.8514 Epoch 89/200 122/122 [==============================] - 0s 1ms/step - loss: 0.3330 - accuracy: 0.8530 - val_loss: 0.3374 - val_accuracy: 0.8553 Epoch 90/200 122/122 [==============================] - 0s 961us/step - loss: 0.3315 - accuracy: 0.8535 - val_loss: 0.3344 - val_accuracy: 0.8599 Epoch 91/200 122/122 [==============================] - 0s 979us/step - loss: 0.3290 - accuracy: 0.8579 - val_loss: 0.3328 - val_accuracy: 0.8661 Epoch 92/200 122/122 [==============================] - 0s 972us/step - loss: 0.3271 - accuracy: 0.8602 - val_loss: 0.3310 - val_accuracy: 0.8637 Epoch 93/200 122/122 [==============================] - 0s 917us/step - loss: 0.3242 - accuracy: 0.8579 - val_loss: 0.3284 - val_accuracy: 0.8622 Epoch 94/200 122/122 [==============================] - 0s 895us/step - loss: 0.3239 - accuracy: 0.8612 - val_loss: 0.3272 - val_accuracy: 0.8607 Epoch 95/200 122/122 [==============================] - 0s 942us/step - loss: 0.3217 - accuracy: 0.8620 - val_loss: 0.3259 - val_accuracy: 0.8645 Epoch 96/200 122/122 [==============================] - 0s 965us/step - loss: 0.3197 - accuracy: 0.8640 - val_loss: 0.3246 - val_accuracy: 0.8661 Epoch 97/200 122/122 [==============================] - 0s 976us/step - loss: 0.3180 - accuracy: 0.8640 - val_loss: 0.3224 - val_accuracy: 0.8668 Epoch 98/200 122/122 [==============================] - 0s 943us/step - loss: 0.3161 - accuracy: 0.8648 - val_loss: 0.3217 - val_accuracy: 0.8645 Epoch 99/200 122/122 [==============================] - 0s 947us/step - loss: 0.3157 - accuracy: 0.8633 - val_loss: 0.3206 - val_accuracy: 0.8622 Epoch 100/200 122/122 [==============================] - 0s 987us/step - loss: 0.3135 - accuracy: 0.8648 - val_loss: 0.3201 - val_accuracy: 0.8645 Epoch 101/200 122/122 [==============================] - 0s 1ms/step - loss: 0.3122 - accuracy: 0.8661 - val_loss: 0.3176 - val_accuracy: 0.8684 Epoch 102/200 122/122 [==============================] - 0s 1ms/step - loss: 0.3116 - accuracy: 0.8643 - val_loss: 0.3176 - val_accuracy: 0.8614 Epoch 103/200 122/122 [==============================] - 0s 954us/step - loss: 0.3103 - accuracy: 0.8684 - val_loss: 0.3157 - val_accuracy: 0.8653 Epoch 104/200 122/122 [==============================] - 0s 916us/step - loss: 0.3088 - accuracy: 0.8653 - val_loss: 0.3176 - val_accuracy: 0.8614 Epoch 105/200 122/122 [==============================] - 0s 898us/step - loss: 0.3079 - accuracy: 0.8669 - val_loss: 0.3161 - val_accuracy: 0.8622 Epoch 106/200 122/122 [==============================] - 0s 883us/step - loss: 0.3073 - accuracy: 0.8699 - val_loss: 0.3131 - val_accuracy: 0.8637 Epoch 107/200 122/122 [==============================] - 0s 979us/step - loss: 0.3056 - accuracy: 0.8669 - val_loss: 0.3137 - val_accuracy: 0.8653 Epoch 108/200 122/122 [==============================] - 0s 983us/step - loss: 0.3049 - accuracy: 0.8669 - val_loss: 0.3140 - val_accuracy: 0.8622 Epoch 109/200 122/122 [==============================] - 0s 921us/step - loss: 0.3035 - accuracy: 0.8681 - val_loss: 0.3110 - val_accuracy: 0.8668 Epoch 110/200 122/122 [==============================] - 0s 941us/step - loss: 0.3032 - accuracy: 0.8702 - val_loss: 0.3113 - val_accuracy: 0.8676 Epoch 111/200 122/122 [==============================] - 0s 980us/step - loss: 0.3017 - accuracy: 0.8684 - val_loss: 0.3103 - val_accuracy: 0.8676 Epoch 112/200 122/122 [==============================] - 0s 956us/step - loss: 0.3011 - accuracy: 0.8661 - val_loss: 0.3111 - val_accuracy: 0.8630 Epoch 113/200 122/122 [==============================] - 0s 874us/step - loss: 0.3012 - accuracy: 0.8656 - val_loss: 0.3092 - val_accuracy: 0.8653 Epoch 114/200 122/122 [==============================] - 0s 983us/step - loss: 0.2999 - accuracy: 0.8694 - val_loss: 0.3086 - val_accuracy: 0.8599 Epoch 115/200 122/122 [==============================] - 0s 970us/step - loss: 0.2992 - accuracy: 0.8707 - val_loss: 0.3083 - val_accuracy: 0.8599 Epoch 116/200 122/122 [==============================] - 0s 952us/step - loss: 0.2988 - accuracy: 0.8676 - val_loss: 0.3075 - val_accuracy: 0.8653 Epoch 117/200 122/122 [==============================] - 0s 944us/step - loss: 0.2980 - accuracy: 0.8704 - val_loss: 0.3114 - val_accuracy: 0.8614 Epoch 118/200 122/122 [==============================] - 0s 927us/step - loss: 0.2979 - accuracy: 0.8679 - val_loss: 0.3085 - val_accuracy: 0.8637 Epoch 119/200 122/122 [==============================] - 0s 939us/step - loss: 0.2966 - accuracy: 0.8689 - val_loss: 0.3113 - val_accuracy: 0.8614 Epoch 120/200 122/122 [==============================] - 0s 938us/step - loss: 0.2972 - accuracy: 0.8699 - val_loss: 0.3070 - val_accuracy: 0.8607 Epoch 121/200 122/122 [==============================] - 0s 885us/step - loss: 0.2951 - accuracy: 0.8707 - val_loss: 0.3080 - val_accuracy: 0.8668 Epoch 122/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2967 - accuracy: 0.8720 - val_loss: 0.3063 - val_accuracy: 0.8607 Epoch 123/200 122/122 [==============================] - 0s 915us/step - loss: 0.2954 - accuracy: 0.8689 - val_loss: 0.3065 - val_accuracy: 0.8645 Epoch 124/200 122/122 [==============================] - 0s 918us/step - loss: 0.2951 - accuracy: 0.8679 - val_loss: 0.3093 - val_accuracy: 0.8630 Epoch 125/200 122/122 [==============================] - 0s 928us/step - loss: 0.2937 - accuracy: 0.8710 - val_loss: 0.3062 - val_accuracy: 0.8607 Epoch 126/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2950 - accuracy: 0.8717 - val_loss: 0.3063 - val_accuracy: 0.8661 Epoch 127/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2941 - accuracy: 0.8710 - val_loss: 0.3051 - val_accuracy: 0.8607 Epoch 128/200 122/122 [==============================] - 0s 988us/step - loss: 0.2942 - accuracy: 0.8707 - val_loss: 0.3079 - val_accuracy: 0.8637 Epoch 129/200 122/122 [==============================] - 0s 857us/step - loss: 0.2931 - accuracy: 0.8687 - val_loss: 0.3113 - val_accuracy: 0.8622 Epoch 130/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2940 - accuracy: 0.8699 - val_loss: 0.3060 - val_accuracy: 0.8630 Epoch 131/200 122/122 [==============================] - 0s 879us/step - loss: 0.2925 - accuracy: 0.8681 - val_loss: 0.3084 - val_accuracy: 0.8637 Epoch 132/200 122/122 [==============================] - 0s 986us/step - loss: 0.2926 - accuracy: 0.8702 - val_loss: 0.3157 - val_accuracy: 0.8637 Epoch 133/200 122/122 [==============================] - 0s 932us/step - loss: 0.2921 - accuracy: 0.8725 - val_loss: 0.3087 - val_accuracy: 0.8637 Epoch 134/200 122/122 [==============================] - 0s 832us/step - loss: 0.2924 - accuracy: 0.8697 - val_loss: 0.3043 - val_accuracy: 0.8568 Epoch 135/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2918 - accuracy: 0.8717 - val_loss: 0.3048 - val_accuracy: 0.8584 Epoch 136/200 122/122 [==============================] - 0s 923us/step - loss: 0.2918 - accuracy: 0.8717 - val_loss: 0.3042 - val_accuracy: 0.8584 Epoch 137/200 122/122 [==============================] - 0s 934us/step - loss: 0.2918 - accuracy: 0.8720 - val_loss: 0.3041 - val_accuracy: 0.8614 Epoch 138/200 122/122 [==============================] - 0s 946us/step - loss: 0.2903 - accuracy: 0.8763 - val_loss: 0.3155 - val_accuracy: 0.8668 Epoch 139/200 122/122 [==============================] - 0s 928us/step - loss: 0.2912 - accuracy: 0.8728 - val_loss: 0.3042 - val_accuracy: 0.8591 Epoch 140/200 122/122 [==============================] - 0s 908us/step - loss: 0.2900 - accuracy: 0.8722 - val_loss: 0.3064 - val_accuracy: 0.8684 Epoch 141/200 122/122 [==============================] - 0s 809us/step - loss: 0.2894 - accuracy: 0.8735 - val_loss: 0.3042 - val_accuracy: 0.8637 Epoch 142/200 122/122 [==============================] - 0s 905us/step - loss: 0.2896 - accuracy: 0.8735 - val_loss: 0.3065 - val_accuracy: 0.8668 Epoch 143/200 122/122 [==============================] - 0s 915us/step - loss: 0.2893 - accuracy: 0.8704 - val_loss: 0.3056 - val_accuracy: 0.8653 Epoch 144/200 122/122 [==============================] - 0s 899us/step - loss: 0.2901 - accuracy: 0.8722 - val_loss: 0.3040 - val_accuracy: 0.8614 Epoch 145/200 122/122 [==============================] - 0s 975us/step - loss: 0.2899 - accuracy: 0.8758 - val_loss: 0.3066 - val_accuracy: 0.8691 Epoch 146/200 122/122 [==============================] - 0s 923us/step - loss: 0.2893 - accuracy: 0.8743 - val_loss: 0.3103 - val_accuracy: 0.8661 Epoch 147/200 122/122 [==============================] - 0s 908us/step - loss: 0.2895 - accuracy: 0.8715 - val_loss: 0.3032 - val_accuracy: 0.8653 Epoch 148/200 122/122 [==============================] - 0s 904us/step - loss: 0.2894 - accuracy: 0.8738 - val_loss: 0.3128 - val_accuracy: 0.8653 Epoch 149/200 122/122 [==============================] - 0s 960us/step - loss: 0.2888 - accuracy: 0.8722 - val_loss: 0.3036 - val_accuracy: 0.8668 Epoch 150/200 122/122 [==============================] - 0s 945us/step - loss: 0.2892 - accuracy: 0.8743 - val_loss: 0.3037 - val_accuracy: 0.8645 Epoch 151/200 122/122 [==============================] - 0s 946us/step - loss: 0.2886 - accuracy: 0.8730 - val_loss: 0.3092 - val_accuracy: 0.8630 Epoch 152/200 122/122 [==============================] - 0s 947us/step - loss: 0.2885 - accuracy: 0.8756 - val_loss: 0.3035 - val_accuracy: 0.8645 Epoch 153/200 122/122 [==============================] - 0s 917us/step - loss: 0.2884 - accuracy: 0.8733 - val_loss: 0.3036 - val_accuracy: 0.8653 Epoch 154/200 122/122 [==============================] - 0s 915us/step - loss: 0.2881 - accuracy: 0.8733 - val_loss: 0.3029 - val_accuracy: 0.8645 Epoch 155/200 122/122 [==============================] - 0s 983us/step - loss: 0.2877 - accuracy: 0.8725 - val_loss: 0.3030 - val_accuracy: 0.8653 Epoch 156/200 122/122 [==============================] - 0s 988us/step - loss: 0.2886 - accuracy: 0.8733 - val_loss: 0.3043 - val_accuracy: 0.8637 Epoch 157/200 122/122 [==============================] - 0s 983us/step - loss: 0.2880 - accuracy: 0.8740 - val_loss: 0.3065 - val_accuracy: 0.8684 Epoch 158/200 122/122 [==============================] - 0s 948us/step - loss: 0.2883 - accuracy: 0.8735 - val_loss: 0.3041 - val_accuracy: 0.8630 Epoch 159/200 122/122 [==============================] - 0s 903us/step - loss: 0.2860 - accuracy: 0.8738 - val_loss: 0.3038 - val_accuracy: 0.8661 Epoch 160/200 122/122 [==============================] - 0s 977us/step - loss: 0.2878 - accuracy: 0.8743 - val_loss: 0.3053 - val_accuracy: 0.8645 Epoch 161/200 122/122 [==============================] - 0s 955us/step - loss: 0.2885 - accuracy: 0.8743 - val_loss: 0.3041 - val_accuracy: 0.8653 Epoch 162/200 122/122 [==============================] - 0s 939us/step - loss: 0.2887 - accuracy: 0.8738 - val_loss: 0.3043 - val_accuracy: 0.8599 Epoch 163/200 122/122 [==============================] - 0s 985us/step - loss: 0.2878 - accuracy: 0.8735 - val_loss: 0.3045 - val_accuracy: 0.8630 Epoch 164/200 122/122 [==============================] - 0s 890us/step - loss: 0.2879 - accuracy: 0.8746 - val_loss: 0.3042 - val_accuracy: 0.8637 Epoch 165/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2882 - accuracy: 0.8704 - val_loss: 0.3033 - val_accuracy: 0.8614 Epoch 166/200 122/122 [==============================] - 0s 960us/step - loss: 0.2877 - accuracy: 0.8738 - val_loss: 0.3075 - val_accuracy: 0.8653 Epoch 167/200 122/122 [==============================] - 0s 946us/step - loss: 0.2870 - accuracy: 0.8758 - val_loss: 0.3045 - val_accuracy: 0.8614 Epoch 168/200 122/122 [==============================] - 0s 975us/step - loss: 0.2875 - accuracy: 0.8717 - val_loss: 0.3057 - val_accuracy: 0.8630 Epoch 169/200 122/122 [==============================] - 0s 923us/step - loss: 0.2870 - accuracy: 0.8738 - val_loss: 0.3131 - val_accuracy: 0.8676 Epoch 170/200 122/122 [==============================] - 0s 972us/step - loss: 0.2876 - accuracy: 0.8766 - val_loss: 0.3054 - val_accuracy: 0.8661 Epoch 171/200 122/122 [==============================] - 0s 979us/step - loss: 0.2871 - accuracy: 0.8758 - val_loss: 0.3029 - val_accuracy: 0.8653 Epoch 172/200 122/122 [==============================] - 0s 902us/step - loss: 0.2868 - accuracy: 0.8728 - val_loss: 0.3074 - val_accuracy: 0.8607 Epoch 173/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2876 - accuracy: 0.8730 - val_loss: 0.3088 - val_accuracy: 0.8676 Epoch 174/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2863 - accuracy: 0.8756 - val_loss: 0.3072 - val_accuracy: 0.8637 Epoch 175/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2881 - accuracy: 0.8738 - val_loss: 0.3035 - val_accuracy: 0.8614 Epoch 176/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2870 - accuracy: 0.8722 - val_loss: 0.3130 - val_accuracy: 0.8684 Epoch 177/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2868 - accuracy: 0.8740 - val_loss: 0.3039 - val_accuracy: 0.8668 Epoch 178/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2862 - accuracy: 0.8751 - val_loss: 0.3100 - val_accuracy: 0.8630 Epoch 179/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2869 - accuracy: 0.8728 - val_loss: 0.3043 - val_accuracy: 0.8614 Epoch 180/200 122/122 [==============================] - 0s 918us/step - loss: 0.2862 - accuracy: 0.8753 - val_loss: 0.3039 - val_accuracy: 0.8676 Epoch 181/200 122/122 [==============================] - 0s 978us/step - loss: 0.2868 - accuracy: 0.8758 - val_loss: 0.3053 - val_accuracy: 0.8607 Epoch 182/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2856 - accuracy: 0.8735 - val_loss: 0.3065 - val_accuracy: 0.8661 Epoch 183/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2873 - accuracy: 0.8743 - val_loss: 0.3041 - val_accuracy: 0.8622 Epoch 184/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2861 - accuracy: 0.8743 - val_loss: 0.3079 - val_accuracy: 0.8684 Epoch 185/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2873 - accuracy: 0.8748 - val_loss: 0.3080 - val_accuracy: 0.8691 Epoch 186/200 122/122 [==============================] - 0s 999us/step - loss: 0.2863 - accuracy: 0.8746 - val_loss: 0.3036 - val_accuracy: 0.8645 Epoch 187/200 122/122 [==============================] - 0s 977us/step - loss: 0.2866 - accuracy: 0.8730 - val_loss: 0.3112 - val_accuracy: 0.8645 Epoch 188/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2858 - accuracy: 0.8743 - val_loss: 0.3033 - val_accuracy: 0.8614 Epoch 189/200 122/122 [==============================] - 0s 920us/step - loss: 0.2861 - accuracy: 0.8753 - val_loss: 0.3028 - val_accuracy: 0.8630 Epoch 190/200 122/122 [==============================] - 0s 928us/step - loss: 0.2851 - accuracy: 0.8758 - val_loss: 0.3110 - val_accuracy: 0.8637 Epoch 191/200 122/122 [==============================] - 0s 979us/step - loss: 0.2855 - accuracy: 0.8740 - val_loss: 0.3106 - val_accuracy: 0.8684 Epoch 192/200 122/122 [==============================] - 0s 990us/step - loss: 0.2855 - accuracy: 0.8751 - val_loss: 0.3039 - val_accuracy: 0.8676 Epoch 193/200 122/122 [==============================] - 0s 967us/step - loss: 0.2863 - accuracy: 0.8769 - val_loss: 0.3035 - val_accuracy: 0.8622 Epoch 194/200 122/122 [==============================] - 0s 950us/step - loss: 0.2859 - accuracy: 0.8758 - val_loss: 0.3147 - val_accuracy: 0.8630 Epoch 195/200 122/122 [==============================] - 0s 978us/step - loss: 0.2862 - accuracy: 0.8728 - val_loss: 0.3066 - val_accuracy: 0.8684 Epoch 196/200 122/122 [==============================] - 0s 970us/step - loss: 0.2846 - accuracy: 0.8774 - val_loss: 0.3027 - val_accuracy: 0.8653 Epoch 197/200 122/122 [==============================] - 0s 969us/step - loss: 0.2853 - accuracy: 0.8769 - val_loss: 0.3028 - val_accuracy: 0.8684 Epoch 198/200 122/122 [==============================] - 0s 999us/step - loss: 0.2854 - accuracy: 0.8753 - val_loss: 0.3243 - val_accuracy: 0.8591 Epoch 199/200 122/122 [==============================] - 0s 963us/step - loss: 0.2857 - accuracy: 0.8733 - val_loss: 0.3053 - val_accuracy: 0.8614 Epoch 200/200 122/122 [==============================] - 0s 1ms/step - loss: 0.2854 - accuracy: 0.8743 - val_loss: 0.3024 - val_accuracy: 0.8591
In [146]:
test_acc, prdcision, f1, cm
Out[146]:
(0.86, 0.886317907444668, 0.9063786008230452, array([[237, 113], [ 69, 881]], dtype=int64))
In [147]:
from sklearn.metrics import ConfusionMatrixDisplay
disp = ConfusionMatrixDisplay(confusion_matrix =cm)
disp.plot()
Out[147]:
<sklearn.metrics._plot.confusion_matrix.ConfusionMatrixDisplay at 0x2042b5b4f10>
In [ ]:
In [ ]:
728x90
반응형
'딥러닝' 카테고리의 다른 글
심플순환신경망(Simple_RNN (0) | 2024.01.05 |
---|---|
퍼셉트론_분류데이터사용 (0) | 2024.01.05 |
[딥러닝]인공신경망_훈련모델_맛보기 (3) | 2024.01.03 |
[딥러닝]심층신경망_훈련_및_성능향상 (0) | 2024.01.03 |
[딥러닝]신경망계층_추가방법_및_성능향상방법 (0) | 2024.01.03 |