本文主要是介绍逻辑回归数学推倒讲解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
the logistic function公式
θ=es1+es 其中入参是s,也就是神经元的信号s= WTX , 它的意思是归类到目标分类的概率是多少。这个公式也叫sigmoid,因为他是平滑的临界值。
现在我们有h(x)= θ(s) ,这个被解释为一个概率的含义,举个例子,比如心脏病的概率是多少。
输入为一个向量x: 血脂水平,年龄,体重,血压等。
θ(s) :就是心脏病的概率,我们知道s= WTX 可以理解为 风险指数。
推广到一般的概率概念
数据 Data(x,y) 里面的y是二进制啊。这个数据集并没有给你概率,而是直接给你了到底y是归属与某个分类与否,举个例子,比如到底有心脏病,还是没有。并不会告诉你25%的概率生心脏病。
那么 y是有一个噪声的,并不准确。所以说目标函数
p(y|x)=f(x) for y=+1,
p(y|x)=1-f(x) for y=-1
公式1
y的分布概率是通过f来产生的。
我们想来学习一个目标函数g(x)= θ(WTX)≈ f(x)
现在的问题就是,我们如何来找到一个w,它能够产生和样本一样的概率分布的y。
错误度量
每一个(x,y) ,y 是被概率f(x)来产生的,比较常用的错误代价函数是likelihood
如果 目标函数就是f, 那么从x产生y的概率有多像,多类似。
如何来计算呢,我们来再回顾一下
- p(y|x)= θ(ywTx) 这个公式可以用来替代公式1
- θ(−s)=1−θ(s)
数据集的最大似然 D=(x1,y1),…,( xn,yn) 可以写成一个概率的连乘,这样就是把所有测试数据里面的的概率都考虑了一便。
公式如下:
max_value= ∏Ni=1θ(ynwTxn)
相当于最小化:
min_value=- 1N∏Ni=1θ(ynwTxn)
我们的目标就是把这个连乘写成一个对数函数的相加.
min_value= 1N∑Ni=1ln(1θ(ynwTxn))
这里 θ=11+e−s 所以上述公式可以简化为:
Ein=1N∑Ni=1ln(1+e−ynwTxn)
所以我们的误差度量函数可以写成如下的形式:
e(h(xn),yn)=ln(1+e−ynwTxn)
未完待续
这篇关于逻辑回归数学推倒讲解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!