当前位置: 首页 > backend >正文

卷积神经网络中的两个重要概念——感受野receptive filed和损失函数loss function

理解感受野的作用和计算公式才能计算出每一次卷积之后的图像尺寸大小,我们可以了解网络中每个层级对原始输入图像的覆盖范围,从而对网络的深度和特征提取能力有一个直观的理解,感受野的大小决定了神经元对输入图像的理解能力和特征提取能力,便于设计出合理的网络。

平时在网络训练时经常会绘制损失函数曲线来判断网络的收敛程度,因此有必要了解损失函数,同时区分损失函数和激活函数的作用

感受野的概念及作用

感受野(Receptive Field)的定义:卷积神经网络某一层输出的特征图(feature map)上的像素点映射回输入图像上的区域大小。通俗点的解释是,特征图上一点,相对于原图的大小,也是卷积神经网络特征所能看到输入图像的区域。

感受野的大小和形状直接影响到网络对输入图像的感知范围和精度,进而调整网络结构、卷积核大小和步长等参数,以改善网络的性能。

感受野的性质:

1.越靠近感受野中心的区域越重要

2.各向同性

3.由中心向周围的重要性衰减速度可以通过网络结构控制

具体参考如下博客内容

深度理解CNN中的感受野(大杀器)-CSDN博客

注意区分:理论感受野、训练前感受野、训练后感受野,参考如下博客内容

Torch 模型 感受野可视化-CSDN博客

感受野的计算公式

感受野的计算公式参考如下博客内容

深度理解CNN中的感受野(大杀器)-CSDN博客

通用计算公式:

第一层感受野为1,R表示感受野,k表示卷积核大小,s表示步长

R当前层=R前一层+(k-1)*(前一层之前包括前一层的所有步长之积)

对于感受野计算公式的理解:

1.初始图像感受野为1

2.每经过一个conv(k*k) s1的卷积层,感受野是r=r+(k-1)

3.每经过一个conv(k*k) s2的卷积层或者maxpooling/avgpooling,感受野是r=(r*2)+(k-2)

4.每经过一个maxpooling/avgpooling2*2 s2的下采样层,感受野r=r*2

5.ReLu,BN,Dropout,conv1*1 s1不改变感受野

6.经过全连接层之后,感受野为整个图像

参考博客如下

.卷积神经网络里面的感受野计算_cnn_CVplayer111-讯飞AI开发者社区

损失函数的作用及其在网络中的位置

损失函数(loss function)是用来度量模型的预测值f(x)真实值Y差异程度的运算函数,它是一个非负实值函数,通常使用L(Y, f(x))来表示,损失函数越小,模型的鲁棒性就越好。

损失函数使用主要是在模型的训练阶段,每个批次的训练数据送入模型后,通过前向传播输出预测值,然后损失函数会计算出预测值和真实值之间的差异值,也就是损失值。得到损失值之后,模型通过反向传播去更新各个参数,来降低真实值与预测值之间的损失,使得模型生成的预测值往真实值方向靠拢,从而达到学习的目的

参考博客内容

损失函数(Loss Function) - 知乎

损失函数可以用梯度下降法来求解

关于梯度下降法的内容介绍如下博客内容

Gradient-Descent(全世界最通俗易懂的梯度下降法详解-优化函数大法) - 知乎

小白零基础学习:详解梯度下降算法:完整原理+公式推导+视频讲解_标准梯度下降算法 损函数-CSDN博客

激活函数的作用及其在网络中的位置

激活函数是神经网络中的核心组件,其主要作用是为模型引入非线性特性,从而使网络能够学习和表达复杂的特征与关系。如果没有激活函数,神经网络的输出将只是简单的线性变换,无论网络有多少层,其本质上等同于一个线性模型,无法处理复杂的非线性问题。

深度学习笔记:如何理解激活函数?(附常用激活函数) - 知乎

由于激活函数有用到softmax函数,损失函数也会用到该函数,导致容易将激活函数和损失函数混淆,现在根据二者的作用不同可以区分。

http://www.xdnf.cn/news/19542.html

相关文章:

  • 【Element Plus `el-select` 下拉菜单响应式定位问题深度解析】
  • 刘洋洋《一笔相思绘红妆》上线,献给当代痴心人的一封情书
  • CUDA编程11 - CUDA异步执行介绍
  • Java 不支持在非静态内部类中声明静态 Static declarations in inner classes are not supported异常处理
  • elasticsearch中文分词器analysis-ik使用
  • Uniapp 生命周期详解:页面生命周期 vs 应用生命周期(附实战示例)
  • 大模型应用开发面试实录:LLM原理、RAG工程与多Agent场景化落地解析
  • gh-pages部署github page项目
  • DAY 20 奇异值SVD分解-2025.9.1
  • 计组(2)CPU与指令
  • (ssh客户端)远程连接工具windterm使用教程(ssh工具、远程工具)
  • MiniCPM-V-4.5:重新定义边缘设备多模态AI的下一代视觉语言模型
  • 飞腾2000+/64核 PCIE扫描异常问题排查
  • COM组件——ServicedComponent 类
  • 【架构师干货】系统架构设计
  • Vue3 + MQTT + 高德地图 实现车辆在线状态与实时位置更新
  • 云手机和云游戏之间有着哪些区别?
  • qData 数据中台【开源版】发布 1.0.4 版本,全面升级数据清洗与资产管理能力
  • 使用LoadBalancer替换Ribbon(五)
  • 使用C#语言 基于FTP协议进行文件夹上传下载
  • ansible知识点总结1
  • C/C++ Linux系统编程:进程通讯完全指南,管道通讯、共享内存以及消息队列
  • Linux之Docker虚拟化技术(三)
  • nacos微服务介绍及环境搭建
  • Oracle 查询有哪些用户 提示用户名密码无效
  • AI 入门指南:从 “听不懂人话” 到 “比你懂你”,人工智能到底是个啥?
  • shell编程 函数、数组与正则表达式
  • 网络与信息安全有哪些岗位:(13)安全服务工程师 / 顾问
  • pip不是内部或外部命令的问题怎么解决?
  • 基于.NET Framework 4.0的FTP文件传输类