逻辑回归最终的所有结果都是0的原因

  统计/机器学习 回归分析 监督式学习    浏览次数: 173
0

逻辑回归结果一直是0,和选用的特征属性有关系吗

 

SpringtoString   2018-09-17 19:37



   3个回答 
2

估计是标签是0的数据太多,数据不平衡引起的。以sklearn.linear_model.LogisticRegression为例,你可以尝试:

1.设置参数class_weight=‘balanced’,或者手动设置0/1类的数据权重。

2.逻辑回归真正的输出是一个数据点属于各个类的概率。用predict_proba()可得到。但是为了简化应用,sklearn中predict()方法自己设置了一个阈值0.5,如果P(Y=1)>0.5,那么输出标签就是1。你可以用predict_proba()得到测试数据属于0/1的概率,然后自己设置阈值。

Zealing   2018-09-18 14:19

是这样的。大佬厉害,太感谢你了。请问你是如何对sklearn api掌握得这么好? - SpringtoString   2018-09-18 19:18
1

你说的“最终结果”是指什么?是概率呢还是分类呢?

如果数据非常倾斜,有可能得到的分类标签都是0(因为概率都小于0.5),但是概率不可能都是0。

Jiho   2018-09-17 22:28

我输出成标签了。。。数据非常倾斜的确非常倾斜 - SpringtoString   2018-09-18 19:35
1

题主不熟悉输出的格式的话,可以看看网上的例子,比如SofaSofa上的教程标杆模型:交通事故理赔审核

里面用的就是

clf.predict_proba(test)[:, 1]


u_u   2018-09-19 08:48



  相关主题

adaboost做回归预测的时候,是怎么调整样本权重的?   1回答

如果支持向量机做回归任务,支持向量是什么?   1回答

逻辑回归的前提假设是什么?   1回答

GBDT+LR的工作原理?   4回答

线性回归的bagging   2回答

可以对线性回归进行boosting吗?   3回答

python中可以做beta regression的包?   1回答

线性回归需要满足哪些基本前提假设   1回答

怎么理解分位数回归quantile regression的目标函数?   1回答

逻辑回归模型中变量的系数怎么理解?   4回答

泊松回归的公式是什么?   1回答

最小二乘线性回归的推导   2回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!