我以前用pickle
保存了LGBM模型。该程序从给定的网页中获取内容,然后对其进行分类。
加载的模型在我的本地计算机(台式机和笔记本电脑)上运行良好。但是,当它在EC2实例上运行时,它会给出毫无意义的预测。什么问题会导致这种情况?
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)