进入HuggingFace的入门点

打开HuggingFace的大门

基础入门的逐步指南

Unsplash的图片

如果你不知道从哪里开始学习HuggingFace,可能会觉得它很复杂和混乱。HuggingFace库的一个入口是run_mlm.pyrun_clm.py脚本。

在这篇文章中,我们将讲解run_mlm.py脚本。该脚本选择了一个来自HuggingFace的掩码语言模型,并对一个数据集进行微调(或从头开始训练)。如果你是初学者,对HuggingFace代码接触很少,这篇文章将帮助你理解基础知识。

我们将选择一个掩码语言模型,并从HuggingFace加载一个数据集,并在该数据集上微调模型。最后,我们将评估模型。这些都是为了理解代码结构,所以我们不专注于任何特定的用例。

让我们开始吧。

微调的几个要点

微调是深度学习中常用的一种技术,可以将一个预训练的神经网络模型进行调整,以更好地适应新的数据集或任务。

当你的数据集不足以训练一个深度模型时,微调是有效的!所以你可以从一个已经学习过的基本模型开始。

在微调中,你可以使用预训练模型(例如ImageNet用于图像或BooksCorpus用于NLP),然后继续在你的数据集上训练它,以适应你的任务。这比从随机权重开始训练需要更少的额外数据和迭代次数。

HuggingFace中的微调

HuggingFace(HF)有很多内置的函数,可以让我们用几行代码来微调预训练的模型。主要步骤如下:

  1. 加载预训练模型
  2. 加载预训练的分词器
  3. 加载要用于微调的数据集
  4. 使用分词器对上述数据集进行分词
  5. 使用Trainer对象在分词后的数据集上训练预训练模型

让我们看看代码中的每个步骤。为了简洁起见,我们将有意忽略许多细节,只给出整体结构的概览。