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

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

机器学习(Machine Learning)

简要声明

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


文章目录

  • 机器学习(Machine Learning)
    • 简要声明
  • 一、逻辑回归的基本原理
    • 分类判断条件
    • 模型输出的解释
    • Sigmoid 函数与 Logistic 函数
    • 逻辑回归模型的输出范围
    • 实际应用示例


一、逻辑回归的基本原理

逻辑回归是一种常用的分类算法,它可以将线性回归的输出映射到概率空间,从而实现二分类或多分类任务。其核心思想是通过一个线性函数来拟合数据,然后使用激活函数将其输出限制在 [0, 1] 区间内,表示为概率值。

逻辑回归模型的数学表达式为:

f w , b ( x ) = σ ( w x + b ) f_{w,b}(x) = \sigma(w x + b) fw,b(x)=σ(wx+b)

其中, f w , b ( x ) f_{w,b}(x) fw,b(x) 是模型的输出, w w w b b b 分别是权重和偏置项, σ \sigma σ 是激活函数,通常使用 Sigmoid 函数,其定义为:

σ ( z ) = 1 1 + e − z \sigma(z) = \frac{1}{1 + e^{-z}} σ(z)=1+ez1

通过 Sigmoid 函数,我们可以将线性回归的输出 z = w x + b z = wx + b z=wx+b 转换为概率值。当 z z z 很大时, σ ( z ) \sigma(z) σ(z) 接近于 1;当 z z z 很小时, σ ( z ) \sigma(z) σ(z) 接近于 0。

在这里插入图片描述

  • 在单变量图中,阳性结果同时显示为红色的 ‘X’ 和 y=1。阴性结果为蓝色 ‘O’,位于 y=0 处。
    在线性回归的情况下,y 不限于两个值,而是可以是任何值。
  • 在双变量图中,y 轴不可用。正面结果显示为红色“X”,而负面结果则使用蓝色“O”符号。
    在具有多个变量的线性回归的情况下,y 不会局限于两个值,而类似的图应该是三维的。

分类判断条件

在分类任务中,根据模型的输出来判断样本的类别。逻辑回归模型的分类判断条件如下:

条件分类结果
f w , b ( x ) ≥ 0.5 f_{w,b}(x) \geq 0.5 fw,b(x)0.5 y ^ = 1 \hat{y} = 1 y^=1
f w , b ( x ) < 0.5 f_{w,b}(x) < 0.5 fw,b(x)<0.5 y ^ = 0 \hat{y} = 0 y^=0

决策边界的选择会影响模型的分类结果,可能需要根据具体问题调整。

模型输出的解释

逻辑回归模型的输出可以解释为样本属于正类(1)的概率。数学表达式为:

f w → , b ( x → ) = P ( y = 1 ∣ x → ; w → , b ) f_{\overrightarrow{w}, b}(\overrightarrow{x}) = P(y = 1 | \overrightarrow{x}; \overrightarrow{w}, b) fw ,b(x )=P(y=1∣x ;w ,b)

这意味着,给定输入特征 x → \overrightarrow{x} x 和模型参数 w → , b \overrightarrow{w}, b w ,b,模型输出的是样本 y y y 属于正类(1)的概率。例如,如果 f w → , b ( x → ) = 0.7 f_{\overrightarrow{w}, b}(\overrightarrow{x}) = 0.7 fw ,b(x )=0.7,表示模型预测该样本有 70% 的概率属于正类(1)。

由于概率的性质,我们有:

P ( y = 0 ) + P ( y = 1 ) = 1 P(y = 0) + P(y = 1) = 1 P(y=0)+P(y=1)=1

Sigmoid 函数与 Logistic 函数

为了将线性回归的输出限制在 [0, 1] 区间内,逻辑回归使用了 Sigmoid 函数(也称为 Logistic 函数)。其数学定义为:

g ( z ) = 1 1 + e − z g(z) = \frac{1}{1 + e^{-z}} g(z)=1+ez1

其中, z z z 是线性回归的输出,即:

z = w → ⋅ x → + b z = \overrightarrow{w} \cdot \overrightarrow{x} + b z=w x +b

通过 Sigmoid 函数,线性回归的输出被转换为概率值。Sigmoid 函数的曲线显示,当 z z z 很大时, g ( z ) g(z) g(z) 接近于 1;当 z z z 很小时, g ( z ) g(z) g(z) 接近于 0。
在这里插入图片描述

逻辑回归模型的输出范围

逻辑回归模型的输出范围在 0 和 1 之间,得益于 Sigmoid 函数的特性:

0 < g ( z ) < 1 0 < g(z) < 1 0<g(z)<1

因此,逻辑回归模型的输出可以解释为概率值,表示样本属于正类(1)的可能性。

# Generate an array of evenly spaced values between -10 and 10
z_tmp = np.arange(-10,11)y = sigmoid(z_tmp)np.set_printoptions(precision=3) 
print("Input (z), Output (sigmoid(z))")
print(np.c_[z_tmp, y])

输出结果为

在这里插入图片描述

实际应用示例

在这里插入图片描述

在这里插入图片描述
可以看见线性函数受数据影响很大
在这里插入图片描述
在这里插入图片描述
逻辑函数很好地拟合了数据

以肿瘤大小(直径,单位为厘米)为输入特征 x x x,肿瘤是否为恶性(1 表示恶性,0 表示良性)为输出 y y y。逻辑回归模型可以预测给定肿瘤大小的情况下,肿瘤为恶性的概率。

例如,假设模型预测当肿瘤大小为某个值时, f w → , b ( x → ) = 0.7 f_{\overrightarrow{w}, b}(\overrightarrow{x}) = 0.7 fw ,b(x )=0.7,意味着模型认为该肿瘤有 70% 的概率为恶性。


continue…

相关文章:

  • 浅谈C# record关键字
  • DeepSeek谈《凤凰项目 一个IT运维的传奇故事》
  • 蛋白质数据库UniProt介绍
  • git中reset和checkout的用法
  • Webug4.0通关笔记06- 第8关CSV注入
  • 文件读取操作
  • 【论文速读】《Scaling Scaling Laws with Board Games》
  • 数据结构学习篇——哈希
  • 冰冰一号教程网--介绍采用vuepress搭建个人博客
  • Git 忽略文件配置 .gitignore
  • 客户服务升级:智能语音外呼系统在多领域的场景应用解析
  • navicat中导出数据表结构并在word更改为三线表(适用于navicat导不出doc)
  • rails 创建数据库表
  • java实现序列化与反序列化
  • halcon打开图形窗口
  • SpringBoot+Redis全局唯一ID生成器
  • Vue3中到达可视区域后执行
  • Tauri v1 与 v2 配置对比
  • C++好用的打印日志类
  • Cangjie Magic在医疗领域的应用:智能体技术如何重塑医疗数字化
  • 铁路12306回应“五一前大量放票”传闻:个别方向和区段出现新增票额,均即时进入系统重新发售
  • 国家医保局副局长颜清辉调任人社部副部长
  • 两部门调度部署“五一”假期安全防范工作,要求抓好旅游安全
  • 三大猪企一季度同比均实现扭亏为盈,营收同比均实现增长
  • 大型长读长RNA测序数据集发布,有助制定精准诊疗策略
  • 体坛联播|欧冠半决赛阿森纳主场不敌巴黎,北京男篮险胜山西