示例#1
0
                  device='cuda')
    model.load_weights('./snapshots/base.pth', load_opt=False)

    normalize = transforms.Normalize(mean=[0.485, 0.456, 0.406],
                                     std=[0.229, 0.224, 0.225])

    train_datagen = DirectorySiameseLoader(
        impath,
        transforms.Compose([
            transforms.Resize(256),
            transforms.RandomResizedCrop(224),
            transforms.RandomHorizontalFlip(),
            transforms.RandomVerticalFlip(),
            transforms.ToTensor(), normalize
        ]))
    train_generator = train_datagen.get_dset(8, 1)
    os.makedirs(f'./snapshots/pairs/{save_no}', exist_ok=True)
    try:
        h = model.fit_generator(
            train_generator,
            20,
            schedule=[10, 15],
            tensorboard=f'logs/pair/{len(os.listdir("logs/pair"))}',
            epoch_end=model.checkpoint(f'./snapshots/pairs/{save_no}',
                                       'ContrastiveLoss'),
            step=200)
        with open('siamese.json', 'w') as wr:
            json.dump(h, wr)
    finally:
        model.save_weights('./snapshots/pairs_temp.pth')
示例#2
0
        transforms.Normalize((0.4914, 0.4822, 0.4465),
                             (0.2023, 0.1994, 0.2010)),
    ])

    transform_test = transforms.Compose([
        transforms.ToTensor(),
        transforms.Normalize((0.4914, 0.4822, 0.4465),
                             (0.2023, 0.1994, 0.2010)),
    ])

    trainset = CIFAR10(root=root,
                       train=True,
                       download=True,
                       transform=transform_train)
    trainloader = Loader(trainset, batch_size=64, shuffle=True, num_workers=0)

    testset = CIFAR10(root=root,
                      train=False,
                      download=True,
                      transform=transform_test)
    testloader = Loader(testset, batch_size=100, shuffle=False, num_workers=0)

    schedule = LambdaLR(sgd, lrstep)

    history = model.fit_generator(trainloader,
                                  300,
                                  validation_data=testloader,
                                  schedule=schedule)
    with open('logs/misc-01.json', 'w') as wr:
        json.dump(history, wr)