有什么理由不默认标准化所有特征吗?我意识到这对于决策树等可能不是必要的,但对于某些算法如KNN、SVM和K-Means来说呢?如果我习惯性地对所有特征进行标准化,会有什么害处吗?
此外,似乎普遍认为标准化比归一化更可取?在什么时候这样做不是个好主意?
回答:
根据我的经验,当数据集中的特征具有非常不同的范围时(例如年龄与每栋房子的美元数),标准化和归一化对数据的影响最大(正面影响)。
在我的职业经历中,当我处理一个关于汽车传感器(时间序列)的项目时,我注意到即使是在神经网络中应用归一化(最小-最大缩放),也对训练过程以及最终结果产生了负面影响。诚然,传感器特征(值)彼此非常接近。从这个角度来看,这是一个非常有趣的结果,因为我在处理时间序列数据,大多数数据科学家默认会选择缩放(他们最终使用的是神经网络,符合理论)。
原则上,当数据集中有特定的异常值时,应用标准化会更好,因为归一化会生成较小的标准差值。根据我的浅见,这是标准化比归一化更受青睐的主要原因,即对异常值的鲁棒性更强。
三年前,如果有人问我这个问题,我会说“标准化”是正确的选择。现在我会说,遵循原则,但要在得出结论之前测试每一个假设。