使用Pytorch来完成CNN的训练和验证过程,逻辑结构如下:

  • 构造训练集和验证集;
  • 每轮进行训练和验证,并根据最优验证集精度保存模型。
train_loader = torch.utils.data.DataLoader(train_dataset,batch_size=10, shuffle=True, num_workers=10,
)val_loader = torch.utils.data.DataLoader(val_dataset,batch_size=10, shuffle=False, num_workers=10,
)model = Model1()
criterion = nn.CrossEntropyLoss(size_average=False)
optimizer = torch.optim.Adam(model.parameters(), 0.001)
best_loss = 1000.0
for epoch in range(20):
print('Epoch: ', epoch)train(train_loader, model, criterion, optimizer, epoch)
val_loss = validate(val_loader, model, criterion)# 记录下验证集精度
if val_loss < best_loss:best_loss = val_losstorch.save(model.state_dict(), './model.pt')

在Pytorch中模型的保存和加载非常简单,比较常见的做法是保存和加载模型参数:

torch.save(model_object.state_dict(), 'model.pt')model.load_state_dict(torch.load(' model.pt'))

模型调参流程:

零基础入门语义分割-Task5 模型训练与验证相关推荐

  1. Datawhale 零基础入门CV赛事-Task4 模型训练与验证

    文章目录 1.构造验证集 2.模型训练与验证 1.构造验证集 在机器学习模型(特别是深度学习模型)的训练过程中,模型是非常容易过拟合的.深度学习模型在不断的训练过程中训练误差会逐渐降低,但测试误差的走 ...

  2. 阿里云天池竞赛-零基础入门CV赛事-Task4 模型训练与验证

    在上一章节我们构建了一个简单的CNN进行训练,并可视化了训练过程中的误差损失和第一个字符预测准确率,但这些还远远不够.一个成熟合格的深度学习训练流程至少具备以下功能: 在训练集上进行训练,并在验证集上 ...

  3. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task5:模型训练与验证

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  4. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task6:分割模型模型集成

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  5. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task4:评价函数与损失函数

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  6. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task3:网络模型结构发展

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  7. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task2:数据扩增方法

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  8. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  9. 【天池赛事】零基础入门语义分割-地表建筑物识别

    https://tianchi.aliyun.com/competition/entrance/531872/introduction [天池赛事]零基础入门语义分割-地表建筑物识别:第一章 赛题及b ...

最新文章

  1. python 光标位置输入文字_Python 移动光标位置的方法
  2. linux yum list包数量少,Linux基础知识之YUM包管理工具
  3. 2.4 matlab矩阵的特征值和特征向量
  4. 【笔记】基于低空无人机影像和 YOLOv3 实现棉田杂草检测
  5. 配置httpd虚拟主机
  6. vba 跳到下一个循环_VBA野知识分享:从一个数组中取部分值生成新数组,不使用循环的思路...
  7. LeetCode 1121. 将数组分成几个递增序列
  8. 多个需要验证的输入框思路问题
  9. 【PDN仿真笔记4-电容布局仿真及结果分析】
  10. 免焊vga3加6接线图_高清 VGA免焊接头3+6+9 VGA快速接头 免焊公头 3排15针 15针插头...
  11. verilog实现N分频电路
  12. 计算机网络和智能家居,智能家居与传统智能家居到底有什么区别
  13. 系统版本android 9,安卓9.0系统
  14. 3DMAX到底该如何布线?
  15. 打卡赠书 | 养成一个思考习惯
  16. 渗透学习-靶场篇-WebGoat靶场(JWT攻击)
  17. java中的值传递和引用传递2原文:http://blog.csdn.net/niuniu20008/article/details/2953785...
  18. Android应用开发之RelativeLayout (相对布局)+梅花效果案例
  19. sja1000 中断_关于单片机+SJA1000接收中断C语言编程的问题
  20. React+SSM+阿里云部署(JDK, MySQL8, Tomcat)

热门文章

  1. Lottie-iOS的应用及部分源码分析
  2. 遗传算法中适值函数的标定与大变异算法
  3. 设计模式之工厂方法的重载
  4. js实现侧边栏信息展示效果
  5. [OpenGL] opengl常见问题汇总
  6. web.xml 详细介绍
  7. 搜索结果红色php,.NET_asp.net搜索匹配关键字为红色显示的代码,首先创建类库 Model (业务实体 - phpStudy...
  8. python turtle_Python:turtle画粽子
  9. CSS基础汇总——点击标题跳转详细博客【学习笔记】
  10. python中使用selenium模块登录QQ邮箱