Datawhale X 李宏毅苹果书 AI夏令营_深度学习基础学习心得

本文主要是介绍Datawhale X 李宏毅苹果书 AI夏令营_深度学习基础学习心得,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本次学习了深度学习中的局部最小值

1、书上说有时候模型一开始就训练不起来,不管怎么更新参数损失都不下降。我之前遇到过这种情况,大概是做一个数据很不平衡的二分类,正负样本比例大概为9:1,模型倾向于全部预测为正样本,没有办法学习负样本。

2、3.1.1介绍了一下鞍点,鞍点的各个方向的梯度是等于零的,而我们的模型反向传播又是基于梯度的,所以到了鞍点就没有办法再让损失下降了,但是其实鞍点和局部最优又区别,鞍点并不是梯度最小的点。

3、3.1.2介绍了损失函数L(\theta)的近似:

第一项:如果\theta很接近\theta‘,L(\theta)近似于L(\theta’)

第二项:g代表梯度,L(\theta’)对于\theta中每个元素的偏微分

第三项:H:海森矩阵,里面是L的二次微分

接下来需要探究误差表面的形状,来判断是否为鞍点,主要探究第三项,另v = (\theta-\theta’):

情况1):如果对于所有v,第三项>0:局部最小

情况2):对所有v,第三项<0:局部最大

情况3):对所有v,有时大于0有时小于0:鞍点

在实际判断的时候,不需要用H于每一个v进行运算,只需要判断是否为正定或负定矩阵即可。

4、判断完鞍点,H还能够帮我们在鞍点指路:

令u = (\theta-\theta’),\lambda为H的特征值:,该等式在\lambda小于0时小于0

此时L(\theta)<L(\theta’),因此沿着u的方向更新,损失就会变小,所以在鞍点就需要找负特征值以及对应的特征向量

5、其他逃离鞍点的方法:

很多情况下,低维空间的局部最小在高维空间可能是鞍点

实际上,几乎找不到所有特征值都为正的临界点。大概还有一半的路可以让损失下降

#############################################################################

学习心得:感觉还是很有收获的,之前调模型可能就主要想着让损失下降,但是不求甚解,了解了最底层的逃离鞍点让损失下降的逻辑之后,对于各种算法好像有了新的认识

这篇关于Datawhale X 李宏毅苹果书 AI夏令营_深度学习基础学习心得的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1105379

相关文章

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

Spring AI 实现 STDIO和SSE MCP Server的过程详解

《SpringAI实现STDIO和SSEMCPServer的过程详解》STDIO方式是基于进程间通信,MCPClient和MCPServer运行在同一主机,主要用于本地集成、命令行工具等场景... 目录Spring AI 实现 STDIO和SSE MCP Server1.新建Spring Boot项目2.a