# first neural network with keras tutorial
from keras.models import Sequential
from keras.layers import Dense
import pandas as pd
import numpy as np
import pickle
data = pd.read_csv("hypermutated.csv",header=None)
data.shape
small = data.dropna()
small.shape
X = small.iloc[:,0:4].values
y = small.iloc[:,4].values
print(data)
0 1 2 3 4 0 0.9908 -0.6535 0.6548 -2.2655 0 1 -0.3444 0.5817 1.8871 -1.2221 0 2 0.1206 0.9814 1.1101 -1.1757 0 3 0.9666 -0.1179 0.5870 0.2025 0 4 -0.3356 1.3352 1.5351 -0.6308 0 .. ... ... ... ... .. 202 0.0534 -0.5856 -0.2344 -0.1041 0 203 1.7897 -0.1683 -0.2239 0.0128 0 204 -1.0404 0.0381 -1.8959 -0.4171 0 205 -2.0500 -0.7193 0.3134 -2.6699 0 206 1.4275 -0.1427 0.1080 -2.5215 0 [207 rows x 5 columns]
small.shape
(207, 5)
model = Sequential()
model.add(Dense(12, input_dim=4, activation='relu'))
model.add(Dense(8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
history=model.fit(X, y, epochs=150, batch_size=10)
Epoch 1/150 21/21 [==============================] - 1s 1ms/step - loss: 0.7681 - accuracy: 0.3382 Epoch 2/150 21/21 [==============================] - 0s 2ms/step - loss: 0.6592 - accuracy: 0.6570 Epoch 3/150 21/21 [==============================] - 0s 1ms/step - loss: 0.5699 - accuracy: 0.8164 Epoch 4/150 21/21 [==============================] - 0s 1ms/step - loss: 0.4937 - accuracy: 0.8454 Epoch 5/150 21/21 [==============================] - 0s 1ms/step - loss: 0.4355 - accuracy: 0.8551 Epoch 6/150 21/21 [==============================] - 0s 1ms/step - loss: 0.3925 - accuracy: 0.8647 Epoch 7/150 21/21 [==============================] - 0s 1ms/step - loss: 0.3584 - accuracy: 0.8647 Epoch 8/150 21/21 [==============================] - 0s 1ms/step - loss: 0.3333 - accuracy: 0.8647 Epoch 9/150 21/21 [==============================] - 0s 1ms/step - loss: 0.3132 - accuracy: 0.8599 Epoch 10/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2964 - accuracy: 0.8696 Epoch 11/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2833 - accuracy: 0.8792 Epoch 12/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2714 - accuracy: 0.8889 Epoch 13/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2618 - accuracy: 0.9034 Epoch 14/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2532 - accuracy: 0.8986 Epoch 15/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2462 - accuracy: 0.9034 Epoch 16/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2398 - accuracy: 0.9179 Epoch 17/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2344 - accuracy: 0.9179 Epoch 18/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2297 - accuracy: 0.9179 Epoch 19/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2251 - accuracy: 0.9179 Epoch 20/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2214 - accuracy: 0.9179 Epoch 21/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2173 - accuracy: 0.9227 Epoch 22/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2141 - accuracy: 0.9227 Epoch 23/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2108 - accuracy: 0.9227 Epoch 24/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2080 - accuracy: 0.9324 Epoch 25/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2053 - accuracy: 0.9324 Epoch 26/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2029 - accuracy: 0.9324 Epoch 27/150 21/21 [==============================] - 0s 1ms/step - loss: 0.2013 - accuracy: 0.9324 Epoch 28/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1991 - accuracy: 0.9324 Epoch 29/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1969 - accuracy: 0.9324 Epoch 30/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1955 - accuracy: 0.9324 Epoch 31/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1939 - accuracy: 0.9275 Epoch 32/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1926 - accuracy: 0.9275 Epoch 33/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1913 - accuracy: 0.9324 Epoch 34/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1899 - accuracy: 0.9324 Epoch 35/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1888 - accuracy: 0.9324 Epoch 36/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1879 - accuracy: 0.9324 Epoch 37/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1871 - accuracy: 0.9324 Epoch 38/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1854 - accuracy: 0.9324 Epoch 39/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1847 - accuracy: 0.9324 Epoch 40/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1836 - accuracy: 0.9324 Epoch 41/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1833 - accuracy: 0.9324 Epoch 42/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1825 - accuracy: 0.9324 Epoch 43/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1817 - accuracy: 0.9324 Epoch 44/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1805 - accuracy: 0.9324 Epoch 45/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1799 - accuracy: 0.9324 Epoch 46/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1792 - accuracy: 0.9324 Epoch 47/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1780 - accuracy: 0.9324 Epoch 48/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1777 - accuracy: 0.9372 Epoch 49/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1768 - accuracy: 0.9372 Epoch 50/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1767 - accuracy: 0.9324 Epoch 51/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1757 - accuracy: 0.9372 Epoch 52/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1748 - accuracy: 0.9372 Epoch 53/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1740 - accuracy: 0.9372 Epoch 54/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1736 - accuracy: 0.9372 Epoch 55/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1728 - accuracy: 0.9372 Epoch 56/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1725 - accuracy: 0.9372 Epoch 57/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1718 - accuracy: 0.9372 Epoch 58/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1712 - accuracy: 0.9372 Epoch 59/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1713 - accuracy: 0.9372 Epoch 60/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1702 - accuracy: 0.9372 Epoch 61/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1698 - accuracy: 0.9324 Epoch 62/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1694 - accuracy: 0.9324 Epoch 63/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1686 - accuracy: 0.9324 Epoch 64/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1683 - accuracy: 0.9324 Epoch 65/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1677 - accuracy: 0.9372 Epoch 66/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1675 - accuracy: 0.9324 Epoch 67/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1667 - accuracy: 0.9372 Epoch 68/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1664 - accuracy: 0.9372 Epoch 69/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1661 - accuracy: 0.9372 Epoch 70/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1656 - accuracy: 0.9372 Epoch 71/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1651 - accuracy: 0.9324 Epoch 72/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1649 - accuracy: 0.9324 Epoch 73/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1649 - accuracy: 0.9324 Epoch 74/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1643 - accuracy: 0.9324 Epoch 75/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1642 - accuracy: 0.9324 Epoch 76/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1634 - accuracy: 0.9372 Epoch 77/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1639 - accuracy: 0.9324 Epoch 78/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1628 - accuracy: 0.9372 Epoch 79/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1625 - accuracy: 0.9372 Epoch 80/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1622 - accuracy: 0.9372 Epoch 81/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1622 - accuracy: 0.9372 Epoch 82/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1617 - accuracy: 0.9324 Epoch 83/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1613 - accuracy: 0.9372 Epoch 84/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1607 - accuracy: 0.9372 Epoch 85/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1607 - accuracy: 0.9372 Epoch 86/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1604 - accuracy: 0.9372 Epoch 87/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1601 - accuracy: 0.9372 Epoch 88/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1598 - accuracy: 0.9324 Epoch 89/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1595 - accuracy: 0.9324 Epoch 90/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1591 - accuracy: 0.9372 Epoch 91/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1589 - accuracy: 0.9372 Epoch 92/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1587 - accuracy: 0.9372 Epoch 93/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1582 - accuracy: 0.9372 Epoch 94/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1589 - accuracy: 0.9324 Epoch 95/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1582 - accuracy: 0.9275 Epoch 96/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1573 - accuracy: 0.9324 Epoch 97/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1571 - accuracy: 0.9372 Epoch 98/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1570 - accuracy: 0.9372 Epoch 99/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1573 - accuracy: 0.9372 Epoch 100/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1568 - accuracy: 0.9372 Epoch 101/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1562 - accuracy: 0.9372 Epoch 102/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1566 - accuracy: 0.9275 Epoch 103/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1563 - accuracy: 0.9324 Epoch 104/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1560 - accuracy: 0.9275 Epoch 105/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1553 - accuracy: 0.9324 Epoch 106/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1550 - accuracy: 0.9372 Epoch 107/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1546 - accuracy: 0.9324 Epoch 108/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1548 - accuracy: 0.9324 Epoch 109/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1543 - accuracy: 0.9324 Epoch 110/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1546 - accuracy: 0.9324 Epoch 111/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1540 - accuracy: 0.9324 Epoch 112/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1539 - accuracy: 0.9324 Epoch 113/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1535 - accuracy: 0.9324 Epoch 114/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1532 - accuracy: 0.9324 Epoch 115/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1532 - accuracy: 0.9324 Epoch 116/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1530 - accuracy: 0.9324 Epoch 117/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1530 - accuracy: 0.9372 Epoch 118/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1525 - accuracy: 0.9324 Epoch 119/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1525 - accuracy: 0.9324 Epoch 120/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1521 - accuracy: 0.9324 Epoch 121/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1520 - accuracy: 0.9324 Epoch 122/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1519 - accuracy: 0.9324 Epoch 123/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1517 - accuracy: 0.9324 Epoch 124/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1514 - accuracy: 0.9372 Epoch 125/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1513 - accuracy: 0.9324 Epoch 126/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1514 - accuracy: 0.9324 Epoch 127/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1507 - accuracy: 0.9324 Epoch 128/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1510 - accuracy: 0.9324 Epoch 129/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1511 - accuracy: 0.9324 Epoch 130/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1506 - accuracy: 0.9324 Epoch 131/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1506 - accuracy: 0.9324 Epoch 132/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1499 - accuracy: 0.9324 Epoch 133/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1499 - accuracy: 0.9324 Epoch 134/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1497 - accuracy: 0.9324 Epoch 135/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1499 - accuracy: 0.9324 Epoch 136/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1495 - accuracy: 0.9324 Epoch 137/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1493 - accuracy: 0.9324 Epoch 138/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1490 - accuracy: 0.9324 Epoch 139/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1491 - accuracy: 0.9324 Epoch 140/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1485 - accuracy: 0.9324 Epoch 141/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1492 - accuracy: 0.9324 Epoch 142/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1480 - accuracy: 0.9324 Epoch 143/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1483 - accuracy: 0.9324 Epoch 144/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1480 - accuracy: 0.9324 Epoch 145/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1479 - accuracy: 0.9324 Epoch 146/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1478 - accuracy: 0.9324 Epoch 147/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1475 - accuracy: 0.9324 Epoch 148/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1480 - accuracy: 0.9324 Epoch 149/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1475 - accuracy: 0.9324 Epoch 150/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1466 - accuracy: 0.9324
print(history.history.keys())
dict_keys(['loss', 'accuracy'])
from matplotlib.pyplot import figure
figure(num=None, figsize=(8, 6), dpi=300, facecolor='w', edgecolor='k')
import matplotlib.pyplot as plt
plt.plot(history.history['accuracy'])
plt.title('CRC hypermutated validation accuracy')
plt.ylabel('accuracy')
plt.xlabel('epoch')
plt.legend(['accuracy'], loc='lower right' )
plt.show()
from matplotlib.pyplot import figure
figure(num=None, figsize=(8, 6), dpi=300, facecolor='w', edgecolor='k')
import matplotlib.pyplot as plt
plt.plot(history.history['loss'])
plt.title('CRC hypermutated validation loss')
plt.ylabel('loss')
plt.xlabel('epoch')
plt.legend(['loss'], loc='upper right' )
plt.show()
model.fit(X, y, epochs=150, batch_size=10)
Epoch 1/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1471 - accuracy: 0.9324 Epoch 2/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1470 - accuracy: 0.9324 Epoch 3/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1466 - accuracy: 0.9324 Epoch 4/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1462 - accuracy: 0.9372 Epoch 5/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1460 - accuracy: 0.9324 Epoch 6/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1459 - accuracy: 0.9324 Epoch 7/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1455 - accuracy: 0.9372 Epoch 8/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1454 - accuracy: 0.9324 Epoch 9/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1451 - accuracy: 0.9372 Epoch 10/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1449 - accuracy: 0.9372 Epoch 11/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1447 - accuracy: 0.9372 Epoch 12/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1447 - accuracy: 0.9372 Epoch 13/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1441 - accuracy: 0.9372 Epoch 14/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1446 - accuracy: 0.9372 Epoch 15/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1439 - accuracy: 0.9372 Epoch 16/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1438 - accuracy: 0.9372 Epoch 17/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1439 - accuracy: 0.9372 Epoch 18/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1436 - accuracy: 0.9372 Epoch 19/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1439 - accuracy: 0.9324 Epoch 20/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1428 - accuracy: 0.9372 Epoch 21/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1430 - accuracy: 0.9324 Epoch 22/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1426 - accuracy: 0.9372 Epoch 23/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1428 - accuracy: 0.9420 Epoch 24/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1426 - accuracy: 0.9324 Epoch 25/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1418 - accuracy: 0.9372 Epoch 26/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1417 - accuracy: 0.9372 Epoch 27/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1416 - accuracy: 0.9324 Epoch 28/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1411 - accuracy: 0.9324 Epoch 29/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1415 - accuracy: 0.9324 Epoch 30/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1409 - accuracy: 0.9420 Epoch 31/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1407 - accuracy: 0.9324 Epoch 32/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1408 - accuracy: 0.9324 Epoch 33/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1404 - accuracy: 0.9324 Epoch 34/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1409 - accuracy: 0.9324 Epoch 35/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1398 - accuracy: 0.9324 Epoch 36/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1399 - accuracy: 0.9324 Epoch 37/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1393 - accuracy: 0.9324 Epoch 38/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1390 - accuracy: 0.9372 Epoch 39/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1390 - accuracy: 0.9324 Epoch 40/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1388 - accuracy: 0.9324 Epoch 41/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1384 - accuracy: 0.9324 Epoch 42/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1386 - accuracy: 0.9324 Epoch 43/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1377 - accuracy: 0.9372 Epoch 44/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1383 - accuracy: 0.9324 Epoch 45/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1378 - accuracy: 0.9324 Epoch 46/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1374 - accuracy: 0.9420 Epoch 47/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1371 - accuracy: 0.9372 Epoch 48/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1370 - accuracy: 0.9372 Epoch 49/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1365 - accuracy: 0.9372 Epoch 50/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1367 - accuracy: 0.9372 Epoch 51/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1362 - accuracy: 0.9372 Epoch 52/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1360 - accuracy: 0.9324 Epoch 53/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1356 - accuracy: 0.9372 Epoch 54/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1357 - accuracy: 0.9420 Epoch 55/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1358 - accuracy: 0.9420 Epoch 56/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1351 - accuracy: 0.9420 Epoch 57/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1351 - accuracy: 0.9372 Epoch 58/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1348 - accuracy: 0.9469 Epoch 59/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1345 - accuracy: 0.9469 Epoch 60/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1345 - accuracy: 0.9372 Epoch 61/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1340 - accuracy: 0.9469 Epoch 62/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1337 - accuracy: 0.9517 Epoch 63/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1344 - accuracy: 0.9469 Epoch 64/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1329 - accuracy: 0.9517 Epoch 65/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1335 - accuracy: 0.9517 Epoch 66/150 21/21 [==============================] - 0s 2ms/step - loss: 0.1329 - accuracy: 0.9517 Epoch 67/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1331 - accuracy: 0.9517 Epoch 68/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1342 - accuracy: 0.9469 Epoch 69/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1327 - accuracy: 0.9469 Epoch 70/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1324 - accuracy: 0.9517 Epoch 71/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1320 - accuracy: 0.9517 Epoch 72/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1321 - accuracy: 0.9517 Epoch 73/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1317 - accuracy: 0.9517 Epoch 74/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1315 - accuracy: 0.9517 Epoch 75/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1313 - accuracy: 0.9517 Epoch 76/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1315 - accuracy: 0.9517 Epoch 77/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1310 - accuracy: 0.9517 Epoch 78/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1309 - accuracy: 0.9565 Epoch 79/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1312 - accuracy: 0.9517 Epoch 80/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1308 - accuracy: 0.9565 Epoch 81/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1307 - accuracy: 0.9517 Epoch 82/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1304 - accuracy: 0.9517 Epoch 83/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1298 - accuracy: 0.9565 Epoch 84/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1295 - accuracy: 0.9565 Epoch 85/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1295 - accuracy: 0.9565 Epoch 86/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1294 - accuracy: 0.9517 Epoch 87/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1293 - accuracy: 0.9565 Epoch 88/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1287 - accuracy: 0.9517 Epoch 89/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1288 - accuracy: 0.9517 Epoch 90/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1285 - accuracy: 0.9517 Epoch 91/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1284 - accuracy: 0.9517 Epoch 92/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1281 - accuracy: 0.9517 Epoch 93/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1281 - accuracy: 0.9565 Epoch 94/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1279 - accuracy: 0.9517 Epoch 95/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1283 - accuracy: 0.9517 Epoch 96/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1279 - accuracy: 0.9517 Epoch 97/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1275 - accuracy: 0.9565 Epoch 98/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1271 - accuracy: 0.9517 Epoch 99/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1273 - accuracy: 0.9517 Epoch 100/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1267 - accuracy: 0.9565 Epoch 101/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1267 - accuracy: 0.9565 Epoch 102/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1267 - accuracy: 0.9565 Epoch 103/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1263 - accuracy: 0.9565 Epoch 104/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1263 - accuracy: 0.9565 Epoch 105/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1256 - accuracy: 0.9565 Epoch 106/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1253 - accuracy: 0.9517 Epoch 107/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1254 - accuracy: 0.9517 Epoch 108/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1252 - accuracy: 0.9517 Epoch 109/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1248 - accuracy: 0.9565 Epoch 110/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1250 - accuracy: 0.9565 Epoch 111/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1248 - accuracy: 0.9565 Epoch 112/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1243 - accuracy: 0.9565 Epoch 113/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1246 - accuracy: 0.9565 Epoch 114/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1243 - accuracy: 0.9565 Epoch 115/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1243 - accuracy: 0.9565 Epoch 116/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1242 - accuracy: 0.9565 Epoch 117/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1237 - accuracy: 0.9565 Epoch 118/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1241 - accuracy: 0.9565 Epoch 119/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1229 - accuracy: 0.9565 Epoch 120/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1239 - accuracy: 0.9517 Epoch 121/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1233 - accuracy: 0.9565 Epoch 122/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1228 - accuracy: 0.9565 Epoch 123/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1224 - accuracy: 0.9565 Epoch 124/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1225 - accuracy: 0.9565 Epoch 125/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1224 - accuracy: 0.9565 Epoch 126/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1217 - accuracy: 0.9565 Epoch 127/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1217 - accuracy: 0.9565 Epoch 128/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1213 - accuracy: 0.9565 Epoch 129/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1213 - accuracy: 0.9565 Epoch 130/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1213 - accuracy: 0.9565 Epoch 131/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1205 - accuracy: 0.9565 Epoch 132/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1207 - accuracy: 0.9565 Epoch 133/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1203 - accuracy: 0.9565 Epoch 134/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1203 - accuracy: 0.9565 Epoch 135/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1199 - accuracy: 0.9565 Epoch 136/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1197 - accuracy: 0.9565 Epoch 137/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1198 - accuracy: 0.9565 Epoch 138/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1200 - accuracy: 0.9565 Epoch 139/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1193 - accuracy: 0.9565 Epoch 140/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1193 - accuracy: 0.9565 Epoch 141/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1193 - accuracy: 0.9517 Epoch 142/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1185 - accuracy: 0.9565 Epoch 143/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1188 - accuracy: 0.9565 Epoch 144/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1184 - accuracy: 0.9565 Epoch 145/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1185 - accuracy: 0.9565 Epoch 146/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1190 - accuracy: 0.9517 Epoch 147/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1174 - accuracy: 0.9565 Epoch 148/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1178 - accuracy: 0.9565 Epoch 149/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1176 - accuracy: 0.9565 Epoch 150/150 21/21 [==============================] - 0s 1ms/step - loss: 0.1174 - accuracy: 0.9565
<keras.callbacks.History at 0x1cdde23ef88>
_, accuracy = model.evaluate(X, y)
print('Accuracy: %.2f' % (accuracy*100))
7/7 [==============================] - 0s 1ms/step - loss: 0.1164 - accuracy: 0.9565 Accuracy: 95.65
model.summary()
Model: "sequential_2" _________________________________________________________________ Layer (type) Output Shape Param # ================================================================= dense_6 (Dense) (None, 12) 60 dense_7 (Dense) (None, 8) 104 dense_8 (Dense) (None, 1) 9 ================================================================= Total params: 173 Trainable params: 173 Non-trainable params: 0 _________________________________________________________________
yhat_probs = model.predict(X)
#yhat_classes = model.predict_classes(X, verbose=0)
yhat_classes = (model.predict(X) > 0.5).astype("int32")
yhat_classes
array([[0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [1], [1], [1], [1], [1], [1], [1], [1], [1], [1], [1], [1], [0], [1], [0], [1], [0], [0], [0], [0], [1], [0], [1], [1], [0], [0], [1], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [1], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0], [0]])
yhat_probs
array([[9.29147005e-04], [6.71754777e-02], [2.72608101e-02], [4.10211444e-01], [8.33065212e-02], [1.42429173e-02], [2.17200816e-02], [3.28779221e-04], [1.52981281e-03], [3.38524580e-04], [2.35980934e-07], [2.74296701e-02], [2.06083059e-04], [6.72370195e-04], [3.16306353e-02], [8.84390374e-06], [3.58045101e-04], [7.80794024e-03], [2.41850353e-06], [1.16520225e-08], [9.21010971e-04], [4.00447845e-03], [8.26401472e-01], [2.20547140e-01], [3.45711708e-02], [3.02300265e-08], [4.24500030e-07], [5.09474130e-10], [6.71366155e-01], [7.86997974e-02], [3.52963871e-05], [4.10041213e-02], [2.23234219e-05], [1.31845385e-01], [3.93077130e-07], [1.72453510e-05], [2.87570523e-10], [9.77032322e-09], [3.02829442e-08], [5.28164068e-10], [3.53298759e-08], [4.65251337e-10], [1.42866803e-08], [1.18190307e-07], [4.89848852e-03], [1.41127432e-09], [1.15644932e-03], [1.67220831e-04], [1.21898919e-01], [1.65805495e-16], [3.13027772e-06], [2.99208223e-05], [1.97576106e-01], [5.36087896e-07], [3.88355802e-05], [3.70988237e-05], [1.06451660e-06], [6.38336033e-08], [6.95639471e-07], [5.21986843e-10], [5.35865484e-11], [4.55608964e-03], [4.84428256e-07], [6.30153775e-01], [3.92312955e-08], [1.03628635e-03], [5.44862151e-02], [4.97588515e-03], [8.41044584e-06], [2.36351222e-01], [2.26161023e-06], [2.71707773e-04], [1.49748117e-10], [2.60864041e-09], [1.35683295e-05], [8.74233047e-11], [6.22415841e-01], [1.72829289e-08], [3.21418047e-04], [2.39258677e-01], [3.38283429e-11], [2.00176334e-12], [1.07661406e-04], [8.84285748e-01], [1.29411194e-06], [1.24727393e-08], [8.76602530e-03], [1.79898125e-05], [3.42101373e-07], [8.09966672e-09], [1.33525646e-06], [3.62658903e-10], [3.85344028e-04], [9.93735671e-01], [4.82499599e-04], [1.97002292e-03], [1.99711323e-02], [2.99765865e-08], [1.12878213e-08], [3.78432870e-03], [8.87271762e-03], [4.92691994e-04], [1.49185431e-09], [8.77538627e-16], [4.07931075e-05], [8.19989204e-01], [1.70890599e-01], [9.68797999e-14], [1.26702785e-02], [8.09301853e-01], [2.06361686e-12], [4.15167847e-07], [6.44192100e-03], [2.22933613e-05], [1.17130119e-04], [4.52461839e-03], [1.94511873e-08], [1.42279267e-03], [7.25597431e-07], [4.85569973e-10], [1.82360411e-04], [1.57352588e-07], [9.25397359e-09], [8.44434800e-11], [6.60211808e-05], [2.72595108e-01], [5.56556572e-11], [6.34148819e-06], [4.34286676e-07], [1.81910604e-01], [1.83993337e-12], [2.74062157e-03], [4.19534238e-08], [1.73842760e-10], [9.62049365e-01], [9.63752151e-01], [9.84794259e-01], [8.66137385e-01], [8.75218153e-01], [7.90051043e-01], [8.77392948e-01], [9.74932432e-01], [6.93827689e-01], [9.38209176e-01], [9.72560883e-01], [6.19290292e-01], [1.85459852e-04], [8.45970273e-01], [3.81923797e-07], [8.36970985e-01], [4.67949974e-07], [3.06675732e-01], [3.05553317e-01], [4.99581176e-09], [5.39699852e-01], [2.52846479e-02], [9.12603140e-01], [6.23831749e-01], [9.06434655e-03], [4.90077490e-08], [7.58232117e-01], [4.57531065e-01], [1.43312003e-11], [1.99738079e-05], [5.12599945e-03], [1.33275986e-04], [8.74371886e-01], [1.43651336e-01], [2.20429897e-02], [5.55020870e-06], [3.38541269e-02], [3.81646097e-01], [2.57814590e-05], [4.48759496e-02], [3.67402136e-02], [6.11316144e-01], [1.29174322e-01], [1.05971098e-03], [1.56536400e-02], [2.86467671e-01], [5.81341684e-02], [1.11429811e-01], [4.70861793e-03], [6.19682431e-01], [3.57351843e-10], [1.66448951e-03], [7.44825602e-03], [8.13624263e-03], [3.33536809e-06], [9.93487298e-01], [1.65158063e-01], [2.29880461e-05], [1.15174383e-01], [7.08262951e-06], [1.99773759e-01], [3.47665340e-01], [2.01866769e-05], [3.37463617e-03], [6.42353296e-03], [4.63889956e-01], [7.15109706e-03], [4.20135260e-03], [1.03673249e-01], [9.21773016e-02], [1.24406818e-09], [7.46755635e-09], [3.05163121e-05]], dtype=float32)
from sklearn.metrics import confusion_matrix, precision_score, recall_score, f1_score, cohen_kappa_score, accuracy_score, roc_auc_score
precision = precision_score(y, yhat_classes)
print('Precision: %f' % precision)
Precision: 0.866667
accuracy = accuracy_score(y, yhat_classes)
print('Accuracy: %f' % accuracy)
Accuracy: 0.956522
recall = recall_score(y, yhat_classes)
print('Recall: %f' % recall)
Recall: 0.838710
f1 = f1_score(y, yhat_classes)
print('F1 score: %f' % f1)
F1 score: 0.852459
kappa = cohen_kappa_score(y, yhat_classes)
print('Cohens kappa: %f' % kappa)
Cohens kappa: 0.826971
auc = roc_auc_score(y, yhat_probs)
print('ROC AUC: %f' % auc)
ROC AUC: 0.984787
matrix = confusion_matrix(y, yhat_classes)
print(matrix)
[[172 4] [ 5 26]]