Paddle预训练模型应用工具PaddleHub

Paddle预训练模型应用工具PaddleHub
• 本文主要介绍如何使用飞桨预训练模型管理工具PaddleHub,快速体验模型以及实现迁移学习。建议使用GPU环境运行相关程序,可以在启动环境时,如下图所示选择“高级版”环境即可。
在这里插入图片描述

如果没有算力卡资源可以点击链接申请。
在这里插入图片描述

概述
首先提个问题,请问十行Python代码能干什么?有人说可以做个小日历、做个应答机器人等等,用十行代码可以成功训练出深度学习模型,飞桨的PaddleHub可以轻松实现。
PaddleHub是飞桨生态下的预训练模型的管理工具,旨在让飞桨生态下的开发者更便捷地享受到大规模预训练模型的价值。用户可以通过PaddleHub便捷地获取飞桨生态下的预训练模型,结合Fine-tune API快速完成迁移学习到应用部署的全流程工作,让预训练模型能更好服务于用户特定场景的应用。
当前PaddleHub已经可以支持文本、图像、视频、语音和工业应用等五大类主流方向,为用户准备了大量高质量的预训练模型,可以满足用户各种应用场景的任务需求,包括但不限于词法分析、情感分析、图像分类、图像分割、目标检测、关键点检测、视频分类等经典任务。同时结合时事热点,如图1所示,PaddleHub作为飞桨最活跃的生态组成之一,也会及时开源类似口罩人脸检测及分类、肺炎CT影像分析等实用场景模型,帮助开发者快速开发使用。
在这里插入图片描述

图1 肺炎CT影像与口罩人脸检测及分类效果图
通常情况下,如果用户希望使用模型完成推理业务,需要完成训练数据采集标注、算法开发、模型训练、预测部署等任务,这其中任何一项都需要花费较多的人力和成本,为了解决这个问题,飞桨提供了PaddleHub预训练模型管理工具。用户可以直接使用PaddleHub中的预训练模型,或以迁移学习的方式训练出自己想要的模型,快速实现推理业务。
那什么是迁移学习呢?通俗的来讲,迁移学习就是运用已有的知识来学习新的知识,例如学会了骑自行车的人也能较快的学会骑电动车。较为常用的一种迁移学习方式是利用预训练模型进行微调,即用户基于当前任务的场景从PaddleHub中选择已训练成功的模型进行新任务训练,且该模型曾经使用的数据集与新场景的数据集情况相近,此时仅需要在当前任务场景的训练过程中使用新场景的数据对模型参数进行微调,即可完成训练任务。
总之,PaddleHub帮助用户简化了数据采集、算法开发、模型训练、预测部署等流程,实现开箱即用,且仅需要增加高质量的领域数据,即可快速提升模型效果。
PaddleHub主要包括如下三类功能:
• 使用命令行实现快速推理:PaddleHub基于“模型即软件”的设计理念,通过Python API或命令行实现快速预测,更方便地使用飞桨模型库。
• 使用预训练模型进行迁移学习:选择高质量预训练模型结合Fine-tune API,在短时间内完成模型训练。
• PaddleHub Serving一键服务化部署:使用简单命令行搭建属于自己的模型的API服务。
前置条件
在使用PaddleHub之前,用户需要完成如下任务:

  1. 安装Python:对于Linux或MAC操作系统请安装3.5或3.5以上版本;对于Windows系统,请安装3.6或3.6以上版本。
  2. 安装飞桨2.0版本,具体安装方法请参见快速安装。
  3. 安装PaddleHub 2.0或以上版本。
    !pip install paddlehub2.0.0rc
    Looking in indexes: https://mirror.baidu.com/pypi/simple/
    Collecting paddlehub
    2.0.0rc
    Downloading https://mirror.baidu.com/pypi/packages/df/7f/47008ee77d31f317616112c5a817222caa089fd0760807296775ab811910/paddlehub-2.0.0rc0-py3-none-any.whl (190kB)
    |████████████████████████████████| 194kB 11.2MB/s eta 0:00:01
    Requirement already satisfied: colorlog in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub2.0.0rc) (4.1.0)
    Collecting easydict (from paddlehub
    2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/4c/c5/5757886c4f538c1b3f95f6745499a24bffa389a805dee92d093e2d9ba7db/easydict-1.9.tar.gz
    Collecting gitpython (from paddlehub2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/d7/cb/ec98155c501b68dcb11314c7992cd3df6dce193fd763084338a117967d53/GitPython-3.1.12-py3-none-any.whl (159kB)
    |████████████████████████████████| 163kB 73.8MB/s eta 0:00:01
    Requirement already satisfied: matplotlib in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub
    2.0.0rc) (2.2.3)
    Requirement already satisfied: pyzmq in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub2.0.0rc) (18.0.1)
    Requirement already satisfied: rarfile in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub
    2.0.0rc) (3.1)
    Requirement already satisfied: visualdl>=2.0.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub2.0.0rc) (2.1.0)
    Requirement already satisfied: colorama in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub
    2.0.0rc) (0.4.4)
    Requirement already satisfied: numpy in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub2.0.0rc) (1.16.4)
    Collecting packaging (from paddlehub
    2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/b1/a7/588bfa063e7763247ab6f7e1d994e331b85e0e7d09f853c59a6eb9696974/packaging-20.8-py2.py3-none-any.whl
    Requirement already satisfied: Pillow in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub2.0.0rc) (7.1.2)
    Requirement already satisfied: pyyaml in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub
    2.0.0rc) (5.1.2)
    Collecting paddlenlp>=2.0.0b2 (from paddlehub2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/14/26/492612b0cb40bcc12c2a4fb8f7248b4939abd87dcfe1537b003ebbe02f6e/paddlenlp-2.0.0b3-py3-none-any.whl (163kB)
    |████████████████████████████████| 163kB 23.1MB/s eta 0:00:01
    Collecting filelock (from paddlehub
    2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/93/83/71a2ee6158bb9f39a90c0dea1637f81d5eef866e188e1971a1b1ab01a35a/filelock-3.0.12-py3-none-any.whl
    Requirement already satisfied: flask>=1.1.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub2.0.0rc) (1.1.1)
    Requirement already satisfied: opencv-python in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub
    2.0.0rc) (4.1.1.26)
    Requirement already satisfied: tqdm in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub2.0.0rc) (4.36.1)
    Requirement already satisfied: gunicorn>=19.10.0; sys_platform != “win32” in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub
    2.0.0rc) (20.0.4)
    Collecting gitdb<5,>=4.0.1 (from gitpython->paddlehub2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/48/11/d1800bca0a3bae820b84b7d813ad1eff15a48a64caea9c823fc8c1b119e8/gitdb-4.0.5-py3-none-any.whl (63kB)
    |████████████████████████████████| 71kB 7.4MB/s eta 0:00:011
    Requirement already satisfied: kiwisolver>=1.0.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from matplotlib->paddlehub
    2.0.0rc) (1.1.0)
    Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from matplotlib->paddlehub2.0.0rc) (2.4.2)
    Requirement already satisfied: cycler>=0.10 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from matplotlib->paddlehub
    2.0.0rc) (0.10.0)
    Requirement already satisfied: pytz in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from matplotlib->paddlehub2.0.0rc) (2019.3)
    Requirement already satisfied: python-dateutil>=2.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from matplotlib->paddlehub
    2.0.0rc) (2.8.0)
    Requirement already satisfied: six>=1.10 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from matplotlib->paddlehub2.0.0rc) (1.15.0)
    Requirement already satisfied: Flask-Babel>=1.0.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from visualdl>=2.0.0->paddlehub
    2.0.0rc) (1.0.0)
    Requirement already satisfied: protobuf>=3.11.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from visualdl>=2.0.0->paddlehub2.0.0rc) (3.12.2)
    Requirement already satisfied: requests in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from visualdl>=2.0.0->paddlehub
    2.0.0rc) (2.22.0)
    Requirement already satisfied: pre-commit in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from visualdl>=2.0.0->paddlehub2.0.0rc) (1.21.0)
    Requirement already satisfied: bce-python-sdk in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from visualdl>=2.0.0->paddlehub
    2.0.0rc) (0.8.53)
    Requirement already satisfied: flake8>=3.7.9 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from visualdl>=2.0.0->paddlehub2.0.0rc) (3.8.2)
    Requirement already satisfied: jieba in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlenlp>=2.0.0b2->paddlehub
    2.0.0rc) (0.42.1)
    Requirement already satisfied: h5py in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlenlp>=2.0.0b2->paddlehub2.0.0rc) (2.9.0)
    Collecting seqeval (from paddlenlp>=2.0.0b2->paddlehub
    2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/9d/2d/233c79d5b4e5ab1dbf111242299153f3caddddbb691219f363ad55ce783d/seqeval-1.2.2.tar.gz (43kB)
    |████████████████████████████████| 51kB 16.3MB/s eta 0:00:01
    Requirement already satisfied: click>=5.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub2.0.0rc) (7.0)
    Requirement already satisfied: Jinja2>=2.10.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub
    2.0.0rc) (2.10.1)
    Requirement already satisfied: Werkzeug>=0.15 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub2.0.0rc) (0.16.0)
    Requirement already satisfied: itsdangerous>=0.24 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub
    2.0.0rc) (1.1.0)
    Requirement already satisfied: setuptools>=3.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from gunicorn>=19.10.0; sys_platform != “win32”->paddlehub2.0.0rc) (41.4.0)
    Collecting smmap<4,>=3.0.1 (from gitdb<5,>=4.0.1->gitpython->paddlehub
    2.0.0rc)
    Downloading https://mirror.baidu.com/pypi/packages/b0/9a/4d409a6234eb940e6a78dfdfc66156e7522262f5f2fecca07dc55915952d/smmap-3.0.4-py2.py3-none-any.whl
    Requirement already satisfied: Babel>=2.3 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from Flask-Babel>=1.0.0->visualdl>=2.0.0->paddlehub2.0.0rc) (2.8.0)
    Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests->visualdl>=2.0.0->paddlehub
    2.0.0rc) (1.25.6)
    Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests->visualdl>=2.0.0->paddlehub2.0.0rc) (3.0.4)
    Requirement already satisfied: certifi>=2017.4.17 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests->visualdl>=2.0.0->paddlehub
    2.0.0rc) (2019.9.11)
    Requirement already satisfied: idna<2.9,>=2.5 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests->visualdl>=2.0.0->paddlehub2.0.0rc) (2.8)
    Requirement already satisfied: importlib-metadata; python_version < “3.8” in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->visualdl>=2.0.0->paddlehub
    2.0.0rc) (0.23)
    Requirement already satisfied: toml in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->visualdl>=2.0.0->paddlehub2.0.0rc) (0.10.0)
    Requirement already satisfied: nodeenv>=0.11.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->visualdl>=2.0.0->paddlehub
    2.0.0rc) (1.3.4)
    Requirement already satisfied: virtualenv>=15.2 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->visualdl>=2.0.0->paddlehub2.0.0rc) (16.7.9)
    Requirement already satisfied: aspy.yaml in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->visualdl>=2.0.0->paddlehub
    2.0.0rc) (1.3.0)
    Requirement
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PaddlePaddle是一个流行的深度学习框架,它提供了大量的预训练模型供用户使用。使用预训练模型可以帮助想学习算法或尝试现有框架的人。预训练模型能够提供很好的帮助,因为它们克服了从头开始训练一个模型所需的时间和计算资源的限制。你可以使用预训练模型作为基准来改进现有的模型,或者根据它们来测试自己的模型。 在PaddlePaddle中,你可以通过运行train.py文件来加载预训练模型进行训练。你可以通过指定pretrained_model参数来指定下载好的预训练模型的路径。此外,你还可以根据具体的工作领域,如目标检测、图像分类等,调整预训练模型的参数以适应你的需求。 此外,PaddlePaddle还提供了一个名为PaddleHub工具,它是基于PaddlePaddle生态系统下的预训练模型管理和迁移学习工具PaddleHub可以帮助你更方便地使用预训练模型进行迁移学习工作。通过结合PaddleHub预训练模型,你可以更加便捷地进行深度学习任务的开发和应用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [PaddlePaddle预训练模型大合集,还有官方使用说明书](https://blog.csdn.net/PaddlePaddle/article/details/93858863)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Python-PaddleHub是基于PaddlePaddle生态下的预训练模型管理和迁移学习工具](https://download.csdn.net/download/weixin_39840387/11520751)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值