在现实世界数据的机器学习预测中拟合模糊性

我在解决现实世界问题时,在概念层面上遇到了关于数据拟合的问题。

问题陈述:文本内容分类
数据集有两列:文本内容和内容类别(如运动、新闻等)

已完成:使用随机森林分类器构建了一个模型 – 遵循了一些预处理技术 – 使用TfidfVectorizer转换。结果,在训练和测试数据方面,一切都运作良好。

挑战:当现实世界的文本内容到来时,我需要再次使用TfidfVectorizer转换数据 — 这将与我们之前使用的数据集有完全不同的转换。这导致了与预期完全不同的结果。

问题:有没有办法保存训练时实现的这种拟合逻辑,以便我可以使用这些信息仅对实时数据进行转换?


回答:

让我们以您在评论中提到的薪资列上的MinMaxScaler为例:

scaler = MinMaxScaler()

然后我们可以拟合并转换我们的训练集:

scaler.fit(train)train = scaler.transform(train)

我们也可以以相同的方式转换test集,如下所示:

test = scaler.transform(test)

我如何将相同的缩放拟合数据应用于新数据?

我们可以将MinMaxScaler存储在pickle文件中以供将来使用:

import picklepickle.dump(scaler, open('file/path/scaler.pkl','wb'))

每当有新数据到来时,我们可以加载pickle文件并使用它来转换新数据:

scaler = pickle.load(open('file/path/scaler.pkl','rb'))new_data = scaler.transform(new_data)

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注