# 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]]