def loadModel(inputDir, trainData, model, LoadModel, sampleDatasets=None, removedVars=None): inputModel = '%s/KERAS_check_best_model.h5' % inputDir # inputModel = '%s/KERAS_model.h5'%inputDir inputWeights = '%s/KERAS_check_best_model_weights.h5' % inputDir from DeepJetCore.DataCollection import DataCollection traind = DataCollection() traind.readFromFile(trainData) traind.dataclass.regressiontargetclasses = range(0, NBINS) print traind.getNRegressionTargets() if (LoadModel): evalModel = load_model(inputModel, custom_objects=global_loss_list) shapes = traind.getInputShapes() else: shapes = traind.getInputShapes() train_inputs = [] for s in shapes: train_inputs.append(keras.layers.Input(shape=s)) evalModel = model(train_inputs, traind.getNClassificationTargets(), traind.getNRegressionTargets(), sampleDatasets, removedVars) evalModel.load_weights(inputWeights) return evalModel
def loadModel(inputDir, trainData, model, LoadModel, sampleDatasets=None, removedVars=None, adv=False): inputModel = '%s/KERAS_check_best_model.h5' % inputDir from DeepJetCore.DataCollection import DataCollection traind = DataCollection() traind.readFromFile(trainData) traind.dataclass.regressiontargetclasses = range(0, NBINS) print(traind.getNRegressionTargets()) if (LoadModel): evalModel = load_model(inputModel, custom_objects=global_loss_list) shapes = traind.getInputShapes() else: shapes = traind.getInputShapes() train_inputs = [] for s in shapes: train_inputs.append(keras.layers.Input(shape=s)) modelargs = {} if adv: modelargs.update({ 'nRegTargets': NBINS, 'discTrainable': True, 'advTrainable': True }) evalModel = model(train_inputs, traind.getNClassificationTargets(), traind.getNRegressionTargets(), sampleDatasets, removedVars, **modelargs) evalModel.load_weights(inputModel) return evalModel