卷积神经网络学习问题总结

问题一: 深度学习中的损失函数和应用场景

回归任务:

均方误差函数(MSE)适用于回归任务,如预测房价、预测股票价格等。

python 复制代码
import torch.nn as nn  
loss_fn = nn.MSELoss()  

分类任务:

交叉熵损失函数(Cross-Entropy Loss)适用于分类任务,如图像分类、文本分类等。对于多分类问题,该损失函数可与Softmax激活函数结合使用。

python 复制代码
import torch.nn as nn  
loss_fn = nn.CrossEntropyLoss()  

二分类任务:

二元交叉熵损失函数(Binary Cross-Entropy Loss)适用于二分类问题,如预测是否为垃圾邮件、预测股票涨跌等。对于二分类问题,该损失函数可与Sigmoid激活函数结合使用。

python 复制代码
import torch.nn as nn  
loss_fn = nn.BCELoss() 

问题二: 空洞卷积

灰色部分为卷积核权重

白色部分为空,值为0

dilation rate:空洞率

权重值的间隔为dilation rate - 1

例:m = 3, p = 0, s = 1时

(m表示卷积核大小,p 表示零填充大小(zero-padding), s 表示步长(stride),d表示空洞率(dilation))

若d=1:

若d=2:

优点:在不增加参数的情况下增大感受野,适用于图片size较大,或需要快速感受全局信息的情况。

通过设置不同的dilation rate捕获多尺度上下文信息,适用于需要捕获图片的多层次的情况,如语义分割等。

问题:存在网格效应,远距离点之间的信息可能不相关。

解决办法:HDC

一、叠加卷积的 dilation rate 不能有大于1的公约数。如 [2, 4, 6] 则不是一个好的三层卷积,依然会出现 gridding effect。解决网格效应

二、将 dilation rate 设计成锯齿状结构,例如 [1, 2, 5, 1, 2, 5] 循环结构。同时捕获远近信息

三、满足:

最常用:

问题三: 残差网络

反向传播路径太长,训练难度增加

问题:

若卷积后的结果与输入X的shape不同, 则不能直接相加

当步长不为1,图片大小发生变化

当通道数与输入通道不同,图片通道数 发生变化

解决:

使用一个1x1的卷积核来改变X的shape,使得其能与卷积后的结果shape相匹配(不知道^ ^

残差模型VS等深卷积:

相关推荐
m0_678693332 分钟前
深度学习笔记39-CGAN|生成手势图像 | 可控制生成(Pytorch)
深度学习·学习·生成对抗网络
一水鉴天7 分钟前
整体设计 逻辑系统程序 之27 拼语言整体设计 9 套程序架构优化与核心组件(CNN 改造框架 / Slave/Supervisor/ 数学工具)协同设计
人工智能·算法
Y_Chime10 分钟前
从AAAI2025中挑选出对目标检测有帮助的文献——第二期
人工智能·目标检测·计算机视觉
小年糕是糕手16 分钟前
【数据结构】双向链表“0”基础知识讲解 + 实战演练
c语言·开发语言·数据结构·c++·学习·算法·链表
Q_Q51100828518 分钟前
python+uniapp基于微信小程序的学院设备报修系统
spring boot·python·微信小程序·django·flask·uni-app
将车24422 分钟前
C++实现二叉树搜索树
开发语言·数据结构·c++·笔记·学习
GitNohup28 分钟前
安装Anaconda和Pytorch
pytorch·anaconda
Larry_Yanan30 分钟前
QML学习笔记(四十)QML的FileDialog和FolderDialog
笔记·qt·学习
蓝色空白的博客33 分钟前
自动化测试脚本-->集成测试部署思路整理(1)
python·集成测试
佛喜酱的AI实践33 分钟前
Claude Code配置指南已死,这个一键安装工具才是未来
人工智能·claude