大模型扫盲篇

36 阅读10分钟

大模型的演变

人工智能

人工智能按照技术实现的不同可以被划分为多个子领域,各个子领域之间往往相互关联和影响

  • 人工智能(AI:Artificial Intelligence):人工智能是一个广泛涉及计算机科学、数据分析、统计学、机器工程、语言学、神经学科、哲学和心理学等多个学科的领域
  • 机器学习:机器学习可以分为监督学习、无监督学习和强化学习
  • 深度学习:深度学习是机器学习的一个分支,主要使用神经网络模型(由多个隐藏层组成)对数据进行学习和表示
  • 生成式人工智能(AIGC):生成式人工智能又是深度学习中快速增长的子集,它们使用了大模型提供支持,在大量原始、未标记的数据基础上对深度学习模型进行预训练,使得机器能够理解语言甚至图像,并能够根据需要自动生成内容

机器学习

机器学习:机器学习可以分为监督学习无监督学习强化学习

  • 监督学习的工作模式:你拿着一个苹果和一个香蕉,告诉孩子:“这是一个苹果,它的形状是圆的,颜色通常是红色或绿色;这是香蕉,它的形状是长条形,颜色通常是黄色。”孩子会学习到特征和类别的对应关系,预测出新拿出的水果是苹果还是香蕉

  • 无监督学习的工作模式:你让孩子观察一堆水果,没有直接告诉他每个水果的名称,而是鼓励他自己找出如何根据形状、颜色等属性将这些水果分组的方法

  • 强化学习的工作模式:你不会直接教孩子苹果和香蕉的区别,而是每次展示一个水果让他进行判断。如果他判断正确,就给他一个奖励(比如一块糖果);如果判断错误,则不给奖励。 通过反复尝试和反馈,孩子会通过这种奖励机制逐渐学习到如何更准确的判断苹果和香蕉。这种学习过程中的关键在于孩子需要在探索新的判断方法和利用已有经验之间找到平衡,以最大化获得奖励的次数

在机器学习中,监督学习与无监督学习都需要你明确地告诉机器(或者说孩子)数据的特征(形状和颜色)是什么,监督学习需要在机器进行学习时人为提供数据对象的类别(比如苹果或香蕉),而无监督学习一般没有预设的类别标识,通过机器自动学习数据的分布并将相似的数据对象归为同类(如红色圆形的苹果)

深度学习

深度学习算法试图模拟人类大脑的工作方式,其灵感来源于神经生物学,它通过对大量数据的学习,自动提前出数据的高层次特征和模式,从而实现图像识别、语音识别、自然语言处理等任务。按照架构的不同,神经网络可以分为:卷积神经网络(CNNs)、循环神经网络(RNNs)、Transform网络等等

同样是区分不同水果,这次你带孩子去了超市,那里有各种不同的水果,你没有解释每种水果的特点,只给孩子指出了哪些是苹果哪些是香蕉,他通过观察和比较,慢慢学会了辨认各种水果。在这个过程中,孩子的大脑(在这里比喻为深度学习模型)自动从复杂的视觉、嗅觉等信号中提取层次化的特征。比如圆形、条纹、颜色深浅、气味等,从而达到识别水果的目的

大模型的训练

大模型的训练整体上分为三个阶段:

  • 预训练:提升底层能力,比如:幼儿园、小学、初中、高中,各种学科各种学习
  • SFT(监督微调):比如:上了大学选一个专业学习
  • RLHF(基于人类反馈的强化学习):这个环节可以人工干预。比如:找到工作后,在工作中遇到问题可以找各种方式进行学习解决

预训练

预训练的过程类似从婴儿成长为中学生的阶段,在这个阶段我们会学习各种各样的知识,我们的语言习惯、知识体系等重要部分都会形成;对于大模型来说,在这个阶段它会学习各种不同种类的语料,学习到语言的统计和一般知识。但是大模型在这个阶段只是学习了补全句子,却没有学会怎样去领会人类的意图,假设我们向预训练的模型提问:“埃菲尔铁塔在哪个国家?”模型有可能不会回答:“法国”,而是根据它看到过的语料进行输出:“东方明珠塔在哪个城市?”这个显然不是一个好答案,因此我们需要让它能够去遵循人类的指示进行回答,这个步骤就是SFT(监督微调)

SFT

SFT 的过程类似于从中学生成长为大学生的阶段,在这个阶段我们会学习到专业知识,比如金融、法律等领域,我们的头脑会更加专注于特定领域。对于大模型来说,在这个这个阶段它可以学习各种人类的对话语料,甚至是专业的垂直领域知识,在监督微调过程之后,他可以按照人类的意图去回答专业领域的问题。这个时候我们向经过SFT的模型提问:“埃菲尔铁塔在哪个国家”,模型大概率会回答:“法国”,而不是去补全后边的句子。这时候模型已经可以按照人类的意图去完成基本对话功能了。但是模型的回答有时候并不符合人类的偏好,它可能输出一些涉黄、涉政、涉暴或者种族歧视等言论,这时候我们就需要对模型进行RLHF(基于人类反馈的强化学习)

RLHF(基于人类反馈的强化学习)

RLHF 的过程类似于从大学生步入职场的阶段,在这个阶段我们会开始进行工作,但是我们的工作可能会收到领导嚯客户的表扬,也可能会受到批评,我们会根据反馈调整自己的工作方法,争取在职场获得更多的正面反馈。对于大模型来说,在这个阶段它会对同一问题进行多次提问,人类会对这些回答进行打分,大模型会在此学习到如何输出分数最高的回答,使得回答更加符合人类的偏好。

大模型的特点与分类

大模型的特点

  • 规模和参数量大

    大模型通过其庞大的规模(千亿级参数数量)来捕获复杂的数据模式,使得他们能够理解和生成极其丰富的信息

  • 适应性和灵活性强

    模型具有很强的适应性和灵活性,能够通过微调或少样本学习高效地迁移至各种下游任务,有很强的跨域能力

  • 广泛数据集的预训练

    大模型使用大量多样化的数据进行预训练,以学习广泛的知识表示,能够掌握语言、图像等数据通用特征

  • 计算资源需求大

    巨大的模型也带来了高昂的计算和资源需求,包括但不限于数据存储、训练时间、能量消耗和硬件设施

大模型的分类

按照应用场景,大模型可以大致分为:

  • 大语言模型(LLM)

    这类大模型专注于自然语言(NPL),旨在处理语言,文章,对话自然语言文本,它们通常基于深度学习框架(如 Transform模型),经过大规模文本数据集训练而成,能够捕捉语言的复杂性,包括语法、语义、语境以及蕴含的文化和社会知识。语言大模型典型应用包括文本生成、问答系统、文本分类、机器翻译、对话系统等。

  • 多模态模型

    多模态大模型能够同时处理和理解来自不同感知通道(如文本、图像、音频、视频等)的数据,并在这些模态之间建立关联和交互。它们能够整合不同类型的输入信息,进行跨模态推理、生成和理解任务。多模态大模型的应用涵盖视觉问答、图像描述生成、跨模态检索、多媒体内容理解等领域

大模型的工作流程

分词化(Token)与词表映射

分词化(token)是自然语言处理(NLP)中的重要概念,它将段落和句子分割成更小的分词的过程,举一个例子,以下是一个英文句子: "I want to study Chinese." 为了让机器理解这个句子,对于字符串执行分词化,将其分解为独立的单元。使用分词化我们会得到这样的结果:["I","want","to","stydy","Chinese","."]。

将一个句子分解成更小的、独立的部分可以帮助计算机理解句子的各个部分,以及它们在上下文中的作用,这对于进行大量上下文的分析尤为重要。分词化有不同的颗粒度分类。

  • 词粒度分词化,如上文中的示例所示,适用于大多数西方语言,如英语
  • 字符粒度分词化是中文最直接的分词方法,它是以单个汉字为单位进行分词化
  • 子词粒度分词化,他将单词分解成更小的单位。比如词根、词缀等。这种方法对于处理新词(专有名词、网络用语)特别有效,因为即使是新词,它的组成部分呢(子词)很可能已经存在于词表中了

每个token都会通过预先设置好的词表,映射为一个 token id,这是 token 的身份证,一句话最终会被表示为一个元素为 token id 的列表,共计算机进行下一步处理

大语言模型生产文本的过程

大语言模型的工作概括来说是根据给定的文本预测下一个 token,对于我们来说,看似像在对大模型提问,但实际上是给了大模型一串提示文本,让它可以对后续的文本进行推理

大模型的推理过程不是一步到位,当大模型进行推理时,它会基于现有的 token,根据概率最大原则预测出下一个最有可能的 token,然后将该预测的 token 加入到输入序列中,并将更新后的输入序列继续输入大模型预测下一个 token,这个过程叫做自回归,直到输出特殊token(表示结束的token)或输出长度达到阈值。