Как построить модель в Python, как мне сохранить модель, чтобы я мог выключить компьютер и поработать над ним на следующий день? - PullRequest
1 голос
/ 08 февраля 2020

Скажем, я закончил построение регрессионной модели в Python, как показано ниже:

from sklearn import linear_model

model = linear_model.LogisticRegression().fit(X_train, Y_train)

Как сохранить созданную мной «модель», чтобы я мог выключить компьютер и работать на следующий день без необходимости повторного запуска кода, чтобы снова получить «модель»?

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

1 Ответ

4 голосов
/ 08 февраля 2020

Это проблема сериализации, и очень простой способ - использовать модуль pickle. Следующие фрагменты показывают, как можно сохранить и загрузить объект Python.

Для сохранения:

import pickle

with open("YOUR_FILE_NAME_HERE.pkl", 'wb') as file:
    pickle.dump(model, file)

Для загрузки:

# Import all your relevant libraries first
from sklearn import linear_model
...


import pickle

with open("YOUR_FILE_NAME_HERE.pkl", 'rb') as file:
    model = pickle.load(file)

Идея состоит в том, чтобы по существу, создайте представление файла вашего объекта (model) и сохраните его в файл таким способом, который может быть интерпретирован и загружен по требованию. Это может быть достигнуто многими различными способами, но самый простой метод с Python состоит в том, чтобы использовать pickle, который создает двоичное представление вашего объекта и всех связанных объектов и модулей.

Для дальнейшего чтения обратитесь к pickle документация здесь и для лучшего понимания сериализации обратитесь к здесь .

...