Ученик Фастай не загружается

Итак, я пытаюсь загрузить модель, используя:

learn = create_cnn(data, models.resnet50, lin_ftrs=[2048], metrics=accuracy) 
learn.clip_grad();
learn.load(f'{name}-stage-2.1')

Но я получаю следующую ошибку

RuntimeError: Error(s) in loading state_dict for Sequential:
size mismatch for 1.8.weight: copying a param with shape torch.Size([5004, 2048]) from checkpoint, the shape in current model is torch.Size([4542, 2048]).
size mismatch for 1.8.bias: copying a param with shape torch.Size([5004]) from checkpoint, the shape in current model is torch.Size([4542]).

Единственное, что отличается, это то, что я добавил случайное разделение проверки, которого не было в модели stage-2.1, когда я удаляю разделение и не устанавливаю проверку, так как stage-2.1 был обучен, все идет хорошо.

Что творится?


person M090009    schedule 27.02.2019    source источник


Ответы (2)


Используйте метод cnn_learner и последнюю версию Pytorch с последней версией FastAI . Был breaking change и разрыв, так что вы страдаете сейчас .

На веб-сайте fastai есть много примеров, таких как this one.

learn = cnn_learner(data, models.resnet50, metrics=accuracy)
person prosti    schedule 21.05.2019

На самом деле ваш torch.Size([5004, 2048]) из контрольной точки, форма в текущей модели - torch.Size([4542, 2048]), вы должны изменить ее.

person Hamdi KAPTAN    schedule 22.03.2019