transformer_weights 在 scikit-learn 管道中有什么用?

what's the use of transformer_weights in scikit-learn pipeline?

只是scikit-learn的pipeline的一个小问题

在 class sklearn.pipeline.FeatureUnion 中,有一个 transformer_weights 选项。

transformer_weights: dict, optional
: Multiplicative weights for features per transformer. Keys are transformer names, values the weights.

我在示例中看到了对不同特征赋予不同权重的用法。

    transformer_weights={
        'subject': 0.8,
        'body_bow': 0.5,
        'body_stats': 1.0,
    },

这对我来说是无稽之谈,因为 classifier 稍后会为您学习权重。为什么要费心使用它?

如果您使用带惩罚的线性分类器,这将改变应用于每个特征块的惩罚量。 向上扩展特征意味着它们相对于其他特征将受到更少的惩罚。