如何用ImageNet预训练模型分类自己的数据集?
以下为载入时的代码
model = Micro()
train_loader, val_loader = prepare_dataloader(train, trn_idx,val_idx, data_root=train_root)
model = torch.nn .DataParallel ( model ).cuda( )
model.load_state_dict({k.replace( ' module.' ,'' ) :v for k,v in torch. load( ' predicet/checkpoint_99_epoch.pkl ' ).items( )})//checkpoint_99_epoch.pkl 为预训练好的参数
mode1. load_state_dict(checkpoint)
ImageNet预训练最后的分类层是1000个类别的,你用在10类别上只需要加一个nn.Linear(1000,10)的线性投射层就行