python - 二元对数损失是否排除了基于 y 的方程的一部分?

标签 python machine-learning logistic-regression sklearn-pandas cross-entropy

假设对数损失方程为:

logLoss=−(1/N)*Σ_{i=1}^N (yi(log(pi))+(1−yi)log(1−pi))

其中 N 是样本数,yi...yiN 是因变量的实际值,pi...piN > 是逻辑回归的预测可能性

我是如何看待它的:

如果 yi = 0 则第一部分 yi(logpi) = 0

或者,如果yi = 1,则第二部分(1−yi)log(1−pi) = 0

现在,根据 y 的值,方程的一部分被排除。我的理解正确吗?

我的最终目标是了解如何解释对数损失的结果。

最佳答案

是的,您走在正确的道路上。请记住,p_i=P(y_i=1),基本上的想法是,损失函数需要以这样的方式定义,即惩罚预测与实际情况不匹配的元组。标签(例如,当 y_i=1p_i 较低时,由 yi(logpi) 部分处理,或者当 y_i=0p_i 很高,由 (1-yi)log(1-pi) 部分处理),同时它不应对预测与实际标签匹配的元组进行过多惩罚(例如,当 y_i=1p_i 为高时或当 y_i=0 时) > 且 p_i 较低)。

逻辑回归的损失函数(交叉熵)完全解决了损失函数的上述期望属性,如下图所示。

enter image description here

关于python - 二元对数损失是否排除了基于 y 的方程的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42308829/

相关文章:

python - 通过不使用通信的子进程捕获输出

python - 使用 python urllib2 获取位置 header 的值

statistics - channel : usage example

machine-learning - 在 PDF 文本挖掘中使用 AI/ML

python - 使用 sklearn 进行逻辑回归

python - 如何在简单的 Python 游戏中循环?

python - 在 Python 中对一维数据执行移动线性拟合

machine-learning - 从tensorflow保存示例文本分类模型tensorflow/examples/learn/text_classification.py

java - Spark Java 错误 : Size exceeds Integer. MAX_VALUE

python - 如何在 sklearn Logistic 回归的 one-vs-rest 方案中对概率进行归一化?