我是否需要归一化(或缩放)randomForest(R包)的数据?


76

我正在执行回归任务-是否需要对randomForest(R包)的数据进行规范化(或缩放)?是否有必要同时缩放目标值?如果-我想从插入符号包中使用缩放功能,但是我没有找到如何取回数据(去缩放,反规范化)。您是否不知道其他一些功能(在任何软件包中)对规范化/非规范化很有帮助?谢谢,米兰


7
scale功能不属于caret。它是“基本” R包的​​一部分。有一个unscale功能可以逆向转换。
IRTFM'1

Answers:


86

不,缩放对于随机森林不是必需的。

  • RF的本质是,收敛性和数值精度问题(有时可能会使逻辑和线性回归以及神经网络使用的算法绊倒)并不那么重要。因此,您不需要像使用NN一样将变量转换为通用比例。

  • 您不会得到任何回归系数的类似物,后者可以测量每个预测变量与响应之间的关系。因此,您也无需考虑如何解释这些系数,而这些系数受可变测量范围的影响。


24
缩放不仅是不必要的,而且可以消除模型的非线性性质。如果您在p维空间中具有复杂的非线性关系,并且已对数据进行了转换,则在对它们进行逆转换时,这些非线性将不会反映在估计中。
杰弗里·埃文斯

11
@JeffreyEvans,请结合您的出色评论并将其发布为答案。否则,这将在所有人的注意范围之内。您是在说:“不,不仅没有必要,而且由于以下原因也是有害的,因为a)b)c)...”
smci 2015年

2
我认为他的意思是,如果您使用训练集定义的相同功能缩放所有集(训练,测试),则没有必要,但不会造成损害。
基思(Keith)

猜猜,在下面的示例中,如果您有20个预测特征,其中15个在[0; 10]范围内,其他5个
Danylo Zherebetskyy

它不取决于-如果变量之间的比例差异很大,那么比例缩放的功能是否可能启用较短的树?如果在向量范数上使用min max范数,那么网络的拓扑也不会不同吗?
user3546025

17

进行缩放是为了对数据进行归一化,因此不会将优先级给予特定功能。在基于距离且需要欧几里得距离的算法中,缩放的作用最为重要。

随机森林是基于树的模型,因此不需要特征缩放。

该算法需要分区,即使您应用Normalization,结果也将是相同的。


4

我在帮助页面或Vignette中都没有看到任何建议,建议对中的回归变量进行缩放是必需的randomForestStats Exchange的此示例也未使用缩放。

我的评论副本:该scale函数不属于pkg:caret。它是“基本” R包的​​一部分。unscale软件包grtDMwR中有一个函数可以反转转换,或者您可以简单地乘以scale属性,然后添加center属性值。

您对为什么需要进行“标准化”的想法可能需要进行严格的检查。仅在完成回归后才需要进行非正态性检验,如果在拟合方法的优度中没有正态性假设,则可能根本不需要进行非正态性检验。那么:你为什么要问?在SO和Stats.Exchange中搜索可能被证明是有用的: 引用#1 ; 引用#2 ; 引用3

boxcox当您不具备“应该”分配的先验知识时,以及您确实需要进行转换时,此功能是一种常用的转换。应用转换有很多陷阱,因此您需要提出问题这一事实引起了人们的担忧,即您可能需要进一步的咨询或自学。


我理解我的问题中的标准化是将数据简单地线性转换为例如区间0-1。例如,在使用神经网络时,应这样做。因此,当我问时我需要的是洪Ooi的回答。我没有发现您建议的功能失调。但是,谢谢您的努力。
gutompf 2012年

添加了引文来回答您的第二个问题。
IRTFM'1

我表示歉意-我忽略了不称重是grt和DMwR软件包
gutompf'1

无需道歉。我制造了一个“假内存”,它位于“基础”中,并且在的帮助页面中已提及scale。您的跟进问题有助于保持记录的准确性。
IRTFM'1

2
@BondedDust:很好的答案,但最后一段有点讨厌。也许改写为“无论是在预测变量还是在响应变量上,您都需要学习何时以及不需要进行转换”
smci 2015年

2

猜猜,在下面的示例中将发生什么?想象一下,您有20个预测特征,其中18个在[0; 10]范围内,另外2个在[0; 1,000,000]范围内(取自真实示例)。问题1:随机森林将分配哪些特征重要性。问题2:缩放2个大范围特征后,特征重要性将如何处理?

缩放很重要。就是说,与其他算法相比,Random Forest对缩放的敏感性较低,并且可以使用“大致”缩放的功能。


1
随机森林不需要缩放
Patrick Stetz

6
如果仅需要预测,则常识是不需要缩放(决策树对于线性变换是不变的)。但是,如果“功能重要性”或“功能选择”或“功能等” 在考虑中之后,按比例缩放与不按比例缩放的数据将给出不同的“特征”相关结果。参见,例如:1)Strobl等人,“随机森林变量重要性评估中的偏见:插图,资料和解决方案”,BMC生物信息学,2007年;2)解释
Danylo Zherebetskyy,

1

如果您要向数据集添加交互-也就是说,新变量是其他变量的某种函数(通常是简单的乘法),并且您没有感觉到该新变量的含义(无法解释),则应使用比例变量。


6
随机森林是一个非线性模型,节点拆分统计的性质说明了高维交互作用。这样,尝试定义交互变量是不必要的,也是非常不希望的。
杰弗里·埃文斯

0

information gain / gini coefficient与许多其他机器学习模型(例如k均值聚类,PCA等)不同,Random Forest固有地会使用其不受缩放影响。但是,正如其他答案所暗示的那样,它可能“可以说”加快了收敛速度

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.