Kaggle数据竞赛记录 - Steel Defect Detection

本文回顾了一次钢材图片缺陷检测分类及标记的竞赛,使用EfficientNet进行图像识别,通过Dice coefficient评估模型性能,详细介绍了数据增强、模型建立及评估过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

钢材缺陷分类检测及标记

这个是去年的比赛,过了很久了才来记录一下。
附上IEEE-CIS Fraud Detection的总结

赛题理解

kaggle链接
竞赛主要目的是钢材图片进行缺陷检测分类及标记,图像识别的机器学习问题,使用到了google的开源框架,EfficientNet

评估标准:是Dice coefficient戴斯相似性系数 (倾向于保守预计,错判比漏判损失严重)

结果:0.90798,0.91685

数据介绍

train_images, test_images, train.csv(注:现在看到的这个表和原来的表结构不太一样了)
图片大小是(256, 1600),缺陷类别有4种,
Pixels(图像标签)→ 原图片的缺陷是没有标注,要用这个圈出来,表示方法是用一组组起点+长度表示

原来的表结构现在的表结构

过程思路

一、数据分析和处理,主要是做图片数据增强,使用albu 库的随机水平翻转 RandomHorizonalFlip

二、 模型建立,这里有2步,因为这个赛题是要找出有缺陷的图片并标记出来是哪种缺陷,所以第一步是检测图片有没有缺陷,毕竟,没有缺陷就没有必要往下走了,另外,评估标准是Dice coefficient戴斯相似性系数,也就是如果一个没有缺陷的图片被标记有缺陷,对分数的损失比一个有缺陷的图片没有被找出来更大。所以分类模型更倾向于没有图片没有缺陷

  • 建立分类模型:检测这个图片有没有缺陷,在前面的图片分析种,大部分图片是没有锈斑的,这种就没有没有必要去做一个分割网络,因为没有loss,容易出问题

    分别用EfficientNet-b2,EfficientNet-b3,并且将这2个模型进行一个简单的融合,这是一个多分类任务,5种 (包含无锈斑)

    • 输入部分:①原图② RandomCrop 获取256*800 一半size的图片
      参数:batch size=64,优化器=AdamW ,学习率=0.003
  • 分割模型(segmentation_models_pytorch):对于被检测出有锈斑的图片,对每个像素点做分类任务

    用到FPN: 一种高效的CNN特征提取方法,输入为任意大小的图片,输出为各尺度的 feature map。

    其中 bottleneck layer是EfficientNet-b3,ENCODER = ‘efficientnet-b3’

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值