A Survey of Large Language Models
发表于:2024-10-16 |

A Survey of Large Language Models

https://github.com/RUCAIBox/LLMSurvey

语言建模(LM)的发展历史

SLM(统计语言模型,统计学习方法)-> NLM(神经语言模型,特征学习方法)-> PLM(Pre-training Language Model) -> LLM(Large Language Model)

LLM与PLM的几点区别:

  1. LLM表现出涌现能力(在小型模型中不存在但在大型模型中产生的能力),规模提升时,性能显著提高
  2. LLM改变了人类使用人工智能算法的方式(API)
  3. LLM的发展不再区分研究和工程。为了开发出有能力的LLM,研究人员必须解决复杂的工程问题,他们需要与工程师合作或成为工程师。

Question

  1. 为什么LLM相较于PLM能力提升如此明显?
  2. 研究界难以训练出有能力的LLM,而工业界并不会向公众透露LLM的训练细节
  3. 如何将LLM与人类价值观或偏好保持一致?

面对如此挑战,研究者无法深入理解LLM的基本原理。

本文从四个方面阐述LLM的进展:

  1. 预训练(如何预训练出一个有能力的 LLM)
  2. 适配微调(如何从有效性和安全性两个角度有效地微调预训练的 LLM)
  3. 使用(如何利用 LLM 解决各种下游任务)
  4. 能力评估(如何评估 LLM 的能力和现有的经验性发现)

前两者是从LLM训练的角度展开的,后两者是从LLM应用角度展开的。

预训练

数据收集和处理->模型架构->优化LLM训练技巧

适配微调

预训练后,LLM需要进一步适配到特定的目标中。

方法如下。

指令微调(instruction tuning)

增强大模型在特定目标中的表现

  1. 构建格式化实例:格式化已有数据集、格式化人类需求
  2. 微调策略:指令多样性、结合指令微调和预训练

对齐微调(alignment tuning)

将LLM的行为与人类价值观对齐

对齐标准:有用性、诚实性、无害性

用途最广泛的技术:RLHF(基于人类反馈的强化学习)

RLHF系统的三个关键组件:要对齐的PLM、从人类反馈中学习的奖励模型,以及训练 LM 的 RL 算法。

  1. 要对齐的PLM

    使用现有参数进行初始化

  2. 人类反馈中学习的奖励模型

    经过微调的 LM 或使用人类偏好数据重新训练的 LM (通常采用参数量较小的模型)

  3. 训练LM的RL算法

    PPO算法——现有工作中广泛使用的RL对齐算法

除此之外,还有LoRA等用于LLM参数高效微调的算法。

使用

img

  1. 上下文学习(in-context learning, ICL)-Retrieval

    经过预训练后,LLM可以在不更新的情况下展现出较好的ICL能力。

  2. 思维链提示(chain-of-thought prompting)-Reasoning

能力评估

大模型的问题:

  1. 幻觉

    生成的信息与现有来源相冲突(内在幻觉)或无法通过现有来源验证(外在幻觉)。

  2. 知识实时性

    面对需要使用比训练数据更新的知识的任务

    微调 LLM 的成本非常昂贵的,而且增量训练 LLM 非常可能导致灾难性遗忘问题。

    ChatGPT使用检索插件来访问最新的信息源,将提取的信息融入上下文中,然而该方法仍然停留于表面层次。一些实验揭示,直接修改内在知识或将特定的知识注入 LLM 是很困难的

上一篇:
中国开源大会
下一篇:
博一