Coursera deeplearning.ai 深度学习笔记1-2-Neural Network Basics-逻辑回归原理推导与代码实现

逻辑回归(Logistic Regression)是一个非线性回归模型,主要应用于0、1分类问题,也可看作单层的神经网络。

1. 原理推导

1.1 样本定义

每个样本计作(x, y),其中x为特征向量,y为标签0或1,x包含nx个特征:
x=x1x2xnx(1)
训练集包含m个样本: { (x(1),y(1)),(x(2),y(2)),,(x(m),y(m))} ,上标(m)为第m个样本。

1.2 逻辑回归模型

问题:给定x,如何训练参数wb,得到期望值 a=P(y=1|x) ?
为了保证期望值a在0 ~ 1之间,给定逻辑回归模型:

z=wTx+b(2)
a=σ(z)(3)
式中,w维度为(nx, 1),b为实数,z为线性模型,σ(z)为非线性的sigmoid函数。

1.3 sigmoid函数

σ(z)=11+ez(4)
z → ∞时,σ(z) → 1;当z → -∞时,σ(z) → 0。函数值处于0 ~ 1之间,因此适合于0、1分类问题。曲线如下:

1.4 代价函数(Cost Function)

目标:给定训练集 { (x(1),y(1)),(x(2),y(2)),,(x(m),y(m))} ,预测值a(i)y(i)
由于期望 a=P(y=1|x) ,可得:
{ P(y=1|x)=aP(y=0|x)=1a(5)
使用概率论中极大似然估计(Maximum Likelihood Estimate,MLE)的方法来计算损失函数,可将概率写成:
P(y|x)=ay(1a)1y(6)
取对数似然函数:
log[P(y|x)]=yloga+(1y)log(1a)=L(a,y)(7)
上式中,L(a, y)为损失函数(Loss Function),最大似然估计的目标是使log[P(y|x)]最大化,也就是损失函数L(a, y)最小化。则损失函数为:
L(a,y)=[yloga+(1y)log(1a)](8)
y = 1时, L(a,1)=loga ,要使L尽可能小,则预测值a尽可能大,最大为1;
y = 0时, L(a,0)=log(1a) ,要使L尽可能小,则预测值a尽可能小,最小为0。
对于m个训练样本,假设训练样本互相独立,则m个样本的联合概率可以写成:
Pmsamples=i=1mP(y(i)x(i))

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值