Datawhale X 李宏毅苹果书 AI夏令营 学习笔记(三)

news2024/11/13 15:11:13

批量归一化(Batch Normalization,BN)

如果说自适应学习率是让训练适应loss,那归一化就是让loss适应训练。
我们抛掉使用自适应学习率的想法,重新看下面的图。可以看到w1固定时,w2的梯度是比较大的。w2固定时,w1的梯度较小。固定学习率,不是太大导致在w2方向上来回震荡,就是太小导致在w1方向上下降缓慢。

在这里插入图片描述
我们想出了一个思路,将这个椭圆(凸的凹凸表面)尽量修成圆的,那这样每个参数的梯度都差不多,就不会出现上述问题了嘛。
在这里插入图片描述

要解决椭圆,先思考出现椭圆的原因:
椭圆是loss构成的等高线。 l o s s 由 y 和 y ^ loss由y和\hat y lossyy^得到,y固定,所以只关心 y ^ \hat y y^
w是训练得到的参数,我们不管。那原因就出在 x i x_i xi即输入数据(特征)上。如果 x i = 1 e 9 x_i=1e9 xi=1e9,那 w w w改一点点也会对 y ^ \hat y y^造成很大的变化。如果 x i = 0.000001 x_i=0.000001 xi=0.000001,那么w变很大也改变不了多少 y ^ \hat y y^

所以我们可以对不同样本的同一个维度做归一化(比如对[1,2,3],[9,10,11]的[3,11]做归一化),将他们的数值范围统一成相同。方法在机器学习里也有提及过,主要还是结合方差和均值那些。

因为要得到所有数据的标准差、均值这些,而我们往往每次处理一个batch的数据,并且可以在每层之后应用归一化,而不是只对初始输入样本做归一化。所以与feature normalization做区分,叫batch normalization。

在实际应用模型时我们不可能一批一批的获取到数据,但我们也想归一化一下。这里用到了移动平均。

内部协变量偏移看不懂,没看了。。。

卷积神经网络(CNN)

图像其实就是一个像素矩阵,我们都知道有宽高和通道三个维度。
如果用全连通神经网络做,假设图像的宽高是100,第一层线性层有1000个神经元,那么就是100*100*3*1000=3e7,这种简单情况就需要这么多权重值了,更别提复杂网络了。同时,对于图像,也不需要那么多参数,容易导致过拟合,因此不应该考虑全连接。
这里就引出了非常常用的CNN。卷积的意思就是用一个矩阵(卷积核)在一张输入图像上从左到右、从上到下依次扫描,进行矩阵的点积运算,得到相应位置的运算结果并输出。
在这里插入图片描述

感受野

我们发现图像检测不需要查看整张图像
在这里插入图片描述
出于减少连接数以减少参数个数的目的,我们可以让一个神经元只负责他的感受野区域。感受野可以重叠(防止交界处无神经元检测),可大可小,可以只负责某些通道(比如RGB中只负责R)
在这里插入图片描述
在图像任务中,由于不会觉得有些模式只出现在某一个通道里面,所以会看全部的通道。既然会看全部的通道,那么在描述一个感受野的时候,只要讲它的高跟宽,而高跟宽合起来叫做核大小。常见的感受野设定方式就是核大小为 3 ∗ * 3。

由于图像的四周,重叠的感受野不如图像内部的,其检测效果肯定不一样。为了统一,又或者保持图像输出尺寸不变,可以在外层做零填充。
在这里插入图片描述

参数共享

我们想训练一个识别叶子的神经元,但是叶子在图像中多次出现在不同的感受野中,同时因为这种任务是位置无关的(只关心是不是,不关心在图像哪个部分)。我们完全可以把这个针对“叶子识别”任务的参数提取出来作为一个共享参数,而不是针对每个感受野都学习一组参数。其实这个共享参数就是一个卷积核,对于不同的感受野,用同一个卷积核处理,这就实现了共享。

CNN

全连接层,通过引入感受野减少参数个数,再加上参数共享,就变成了卷积层。
由于参数量减少(每个神经元只负责特定的一小块感受野),甚至还加上了位置无关的参数共享策略,模型的限制较大,灵活性较低,但也不易过拟合。这些策略是针对图像任务的特性来设计的。
图像通过卷积核的卷积操作,会产生一组新的特征。通过N个滤波器,会对同一个感受野生成N组特征,可以认为是N组通道。

池化

想到了之前看过的一个视频:b站视频-原来图片是这样压缩的
对一张图片的各个部分分别取一小部分,拼接为一个新的像素明显变少的图像,我们仍能大致看出两张图有一定相似性,即用新生成的图像作为训练样本是有一定可行性的。这就是降采样。
在这里插入图片描述
因此我们在CNN中也可以使用这种方式减少网络内传递的参数。可以对一个感受野只取一个MAX值,或取一个平均值,进一步减少参数个数。这就是池化。
相比较卷积层是对感受野进行映射,池化层像一个算子,不需要学习什么,只需要做一个转换操作,比如取最大值(max pooling)、求平均值(mean pooling)。在CNN中会将卷积层与池化层交替使用。

但是!这种方式本质上还是用降低精度来降低计算资源消耗。对于追求高精度、且算力足够时,可能没有必要使用池化。

经典图像识别网络

传入样本数据->卷积与池化交替->输出扁平化(矩阵转向量)->全连接层+softmax->输出结果
在这里插入图片描述

什么时候用CNN

只要问题与图像有相似性质就行。图像的特征就比如有位置无关、一些模式只要观察局部特征就行。比如五子棋、围棋这种。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GitHub开源的PDF管理工具Stirling-pdf

Stirling pdf 手动搭建docker搭建 官网:https://github.com/Stirling-Tools/Stirling-PDF 手动搭建 Ubuntu2404环境 安装所需软件包 apt install -y git automake autoconf libtool libleptonica-dev pkg-config zlib1g-dev make g openjdk-21-jdk python3…

【R语言】基于nls函数的非线性拟合

非线性拟合 1.写在前面2.实现代码 1.写在前面 以下代码记录了立地指数的计算过程,包括了优势树筛选、误差清理、非线性拟合以及结果成图。 优势树木确定以及数据清理过程: 相关导向函数: 2.实现代码 ##*******************************…

web测试之功能测试常用的方法有哪几种?有什么要点要注意?

1、前言 功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。 2、常用的测试方法如下: 1、页面链接检查: 每一个链接是否都有对应的页面,并且页面之间切换…

在Excel中“直接引用”字符串地址

indirect是Excel唯一可以拥有直接解析字符串引用地址参数能力的函数,是绝无仅有的宝贝疙瘩。 (笔记模板由python脚本于2024年08月21日 12:45:49创建,本篇笔记适合喜欢用Excel处理数据的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网:ht…

Navicat中怎么查看数据库密码

一、版本问题 场景:在配置数据库连接后,忘记了数据库的密码,想要找回来。 其实有些版本(好像是低版本才有,具体哪个版本就没去研究了)在配置连接页面,是有个选项勾选是否显示密码的&#xff0…

Datawhale AI 夏令营(第五期) 李宏毅苹果书 Task 1 《深度学习详解(入门)》- 1.1 通过案例了解机器学习

预测本频道观看人数(上) - 机器学习基本概念简介_哔哩哔哩_bilibili 1 隐藏任务:找出本篇中形如回归(regression)加粗字体的术语,并用自己的话进行解释,列成表格 术语解释机器学习(…

改VS2008 MFC项目 C语言1改字体,2颜色,3界面禁用项 CCM4202S量产SP下载工具 天津国芯

效果 1改字体 用progresss上画文字,并改字体及大小 要修改 DrawText 函数绘制文本的字体大小,你需要在绘制之前设置设备上下文的字体。这里是一个完整的示例,展示了如何在使用 DrawText 函数之前设置字体大小。 假设你已经有一个 HDC 设备…

85.游戏改造-修改UI分辨率,面向对象方式

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于:易道云信息技术研究院 上一个内容:84.游戏改造-窗口化下的分辨率 首先剑侠情缘这个游戏它按f9是可以隐藏ui界面的&#xf…

stm32-USB-1

1. USB简介 USB, 英文全称:Universal Serial Bus,即通用串行总线 USB提供适合各种应用的传输协议,而且协议标准向下兼容 优缺点 2. USB2.0拓扑结构 USB是一种主从结构的系统,数据交换只能发生在主从设备之间&#…

Jenkins配置SSH凭据

在jenkins中,绕不开的便是操作远程的SSH服务器,如向远程服务器传送文件、在远程服务器上执行脚本或者命令等,而这一切的前提,则需要配置访问远程服务器的凭据,常用的方式包括远程服务器的账号和密码以及密匙对等&#…

编译 ARM 平台 Qt5.12.9 源码-思维导图-学习笔记-基于正点原子阿尔法开发板

编译 ARM 平台 Qt5.12.9 源码 概述 库的后缀名 Windows平台:编译出的Qt库文件后缀为.dll Linux平台:编译出的Qt库文件后缀为.so 这些库被称为动态库,意味着它们在运行时被加载到应用程序中,而不是在编译时静态链接 库的作用 …

Linux--数据链路层(macarp)

目录 1.认识以太网 2.以太网帧格式 3.模拟一次局域网通信(交换机) 4.认识 MAC 地址 对比理解 MAC 地址和 IP 地址 5.认识MTU MTU 对 IP 协议的影响 MTU 对 UDP 协议的影响 MTU 对于 TCP 协议的影响 6.ARP协议 ARP 协议的作用及原理 ARP 数据报的…

【精选】基于移动端的个人博客系统的设计与实现(源码+定制+辅导)

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

Java面试题--JVM大厂篇之JVM 大厂面试题及答案解析(2)

💖💖💖亲爱的朋友们,热烈欢迎你们来到我的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而我的博客&…

关于“数据完全版本记录”的系统设计

时间:2024年08月24日 作者:小蒋聊技术 邮箱:wei_wei10163.com 微信:wei_wei10 音频:https://xima.tv/1_Gtthca?_sonic0 希望大家帮个忙!如果大家有工作机会,希望帮小蒋内推一下&#xff0c…

[运算放大器系列]四、PT100和热电偶采集电路分析

[运算放大器系列]三、PT100和热电偶采集电路分析 1. 前言2. 电路原理图3. 热电偶电路4. 三线热电阻电路 1. 前言 淘宝偶然发现一款可以支持热电阻和热电偶多种传感器的温度变送器 , 从图上看重要的芯片丝印都磨掉了。 2. 电路原理图 在其他网站上搜到两篇关于该设备的帖子 …

理解 HarmonyOS 中的网格布局:综合指南

网格布局是创建响应式和结构化用户界面的强大工具。通过将界面划分为由行和列组成的单元格,网格可以精确控制组件的分布和对齐。这使得它们成为各种应用程序(例如图库、日历和计算器)的理想选择。 在 HarmonyOS 中,ArkUI 提供了用…

代码随想录算法训练营day30 | 贪心算法 | 452.用最少数量的箭引爆气球、435.无重叠区间、763.划分字母区间

文章目录 452.用最少数量的箭引爆气球思路 435.无重叠区间思路 763.划分字母区间思路问题的转化 总结 今天是贪心算法专题的第四天,今天的三道题目,都算是 重叠区间 问题,大家可以好好感受一下。 都属于那种看起来好复杂, 但一看…

携手共创商业新纪元,聚贤国际成都分部正式成立

成大事者,聚于府都。2024年8月10日,在成都这个西部经济中心城市,聚贤国际成都分部正式成立,标志着聚贤国际商会在这片营商沃土落地生根。 本次成都分部成立,特别邀请到聚贤国际创始人刘芒芒及聚贤国际商会三亚分部、海…