def train_model(data_dir, weights_file="weights.hdf5", epochs=50, batch_size=20): #create data generator train_data_path = os.path.join(data_dir, "train/samples") train_label_path = os.path.join(data_dir, "train/labels") val_data_path = os.path.join(data_dir, "val/samples") val_label_path = os.path.join(data_dir, "val/labels") num_train = utils.get_num_samples(train_data_path) num_validate = utils.get_num_samples(val_data_path) print(num_train) train_gen = create_samples.generate_samples(train_data_path, train_label_path, batch_size) val_gen = create_samples.generate_samples(val_data_path, val_label_path, batch_size) first_batch = next(train_gen) param_names = ["osc_wave", "master_val", "slave_val", "xfade_val"] # Instantiate the model model, serial_model = models.setup_model(first_batch[0], param_names, weights_file=weights_file) save_best_only = True checkpointer = multi_gpu.MultiGPUModelCheckpoint( filepath=weights_file, verbose=1, save_best_only=save_best_only, serial_model=serial_model, period=1, class_names=param_names) #train the model model.fit_generator(generator=train_gen, validation_data=val_gen, steps_per_epoch=num_train / batch_size, validation_steps=num_validate / batch_size)
def __init__(self, path): self.path = path self.num_samples = utils.get_num_samples(BIN, path) self.num_sectors = int(self.num_samples / 588) if self.num_samples % 588 != 0: msg = "%s not from CD (%i samples)\n" % (path, self.num_samples) raise NotFromCDError(msg) self.ar_entries = [] # key is offset, value is list of confidence levels self.exact_matches = {} self.possible_matches = {}
def __init__(self, path): self.path = path self.num_samples = utils.get_num_samples(BIN, path) self.num_sectors = int(self.num_samples / 588) if self.num_samples % 588 != 0: msg = "%s not from CD (%i samples)\n" % \ (path, self.num_samples) raise NotFromCDError(msg) self.ar_entries = [] # key is offset, value is list of confidence levels self.exact_matches = {} self.possible_matches = {}
def main(options): utils.check_dependencies(BIN, REQUIRED) sources = [dict(path=p) for p in options.paths] for s in sources: s['num_samples'] = utils.get_num_samples(BIN, s['path']) if s['num_samples'] % 588 != 0: msg = "%s not from CD (%i samples)\n" % (s['path'], s['num_samples']) raise utils.NotFromCDError(msg) output_dir = fix_offset(sources, options.offset, options.format, options.verbose) print_summary(sources, output_dir) return 0