栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

笔记:TGS Salt Identification Challenge

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

笔记:TGS Salt Identification Challenge

TGS Salt Identification ChallengeTGS Salt Identification Challenge

从零开始学习语义分割。比赛地址
我的代码地址

新手一个,随学随记,请勿喷我
也不知道自己输出的这个图对不对,反正就瞎看

第一版:对应xxx_1.py

网络:Unet

  • 无数据增强
  • 无depth信息
  • 原版网络

预处理:

  • 转换格式 (tips: cv2读入的图片是BGR格式,shape是(H, W, C),我选择了先转为RGB再灰度化)
  • 灰度化 黑白图片
  • Resize
  • ToTensor

后处理: (网络写了半天,数据处理写了两天,麻了)

  • sigmoid
  • 转为numpy 数据范围从[0-1]变为[0-255]
  • Resize
  • mask2rle 对mask进行encode,这样才能传入submission.csv

结果:
Loss:

IoU:

LB:

总结和问题
根据loss和iou的情况选择了第34轮保存的模型参数,并生成了最终结果。据说直接使用unet应该在0.68左右?我这个好像右的厉害。

另外,loss和iou抖动的好像有些厉害,在自己电脑上拿batchsize=25跑了50epoch,之前在colab上以batchsize=50跑了100epoch,那个loss和iou好像没这个抖动的这么厉害。不知道跟batchsize这个参数有多大关系。但是基本都在20-40轮就效果不错了。

问题1:一个很蠢的问题,前一天还能正常运行的代码,第二天预测的时候一直在自动杀死进程。改了一天的BUG,一开始一直以为是爆显存,后来才觉得是不是爆了内存,查了半天代码发现是不知道什么时候按到了什么键删除了一行代码,导致预测的图片从18000张101x101图片变成了18000x128张101x101的图片,怪不得炸了。

第二版:对应xxx_2.py

网络:Res_unet

  • 无数据增强
  • 基础模块使用残差块
  • 无depth

预处理: 同第一版
后处理: 同第二版

结果:
Loss:

IoU:

LB:

总结:
这次Private score增加了0.02。
使用的第38轮的模型参数
代码中添加了logging,即保存log文件。以前是直接打印,不方便对比,这次添加了Log文件。

第三版:xxx_3.py

网络:Res_UNet

  • 使用depth
  • 无数据增强

预处理: 同上
后处理: 同上

结果:
Loss:

IoU:

LB:

总结:
感觉加了depth,也没有较好的提升,或许是抖动的问题?甚至Score还掉了。

这个题就先这样吧,数据增强什么的也没做,因为这次的代码写的有些凌乱,文件也越来越多,所以我想后续换个题,重新写代码,争取把自己的代码写成自己的模板,方便后续使用。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1011893.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号