gpt4 book ai didi

machine-learning - LibSVM 中的特征值缩放是否有必要?

转载 作者:行者123 更新时间:2023-11-30 08:51:48 25 4
gpt4 key购买 nike

如果我有 200 个特征,并且每个特征的值可以从 0 到无穷大,那么在继续训练 LibSVM 之前,我是否应该将特征值缩放到 [0-1] 范围内?是吗?

现在,假设我确实缩放了值,并且在训练模型后,如果我得到一个以其值或特征作为输入的向量,那么在分类之前如何缩放输入测试向量的这些值?

谢谢阿布舍克·S

最佳答案

您应该存储用于训练的特征值范围。然后,当您从未知实例中提取特征值时,使用特定范围进行缩放。

使用公式(此处的范围为 [-1.0 , 1.0]):

double scaled_val = -1.0 + (1.0 - -1.0) * (extracted_val - vmin)/(vmax-vmin);

Guide libsvm 网站上提供的内容很好地解释了扩展:

“2.2 缩放应用 SVM 之前的缩放非常重要。 Sarle 神经网络的第二部分FAQ Sarle (1997) 解释了这一点的重要性,大多数考虑因素也适用到支持向量机。缩放的主要优点是避免属性具有更大的数值范围主导较小数值范围的范围。另一个优点是可以避免计算过程中的数值困难。因为内核值通常取决于特征向量的内积,例如线性核和多项式核,大的属性值可能会导致数值问题。我们推荐线性将每个属性缩放到范围 [-1; +1] 或 [0; 1]。当然,我们必须使用相同的方法来扩展训练和测试数据。”

关于machine-learning - LibSVM 中的特征值缩放是否有必要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11860991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com