9.27 深度学习9

​​1. 深度学习

​​数据准备​​:项目使用的数据集通常以N-D数组(NumPy数组)的形式保存。数据需要被转换为Tensor(张量)格式以便在GPU上高效运行。

​​模型训练​​:通过定义18层卷积层和2个全连接层的网络结构,对模型进行训练。训练过程中使用交叉熵损失函数和SGD(随机梯度下降)优化器。通过反向传播寻找损失函数的最小值,并利用测试集上的损失值来筛选出最优模型。

​​推理过程​​:输入图像,模型进行前向传播输出各类别对应的置信度值。通过选取置信度最高的那个值及其对应的类别索引,来确定模型对该图像的最终分类。

​​准确率计算​​:通过遍历测试集,对每一张图像进行预测;再统计所有预测正确的数量,除以样本总数,得出模型在测试集上的准确率。

​​2. 关键技术细节探讨​​

​​版本还原​​:提到将仅满足语义注意力需求的图像统一变换为[0,1]范围,需要进行反规范化处理。

​​内存优化​​:提出了使用with语句(上下文管理器)和in-place操作来避免不必要的数据保存,这有助于释放内存并提升计算速度,特别是其内部隐含着boolean类型的求和技巧,无需额外创建中间变量。

​​3. 模型各类别准确率评估与提升策略​​

介绍了如何计算模型在不同类别上的具体准确率,以判断其好坏平衡性,初步发现猫类准确率为45%,最高为车类的82%。

讨论了准确率偏低的原因可能在于特定类别数据不足或数据增强不佳。

明确了针对此案例的优化方向主要在于调整网络结构,而非大规模修改已有数据集。

​​4. 全局平均池化技术详解​​

​​概念​​:全局平均池化(GlobalAverage Pooling)是指池化核的大小与输入特征图的大小完全相同,从而在整个特征图上取一次平均值。

​​核心作用​​:该技术可以大幅减少模型的参数量,有效缓解过拟合风险。在案例中,它被用来替代传统的全连接层,以简化网络结构。

​​关键注意事项​​:全局平均池化应在网络中后期使用,即在网络提取了足够层次的特征(包括底层和高层特征)之后,才能进行。过早使用会导致重要特征信息丢失。

​​5. 卷积层原理回顾​​

​​基础认知​​:一个卷积操作会产生一组(N组)输出通道,每组通道对应一个独立的卷积核。在处理彩色图像时,一个标准的卷积核默认是深度为3的(如5x5x3),因为它需要分别与红色、绿色、蓝色三个通道的像素值进行运算和累加。

​​"两个卷积核"误解澄清​​:并非对一次卷积结果应用第二个卷积核;而是基于原始输入,一次性使用多个(如6个)独立的卷积核进行平行的卷积运算,最后将所有结果叠加形成新通道。

学习全局平均池化技术后,尝试将其应用于自己的网络架构中,以评估是否能够减少参数量并获得更好的模型表现。

探索仅在最后一层使用一个合适的卷积核个数来直接输出目标类别数,从而完全移除后续全连接层的可能性,以简化模型。

相关推荐
AgentBuilder13 小时前
768维的谎言:SOTA视觉模型为何输给7个数字?
人工智能·程序员
杭州龙立智能科技13 小时前
专业的厂内运输车智能化厂家
大数据·人工智能·python
Bug改不动了13 小时前
在 Ubuntu 上用 Python 3.8 + RTX 4090 安装 Detectron2 完整指南
人工智能·深度学习
2501_9361460413 小时前
工业零件视觉识别与定位系统_基于cascade-rcnn的实现
人工智能·深度学习·计算机视觉
龙山云仓13 小时前
No:119:莎士比亚&AI:智能的语言创造、心理戏剧与人性图谱
人工智能·microsoft
9号达人14 小时前
AI最大的改变可能不是写代码而是搜索
java·人工智能·后端
oioihoii14 小时前
AI 技能工程入门:从独立能力到协作生态
人工智能
羊羊小栈14 小时前
基于YOLO和多模态大语言模型的智能电梯安全监控预警系统(vue+flask+AI算法)
人工智能·yolo·语言模型·毕业设计·创业创新·大作业
两万五千个小时14 小时前
Claude Code 中的子 Agent 派生实现:Task Tool 完全指南
人工智能·python
摆烂咸鱼~14 小时前
机器学习(12)
人工智能·机器学习