Я ранее сохранил модель LGBM с pickle
. Программа берет контент с данной веб-страницы, затем классифицирует его.
Загруженная модель хорошо работает на моих локальных компьютерах (настольный компьютер и ноутбук). Но он дает бессмысленные прогнозы, когда работает на экземпляре EC2. Какая проблема может вызвать это?
- Модели на трех машинах одинаковы (настольный компьютер, ноутбук и EC2)
- Входные данные модели (после шагов предварительной обработки) совпадают
- Коды совпадают (клонировано Git)
- Предсказания имеют смысл на локальных машинах
-
numpy
, scikit-learn
и другие версии пакетов одинаковы на всех трех машинах
Я загружаю модель:
self.mapper = pickle.load(open(model_path + "mapper.pkl", "rb"))
self.model = pickle.load(open(model_path + "model.pkl", "rb"))
И делать прогнозы, если вам интересно (извините за грязный код, эта часть не была написана мной):
data = self.pipeline.transform([{"url_name": url}])
df = pd.DataFrame({"text": [data]})
processed = self.mapper.transform(df)
processed = [a[0] for a in processed]
ws_results = OrderedDict()
for p1, p2 in sorted(zip(self.classes, self.model.predict_proba(processed).tolist()[0]), reverse=True, key=lambda x: x[1])[:3]:
ws_results[p1] = round(p2, 3)