【发布时间】:2016-05-17 17:04:48
【问题描述】:
从文档中,
class sklearn.linear_model.SGDClassifier(class_weight=None)
与 class_weight 函数一样,我如何为我的功能集的特定方面赋予权重?就像我的功能集由原始文本和一些名称组成。在训练时,我想给名称更多的权重,而对原始文本的权重更少。我该怎么做?
【问题讨论】:
标签: python python-2.7 scikit-learn
从文档中,
class sklearn.linear_model.SGDClassifier(class_weight=None)
与 class_weight 函数一样,我如何为我的功能集的特定方面赋予权重?就像我的功能集由原始文本和一些名称组成。在训练时,我想给名称更多的权重,而对原始文本的权重更少。我该怎么做?
【问题讨论】:
标签: python python-2.7 scikit-learn
SGDClassifier 中没有为特征赋予权重的选项,据我所知,在 scikit-learn 中没有其他学习者。
一般来说,给特征赋予不同的权重是没有意义的。毕竟,您进行机器学习是因为您希望计算机找出哪些功能更重要。如果 name 比 raw text 更重要,分类器会在内部计算出来。
现在,如果您仍然希望拥有不同重要性的不同特征,您可以组合多个分类器: 仅使用 name 特征训练一个分类器,并仅使用 raw text 特征训练另一个分类器。然后通过取每个分类器输出的加权平均值来组合它们的输出。您可以给 name-分类器赋予更高的权重,这将增加 name 对组合输出的影响。
【讨论】: