繁体   English   中英

在使用随机森林和 SVM 的同时使用 DataPreparer 规范化我的数据后,为什么我的数据值变为负数?

[英]After normalising my data using DataPreparer while using random forest and SVM, why do my data values become negative?

我正在研究预测建模,我需要预测在线客户是否最终会在网站上购买产品,并且我正在使用随机森林分类器和 SVM,因为这是一个分类问题。

在为训练、测试和验证集创建拟合拆分后,我对数据进行了虚拟化、标准化和规范化。 但是,在我对集合进行归一化后,它们的值都变为负数。 有没有办法改变它,为什么会发生?

我用来标准化我的拟合集的代码如下:

data_preparer = DataPreparer(one_hot_encoder, standard_scaler)
data_preparer.prepare_data(fitting_splits.train_set).head()
data_preparer.prepare_data(fitting_splits.validation_set).head()

我认为 sklearn.preprocessing.StandardScaler 的文档可以在这里提供帮助:

样本 x 的标准分计算如下:

z = (x - u) / s

其中 u 是训练样本的平均值,如果 with_mean=False,则为 0,s 是训练样本的标准差,如果 with_std=False,则为 1。

根据这个等式,如果 x(当前被缩放的单个值)小于变量的平均值,那么您的缩放值将为负数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM