除了得到最小的W之外,如何节省这个探索最优W的过程,也是很重要的一点。假如把这个过程比作从山上的顶点开始下山,把图中必定游玩的经典比作最优权重,那么节省的过程,就是找到下山的最短路径的过程。而在下山的过程中,我们通常会根据脚传来的感觉去判断地面凹凸不平的情况,从而选择地势更矮的部分去下山,我们所走的每一步都是往更低的方向走,且由于每次我们都是选择往最矮的方向走,可以节省很多不必要的力气。

像这种一步一步去判断当前最优的方法,就是我们常说的梯度下降法,而每次选择更低的方向就好比我们在每个x点上,将前后的值作差,并令这个步长接近于0,求得的斜率就是我们每一步要选择的梯度。不过与一维函数不同的是,由于输入的x可能是向量的形式,所以求得的梯度一般都是由偏导数组成的向量,也就能看到在当前向量下的各个方向的最优斜率,从而让模型明确该如何优化。

一般在计算机中,用有限差分法从传统的意义上,通过逼近极限来计算梯度,如下图:

对于每一步的梯度,对计算方向上的数据加0.0001,然后计算改变前后的损失值差除以0.0001来作为这个偏导数。但这个方法相当于要对向量的每一项都进行计算,如果我们在实际应用时,用到的卷积网络很大,向量W可能不只有10个类别,那么要一步步去迭代计算每一项会让我们的函数计算变得非常的缓慢。我们一般采用的方式是直接对梯度的公式进行微分运算,这就相当于我们只需要计算一个公式表达式,剩下的直接带入值即可。不过这并不是说有限差分法不好,用它来计算可以保证结果的准确性(因为其是从定义出发),所以我们会用它来进行调试,在模型训练前选取一些数据分别用微分法和有限差分法计算去对比,从而确认代码的方向无误,我们把前者叫解析梯度,后者叫做数值梯度。

所以在实际使用中,步骤通常是先随机分配权重,去计算当前的损失值、梯度以及梯度相反的方向(从梯度计算公式出发,x是向量时,方向导数是梯度和向量的点积,公式里是取夹角的cos值,也就能知道夹角为0度时其取最大值1,所以梯度的方向是增加函数值的方向),从而确定要怎么更新权重,再重复这一步骤知道损失为0。但在计算梯度时的步长是我们人为设定的(又叫学习率),是每经过多少就要更新权重。为了谨慎,我想很多人都会习惯性往小的参数设置,但并不是说设置一个很小的步长,就一定能获得最优解,因为这很可能会因为步长过小,导致在很小的一段数据里,模型被后续大的梯度误导以为已经求得了最优的权重,类似于在山上到达了一个较小的山谷,但由于四周看不到更矮的地方,就以为自己到了山脚。

不过如果数据集比较大,尽管我们用了很好的优化算法和函数表达,由于梯度下降是计算梯度和,那么每次梯度下降,其实都是相当于做了N次计算,而损失和也需要做N次运算,会使计算过程变得非常缓慢,所以一般我们会取数据集的一小部分取计算梯度来估算整个数据集的梯度,这叫做随机梯度下降,所取得数据集叫minibatch,一般是2的n次幂。

不过在现在的普遍处理中,我们在进行线性分类时,一般都会先进行特征处理,即先对图片的像素做处理,提取出某类特征的数字作为输入,而不是直接把像素转换为向量输入进去。因为线性分类的本质是可以看做在平面图中用直线作为决策边界去划分不同类别,但如果图片的两个类别在平面图中是以圆的形式存在,直线是无法区分的,而转换成特征的形式其实就是把他们变成在平面图上按照类直线排列的形式,这样有助于模型区分。

学习来自于斯坦福教程:Stanford University CS231n: Deep Learning for Computer Vision

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/86938.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/86938.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/86938.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenCV计算机视觉实战(14)——直方图均衡化

OpenCV计算机视觉实战(14)——直方图均衡化 0. 前言1. CLAHE 自适应均衡1.1 应用场景1.2 实现过程 2. 直方图反向投影2.1 应用场景2.2 实现过程 3. 基于颜色的目标追踪小结系列链接 0. 前言 在图像处理与计算机视觉领域,直方图技术是最直观且…

基于uniapp的老年皮肤健康管理微信小程序平台(源码+论文+部署+安装+售后)

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,我会一一回复,希望帮助更多的人。 系统背景 近年来,我国人口老龄化进程不断加快,据国家统计局数据显示&#…

MySQL(106)如何设计分片键?

设计分片键(Sharding Key)是数据库分片的核心,它决定了将数据分配到不同分片的方式。一个好的分片键应该能够均衡地分布数据,避免热点问题,提高查询性能。下面将详细介绍如何设计分片键,并结合代码进行说明…

汽车一键启动升级手机控车

汽车一键启动升级手机控车实现手机远程启动,不改变原车任何功能且全部免接线。升级后原车遥控器能在有效范围内启动车辆。移动管家手机控车一键启动系统用手机远程控制,完美兼容原车遥控器。支持长安、别克、宝马、奥迪等众多系列车型,市场99…

【开源项目】「安卓原生3D开源渲染引擎」:Sceneform‑EQR

「安卓原生3D开源渲染引擎」:Sceneform‑EQR 渲染引擎 “那一夜凌晨3点,第一次提交 PR 的手在抖……”——我深刻体会这种忐忑与激动。 仓库地址:(https://github.com/eqgis/Sceneform-EQR)。 一、前言:开源对我意味着什么 DIY 的…

建造者模式 - Flutter中的乐高大师,优雅组装复杂UI组件!

痛点场景:复杂的对话框配置 假设你需要创建一个多功能对话框: CustomDialog(title: 警告,content: 确定要删除吗?,titleStyle: TextStyle(fontSize: 20, color: Colors.red),contentStyle: TextStyle(fontSize: 16),backgroundColor: Color…

基于Java+Spring Boot的大学校园生活信息平台

源码编号:S559 源码名称:基于Spring Boot的大学校园生活信息平台 用户类型:双角色,用户、管理员 数据库表数量:17 张表 主要技术:Java、Vue、ElementUl 、SpringBoot、Maven 运行环境:Wind…

C# .NET Framework 中的高效 MQTT 消息传递

介绍: 在当今互联互通的世界里,设备之间高效可靠的通信至关重要。MQTT(消息队列遥测传输)就是为此而设计的轻量级消息传递协议。本文将探讨 MQTT 是什么、它的优势以及如何在 .NET 框架中设置和实现它。最后,您将对 M…

nn.Embedding 和 word2vec 的区别

理解它们的关键在于​​区分概念层级和职责​​。 可以将它们类比为: ​​word2vec:​​ 一个​​专门制作高质量词向量模型的“工厂”​​。​​nn.Embedding:​​ 一个​​可存储、查找并训练词向量的“智能储物柜”​​(作为…

华为云Flexus+DeepSeek征文|​​华为云ModelArts Studio大模型 + WPS:AI智能PPT生成解决方案​

引言:告别繁琐PPT制作,AI赋能高效办公 ​​ 在商业汇报、学术研究、产品发布等场景中,制作专业PPT往往需要耗费大量时间进行内容整理、逻辑梳理和视觉美化。​​华为云ModelArts Studio大模型​​与​​WPS​​深度结合,推出AI-P…

【连接redis超时】

报错 客户端输出缓冲区超限 Client … scheduled to be closed ASAP for overcoming of output buffer limits 表示这些客户端(通过 psubscribe 命令进行发布订阅操作)的输出缓冲区超过了 Redis 配置的限制,Redis 会关闭这些客户端连接来避免…

PHP「Not enough Memory」实战排错笔记

目录 PHP「Not enough Memory」实战排错笔记 1. 背景 2. 快速定位 3. 为什么 5 MB 的图片能耗尽 128 MB? 3.1 粗略估算公式(GD) 4. 实际峰值监控 5. 解决过程 6. 最佳实践与防御措施 7. 总结 PHP「Not enough Memory」实战排错笔记 —…

Java垃圾回收机制和三色标记算法

一、对象内存回收 对于对象回收,需要先判断垃圾对象,然后收集垃圾。 收集垃圾采用垃圾收集算法和垃圾收集器。 判断垃圾对象,通常采用可达性分析算法。 引用计数法 每个对象设置一个引用计数器。每被引用一次,计数器就加1&am…

基于python网络数据挖掘的二手房推荐系统

基于网络数据挖掘的二手房推荐系统设计与实现 【摘要】 随着互联网技术在房地产行业的深入应用,线上房源信息呈爆炸式增长,给购房者带来了信息过载的挑战。为了提升二手房筛选的效率与精准度,本文设计并实现了一个基于网络数据挖掘的二手房推…

Java + 阿里云 Gmsse 实现 SSL 国密通信

前言 解决接口或页面仅密信浏览器(或 360 国密浏览器)能访问的问题 测试页面 测试网站-中国银行:https://ebssec.boc.cn/boc15/help.html 使用其他浏览器(google,edge等)打开 使用密信浏览器打开 解决…

国产数据库分类总结

文章目录 一、华为系数据库1. 华为 GaussDB 二、阿里系数据库1. 阿里云 OceanBase2. PolarDB(阿里云自研) 三、腾讯系数据库1. TDSQL(腾讯云)2. TBase(PostgreSQL增强版) 四、传统国产数据库1. 达梦数据库&…

解密闭包:函数如何记住外部变量

🧠 什么是闭包? 闭包是一个函数对象,它不仅记住它的代码逻辑,还记住了定义它时的自由变量(即非全局也非局部,但被内部函数引用的变量)。即使外部函数已经执行完毕,这些自由变量的值…

I2C协议详解及STM32 HAL库硬件I2C卡死问题分析

一、I2C协议详解 1. I2C协议概述 Inter-Integrated Circuit (I2C) 是由 Philips 半导体(现 NXP 半导体)于 1980 年代设计的一种同步串行通信总线协议。该协议采用半双工通信模式,支持多主从架构,专为短距离、低速率的芯片间通信…

HTTP协议-后端接收请求

起因就是不知道post这个请求体中这些格式有什么区别,后端又怎么去接收这些不同格式的内容 Get请求 get请求是比较简单的一类 正常的直接用参数接收(不写的话名字要匹配)或者RequestParam都可以接收,用对象绑定也可以 resultful…

HTML5 实现的圣诞主题网站源码,使用了 HTML5 和 CSS3 技术,界面美观、节日氛围浓厚。

以下是一个 HTML5 实现的圣诞主题网站源码,使用了 HTML5 和 CSS3 技术,界面美观、节日氛围浓厚。它包括: 圣诞树动画 🎄雪花飘落特效 ❄️圣诞祝福语 🎁响应式布局,适配移动端 你可以将代码保存为 index.…