文章目录
- 1. 前言
- 2. 大模型的演变
- 2.1. 人工智能的定义和子领域
- 2.2.机器学习
- 2.3. 深度学习
- 2.4. 生成式人工智能 - 大模型的演变
- 3. 大模型的使用与训练
- 3.1. 大模型训练的阶段
- 3.1.1. 预训练
- 3.1.2. SFT(监督微调)
- 3.1.3. RLHF(基于人类反馈的强化学习)
- 4. 大模型的特点与分类
- 4.1. 特点
- 4.2. 局限性
- 4.3. 分类
- 5. 大模型的工作流程
- 5.1. 分词化与词表映射
- 5.2.文本生成过程
1. 前言
拥有大模型之前:使用搜索引擎去搜索问题,由于网络内容质量参差不齐,导致搜索结果不准确。
拥有大模型之后:直接将问题输入大模型,由于大模型具有非常庞大且高质量的知识库,因此,大模型能够给出更准确的答案。
2. 大模型的演变
2.1. 人工智能的定义和子领域
人工智能按照技术实现的不同,可被划分为多个子领域,子领域之间往往相互关联和影响。
人工智能:人工智能是一个广泛涉及计算机科学、数据分析、统计学、机械工程、语言学、神经科学、哲学和心理学等多个学科的集合。
- 机器学习:机器学习可以分为监督学习、无监督学习、强化学习。
- 深度学习:深度学习是机器学习的一个子领域,它基于神经网络模型来处理数据。
- 生成式人工智能:生成式人工智能又是深度学习中快速增长的子领域,使用大模型提供支持,在大量原始、未标记的数据基础上对深度学习模型进行预训练,使得机器能够理解语言甚至图像,并能够根据需要自动生成内容。
2.2.机器学习
机器学习是一种通过计算机程序来从数据中自动学习、改进和预测的计算机科学方法。
- 监督学习:通过训练数据,让机器学习算法从数据中找出规律,并生成模型。
比如,你告诉孩子各种水果的特征(形状、颜色),孩子学习到特征与水果的关联关系,并预测拿出来的水果是什么水果。
- 无监督学习:无监督学习是一种机器学习方法,它不依赖于标签数据,而是通过数据本身来学习。
比如,你不告诉孩子每个水果的特征,而是鼓励他自己找出根据特征将水果分组的方法。
- 强化学习:强化学习是一种机器学习方法,它通过训练智能体来学习如何通过与环境进行交互来获得最大的奖励。
比如:不告诉孩子水果的特征,而是每次向他展示一个水果,让他进行判断。如果他判断正确,则获得奖励,如果他判断错误,则获得惩罚。通过反复试错,孩子逐渐学会正确识别水果的规律。
2.3. 深度学习
深度学习算法试图模拟人脑的工作方式,通过对大量数据的学习,自动提取数据的高层次特征和模式,从而实现图像识别,语音识别,自然语言处理等任务。
按照架构不同,深度学习算法可以分以下几种:
- 卷积神经网络(CNN):CNN是一种深度学习算法,用于处理图像数据。
- 循环神经网络(RNN):RNN是一种深度学习算法,用于处理序列数据。
- Transformer网络:Transformer网络是一种深度学习算法,用于处理文本数据。
同样以教孩子识别水果为例,
这次你带着孩子去超市,哪里有各种不同的水果。你没有向孩子解释每个水果的特点,而是给孩子指出那些是苹果,那些是香蕉。他通过观察和比较,慢慢学会了辨别各种水果。在这个过程中,孩子的大脑(深度学习模型)自动从复杂的视觉、嗅觉等信号中提取层次化的特征,从而达到识别水果的目的。
2.4. 生成式人工智能 - 大模型的演变
- 2018-2020年间,随着Transformer架构的普及和GPT系列模型的发展,"大模型"概念逐渐形成。2021年斯坦福大学《On the Opportunities and Risks of Foundation Models》论文系统化定义了基础模型(Foundation Models)概念,成为大模型研究的重要里程碑。
- 2022年,OpenAI公司发布了ChatGPT。这是一种先进的人工智能语言模型,专为对话交互而设计,具有强大的自然语言理解和生成能力。可以完成撰写论文、邮件、脚本等任务,ChatGPT的发布标志着AI大模型在语言理解和生成能力上的重大发展。对全球AI产业产生了深远影响,开启了人工智能大模型应用的新篇章。
- 2023年,国内厂商纷纷发布各自研发的大语言模型产品。百模大战一触即发。
3. 大模型的使用与训练
大模型的使用方法非常简单,我们可以直接向大模型输入问题,然后得到答案。
3.1. 大模型训练的阶段
大模型的训练整体上分为三个阶段:
- 预训练:让模型学习语言的基本结构和模式。
- SFT(监督微调):让模型学习执行特定的任务。
- RLHF(基于人类反馈的强化学习):使模型输出更加符合人类偏好。
3.1.1. 预训练
预训练的过程类似于从婴儿成长为中学生的过程,在这个阶段会学习各种各样的知识。比如语言习惯、知识体系等重要部分。对于大模型来说,这个阶段会学习不同种类的语料,学习到语言的统计规律和一般知识。
但是大模型在这个阶段只是学会了补全句子,并没有学会怎样领会人类的意图。
假设向未经微调的预训练模型提问:“埃菲尔铁塔在哪个地方?”,模型可能无法理解问题意图,而是基于统计规律补全类似"埃菲尔铁塔是法国巴黎的著名地标,建于1889年…"的文本片段。这说明预训练模型擅长文本补全,但尚未掌握遵循指令的能力。
3.1.2. SFT(监督微调)
SFT过程类似于从中学生成长为大学生的阶段,在这个阶段我们会学习专业知识,比如金融、经济、法律等等。对于大模型来说,这个阶段会学习各种人类的对话语料,甚至是非常专业的垂直领域知识。
在监督微调之后,它可以根据人类的意图回答专业领域的问题。
这时候我们再去提问:“埃菲尔铁塔在哪个地方?”,模型大概率会回答:法国。
这时候的模型已经可以按照人类的意图去完成基本的对话功能了,但是模型的回答可能不符合人类的偏好,比如可能会输出一些涉黄、涉证、涉爆或者种族歧视等言论。这时候我们就需要对大模型进行RLHF(基于人类反馈的强化学习)
3.1.3. RLHF(基于人类反馈的强化学习)
RLHF类似于从大学生不如职场的阶段,在这个阶段我们会开始工作,工作可能会收到领导中我们可能受到表扬,也可能会受到批评。我们会根据反馈调整自己的工作方法,争取在职场中获得更多的正面反馈。
对于大模型来说,在这个阶段他会针对同一个问题进行多次回答,人类会对这些回答进行打分,大模型会在这个阶段学习到如何输出分数最高的回答,使得回答更符合人类的偏好。
4. 大模型的特点与分类
4.1. 特点
大模型主要具有以下四个特点:
- 规模和参数量大:通过及其庞大规模的参数来捕获复杂的数据模式,使得他们能够理解和生成及其丰富的信息。
- 适应性和灵活性强:能够通过微调或少量样本学习,高效地迁移到各种下游任务,有很强的跨域能力。
- 广泛数据集的预训练:大模型使用大量多样化的数据进行预训练,以学习广泛的知识表示,能偶掌握语言、图像等数据的通用特征。
- 计算资源需求大:巨大的模型规模带来了高昂的计算和资源需求,包括但不限于数据存储、训练时间,能量消耗和硬件设施。
4.2. 局限性
大模型在快速发展的同时也存在明显局限:
- 幻觉问题:可能生成看似合理但不准确的内容
- 知识时效性:预训练数据截止后无法获取新知识
- 推理能力局限:复杂逻辑推理和数学计算仍存在挑战
- 伦理风险:可能产生偏见、歧视性内容或被用于生成虚假信息
4.3. 分类
按照应用场景,大模型可以分以下几种:
- 大语言模型LLM:
- 多模态大模型(Multimodal Foundation Models):
- 计算机视觉模型(如CLIP、DALL-E)
- 音视频理解模型(如Whisper、VideoMAE)
- 跨模态对齐模型
大语言模型:
这类大模型专注于自然语言处理(NLP),旨在处理语言、文章、对话等自然语言文本。他们基于深度学习架构(如Transformer),通过大规模文本数据集训练而成,能够捕捉语言的复杂性,包括语法、语义、语境以及蕴含的文化和社会知识。
语言大模型典型应用包括文本生成、问答系统、文本分类、机器翻译、对话系统等。比如
- GPT系列:GPT-3、GPT-4
- Bard:谷歌的AI对话助手
- 通义千问: 阿里云的大模型
多模态模型:
多模态大模型能够同时处理和理解来自不同感知通道的数据,比如文本、图像、音频、视频等。并在这些模态之间建立关联和交互。他们能够整合不同类型的输入信息,进行跨模态推理,生成和理解任务。
多模态大模型的应用包括视觉问答、图像生成、跨模态检索、多媒体内容理解等。
5. 大模型的工作流程
5.1. 分词化与词表映射
分词化(Tokenization)是自然语言处理(NLP)中的重要概念,它是将段落和句子分割成更小的分词(token)的过程。
举一个例子:I want to study ACA。
为了让机器理解这个句子,对字符串执行分词化,将其分解成独立的单元:[‘I’ ‘want’ ‘to’ ‘study’ ‘ACA’ ‘.’]
将句子分割成更小的、独立的部分可以帮助计算机理解句子的各个部分,以及它们在上下文中的作用,这对进行大量上下文分析时尤其重要。
分词器有不同的粒度分类:
- 词粒度(Word-Level Tokenization):如上文所示的例子,适用于大多数西方文字语言。
- 字粒度(Character-Level):中文中最直接的分词方法,以单个汉字为单位进行分词。
- 子词粒度(Subword-Level):将单词分解成更小的单位,比如词根、词缀等。这种方法对于处理新词(比如专有名称、网络用语)特别有效,因为即使是新词,其组成部分(子词)很可能已经存在于词表中了。
每个token都会根据预先设置好的词表,映射为一个token id,这是token的身份证,一句话最终会被表示为一个元素为token id的列表,供计算机进行下一步处理。
现代大语言模型(如GPT系列)主要采用子词分词技术:
- Byte Pair Encoding (BPE):将常见词组合并为新token
- WordPiece:BERT使用的变体,优先保留完整单词
- SentencePiece:支持无空格语言(如中文)的统一分词方案
例如中文处理:
- 字粒度:[“大”,“模”,“型”]
- 子词粒度:[“大模型”](作为单个token)
- 混合方案:[“大”,“模型”](平衡灵活性和效率)
5.2.文本生成过程
大语言模型的工作概括来说,是根据给定的文本预测下一个token。
对我们来说,看似像在对大模型提问,实际上是给了大模型一串提示文本,让它可以对后续的文本进行推理。
大模型的推理过程不是一步到位的,大模型会基于现有的token,根据概率最大原则预测出下一个最有可能的token,然后将该预测的token加入到输入序列中,并将更新后的输入序列继续输入给大模型预测下一个token。这个过程叫做自回归。直到输出特殊token(如<EOS>,end of sentence)或者达到最大长度时,大模型停止预测,返回预测结果。