From 760b3fbc274e4936cdb21d9788843b54d1512177 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E5=BC=A0?= Date: Wed, 15 Sep 2021 20:18:54 +0800 Subject: [PATCH] =?UTF-8?q?Update=204.0=20=E5=9F=BA=E4=BA=8EHugging=20Face?= =?UTF-8?q?=20-Transformers=E7=9A=84=E9=A2=84=E8=AE=AD=E7=BB=83=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B=E5=BE=AE=E8=B0=83.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../4.0 基于Hugging Face -Transformers的预训练模型微调.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/篇章4-使用Transformers解决NLP任务/4.0 基于Hugging Face -Transformers的预训练模型微调.md b/docs/篇章4-使用Transformers解决NLP任务/4.0 基于Hugging Face -Transformers的预训练模型微调.md index 925e9dc..1005357 100644 --- a/docs/篇章4-使用Transformers解决NLP任务/4.0 基于Hugging Face -Transformers的预训练模型微调.md +++ b/docs/篇章4-使用Transformers解决NLP任务/4.0 基于Hugging Face -Transformers的预训练模型微调.md @@ -426,7 +426,9 @@ DatasetDict({ ### 使用 Trainer API 在 PyTorch 中进行微调 由于 PyTorch 不提供封装好的训练循环,🤗 Transformers 库写了了一个transformers.Trainer API,它是一个简单但功能完整的 PyTorch 训练和评估循环,针对 🤗 Transformers 进行了优化,有很多的训练选项和内置功能,同时也支持多GPU/TPU分布式训练和混合精度。即Trainer API是一个封装好的训练器(Transformers库内置的小框架,如果是Tensorflow,则是TFTrainer)。 -数据预处理完成后,只需要几个简单的步骤来定义Trainer的参数,就可以使用 Trainer 进行模型的基本训练循环了(否则的话,要自己从头加载和预处理数据,设置各种参数,一步步编写训练循环。自定义训练循环的内容在本节最后)。 +但是Trainer一开始是不存在的(早期版本并没有),而由于启动训练需要特别多的参数,各个nlp任务又有很多通用的参数,这些就被抽象出来了Trainer。更具体的理解,可以看看多多写的最原始版本的[Trainer代码](https://github.com/huggingface/transformers/blob/master/examples/pytorch/multiple-choice/run_swag.py) 。Trainer就是把训练开始之前需要的参数合并了起来。 + +数据预处理完成后,只需要几个简单的步骤来定义Trainer的参数,就可以进行模型的基本训练循环了(否则的话,要自己从头加载和预处理数据,设置各种参数,一步步编写训练循环。自定义训练循环的内容在本节最后)。 Trainer最困难的部分可能是准备运行 Trainer.train 的环境,因为它在 CPU 上运行速度非常慢。( 如果您没有设置 GPU,则可以在 Google Colab 上访问免费的 GPU 或 TPU)