一文带你梳理Large Language Model发展历程

在这个文章中,我会用通俗的语言,为大家介绍学习大模型的核心知识点。读完这个文章,你会深入理解语言大模型、多模态大模型的核心技术点,包括模型结构、训练方式、数据处理、多模态融合等。

大模型的前身是语言模型,圆圆是很早就开始在工业界研究和应用语言模型的一批人,因此对整个深度学习时代语言模型的发展历程都有见证。当时还没有Transformer、BERT,只有LSTM、Attention这种结构。工业界效果最好、应用最稳定的语言模型,还是基于n-gram的统计版语言模型。

后来,随着Transformer和BERT的相继出现,基于深度学习的语言模型才开始取得主导型的效果和地位。随后的三四年,BERT这种判别式的模型一直是工业界的主流,模型的尺寸和训练数据量也不断增大。直到ChatGPT的出现,开启了真正的生成式大语言模型时代,直到近期的DeepSeek。过程中,也伴随着多模态方向的研究。

在第一节中,会重点给大家梳理一下从n-gram到DeepSeek,整个大模型的发展历史。针对每个演进版本语言模型的详细介绍,将在后续章节逐一介绍。


最近春招和实习已开启了。

不同以往的是,当前职场环境已不再是那个双向奔赴时代了。求职者在变多,HC 在变少,岗位要求还更高了。

最近,我们又陆续整理了很多大厂的面试题,帮助一些球友解惑答疑,分享技术面试中的那些弯弯绕绕。

喜欢本文记得收藏、关注、点赞

在这里插入图片描述


1

N-gram统计语言模型

N-gram是语言模型最基础的建模方法,也是深度学习之前主要的语言模型建模方法。N-gram的核心思路是,根据大量的语料,统计出前面n-1个词已知的情况下,第n个词的概率。比如最基础的2-gram,统计连续2个单词出现的概率,当根据前序单词预测下一个单词时,之前出现次数频率最高的就是更加合理。

N-gram这种统计模型的问题在于,N太大时数据很稀疏,N太小能考虑的上下文信息就比较少,虽然有一些平滑方法能够提升N-gram在稀疏数据下的表现,但是上限仍然比较低。

图片

2

词向量

======================

词向量是机器学习时代的NLP领域常见方法,也是后续深度学习语言模型的基础。通过将每个单词映射成一个向量,向量之间的距离能够反应2个词语义的相似度,实现相比n-gram更具泛化性的文本表征方法。

词向量的本质思路是,一个词的含义,可以由其上下文出现的其他词表示。统计大量语料中,词之间的共现关系。两个词的上下文越相似,这两个词的语义就越相似。这个统计过程,使用神经网络在大量的文本语料上自动学习,实现了表征的泛化性。Skip-gram、CBOW、Glove等都是最常用的词向量模型。

图片

3

LSTM/Attention深度语言模型

=======================================

随着深度学习的发展,LSTM网络、Attention结构等被用来构建深度学习的语言模型。语言是序列形式的,天然适合LSTM这种序列建模模型。在统计n-gram时,前序单词决定下一个单词,LSTM就具备这种建模能力。所以一个最基础的基于LSTM的语言模型,就是对于每段文本输入到一个LSTM网络中,让其预测下一个单词,通过这种训练方式实现对任务长度gram的。这种基于LSTM的语言模型也经过了多个阶段的发展,最后发展到2018年的ELMo,通过两组单向LSTM融合的方式提取两侧的上下文信息。

图片

此外,Attention也经常用来和LSTM相结合,弥补LSTM在长周期建模中的不足。例如在机器翻译中,使用LSTM和Attention相结合,快速获取历史长文本中和当前待预测位置相关的部分。

4

Transformer:GPT和BERT

Transformer的出现,以及其衍生出来的GPT和BERT,开启了深度学习语言模型的新时代,也是大模型的基础。Transformer结构至今仍然是各个开源大模型的基础模型结构。它完全基于Attention结构进行一段文本中单词之间的关系计算。

图片

根据建模方式的差异,又分为以BERT为代表的判别式模型和以GPT为代表的生成式模型。BERT这种判别式,只有一个Encoder,Mask掉部分token用上下文其他token还原。GPT这种生成式模型,则仍然采用n-grapm的形式,根据前面token生成下一个token。

在最开始的几年中,BERT一直是工业界主要使用的方法,而GPT因为其相对复杂的生成式过程,应用较少。当然,后续ChatGPT等的出现,证明GPT才是更适合作为人机接口的语言模型建模形式,是BERT等判别式模型无法替代的。

BERT和GPT分别有一系列的改进工作。和BERT相关的,包括ALBERT、RoBERTa、DeBERTa等各种从性能角度、效果角度的优化,也包括ELECTRA等引入外部知识库的优化。GPT相关的改进则相对较少(当时BERT更火,主流都在研究如何优化BERT),主要还是GPT后的GPT2、GPT3等。

5

大模型时代:ChatGPT

ChatGPT的出现开启了大模型的时代。其前序工作包括GPT1、GPT2、GPT3、InstructGPT等。GPT1的核心是无监督语言模型预训练;GPT2的核心是更多的训练数据、更大的模型尺寸;GPT3的核心是prompt和in-context learning,挖掘语言模型的理解能力;InstructGPT的核心是如何让GPT生成的回答更符合人类的需求,核心是引入了强化学习机制,基于强化学习的思想去优化无监督预训练模型产出的文本,让其更符合人类的需求。

图片

ChatGPT的数据处理方法、模型结构和强化学习方法,是LLM最核心的组件。在模型结构方面,后续出现的LLaMA,则是现在包括DeepSeek等大模型的基础模型结构。

6

DeepSeek/千问

在ChatGPT后,各大机构都开始研究LLM,提出了一系列的LLM建模方式、应用方式。在这个过程中,LLM的应用越来越广泛,到目前为止很多人都已经开始使用LLM。这里重点介绍两个国内比较有代表性的,目前最先进的LLM。一个是DeepSeek,一个是阿里的通义千问。它们基于前序的LLM成功经验,对模型结构、训练流程、性能优化等做了大量改造,逐步提升了LLM性能。比如DeepSeek,目前的应用版本,经历了V1~V3,再到R1的升级,引入了包括MoE、深度思维链样本强化学习等,逐步提升LLM性能。

在后续的章节中,会进一步展开详细介绍LLM的上述发展过程中,各个阶段的代表性工作、技术原理等的深度解析。

图片

### LLM与知识图谱结合的应用与实现 #### 背景介绍 大型语言模型(LLM)近年来取得了显著进展,但在实际应用场景中仍面临一些挑战,例如缺乏实时更新的知识、可解释性不足等问题。而知识图谱作为一种结构化知识表示形式,可以有效补充这些短板。 #### 方法概述 目前,将知识图谱与LLM相结合的主要方式包括三种: 1. **预训练阶段的知识注入**:通过在LLM的预训练过程中融入知识图谱的信息,使得模型能够在初始阶段就具备更强的知识基础[^1]。这种方法的核心在于设计特定的任务来引导模型学习知识图谱中的关系和实体信息。 2. **推理过程中的动态知识调用**:当LLM生成文本时,可以通过外部知识图谱查询最新的事实或领域专业知识,从而提升生成内容的准确性。这种方式特别适用于需要高精度场景下的应用。 3. **增强模型可解释性**:借助知识图谱的帮助,研究者们试图揭示为什么某个预测会被做出以及它是如何基于已知的事实得出结论的。这种透明度对于医疗诊断或者法律咨询等领域尤为重要。 #### 技术细节 为了进一步探讨两者之间的协作机制,“知识增强型语言模型”(Knowledge-Enhanced Language Model, KELM)被提出作为解决方案之一[KELM][^2]。该方案强调在整个生命周期——从参数初始化直到最终部署期间持续不断地吸收来自KG的新鲜养分;具体而言,在架构层面增加了专门用于处理节点特征向量映射的功能模块,并调整注意力权重计算逻辑以便优先考虑那些具有较高置信水平的关系链接。 另外值得注意的是,《知识图谱大模型系列之 08 如何在企业级实现知识图谱和大型语言模型 (LLM)》一文中提到的实际操作指南也提供了宝贵的参考资料[^3]。它不仅涵盖了理论框架构建思路还给出了具体的工程实践指导比如采用Streamlit这样的工具快速搭建原型系统验证想法可行性等等。 以下是简单的伪代码展示如何可能在一个项目里集成这两种技术: ```python def integrate_kg_with_llm(knowledge_graph, llm_model): """ Integrate Knowledge Graph with Large Language Model. Args: knowledge_graph (dict): A dictionary representing the structure of KG. llm_model (object): Pre-trained large language model instance. Returns: object: Enhanced version of original LLM incorporating KG info. """ enhanced_model = None # Step to inject KG into pre-training phase or adjust inference logic accordingly... try: pass except Exception as e: print(f"Error occurred during integration process:{e}") finally: return enhanced_model ``` 以上仅为示意性质并不代表真实可用算法,请根据实际情况修改完善后再投入使用! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值