From 258ed018aa00f7d49130430121355f2755d0344d Mon Sep 17 00:00:00 2001 From: cuicheng01 Date: Thu, 8 Jul 2021 12:15:37 +0000 Subject: [PATCH] Update faq_2021_s2.md --- docs/zh_CN/faq_series/faq_2021_s2.md | 57 ++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/docs/zh_CN/faq_series/faq_2021_s2.md b/docs/zh_CN/faq_series/faq_2021_s2.md index 2198f07a..18a626df 100644 --- a/docs/zh_CN/faq_series/faq_2021_s2.md +++ b/docs/zh_CN/faq_series/faq_2021_s2.md @@ -39,3 +39,60 @@ ### Q1.8 PaddleClas 2.2和PaddleClas 2.1完全兼容吗? **A**:PaddleClas2.2相对PaddleClas2.1新增了metric learning模块,主体检测模块、向量检索模块。另外,也提供了商品识别、车辆识别、logo识别和动漫人物识别等4个场景应用示例。用户可以基于PaddleClas 2.2快速构建图像识别系统。在图像分类模块,二者的使用方法类似,可以参考[图像分类示例](../tutorials/getting_started.md)快速迭代和评估。新增的metric learning模块,可以参考[metric learning示例](../tutorials/getting_started_retrieval.md)。另外,新版本暂时还不支持fp16、dali训练,也暂时不支持多标签训练,这块内容将在不久后支持。 + +### Q1.9 训练metric learning时,每个epoch中,无法跑完所有mini-batch,为什么? + +**A**:在训练metric learning时,使用的Sampler是DistributedRandomIdentitySampler,该Sampler不会采样全部的图片,导致会让每一个epoch采样的数据不是所有的数据,所以无法跑完显示的mini-batch是正常现象。后续我们会优化下打印的信息,尽可能减少给大家带来的困惑。 + +### Q1.10 有些图片没有识别出结果,为什么? + +**A**:在配置文件(如inference_product.yaml)中,`IndexProcess.score_thres`中会控制被识别的图片与库中的图片的余弦相似度的最小值。当余弦相似度小于该值时,不会打印结果。您可以根据自己的实际数据调整该值。 + +### Q1.11 为什么有一些图片检测出的结果就是原图? + +**A**:主体检测模型会返回检测框,但事实上为了让后续的识别模型更加准确,在返回检测框的同时也返回了原图。后续会根据原图或者检测框与库中的图片的相似度排序,相似度最高的库中图片的标签即为被识别图片的标签。 + +### Q1.12 使用circle loss还需加triplet loss吗? + +**A**:circle loss是统一了样本对学习和分类学习的两种形式,如果是分类学习的形式的话,可以增加triplet loss。 + +### Q1.13 hub serving方式启动某个模块,怎么添加该模块的参数呢? + +**A**:具体可以参考[hub serving参数](../../../deploy/hubserving/clas/params.py)。 + +### Q1.14 模型训练出nan,为什么? + +**A**: + +1.确保正确加载预训练模型, 最简单的加载方式添加参数`-o Arch.pretrained=True`即可; +2.模型微调时,学习率不要太大,如设置0.001就好。 + + +### Q1.15 SSLD中,大模型在500M数据上预训练后蒸馏小模型,然后在1M数据上蒸馏finetune 小模型? + +**A**:步骤如下: + +1.基于facebook开源的ResNeXt101-32x16d-wsl模型 去蒸馏得到了ResNet50-vd模型; +2.用这个ResNet50-vd,在500W数据集上去蒸馏MobilNetV3; +3.考虑到500W的数据集的分布和100W的数据分布不完全一致,所以这块,在100W上的数据上又finetune了一下,精度有微弱的提升。 + + +### Q1.16 如果不是识别开源的四个方向的图片,该使用哪个识别模型? + +**A**:建议使用商品识别模型,一来是因为商品覆盖的范围比较广,被识别的图片是商品的概率更大,二来是因为商品识别模型的训练数据使用了5万类别的数据,泛化能力更好,特征会更鲁棒一些。 + +### Q1.17 最后使用512维的向量,为什么不用1024或者其他维度的呢? + +**A**:使用维度小的向量,为了加快计算,在实际使用过程中,可能使用128甚至更小。一般来说,512的维度已经够大,能充分表示特征了。 + +### Q1.18 训练SwinTransformer,loss出现nan + +**A**:训练swin-transformer的话,需要使用paddle-dev去训练,安装方式参考[paddlepaddle安装方式](https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/develop/install/pip/linux-pip.html),后续paddlepaddle-2.1也会同时支持。 + +### Q1.19 新增底库数据需要重新构建索引吗? + +**A**:这一版需要重新构建索引,未来版本会支持只构建新增图片的索引。 + +### Q1.20 PaddleClas 的train log 文件在哪里? + +**A**:在保存权重的路径中存放了train.log。 -- GitLab