一个LLM的生命周期包含多个步骤,下面将讨论这个周期中最活跃、最密集的部分之一 -- fine-tuning(微调)过程。
LLM的生命周期
下面展示了LLM的生命周期:
-
愿景和范围:首先需要定义项目的愿景,你想让你的LLM作为一个更加通用的工具还是以处理特定任务为目标,如命名实体识别(识别文本中具有特定意义的命名实体)。
-
模型选择:选择从头训练一个模型还是修改一个已有的模型。在大多数场景下,采用一个已有的模型更高效,但有些情况则需要对新模型实施微调。
-
模型的表现和调节:在准备好模型后,需要对其表现进行评估。如果不满足要求,可以采用prompt engineering或进一步微调,从而保证模型的输出和人们的预期保持一致。
-
评估&迭代:定期使用指标和基准进行评估,并在prompt engineering、微调和评估之间进行迭代,直到达到期望的结果。
-
部署:一旦模型符合预期,就可以进行部署。在这个阶段优化计算效率和用户体验。
什么是LLM微调?
LLM微调是采用预训练的模型,然后通过使用更小的专有数据集进行训练来完善其能力并提升处理特定任务或领域的表现的过程。微调包括调节通用模型并将其调节为特定模型,它是连接通用预训练模型和特定应用的特定需求之间的桥梁,从而保证大语言模型能够接近人类的预期。想象一下OpenAI的GPT-3,这是一款先进的大型语言模型,专为通用的自然语言处理(NLP)任务而设计的。假设一个医疗保健组织想使用GPT-3来帮助医生从病例生成病人报告,GPT-3可以理解并创建一般的文本,但它可能无法处理错综复杂的医学术语和特定的医疗术语。
为了提高它在该专业角色的表现,组织会使用一个含医疗报告和病历记录的数据集来微调GPT-3。通过微调,模型可以更加了解医学术语,临床语言的细微差别以及典型的报告结构。之后,GPT-3就可以帮助医生生成准确、连贯的患者报告。
听起来好像模型越大越好,但任何事情都是有代价的。下面将讨论更多的细节。
什么时候使用微调
我们关于大型语言模型的文章涉及到了一些话题,比如上下文学习和零/一/少样本推理。以下是一个简单回顾:
上下文学习:是一种通过在提示提供特定任务示例来改进提示的方法,为LLM提供了它需要完成的任务蓝图。
零样本推理:在没有额外示例的情况下将输入数据合并到提示中。如果零样本推理没有产生所需的结果,则可以使用"单样本"或"少样本推理"。这些方法涉及在提示中添加一个或多个完整的示例来改善规模较小的LLM的表项。
还有其他方式可以直接通过用户提示来优化模型输出,以便更好地匹配用户的偏好。但这些方式并不