[Datawhale X 李宏毅苹果书AI夏令营] 深度学习进阶 Task1

用LangFuse+LangChain打造可观测的AI应用:从埋点到成本监控实战 本文详细介绍了如何将开源可观测性平台LangFuse深度集成到基于LangChain构建的AI应用中,特别是电商客服机器人场景。通过从基础SDK集成、提示词管理到成本监控的完整实战,帮助开发者实现对LLM应用内部工作流的清晰追踪、问题排查与费用分析,从而打造稳定、可控的生产级AI应用。 阅读详情

学习链接:Datawhale (linklearner.com)

本笔记记录了深度学习的一些基础概念

局部最小值与鞍点

做损失函数的优化时,经常会发现随着参数不断更新,训练的损失(Loss)不会再下降,但是我们对这个损失不满意,将训练模型替换为更深层的网络,发现损失可能还是做的不好-深层网络没有发挥全部力量。这就是所谓的优化失败。要理解优化失败的原因,就要了解局部最小值和鞍点的概念。

临界点及种类

常见的情况是,优化到某个地方,梯度为零,参数就不再更新了。此时可能有以下三种情况:跑到局部最小值(local minimum)了,跑到鞍点(saddle point),跑到局部最大值。对于梯度为零的点,统一称为临界点(critical point)。梯度没有继续下降,也许只是收敛到了临界点(比如鞍点),而不一定是局部最小值。鞍点指的是该点梯度为零,往某些方向损失函数增大,某些方向损失函数减小,画出来图像马鞍:

判断临界值种类的方法

由于鞍点和局部最小值的梯度均为零,要区分他们需要引入新的参数。类似微积分学的极大值极小值判定定理,通过二阶微分判断将临界点继续分类。梯度为零时,可以用泰勒展开将损失函数在临界点\theta'处展开:L(\theta)\approx L(\theta')+(\theta-\theta')^Tg+\frac{1}{2}(\theta-\theta')^TH(\theta-\theta')

其中g是L的一阶微分向量(n*1维,就是\theta的维度),也可以写作\bigtriangledown L(\theta'),其元素为g_i=\frac{\partial L(\theta')}{\partial \theta_i}

H是海森矩阵(n*n维),其元素为:H_{ij}=\frac{\partial ^2}{\partial \theta_i \partial \theta_j}L(\theta')

由于临界点\theta'处梯度为零,所以泰勒展开为:

L(\theta)\approx L(\theta')+\frac{1}{2}(\theta-\theta')^TH(\theta-\theta')

将(\theta-\theta')记为v,则可以将(\theta-\theta')^TH(\theta-\theta')改写为v^THv。

则临界点处泰勒展开又可以记为L(\theta)\approx L(\theta')+\frac{1}{2}v^THv。临界点处有以下三种情况:

  1. 对于所有的v,都有v^THv>0,这意味着对于任意\theta,都有L(\theta)>L(\theta'),所以该临界点是局部极小值点
  2. 对于所有的v,都有v^THv<0,这意味着对于任意\theta,都有L(\theta)<L(\theta'),所以该临界点是局部极大值点
  3. 对于任意v,v^THv有时候大于零,有时候小于零,这意味着对于有的\theta,有L(\theta)>L(\theta'),对于有的\theta,有L(\theta)<L(\theta'),所以该临界点是鞍点。

但是对于临界点,我们不可能将所有的v都拿来计算一遍,来判断临界点到底属于极大值还是极小值还是鞍点。此时只需要计算H的特征值即可。

由线性代数的知识,我们知道如果矩阵H所有特征值都是正数,则H是正定矩阵,则对所有的v,都有v^THv>0,对应临界点是局部极小值点。同样,如果H的特征值都是负数,则H是负定矩阵,对所有的v,都有v^THv<0,对应临界点是局部极大值点。如果特征值有正有负,则是鞍点。

因此,当梯度为0时,H可以告诉我们临界点的种类,同时还能告诉我们如果遇到鞍点,怎么更新参数可以逃离鞍点。下面举例说明(需要线性代数关于特征值、特征向量的知识,或者参见高中数学二维矩阵特征值、特征向量的介绍):

假设\lambda(\lambda<0)是H的一个特征值(H特征值有正有负,所以可以假设一个小于零的特殊值),u是H对应该特征值的一个特征向量,即有Hu=\lambda u,对于我们的优化问题,假设将临界点\theta'更新为\theta,我们这样来选择新的\theta:\theta=\theta'+u。则L(\theta)\approx L(\theta')+\frac{1}{2}u^THu中的第二项可以改写为:\frac{1}{2}u^THu=\frac{1}{2}u^T \lambda u=\frac{1}{2} \lambda \left | u \right |^2<0,则这样更新\theta就可以使得Loss比原来降低,其实就是沿着特征值为负数的特征向量方向更新参数。

逃离鞍点的方法

局部最小值不容易遇到

首先要明确一点:随着维度的增加,几乎很难遇到局部最小值点,通常遇到的临界值点都是鞍点。也可以这样来理解,当你在低维度时觉得无路可走了,实际在更高维度的人看来,还有其他优化的途径。可以见下图:

这里可以引用一个概念:最小值比例。其定义是

对于局部最小值,最小值比例就应该是1,实际上,多数的临界点最小值比例都不会到1,最大也就处在0.5~0.6的范围,见下图:

所以可以说随着维度的增加,局部最小值问题就不会成为一个问题。

逃离鞍点方法

可以求海森矩阵,按照特征值为负数的特征向量方向更新参数。但这种方法计算量过大,很少有人用这种方法来逃离鞍点。
另一种逃离鞍点的方法是扰动梯度下降,就是在求得的梯度上加一个随机的微小扰动。
可以参考这篇报道
吴恩达导师Michael I.Jordan学术演讲:如何有效避开鞍点(视频+PPT)-36氪 (36kr.com)

基于BenchmarkSQL的达梦数据库TPCC性能测试 中的用户和密码在达梦数据库中创建测试用户,并保证其表空间足够容纳生成的测试数据。如果开启了归档,还要考虑归档日志占用的空间。BenchmarkSQL默认不支持达梦数据库。这里我们让BenchmarkSQL把达梦数据库当作Oracle即可。Oracle数据库对应的测试配置文件为。是使用BenchmarkSQL进行性能测试的主要配置文件。是生成的测试报告,png文件是报告中包含的图片。拷贝达梦数据库驱动到BenchmarkSQL的。测试结束后,会在当前路径下生成一个以。规则命名的结果目录。 阅读详情

相关推荐

手把手教你用Cursor + 自定义MCP工具链,让AI帮你搞定App逆向(附adb-mcp/frida-mcp源码)

本文详细介绍了如何利用Cursor IDE与自定义MCP工具链构建AI驱动的App逆向工作流,涵盖adb-mcp和frida-mcp的源码实现与实战应用。通过自然语言指令,AI可自动化完成设备控制、动态Hook和数据分析,显著提升移动安全测试效率。适合安全研究人员和开发者快速掌握智能逆向技术。

weixin_33737134的博客 1301

Datawhale X 李宏毅苹果书 AI夏令营 向李宏毅学深度学习(进阶)Task1笔记

有了新的参数 θ1 后,再计算一次梯度,再往梯度的反方向,再更新一次参数,到了新的位置以后再计算一次梯度,再往 梯度的反方向去更新参数。虽然无法完整知道整个损失函数的样子,但是如果给定某一组参数,比如 θ′,在 θ′ 附近的损失函数是有办法写出来的——虽然 L(θ) 完整的样子写不出来。H 里面放的是 L 的二次微分,它第 i 行,第 j 列的值 HiHij 就是把 θ 的第 i 个元素对 Lθ′作微分,再把 θ 的第 j 个元素对 ∂L(θ′)∂θi 作微分后的结果,即。在临界点,梯度 g 为零,因此。

Hh2767474144的博客 834

GCC调试黑科技:-fomit-frame-pointer优化下如何保证栈回溯能力

本文深入探讨了GCC编译器在启用`-fomit-frame-pointer`优化选项时如何保证栈回溯能力。通过分析`.eh_frame`段的结构与DWARF调试信息,提供了从编译选项配置到实战调试的完整解决方案,帮助开发者在性能优化与调试能力之间找到最佳平衡点。

u6v7w8x的博客 904

Datawhale X 李宏毅苹果书 AI夏令营第五期 DL进阶方向 Task1笔记

深度学习中的优化是一个复杂的过程,需要综合考虑多种因素,例如局部极小值、鞍点、批量大小、动量法、自适应学习率等。选择合适的优化策略,了解这些可以帮助我们更好地训练模型,提高模型的性能和泛化能力。

linghyu的博客 953

Gromacs文件格式全解析:xtc vs trr vs cpt,哪种更适合你的模拟需求?

本文深入解析Gromacs分子动力学模拟中的三种核心文件格式xtc、trr和cpt,详细对比其技术特性和适用场景。xtc适合存储效率优先的场景,trr保留完整动力学数据,cpt确保模拟精确重启。通过实际配置示例和存储优化技巧,帮助用户根据模拟需求选择最佳格式组合,平衡分析灵活性与存储成本。

weixin_29281941的博客 96

/proc/sys/vm/max_map_count耗尽时,调用glibc 2.11.3 free()导致程序crash,问题追踪和解决

1. 问题 在客户环境下,当我们的程序消耗较大内存时,会偶尔crash。 通过gdb分析,程序core dump在malloc/free函数内。 当把/proc/sys/vm/max_map_count 从65530增加到131070,程序再也不crash。 相关命令 echo 131073 > /proc/sys/vm/max_map_count 2.  core

万大胖博客,苦并快乐着 4429

进阶Task1:《深度学习详解》(Datawhale X 李宏毅苹果书 AI夏令营)

梯度下降优化方向 关键概念以及公式 逃离鞍点和局部极小值 以及 实验验证

K_ING_____的博客 1276

STM32 使用IQmath实现SVPWM

文章目录SVPWMIQMATHIQmathLib测试部分程序附件 SVPWM SVPWM是空间矢量脉宽调制(Space Vector Pulse Width Modulation)的简称,通常由三相逆变器的六个功率开关管组成,经过特定的时序和换相所所产生的脉冲宽度调制波,最终输出的波形可能会十分接近理想的正弦波形。 具体如下图所示;左侧为复平面,即空间矢量,右侧为时域的正弦波形; 关于SVPWM原理的文章非常多,这里可以推荐一下网上一个非常不错的教程《SVPWM的原理及法则推导和控制算法详解第五修改版》,

一名热爱技术的工程师的博客。分享技术干货,记录美好生活。永远相信美好的事情即将发生。 2万+

Datawhale X 李宏毅苹果书 AI夏令营 深度学习详解进阶task1

优化神经网络过程中,首先,要理解为什么优化会失败,收敛在局部极限值与鞍点会导致优化失败。其次,可以对学习率进行调整,使用自适应学习率和学习率调度。最后,批量归一化可以改变误差表面。目录深度学习基础1. 局部极小值与鞍点1.1 临界点及其种类1.2 判断临界值种类的方法 我们在做优化的时候经常会发现,随着参数不断更新,训练的损失不会再下降, 但是我们对这个损失仍然不满意。图 1 中的两条曲线对应两个神经网络训练的过程。当参数对损失微分为零的时候,梯度下降就不能再更新参数了,训练就停下来了,损失不再下降了。

qq_26249811的博客 828

【STK】手把手教你利用STK进行进行光电红外仿真02-STK/EOIR模块属性之一 传感器选项设置

EOIR传感器可以从空间几何属性、光谱属性、光学属性、辐射属性四个方面进行设置,并且可以设置信号传播路径中的大气特性,包括大气模型、气溶胶模型、气象学可见性和大气湿度。在定义EOIR传感器时,需要Sensor——Definition属性页中,将Sensor Type设置为EOIR。单击下面的按钮打开传感器的EOIR配置页,可以对传感器的属性进行配置,此外,还可以在场景中视情况添加相关的中心体。路径辐射损耗影响上述特性的计算,计算的结果考虑了传感器、目标位置的影响,但是还没考虑地球临边背景的影响。

weixin_44184852的博客 3200

Autosar NvM配置-手动配置Nvblock及使用-基于ETAS软件

NVM作为存储协议栈中最顶层的模块,是必须要掌握的。目前项目基本使用MCU带的Dflash模块,使用Fee模拟eeprom。在项目前期阶段,应该充分讨论需要存储的内容,包括应用数据,诊断数据等,用以评估Dflash空间是否够用。本文基于ETAS软件介绍NVBlock配置生成NVM参数及使用。使用NVBlock配置生成,基本不用手写代码,还是比较方便的。对于Nv block的划分,建议将同时写的一类数据放到一个block中,因为block除了data以外,Fee还会增加一些header数据,占用不少内存。

赞的博客 1884

进阶Task1.2:《深度学习详解》(Datawhale X 李宏毅苹果书 AI夏令营)

动量法 关键概念 评估指标 以及 实验验证

K_ING_____的博客 1183

月薪30k+的工业视觉,必备Java+YOLO技能(工业级落地全拆解)

30k+工业视觉岗的核心不是算法调参,而是用Java把YOLO落地到工业场景的能力——稳运行、能对接、可管理是高薪的核心壁垒;必备技能分五层:模型工业级适配、Java推理核心、SpringBoot后端、工业部署运维、场景适配,每层都要练到“能落地、能讲清、能避坑”;学习路径的核心是“实战驱动”:不要只学理论,从一个完整的工业项目(如锂电缺陷检测)入手,练完就能对标高薪岗。

2601_94871597的博客 524

Datawhale X 李宏毅苹果书AI夏令营 Task1.2深度学习进阶详解

在训练深度学习模型时,我们常常会遇到这样的情况:随着训练的进行,模型的损失不再下降,但梯度并没有变得很小。虽然在批量大小非常大时,计算梯度并更新参数所耗费的时间会随着批量大小的增加而逐渐增长,但在合理的范围内,并行计算可以显著提高训练效率。虽然这种方法每次迭代的计算量大,但它的更新更稳定、更准确。在实际应用中,我们需要根据具体问题和数据集的特点,选择合适的优化技术或组合使用这些技术,以达到最佳的训练效果。同时,随着深度学习的不断发展,新的优化技术也在不断涌现,我们需要持续关注和学习,以跟上时代的步伐。

2302_77116414的博客 1154

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

[Datawhale X 李宏毅苹果书 AI夏令营]深度学习进阶班 Task1

Task1是关于深度神经网络的优化中的常见概念及方法的介绍。

keexh的博客 500

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Datawhale X 李宏毅苹果书 AI夏令营 之 深度学习进阶 Task1

机器学习包含三个阶段:确定机器学习所要寻找的函数模型、定义损失函数、优化损失函数的参数。对于机器学习所需寻找的函数,输入的特征是自变量,输出的数值或分类是因变量,其中的函数系数是固定值,这个固定值事先是不知道的,通过损失函数最小化,确定机器学习所需寻找的函数的系数。对于损失函数,特征是固定的(即训练集),此时所需寻找的系数是自变量,损失函数的值是因变量,所要寻找的函数应该在训练集上能最大程度上与训练集中的标签一致,即之间的差异即损失函数应该最小化。优化损失函数的参数是训练机器学习模型最大的挑战。

sdlj20082008的博客 249

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Datawhale X 李宏毅苹果书 AI夏令营(深度学习进阶)task1(1.1+1.2)

常见的临界点的种类为局部最小值和鞍点。

m0_55703957的博客 1528

Datawhale X 李宏毅苹果书 AI夏令营(第五期-深度学习进阶) Task 1 学习笔记

本章介绍了深度学习常见的概念,理解这些概念能够帮助我们从不同角度来更好地优化神经网络。要想更好地优化神经网络,首先,要理解为什么优化会失败,收敛在局部极限值与鞍点会导致优化失败。其次,可以对学习率进行调整,使用自适应学习率和学习率调度。最后,批量归一化可以改变误差表面,这对优化也有帮助。

qq_60533472的博客 832

“Datawhale X 李宏毅苹果书 AI夏令营”深度学习进阶笔记Task1

深度学习中,优化问题常常会遇到损失函数不再下降的情况,这可能是由于收敛到了局部极小值或鞍点。:损失函数在参数空间的某个区域内达到最小值,但不一定是全局最小值。如图3.2a所示,梯度为零,且四周均为损失更高的点。:损失函数在梯度为零的点,但并非局部最小值或最大值,其形状类似于马鞍,如图3.2b所示。在鞍点附近,损失函数在某些方向上升,在某些方向下降。

m0_74851616的博客 469

深度学习进阶task1局部最小值与鞍点 Datawhale X 李宏毅苹果书 AI夏令营

深度学习进阶task1。

padio335的博客 423

Datawhale X 李宏毅苹果书 AI夏令营-深度学习进阶task1:局部极小值与鞍点,批量和动量

在做优化的时候经常会发现,随着参数不断更新,训练的损失不会再下降, 但是我们对这个损失仍然不满意或者有时模型一开始就训练不起来,不管我们怎么更新参数,损失都降不下去。过去常见的一个猜想是我们优化到某个地方,这个地方参数对损失的微分为零。图中的两条曲线对应两个神经网络训练的过程。当参数对损失微分为零的时候,梯度下降就不能再更新参数了,训练就停下来了,损失不再下降了。

m0_53743757的博客 754

Datawhale X 李宏毅苹果书 AI 夏令营第五期:深度学习进阶:task1学习笔记

对模型做误差,做梯度下降,就相当于我们评价一个历史人物,我们期望能够得到一个综合评分能够客观地衡量这个人物的一切,但是如果我们的评价维度越狭隘,比如说我们评价三国人物,我们只看战绩,谁打仗赢得多,谁的综合评分就高,那么这个误差就越容易找到局部极值,因为评价维度只有一个,直接把史料中记载的胜负比拿出来即可得到综合评分(仅军事维度),它的权重是单一的。举个例子,在三维空间里,局部极小/大值点的含义是某一个点,这个点不管是在x轴方向还是y轴方向,它在z轴的值都是一个极小/大值;

2301_80324436的博客 653

Datawhale X 李宏毅苹果书 AI夏令营深度学习进阶Datawhile_task1.1局部极小值与鞍点task1.2_批量与动量

局部极小值与鞍点。

lndmk的博客 1371

Datawhale X 李宏毅苹果书 AI夏令营(深度学习进阶)task2(2.1+2.2+2.3)

临界点其实不一定是在训练一个网络的时候会遇到的最大的障碍。一般在训练一个网络的时候,损失原来很大,随着参数不断的更新,损失会越来越小,最后就卡住了,损失不再下降。当我们走到临界点的时候,意味着梯度非常小,但损失不再下降的时候,梯度并没有真的变得很小。看下图就可以看出来范数(norm),即梯度这个向量的长度随着迭代次数增多,虽然损失不再下降,但是梯度的范数并没有真的变得很小。我们现在训练一个网络,训练到现在参数在临界点附近,再根据特征值的正负号判断该临界点是鞍点还是局部最小值。

m0_55703957的博客 1059

Datawhale X 李宏毅苹果书 AI夏令营 第五期 向李宏毅学深度学习(进阶)Task1:《深度学习详解》- 3.1 局部极小值与鞍点&3.2 批量和动量

(进阶)Task1 3.1 局部极小值与鞍点 3.2 批量和动量

图像检索小菜鸟_bianwencyy_的专栏 505

Datawhale X 李宏毅苹果书 AI夏令营 第五期 向李宏毅学深度学习(进阶)Task3:《深度学习详解》- 3.7 批量归一化+第4章4.1~4.8卷积神经网络

3.7。

图像检索小菜鸟_bianwencyy_的专栏 486
上一篇: [Datawhale X 李宏毅苹果书AI夏令营] 深度学习入门 Task1
下一篇: [Datawhale X 李宏毅苹果书AI夏令营] 深度学习入门 Task2
drawbacks
博客等级 码龄7年 75粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值