diff --git a/Models/bottleneck_residual.py b/Models/bottleneck_residual.py index 90c0835..53908e5 100644 --- a/Models/bottleneck_residual.py +++ b/Models/bottleneck_residual.py @@ -1,37 +1,10 @@ from itertools import filterfalse import sys import os - -#from keras.layers.pooling import MaxPool2D -#from numpy.lib.shape_base import expand_dims - -#sys.path.append('c:/git/keras') -#sys.path.append('c:/git/absl') - -# installed -# py -mpip install numpy -# py -mpip show numpy -# py -mpip install tensorflow -# py -mpip show tensorflow -# py -mpip install matplotlib -# c:\users\skess\appdata\local\programs\python\python39\lib\site-packages - import keras -#from keras.optimizers import adam_v2 -#from tensorflow.keras.optimizers import Adam -#from keras.datasets import cifar10 -#from keras.preprocessing.image import ImageDataGenerator -#from keras.models import Sequential -#from keras.utils import np_utils -#from keras.layers import Dense from keras.layers import Activation -#from keras.layers import Flatten -#from keras.layers import Dropout from keras.layers import BatchNormalization from keras.layers import Conv2D -#from keras.layers import MaxPooling2D -#from keras.callbacks import ModelCheckpoint -#from tensorflow.keras.callbacks import EarlyStopping from keras import regularizers from keras import optimizers from matplotlib import pyplot diff --git a/Models/inception_module.py b/Models/inception_module.py index b956559..44a4537 100644 --- a/Models/inception_module.py +++ b/Models/inception_module.py @@ -1,35 +1,11 @@ +from itertools import filterfalse import sys import os - -from keras.layers.pooling import MaxPool2D - -sys.path.append('c:/git/keras') -sys.path.append('c:/git/absl') - -# installed -# py -mpip install numpy -# py -mpip show numpy -# py -mpip install tensorflow -# py -mpip show tensorflow -# py -mpip install matplotlib -# c:\users\skess\appdata\local\programs\python\python39\lib\site-packages - import keras -from keras.optimizers import adam_v2 -from tensorflow.keras.optimizers import Adam -from keras.datasets import cifar10 -from keras.preprocessing.image import ImageDataGenerator -from keras.models import Sequential -from keras.utils import np_utils -from keras.layers import Dense from keras.layers import Activation -from keras.layers import Flatten -from keras.layers import Dropout from keras.layers import BatchNormalization from keras.layers import Conv2D -from keras.layers import MaxPooling2D -from keras.callbacks import ModelCheckpoint -from tensorflow.keras.callbacks import EarlyStopping +from keras.layers import MaxPool2D from keras import regularizers from keras import optimizers from matplotlib import pyplot @@ -52,6 +28,8 @@ def inception_module(x,kernel_init,bias_init,filters_1x1,filters_3x3_reduce,filt output=keras.layers.concatenate([conv_1x1,conv_3x3,conv_5x5,pool_proj],axis=3,name=name) return output + + diff --git a/Models/model_lenet5.py b/Models/model_lenet5.py index c246469..a3e1362 100644 --- a/Models/model_lenet5.py +++ b/Models/model_lenet5.py @@ -1,45 +1,25 @@ import sys import os -from keras.layers.pooling import MaxPool2D - -sys.path.append('c:/git/keras') -sys.path.append('c:/git/absl') - -# installed -# py -mpip install numpy -# py -mpip show numpy -# py -mpip install tensorflow -# py -mpip show tensorflow -# py -mpip install matplotlib -# c:\users\skess\appdata\local\programs\python\python39\lib\site-packages - -import tensorflow +from keras.optimizers import SGD +from keras.optimizers import Adam +from tensorflow.keras.callbacks import TensorBoard import keras -from keras.optimizers import adam_v2 -from tensorflow.keras.optimizers import Adam -from keras.datasets import cifar10 -from keras.preprocessing.image import ImageDataGenerator -from keras.models import Sequential -from keras.utils import np_utils -from keras.layers import Dense -from keras.layers import Activation -from keras.layers import Flatten -from keras.layers import Dropout -from keras.layers import BatchNormalization -from keras.layers import Conv2D -from keras.layers import MaxPooling2D -from keras.layers import AveragePooling2D -from keras.callbacks import EarlyStopping, ModelCheckpoint -from keras import regularizers -from keras import optimizers -from matplotlib import pyplot +from keras.src.legacy.preprocessing.image import ImageDataGenerator from keras.callbacks import ModelCheckpoint -from keras.callbacks import LearningRateScheduler -from keras.preprocessing.image import load_img -from keras.preprocessing.image import img_to_array -from keras.preprocessing.image import array_to_img -from keras.optimizer_v2 import gradient_descent +from tensorflow.keras.callbacks import EarlyStopping +from keras.layers import Flatten +from keras.layers import Dense +from keras.layers import MaxPool2D +from keras.layers import Dropout +from keras.models import Model +from keras.layers import AveragePooling2D +from keras.models import Sequential +import numpy as np +import tensorflow +from inception_module import * +import math +from time import time #Load some data #(x_train,y_train), (x_test,y_test)=cifar10.load_data() @@ -50,7 +30,7 @@ batch_size = 256 learning_rate=.00001 epochs=1000 patience_on_early_stop=10 -model_name='lenet5.h5' +model_name='lenet5.h5.keras' train_ds = tensorflow.keras.preprocessing.image_dataset_from_directory( 'C:\\boneyard\\DeepLearning\\data', @@ -73,6 +53,9 @@ val_ds = tensorflow.keras.preprocessing.image_dataset_from_directory( seed=1337 ) +# Create a TensorBoard instance with the path to the logs directory. Before training, in Terminal, run tensorboard --logdir=logs/ +tensorboard = TensorBoard(log_dir='logs/{}'.format(time())) + model=Sequential() #C1 @@ -100,7 +83,7 @@ model.add(Dense(units=1,activation='sigmoid')) model.summary() -optimizer=gradient_descent.SGD(learning_rate=learning_rate, momentum=0.9, nesterov=False) +optimizer=SGD(learning_rate=learning_rate, momentum=0.9, nesterov=False) checkpointer=ModelCheckpoint(filepath=model_name,monitor='accuracy',verbose=1,save_best_only=True) @@ -108,7 +91,7 @@ early_stopping=EarlyStopping(monitor='val_loss',mode='min',verbose=1,patience=pa model.compile(loss='binary_crossentropy',optimizer=optimizer,metrics=['accuracy']) -history=model.fit(train_ds, epochs=epochs, validation_data=val_ds,callbacks=[checkpointer,early_stopping]) +history=model.fit(train_ds, epochs=epochs, validation_data=val_ds,callbacks=[tensorboard,checkpointer,early_stopping]) # plot the learning curves pyplot.plot(history.history['accuracy'],label='train') diff --git a/Models/model_sk_inception.py b/Models/model_sk_inception.py index 0c41c92..62ced5c 100644 --- a/Models/model_sk_inception.py +++ b/Models/model_sk_inception.py @@ -1,52 +1,28 @@ import sys import os -from keras.layers.pooling import MaxPool2D -from keras.optimizer_v2 import gradient_descent - -sys.path.append('c:/git/keras') -sys.path.append('c:/git/absl') - -# installed -# py -mpip install numpy -# py -mpip show numpy -# py -mpip install tensorflow -# py -mpip show tensorflow -# py -mpip install matplotlib -# c:\users\skess\appdata\local\programs\python\python39\lib\site-packages - +from keras.optimizers import SGD +from keras.optimizers import Adam +from tensorflow.keras.callbacks import TensorBoard import keras -from keras.models import Model -#from keras.optimizers import * -#from keras.optimizers import adam_v2 -from tensorflow.keras.optimizers import Adam -from keras.datasets import cifar10 -from keras.preprocessing.image import ImageDataGenerator -from keras.models import Sequential -from keras.utils import np_utils -from keras.layers import Dense -from keras.layers import Activation -from keras.layers import Flatten -from keras.layers import Dropout -from keras.layers import BatchNormalization -from keras.layers import Conv2D -from keras.layers import MaxPooling2D +from keras.src.legacy.preprocessing.image import ImageDataGenerator from keras.callbacks import ModelCheckpoint from tensorflow.keras.callbacks import EarlyStopping -from keras import regularizers -from keras import optimizers -from matplotlib import pyplot +from keras.layers import Flatten +from keras.layers import Dense +from keras.layers import MaxPool2D +from keras.layers import Dropout +from keras.models import Model import numpy as np import tensorflow from inception_module import * import math - +from time import time # INCEPTION ARCHITECTIURE image_size = (128, 128) -#model_weights_file='inception.h5' -model_name='inception.h5' +model_name='inception.h5.keras' train_ds = tensorflow.keras.preprocessing.image_dataset_from_directory( 'C:\\boneyard\\DeepLearning\\data', @@ -86,9 +62,11 @@ def decay(epoch,steps=100): lr_schedule=keras.callbacks.LearningRateScheduler(decay,verbose=1) -#sgd=SGD(lr=initial_lrate,momentum=0.9,nesterov=False) -optimizer=adam_v2.Adam(learning_rate=initial_lrate) -optimizer=gradient_descent.SGD(learning_rate=initial_lrate, momentum=0.9, nesterov=False) +# Create a TensorBoard instance with the path to the logs directory. Before training, in Terminal, run tensorboard --logdir=logs/ +tensorboard = TensorBoard(log_dir='logs/{}'.format(time())) + +# OPTIMIZER +optimizer=SGD(learning_rate=initial_lrate, momentum=0.9, nesterov=False) #INPUT LAYER input_layer=keras.layers.Input(shape=input_shape) @@ -96,15 +74,15 @@ input_layer=keras.layers.Input(shape=input_shape) kernel_init=keras.initializers.glorot_uniform() bias_init=keras.initializers.Constant(value=.2) -x=Conv2D(64, (7, 7), padding='same', strides=(2, 2), activation='relu', name='conv_1_7x7/2', kernel_initializer=kernel_init, bias_initializer=bias_init)(input_layer) -x=MaxPool2D((3, 3), padding='same', strides=(2, 2), name='max_pool_1_3x3/2')(x) -x=Conv2D(192, (3, 3), padding='same', strides=(1, 1), activation='relu', name='conv_2b_3x3/1')(x) -x=MaxPool2D((3, 3), padding='same', strides=(2, 2), name='max_pool_2_3x3/2')(x) +x=Conv2D(64, (7, 7), padding='same', strides=(2, 2), activation='relu', name='conv_1_7x7_2', kernel_initializer=kernel_init, bias_initializer=bias_init)(input_layer) +x=MaxPool2D((3, 3), padding='same', strides=(2, 2), name='max_pool_1_3x3_2')(x) +x=Conv2D(192, (3, 3), padding='same', strides=(1, 1), activation='relu', name='conv_2b_3x3_1')(x) +x=MaxPool2D((3, 3), padding='same', strides=(2, 2), name='max_pool_2_3x3_2')(x) #BUILD THE INCEPTION MODULE AND MAX POOLING LAYERS (3a and 3b) x=inception_module(x,filters_1x1=64,filters_3x3_reduce=96,filters_3x3=128,filters_5x5_reduce=16,filters_5x5=32,filters_pool_proj=32,kernel_init=kernel_init,bias_init=bias_init,name='inception_3a') x=inception_module(x,filters_1x1=128,filters_3x3_reduce=128,filters_3x3=192,filters_5x5_reduce=32,filters_5x5=96,filters_pool_proj=64,kernel_init=kernel_init,bias_init=bias_init,name='inception_3b') -x=MaxPool2D((3, 3), padding='same', strides=(2, 2), name='max_pool_3_3x3/2')(x) +x=MaxPool2D((3, 3), padding='same', strides=(2, 2), name='max_pool_3_3x3_2')(x) #BUILD THE INCEPTION MODULE AND MAX POOLING LAYERS (4a) x=inception_module(x,filters_1x1=192,filters_3x3_reduce=96,filters_3x3=208,filters_5x5_reduce=16,filters_5x5=48,filters_pool_proj=64,kernel_init=kernel_init,bias_init=bias_init,name='inception_4a') @@ -134,26 +112,19 @@ classifier_2 = Dense(1, activation='sigmoid', name='auxilliary_output_2')(classi #BUILD THE INCEPTION MODULE AND MAX POOLING LAYERS (4e)) x=inception_module(x,filters_1x1=256,filters_3x3_reduce=160,filters_3x3=320,filters_5x5_reduce=32,filters_5x5=128,filters_pool_proj=128,kernel_init=kernel_init,bias_init=bias_init,name='inception_4e') -x=MaxPool2D((3,3),padding='same',strides=(2,2),name='max_pool_4_3x3/2')(x) +x=MaxPool2D((3,3),padding='same',strides=(2,2),name='max_pool_4_3x3_2')(x) #BUILD MODULES 5a and 5b x=inception_module(x,filters_1x1=256,filters_3x3_reduce=160,filters_3x3=320,filters_5x5_reduce=32,filters_5x5=128,filters_pool_proj=128,kernel_init=kernel_init,bias_init=bias_init,name='inception_5a') x=inception_module(x,filters_1x1=384,filters_3x3_reduce=192,filters_3x3=384,filters_5x5_reduce=48,filters_5x5=128,filters_pool_proj=128,kernel_init=kernel_init,bias_init=bias_init,name='inception_5b') #BUILD THE CLASSIFIER -x=keras.layers.AveragePooling2D(pool_size=(2,2), strides=1, padding='valid',name='avg_pool_5_3x3/1')(x) +x=keras.layers.AveragePooling2D(pool_size=(2,2), strides=1, padding='valid',name='avg_pool_5_3x3_1')(x) x=Dropout(0.4)(x) x = Dense(1000, activation='relu', name='linear')(x) x=Flatten()(x) x=Dense(1,activation='sigmoid',name='output')(x) -#model = Model(input_layer, [x], name='googlenet') -#model.summary() -#checkpointer=ModelCheckpoint(filepath=model_weights_file,verbose=1,save_best_only=True) -#model.compile(loss='binary_crossentropy',optimizer=optimizer,metrics=['accuracy']) -#history=model.fit(train_ds, epochs=epochs, validation_data=val_ds,batch_size=batch_size,verbose=2,callbacks=[lr_schedule]) -#history=model.fit(train_ds, epochs=epochs, validation_data=val_ds,batch_size=batch_size,verbose=2,callbacks=[checkpointer]) - # Checkpointer checkpointer=ModelCheckpoint(filepath=model_name,monitor=metric,verbose=1,save_best_only=True) @@ -162,15 +133,15 @@ early_stopping=EarlyStopping(monitor='val_loss',mode='min',verbose=1,patience=pa model = Model(input_layer, [x, classifier_1, classifier_2], name='googlenet_complete_architecture') model.summary() -model.compile(loss=['binary_crossentropy', 'binary_crossentropy', 'binary_crossentropy'], loss_weights=[1, 0.3, 0.3], optimizer=optimizer, metrics=['accuracy']) -history = model.fit(train_ds, validation_data=val_ds, epochs=epochs, batch_size=batch_size, callbacks=[lr_schedule,checkpointer,early_stopping]) +model.compile(loss=['binary_crossentropy', 'binary_crossentropy', 'binary_crossentropy'], loss_weights=[1, 0.3, 0.3], optimizer=optimizer, metrics=['accuracy','accuracy','accuracy']) +history = model.fit(train_ds, validation_data=val_ds, epochs=epochs, batch_size=batch_size, callbacks=[tensorboard,lr_schedule,checkpointer,early_stopping]) #model.save(model_name) # plot the learning curves -pyplot.plot(history.history['output_accuracy'],label='train') -pyplot.plot(history.history['val_auxilliary_output_2_accuracy'],label='validation') -pyplot.legend() -pyplot.show() +# pyplot.plot(history.history['output_accuracy'],label='train') +# pyplot.plot(history.history['val_auxilliary_output_2_accuracy'],label='validation') +# pyplot.legend() +# pyplot.show() diff --git a/Models/model_sk_resnet.py b/Models/model_sk_resnet.py index a806988..8100242 100644 --- a/Models/model_sk_resnet.py +++ b/Models/model_sk_resnet.py @@ -5,29 +5,15 @@ from keras.optimizers import SGD from keras.optimizers import Adam from tensorflow.keras.callbacks import TensorBoard import keras -#from keras.models import Model from keras.src.legacy.preprocessing.image import ImageDataGenerator from keras.callbacks import ModelCheckpoint -#from tensorflow.keras.callbacks import ReduceLROnPlateau from tensorflow.keras.callbacks import EarlyStopping -#from keras import regularizers -#from keras import optimizers import numpy as np import tensorflow from resnet50 import * import math from time import time -# Notes: 10/23/2024 Achived 53.85% - -# installed -# py -mpip install numpy -# py -mpip show numpy -# py -mpip install tensorflow -# py -mpip show tensorflow -# py -mpip install matplotlib -# c:\users\skess\appdata\local\programs\python\python39\lib\site-packages - # Create a TensorBoard instance with the path to the logs directory. Before training, in Terminal, run tensorboard --logdir=logs/ tensorboard = TensorBoard(log_dir='logs/{}'.format(time())) diff --git a/Models/model_sk_resnet_v5.py b/Models/model_sk_resnet_v5.py new file mode 100644 index 0000000..a5b1820 --- /dev/null +++ b/Models/model_sk_resnet_v5.py @@ -0,0 +1,75 @@ +import sys +import os + +from keras.optimizers import SGD +from keras.optimizers import Adam +from tensorflow.keras.callbacks import TensorBoard +import keras +from keras.src.legacy.preprocessing.image import ImageDataGenerator +from keras.callbacks import ModelCheckpoint +from tensorflow.keras.callbacks import EarlyStopping +import numpy as np +import tensorflow +from resnet50 import * +import math +from time import time + + +# This is the new 2024 version +# CM10-31-2015_OI_10_1_MPBW_65_USEOVTRUE_V3.xlsm + +# Create a TensorBoard instance with the path to the logs directory. Before training, in Terminal, run tensorboard --logdir=logs/ +tensorboard = TensorBoard(log_dir='logs/{}'.format(time())) + +# RESNET50 ARCHITECTURE +image_size = (128, 128) + +model_name='resnet50_20241024_270.h5.keras' + +train_ds = tensorflow.keras.preprocessing.image_dataset_from_directory( + 'C:\\boneyard\\DeepLearning\\data', + + label_mode="binary", + subset="training", + validation_split=.20, + image_size=image_size, + color_mode='grayscale', + batch_size=32, + seed=50 +) +val_ds = tensorflow.keras.preprocessing.image_dataset_from_directory( + 'C:\\boneyard\\DeepLearning\\data', + label_mode="binary", + subset="validation", + validation_split=.20, + image_size=image_size, + color_mode='grayscale', + batch_size=32, + seed=50 +) + +input_shape=(128,128,1) +epochs=200 +initial_lrate=0.01 +batch_size=128 +patience_on_early_stop=epochs*.25 +metric='accuracy' + +#ReduceLROnPlateau +reduce_lr=tensorflow.keras.callbacks.ReduceLROnPlateau(monitor='val_loss',factor=.1,patience=5,min_lr=0.5e-6) + +#Optimizer +optimizer = keras.optimizers.Adam(learning_rate=initial_lrate, beta_1=0.9, beta_2=0.999,epsilon=1e-8) + +# Checkpointer +checkpointer=ModelCheckpoint(filepath=model_name,monitor=metric,verbose=1,save_best_only=True) + +#Early Stopping +early_stopping=EarlyStopping(monitor='val_loss',mode='min',verbose=1,patience=patience_on_early_stop) + +model=resnet50(input_shape,1) +model.summary() +model.compile(loss='binary_crossentropy',optimizer=optimizer,metrics=['accuracy']) +history = model.fit(train_ds, validation_data=val_ds, epochs=epochs, batch_size=batch_size, callbacks=[tensorboard,reduce_lr,early_stopping,checkpointer]) +# leave the following line commented out because the early stopping is in place +#model.save(model_name) diff --git a/Models/model_sk_vgg16.py b/Models/model_sk_vgg16.py index 1d18293..ef4df57 100644 --- a/Models/model_sk_vgg16.py +++ b/Models/model_sk_vgg16.py @@ -1,49 +1,32 @@ import sys import os -from keras.layers.pooling import MaxPool2D - -sys.path.append('c:/git/keras') -sys.path.append('c:/git/absl') - -# installed -# py -mpip install numpy -# py -mpip show numpy -# py -mpip install tensorflow -# py -mpip show tensorflow -# py -mpip install matplotlib -# c:\users\skess\appdata\local\programs\python\python39\lib\site-packages - +from keras.optimizers import SGD +from keras.optimizers import Adam +from tensorflow.keras.callbacks import TensorBoard import keras -from keras.optimizers import adam_v2 -from tensorflow.keras.optimizers import Adam -from keras.datasets import cifar10 -from keras.preprocessing.image import ImageDataGenerator -from keras.models import Sequential -from keras.utils import np_utils -from keras.layers import Dense -from keras.layers import Activation -from keras.layers import Flatten -from keras.layers import Dropout -from keras.layers import BatchNormalization -from keras.layers import Conv2D -from keras.layers import MaxPooling2D -from keras.layers import AveragePooling2D +from keras.src.legacy.preprocessing.image import ImageDataGenerator from keras.callbacks import ModelCheckpoint from tensorflow.keras.callbacks import EarlyStopping -from keras import regularizers -from keras import optimizers -from matplotlib import pyplot +from keras.layers import Flatten +from keras.layers import Dense +from keras.layers import MaxPool2D +from keras.layers import Dropout +from keras.models import Model +from keras.layers import AveragePooling2D +from keras.models import Sequential import numpy as np import tensorflow - +from inception_module import * +import math +from time import time # VGG 16 ARCHITECTIURE image_size = (128, 128) -model_name='vgg16' -model_weights_file='model_vgg16.h5' +#model_name='vgg16' +model_weights_file='model_vgg16.h5.keras' train_ds = tensorflow.keras.preprocessing.image_dataset_from_directory( 'C:\\boneyard\\DeepLearning\\data', @@ -76,6 +59,9 @@ learning_rate=.00001 batch_size=256 epochs=200 +# Create a TensorBoard instance with the path to the logs directory. Before training, in Terminal, run tensorboard --logdir=logs/ +tensorboard = TensorBoard(log_dir='logs/{}'.format(time())) + # Build the network based on AlexNet but using 6 convolutional and 1 Fully Connected # Inspired by VGGNet we will add a pooling layer after every two convolutional layers @@ -165,11 +151,8 @@ model.add(Dropout(.50)) #SIGMOID model.add(Dense(1,activation='sigmoid')) - model.summary() - - # File path to save the file. Only save the weights if there is an improvement. checkpointer=ModelCheckpoint(filepath=model_weights_file,verbose=1,save_best_only=True) @@ -178,7 +161,9 @@ checkpointer=ModelCheckpoint(filepath=model_weights_file,verbose=1,save_best_onl # Adam optimizer with learning rate .0001 #optimizer=adam_v2.Adam(learning_rate=10e-6) #optimizer=adam_v2.Adam(learning_rate=10e-6) -optimizer=adam_v2.Adam(learning_rate=learning_rate) +#optimizer=adam_v2.Adam(learning_rate=learning_rate) +#Optimizer +optimizer = keras.optimizers.Adam(learning_rate=learning_rate, beta_1=0.9, beta_2=0.999,epsilon=1e-8) # Cross entropy loss function #model.compile(loss='categorical_crossentropy', optimizer=optimizer,metrics=['accuracy']) @@ -190,17 +175,17 @@ model.compile(loss='binary_crossentropy', optimizer=optimizer,metrics=['accuracy # The callback to checkpointer saves the model wights. Other callback can be added...like a stopping function # history=model.fit_generator(dataGen.flow(x_train,y_train,batch_size=batch_size),callbacks=[checkpointer],steps_per_epoch=x_train.shape[0] // # batch_size,epochs=epochs,verbose=2,validation_data=(x_valid,y_valid)) -history=model.fit(train_ds, epochs=epochs, validation_data=val_ds,batch_size=batch_size,verbose=2,callbacks=[checkpointer]) +history=model.fit(train_ds, epochs=epochs, validation_data=val_ds,batch_size=batch_size,verbose=2,callbacks=[tensorboard,checkpointer]) # Here is the evaluation part -score=model.evaluate(x=train_ds,verbose=1) -print('\n', 'Test Accuracy:', score[1]) -model.save(model_name) +# score=model.evaluate(x=train_ds,verbose=1) +# print('\n', 'Test Accuracy:', score[1]) +# model.save(model_name) # This loads the best weights we saved from the fitting excercise and displays the accuracy of the model -model.load_weights(model_weights_file) -score=model.evaluate(train_ds,verbose=1) -print('\n', 'Test Accuracy:', score[1]) +# model.load_weights(model_weights_file) +# score=model.evaluate(train_ds,verbose=1) +# print('\n', 'Test Accuracy:', score[1]) # scores=model.evaluate(x_test,y_test,batch_size=128,verbose=1) # print('\nTest result: %.3f loss: %.3f' % (scores[1]*100,scores[0])) @@ -211,10 +196,10 @@ print('\n', 'Test Accuracy:', score[1]) # print(threshold_output) # plot the learning curves -pyplot.plot(history.history['accuracy'],label='train') -pyplot.plot(history.history['val_accuracy'],label='validation') -pyplot.legend() -pyplot.show() +# pyplot.plot(history.history['accuracy'],label='train') +# pyplot.plot(history.history['val_accuracy'],label='validation') +# pyplot.legend() +# pyplot.show()