def create(cls, args, train='train.pt', validation='validation.pt'): enl, dnl = AutoEncoder.get_non_linearity(args.nonlinearity) return Trainer(AutoEncoder(encoder_sizes=args.encoder, encoding_dimension=args.dimension, encoder_non_linearity=enl, decoder_non_linearity=dnl, decoder_sizes=args.decoder), DataLoader(load(join(args.data, train)), batch_size=args.batch, shuffle=True, num_workers=cpu_count()), DataLoader(load(join(args.data, validation)), batch_size=32, shuffle=False, num_workers=cpu_count()), lr=args.lr, weight_decay=args.weight_decay, path=args.data)
def create_model(loaded): ''' Create Autoencoder from data that has previously been saved Parameters: loaded A model that has been loaded from a file Returns: newly created Autoencoder ''' old_args = loaded['args_dict'] enl, dnl = AutoEncoder.get_non_linearity(old_args['nonlinearity']) product = AutoEncoder(encoder_sizes=old_args['encoder'], encoding_dimension=old_args['dimension'], encoder_non_linearity=enl, decoder_non_linearity=dnl, decoder_sizes=old_args['decoder']) product.load_state_dict(loaded['model_state_dict']) return product