如何在sklearn逻辑回归中设置样本权重?

Posted

技术标签:

【中文标题】如何在sklearn逻辑回归中设置样本权重?【英文标题】:How to set sample weight in sklearn logistic regression? 【发布时间】:2018-02-22 13:34:56 【问题描述】:

我在scikit learn python 包中进行逻辑回归时遇到问题。

当数据具有不同数量的 1 或 0 样本时,我想对样本权重进行逻辑回归。但是,我有一些数据,所以我无法为每个数据获得相同数量的样本。

【问题讨论】:

【参考方案1】:

正如 sklearn 的 LogisticRegression 的 documentation 所说,为样本分配权重有两种选择。

分类器接受一个class_weight 参数,该参数可用于设置属于某个类的所有样本的权重。也可以申请class_weight='balanced',根据每个类的样本数自动调整类权重。

分类器的fit 方法还接受一个sample_weight 数组,该数组为单个样本分配权重。

【讨论】:

以上是关于如何在sklearn逻辑回归中设置样本权重?的主要内容,如果未能解决你的问题,请参考以下文章

带加权样本的弹性网络回归或套索回归(sklearn)

为啥 sklearn 逻辑回归正则化权重和截距?

class_weights 如何应用于 sklearn 逻辑回归?

Python使用sklearn构建ElasticNet回归模型并指定样本权重:即构建带样本权重(sample_weight)的回归模型

Python使用sklearn构建lasso回归模型并指定样本权重:即构建带样本权重(sample_weight)的回归模型

逻辑回归 ValueError:发现样本数量不一致的输入变量:[699,