进入HuggingFace的入门点
打开HuggingFace的大门
基础入门的逐步指南
如果你不知道从哪里开始学习HuggingFace,可能会觉得它很复杂和混乱。HuggingFace库的一个入口是run_mlm.py和run_clm.py脚本。
在这篇文章中,我们将讲解run_mlm.py脚本。该脚本选择了一个来自HuggingFace的掩码语言模型,并对一个数据集进行微调(或从头开始训练)。如果你是初学者,对HuggingFace代码接触很少,这篇文章将帮助你理解基础知识。
我们将选择一个掩码语言模型,并从HuggingFace加载一个数据集,并在该数据集上微调模型。最后,我们将评估模型。这些都是为了理解代码结构,所以我们不专注于任何特定的用例。
让我们开始吧。
微调的几个要点
微调是深度学习中常用的一种技术,可以将一个预训练的神经网络模型进行调整,以更好地适应新的数据集或任务。
当你的数据集不足以训练一个深度模型时,微调是有效的!所以你可以从一个已经学习过的基本模型开始。
在微调中,你可以使用预训练模型(例如ImageNet用于图像或BooksCorpus用于NLP),然后继续在你的数据集上训练它,以适应你的任务。这比从随机权重开始训练需要更少的额外数据和迭代次数。
HuggingFace中的微调
HuggingFace(HF)有很多内置的函数,可以让我们用几行代码来微调预训练的模型。主要步骤如下:
- 加载预训练模型
- 加载预训练的分词器
- 加载要用于微调的数据集
- 使用分词器对上述数据集进行分词
- 使用Trainer对象在分词后的数据集上训练预训练模型
让我们看看代码中的每个步骤。为了简洁起见,我们将有意忽略许多细节,只给出整体结构的概览。