【问题标题】:How to give different weights to features while training a SGDClassifier in Scikit?如何在 Scikit 中训练 SGDClassifier 时赋予特征不同的权重?
【发布时间】:2016-05-17 17:04:48
【问题描述】:

从文档中,

class sklearn.linear_model.SGDClassifier(class_weight=None)

与 class_weight 函数一样,我如何为我的功能集的特定方面赋予权重?就像我的功能集由原始文本和一些名称组成。在训练时,我想给名称更多的权重,而对原始文本的权重更少。我该怎么做?

【问题讨论】:

    标签: python python-2.7 scikit-learn


    【解决方案1】:

    SGDClassifier 中没有为特征赋予权重的选项,据我所知,在 scikit-learn 中没有其他学习者。

    一般来说,给特征赋予不同的权重是没有意义的。毕竟,您进行机器学习是因为您希望计算机找出哪些功能更重要。如果 nameraw text 更重要,分类器会在内部计算出来。

    现在,如果您仍然希望拥有不同重要性的不同特征,您可以组合多个分类器: 仅使用 name 特征训练一个分类器,并仅使用 raw text 特征训练另一个分类器。然后通过取每个分类器输出的加权平均值来组合它们的输出。您可以给 name-分类器赋予更高的权重,这将增加 name 对组合输出的影响。

    【讨论】:

      猜你喜欢
      • 2017-12-13
      • 2016-03-02
      • 2019-10-22
      • 1970-01-01
      • 2020-10-01
      • 2018-07-29
      • 2016-12-31
      • 2017-11-20
      相关资源
      最近更新 更多