怎么使用spaCy v3.0微调BERT变压器


这篇文章主要介绍“怎么使用spaCy v3.0微调BERT变压器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用spaCy v3.0微调BERT变压器”文章能帮助大家解决问题。微调变压器需要具有并行处理功能的强大 GPU。为此,我们使用 Google Colab,因为它提供免费可用的带有 GPU 的服务器。在本教程中,我们将使用新发布的spaCy v3.0 库来微调我们的转换器。以下是有关如何在 spaCy v3.0 上微调 BERT 模型的分步指南。Github repo中提供了代码和必要的文件。要使用 spaCy v3.0 微调 BERT,我们需要以 spaCy v3.0 JSON 格式(请参阅此处)提供训练和开发数据,然后将其转换为.spacy二进制文件。我们将提供包含在 TSV 文件中的 IOB 格式的数据,然后将其转换为 spaCy JSON 格式。我只标记了 120 个职位描述,其中包含培训数据集的技能、文凭、文凭专业和经验等实体,以及开发数据集的大约 70 个职位描述。在本教程中,我使用了UBIAI注释工具,因为它具有广泛的功能,例如:机器学习自动注释字典、正则表达式和基于规则的自动注释团队协作共享注释任务直接注释导出为 IOB 格式使用 UBIAI 中的正则表达式功能,我预先注释了所有遵循“d.*+.*”模式的经验提及,例如“5 + 年的 C++ 经验”。然后我上传了一个包含所有软件语言的 CSV 字典并分配了实体技能。预注释可以节省大量时间,并将帮助您最大限度地减少手动注释。有关 UBIAI 注释工具的更多信息,请访问文档页面。导出的注释将如下所示:Python:为了从 IOB 转换为 JSON(请参阅此处的文档),我们使用 spaCy v3.0 命令:Python:转换为 spaCy v3.0 JSON 后,我们需要.spacy使用此命令将训练和开发 JSON 文件都转换为二进制文件(使用您自己的更新文件路径):Python:打开一个新的 Google Colab 项目,并确保在笔记本设置中选择 GPU 作为硬件加速器。为了加速训练过程,我们需要在 GPU 上运行并行处理。为此,我们安装了 NVIDIA 9.2 CUDA 库:Python:要检查是否安装了正确的 CUDA 编译器,请运行:!nvcc –version免费云主机域名安装 spacy 库和 spacy 转换器管道:Python:接下来,我们安装为 CUDA 9.2 配置的 PyTorch 机器学习库:Python:安装 PyTorch 后,我们需要安装针对 CUDA 9.2 调整的 spaCy 转换器并更改CUDA_PATH和LD_LIBRARY_PATH如下。最后,安装 CuPy 库,它相当于 NumPy 库,但适用于 GPU:Python:SpaCy v3.0 使用config.cfg包含所有模型训练组件的配置文件来训练模型。在spaCy 训练页面,您可以选择模型语言(本教程中为英文)、组件(NER)和硬件(GPU)使用并下载配置文件模板。我们唯一需要做的就是填写 train 和 dev.spacy文件的路径。完成后,我们将文件上传到 Google Colab。现在我们需要使用 BERT 模型所需的其余参数自动填充配置文件;你所要做的就是运行这个命令:Python:如果出现错误,我建议调试您的配置文件:Python:我们终于准备好训练 BERT 模型了!只需运行此命令即可开始训练:Python:注意:如果出现错误,cupy_backends.cuda.api.driver.CUDADriverError:CUDA_ERROR_INVALID_PTX:则表示 PTX JIT 编译失败。只需卸载cupy并重新安装它,它应该可以解决问题。如果一切顺利,您应该开始看到模型得分和损失正在更新。在训练结束时,模型将保存在文件夹下model-best。模型分数位于meta.json文件model-best夹内的文件中:Python:由于训练数据集有限,这些分数肯定远低于生产模型水平,但值得在示例工作描述中检查其性能。要在示例文本上测试模型,我们需要加载模型并在我们的文本上运行它:Python:仅使用 120 个培训文档就令人印象深刻!我们能够正确提取大部分技能、文凭、文凭专业和经验。随着更多的训练数据,模型肯定会进一步改进并产生更高的分数。关于“怎么使用spaCy v3.0微调BERT变压器”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注百云主机行业资讯频道,小编每天都会为大家更新不同的知识点。

相关推荐: 微信小程序生命周期函数是什么

本篇内容主要讲解“微信小程序生命周期函数是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序生命周期函数是什么”吧! 由于小程序的数据在我们退出小程序时并没有得到释放,因此再次点击开来数据依然没有变成初始…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 09/10 17:38
Next 09/10 17:39

相关推荐