02 Deep learning神经网络的编程基础 逻辑回归--吴恩达

逻辑回归

逻辑回归是一种用于解决二分类任务(如预测是否是猫咪等)的统计学习方法。尽管名称中包含"回归",但其本质是通过线性回归的变体输出概率值,并使用Sigmoid函数将线性结果映射到[0,1]区间。

以猫咪预测为例

假设单个样本/单张图片为( x \mathbf{x} x, y \mathbf{y} y),特征向量X = x \mathbf{x} x,则 y ^ \hat{y} y^即为X 的预测值, y ^ \hat{y} y^=P(y= y \mathbf{y} y/ x \mathbf{x} x), y ^ \hat{y} y^∈(0,1)。

假设特征权重参数为 w \mathbf{w} w,是一个nx维的向量,则有:
y ^ \hat{y} y^= σ \sigma σ( w ⊤ w^\top w⊤ x \mathcal{x} x+ b \mathcal{b} b)
z \mathcal{z} z = w ⊤ w^\top w⊤ x \mathcal{x} x+ b \mathcal{b} b
y ^ \hat{y} y^= σ ( z ) \sigma(z) σ(z)

Sigmoid函数

Sigmoid函数是一种常用的S型激活函数 ,数学表达式为:
σ ( z ) = 1 1 + e − z \sigma(z) = \frac{1}{1 + e^{-z}} σ(z)=1+e−z1

机器学习便是学习参数 x \mathcal{x} x和 b \mathcal{b} b,使得 y ^ \hat{y} y^尽可能接近实际值 y \mathcal{y} y。

符号惯例介绍

定义一个额外特征向量 x 0 \mathcal{x_0} x0 =1,
y ^ \hat{y} y^= σ \sigma σ( θ T \theta^{T} θT x \mathcal{x} x ),其中 θ 0 \theta_0 θ0充当 b \mathcal{b} b,其余 θ 1 \theta_1 θ1到 θ n x \theta_{nx} θnx充当 w \mathbf{w} w

核心特性
  1. 输出范围 (0,1) ,适合概率映射
  2. 单调性 :全程可导且导数最大值为 0.25 (出现在 (出现在 (出现在x=0处)
  3. 导数特性 : σ ′ ( x ) = σ ( x ) ( 1 − σ ( x ) ) \sigma'(x) = \sigma(x)(1 - \sigma(x)) σ′(x)=σ(x)(1−σ(x)),便于梯度计算
Python实现
python 复制代码
import numpy as np

def sigmoid(x):
    return 1 / (1 + np.exp(-x))

# 支持向量化计算
print(sigmoid(np.array([-1.0, 0.0, 1.0])))  # 输出:[0.2689, 0.5, 0.7311]
典型应用
  1. 逻辑回归中的概率转换
  2. 神经网络隐藏层的激活函数
  3. 强化学习中的动作选择概率
局限说明
  • 深层网络易出现梯度消失(导数值随网络深度指数衰减)
  • 输出不以零为中心可能影响优化效率
  • 现多被ReLU系列函数替代用于隐藏层
相关推荐
XIAO·宝8 小时前
深度学习------YOLOv4
深度学习·yolo·目标跟踪
小白狮ww8 小时前
LiveCC 首个视频解说大模型开源,比赛视频也能轻松拿捏!
人工智能·深度学习·机器学习
墨利昂10 小时前
10.17RNN情感分析实验:加载预训练词向量模块整理
人工智能·rnn·深度学习
JJJJ_iii11 小时前
【机器学习05】神经网络、模型表示、前向传播、TensorFlow实现
人工智能·pytorch·python·深度学习·神经网络·机器学习·tensorflow
CLubiy11 小时前
【研究生随笔】PyTorch中的概率论
人工智能·pytorch·深度学习·概率论
盼小辉丶12 小时前
PyTorch实战(9)——从零开始实现Transformer
pytorch·深度学习·transformer
哥布林学者12 小时前
吴恩达深度学习课程一:神经网络和深度学习 第三周:浅层神经网络 课后作业和代码实践
深度学习·ai
渡我白衣13 小时前
未来的 AI 操作系统(三)——智能的中枢:从模型到系统的统一
人工智能·深度学习·ui·语言模型·人机交互
Blossom.11813 小时前
把 AI“缝”进布里:生成式编织神经网络让布料自带摄像头
人工智能·python·单片机·深度学习·神经网络·目标检测·机器学习
曾经的三心草13 小时前
深度学习1-简介-简单实现-手写数字识别
人工智能·深度学习