大语言模型基础—语言模型的发展历程--task1
目录
1.语言模型的发展历程
1.1 统计语言模型
1.2 神经语言模型
1.3 预训练语言模型
1.4 大语言模型
1.5 总结
1.6 各阶段对比与演进逻辑
1.语言模型的发展历程
语言模型的发展历程经历了四个主要阶段:统计语言模型、神经语言模型、预训练语言模型和大语言模型。统计语言模型基于统计学习方法,使用马尔可夫假设建立预测模型,但存在数据稀疏问题。神经语言模型使用神经网络建模文本序列,引入了分布式词表示,克服了数据稀疏问题。预训练语言模型在训练架构和数据方面进行了创新,使用大规模无标注数据进行预训练,并通过微调适应特定任务。大语言模型通过规模扩展提升性能,展现出新的涌现能力,如上下文学习。
1.1 统计语言模型
统计语言模型使用统计学习方法,基于马尔可夫假设建立预测模型,通常根据固定长度的前缀预测下一个词。具有固定上下文长度 𝑛 的统计语言模型被称为 𝑛 元语言模型。随着 𝑛 的增加,需要估计的转移概率项数指数级增长,导致数据稀疏问题。为缓解此问题,需要设计专门的语言模型平滑策略,如回退估计和古德-图灵估计。尽管如此,平滑方法对于高阶上下文的刻画能力仍然较弱。
- 时间线:20世纪90年代至2000年代初
- 关键技术:
- n-gram模型:基于马尔可夫假设,用前n−1个词预测当前词概率。
- 平滑技术:解决数据稀疏问题(如低频词组合概率为0),常用方法包括拉普拉斯平滑(加一法)和回退法(Katz回退)。
- 特点:
- 依赖局部上下文,难以捕捉长距离依赖。
- 计算高效,但模型泛化能力有限。
1.2 神经语言模型
神经语言模型使用神经网络来建模文本序列的生成,如循环神经网络(RNN)。Yoshua Bengio 引入了分布式词表示概念,构建了基于聚合上下文特征的目标词预测函数。分布式词表示使用低维稠密向量表示词汇的语义,与基于词典空间的稀疏词向量表示不同,能够刻画更丰富的隐含语义特征。稠密向量的非零表征对于复杂语言模型的搭建非常友好,有效克服了统计语言模型中的数据稀疏问题。Word2vec 是一个具有代表性的词嵌入学习模型,构建了一个简化的浅层神经网络来学习分布式词表示,所学习到的词嵌入可以用作后续任务的语义特征提取器。
- 时间线:2003年(Bengio提出神经网络语言模型)至2010年代中期
- 关键技术:
- 分布式词表示:将词映射为低维稠密向量(如Word2Vec、GloVe),解决稀疏性问题。
- 神经网络架构:前馈神经网络、RNN、LSTM,可建模更长上下文。
- 特点:
- 词向量捕捉语义相似性,如“猫”与“狗”向量距离较近。
- 计算复杂度高,依赖硬件发展(如GPU加速)
1.3 预训练语言模型
预训练语言模型在训练架构与训练数据两个方面进行了改进与创新。ELMo 是一个早期的代表性预训练语言模型,使用大量无标注数据训练双向 LSTM 网络,预训练完成后所得到的 biLSTM 可以用来学习上下文感知的单词表示。BERT 和 GPT-1 是基于 Transformer 架构的预训练语言模型,BERT 采用仅有编码器的 Transformer 架构,而 GPT-1 采用仅有解码器的 Transformer 架构。预训练语言模型确立了“预训练-微调”这一任务求解范式,预训练阶段建立模型的基础能力,微调阶段使用有标注数据对模型进行特定任务的适配。
- 时间线:2018年(BERT、GPT发布)为转折点
- 关键技术:
- Transformer架构:自注意力机制(Self-Attention)并行处理长序列。
- 预训练+微调范式:通过无监督任务(如掩码语言模型)学习通用表征,再针对下游任务微调。
- 特点:
- 上下文感知能力:动态生成词表示(如BERT区分“bank”的“银行”与“河岸”义项)。
- 迁移学习泛化:减少对标注数据的依赖
1.4 大语言模型
研究人员发现,通过规模扩展通常会带来下游任务的模型性能提升,这种现象被称为“扩展法则”。一些研究工作尝试训练更大的预训练语言模型,如 GPT-3 和 PaLM,探索扩展语言模型所带来的性能极限。这些大规模的预训练语言模型在解决复杂任务时表现出了与小型预训练语言模型不同的行为。大语言模型具有涌现能力,如 GPT-3 的上下文学习能力。ChatGPT 将 GPT 系列大语言模型适配到对话任务中,展现出令人震撼的人机对话能力。
- 时间线:2020年(GPT-3发布)后进入爆发期
- 关键技术:
- 超大规模参数:千亿级参数(如GPT-3含1750亿参数)提升模型容量。
- 上下文学习(In-context Learning):通过提示(Prompt)直接生成答案,无需微调。
- 指令微调与提示工程:如思维链(Chain-of-Thought)引导分步推理。
- 特点:
- 零样本/少样本学习:仅需少量示例即可适应新任务。
- 多任务统一架构:问答、翻译、代码生成等任务共用同一模型。
1.5 总结
语言模型的发展从统计语言模型到神经语言模型,再到预训练语言模型和大语言模型,经历了技术方法和架构的不断创新。统计语言模型受限于数据稀疏问题,而神经语言模型通过分布式词表示克服了这一问题。预训练语言模型通过大规模无标注数据预训练和微调,显著提升了自然语言处理任务的性能。大语言模型通过规模扩展进一步提升了模型性能,并展现出新的涌现能力,如上下文学习,为自然语言处理领域带来了新的突破。
1.6 各阶段对比与演进逻辑
阶段 | 核心问题 | 解决方案 | 代表模型/技术 |
---|---|---|---|
统计语言模型 | 数据稀疏、局部依赖 | n-gram、平滑技术 | Trigram模型 |
神经语言模型 | 语义表示、长距离依赖 | 词嵌入、RNN/LSTM | Word2Vec、ELMo |
预训练语言模型 | 通用语义表征 | Transformer、自监督预训练 | BERT、GPT-2 |
大语言模型 | 复杂任务泛化 | 超大规模参数、提示工程 | GPT-3、ChatGPT |