machine-learning - sigmoid 函数在逻辑回归中真的很重要吗?

标签 machine-learning statistics logistic-regression

我实现了一个二元逻辑回归分类器。只是为了玩,我用 tanh 替换了 sigmoid 函数 (1/1 + exp(-z))。结果完全相同,分类阈值相同,均为 0.5,尽管 tanh 的范围为 {-1,1},而 sigmoid 的范围为 {0,1}。

我们使用 sigmoid 函数真的很重要吗?或者像 tanh 这样的任何可微分的非线性函数都可以工作吗?

谢谢。

最佳答案

训练中你是否也改变了函数,或者只是使用相同的训练方法,然后将 sigmoid 改为 tanh?

我认为很可能发生的事情如下。看一下 sigmoid 和 tanh 的图表:

乙状结肠:http://www.wolframalpha.com/input/?i=plot+sigmoid%28x%29+for+x%3D%28-1%2C+1%29 tanh:http://www.wolframalpha.com/input/?i=plot+tanh%28x%29+for+x%3D%28-1%2C+1%29

我们可以看到,在 tanh 情况下,值 y = 0.5 约为 x = 0.5。在 sigmoid 中,x = 0.5 大致得出 y = 0.62。因此,我认为现在可能发生的情况是您的数据不包含任何落在该范围内的点,因此您会得到完全相同的结果。尝试打印数据的 sigmoid 值,看看是否有介于 0.5 和 0.62 之间的值。

使用 sigmoid 函数的原因是它源自概率和最大似然。虽然其他函数的工作原理可能非常相似,但它们缺乏这种概率理论背景。有关详细信息,请参阅示例 http://luna.cas.usf.edu/~mbrannic/files/regression/Logistic.htmlhttp://www.cs.cmu.edu/~tom/mlbook/NBayesLogReg.pdf

关于machine-learning - sigmoid 函数在逻辑回归中真的很重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21507593/

相关文章:

machine-learning - 如何纠正传感器因外部环境而产生的漂移?

python-3.x - 通过Wit.ai运行mysql查询

python - 用keras进行近似

android - Google Play Developer Console 中的奇怪统计数据

Python Pandas 回归

python - 无法提高 Oxford-102 (Tensorflow) 上 AlexNet 的准确性

python - 使用 Python 求解四分位数和十分位数

machine-learning - 逻辑回归中的负对数似然维度

python - Scikit LogisticRegression 中的情绪预测错误

plot - 使用 pROC 包的特异性/灵敏度与截止点