【问题标题】:How to use L2 normalization on features before using them in SVM如何在 SVM 中使用特征之前对特征使用 L2 归一化
【发布时间】:2015-11-27 06:52:45
【问题描述】:

我正在使用从卷积神经网络中提取的特征来训练 SVM。正如本文 (http://arxiv.org/pdf/1405.3531v4.pdf) 中所写,最好在对特征应用 SVM 之前对其进行 L2 标准化。

我使用这个函数来归一化向量:

def l2normalize(features):
    l2norm = np.sum(np.abs(features)**2,axis=-1)**(1./2)
    return features/l2norm

在这种标准化之后,我的准确率从大约 60% 下降到 20%,所以显然有问题。我应该如何为具有 L2 范数的 SVM 正确准备我的向量?

【问题讨论】:

    标签: python machine-learning svm deep-learning conv-neural-network


    【解决方案1】:
    1. 检查您是否真的对从训练数据和测试数据中提取的特征进行了归一化。

    2. 尝试使用来自sklearn.preprocessing 的normalize。我检查了,您的函数返回的值略有不同。

    【讨论】:

      猜你喜欢
      • 2015-11-23
      • 2018-11-29
      • 2019-05-29
      • 2015-11-23
      • 1970-01-01
      • 2023-03-27
      • 2019-02-02
      • 2016-11-30
      • 2021-05-22
      相关资源
      最近更新 更多