文章目录

  • ResNet50类
    • train 训练接口
    • evaluate 评估接口
    • predict 预测接口
  • 其它分类器类
    • ResNet18
    • ResNet34
    • ResNet50
    • ResNet50_vd
    • ResNet50_vd_ssld
    • ResNet101
    • ResNet101_vd
    • ResNet101_vd_ssld
    • DarkNet53
    • MobileNetV1
    • MobileNetV2
    • MobileNetV3_small
    • MobileNetV3_small_ssld
    • MobileNetV3_large
    • MobileNetV3_large_ssld
    • Xception65
    • Xception71
    • ShuffleNetV2
    • DenseNet121
    • DenseNet161
    • DenseNet201
    • HRNet_W18

ResNet50类

paddlex.cls.ResNet50(num_classes=1000)

构建ResNet50分类器,并实现其训练评估预测

参数

num_classes (int): 类别数。默认为1000。

train 训练接口

train(self, num_epochs, train_dataset, train_batch_size=64, eval_dataset=None, save_interval_epochs=1, log_interval_steps=2, save_dir='output', pretrain_weights='IMAGENET', optimizer=None, learning_rate=0.025, warmup_steps=0, warmup_start_lr=0.0, lr_decay_epochs=[30, 60, 90], lr_decay_gamma=0.1, use_vdl=False, sensitivities_file=None, eval_metric_loss=0.05, early_stop=False, early_stop_patience=5, resume_checkpoint=None)

参数

  • num_epochs (int): 训练迭代轮数。
  • train_dataset (paddlex.datasets): 训练数据读取器。
  • train_batch_size (int): 训练数据batch大小。同时作为验证数据batch大小。默认值为64。
  • eval_dataset (paddlex.datasets): 验证数据读取器。
  • save_interval_epochs (int): 模型保存间隔(单位:迭代轮数)。默认为1。
  • log_interval_steps (int): 训练日志输出间隔(单位:迭代步数)。默认为2。
  • save_dir (str): 模型保存路径。
  • pretrain_weights (str): 若指定为路径时,则加载路径下预训练模型;若为字符串’IMAGENET’,则自动下载在ImageNet图片数据上预训练的模型权重;若为None,则不使用预训练模型。默认为’IMAGENET’。
  • optimizer (paddle.fluid.optimizer): 优化器。当该参数为None时,使用默认优化器:fluid.layers.piecewise_decay衰减策略,fluid.optimizer.Momentum优化方法。
  • learning_rate (float): 默认优化器的初始学习率。默认为0.025。
  • warmup_steps (int): 默认优化器的warmup步数,学习率将在设定的步数内,从warmup_start_lr线性增长至设定的learning_rate,默认为0。
  • warmup_start_lr(float): 默认优化器的warmup起始学习率,默认为0.0。
  • lr_decay_epochs (list): 默认优化器的学习率衰减轮数。默认为[30, 60, 90]。
  • lr_decay_gamma (float): 默认优化器的学习率衰减率。默认为0.1。
  • use_vdl (bool): 是否使用VisualDL进行可视化。默认值为False。
  • sensitivities_file (str): 若指定为路径时,则加载路径下敏感度信息进行裁剪;若为字符串’DEFAULT’,则自动下载在ImageNet图片数据上获得的敏感度信息进行裁剪;若为None,则不进行裁剪。默认为None。
  • eval_metric_loss (float): 可容忍的精度损失。默认为0.05。
  • early_stop (bool): 是否使用提前终止训练策略。默认值为False。
  • early_stop_patience (int): 当使用提前终止训练策略时,如果验证集精度在early_stop_patience个epoch内连续下降或持平,则终止训练。默认值为5。
  • resume_checkpoint (str): 恢复训练时指定上次训练保存的模型路径。若为None,则不会恢复训练。默认值为None。

evaluate 评估接口

evaluate(self, eval_dataset, batch_size=1, epoch_id=None, return_details=False)

参数

  • eval_dataset (paddlex.datasets): 验证数据读取器。
  • batch_size (int): 验证数据批大小。默认为1。
  • epoch_id (int): 当前评估模型所在的训练轮数。
  • return_details (bool): 是否返回详细信息,默认False。

返回值

  • dict: 当return_details为False时,返回dict, 包含关键字:’acc1’、’acc5’,分别表示最大值的accuracy、前5个最大值的accuracy。
  • tuple (metrics, eval_details): 当return_details为True时,增加返回dict,包含关键字:’true_labels’、’pred_scores’,分别代表真实类别id、每个类别的预测得分。

predict 预测接口

predict(self, img_file, transforms=None, topk=5)

分类模型预测接口。需要注意的是,只有在训练过程中定义了eval_dataset,模型在保存时才会将预测时的图像处理流程保存在ResNet50.test_transformsResNet50.eval_transforms中。如未在训练时定义eval_dataset,那在调用预测predict接口时,用户需要再重新定义test_transforms传入给predict接口。

参数

  • img_file (str): 预测图像路径。
  • transforms (paddlex.cls.transforms): 数据预处理操作。
  • topk (int): 预测时前k个最大值。

返回值

  • list: 其中元素均为字典。字典的关键字为’category_id’、’category’、’score’, 分别对应预测类别id、预测类别标签、预测得分。

其它分类器类

PaddleX提供了共计22种分类器,所有分类器均提供同ResNet50相同的训练train,评估evaluate和预测predict接口,各模型效果可参考模型库。

ResNet18

paddlex.cls.ResNet18(num_classes=1000)

ResNet34

paddlex.cls.ResNet34(num_classes=1000)

ResNet50

paddlex.cls.ResNet50(num_classes=1000)

ResNet50_vd

paddlex.cls.ResNet50_vd(num_classes=1000)

ResNet50_vd_ssld

paddlex.cls.ResNet50_vd_ssld(num_classes=1000)

ResNet101

paddlex.cls.ResNet101(num_classes=1000)

ResNet101_vd

paddlex.cls.ResNet101_vdnum_classes=1000)

ResNet101_vd_ssld

paddlex.cls.ResNet101_vd_ssld(num_classes=1000)

DarkNet53

paddlex.cls.DarkNet53(num_classes=1000)

MobileNetV1

paddlex.cls.MobileNetV1(num_classes=1000)

MobileNetV2

paddlex.cls.MobileNetV2(num_classes=1000)

MobileNetV3_small

paddlex.cls.MobileNetV3_small(num_classes=1000)

MobileNetV3_small_ssld

paddlex.cls.MobileNetV3_small_ssld(num_classes=1000)

MobileNetV3_large

paddlex.cls.MobileNetV3_large(num_classes=1000)

MobileNetV3_large_ssld

paddlex.cls.MobileNetV3_large_ssld(num_classes=1000)

Xception65

paddlex.cls.Xception65(num_classes=1000)

Xception71

paddlex.cls.Xception71(num_classes=1000)

ShuffleNetV2

paddlex.cls.ShuffleNetV2(num_classes=1000)

DenseNet121

paddlex.cls.DenseNet121(num_classes=1000)

DenseNet161

paddlex.cls.DenseNet161(num_classes=1000)

DenseNet201

paddlex.cls.DenseNet201(num_classes=1000)

HRNet_W18

paddlex.cls.HRNet_W18(num_classes=1000)

第三部分PaddleX模型集_3.1 图像分类相关推荐

  1. 第三部分PaddleX模型集_3.2 目标检测

    文章目录 1. YOLOv3类 1.1 train 训练接口 1.2 evaluate 评估接口 1.3 predict 预测接口 2. FasterRCNN类 2.1 train 训练接口 2.2 ...

  2. 从零开始学习jQuery (三) 管理jQuery包装集

    本系列文章导航 从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery ( ...

  3. 深度学习笔记 第五门课 序列模型 第三周 序列模型和注意力机制

    本文是吴恩达老师的深度学习课程[1]笔记部分. 作者:黄海广[2] 主要编写人员:黄海广.林兴木(第四所有底稿,第五课第一二周,第三周前三节).祝彦森:(第三课所有底稿).贺志尧(第五课第三周底稿). ...

  4. matlab产生er随机图,ER随机图模型 | 集智百科

    原标题:ER随机图模型 | 集智百科 "集智百科精选"是一个长期专栏,持续为大家推送复杂性科学相关的基本概念和资源信息.作为集智俱乐部的开源科学项目,集智百科希望打造复杂性科学领域 ...

  5. 吴恩达deeplearning.ai系列课程笔记+编程作业(15)序列模型(Sequence Models)-第三周 序列模型和注意力机制

    第五门课 序列模型(Sequence Models) 第三周 序列模型和注意力机制(Sequence models & Attention mechanism) 文章目录 第五门课 序列模型( ...

  6. 三种Cross-lingual模型 (XLM, XLM-R, mBART)详解

    本文将详述三种Cross-lingual模型,按照其在Arxiv上发表论文的时间,分别是XLM(2019/1/22).XLM-R(2019/11/5).mBART(2020/1/22),有意思的是这三 ...

  7. 第三周 序列模型和注意力机制(Sequence models Attention mechanism)

    第三周 序列模型和注意力机制(Sequence models & Attention mechanism) 文章目录 **第三周 序列模型和注意力机制(**Sequence models &a ...

  8. 基于三种机器学习模型的岩爆类型预测及Python实现

    写在前面 由于代码较多,本文仅展示部分关键代码,需要代码文件和数据可以留言 然而,由于当时注释不及时,且时间久远,有些细节笔者也记不清了,代码仅供参考 0 引言 岩爆是深部岩土工程施工过程中常见的一种 ...

  9. 机器学习(三)树模型

    机器学习(一)LR 机器学习(二)SVM 机器学习(三)树模型 机器学习(四)聚类 机器学习(三)树模型 目录 二.树模型 1.ID3 2.C4.5 3.CART树 (1)算法步骤 (2)举例 (3) ...

最新文章

  1. Java Date类
  2. 如何用Python从本地将一个文件备份到Google Drive
  3. 字符串常量池StringTable 你真的了解么
  4. snake4444勒索病毒成功处理教程方法工具达康解密金蝶/用友数据库sql后缀snake4444...
  5. 判断输入的IP地址是否合法
  6. 直击行业痛点!端侧模型部署的成熟解决方案有了!
  7. 【Socket】关于socket长连接的心跳包
  8. 蚂蚁集团与CCF达成合作成立基金,支持35岁以下青年学者
  9. VSCode打开终端的快捷键
  10. 英语对话关于计算机,有关电脑的一些英语对话
  11. 米家扫地机器人按键没反应_好到没理由不推荐 米家扫地机器人评测
  12. P2168 [NOI2015]荷马史诗
  13. 【算法】【感悟】LCP 03. 机器人大冒险
  14. 如何计算近似纳什均衡_网络与市场中的计算思维-5.博弈论的基本概念
  15. 面向金融场景的 Vue.js 移动端组件库 mand-mobile
  16. arduino声音传感器与二极管_Arduino--声音传感器(九)
  17. STF开源框架之minicap工具
  18. HTML实体的编码和解码
  19. PJBLOG 设置技巧
  20. python中定义函数完成判断某一个年份是否是闰年?

热门文章

  1. 戴尔G7音频驱动问题
  2. 使用expdp和impdp导出导入本地oracle数据.dmp文件
  3. Android应用内安装apk包
  4. eclipse新建javaweb项目——javaweb系列(一)
  5. 【技巧】Excel序号设置自动更新
  6. 免费的AI线稿图片上色工具+黑白图片上色网站合集(2021年实测可用)
  7. 读《曾经,我们爱过一个世纪》有感(附原文)
  8. Android Wifi连接 (PEAP)
  9. 数据治理:数据质量管理策略!
  10. 巴旦木即将成为农业的下一个“风口”河南巴旦木生态农业:值得期待