网易首页 > 网易号 > 正文 申请入驻

图像分类:来自13个Kaggle项目的经验总结

0
分享至

  大数据文摘授权转载自机器学习实验室

  任何领域的成功都可以归结为一套小规则和基本原则,当它们结合在一起时会产生伟大的结果。

  机器学习和图像分类也不例外,工程师们可以通过参加像Kaggle这样的竞赛来展示最佳实践。

  在这篇文章中,我将给你很多资源来学习,聚焦于从13个Kaggle比赛中挑选出的最好的Kaggle kernel。这些比赛是:

  Intel Image Classification:https://www.kaggle.com/puneet6060/intel-image-classification

  Recursion Cellular Image Classification: https://www.kaggle.com/c/recursion-cellular-image-classification

  SIIM-ISIC Melanoma Classification: https://www.kaggle.com/c/siim-isic-melanoma-classification

  APTOS 2019 Blindness Detection: https://www.kaggle.com/c/aptos2019-blindness-detection/notebooks

  Diabetic Retinopathy Detection: https://www.kaggle.com/c/diabetic-retinopathy-detection

  ML Project—Image Classification: https://www.kaggle.com/c/image-classification-fashion-mnist/notebooks

  Cdiscount’s Image Classification Challenge: https://www.kaggle.com/c/cdiscount-image-classification-challenge/notebooks

  Plant seedlings classifications:

  https://www.kaggle.com/c/plant- seedlings-classification/notebooks

  Aesthetic Visual Analysis:

  https://www.kaggle.com/c/aesthetic-visual-analysis/notebooks

  我们会讨论调试深度学习解决方案的三个主要方面:

  数据

  模型

  损失函数

  还有很多例子项目(和参考资料)供你参考。

  数据

  图像预处理 + EDA

  每一个机器学习/深度学习解决方案都从原始数据开始。在数据处理管道中有两个基本步骤。

  第一步是探索性数据分析 (EDA)。它帮助我们分析整个数据集并总结它的主要特征,比如类分布、大小分布等等。通常使用可视化方法来显示这种分析的结果。

  第二步是图像预处理,目的是对原始图像提高图像数据(也称为图像特征)的质量,通过抑制不必要的扭曲,缩放,增强重要的特征,使数据更适合模型并提高性能。

  你可以钻研这些Kaggle笔记本,看看一些图像预处理技术:

  Visualisation:

  https://www.kaggle.com/allunia/protein-atlas-exploration-and-baseline#Building-a-baseline-model-

  Dealing with Class imbalance: https://www.kaggle.com/rohandeysarkar/ultimate-image-classification-guide-2020

  Fill missing values (labels, features and, etc.): https://www.kaggle.com/datafan07/analysis-of-melanoma-metadata-and-effnet-ensemble

  Normalisation:

  https://www.kaggle.com/vincee/intel-image-classification-cnn-keras

  Pre-processing:

  https://www.kaggle.com/ratthachat/aptos-eye-preprocessing-in-diabetic-retinopathy#3.A-Important-Update-on-Color-Version-of-Cropping-&-Ben's-Preprocessing

  数据增强

  数据增强可以通过从现有的训练样本中生成更多的训练数据来扩展我们的数据集。通过大量的随机转换生成新的样本,这些转换不仅可以生成可信的图像,而且还反映了真实的场景 —— 稍后将对此进行详细介绍。

  这种技术得到了广泛的应用,不仅仅是在训练模型的数据样本太少的情况下。在这种情况下,模型开始记忆训练集,但无法泛化(在从未见过的数据上表现很差)。

  通常,当一个模型在训练数据上表现很好,但在验证数据上表现很差时,我们称之为过拟合。为了解决这个问题,我们通常会尝试获取新数据,如果没有可用的新数据,则可以使用数据增强。

  注:一般的经验法则是始终使用数据增强技术,因为它有助于使我们的模型见识更多的变化并更好地泛化。即使我们有一个很大的数据集,也要使用数据增强,但这是以较慢的训练速度为代价的,因为增强是在线完成的(即在训练期间)。

  此外,对于每个任务或数据集,我们必须使用反映可能的现实场景的增强技术(例如,如果我们有一个猫/狗探测器,我们可以使用水平翻转、剪裁、亮度和对比度,因为这些增强匹配不同的照片拍摄方式。

  这里是一些Kaggle比赛notebooks,你可以查看流行的数据增强技术:

  Horizontal Flip:

  https://www.kaggle.com/datafan07/analysis-of-melanoma-metadata-and-effnet-ensemble

  Random Rotate and Random Dihedral: https://www.kaggle.com/iafoss/pretrained-resnet34-with-rgby-0-460-public-lb

  Hue, Saturation, Contrast, Brightness, Crop: https://www.kaggle.com/cdeotte/triple-stratified-kfold-with-tfrecords

  Colour jitter:

  https://www.kaggle.com/nroman/melanoma-pytorch-starter-efficientnet

  模型

  开发一个基线

  在这里,我们使用一个非常简单的架构创建一个基本的模型,没有任何正则化或dropout层,看看我们是否能超过50%的准确率基线。尽管我们不可能总能达到这个目标,但如果我们在尝试了多种合理的架构后不能超过基线,那么输入数据可能不包含模型进行预测所需的信息。

  用Jeremy Howard的名言:

  “你应该能够在15分钟内使用50%或更少的数据集快速测试你是否正在朝着一个有希望的方向前进,如果没有,你必须重新考虑一切。”

  开发一个足够大可以过拟合的模型

  一旦我们的基线模型有足够的能力超过基线分数,我们就可以增加基线模型的能力,直到它在数据集上过拟合为止,然后我们就开始应用正则化。我们可以通过以下方式增加模块容量:

  添加更多层

  使用更好的结构

  更完善的训练流程

  结构

  根据文献,以下架构的改进提高了模型的容量,但几乎没有改变计算复杂度。

  Residual Networks

  Wide Residual Networks

  Inception

  EfficientNet

  Swish activation

  Residual Attention Network

  大多数时候,模型容量和精度是正相关的 —— 随着容量的增加,精度也会增加,反之亦然。

  训练过程

  下面是一些你可以用来调整你的模型的训练过程,通过实例项目来看看它们是如何工作的:

  Mixed-Precision Training

  Large Batch-Size Training

  Cross-Validation Set

  Weight Initialization

  Self-Supervised Training (Knowledge Distillation)

  Learning Rate Scheduler

  Learning Rate Warmup

  Early Stopping

  Differential Learning Rates

  Ensemble

  Transfer Learning

  Fine-Tuning

  超参数调试

  与参数不同,hyperparameters是由你在配置模型时指定的(即学习率、epoch的数量、hidden units的数量、batch size大小等)。

  你可以通过使用hyperparameter调优库,比如Scikit learn Grid Search,Keras Tuner来自动化这个过程,而不是去手动配置。这些库会在你指定的范围内尝试所有的hyperparameter组合,返回表现最好的模型。

  需要调优的超参数越多,过程就越慢,因此最好选择模型超参数的最小子集进行调优。

  并不是所有的模型超参数都同样重要。一些超参数会对机器学习算法的行为产生巨大的影响,进而影响其性能。你应该小心地选择那些对模型性能影响最大的参数,并对它们进行调优以获得最佳性能。

  正则化

  这种方法迫使模型学习有意义和具有泛化能力的数据表示,通过对记忆/过拟合和欠拟合进行惩罚来实现,使模型对于它没见过的数据更鲁棒。

  解决上述问题的一个简单方法是获得更多的训练数据,因为一个模型训练的数据越多,自然就会泛化得越好。

  这里有一些技巧你可以试着减轻过拟合和欠拟合,项目如下:

  Adding Dropout:

  https://www.kaggle.com/allunia/protein-atlas-exploration-and-baseline

  Adding or changing the position of Batch Norm: https://www.kaggle.com/allunia/protein-atlas-exploration-and-baseline

  Data augmentation:

  https://www.kaggle.com/cdeotte/triple-stratified-kfold-with-tfrecords

  Mixup: https://arxiv.org/abs/1710.09412

  Weight regularization:

  https://www.kaggle.com/allunia/protein-atlas-exploration-and-baseline

  Gradient clipping: https://www.kaggle.com/allunia/protein-atlas-exploration-and-baseline

  损失函数

  损失函数也被称为成本函数或目标函数,用于查找目标输出的模型之间的差异,并帮助模型最小化它们之间的距离。

  这里是一些最流行的损失函数,与项目实例,你会发现一些技巧,以提高你的模型的能力:

  Label smoothing

  Focal loss

  SparseMax loss and Weighted cross-entropy

  BCE loss, BCE with logits loss and Categorical cross-entropy loss

  Additive Angular Margin Loss for Deep Face Recognition

  评估 + 错误分析

  在这里,我们做消融研究,并分析我们的实验结果。我们确定了我们的模型的弱点和长处,并确定了未来需要改进的地方。在这个阶段,你可以使用以下技术,并在链接的示例中查看它们是如何实现的:

  Tracking metrics and Confusion matrix: https://www.kaggle.com/vincee/intel-image-classification-cnn-keras

  Grad CAM:

  https://arxiv.org/pdf /1610.02391v1.pdf

  Test Time Augmentation (TTA): https://www.kaggle.com/iafoss/pretrained-resnet34-with-rgby-0-460-public-lb

  有许多实验跟踪和管理工具,采取最小设置为你自动保存所有数据,这使消融研究更容易。

  最后

  有许多方法来调整你的模型,并且新的想法总是会出现。深度学习是一个快速发展的领域,没有什么灵丹妙药。我们必须做很多实验,足够的试验和错误会带来突破。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
为了郑丽文专机能够顺利落地,解放军果断亮出底牌,痛击台独要害

为了郑丽文专机能够顺利落地,解放军果断亮出底牌,痛击台独要害

健身狂人
2026-04-08 08:51:15
美官员称美军已暂停在伊朗境内的袭击

美官员称美军已暂停在伊朗境内的袭击

环球网资讯
2026-04-08 07:53:11
周总理只是让他去经商,为党赚取经费,他却给组织赚回个商业帝国

周总理只是让他去经商,为党赚取经费,他却给组织赚回个商业帝国

鹤羽说个事
2026-04-02 23:00:01
国民党爆发内江,马英九拒接电话,大陆公布统一后的安排

国民党爆发内江,马英九拒接电话,大陆公布统一后的安排

奇思妙想生活家
2026-04-07 15:21:31
10-3击败特鲁姆普,赵心童被奥沙利文史无前例高度赞扬,引发热议

10-3击败特鲁姆普,赵心童被奥沙利文史无前例高度赞扬,引发热议

侧身凌空斩
2026-04-07 23:41:46
槟榔包装上印着刘德华肖像,品牌方称并非代言,而是18年前《投名状》剧照宣发,律师解读

槟榔包装上印着刘德华肖像,品牌方称并非代言,而是18年前《投名状》剧照宣发,律师解读

极目新闻
2026-04-07 19:20:23
播出4集,收视全国第一!于和伟一出手,就给央视带来抗战剧王炸

播出4集,收视全国第一!于和伟一出手,就给央视带来抗战剧王炸

小丸子的娱乐圈
2026-04-07 21:45:55
34分狂胜,1分险胜!西部第一伪强队诞生,申京别高兴得太早

34分狂胜,1分险胜!西部第一伪强队诞生,申京别高兴得太早

世界体育圈
2026-04-07 20:23:34
国际油价持续拉高 美油涨4%创日内新高

国际油价持续拉高 美油涨4%创日内新高

每日经济新闻
2026-04-07 22:15:05
伊朗媒体:伊朗已关闭与美国的所有外交和间接沟通渠道

伊朗媒体:伊朗已关闭与美国的所有外交和间接沟通渠道

财联社
2026-04-07 21:48:18
美媒:“无法无天的世界代价高昂”

美媒:“无法无天的世界代价高昂”

参考消息
2026-04-07 16:50:06
国台办:两岸的事是两岸同胞的家里事

国台办:两岸的事是两岸同胞的家里事

界面新闻
2026-04-08 10:13:42
警惕:上了年纪再过性生活,最怕这2点!保护男性精气,做好4点

警惕:上了年纪再过性生活,最怕这2点!保护男性精气,做好4点

健康之光
2026-04-08 08:50:27
特朗普是个什么样的人,这篇文章分析得很透彻

特朗普是个什么样的人,这篇文章分析得很透彻

我是健康专家
2026-04-07 08:43:05
美方扶持的4位中国富豪开始露头了:在华疯狂捞金,扭头捐给美国

美方扶持的4位中国富豪开始露头了:在华疯狂捞金,扭头捐给美国

兴史兴谈
2026-04-07 11:07:05
73岁迟重瑞近况:卖故宫旁自家房子,均价15万,陈丽华嫁他好福气

73岁迟重瑞近况:卖故宫旁自家房子,均价15万,陈丽华嫁他好福气

一娱三分地
2026-02-19 17:04:30
江苏百亩大葱被哄抢,场面宛如蝗虫过境,户主哭诉太惨了,已报警

江苏百亩大葱被哄抢,场面宛如蝗虫过境,户主哭诉太惨了,已报警

眼光很亮
2026-04-07 13:53:06
1978年,粟裕说“淮海战役是我指挥的”,秘书扯他衣服:别讲了吧

1978年,粟裕说“淮海战役是我指挥的”,秘书扯他衣服:别讲了吧

微史纪
2026-04-08 00:43:05
中惠保险经纪公司董事长史亚政逝世,享年55岁

中惠保险经纪公司董事长史亚政逝世,享年55岁

界面新闻
2026-04-07 14:20:17
中国唯一富过17代的家族,坐拥上海近一千栋房屋,子孙大都上哈佛

中国唯一富过17代的家族,坐拥上海近一千栋房屋,子孙大都上哈佛

新一说史
2026-03-31 13:45:24
2026-04-08 12:35:00
大数据文摘 incentive-icons
大数据文摘
专注大数据,每日有分享!
6848文章数 94540关注度
往期回顾 全部

科技要闻

造出地表最强AI,却死活不给你用!

头条要闻

午评:创业板指半日涨4.81% 全市场超5000只个股上涨

头条要闻

午评:创业板指半日涨4.81% 全市场超5000只个股上涨

体育要闻

皇马1.5亿巨星浪费超级单刀 丢球摊手抱怨

娱乐要闻

杨颖邓超低调现身观众席 支持陈赫话剧

财经要闻

特朗普同意停火两周 伊朗:接受停火提议

汽车要闻

5门5座/新复古造型 缤果Pro将于4月14日开启预售

态度原创

亲子
健康
教育
手机
时尚

亲子要闻

趣味游戏

干细胞抗衰4大误区,90%的人都中招

教育要闻

孩子主动表达的重要性与警示信号

手机要闻

看片不再被吓一跳!Binge恐怖片预警神器上线:支持灵动岛提醒

阔腿裤失宠了?今年这几条裤子最时髦!

无障碍浏览 进入关怀版