Skip to content

Commit ef273da

Browse files
kinghuinZeyuChenSteffy-zxf
authored andcommitted
ready 1.5 (PaddlePaddle#290)
* Update README.md Polish README Co-authored-by: Zeyu Chen <[email protected]> Co-authored-by: Steffy-zxf <[email protected]>
1 parent c77b4eb commit ef273da

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+1614
-1975
lines changed

README.md

+57-64
Original file line numberDiff line numberDiff line change
@@ -4,26 +4,16 @@
44
[![License](https://img.shields.io/badge/license-Apache%202-blue.svg)](LICENSE)
55
[![Version](https://img.shields.io/github/release/PaddlePaddle/PaddleHub.svg)](https://github.com/PaddlePaddle/PaddleHub/releases)
66

7-
PaddleHub是基于PaddlePaddle生态下的预训练模型管理和迁移学习工具,可以结合预训练模型更便捷地开展迁移学习工作。PaddleHub特性:
8-
9-
* 便捷地获取PaddlePaddle生态下的所有预训练模型,涵盖了图像分类、目标检测、词法分析、语义模型、情感分析、语言模型、视频分类、图像生成、图像分割等主流模型。
10-
* 更多详情可查看官网:https://www.paddlepaddle.org.cn/hub
11-
* 通过PaddleHub Fine-tune API,结合少量代码即可完成**大规模预训练模型**的迁移学习,具体Demo可参考以下链接:
12-
* [文本分类](./demo/text-classification)
13-
* [序列标注](./demo/sequence-labeling)
14-
* [多标签分类](./demo/multi-label-classification)
15-
* [图像分类](./demo/image-classification)
16-
* [检索式问答任务](./demo/qa_classification)
17-
* [回归任务](./demo/sentence_similarity)
18-
* [句子语义相似度计算](./demo/sentence_similarity)
19-
* [阅读理解任务](./demo/reading-comprehension)
20-
* 支持超参优化(AutoDL Finetuner),自动调整超参数,给出效果较佳的超参数组合。
21-
* [PaddleHub超参优化功能AutoDL Finetuner使用示例](./demo/autofinetune)
22-
* 引入『**模型即软件**』的设计理念,通过Python API或者命令行实现一键预测,更方便地应用PaddlePaddle模型库。
23-
* [PaddleHub命令行工具介绍](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%B7%A5%E5%85%B7)
24-
* 一键Module服务化部署 - HubServing
25-
* [PaddleHub-Serving一键服务部署](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub-Serving%E4%B8%80%E9%94%AE%E6%9C%8D%E5%8A%A1%E9%83%A8%E7%BD%B2)
26-
* [使用示例](./demo/serving)
7+
PaddleHub是飞桨预训练模型管理和迁移学习工具,通过PaddleHub开发者可以使用高质量的预训练模型结合Fine-tune API快速完成迁移学习到应用部署的全流程工作。PaddleHub具有以下特性:
8+
9+
* 便捷获取飞桨生态下的高质量预训练模型,涵盖了图像分类、目标检测、词法分析、语义模型、情感分析、视频分类、图像生成、图像分割、文本审核、关键点检测等主流模型。更多模型详情请查看官网:https://www.paddlepaddle.org.cn/hub
10+
* 通过高质量预训练模型与PaddleHub Fine-tune API,只需要少量代码即可实现自然语言处理和计算机视觉场景的深度学习模型,更多Demo请参考以下链接:
11+
12+
[文本分类](./demo/text_classification) [序列标注](./demo/sequence_labeling) [多标签分类](./demo/multi_label_classification) [图像分类](./demo/image_classification) [检索式问答任务](./demo/qa_classification) [回归任务](./demo/regression) [句子语义相似度计算](./demo/sentence_similarity) [阅读理解任务](./demo/reading_comprehension)
13+
14+
***模型即软件**』的设计理念,通过Python API或命令行实现快速预测,更方便地使用PaddlePaddle模型库,更多介绍请参考教程[PaddleHub命令行工具介绍](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%B7%A5%E5%85%B7)
15+
* PaddleHub提供便捷的服务化部署能力,简单一行命令即可搭建属于自己的模型的API服务,更多详情请参考教程[PaddleHub Serving一键服务化部署](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub-Serving%E4%B8%80%E9%94%AE%E6%9C%8D%E5%8A%A1%E9%83%A8%E7%BD%B2)[使用示例](./demo/serving)
16+
* 支持AutoDL Finetuner超参优化技术, 自动搜索最优模型超参得到更好的模型效果。详情请参考[AutoDL Finetuner超参优化功能教程](./tutorial/autofinetune.md)
2717

2818
## 目录
2919

@@ -53,7 +43,7 @@ pip安装方式如下:
5343
```shell
5444
$ pip install paddlehub
5545
```
56-
2. 下载数据集、module等,PaddleHub要求机器可以访问外网。可以使用server_check()可以检查本地与远端PaddleHub-Server的连接状态,使用方法如下:
46+
2. 使用PaddleHub下载数据集、预训练模型等,要求机器可以访问外网。可以使用server_check()可以检查本地与远端PaddleHub-Server的连接状态,使用方法如下:
5747

5848
```python
5949
import paddlehub
@@ -64,92 +54,93 @@ paddlehub.server_check()
6454

6555

6656
## 快速体验
67-
安装成功后,执行下面的命令,可以快速体验PaddleHub无需代码、一键预测的命令行功能:
68-
69-
`示例一`
57+
安装成功后,执行命令[hub run](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%B7%A5%E5%85%B7#run),可以快速体验PaddleHub无需代码、一键预测的命令行功能,如下三个示例:
7058

7159
使用[词法分析](http://www.paddlepaddle.org.cn/hub?filter=category&value=LexicalAnalysis)模型LAC进行分词
7260
```shell
7361
$ hub run lac --input_text "今天是个好日子"
7462
[{'word': ['今天', '', '', '好日子'], 'tag': ['TIME', 'v', 'q', 'n']}]
7563
```
7664

77-
`示例二`
78-
7965
使用[情感分析](http://www.paddlepaddle.org.cn/hub?filter=category&value=SentimentAnalysis)模型Senta对句子进行情感预测
8066
```shell
8167
$ hub run senta_bilstm --input_text "今天天气真好"
8268
{'text': '今天天气真好', 'sentiment_label': 1, 'sentiment_key': 'positive', 'positive_probs': 0.9798, 'negative_probs': 0.0202}]
8369
```
8470

85-
`示例三`
86-
8771
使用[目标检测](http://www.paddlepaddle.org.cn/hub?filter=category&value=ObjectDetection)模型 SSD/YOLO v3/Faster RCNN 对图片进行目标检测
8872
```shell
89-
$ wget --no-check-certificate https://paddlehub.bj.bcebos.com/resources/test_object_detection.jpg
73+
$ wget https://paddlehub.bj.bcebos.com/resources/test_object_detection.jpg
9074
$ hub run ssd_mobilenet_v1_pascal --input_path test_object_detection.jpg
91-
$ hub run yolov3_coco2017 --input_path test_object_detection.jpg
75+
$ hub run yolov3_darknet53_coco2017 --input_path test_object_detection.jpg
9276
$ hub run faster_rcnn_coco2017 --input_path test_object_detection.jpg
9377
```
9478
![SSD检测结果](https://raw.githubusercontent.com/PaddlePaddle/PaddleHub/release/v1.3/docs/imgs/object_detection_result.png)
9579

96-
除了上述三类模型外,PaddleHub还发布了语言模型、语义模型、图像分类、生成模型、视频分类等业界主流模型,更多PaddleHub已经发布的模型,请前往 https://www.paddlepaddle.org.cn/hub 查看
80+
除了上述三类模型外,PaddleHub还发布了图像分类、语义模型、视频分类、图像生成、图像分割、文本审核、关键点检测等业界主流模型,更多PaddleHub已经发布的模型,请前往 https://www.paddlepaddle.org.cn/hub 查看
81+
82+
## 教程
9783

98-
同时,我们在AI Studio上提供了IPython NoteBook形式的demo,您可以直接在平台上在线体验,链接如下:
84+
我们在AI Studio上提供了IPython NoteBook形式的demo,您可以直接在平台上在线体验,链接如下:
9985

100-
|类别|AIStudio链接|
101-
|-|-|
102-
|ERNIE Tiny 文本分类|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/186443)
103-
|ERNIE文本分类|[点击体验](https://aistudio.baidu.com/aistudio/projectDetail/79380)|
104-
|ERNIE序列标注|[点击体验](https://aistudio.baidu.com/aistudio/projectDetail/79377)|
105-
|ELMo文本分类|[点击体验](https://aistudio.baidu.com/aistudio/projectDetail/79400)|
106-
|senta情感分类|[点击体验](https://aistudio.baidu.com/aistudio/projectDetail/79398)|
107-
|图像分类| [点击体验](https://aistudio.baidu.com/aistudio/projectDetail/79378)|
108-
|自定义数据FineTune(序列标注任务)|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/184200)|
109-
|自定义数据FineTune(文本分类任务)|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/185121) |
86+
|预训练模型|任务类型|数据集|AIStudio链接|备注|
87+
|-|-|-|-|-|
88+
|ResNet|图像分类|猫狗数据集DogCat|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216772)||
89+
|ERNIE|文本分类|中文情感分类数据集ChnSentiCorp|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216764)||
90+
|ERNIE|文本分类|中文新闻分类数据集THUNEWS|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216649)|本教程讲述了如何将自定义数据集加载,并利用Fine-tune API完成文本分类迁移学习。|
91+
|ERNIE|序列标注|中文序列标注数据集MSRA_NER|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216787)||
92+
|ERNIE|序列标注|中文快递单数据集Express|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216683)|本教程讲述了如何将自定义数据集加载,并利用Fine-tune API完成序列标注迁移学习。|
93+
|ERNIE Tiny|文本分类|中文情感分类数据集ChnSentiCorp|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/215599)||
94+
|Senta|文本分类|中文情感分类数据集ChnSentiCorp|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216851)|本教程讲述了任何利用Senta和Fine-tune API完成情感分类迁移学习。|
95+
|Senta|情感分析预测|N/A|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216735)||
96+
|LAC|词法分析|N/A|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/215641)||
97+
|Ultra-Light-Fast-Generic-Face-Detector-1MB|人脸检测|N/A|[点击体验](https://aistudio.baidu.com/aistudio/projectdetail/216749)||
11098

11199

112-
## 教程
100+
同时,关于PaddleHub更多信息参考:
101+
102+
[Fine-tune API](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub-Finetune-API)
103+
104+
[自定义数据集如何Fine-tune](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub%E9%80%82%E9%85%8D%E8%87%AA%E5%AE%9A%E4%B9%89%E6%95%B0%E6%8D%AE%E5%AE%8C%E6%88%90FineTune)
113105

114-
PaddleHub Fine-tune API 详情参考[wiki教程](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub-Finetune-API)
106+
[实现自定义迁移任务](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub:-%E8%87%AA%E5%AE%9A%E4%B9%89Task)
115107

116-
PaddleHub如何完成迁移学习,详情参考[wiki教程](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub%E4%B8%8E%E8%BF%81%E7%A7%BB%E5%AD%A6%E4%B9%A0)
108+
[PaddleHub Serving一键服务化部署](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub-Serving%E4%B8%80%E9%94%AE%E6%9C%8D%E5%8A%A1%E9%83%A8%E7%BD%B2)
117109

118-
PaddleHub如何自定义迁移任务,详情参考[wiki教程](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub:-%E8%87%AA%E5%AE%9A%E4%B9%89Task)
110+
[自动优化超参AutoDL Finetuner使用教程](https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.3/tutorial/autofinetune.md)
111+
112+
[迁移学习与ULMFiT微调策略](https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.3/tutorial/strategy_exp.md)
119113

120-
PaddleHub如何自动优化超参数,详情参考[AutoDL Finetuner使用教程](https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.3/tutorial/autofinetune.md)
121114

122-
PaddleHub如何使用ULMFiT策略微调预训练模型,详情参考[PaddleHub 迁移学习与ULMFiT微调策略](https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.3/tutorial/strategy_exp.md)
123115

124116
## FAQ
125117

126-
**Q:** 利用PaddleHub ernie/bert进行Finetune时,运行出错并提示`paddle.fluid.core_avx.EnforceNotMet: Input ShapeTensor cannot be found in Op reshape2`等信息
118+
**Q:** 利用PaddleHub Fine-tune如何适配自定义数据集
119+
120+
**A:** 参考[PaddleHub适配自定义数据集完成Fine-tune](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub%E9%80%82%E9%85%8D%E8%87%AA%E5%AE%9A%E4%B9%89%E6%95%B0%E6%8D%AE%E5%AE%8C%E6%88%90FineTune)
127121

128-
**A:** 因为ernie/bert module的创建时和此时运行环境中PaddlePaddle版本不对应。可以将PaddlePaddle和PaddleHub升级至最新版本,同时将ernie卸载。
129-
```shell
130-
$ pip install --upgrade paddlehub
131-
$ hub uninstall ernie
132-
```
133122

134123
**Q:** 使用PaddleHub时,无法下载预置数据集、Module的等现象
135124

136-
**A:** PaddleHub中的预训练模型和预置数据集都需要通过服务端进行下载,因此PaddleHub默认用户访问外网权限。
137-
可以通过以下命令确认是否可以访问外网。
125+
**A:** 下载数据集、module等,PaddleHub要求机器可以访问外网。可以使用server_check()可以检查本地与远端PaddleHub-Server的连接状态,使用方法如下:
138126

139127
```python
140-
import requests
128+
import paddlehub
129+
paddlehub.server_check()
130+
# 如果可以连接远端PaddleHub-Server,则显示Request Hub-Server successfully.
131+
# 如果无法连接远端PaddleHub-Server,则显示Request Hub-Server unsuccessfully.
132+
```
141133

142-
res = requests.get('http://paddlepaddle.org.cn/paddlehub/search', {'word': 'ernie', 'type': 'Module'})
143-
print(res)
134+
**Q:** 利用PaddleHub ernie/bert进行Fine-tune时,运行出错并提示`paddle.fluid.core_avx.EnforceNotMet: Input ShapeTensor cannot be found in Op reshape2`等信息
144135

145-
# the common result is like this:
146-
# <Response [200]>
136+
**A:** 因为ernie/bert module的创建时和此时运行环境中PaddlePaddle版本不对应。可以将PaddlePaddle和PaddleHub升级至最新版本,同时将ernie卸载。
137+
```shell
138+
$ pip install --upgrade paddlehub
139+
$ hub uninstall ernie
147140
```
148-
**Note:** PaddleHub 1.1.1版本已支持离线运行Module
149141

150-
**Q:** 利用PaddleHub Finetune如何适配自定义数据集
151142

152-
**A:** 参考[PaddleHub适配自定义数据集完成Finetune](https://github.com/PaddlePaddle/PaddleHub/wiki/PaddleHub%E9%80%82%E9%85%8D%E8%87%AA%E5%AE%9A%E4%B9%89%E6%95%B0%E6%8D%AE%E5%AE%8C%E6%88%90FineTune)
143+
**NOTE**PaddleHub 1.1.1版本已支持离线运行Module
153144

154145

155146
**更多问题**
@@ -165,4 +156,6 @@ print(res)
165156

166157
## 更新历史
167158

159+
PaddleHub v1.4.1已发布!
160+
168161
详情参考[更新历史](./RELEASE.md)

RELEASE.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,4 +99,4 @@
9999

100100
**命令行一键使用**: 无需代码,通过命令行即可直接使用预训练模型进行预测,快速调研训练模型效果。目前版本支持以下模型:词法分析LAC;情感分析Senta;目标检测SSD;图像分类ResNet, MobileNet, NASNet等。
101101

102-
**迁移学习**: 提供了基于预训练模型的Finetune API,用户通过少量代码即可完成迁移学习,包括BERT/ERNIE文本分类、序列标注、图像分类迁移等。
102+
**迁移学习**: 提供了基于预训练模型的Fine-tune API,用户通过少量代码即可完成迁移学习,包括BERT/ERNIE文本分类、序列标注、图像分类迁移等。

0 commit comments

Comments
 (0)