if strategy == "curriculum": stages = args.pop_get("--stages", None) periods = args.pop_get("--periods", None) if stages is None: metadata = [{}] elif periods is None: metadata = [{"stage": int(s)} for s in stages.split(",")] else: metadata = [{ "stage": int(s), "period": int(p) } for s, p in zip(stages.split(","), periods.split(","))] # All remaining args are converted to overrides overrides = args.to_overrides() # Eval loop with distribute.scope(): for tg in targets: print("Strategy: {}".format(tg)) strategy = l2o.strategy.build_from_config(tg, overrides=overrides, info=show_info, debug=debug) for m in metadata: print("Checkpoint: {}".format(m)) for pr in problems: print("Problem: {}".format(pr)) config = get_eval_problem(pr) file = pr + suffix
vgpus = int(args.pop_get("--vgpu", default=1)) memory_limit = int(args.pop_get("--vram", default=12000)) gpus = args.pop_get("--gpus", default=None) distribute = create_distribute( vgpus=vgpus, memory_limit=memory_limit, gpus=gpus) # Pick up flags first initialize_only = args.pop_check("--initialize") # Default params strategy = args.pop_get("--strategy", "repeat") policy = args.pop_get("--policy", "rnnprop") default = get_default(strategy=strategy, policy=policy) # Build overrides presets = args.pop_get("--presets", "") overrides = [] if presets != "": for p in presets.split(','): overrides += get_preset(p) overrides += args.to_overrides() with distribute.scope(): # Build strategy strategy = l2o.build( default, overrides, directory=directory, strict=True) # Train if not --initialize if not initialize_only: strategy.train()