Python keras.backend.clear_session() Examples
The following are 30
code examples of keras.backend.clear_session().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
keras.backend
, or try the search function
.
Example #1
Source File: models.py From DigiX_HuaWei_Population_Age_Attribution_Predict with MIT License | 6 votes |
def CapsuleNet_v2(n_capsule = 10, n_routings = 5, capsule_dim = 16, n_recurrent=100, dropout_rate=0.2, l2_penalty=0.0001): K.clear_session() inputs = Input(shape=(200,)) x = Embedding(20000, 300, trainable=True)(inputs) x = SpatialDropout1D(dropout_rate)(x) x = Bidirectional( CuDNNGRU(n_recurrent, return_sequences=True, kernel_regularizer=l2(l2_penalty), recurrent_regularizer=l2(l2_penalty)))(x) x = PReLU()(x) x = Capsule( num_capsule=n_capsule, dim_capsule=capsule_dim, routings=n_routings, share_weights=True)(x) x = Flatten(name = 'concatenate')(x) x = Dropout(dropout_rate)(x) # fc = Dense(128, activation='sigmoid')(x) outputs = Dense(6, activation='softmax')(x) model = Model(inputs=inputs, outputs=outputs) model.compile(loss='categorical_crossentropy', optimizer='nadam', metrics=['accuracy']) return model
Example #2
Source File: models.py From DigiX_HuaWei_Population_Age_Attribution_Predict with MIT License | 6 votes |
def CapsuleNet(n_capsule = 10, n_routings = 5, capsule_dim = 16, n_recurrent=100, dropout_rate=0.2, l2_penalty=0.0001): K.clear_session() inputs = Input(shape=(170,)) x = Embedding(21099, 300, trainable=True)(inputs) x = SpatialDropout1D(dropout_rate)(x) x = Bidirectional( CuDNNGRU(n_recurrent, return_sequences=True, kernel_regularizer=l2(l2_penalty), recurrent_regularizer=l2(l2_penalty)))(x) x = PReLU()(x) x = Capsule( num_capsule=n_capsule, dim_capsule=capsule_dim, routings=n_routings, share_weights=True)(x) x = Flatten(name = 'concatenate')(x) x = Dropout(dropout_rate)(x) # fc = Dense(128, activation='sigmoid')(x) outputs = Dense(6, activation='softmax')(x) model = Model(inputs=inputs, outputs=outputs) model.compile(loss='categorical_crossentropy', optimizer='nadam', metrics=['accuracy']) return model
Example #3
Source File: helper.py From heatmaps with MIT License | 6 votes |
def helper_test(model): img_path = "../examples/dog.jpg" new_model = to_heatmap(model) # Loading the image img = image.load_img(img_path, target_size=(800, 800)) x = image.img_to_array(img) x = np.expand_dims(x, axis=0) x = preprocess_input(x) out = new_model.predict(x) s = "n02084071" # Imagenet code for "dog" ids = synset_to_dfs_ids(s) heatmap = out[0] if K.image_data_format() == 'channels_first': heatmap = heatmap[ids] heatmap = np.sum(heatmap, axis=0) else: heatmap = heatmap[:, :, ids] heatmap = np.sum(heatmap, axis=2) print(heatmap.shape) assert heatmap.shape[0] == heatmap.shape[1] K.clear_session()
Example #4
Source File: devol.py From devol with MIT License | 6 votes |
def _handle_broken_model(self, model, error): del model n = self.genome_handler.n_classes loss = log_loss(np.concatenate(([1], np.zeros(n - 1))), np.ones(n) / n) accuracy = 1 / n gc.collect() if K.backend() == 'tensorflow': K.clear_session() tf.reset_default_graph() print('An error occurred and the model could not train:') print(error) print(('Model assigned poor score. Please ensure that your model' 'constraints live within your computational resources.')) return loss, accuracy
Example #5
Source File: extractor.py From MMdnn with MIT License | 6 votes |
def inference(cls, architecture, files, path, image_path): if architecture in cls.thirdparty_map: model = keras.models.load_model(files) elif cls.sanity_check(architecture): model = cls.architecture_map[architecture]() else: model = None if model: import numpy as np func = TestKit.preprocess_func['keras'][architecture] img = func(image_path) img = np.expand_dims(img, axis=0) predict = model.predict(img) predict = np.squeeze(predict) K.clear_session() del model return predict else: return None
Example #6
Source File: extractor.py From MMdnn with MIT License | 6 votes |
def download(cls, architecture, path="./"): if architecture in cls.thirdparty_map: weight_file = download_file(cls.thirdparty_map[architecture], directory=path) return weight_file elif cls.sanity_check(architecture): output_filename = path + 'imagenet_{}.h5'.format(architecture) if os.path.exists(output_filename) == False: model = cls.architecture_map[architecture]() model.save(output_filename) print("Keras model {} is saved in [{}]".format(architecture, output_filename)) K.clear_session() del model return output_filename else: print("File [{}] existed, skip download.".format(output_filename)) return output_filename else: return None
Example #7
Source File: KerasClassifier.py From raster-deep-learning with Apache License 2.0 | 6 votes |
def initialize(self, model, model_as_file): K.clear_session() if model_as_file: with open(model, 'r') as f: self.json_info = json.load(f) else: self.json_info = json.loads(model) model_path = self.json_info['ModelFile'] if model_as_file and not os.path.isabs(model_path): model_path = os.path.abspath(os.path.join(os.path.dirname(model), model_path)) if arcpy.env.processorType != "GPU": os.environ['CUDA_VISIBLE_DEVICES'] = "-1" # load the trained model self.model = load_model(model_path) self.graph = tf.get_default_graph()
Example #8
Source File: train.py From keras-YOLOv3-mobilenet with MIT License | 5 votes |
def create_model(input_shape, anchors, num_classes, load_pretrained=True, freeze_body=2, weights_path='model_data/yolo_weights.h5'): '''create the training model''' K.clear_session() # get a new session image_input = Input(shape=(None, None, 3)) h, w = input_shape num_anchors = len(anchors) y_true = [Input(shape=(h//{0:32, 1:16, 2:8}[l], w//{0:32, 1:16, 2:8}[l], \ num_anchors//3, num_classes+5)) for l in range(3)] model_body = yolo_body(image_input, num_anchors//3, num_classes) print('Create YOLOv3 model with {} anchors and {} classes.'.format(num_anchors, num_classes)) if load_pretrained: model_body.load_weights(weights_path, by_name=True, skip_mismatch=True) print('Load weights {}.'.format(weights_path)) if freeze_body in [1, 2]: # Freeze darknet53 body or freeze all but 3 output layers. num = (185, len(model_body.layers)-3)[freeze_body-1] for i in range(num): model_body.layers[i].trainable = False print('Freeze the first {} layers of total {} layers.'.format(num, len(model_body.layers))) model_loss = Lambda(yolo_loss, output_shape=(1,), name='yolo_loss', arguments={'anchors': anchors, 'num_classes': num_classes, 'ignore_thresh': 0.5})( [*model_body.output, *y_true]) model = Model([model_body.input, *y_true], model_loss) return model
Example #9
Source File: test_sequential_model.py From DeepLearning_Wavelet-LSTM with MIT License | 5 votes |
def test_clone_sequential_model(): val_a = np.random.random((10, 4)) val_out = np.random.random((10, 4)) model = keras.models.Sequential() model.add(keras.layers.Dense(4, input_shape=(4,))) model.add(keras.layers.BatchNormalization()) model.add(keras.layers.Dropout(0.5)) model.add(keras.layers.Dense(4)) if K.backend() == 'tensorflow': # Everything should work in a new session. K.clear_session() # With placeholder creation new_model = keras.models.clone_model(model) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(val_a, val_out) # On top of new tensor input_a = keras.Input(shape=(4,)) new_model = keras.models.clone_model( model, input_tensors=input_a) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(val_a, val_out) # On top of new, non-Keras tensor input_a = keras.backend.variable(val_a) new_model = keras.models.clone_model( model, input_tensors=input_a) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(None, val_out)
Example #10
Source File: test_sequential_model.py From DeepLearning_Wavelet-LSTM with MIT License | 5 votes |
def test_clone_sequential_model(): val_a = np.random.random((10, 4)) val_out = np.random.random((10, 4)) model = keras.models.Sequential() model.add(keras.layers.Dense(4, input_shape=(4,))) model.add(keras.layers.BatchNormalization()) model.add(keras.layers.Dropout(0.5)) model.add(keras.layers.Dense(4)) if K.backend() == 'tensorflow': # Everything should work in a new session. K.clear_session() # With placeholder creation new_model = keras.models.clone_model(model) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(val_a, val_out) # On top of new tensor input_a = keras.Input(shape=(4,)) new_model = keras.models.clone_model( model, input_tensors=input_a) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(val_a, val_out) # On top of new, non-Keras tensor input_a = keras.backend.variable(val_a) new_model = keras.models.clone_model( model, input_tensors=input_a) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(None, val_out)
Example #11
Source File: train.py From yolo3_keras_Flag_Detection with MIT License | 5 votes |
def create_model(input_shape, anchors, num_classes, load_pretrained=False, freeze_body=False, weights_path='model_data/yolo_weights.h5'): K.clear_session() # get a new session image_input = Input(shape=(None, None, 3)) h, w = input_shape num_anchors = len(anchors) y_true = [Input(shape=(h // {0: 32, 1: 16, 2: 8}[l], w // {0: 32, 1: 16, 2: 8}[l], \ num_anchors // 3, num_classes + 5)) for l in range(3)] model_body = yolo_body(image_input, num_anchors // 3, num_classes) print('Create YOLOv3 model with {} anchors and {} classes.'.format(num_anchors, num_classes)) if load_pretrained: model_body.load_weights(weights_path, by_name=True, skip_mismatch=True) print('Load weights {}.'.format(weights_path)) if freeze_body: # Do not freeze 3 output layers. num = len(model_body.layers) - 7 for i in range(num): model_body.layers[i].trainable = False print('Freeze the first {} layers of total {} layers.'.format(num, len(model_body.layers))) model_loss = Lambda(yolo_loss, output_shape=(1,), name='yolo_loss', arguments={'anchors': anchors, 'num_classes': num_classes, 'ignore_thresh': 0.5})( [*model_body.output, *y_true]) model = Model([model_body.input, *y_true], model_loss) return model
Example #12
Source File: train.py From keras-YOLOv3-mobilenet with MIT License | 5 votes |
def create_tiny_model(input_shape, anchors, num_classes, load_pretrained=True, freeze_body=2, weights_path='model_data/tiny_yolo_weights.h5'): '''create the training model, for Tiny YOLOv3''' K.clear_session() # get a new session image_input = Input(shape=(None, None, 3)) h, w = input_shape num_anchors = len(anchors) y_true = [Input(shape=(h//{0:32, 1:16}[l], w//{0:32, 1:16}[l], \ num_anchors//2, num_classes+5)) for l in range(2)] model_body = tiny_yolo_body(image_input, num_anchors//2, num_classes) print('Create Tiny YOLOv3 model with {} anchors and {} classes.'.format(num_anchors, num_classes)) if load_pretrained: model_body.load_weights(weights_path, by_name=True, skip_mismatch=True) print('Load weights {}.'.format(weights_path)) if freeze_body in [1, 2]: # Freeze the darknet body or freeze all but 2 output layers. num = (20, len(model_body.layers)-2)[freeze_body-1] for i in range(num): model_body.layers[i].trainable = False print('Freeze the first {} layers of total {} layers.'.format(num, len(model_body.layers))) model_loss = Lambda(yolo_loss, output_shape=(1,), name='yolo_loss', arguments={'anchors': anchors, 'num_classes': num_classes, 'ignore_thresh': 0.7})( [*model_body.output, *y_true]) model = Model([model_body.input, *y_true], model_loss) return model
Example #13
Source File: retain_evaluation.py From retain-keras with Apache License 2.0 | 5 votes |
def import_model(path): """Import model from given path and assign it to appropriate devices""" K.clear_session() config = tf.ConfigProto(allow_soft_placement=True, log_device_placement=False) config.gpu_options.allow_growth = True tfsess = tf.Session(config=config) K.set_session(tfsess) model = load_model(path, custom_objects={'FreezePadding':FreezePadding, 'FreezePadding_Non_Negative':FreezePadding_Non_Negative}) if len(get_available_gpus()) > 1: model = make_parallel(model) return model
Example #14
Source File: train_Mobilenet.py From keras-YOLOv3-mobilenet with MIT License | 5 votes |
def create_tiny_model(input_shape, anchors, num_classes, load_pretrained=True, freeze_body=2, weights_path='model_data/tiny_yolo_weights.h5'): '''create the training model, for Tiny YOLOv3''' K.clear_session() # get a new session image_input = Input(shape=(None, None, 3)) h, w = input_shape num_anchors = len(anchors) y_true = [Input(shape=(h//{0:32, 1:16}[l], w//{0:32, 1:16}[l], \ num_anchors//2, num_classes+5)) for l in range(2)] model_body = tiny_yolo_body(image_input, num_anchors//2, num_classes) print('Create Tiny YOLOv3 model with {} anchors and {} classes.'.format(num_anchors, num_classes)) if load_pretrained: model_body.load_weights(weights_path, by_name=True, skip_mismatch=True) print('Load weights {}.'.format(weights_path)) if freeze_body in [1, 2]: # Freeze the darknet body or freeze all but 2 output layers. num = (20, len(model_body.layers)-2)[freeze_body-1] for i in range(num): model_body.layers[i].trainable = False print('Freeze the first {} layers of total {} layers.'.format(num, len(model_body.layers))) model_loss = Lambda(yolo_loss, output_shape=(1,), name='yolo_loss', arguments={'anchors': anchors, 'num_classes': num_classes, 'ignore_thresh': 0.7})( [*model_body.output, *y_true]) model = Model([model_body.input, *y_true], model_loss) return model
Example #15
Source File: MaskRCNN.py From raster-deep-learning with Apache License 2.0 | 5 votes |
def initialize(self, model, model_as_file): K.clear_session() if model_as_file: with open(model, 'r') as f: self.json_info = json.load(f) else: self.json_info = json.loads(model) model_path = self.json_info['ModelFile'] if model_as_file and not os.path.isabs(model_path): model_path = os.path.abspath(os.path.join(os.path.dirname(model), model_path)) config_module = self.json_info['ModelConfiguration']['Config'] if not os.path.isabs(config_module): config_module = os.path.abspath(os.path.join(os.path.dirname(model), config_module)) sys.path.append(os.path.dirname(config_module)) config_module_name = os.path.basename(config_module) if config_module_name in sys.modules: del sys.modules[config_module_name] self.config = getattr(importlib.import_module(config_module_name), 'config') architecture_module = self.json_info['ModelConfiguration']['Architecture'] if not os.path.isabs(architecture_module): architecture_module = os.path.abspath(os.path.join(os.path.dirname(model), architecture_module)) sys.path.append(os.path.dirname(architecture_module)) architecture_module_name = os.path.basename(architecture_module) if (architecture_module_name != config_module_name) and (architecture_module_name in sys.modules): del sys.modules[architecture_module_name] self.model = getattr(importlib.import_module(architecture_module_name), 'model') self.model.load_weights(model_path, by_name=True) self.graph = tf.get_default_graph()
Example #16
Source File: evaluate.py From soweego with GNU General Public License v3.0 | 5 votes |
def _single_k_fold(classifier, catalog, entity, k, dir_io, **kwargs): predictions, test_set = None, [] dataset, positive_samples_index = train.build_training_set( catalog, entity, dir_io ) k_fold, binary_target_variables = utils.prepare_stratified_k_fold( k, dataset, positive_samples_index ) for train_index, test_index in k_fold.split( dataset, binary_target_variables ): training, test = dataset.iloc[train_index], dataset.iloc[test_index] test_set.append(test) model = utils.init_model(classifier, dataset.shape[1], **kwargs) model.fit(training, positive_samples_index & training.index) preds = model.predict(test) K.clear_session() # Free memory if predictions is None: predictions = preds else: predictions |= preds test_set = concat(test_set) return ( predictions, _compute_performance( positive_samples_index & test_set.index, predictions, len(test_set) ), )
Example #17
Source File: train.py From soweego with GNU General Public License v3.0 | 5 votes |
def cli(ctx, classifier, catalog, entity, tune, k_folds, dir_io): """Train a supervised linker. Build the training set relevant to the given catalog and entity, then train a model with the given classification algorithm. """ kwargs = utils.handle_extra_cli_args(ctx.args) if kwargs is None: sys.exit(1) actual_classifier = constants.CLASSIFIERS[classifier] model = execute( actual_classifier, catalog, entity, tune, k_folds, dir_io, **kwargs ) outfile = os.path.join( dir_io, constants.LINKER_MODEL.format(catalog, entity, actual_classifier), ) os.makedirs(os.path.dirname(outfile), exist_ok=True) joblib.dump(model, outfile) LOGGER.info("%s model dumped to '%s'", classifier, outfile) # Free memory in case of neural networks or # ensembles which use them: # can be done only after the model dump if actual_classifier in ( keys.SINGLE_LAYER_PERCEPTRON, keys.MULTI_LAYER_PERCEPTRON, keys.VOTING_CLASSIFIER, keys.GATED_CLASSIFIER, keys.STACKED_CLASSIFIER, ): K.clear_session() # Clear the TensorFlow graph LOGGER.info('Training completed')
Example #18
Source File: cnn.py From material_recommender with GNU General Public License v3.0 | 5 votes |
def predict(shader_values): K.clear_session() json_path = os.path.join(os.path.dirname(__file__), 'cnn_architecture.json') with open(json_path, 'r') as json_file: json_model = json_file.read() model = model_from_json(json_model) weights_path = os.path.join(os.path.dirname(__file__), 'cnn_weights.h5') model.load_weights(weights_path) model.compile(loss='mse', optimizer='adam', metrics=['mse']) x = _process_shader_values(shader_values) predicted = model.predict(x) return predicted
Example #19
Source File: conversion_imagenet.py From MMdnn with MIT License | 5 votes |
def keras_emit(original_framework, architecture_name, architecture_path, weight_path, test_input_path): from mmdnn.conversion.keras.keras2_emitter import Keras2Emitter # IR to code converted_file = TestModels.tmpdir + original_framework + '_keras_' + architecture_name + "_converted" converted_file = converted_file.replace('.', '_') emitter = Keras2Emitter((architecture_path, weight_path)) emitter.run(converted_file + '.py', None, 'test') del emitter del Keras2Emitter # import converted model model_converted = imp.load_source('KerasModel', converted_file + '.py').KitModel(weight_path) original_framework = checkfrozen(original_framework) if 'rnn' not in architecture_name: func = TestKit.preprocess_func[original_framework][architecture_name] img = func(test_input_path) input_data = np.expand_dims(img, 0) else: input_data = np.load(test_input_path) predict = model_converted.predict(input_data) if original_framework == "darknet": converted_predict = None else: converted_predict = np.squeeze(predict) del model_converted del sys.modules['KerasModel'] import keras.backend as K K.clear_session() os.remove(converted_file + '.py') return converted_predict
Example #20
Source File: test_sequential_model.py From DeepLearning_Wavelet-LSTM with MIT License | 5 votes |
def test_clone_sequential_model(): val_a = np.random.random((10, 4)) val_out = np.random.random((10, 4)) model = keras.models.Sequential() model.add(keras.layers.Dense(4, input_shape=(4,))) model.add(keras.layers.BatchNormalization()) model.add(keras.layers.Dropout(0.5)) model.add(keras.layers.Dense(4)) if K.backend() == 'tensorflow': # Everything should work in a new session. K.clear_session() # With placeholder creation new_model = keras.models.clone_model(model) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(val_a, val_out) # On top of new tensor input_a = keras.Input(shape=(4,)) new_model = keras.models.clone_model( model, input_tensors=input_a) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(val_a, val_out) # On top of new, non-Keras tensor input_a = keras.backend.variable(val_a) new_model = keras.models.clone_model( model, input_tensors=input_a) new_model.compile('rmsprop', 'mse') new_model.train_on_batch(None, val_out)
Example #21
Source File: train_Mobilenet.py From keras-YOLOv3-mobilenet with MIT License | 5 votes |
def create_model(input_shape, anchors, num_classes, load_pretrained=False, freeze_body=2, weights_path='model_data/yolo_weights.h5'): '''create the training model''' K.clear_session() # get a new session image_input = Input(shape=(None, None, 3)) h, w = input_shape num_anchors = len(anchors) y_true = [Input(shape=(h//{0:32, 1:16, 2:8}[l], w//{0:32, 1:16, 2:8}[l], \ num_anchors//3, num_classes+5)) for l in range(3)] model_body = yolo_body(image_input, num_anchors//3, num_classes) print('Create YOLOv3 model with {} anchors and {} classes.'.format(num_anchors, num_classes)) if load_pretrained: model_body.load_weights(weights_path, by_name=True, skip_mismatch=True) print('Load weights {}.'.format(weights_path)) if freeze_body in [1, 2]: # Freeze darknet53 body or freeze all but 3 output layers. num = (185, len(model_body.layers)-3)[freeze_body-1] for i in range(num): model_body.layers[i].trainable = False print('Freeze the first {} layers of total {} layers.'.format(num, len(model_body.layers))) print(model_body.output) model_loss = Lambda(yolo_loss, output_shape=(1,), name='yolo_loss', arguments={'anchors': anchors, 'num_classes': num_classes, 'ignore_thresh': 0.5})( [*model_body.output, *y_true]) model = Model([model_body.input, *y_true], model_loss) return model
Example #22
Source File: retain_interpretations.py From retain-keras with Apache License 2.0 | 5 votes |
def import_model(path): """Import model from given path and assign it to appropriate devices""" K.clear_session() config = tf.ConfigProto(allow_soft_placement=True, log_device_placement=False) config.gpu_options.allow_growth = True tfsess = tf.Session(config=config) K.set_session(tfsess) model = load_model(path, custom_objects={'FreezePadding':FreezePadding, 'FreezePadding_Non_Negative':FreezePadding_Non_Negative}) model_with_attention = Model(model.inputs, model.outputs +\ [model.get_layer(name='softmax_1').output,\ model.get_layer(name='beta_dense_0').output]) return model, model_with_attention
Example #23
Source File: keras2_parser.py From MMdnn with MIT License | 5 votes |
def gen_IR(self): for layer in self.keras_graph.topological_sort: current_node = self.keras_graph.get_node(layer) node_type = current_node.type if hasattr(self, "rename_" + node_type): func = getattr(self, "rename_" + node_type) func(current_node) else: print("KerasParser has not supported operator [%s]." % (node_type)) self.rename_UNKNOWN(current_node) _K.clear_session()
Example #24
Source File: model.py From models with MIT License | 5 votes |
def __init__(self, model_file): self.model_file = model_file K.clear_session() # restart session self.model = load_model(model_file, compile=False) self.contrib_fns = {}
Example #25
Source File: train.py From keras-yolov3-KF-objectTracking with MIT License | 5 votes |
def create_tiny_model(input_shape, anchors, num_classes, load_pretrained=True, freeze_body=2, weights_path='model_data/tiny_yolo_weights.h5'): '''create the training model, for Tiny YOLOv3''' K.clear_session() # get a new session image_input = Input(shape=(None, None, 3)) h, w = input_shape num_anchors = len(anchors) y_true = [Input(shape=(h//{0:32, 1:16}[l], w//{0:32, 1:16}[l], \ num_anchors//2, num_classes+5)) for l in range(2)] model_body = tiny_yolo_body(image_input, num_anchors//2, num_classes) print('Create Tiny YOLOv3 model with {} anchors and {} classes.'.format(num_anchors, num_classes)) if load_pretrained: model_body.load_weights(weights_path, by_name=True, skip_mismatch=True) print('Load weights {}.'.format(weights_path)) if freeze_body in [1, 2]: # Freeze the darknet body or freeze all but 2 output layers. num = (20, len(model_body.layers)-2)[freeze_body-1] for i in range(num): model_body.layers[i].trainable = False print('Freeze the first {} layers of total {} layers.'.format(num, len(model_body.layers))) model_loss = Lambda(yolo_loss, output_shape=(1,), name='yolo_loss', arguments={'anchors': anchors, 'num_classes': num_classes, 'ignore_thresh': 0.7})( [*model_body.output, *y_true]) model = Model([model_body.input, *y_true], model_loss) return model
Example #26
Source File: train.py From keras-yolov3-KF-objectTracking with MIT License | 5 votes |
def create_model(input_shape, anchors, num_classes, load_pretrained=True, freeze_body=2, weights_path='model_data/yolo_weights.h5'): '''create the training model''' K.clear_session() # get a new session image_input = Input(shape=(None, None, 3)) h, w = input_shape num_anchors = len(anchors) y_true = [Input(shape=(h//{0:32, 1:16, 2:8}[l], w//{0:32, 1:16, 2:8}[l], \ num_anchors//3, num_classes+5)) for l in range(3)] model_body = yolo_body(image_input, num_anchors//3, num_classes) print('Create YOLOv3 model with {} anchors and {} classes.'.format(num_anchors, num_classes)) if load_pretrained: model_body.load_weights(weights_path, by_name=True, skip_mismatch=True) print('Load weights {}.'.format(weights_path)) if freeze_body in [1, 2]: # Freeze darknet53 body or freeze all but 3 output layers. num = (185, len(model_body.layers)-3)[freeze_body-1] for i in range(num): model_body.layers[i].trainable = False print('Freeze the first {} layers of total {} layers.'.format(num, len(model_body.layers))) model_loss = Lambda(yolo_loss, output_shape=(1,), name='yolo_loss', arguments={'anchors': anchors, 'num_classes': num_classes, 'ignore_thresh': 0.5})( [*model_body.output, *y_true]) model = Model([model_body.input, *y_true], model_loss) return model
Example #27
Source File: learn_and_fuzz_3_sample_fuzz.py From iust_deep_fuzz with MIT License | 5 votes |
def __init__(self, maxlen=85, step=1, batch_size=128): """ :param maxlen: :param step: :param batch_size: """ # os.chdir('./') # learning hyper-parameters self.maxlen = maxlen self.step = step self.batch_size = batch_size self.text_all = '' self.text_training = '' self.text_validation = '' self.text_test = '' self.chars = None self.char_indices = None self.indices_char = None # self.model = None K.reset_uids() K.clear_session() self.load_dataset()
Example #28
Source File: data_neural_fuzz_pdf_obj.py From iust_deep_fuzz with MIT License | 5 votes |
def __init__(self, maxlen=85, step=1, batch_size=128): """ :param maxlen: :param step: :param batch_size: """ # os.chdir('./') # learning hyper-parameters self.maxlen = maxlen self.step = step self.batch_size = batch_size self.text_all = '' self.text_training = '' self.text_validation = '' self.text_test = '' self.chars = None self.char_indices = None self.indices_char = None # self.model = None K.reset_uids() K.clear_session() self.load_dataset()
Example #29
Source File: metadata_neural_fuzz_pdf_obj.py From iust_deep_fuzz with MIT License | 5 votes |
def __init__(self, maxlen=85, step=1, batch_size=128): """ :param maxlen: :param step: :param batch_size: """ # os.chdir('./') # learning hyper-parameters self.maxlen = maxlen self.step = step self.batch_size = batch_size self.text_all = '' self.text_training = '' self.text_validation = '' self.text_test = '' self.chars = None self.char_indices = None self.indices_char = None # self.model = None K.reset_uids() K.clear_session() self.load_dataset()
Example #30
Source File: neural_fuzz_pdf_obj.py From iust_deep_fuzz with MIT License | 5 votes |
def __init__(self, maxlen=85, step=1, batch_size=128): """ :param maxlen: :param step: :param batch_size: """ # os.chdir('./') # learning hyper-parameters self.maxlen = maxlen self.step = step self.batch_size = batch_size self.text_all = '' self.text_training = '' self.text_validation = '' self.text_test = '' self.chars = None self.char_indices = None self.indices_char = None # self.model = None K.reset_uids() K.clear_session() self.load_dataset()