深度学习-1:逻辑回归和梯度下降

逻辑回归

逻辑回归是一个二分分类问题

比如判断一张图片中是否是猫就是一个二类分类问题

图像由像素值组成,要将图像输入模型,就将其变为一个向量,该向量存储三个通道上的所有像素值,若图像尺寸为64x64x3,则向量维度为12288

(x,y)表示一个样本, x是一个n维向量,y是该向量对应的标签,m是样本数量

样本数据也可以用矩阵表示,x在矩阵中以列的形式存储,矩阵维度为nxm,Y矩阵存储对应标签

逻辑回归实际上是一个学习算法,需要学习参数w和b

获得y_hat = w.T*x+b

我们想要得到该输入是猫图的概率,也就是希望y_hat是一个0-1之间的值,但w.T*x+b所得值往往不为0-1之间的概率,所以使用sigmoid函数对w.T*x+b进行变换,输出一个概率值,w.T*x+b越大,输出概率越接近于1

l表示单个样本损失,J表示整个训练集的总损失,即成本函数,用于衡量W和b的效果

学习算法实际上就是要找到合适的w和b使J最小

学习算法旨在学习到合适的w和b使J获得最小值,对w和b进行初始化后,利用梯度下降法对w和b进行更新,以获得最小的J值

求成本函数J对于参数的导数,即该点处的斜率,方向总是指向J的最小值

以下图为例,将使J值最小的W值成为Wmin

当W>Wmin时,导数值即斜率大于0,利用梯度法对W进行更新,W会变小

当W<Wmin时,导数值即斜率小于0,利用梯度法对W进行更新,W会变大

都会往取得最小值的地方进行更新

以该直线为例,fa对a的导数为3,意思是当a变化任意值,fa都会以三倍的速率进行变化

计算图反向传播,最终的输出J可对流程图中的任何变量求导

在求导过程中有中间变量,则使用链式法则进行求导

在python编程中,dJ/da 直接写成da

单个样本的一次梯度下降

多样本的梯度下降

J,dw1,dw2,db作为累加器,记录一次迭代中多个样本损失,梯度总和,然后求这些值的平均值,对参数进行更新

相关推荐
今日说"法"4 小时前
数值计算与浮点误差:深度学习中梯度崩溃的数学根源与归一化对策
人工智能·深度学习
LaughingZhu4 小时前
Product Hunt 每日热榜 | 2026-04-21
人工智能·经验分享·深度学习·神经网络·产品运营
keineahnung23455 小时前
PyTorch 張量尺寸為 1 時,步長為何不具語意?
人工智能·pytorch·python·深度学习
思绪无限5 小时前
YOLOv5至YOLOv12升级:日常场景下的人脸检测系统的设计与实现(完整代码+界面+数据集项目)
深度学习·yolo·目标检测·日常场景下的人脸检测·yolov12·yolo全家桶
一休哥※6 小时前
YOLOv11改进系列 | 引入EMO ICCV2023的C3k2_iRMB模块,轻量注意力残差混合块增强C3k2,多尺度分割更稳更准
深度学习·yolo·计算机视觉
小超同学你好6 小时前
Transformer 27. Vision Transformer(ViT):把图像当作「词序列」的编码器
人工智能·深度学习·transformer
赋创小助手7 小时前
RTX PRO 6000 vs RTX 5090:从一组230B模型测试数据谈企业级推理选型
服务器·人工智能·科技·深度学习·自然语言处理
不才小强7 小时前
深度学习模型部署实战指南
人工智能·深度学习
思绪无限8 小时前
YOLOv5至YOLOv12升级:车型识别与计数系统的设计与实现(完整代码+界面+数据集项目)
深度学习·yolo·目标检测·yolov12·yolo全家桶·车型识别与计数
思绪无限8 小时前
YOLOv5至YOLOv12升级:田间杂草检测系统的设计与实现(完整代码+界面+数据集项目)
深度学习·yolo·目标检测·田间杂草检测·yolov12·yolo全家桶