当前位置: 首页 > news >正文

【学习笔记】机器学习(Machine Learning) | 第五章(3)| 分类与逻辑回归

机器学习(Machine Learning)

简要声明

基于吴恩达教授(Andrew Ng)课程视频
BiliBili课程资源


文章目录

  • 机器学习(Machine Learning)
    • 简要声明
  • 三、代价函数
    • 平方误差代价函数
    • 逻辑回归的损失函数
      • 损失函数的性质
    • 逻辑回归的代价函数
    • 代价函数的凸性
    • 简化的损失函数
    • 简化的代价函数


一、逻辑回归的基本原理

二、决策边界

三、代价函数

平方误差代价函数

在逻辑回归中,如果我们直接使用线性回归的平方误差代价函数:

J ( w → , b ) = 1 m ∑ i = 1 m 1 2 ( f w → , b ( x → ( i ) ) − y ( i ) ) 2 J(\overrightarrow{w}, b) = \frac{1}{m} \sum_{i=1}^{m} \frac{1}{2} (f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}) - y^{(i)})^2 J(w ,b)=m1i=1m21(fw ,b(x (i))y(i))2

其中, f w → , b ( x → ) = w → ⋅ x → + b f_{\overrightarrow{w}, b}(\overrightarrow{x}) = \overrightarrow{w} \cdot \overrightarrow{x} + b fw ,b(x )=w x +b 是线性回归模型的输出。

然而,对于逻辑回归,这种代价函数可能会导致非凸问题,使得梯度下降算法难以收敛到全局最小值。

在这里插入图片描述
线性回归
在这里插入图片描述
并不像线性回归的“汤碗”那么光滑

逻辑回归的损失函数

为了解决这个问题,逻辑回归采用了不同的损失函数。对于单个训练样本 ( x → ( i ) , y ( i ) ) (\overrightarrow{x}^{(i)}, y^{(i)}) (x (i),y(i)),逻辑回归的损失函数定义为:

L ( f w → , b ( x → ( i ) ) , y ( i ) ) = { − l o g ( f w → , b ( x → ( i ) ) ) if  y ( i ) = 1 − l o g ( 1 − f w → , b ( x → ( i ) ) ) if  y ( i ) = 0 L(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}), y^{(i)}) = \begin{cases} -log(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) & \text{if } y^{(i)} = 1 \\ -log(1 - f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) & \text{if } y^{(i)} = 0 \end{cases} L(fw ,b(x (i)),y(i))={log(fw ,b(x (i)))log(1fw ,b(x (i)))if y(i)=1if y(i)=0

其中, f w → , b ( x → ) = 1 1 + e − ( w → ⋅ x → + b ) f_{\overrightarrow{w}, b}(\overrightarrow{x}) = \frac{1}{1 + e^{-(\overrightarrow{w} \cdot \overrightarrow{x} + b)}} fw ,b(x )=1+e(w x +b)1 是逻辑回归模型的输出。

损失函数的性质

  • y ( i ) = 1 y^{(i)} = 1 y(i)=1 时:

    • 如果 f w → , b ( x → ( i ) ) → 1 f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}) \to 1 fw ,b(x (i))1,损失 → 0 \to 0 0
    • 如果 f w → , b ( x → ( i ) ) → 0 f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}) \to 0 fw ,b(x (i))0,损失 → ∞ \to \infty
  • y ( i ) = 0 y^{(i)} = 0 y(i)=0 时:

    • 如果 f w → , b ( x → ( i ) ) → 0 f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}) \to 0 fw ,b(x (i))0,损失 → 0 \to 0 0
    • 如果 f w → , b ( x → ( i ) ) → 1 f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}) \to 1 fw ,b(x (i))1,损失 → ∞ \to \infty

这种损失函数的设计使得模型在预测错误时付出更大的代价,从而激励模型尽可能准确地预测。
在这里插入图片描述

逻辑回归的代价函数

逻辑回归的代价函数是所有训练样本损失的平均值:

J ( w → , b ) = 1 m ∑ i = 1 m L ( f w → , b ( x → ( i ) ) , y ( i ) ) J(\overrightarrow{w}, b) = \frac{1}{m} \sum_{i=1}^{m} L(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}), y^{(i)}) J(w ,b)=m1i=1mL(fw ,b(x (i)),y(i))

展开后为:

J ( w → , b ) = 1 m ∑ i = 1 m { − l o g ( f w → , b ( x → ( i ) ) ) if  y ( i ) = 1 − l o g ( 1 − f w → , b ( x → ( i ) ) ) if  y ( i ) = 0 J(\overrightarrow{w}, b) = \frac{1}{m} \sum_{i=1}^{m} \begin{cases} -log(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) & \text{if } y^{(i)} = 1 \\ -log(1 - f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) & \text{if } y^{(i)} = 0 \end{cases} J(w ,b)=m1i=1m{log(fw ,b(x (i)))log(1fw ,b(x (i)))if y(i)=1if y(i)=0

代价函数的凸性

逻辑回归的代价函数是凸的,这意味着它只有一个全局最小值,梯度下降算法可以保证收敛到这个全局最小值。

相比之下,平方误差代价函数在逻辑回归中可能会导致非凸问题,使得梯度下降算法陷入局部最小值。
在这里插入图片描述

简化的损失函数

逻辑回归的损失函数可以简化为一个统一的表达式:

L ( f w → , b ( x → ( i ) ) , y ( i ) ) = − y ( i ) log ⁡ ( f w → , b ( x → ( i ) ) ) − ( 1 − y ( i ) ) log ⁡ ( 1 − f w → , b ( x → ( i ) ) ) L(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)}), y^{(i)}) = - y^{(i)} \log(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) - (1 - y^{(i)}) \log(1 - f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) L(fw ,b(x (i)),y(i))=y(i)log(fw ,b(x (i)))(1y(i))log(1fw ,b(x (i)))

这个表达式结合了两种情况:

  • y ( i ) = 1 y^{(i)} = 1 y(i)=1 时,损失函数为 − log ⁡ ( f w → , b ( x → ( i ) ) ) - \log(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) log(fw ,b(x (i)))
  • y ( i ) = 0 y^{(i)} = 0 y(i)=0 时,损失函数为 − log ⁡ ( 1 − f w → , b ( x → ( i ) ) ) - \log(1 - f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) log(1fw ,b(x (i)))

简化的代价函数

逻辑回归的代价函数也可以相应地简化为:

J ( w → , b ) = − 1 m ∑ i = 1 m [ y ( i ) log ⁡ ( f w → , b ( x → ( i ) ) ) + ( 1 − y ( i ) ) log ⁡ ( 1 − f w → , b ( x → ( i ) ) ) ] J(\overrightarrow{w}, b) = - \frac{1}{m} \sum_{i=1}^{m} \left[ y^{(i)} \log(f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) + (1 - y^{(i)}) \log(1 - f_{\overrightarrow{w}, b}(\overrightarrow{x}^{(i)})) \right] J(w ,b)=m1i=1m[y(i)log(fw ,b(x (i)))+(1y(i))log(1fw ,b(x (i)))]

这个代价函数实际上是对数似然函数的负数,因此最小化这个代价函数等价于最大化似然函数。这种方法被称为 最大似然估计(Maximum Likelihood Estimation)。

逻辑回归采用了不同于线性回归的损失函数,以适应分类问题的特点。其代价函数是凸的,保证了梯度下降算法可以收敛到全局最小值。通过最小化这个代价函数,我们可以找到最优的模型参数,使模型在训练数据上的表现最佳。


continue…

相关文章:

  • Go小技巧易错点100例(三十)
  • DEX平台引领风尚 XBIT让数字资产回归简单与透明
  • 乐视系列玩机------乐视pro3精英版-x722的一些刷机救砖教程与固件资源
  • Gateway网关:路由和鉴权
  • Android控件View、ImageView、WebView用法
  • QT 在圆的边界画出圆
  • Python打造智能化多目标车辆跟踪系统:从理论到实践
  • LeetCode 热题 100 70. 爬楼梯
  • python读取图片自动旋转的问题解决
  • 深入解析:删除有序数组中的重复项 II——巧用双指针实现条件筛选
  • 【Leetcode 每日一题 - 补卡】838. 推多米诺
  • 掌握流量管理:利用 EKS Ingress 和 AWS 负载均衡器控制器
  • 用户模块 - IP归属地技术方案
  • TCP/IP协议深度解析:从分层架构到TCP核心机制
  • MySQL 复合查询
  • Spring AMQP源码解析
  • 英伟达语音识别模型论文速读:Fast Conformer
  • MongoDB入门详解
  • \documentclass[lettersize,journal]{IEEEtran}什么意思
  • 【计算机视觉】三维重建:tiny-cuda-nn:高性能神经网络推理与训练的CUDA加速库
  • 科技日报刊文批院士专家“赶场式”跑会:助长浮躁之气功利之心
  • 交通运输部、水利部同日召开会议,深刻汲取贵州游船倾覆事故教训
  • 我给狗狗上课,月赚四五万
  • 社区来电催生?多地回应:系为居民提供卫生健康服务
  • 2025上海车展圆满闭幕,共接待海内外观众101万人次
  • 案件发回重审,李在明参选韩总统之路再添波折