yunshao555

  • 6

    获得赞
  • 0

    发布的文章
  • 3

    答辩的项目

CT影像诊断新冠肺炎

Batch大小为16,循环次数为30次,损失函数优化完,最终完成评分为94.12。

CT影像诊断新冠肺炎
PyTorch EfficientNet
最后更新 2020/06/15 14:34 阅读 446

CT影像诊断新冠肺炎

最后更新 2020/06/15 14:34

阅读 446

PyTorch EfficientNet

数据处理 

1、通过线下观察数据,发现图像尺寸普遍在400以上,所以考虑使用的模型图像尺寸输入大小为448

 2、使用AutoML中的RandAugment作为图像数据增强 

模型选择

 1、因为图像尺寸较大,所以考虑使用efficientnet系列作为baseline模型框架我使用的是efficientnet-b2模型作为baseline 

训练技巧 

1、使用标签平滑损失,用来防止过拟合 

class LabelSmoothingCrossEntropy(nn.Module):    

def __init__(self, epsilon: float = 0.1, reduction='mean'):        

super().__init__()        

self.epsilon, self.reduction = epsilon, reduction    

def forward(self, output, target):        

c = output.size()[-1]        

log_preds = F.log_softmax(output, dim=-1)        

loss = reduce_loss(-log_preds.sum(dim=-1), self.reduction)        

nll = F.nll_loss(log_preds, target, reduction=self.reduction)        

return lin_comb(loss / c, nll, self.epsilon) 

2、使用带动量的SGD优化函数 

optim.SGD(model.parameters(), lr=lr, momentum=0.9, weight_decay=1e-4, nesterov=True)3、使用ReduceLROnPlateau作为学习率调整技巧 

lr_scheduler.ReduceLROnPlateau(optimizer, mode='max', factor=0.3, patience=3, verbose=True) 

总结 

本次比赛的数据集数量相对较少,训练过程也比较快,可以考虑多尝试目前新出模型进行训练,像ResneSt和Res2Net这些也可以考虑尝试一下,也可以考虑各种技巧的组合进行训练,并且可以多看看人家的总结,比如很多人有提到训练时使用adam作为优化器,使用多阶段训练,还可以考虑使用多模型融合等,总之,得自己多主动学习。Thanks...

本文为作者在FlyAI平台发布的原创内容,采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,转载请附上原文出处链接和本声明。
本文链接地址:https://www.flyai.com/n/134439
立即参加 CT影像诊断新冠肺炎
代码展示

PyTorch EfficientNet

选择查看文件
$vue{codeKeys}
  • $vue{ix}
赞赏贡献者还可以查看和下载优质代码内容哦!
赞赏 ¥22.54元
©以上内容仅用于在FlyAI平台交流学习,禁止转载、商用;违者将依法追究法律责任。
讨论
500字
表情
每日优质讨论奖励 20FAI
发送
每日优质讨论奖励 20FAI
删除确认
是否删除该条评论?
取消 删除
感谢您的关注
该篇内容公开后我们将会给你推送公开通知
好的
发布成功!
您的公开申请已发送至后台审核,
通过后将公开展示本详情页!
知道了
向贡献者赞赏
¥22.54
微信支付
支付宝

请先绑定您的微信账号 点击立即绑定

立即支付
温馨提示:
支付成功后不支持申请退款,请理性消费;
支付成功将自动解锁当前页面代码内容,付款前请确认账号信息。
微信扫码支付
请前往Web网页进行支付

敬请谅解,如有疑问请联系FlyAI客服

知道了
举报
请选择举报理由
确定
提示
确定要删除?
取消删除