Example #1
0
def test_with_maml(dataset, learner, checkpoint, steps, loss_fn):
    print("[*] Testing...")
    model = MAML(learner, steps=steps, loss_function=loss_fn)
    model.to(device)
    if checkpoint:
        model.restore(checkpoint, resume_training=False)
    else:
        print("[!] You are running inference on a randomly initialized model!")
    model.eval(dataset, compute_accuracy=(type(dataset) is OmniglotDataset))
    print("[*] Done!")
Example #2
0
def train_with_maml(dataset,
                    learner,
                    save_path: str,
                    steps: int,
                    meta_batch_size: int,
                    iterations: int,
                    checkpoint=None,
                    loss_fn=None):
    print("[*] Training...")
    model = MAML(learner, steps=steps, loss_function=loss_fn)
    model.to(device)
    epoch = 0
    if checkpoint:
        model.restore(checkpoint)
        epoch = checkpoint['epoch']
    model.fit(dataset, iterations, save_path, epoch, 100)
    print("[*] Done!")
    return model