Ejemplo n.º 1
0
def main(args):
    cfg = vars(args)
    cfg["session_dir"] = create_session_dir("./sessions")
    init_session_log(cfg)
    m_gen = Generator(z_dim=cfg["z_dim"],
                      num_layers=cfg["num_layers"],
                      num_base_chans=cfg["num_base_chans"])
    m_disc = Discriminator(num_base_chans=cfg["num_base_chans"],
                           num_layers=cfg["num_layers"] - 1)
    logging.info("Generator:\n")
    logging.info(str(m_gen))
    logging.info("\n\n")
    logging.info("Discriminator:\n")
    logging.info(str(m_disc))
    logging.info("\n\n")
    train_loader = get_loader(cfg)
    make_first_batch(train_loader, cfg)

    cudev = cfg["cuda"]
    if cudev >= 0 and not torch.cuda.is_available():
        raise RuntimeError("CUDA device specified but CUDA not available")
    if cudev >= 0:
        m_gen.cuda(cudev)
        m_disc.cuda(cudev)

    betas = (cfg["beta1"], cfg["beta2"])
    optD = torch.optim.Adam(m_disc.parameters(), lr=cfg["lr_d"], betas=betas)
    optG = torch.optim.Adam(m_gen.parameters(), lr=cfg["lr_g"], betas=betas)

    train(m_gen, m_disc, train_loader, (optD, optG), cfg)
Ejemplo n.º 2
0
def main(args):
    cfg = vars(args)
    cfg["session_dir"] = create_session_dir("./sessions")
    m_gen = Generator(cfg["z_dim"])
    m_disc = Discriminator()
    if len( cfg["resume_path"] ) > 0:
        cfg["session_dir"] = os.path.dirname( os.path.abspath(\
                cfg["resume_path"] ) )
        start_epoch = load_models(m_gen, m_disc, cfg)
        filemode = "a"
    else:
        start_epoch = 0
        filemode = "w"
    init_session_log(cfg, filemode)
    train_loader = get_loader(cfg)
    cudev = cfg["cuda"]
    if cudev >= 0 and not torch.cuda.is_available():
        raise RuntimeError("CUDA device specified but CUDA not available")
    if cudev >= 0:
        m_gen.cuda(cudev)
        m_disc.cuda(cudev)
    optG = torch.optim.SGD([{"params" : m_gen.parameters()}], lr=cfg["lr_g"],
        momentum=cfg["momentum"])
    optD = torch.optim.SGD([{"params" : m_disc.parameters()}], lr=cfg["lr_d"],
        momentum=cfg["momentum"])
    train(m_gen, m_disc, train_loader, (optD,optG), cfg, start_epoch)
def main(args):
    cfg = vars(args)
    cfg["session_dir"] = create_session_dir("./sessions")
    start_epoch = 0
    filemode = "w"
    init_session_log(cfg, filemode)
    train_loader, test_loader = get_loaders(cfg)
    cudev = cfg["cuda"]
    if cudev >= 0 and not torch.cuda.is_available():
        raise RuntimeError("CUDA device specified but CUDA not available")
    cnn = SimpleCNN()
    if cudev >= 0:
        cnn = cnn.cuda(cudev)
    optimizer = torch.optim.SGD([{
        "params": cnn.parameters()
    }],
                                lr=cfg["lr"],
                                momentum=cfg["momentum"])
    train(cnn, (train_loader, test_loader), optimizer, cfg)
Ejemplo n.º 4
0
def main(args):
    cfg = vars(args)
    cfg["session_dir"] = create_session_dir("./sessions")
    init_session_log(cfg)

    train(cfg)