【问题标题】:ValueError: 'max' is not a supported normValueError:“最大值”不是受支持的规范
【发布时间】:2016-05-25 03:40:14
【问题描述】:

我在 l1 和 l2 规范中使用 sklearn.preprocessing.normalize 很好。我也想试试 max,因为它提到:

标准:‘l1’、‘l2’或‘max’

所以我做到了:

X = tfidf.fit_transform(data['Content']) # the matrix articles x max_features(=words)
normed_X = normalize(X, axis=0, norm='max')

并得到这个运行时错误:

  File "/usr/lib/python2.7/dist-packages/sklearn/preprocessing/data.py", line 427, in normalize
    raise ValueError("'%s' is not a supported norm" % norm)
ValueError: 'max' is not a supported norm

我做错了什么?

【问题讨论】:

  • 可能是旧的scikit-learn 包?你能打开 "/usr/lib/python2.7/dist-packages/sklearn/preprocessing/data.py" 文件在if 声明上面raise 声明吗?对我来说,它看起来像 if norm not in ('l1', 'l2', 'max'): 并且也接受 'max'
  • 正是@soon,抱歉没有回复.. 很快:) 我看到if norm not in ('l1', 'l2'):,我还检查了normalize() 中的cmets。你要发布答案吗?
  • 好吧,迈克已经发布了答案,我认为你应该接受它 - 我的答案实际上是一样的。

标签: python python-2.7 machine-learning scikit-learn bigdata


【解决方案1】:

您使用的文档比您使用的库版本更新。 'max' 选项刚刚在 0.17 中添加。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多