python import milk import torch train_dataset = milk.datasets.CIFAR10(root='./data', train=True, transform=milk.transforms.ToTensor(), download=True) test_dataset = milk.datasets.CIFAR10(root='./data', train=False, transform=milk.transforms.ToTensor(), download=True) model = milk.models.resnet18(pretrained=True) model.fc = torch.nn.Linear(512, 10) train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=64, shuffle=True) test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=64, shuffle=False) optimizer = torch.optim.Adam(model.parameters(), lr=0.001) criterion = torch.nn.CrossEntropyLoss() for epoch in range(10): for images, labels in train_loader: optimizer.zero_grad() outputs = model(images) loss = criterion(outputs, labels) loss.backward() optimizer.step() correct = 0 total = 0 with torch.no_grad(): for images, labels in test_loader: outputs = model(images) _, predicted = torch.max(outputs.data, 1) total += labels.size(0) correct += (predicted == labels).sum().item() accuracy = 100 * correct / total print("Accuracy: {:.2f}%".format(accuracy))


上一篇:
下一篇:
切换中文