为什么逻辑回归或者神经网络可以预测概率

之前没弄懂,刚理解,仅记录个人感悟,若有帮助最好,无助勿喷

代价函数

我们判断一个模型拟合的状态的判断标准是代价函数的得到的结果的涨落,一般来讲,代价函数得到最低的结果模型训练也就结束了。对于概率的预测也不例外,也是通过最大化每一种一致情况的概率来对模型的参数进行模拟,比如对于标记的癌症样本的组织数据,建立模型(预测概率)的时候就要把这些样本预测为癌症的概率最大化。

激活函数(仅讨论输出层)

这里为了把模型的输出结果表示为概率,就需要把输出的值表示为0-1之间的值,那么就需要将输出的数据利用其他的激活函数将输出值转化为0-1之间的值,可以用sigmoid,tanh函数来进行这样的转化。
转化完成后就到了最后一步,提取代价函数的值,代价函数的值的目的就是最小化误差,这里表示的方式就比较巧妙:
为了简化这里仅用0,1两种结果来表示(比如是否有癌症),这里的训练集的结果只有两种y=1,y=0,定义输出的数值为y*。
定义:
当需要预测的y=1时,概率为y*(也就是转化之后的0-1之间的值)
P(y=1|x)=y* : P(y=1|x)表示贝叶斯概率公式,即在给定的x参数值(某一个样本),对应的y=1的概率。
当需要预测的y=0时概率也就是y的反面,即为1-y
P(y=0|x)=1-y*
我们的目标就是当y=1时,让y尽可能的大,当y=0时,y尽可能的小,但是目前有两个式子,因此我们需要进一步的将两个式子合并,并且保持内在的含义不变,一些我不知道的人就发明了下面这个巧妙的式子:
P(y|x)=y*yX(1-y*)(1-y)
这个式子就表示了上面两个式子的含义即:
y=1时,P(y=1|x)=y*
y=0时,P(y=0|x)=1-y*
接下来就是训练模型,让y=1时,y最大,y=0时,1-y最大就行了。
在使用中为了方便对P(y|x)取了log,因为log是单调递增的函数,不影响取极值。即为P(y|x)=ylny*+(1-y)ln(1-y*)
但是我们代价函数一般情况下都是求最小是,因此在取log后等式前面加上一个负号,就可以取最小值了,然后就可以利用最小的代价值来求取模型的值了。也就是P(y|x)=-ylny*+(y-1)ln(1-y*)

希望帮到你,不喜勿喷,谢谢!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值