Skip to content

Instantly share code, notes, and snippets.

View Devanshchowdhury2212's full-sized avatar

Devansh chowdhury Devanshchowdhury2212

View GitHub Profile
model.evaluate(train_features, train_labels)
model.evaluate(validation_features, validation_labels)
model.evaluate(test_features, test_labels)
def get_model():
keras.backend.clear_session()
model = keras.models.Sequential()
model.add(keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(268, 650, 1),padding='same'))
model.add(keras.layers.MaxPooling2D((2, 2),padding='same'))
model.add(keras.layers.Conv2D(32, (3, 3), activation='relu',padding='same'))
model.add(keras.layers.MaxPooling2D((2, 2),padding='same'))
model.add(keras.layers.Conv2D(64, (3, 3), activation='relu',padding='same'))
model.add(keras.layers.MaxPooling2D((2, 2),padding='same'))
model.add(keras.layers.Conv2D(64, (3, 3), activation='relu',padding='same'))
datagen_scale = keras.preprocessing.image.ImageDataGenerator(rescale=1/255)
train_generator= datagen_scale.flow_from_dataframe(train,x_col ='path',y_col='label',target_size=(288,384),batch_size=48,shuffle=True)
valid_generator= datagen_scale.flow_from_dataframe(val,x_col ='path',y_col='label',target_size=(288,384),shuffle=False)
test_generator = datagen_scale.flow_from_dataframe(test,x_col ='path',y_col='label',target_size=(288,384),shuffle=False)
model.evaluate(train_generator)
model.evaluate(valid_generator)
model.evaluate(test_generator)
def get_model(dim = (288,384,3)):
keras.backend.clear_session()
model = keras.models.Sequential()
model.add(keras.layers.Conv2D(32,(3,3),activation='relu',input_shape=dim))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Dropout(.4))
model.add(keras.layers.Conv2D(32,(3,3),activation='relu',padding="valid"))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Dropout(.4))
model.add(keras.layers.Conv2D(64,(3,3),activation='relu',padding="valid"))
def get_model(dim = (224,224,3)):
keras.backend.clear_session()
model = keras.models.Sequential()
model.add(keras.layers.Conv2D(32,(3,3),activation='relu',input_shape=dim))
model.add(keras.layers.Conv2D(32,(3,3),activation='relu',padding="valid",))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Dropout(.4))
model.add(keras.layers.Conv2D(32,(5,5),activation='relu',padding="valid"))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Dropout(.4))
datagen_scale = keras.preprocessing.image.ImageDataGenerator(rescale=1/255)
train_generator= datagen_scale.flow_from_dataframe(train,x_col ='filepaths',y_col='labels',target_size=(224,224),batch_size=64,shuffle=True)
valid_generator= datagen_scale.flow_from_dataframe(val,x_col ='filepaths',y_col='labels',target_size=(224,224),shuffle=False)
test_generator = datagen_scale.flow_from_dataframe(test,x_col ='filepaths',y_col='labels',target_size=(224,224),shuffle=False)
model.evaluate(train_generator)
model.evaluate(valid_generator)
model.evaluate(test_generator)
def get_model(dim = (224,224,3)):
keras.backend.clear_session()
model = keras.models.Sequential()
model.add(keras.layers.Conv2D(32,(3,3),activation='relu',input_shape=dim))
model.add(keras.layers.Conv2D(32,(3,3),activation='relu',padding="valid",))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Dropout(.4))
model.add(keras.layers.Conv2D(32,(5,5),activation='relu',padding="valid"))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Dropout(.4))
keras.backend.clear_session()
model = keras.models.Sequential()
model.add(keras.layers.Embedding(vocab_size, 32))
model.add(keras.layers.LSTM(3,recurrent_dropout=.5,dropout=.5,return_sequences=False,kernel_regularizer=keras.regularizers.l2()))
model.add(keras.layers.Dense(1, activation='sigmoid'))
model.summary()
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
all_callbacks = [keras.callbacks.EarlyStopping(patience = 1,min_delta=.02,restore_best_weights=True),
keras.callbacks.ModelCheckpoint('LSTM.h5',save_best_only=True,monitor='val_accuracy')]
history = model.fit(X_train,y_train,validation_data= (X_val,y_val),batch_size = 64,epochs=10,callbacks=all_callbacks)
sample_pred = (model.predict(X_test_transformed_seq[:5])>.5).astype(int)
sample_text = X_test[:5]
truth = y_test[:5]
display(pd.DataFrame(zip(sample_pred,sample_text,truth),columns=['Model Predictions','TEXT','Truth Label']))
sequence = tokenizer.texts_to_sequences(X_test_transformed)
X_test_transformed_seq= keras.preprocessing.sequence.pad_sequences(sequence, maxlen=150)
model.evaluate(X_test_transformed_seq,y_test)