Я обучил свою модель реснета с помощью бесплатного графического процессора Google Colab, поскольку на моем ноутбуке нет графического процессора. Вы можете найти это здесь - https://colab.research.google.com/drive/1FjwI26-fv1h3w5hlg-M5Fl_2nvWBvFzq?usp=sharing
Теперь пришло время, наконец, сделать прогнозы, используя созданную мной модель. Но главная проблема, с которой я сталкиваюсь, это загрузка модели. Конечно, я загружу файл pkl
или pth
в свою локальную среду и вызову на нем метод predict()
, но видимо, чтобы загрузить модель, нужен сам объект класса Learner
.
В моем случае это должен быть объект класса cnn_learner
. Чтобы создать объект этого класса, мне нужно будет определить все - ImageDataLoaders
и загрузить изображения, и только тогда я смогу создать объект класса cnn_learner
, перейдя model = cnn_learner(dls, resnet18, metrics=error_rate
туда, где dls
будет объектом ImageDataLoaders
Как мне обойти это? Потому что, честно говоря, мне это кажется немного нелогичным. Даже документация fastai предполагает, что мне понадобится весь код, когда я экспортирую свою модель, чтобы загрузить модель. Но главный смысл экспорта полностью обученной модели заключается в том, чтобы использовать ее в любой среде, которую я захочу, просто потому, что она полностью обучена, и я могу просто вызвать для нее метод predict()
и получить свои прогнозы!
Кроме того, я сохранил модель как в формате pkl
, используя model.export
, так и в формате pth
, используя model.save
.
Если бы кто-то мог помочь мне в этом, это было бы очень признательно.
Большое спасибо!
Пробовал все. Просмотрел документацию, а также поэкспериментировал с кодом документации самостоятельно, но безуспешно.
Вы можете использовать метод export
ученика следующим образом.
learn.export("/content/model.pkl")
Чтобы снова загрузить модель, используйте load_learner
load_learner('/content/model.pkl')
Что вы пробовали? Мы не можем точно дать содержательные предложения, если мы не знаем, что вы пробовали и почему это не удалось. Кроме того, вместо того, чтобы просто предоставить ссылку на колаб, включите фрагмент соответствующих разделов, например, где вы конвертировали его в
pkl
илиpth
и где вы пытались загрузить из файловpkl
илиpth
.