From 38f61bfb6cc91a77aa0ed7183e4c6a69fdc91b18 Mon Sep 17 00:00:00 2001 From: Zeyu Date: Sun, 21 Apr 2019 22:01:22 +0800 Subject: [PATCH] add nlp tutorial --- docs/API_list.md | 1 - docs/imgs/ERNIE_input_output.png | Bin 0 -> 140486 bytes docs/tutorial/nlp_finetune_tutorial.md | 245 +++++-------------------- 3 files changed, 50 insertions(+), 196 deletions(-) create mode 100644 docs/imgs/ERNIE_input_output.png diff --git a/docs/API_list.md b/docs/API_list.md index c9f259d1..58243e30 100644 --- a/docs/API_list.md +++ b/docs/API_list.md @@ -15,4 +15,3 @@ * [create_text_cls_task](https://github.com/PaddlePaddle/PaddleHub/tree/develop/docs/API/create_text_cls_task.md) * [create_img_cls_task](https://github.com/PaddlePaddle/PaddleHub/tree/develop/docs/API/create_img_cls_task.md) * [finetune_and_eval](https://github.com/PaddlePaddle/PaddleHub/tree/develop/docs/API/finetune_and_eval.md) - diff --git a/docs/imgs/ERNIE_input_output.png b/docs/imgs/ERNIE_input_output.png new file mode 100644 index 0000000000000000000000000000000000000000..3a327991ffc25e926d1c835e0e03ee7c0766719c GIT binary patch literal 140486 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¢*cuD) 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 gf1mGtBleXrJ#$O|UTcIg4Dj*0X>Cme*gdg literal 0 HcmV?d00001 diff --git a/docs/tutorial/nlp_finetune_tutorial.md b/docs/tutorial/nlp_finetune_tutorial.md index 1bd8844c..77380a8b 100644 --- a/docs/tutorial/nlp_finetune_tutorial.md +++ b/docs/tutorial/nlp_finetune_tutorial.md @@ -1,238 +1,93 @@ -# 文本分类迁移 +# 如何使用PaddleHub完成文本分类迁移 -文本分类迁移是NLP在迁移学习中最常见的一个任务 -## 一、准备工作 +文本分类迁移是NLP迁移学习中最常见的一个任务之一。教程以情感分析任务为例子,介绍下如何使用PaddleHub+Fine-tune API快速完成文本分类迁移任务。 -在开始进行finetune前,我们需要完成以下几个工作准备 +## 教程前置条件 +* 已完成PaddlePaddle和PaddleHub的安装 +* 对BERT/ERNIE等Transformer类模型有基本的了解 -### 1. 安装PaddlePaddle -PaddleHub是基于PaddlePaddle的预训练模型管理框架,使用PaddleHub前需要先安装PaddlePaddle,如果您本地已经安装了cpu或者gpu版本的PaddlePaddle,那么可以跳过以下安装步骤。 +## ERNIE介绍 -```shell -# 安装cpu版本的PaddlePaddle -$ pip install paddlepaddle -``` - -我们推荐您使用大于1.3.0版本的PaddlePaddle,如果您本地版本较低,使用如下命令进行升级 -```shell -$ pip install --upgrade paddlepaddle -``` +ERNIE是百度开放的基于Transformer知识增强的语义表示模型(Enhanced Representation from kNowledge IntEgration)ERNIE预训练模型结合Fine-tuning,可以在中文情感分析任务上可以得到非常不错的效果。更多的介绍可以参考[ERNIE](https://github.com/PaddlePaddle/LARK/tree/develop/ERNIE) -在安装过程中如果遇到问题,您可以到[Paddle官方网站](http://www.paddlepaddle.org/)上查看解决方案 - -### 2. 安装PaddleHub - -通过以下命令来安装PaddleHub - -```shell -$ pip install paddlehub -``` - -如果在安装过程中遇到问题,您可以查看下[FAQ](https://github.com/PaddlePaddle/PaddleHub/blob/develop/docs/FAQ.md)来查找问题解决方案,如果无法解决,请在issue中反馈问题,我们会尽快分析解决 - -## 二、挑选合适的模型 - -首先导入必要的python包 +## 快速开始 +### 准备环境 ```python -# -*- coding: utf8 -*- -import paddlehub as hub import paddle.fluid as fluid +import paddlehub as hub ``` +### 加载预训练模型 -接下来我们要在PaddleHub中选择合适的预训练模型来Finetune,由于猫狗分类是一个图像分类任务,因此我们使用经典的resnet50作为预训练模型。PaddleHub提供了丰富的图像分类预训练模型,包括了最新的神经网络架构搜索类的NASNet,我们推荐您尝试不同的预训练模型来获得更好的性能。 +通过PaddleHub,只需要一行代码,即可以获取到PaddlePaddle生态下的预训练模型。 ```python -module_map = { - "resnet50": "resnet_v2_50_imagenet", - "resnet101": "resnet_v2_101_imagenet", - "resnet152": "resnet_v2_152_imagenet", - "mobilenet": "mobilenet_v2_imagenet", - "nasnet": "nasnet_imagenet", - "pnasnet": "pnasnet_imagenet" -} - -module_name = module_map["resnet50"] -cv_classifer_module = hub.Module(name = module_name) +module = hub.Module(name="ernie") +inputs, outputs, program = module.context(trainable="True", max_seq_len=128) ``` -## 三、数据准备 +* 通过`hub.Module(name="ernie")`PaddleHub会自动下载并加载ERNIE模型。 +* `module.context`接口中,`trainable=True`则预训练模型的参数可以被训练,`trainble=False`则讲预训练模型参数不可修改,仅作为特征提取器使用。 +* `max_seq_len`是ERNIE/BERT模型特有的参数,控制模型最大的序列识别长度,这一参数与任务相关,如果显存有限,切任务文本长度较短,可以适当调低这一参数。如果处理文本序列的unicode字符长度超过`max_seq_len`,则模型会对序列进行截断。通常来说,128是一个性能均衡的默认值。 -接着需要加载图片数据集。我们需要自己切分数据集,将数据集且分为训练集、验证集和测试集。 +#### ERNIE的输入输出结构 -同时使用三个文本文件来记录对应的图片路径和标签 -``` -├─data: 数据目录 -  ├─train_list.txt:训练集数据列表 -  ├─test_list.txt:测试集数据列表 -  ├─validate_list:验证集数据列表 -  └─…… -``` -每个文件的格式如下 -``` -图片1路径 图片1标签 -图片2路径 图片2标签 -…… -``` +ERNIE模型与BERT在结构上类似,如下图所示: +![ERNIE结构图](https://raw.githubusercontent.com/PaddlePaddle/PaddleHub/develop/docs/imgs/ERNIE_input_output.png) -使用如下的方式进行加载数据,生成数据集对象 +ERNIE的在PaddleHub中的的输入有4个Tensor,分别是: +* `input_ids`: 文本序列后切词的ID; +* `position_ids`: 文本序列的位置ID; +* `segment_ids`: 文本序列的类型; +* `input_mask`: 序列的mask信息,主要用于对padding的标识; -```python -# 使用本地数据集 -class mydataset(hub.ImageClassificationDataset): - self.base_path = "data" - self.train_list_file = "train_list.txt" - self.test_list_file = "test_list.txt" - self.validate_list_file = "validate_list.txt" - self.num_labels = 2 - -dataset = mydataset() -``` +前三个输入与BERT模型的论文输入对应,第四个输入为padding所需的标识信息。更多细节信息可参考论文[BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding](https://arxiv.org/abs/1810.04805) + +ERNIE的输出的话有两类,分别是 -如果想要快速体验finetune的流程,可以直接加载paddlehub提供的猫狗分类数据集 +* `pooled_output`: 句子粒度特征,对应的shape为`[batch_size, hidden_size]`,可用于句子分类或句对分类任务。 +* `sequence_output`: 词粒度的特征,对应的shape为`[batch_size, max_seq_len, hidden_size]`, 可用于序列标注任务。 +通过以下代码即可获取到对应特征的Tensor,可用于后续的组网工作。 ```python -# 直接用PaddleHub提供的数据集 -dataset = hub.dataset.DogCat() +pooled_output = outputs["pooled_output"] +sequence_output = outputs["sequence_output"] ``` -接着生成一个图像分类的reader,reader负责将dataset的数据进行预处理,接着以特定格式组织并输入给模型进行训练。 - -当我们生成一个图像分类的reader时,需要指定输入图片的大小 +### 准备数据及数据预处理 ```python -data_reader = hub.reader.ImageClassificationReader( - image_width=cv_classifer_module.get_expected_image_width(), - image_height=cv_classifer_module.get_expected_image_height(), - images_mean=cv_classifer_module.get_pretrained_images_mean(), - images_std=cv_classifer_module.get_pretrained_images_std(), - dataset=dataset) +ds = hub.dataset.ChnSentiCorp() +reader = hub.reader.ClassifyReader(dataset=ds, vocab_path=module.get_vocab_path(), max_seq_len=128) ``` -## 四、组建Finetune Task - -有了合适的预训练模型和准备要迁移的数据集后,我们开始组建一个Task。 - -由于猫狗分类是一个二分类的任务,而我们下载的cv_classifer_module是在ImageNet数据集上训练的千分类模型,所以我们需要对模型进行简单的微调,把模型改造为一个二分类模型: - -1. 获取cv_classifer_module的上下文环境,包括输入和输出的变量,以及Paddle Program -2. 从输出变量中找到特征图提取层feature_map -3. 在feature_map后面接入一个全连接层,生成Task - +通过`hub.dataset.ChnSentiCorp()`会自动获取数据集,可以通过以下代码查看训练集中的文本与标注: ```python -input_dict, output_dict, program = cv_classifer_module.context(trainable=True) - -img = input_dict["image"] -feature_map = output_dict["feature_map"] - -task = hub.create_img_cls_task( - feature=feature_map, num_classes=dataset.num_labels) - -feed_list = [img.name, task.variable("label").name] +ds = hub.dataset.ChnSentiCorp() +for e in ds.get_train_examples(): + print(e.text_a, e.label) ``` -## 五、选择运行时配置 - -在进行Finetune前,我们可以设置一些运行时的配置,例如如下代码中的配置,表示: +*TODO*: dataset一接口介绍,用户如何拓展使用自定义数据集 -`epoch`:要求Finetune的任务只遍历10次训练集 -`batch_size`:每次训练的时候,给模型输入的每批数据大小为32,模型训练时能够并行处理批数据,因此batch_size越大,训练的效率越高,但是同时带来了内存的负荷,过大的batch_size可能导致内存不足而无法训练,因此选择一个合适的batch_size是很重要的一步。 +`ClassifyReader`是专门ERNIE/BERT模型的数据预处理器,会根据模型词典,进行字粒度的切词,其中英文以词粒度进行分割,而中文和其他字符采用unicode为单位的字粒度切词。因此与传统的中文分词器有所区别,详细代码可以参考 [tokenization.py](https://github.com/PaddlePaddle/PaddleHub/blob/develop/paddlehub/reader/tokenization.py) -`log_interval`:每隔10 step打印一次训练日志 +`ClassifyReader`的参数有三个: -`eval_interval`:每隔50 step在验证集上进行一次性能评估。 - -`checkpoint_dir`:将训练的参数和数据保存到cv_finetune_turtorial_demo目录中 - -更多运行配置,请查看[RunConfig](https://github.com/PaddlePaddle/PaddleHub/tree/develop/docs/API/RunConfig.md) - -```python -config = hub.RunConfig( - num_epoch=10, - checkpoint_dir="cv_finetune_turtorial_demo", - batch_size=32, - log_interval=10, - eval_interval=50) -``` +* `dataset`: 传入PaddleHub Dataset; +* `vocab_path`: 传入ERNIE/BERT模型对应的词表文件路径; +* `max_seq_len`: ERNIE模型的最大序列长度,若序列长度不足,会通过padding方式补到`max_seq_len`, 若序列长度大于该值,则会以截断方式让序列长度为`max_seq_len`; -## 六、开始Finetune -我们选择`finetune_and_eval`接口来进行模型训练,这个接口在finetune的过程中,会周期性的进行模型效果的评估,以便我们了解整个训练过程的性能变化。如果您并不关心中间过程数据,那么可以使用`finetune`接口来替代 +### 创建迁移学习网络 ```python -hub.finetune_and_eval( - task, feed_list=feed_list, data_reader=data_reader, config=config) +task = hub.create_text_cls_task(feature=pooled_output, num_classes=ds.num_labels) ``` -## 七、查看训练过程的效果 +### 配置优化策略 -训练过程中的性能数据会被记录到本地,我们可以通过visualdl来可视化这些数据 - -我们在shell中输入以下命令来启动visualdl,其中`${HOST_IP}`为本机IP,需要用户自行指定 -```shell -$ visualdl --logdir ./cv_finetune_turtorial_demo --host ${HOST_IP} --port 8989 -``` - -启动服务后,我们使用浏览器访问`${HOST_IP}:8989`,可以看到训练以及预测的loss曲线和accuracy曲线 -![img](https://paddlehub.bj.bcebos.com/resources/cv_turtorial_vdl_log.JPG) - -## 八、使用模型进行预测 - -当Finetune完成后,我们使用模型来进行预测,整个预测流程大致可以分为以下几步: -1. 构建网络 -2. 生成预测数据的Reader -3. 切换到预测的Program -4. 加载预训练好的参数 -5. 运行Program进行预测 - -`注意`:预测所用的测试图片请自行准备 - -完整代码如下: -```python -import os -import numpy as np - -# Step 1: build Program -input_dict, output_dict, program = cv_classifer_module.context(trainable=True) -img = input_dict["image"] -feature_map = output_dict["feature_map"] -task = hub.create_img_cls_task( - feature=feature_map, num_classes=dataset.num_labels) -feed_list = [img.name] - -# Step 2: create data reader -data = [ - "test_img_dog.jpg", - "test_img_cat.jpg" -] - -data_reader = hub.reader.ImageClassificationReader( - image_width=cv_classifer_module.get_expected_image_width(), - image_height=cv_classifer_module.get_expected_image_height(), - images_mean=cv_classifer_module.get_pretrained_images_mean(), - images_std=cv_classifer_module.get_pretrained_images_std(), - dataset=None) - -predict_reader = data_reader.data_generator( - phase="predict", batch_size=1, data=data) - -# Step 3: switch to inference program -with fluid.program_guard(task.inference_program()): - # Step 4: load pretrained parameters - place = fluid.CPUPlace() - exe = fluid.Executor(place) - pretrained_model_dir = os.path.join("cv_finetune_turtorial_demo", "best_model") - fluid.io.load_persistables(exe, pretrained_model_dir) - feeder = fluid.DataFeeder(feed_list=feed_list, place=place) - # Step 5: predict - for index, batch in enumerate(predict_reader()): - result, = exe.run( - feed=feeder.feed(batch), fetch_list=[task.variable('probs')]) - predict_result = np.argsort(result[0])[::-1][0] - print("input %i is %s, and the predict result is %s" % - (index+1, data[index], predict_result)) - -``` +适用于ERNIE模型的优化策略为`AdamWeightDecayStrategy` \ No newline at end of file -- GitLab