コード例 #1
0
ファイル: main.py プロジェクト: augustdemi/jcvae
train_data_size = len(train_data)

BIAS_TRAIN = (train_data_size - 1) / (args.batch_size - 1)
BIAS_TEST = (test_data.dataset.__len__() - 1) / (args.batch_size - 1)


def cuda_tensors(obj):
    for attr in dir(obj):
        value = getattr(obj, attr)
        if isinstance(value, torch.Tensor):
            setattr(obj, attr, value.cuda())


encA = EncoderA(args.wseed, zPrivate_dim=args.n_private)
decA = DecoderA(args.wseed, zPrivate_dim=args.n_private)
encB = EncoderB(args.wseed)
decB = DecoderB(args.wseed)
if CUDA:
    encA.cuda()
    decA.cuda()
    encB.cuda()
    decB.cuda()
    cuda_tensors(encA)
    cuda_tensors(decA)
    cuda_tensors(encB)
    cuda_tensors(decB)

optimizer = torch.optim.Adam(list(encB.parameters()) +
                             list(decB.parameters()) +
                             list(encA.parameters()) + list(decA.parameters()),
                             lr=args.lr)
コード例 #2
0
ファイル: main.py プロジェクト: augustdemi/jcvae
    batch_size=args.batch_size, shuffle=True)

print('>>> data loaded')
print('train: ', len(train_data.dataset))
print('test: ', len(test_data.dataset))

def cuda_tensors(obj):
    for attr in dir(obj):
        value = getattr(obj, attr)
        if isinstance(value, torch.Tensor):
            setattr(obj, attr, value.cuda())


encA = EncoderA(args.wseed, zShared_dim=args.n_shared)
decA = DecoderA(args.wseed, zShared_dim=args.n_shared)
encB = EncoderB(args.wseed, zShared_dim=args.n_shared)
decB = DecoderB(args.wseed, zShared_dim=args.n_shared)
if CUDA:
    encA.cuda()
    decA.cuda()
    encB.cuda()
    decB.cuda()
    cuda_tensors(encA)
    cuda_tensors(decA)
    cuda_tensors(encB)
    cuda_tensors(decB)

optimizer = torch.optim.Adam(
    list(encB.parameters()) + list(decB.parameters()) + list(encA.parameters()) + list(decA.parameters()),
    lr=args.lr)
コード例 #3
0
        value = getattr(obj, attr)
        if isinstance(value, torch.Tensor):
            setattr(obj, attr, value.cuda())


encA = EncoderA(args.wseed,
                zPrivate_dim=args.n_private,
                zShared_dim=args.n_shared)
decA = DecoderA(args.wseed,
                zPrivate_dim=args.n_private,
                zShared_dim=args.n_shared)

encB = []
decB = []
for _ in range(N_ATTR):
    encB.append(EncoderB(args.wseed, num_attr=1, zShared_dim=args.n_shared))
    decB.append(DecoderB(args.wseed, num_attr=1, zShared_dim=args.n_shared))

if CUDA:
    encA.cuda()
    decA.cuda()
    cuda_tensors(encA)
    cuda_tensors(decA)

    for i in range(N_ATTR):
        encB[i].cuda()
        decB[i].cuda()
        cuda_tensors(encB[i])
        cuda_tensors(decB[i])

attr_params = []
コード例 #4
0
ファイル: main.py プロジェクト: augustdemi/jcvae
                                        num_workers=len(GPU))

BIAS_TRAIN = (train_data.dataset.__len__() - 1) / (args.batch_size - 1)
BIAS_TEST = (test_data.dataset.__len__() - 1) / (args.batch_size - 1)


def cuda_tensors(obj):
    for attr in dir(obj):
        value = getattr(obj, attr)
        if isinstance(value, torch.Tensor):
            setattr(obj, attr, value.cuda())


encA = EncoderA(args.wseed, zPrivate_dim=args.n_privateA, zSharedAttr_dim=ATTR_DIM)
decA = DecoderA(args.wseed, zPrivate_dim=args.n_privateA, zSharedAttr_dim=ATTR_DIM)
encB = EncoderB(args.wseed, zSharedAttr_dim=ATTR_DIM)
decB = DecoderB(args.wseed, zSharedAttr_dim=ATTR_DIM)

if CUDA:
    encA.cuda()
    decA.cuda()
    encB.cuda()
    decB.cuda()
    cuda_tensors(encA)
    cuda_tensors(decA)
    cuda_tensors(encB)
    cuda_tensors(decB)
    if len(args.gpu) > 2:
        print('multi: ' + args.gpu)
        encA = nn.DataParallel(encA)
        decA = nn.DataParallel(decA)
コード例 #5
0
    for attr in dir(obj):
        value = getattr(obj, attr)
        if isinstance(value, torch.Tensor):
            setattr(obj, attr, value.cuda())


encA = EncoderA(args.wseed,
                zPrivate_dim=args.n_privateA,
                zSharedAttr_dim=ATTR_DIM,
                num_hidden=args.num_hidden)
decA = DecoderA(args.wseed,
                zPrivate_dim=args.n_privateA,
                zSharedAttr_dim=ATTR_DIM,
                num_hidden=args.num_hidden)
encB = EncoderB(args.wseed,
                zSharedAttr_dim=ATTR_DIM,
                num_hidden=args.num_hidden)
decB = DecoderB(args.wseed,
                zSharedAttr_dim=ATTR_DIM,
                num_hidden=args.num_hidden)

if CUDA:
    encA.cuda()
    decA.cuda()
    encB.cuda()
    decB.cuda()
    cuda_tensors(encA)
    cuda_tensors(decA)
    cuda_tensors(encB)
    cuda_tensors(decB)
    if len(args.gpu) > 2:
コード例 #6
0
    for attr in dir(obj):
        value = getattr(obj, attr)
        if isinstance(value, torch.Tensor):
            setattr(obj, attr, value.cuda())


encA = EncoderA(args.wseed,
                zPrivate_dim=args.n_privateA,
                zSharedAttr_dim=ATTR_DIM,
                zSharedLabel_dim=N_CLASSES)
decA = DecoderA(args.wseed,
                zPrivate_dim=args.n_privateA,
                zSharedAttr_dim=ATTR_DIM,
                zSharedLabel_dim=N_CLASSES)
encB = EncoderB(args.wseed,
                zSharedAttr_dim=ATTR_DIM,
                zSharedLabel_dim=N_CLASSES)
decB = DecoderB(args.wseed,
                zSharedAttr_dim=ATTR_DIM,
                zSharedLabel_dim=N_CLASSES)
encC = EncoderC(args.wseed, zSharedLabel_dim=N_CLASSES)
decC = DecoderC(args.wseed, zSharedLabel_dim=N_CLASSES)

if CUDA:
    encA.cuda()
    decA.cuda()
    encB.cuda()
    decB.cuda()
    encC.cuda()
    decC.cuda()
    cuda_tensors(encA)
コード例 #7
0
    viz_port = args.viz_port  # port number, eg, 8097
    VIZ = visdom.Visdom(port=args.viz_port)
    viz_init()
    viz_ll_iter = args.viz_ll_iter
    viz_la_iter = args.viz_la_iter


def cuda_tensors(obj):
    for attr in dir(obj):
        value = getattr(obj, attr)
        if isinstance(value, torch.Tensor):
            setattr(obj, attr, value.cuda())

encA = EncoderA(num_pixels=4096, num_hidden=512, zPrivate_dim=args.n_private, zShared_dim=args.n_shared)
decA = DecoderA(num_pixels=4096, num_hidden=512, zPrivate_dim=args.n_private, zShared_dim=args.n_shared)
encB = EncoderB(num_pixels=4096, num_hidden=512, zPrivate_dim=args.n_private, zShared_dim=args.n_shared)
decB = DecoderB(num_pixels=4096, num_hidden=512, zPrivate_dim=args.n_private, zShared_dim=args.n_shared)
if CUDA:
    encA.cuda()
    decA.cuda()
    encB.cuda()
    decB.cuda()
    cuda_tensors(encA)
    cuda_tensors(decA)
    cuda_tensors(encB)
    cuda_tensors(decB)


optimizer =  torch.optim.Adam(list(encB.parameters())+list(decB.parameters())+list(encA.parameters())+list(decA.parameters()),
                              lr=args.lr)