本文目录导航:
- 大语言模型(LLM)训练的方法
- NLP中的预训练语言模型(一)—— ERNIE们和BERT-wwm
- [简话语音识别] 语言模型(一)ngram基础
- 背景介绍
- ngram理论知识
- ngram模型的质量评估
- ngram概率计算与平滑技术
- 训练工具与实践示例
- 参考资料
大语言模型(LLM)训练的方法
自2017年Transformer的问世,语言模型领域迎来爆发式增长,GPT3.5与GPT4.0的出现为智能革命的下一次飞跃带来了希望。
开源大语言模型的涌现,让研究者们得以探索模型训练的内部机制。
训练大语言模型并非易事,近五年来,研究者们探索了多种训练方式以提升效果,包括无监督学习、监督学习与强化学习等。
这些方法各具特点,为模型训练提供了多样化的路径。
1. **无监督预训练**大语言模型训练的开端是进行无监督预训练,利用海量未标记文本数据,使模型捕获语言中的基本特征。
模型参数与预训练数据量间呈现线性关系,参数越多,所需数据量越大,性能越佳。
实践已验证此现象,数据量是模型训练成功的关键。
1. **监督微调 (Supervised Fine Tuning, SFT)**监督微调是通过使用有标注的特定任务数据对预训练模型进行进一步微调,以增强模型对人类指令的响应能力。
此阶段的核心关注点在于高效微调方法、指令数据构造以及如何扩大模型上下文范围。
2. **Lora技术**LoRA技术是一种参数高效适应技术,允许大型预训练模型在微调过程中减少参数学习量,显著节省内存和加速训练。
该技术已被集成到多种训练库中,如PEFT,通过简单配置即可实现。
2. **P-Tuning技术**P-Tuning技术通过优化输入部分提高模型在特定任务上的表现。
此技术可自动调整输入提示以优化模型表现,为模型应用提供了便利。
2. **Prefix-Tuning**Prefix-Tuning技术依赖于模型通过阅读和分析给定上下文生成响应的能力,特别适用于少样本或零样本学习场景,允许模型在不显式训练的情况下适应新任务。
3. **强化学习**强化学习将模型输出文本视为整体,优化目标为生成高质量回复。
此方法不依赖于人工编写的高质量回复,模型根据指令生成回复,并通过奖励机制学习优化。
强化学习尤其适用于生成式任务。
强化学习相较于监督微调的好处在于能够从整体上评估模型输出质量,不依赖于预定义的答案,更适用于生成多样性和敏感性变化的场景。
基于人类反馈的强化学习(RLHF)通过人类调整/评判,确保模型输出与人类意图对齐,实现3H原则:帮助性、真实性与无害性。
通过上述方法,大语言模型训练实现了从无监督预训练到有监督微调、Lora等优化技术的不断进化,以及强化学习在提升模型应用灵活性与质量方面的关键作用。
未来,随着技术的进一步发展,大语言模型将在更多领域展现出其潜力与价值。
NLP中的预训练语言模型(一)—— ERNIE们和BERT-wwm
预训练语言模型在自然语言处理(NLP)领域取得了显著进展,尤其是随着BERT的广泛应用和成功,这类模型在过去一年内得到了快速发展。
本篇文章将简要回顾在BERT之后出现的一些知名预训练模型,重点关注国内开源的模型。
其中,我们首先介绍的是ERNIE模型,由清华大学与华为诺亚方舟实验室共同提出。
ERNIE模型旨在通过引入知识图谱来增强语言表示能力,其预训练阶段是在BERT的基础之上增加了一个实体对齐任务。
这一任务的核心在于,通过两个encoder(T-encoder与K-encoder)协同工作,对输入序列和实体进行编码与聚合。
T-encoder主要负责序列编码,类似于BERT的结构,但层数调整为6层;而K-encoder则专门用于将知识图谱中的实体与序列实体对齐,通过TransE进行嵌入操作。
在实体对齐过程中,序列中的实体由知识图谱中的实体与序列中实体的首词对应,以此实现信息整合。
ERNIE通过引入实体对齐,使得模型在包含知识图谱的下游任务中展现出优于BERT的表现。
此外,作者还提出了在实体类型和关系抽取上的新预训练策略。
接着,我们介绍网络提出的ERNIE模型,虽然名称与前一个模型相似,但其方法与之大相径庭。
该模型主要针对BERT中的Mask Language Model任务进行了改进,引入了对短语、实体及单个token的多种mask方式,以更好地捕捉句法、语义信息。
同时,作者引入了对话语料,设计了一个类似于Next Sentence Prediction(NSP)的任务,以增强模型对对话理解的能力。
最后,网络在ERNIE的基础上提出了ERNIE 2.0,采用多任务框架进行预训练,通过引入多个任务(总计7个)来提升模型理解能力。
这种逐次增加任务的训练策略旨在利用先前任务的预训练结果,优化模型在新任务上的表现。
ERNIE 2.0在多个任务上展现出了全面的提升,尤其在阅读理解任务上表现出色。
还有一种模型,BERT-wwm,由哈尔滨工业大学开源,基于BERT-base,引入了整词掩码(Whole Word Masking)策略,对分词后的词汇进行掩码操作。
这使得模型在中文任务上能够无缝集成,且在多项中文任务上表现出色,提升了模型的性能。
这些模型在NLP领域内的探索与应用,展示了预训练模型的强大潜力,以及在解决复杂语言任务时的高效性。
它们的出现不仅推动了自然语言处理技术的发展,也为未来的NLP研究提供了宝贵的参考。
[简话语音识别] 语言模型(一)ngram基础
语言模型(一):ngram基础与理解
背景介绍
语音识别技术的核心在于将语音信号转换为文本序列,主要框架包括HMM-DNN声学模型、语言模型和基于WFST的BeamSearch解码算法。
语言模型在语音识别流程中,通过引入领域内语言表达习惯,对解码搜索空间进行约束,以在合理计算时间内获得有意义的文字序列。
引入语言模型后,解码搜索空间显著减小,大大提升了语音识别的效率。
ngram理论知识
在早期,科学家尝试使用句法模板来表示语言表达习惯,但随着语言的不断演变,新的词汇和句式持续出现。
如何跟上语言变化节奏,利用统计语言模型(Statistical Language Model)成为可能,ngram技术应运而生。
统计语言模型通过计算词序列的概率来衡量与语言习惯的匹配程度,从而指导解码过程,剔除不符合语言习惯的路径。
ngram语言模型通过引入n-1阶段马尔科夫假设,假设词出现概率依赖于部分历史信息,而非全部历史信息,有效解决了词序列概率估计问题。
ngram模型的质量评估
评估ngram模型好坏的指标主要有混淆度ppl和交叉熵。
ppl描述的是从测试文本任意位置预测下一个词时的复杂程度,通过比较训练语料中的实际概率分布p和一个均匀分布q,ppl反映了模型对搜索空间的有效约束。
直观理解,ppl反映了模型在预测未知词汇时的平均不确定性,它越小,模型越能准确预测。
ngram概率计算与平滑技术
ngram概率计算通常采用最大似然估计方法。
对于未在训练语料中出现过的ngram,需要通过平滑技术进行概率估计,以避免模型的过拟合问题。
平滑技术主要包括“政府补贴”方式,如additive平滑,以及“劫富济贫”方式,如Good-Turing平滑。
为了解决“一视同仁”分配概率的问题,引入了低阶grammar信息,通过插值和回退技术重新分配概率。
其中,改进的Kneser-Ney算法是结合了这两种技术的优化版本,旨在更准确地估计概率分布。
训练工具与实践示例
srilm是一个C++工具库,提供ngram相关算法的实现,包括ngram-count、ngram等基本工具。
语音识别中的ngram语言模型训练通常包含准备词表、文本分词、ngram模型训练、保存为arpa格式、使用arap2fst生成以及可视化等步骤。
实际应用中,ngram语言模型还涉及更多高级技术,如class ngram、cache ngram、ngram2vec、ngram蒸馏压缩和联邦学习等。
参考资料
为了深入理解ngram语言模型,推荐参考以下资源:
1. 台湾大学李琳山教授的数位语音处理概论 - 台大开放式课程 (NTU OpenCourseWare)
2. srilm 初始版本发布论文
3. srilm 改进版本发布论文
4. CMU语音识别2011课程class17 ngram课件
5. 比较各种平滑方法的经典论文A n Empirical Study of Smoothing Techniques for Language Modeling
通过上述内容,我们不仅了解了ngram基础与应用,还探索了语言模型评估与概率计算的细节,以及如何利用工具库进行模型训练和实践操作。
评论(0)