Skip to content

Instantly share code, notes, and snippets.

@sgsg704
Created November 26, 2021 07:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sgsg704/843072a707b8bca0eae646291d2a5548 to your computer and use it in GitHub Desktop.
Save sgsg704/843072a707b8bca0eae646291d2a5548 to your computer and use it in GitHub Desktop.
from tensorflow.keras.models import Sequential
model = Sequential()
trainX.shape
model.add(Dense(4096,activation= 'relu',input_shape=(16,))) #dense layer 1
model.add(tf.keras.layers.BatchNormalization()) #BachNorm
model.add(tf.keras.layers.Dropout(0.25)) #Dropout
model.add(Dense(2048,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.25)) #Dropout
model.add(Dense(1024,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.25)) #Dropout
model.add(Dense(512,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.35)) #Dropout
model.add(Dense(256,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.25)) #Dropout
model.add(Dense(128,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.25)) #Dropout
model.add(Dense(64,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.35)) #Dropout
model.add(BatchNormalization())
model.add(Dense(32,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.25)) #Dropout
model.add(Dense(16,activation= 'relu'))
model.add(tf.keras.layers.Dropout(0.15)) #Dropout
model.add(Dense(5,activation= 'softmax'))
from tensorflow.keras.optimizers import RMSprop,Adam,SGD,Adagrad,Adadelta,Adamax,Nadam
optimizer = Adam(lr=0.001, beta_1=0.9, beta_2=0.99)
# Compile the model
model.compile(optimizer = optimizer , loss = 'categorical_crossentropy', metrics=["accuracy"])
trainX =trainX.values
trainY=trainY.values
valx,testx,valy,testy = train_test_split(trainX,trainY,test_size=0.25)
valx,testx,valy,testy = train_test_split(trainX,trainY,test_size=0.25)
testy = tf.keras.utils.to_categorical(testy, 5)
valy = tf.keras.utils.to_categorical(valy, 5)
class myCallback(tf.keras.callbacks.Callback):
def on_epoch_end(self, epoch, logs={}):
if(logs.get('val_accuracy')>0.37):
print("\nReached 40.0% accuracy so cancelling training!")
self.model.stop_training = True
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment