def main(): args = make_parser().parse_args() ns = parse_cfg(os.getcwd() if not args.basedir else args.basedir, args.cfg) net, m = viz.load_trained_net(ns.model_name, ns.savedir, ns.progress) bw = (m.input_color == 'gray') normalize_stats = vmdata.get_normalization_stats(ns.root, bw=bw) assert bw, 'Illegal bw ({})'.format(bw) transform = BWCAEPreprocess(trans.Normalize(*normalize_stats), pool_scale=m.pool_scale, downsample_scale=ns.downsample_scale) logging.info('Complete initialization: config={}'.format(ns)) viz.visualize(ns.todir, ns.root, transform, normalize_stats, ns.visualize_indices, net, m, temperature=ns.temperature, bwth=ns.bwth, device=ns.device, batch_size=ns.batch_size)
import logging logging.basicConfig(level=logging.INFO, format='%(name)s %(asctime)s -- %(message)s', filename='main.{}.log'.format(_rid)) import sys import torchvision.transforms as trans import vmdata import ezfirstae.loaddata as ld import ezfirstae.train as train max_epoch = 1 root = vmdata.dataset_root(9, (8, 0, 0)) normalize = trans.Normalize(*vmdata.get_normalization_stats(root, bw=True)) transform = ld.PreProcTransform(normalize, pool_scale=8, downsample_scale=3) statdir = 'stat.{}'.format(_rid) savedir = 'save.{}'.format(_rid) device = 'cuda' if __name__ == '__main__': logger = logging.getLogger() logger.info('Begin training: model=ezfirstae.models.pred9_f1to8(no-attention)') with vmdata.VideoDataset(root, transform=transform, max_mmap=3, max_gzcache=100) as vdset: trainset, testset = ld.contiguous_partition_dataset(range(len(vdset)), (5, 1)) try: train.train_pred9_f1to8_no_attn(vdset, trainset, testset, savedir, statdir, device, max_epoch) except KeyboardInterrupt: logger.warning('User interrupt')