软件工程作业4
猫狗大战
1.下载数据
2.数据处理
3.创建VGG Model
4. 冻结前面层的参数,修改网络最后一层
5.训练并测试全连接层
6.可视化模型预测结果(主观分析)
7. 用test测试集进行测试
8.分析总结
VGG是卷积神经网络的一种,研究这个网络的课题组叫做VGG,所以该网络是这么个名字。
VGG 模型网络由三种元素组成。卷积层(CONV)是发现图像中局部的 特征,全连接层(FC)是在全局上建立特征的关联,池化(Pool)是给图像降维,防止训练过拟合。
数据会被分为三个部分:Train集:训练模型用,不多解释;Valid集:这部分数据用来进行模拟考试,检验自己模型的正确率,相当于带标签的test集;Test集:最终提交作业实验所用的测试集。
哪些方法可以优化呢?
1.对于网络进行了调参的优化,包括batch的大小,epoch等等,但都不是很明显,得分基本在95左右。
2.看了有的同学的博客,使用了Adam这一优化器,由于时间限制,未能及时测试。但是去学习了下:
SGD和Adam是pytorch中常用的优化器;SGD 是最普通的优化器, 也可以说没有加速效果;
Adam 是SGD优化器添加了诸如动量原则等升级,所以一般效果比SGD优化效果好。
动量法每下降一步都是由前面下降方向的一个累积和当前点的梯度方向组合而成, 减少2.1方法带来的震荡,让梯度平缓一些。公式如下
vt = β * vt-1 + λ▽J(x) (1)
x1 = x0 + vt (2)
明显看出明显抖动小一些
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具