Übertragen Sie das Lernen auf Pytorch

Beim Transferlernen wird schnell ein neues Netzwerkmodell mithilfe eines vorab trainierten Modells trainiert. Dies wird normalerweise angewendet, wenn der Datensatz klein ist oder die Rechenressourcen geringer sind. Da in PyTorch einige klassische vorab trainierte Modelle in die Torchvision-Bibliothek integriert wurden, können wir Migrationslernen durch einfaches Aufrufen von Funktionen implementieren.

Nachfolgend finden Sie ein einfaches Tutorial zum Transferlernen mit PyTorch.

Zuerst müssen wir einige Datensätze herunterladen. Hier verwenden wir den CIFAR-10-Datensatz in PyTorch, der 10 Bildkategorien enthält. Jede Kategorie enthält 6000 Farbbilder mit einer Größe von 32 x 32 Pixel. Der Datensatz kann mit dem folgenden Code aus Torchvision geladen und vorverarbeitet werden:

import torchvision.datasets as datasets
import torchvision.transforms as transforms

transform = transforms.Compose([transforms.ToTensor(), 
                                transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])

trainset = datasets.CIFAR10(root='./data', train=True, download=True, transform=transform)
testset = datasets.CIFAR10(root='./data', train=False, download=True, transform=transform)

Als nächstes können wir diesen Datensatz verwenden, um ein neues Modell zu trainieren. Wenn wir Transferlernen nutzen möchten, können wir ein vorab trainiertes Modell wie ResNet18 wählen:

import to

Guess you like

Origin blog.csdn.net/weixin_40895135/article/details/130468880