标准化测试数据

数据挖掘 机器学习 支持向量机 预处理 正常化
2022-01-28 14:42:36

我在数据规范化方面遇到问题。我有需要为其创建 SVM 的数据。我将使用该模型进行实时预测。我知道测试元组应该使用与训练数据完全相同的值进行归一化。但是,我的测试元组的值可能超过训练集中数据的最大值。例如,在训练集中,我有给定特征的以下值。

Maximum : 20457
Minimum: 3

在测试元组中,我有时会得到像 35002 这样的值。这存在于大多数功能中。

如果我知道所有特征的最大值和最小值,问题就会得到解决,但这是不可能的。最大值可以达到任何值。在这种情况下如何进行数据规范化?有人可以帮我吗?

1个回答

从您的问题来看,您可能正在使用以下公式进行标准化:

(x - x_mean)/(x_max - x_min). 这只是实际归一化公式的近似值。真正的应该是:

在此处输入图像描述

其中mu是平均值,sigma是标准差。如果您的数据趋势始终相同,那么您可以预期均值和标准差大致相同,从而为您提供更统一的表示。

查看这篇 Wikipedia 文章Feature scaling,其中介绍了不同 ML 技术中使用的方案。希望这可以帮助!