def main(): prepare_dir() # create the vocab dir and model dir network = create_model(vocab_sqrt) if opt.pre_model: network['model'].restore(opt.pre_model) log_number_of_parameters(network['model']) location_path = os.path.join(opt.vocabdir, opt.alloc_file) for i in range(len(opt.epochs)): train(network, location_path, i) location_path = get_k_round_location_path(i + 1) Communicator.finalize()
model_path = args['outputdir'] + "/models" if args['logdir'] is not None: log_dir = args['logdir'] if args['device'] is not None: cntk.device.try_set_default_device(cntk.device.gpu(args['device'])) data_path = args['datadir'] if not os.path.isdir(data_path): raise RuntimeError("Directory %s does not exist" % data_path) os.chdir(data_path) mean_data = os.path.join(data_path, 'ImageNet1K_mean.xml') train_data = os.path.join(data_path, 'train_map.txt') test_data = os.path.join(data_path, 'val_map.txt') bn_inception_train_and_eval(train_data, test_data, mean_data, epoch_size=args['epoch_size'], num_quantization_bits=args['quantized_bits'], max_epochs=args['num_epochs'], minibatch_size=args["minibatch_size"], restore=not args['restart'], log_to_file=args['logdir'], num_mbs_per_log=100, gen_heartbeat=True, scale_up=bool(args['scale_up'])) # Must call MPI finalize when process exit without exceptions Communicator.finalize()
if args['outputdir'] is not None: model_path = args['outputdir'] + "/models" if args['logdir'] is not None: log_dir = args['logdir'] if args['device'] is not None: cntk.device.try_set_default_device(cntk.device.gpu(args['device'])) data_path = args['datadir'] if not os.path.isdir(data_path): raise RuntimeError("Directory %s does not exist" % data_path) os.chdir(data_path) mean_data = os.path.join(data_path, 'CIFAR-10_mean.xml') train_data = os.path.join(data_path, 'train_map.txt') test_data = os.path.join(data_path, 'test_map.txt') bn_inception_train_and_eval(train_data, test_data, mean_data, epoch_size=args['epoch_size'], num_quantization_bits=args['quantized_bits'], max_epochs=args['num_epochs'], minibatch_size=args["minibatch_size"], restore=not args['restart'], log_to_file=args['logdir'], num_mbs_per_log=100, gen_heartbeat=True, scale_up=bool(args['scale_up']), profiling=args['profile']) Communicator.finalize()
def finalize(self): if self._distributed: Communicator.finalize()