はじめに
ステップ1: 事前訓練済みモデルの読み込み
ステップ2: モデルをタスクに合わせて変更する
ステップ3: モデルの微調整
例: PyTorchを使った転移学習の実践
import torchvision.models as models
# 事前訓練済みのResNetモデルを読み込む
resnet = models.resnet18(pretrained=True)
# タスクに合わせて最後の層を変更する
num_classes = 5
resnet.fc = torch.nn.Linear(resnet.fc.in_features, num_classes)
# データセットでモデルを微調整する
# (train_loaderが既に定義されていると仮定)
learning_rate = 0.001
optimizer = torch.optim.SGD(resnet.parameters(), lr=learning_rate)
for epoch in range(num_epochs):
for data, labels in train_loader:
# モデルを訓練する
# ...
print("微調整が完了しました!")
おわりに
PyTorchを使った転移学習によって、より強力なモデルをより早く、そしてより少ないデータで訓練することができます。事前訓練済みモデルを微調整することで、元のモデルの知識を活用して、タスクに対するパフォーマンスを向上させることができます。学習と実験を続けてください!🎉