# 图像分类常见问题汇总 - 2020 第1季 ## 目录 * [第1期](#第1期)(2020.11.03) * [第2期](#第2期)(2020.11.11) * [第3期](#第3期)(2020.11.18) ## 第1期 ### Q1.1: PaddleClas可以用来做什么? **A**:PaddleClas是飞桨为工业界和学术界所准备的一个图像分类任务的工具集,助力使用者训练出更好的视觉模型和应用落地。PaddleClas提供了基于图像分类的模型训练、评估、预测、部署全流程的服务,方便大家更加高效地学习图像分类。具体地,PaddleClas中包含如下一些特性 。 * PaddleClas提供了24个系列的分类网络结构(ResNet, ResNet_vd, MobileNetV3, Res2Net, HRNet等)和训练配置,122个预训练模型和性能评估与预测,供大家选择并使用。 * PaddleClas提供了TensorRT预测、python inference、c++ inference、Paddle-Lite预测部署等多种预测部署推理方案,在方便在多种环境中进行部署推理。 * PaddleClas提供了一种简单的SSLD知识蒸馏方案,基于该方案蒸馏模型的识别准确率普遍提升3%以上。 * PaddleClas支持AutoAugment、Cutout、Cutmix等8种数据增广算法详细介绍、代码复现和在统一实验环境下的效果评估。 * PaddleClas支持在Windows/Linux/MacOS环境中基于CPU/GPU进行使用。 ### Q1.2: ResNet系列模型是什么?有哪些模型?为什么在服务器端如此推荐ResNet系列模型? **A**: ResNet中创新性地引入了残差结构,通过堆叠多个残差结构从而构建了ResNet网络。实验表明使用残差块可以有效地提升收敛速度和精度,PaddleClas中,ResNet从小到达,依次有包含18、34、50、101、152、200层的ResNet结构,ResNet系列模型于2015年被提出,在不同的应用场景中,如分类、检测、分割等,都已经验证过其有效性,业界也早已对其进行了大量优化,该系列模型在速度和精度方面都有着非常明显的优势,对基于TensorRT以及FP16的预测支持得也很好,因而推荐大家使用ResNet系列模型;由于其模型所占存储相对较大,因此常用于服务器端。更多关于ResNet模型的介绍可以参考论文[Deep Residual Learning for Image Recognition](https://arxiv.org/abs/1512.03385)。 ### Q1.3: ResNet_vd和ResNet、ResNet_vc结构有什么区别呢? **A**: ResNet_va至vd的结构如下图所示,ResNet最早提出时为va结构,在降采样残差模块这个部分,在左边的特征变换通路中(Path A),第一个1x1卷积部分就行了降采样,从而导致信息丢失(卷积的kernel size为1,stride为2,输入特征图中 有部分特征没有参与卷积的计算);在vb结构中,把降采样的步骤从最开始的第一个1x1卷积调整到中间的3x3卷积中,从而避免了信息丢失的问题,PaddleClas中的ResNet模型默认就是ResNet_vb;vc结构则是将最开始这个7x7的卷积变成3个3x3的卷积,在感受野不变的情况下,计算量和存储大小几乎不变,而且实验证明精度相对于vb结构有所提升;vd结构是修改了降采样残差模块右边的特征通路(Path B)。把降采样的过程由平均池化这个操作去替代了,这一系列的改进(va->vd),几乎没有带来新增的预测耗时,结合适当的训练策略,比如说标签平滑以及mixup数据增广,精度可以提升高达2.7%。