从一个简单的数据集学习Logistic Regression

本文深入探讨了Logistic Regression的原理和应用,包括Sigmoid函数的特性、模型的优化目标——极大似然估计,以及如何通过梯度下降法求解损失函数的最小值。通过代码示例展示了Logistic Regression模型的训练过程,并提供了训练和测试数据集的链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Logistic Regression

Logistic Regression是一种被广泛使用的分类算法,通过训练数据中的正负样本,学习样本特征到样本标签之间的假设函数。

通常用于将数据映射到不同类别的函数成为阈值函数,常用的阈值函数为Sigmoid函数,形式为:
f(x)=11+e−x f(x)=\frac{1}{1+e^{-x}} f(x)=1+ex1
Sigmoid函数的图像:

在这里插入图片描述
从Sigmoid的图像可以看出函数的值域为(0,1),在0附近变化比较明显

Sigmoid函数的python代码:

def sig(x):
    '''Sigmoid函数
    input:  x(mat):feature * w
    output: sigmoid(x)(mat):Sigmoid值
    '''
    return 1.0 / (1 + np.exp(-x))

因此对于输入向量X,其属于正例和反例的概率为:
正例的概率:P(y=1∣X,W,b)=11+e−(WX+b)反例的概率:P(y=1∣X,W,b)=e−(WX+b)1+e−(WX+b) 正例的概率: P(y=1|X,W,b)=\frac{1}{1+e^{-(WX+b)}}\\反例的概率: P(y=1|X,W,b)=\frac{e^{-(WX+b)}}{1+e^{-(WX+b)}} P(y=1X,W,b)=1+eWX+b1P(y=1X,W,b)=1+eWX+be(WX+b)
对于Logistic Regression算法来说,如何定义W和b使得算法最优?(什么是最优)

为了求解最优的权重矩阵W和偏置向量b,需要定义损失函数

对于上述的Logistic Regression算法,属于类别 y 的概率是
P(y∣X,W,b)=σ(WX+b)y(1−σ(WX+b))1−y P(y|X,W,b)=\sigma(WX+b)^y(1-\sigma(WX+b))^{1-y} P(yX,W,b)=σ(WX+b)y(1σ(WX+b))1y
其中 σ 表示的是Sigmoid函数。

在此用极大似然法进行估计。假设训练数据集有m个训练样本{ {X1,Y1},{X2,Y2},……{Xn,Yn}},则其似然函数为:
LW,b=∏i=1m[hW,b(Xi)yi(1−hW,b(Xi))1−yi] L_{W,b}=\prod_{i=1}^{m}[h_{W,b}(X^{i})^{y^i}(1-h_{W,b}(X^i))^{1-y^i}] LW,b=i=1m[hW,b(Xi

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值