百度飞桨大模型训练营:人工智能与大语言模型

news2025/1/13 17:25:41

1 人工智能基础概念全景介绍

1.1 人工智能概念

解释这些概念

  • AI是计算机学科下的一个分支学科,旨在使用计算机使之能像人类一样学习和思考问题
  • 机器学习是AI的一个子集,它的一个重要特点就是不需要人去做显示编程(不用手撕函数),让计算机自行学习迭代总结规律,做出预测和决策
1.1.1 机器学习

机器学习下就有很多分支了,例如监督学习、无监督学习、强化学习

  • 监督学习目标是学习原始数据和标签之间的映射关系,他的一个特点就是是给定了原始数据和标签,让计算机自行总结归纳,他的经典的应用有对事物的分类、回归预测等

  • 无监督学习就是相对于监督学习,他只给原始数据而不给定标签,让计算机自行发现数据中的模式或规律,他的应用有聚类(就是分组)、降维、异值检测、自编码器(大语言模型中用到)、自监督学习等

  • 强化学习就是让模型在环境中采取行动,不断尝试,让他在环境中获得最大奖励的手段,类似于人类学习的模式,趋利避害,例如Alpha Go

1.1.2 深度学习

深度学习具有这三类学习的一些特点,也有自己的模式,属于都有点但都不是的状态

关于深度学习的核心就是两个词,连接、深度

连接的意思是说,采用了类似于神经元的模式,互相连接;而深度则是指一层一层的神经元来进行映射。

深度学习有一个很经典的应用就是识别手写的数字,通过输入,进行一层一层的运算,让计算机逐渐掌握这些数字更深层次的特征,从而输出正确的结果。

关于深度学习的过程一般有如下几个步骤

数据准备、模型构建、损失函数定义、优化器选择、模型训练、模型评估与调优、模型应用与部署

这些步骤里面最最重要的其实是模型训练这一步

这里有一些基本步骤的概念:

  • 前向传播:将训练数据输入到模型中,经过各层的计算得到输出
  • 计算损失:根据损失函数计算模型的输出与真实标签之间的损失值
  • 反向传播:根据损失值计算梯度,并将梯度反向传播到模型的每一层
  • 参数更新:使用优化器根据梯度信息更新模型的权重参数
  • 迭代训练:重复上述步骤,直到在验证集上的性能达到满意水平或达到预设的训练轮数

那么生成式AI其实就是深度学习的一种应用,而大语言模型并不都是生成式AI,生成式AI也不都是大语言模型,例如文生图、文生视频,还有谷歌的Bert模型都是特例。

2 语言模型的发展及核心算法

大语言模型又称为LLM(large language model)是一种利用自然语言的深度学习的模型

简单说就是给一些输入,就会返回一定的输出,在这个过程中仿佛就有了理解,记忆的能力

他能完成的任务就很多了,可以是续写,翻译,总结,对话等。

2.1 大语言模型为什么大

它的“大”一是体现在训练的数据量巨大,用这些数据进行无监督学习;

二是体现在参数量巨大,这些参数实际上就类似于方程的系数,用于刻画一定的现象,概念等。

这里就有一个Scaling Law,称之为规模定律,当模型大小,数据集大小和用于训练的计算浮点数的增加,模型的性能会提高,为了获得最佳性能,三个因素必须同时放大,当达到一定规模时,就会发生智能涌现的现象。

2.2 大语言模型为什么通用

大模型也被称为通用大模型,一方面随着模型和参数的增加,一个模型对于更多的情景都能产生不同的相应的成果,不需要像分别对词频统计,主题提取等各类方面分别计算推导,只需要一个模型足矣。

2.3 大语言模型的灵魂

Transformer

在2017年6月Transformer模型发布之后,大语言模型就开始发展了

2.4 Transformer之前

在Transformer之前,主流的神经网络是RNN(循环式神经网络),而RNN训练是需要等待上一个步骤完成之后才能开始进行下一步的计算,无法并行计算,训练慢。除此之外RNN难以训练长文本,非常容易以往,文本距离越远,前面对后面的影响就越弱

为了解决RNN的两个问题,他的改良版本LSTM(长短期记忆网络)就出现了 ,但是也没有办法完全解决上述问题,而在处理极长的序列时,仍然受到限制

2.5 Transformer的优势

Transformer有两个优势,一个是自注意力机制,另一个是位置编码

它的自注意力机制体现在即使两个词的位置隔得很远,他依然可以捕捉到他们的相关性,依赖关系,而这不仅仅是两个词之间的关系,而是所有词之间的关系

它的位置编码优势主要是因为首先在语言里,字的位置是非常重要的,他对于每个词赋予位置编码之后,那么就不需要再按照顺序进行输入,因为相当于词是自带位置的,那么此时就可以一次性输入大量的词,每一次都可以独立的计算,不需要等待其他位置的结果,也就是说可以进行并行训练

3 Transformer内部发生着什么

大语言模型输出的本质其实很简单,就是预测出下一个出现概率最高的词,例如搜索栏中预测的自动补全,那么在Transformer内部究竟发生了什么,他是如何进行预测的呢

3.1 数据预处理

  • 我们在输入一段文字时,计算机实际上是无法理解和处理的,这时候就需要进行预处理,这里称之为TOKEN化(或分词),他是将句子、段落、文章等长文本分解为以字词(token)为单位的数据结构
  • 在所有的文本都变成了token,数字化之后就需要进行词嵌入,他其实就是将token转化为一个向量,可以简单理解为他是一个有序的数组,他可以捕捉到token之间的语义和语法关系
  • 这时我们就需要加入之前提到的位置编码,捕捉词在句子中的顺序关系,维度和嵌入层一样(向量相加),得到一个包含了一个位置信息的新向量

这三步预处理之后,我们就把长文本转化成了包含语法语义和位置信息的向量

3.2 编码器

编码器的主要作用就是把上面的输入转化成一种更抽象的表示形式,这种表示形式也是向量,最主要的就是要捕捉向量之间的关键特征了

能进行这样的操作,主要就是依靠这里的自注意力机制了

  • 自注意力机制会计算句子中每个词与其他词之间的相关性得分,作为注意力权重,他反映了词与词之间的关联程度,可以用于确定哪些词在当前上下文中更加重要
  • 利用这些权重,调整每个词之间的表示,权重高的词将获得更大的关注,而权重低的词则相对被忽略
  • 最后使用权重对输入序列每个位置的嵌入向量加权求和,得到一个新的表示向量

这样我们就把一开始的向量加入权重得到新的向量

而这样的编码器,自注意力机制在这个过程中有很多个,称之为多头自注意力模块,他们可以从不同角度出发,互不影响,独立运算,关注文本中的不同方面或特征,类似于我们每个人对于同一件事情的看法是不同的。

3.3 解码器

这里解码器有两个输入来源,一是由编码器的输出,二是由之前上一轮文本的输出作为新的输入

解码器的过程与编码器类似,不同之处是解码器会关注输入序列里所有其他词,在解码器中,自注意力只会关注这个词和他前面的所有词,确保生成过程的顺序性和正确性

最终就可以得到包含输入序列的全局信息、关于当前位置信息和已生成的序列信息的新向量

3.4 Linear层和Softmax层

最后阶段实际上就是输出的步骤

  • 在Linear层中,会将输入的向量映射到一个更大的logits向量上。logits向量的长度通常与词汇表的大小一致,每一个向量上的数字对应一个词汇
  • 在Softmax层中,将logits向量的每一个数字转换成0到1之间的概率值,这些概率表示词汇在当前位置被选择的概率,并且所有位置的概率和为1

最终会将最高概率的token输出

3.5 Transformer的变形

仅编码器模型(自编码器模型)
这类编码器只使用Transformer的编码器部分,Bert是这种模型的代表,他通过遮蔽部分输入并预测这些遮蔽的词来训练模型,从而学习文本的上下文表示,这类模型适用于理解语言的任务,如文本分类、情感分析、问答等。

仅解码器模型(自回归模型)
这类模型只使用Transformer的解码器部分,并且通常通过自回归方式生成文本,GPT系列是这种模型的代表,他们通过预测序列中的下一个此来生成文本,这种模型适用于文本生成任务,文章协作,摘要生成。

编码器-解码器模型(序列到序列模型)
这类模型同时保留了两部分,T5、Bart等模型是这种结构的例子,通常适用于一个序列转换为另一个序列的任务,如机器翻译,文本摘要等。

4 类Chatgpt产品的诞生之路

4.1 无监督学习

1、数据准备与预处理:海量文本作为原料,使用分词器(tokenizer)将这些文本数据转化为token序列。如GPT3,训练数据的整体规模是3,000亿的token;

2、任务构建:采用无监督学习的方式训练模型,常见的万法定掩码语言建模(Masked Language Modeling,MLIM)T还础筱n精换)们随机选择输入序列中的一些token进行掩码(即用特殊符号替换)﹐然后要求模型根据上下文预测这些被掩码的token

3、模型训练:将预处理后的token序列输到Transformer模型中,经过Transformer得到每个可能token的预测概率。将预测的概率分布与真实值(即被掩码的token)进行比较,计算交叉嫡损失。
通过反向传播算法,计算损失函数对模型参数的梯度,并使用优化算法(如梯度下降)更新模型的权重。这个过程迭代进行,直到模型在验证集上达到满意的性能。

4.2 监督学习微调

4.3 人工评价和监督学习

4.4 通过强化学习不断提升回复质量

当模型生成一个行为或回答时,奖励函数会计算一个奖励值,这个奖励值会被优化算法用来计算损失函数,并进一步用来更新大模型的权重,在这个过程中我们不断朝着增加这些行为或回答发生概率的方向进行调整。

参考:飞桨AI Studio星河社区 - 人工智能学习与实训社区 (baidu.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1519557.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YOLOv7_pose-Openvino和ONNXRuntime推理【CPU】

纯检测系列: YOLOv5-Openvino和ONNXRuntime推理【CPU】 YOLOv6-Openvino和ONNXRuntime推理【CPU】 YOLOv8-Openvino和ONNXRuntime推理【CPU】 YOLOv7-Openvino和ONNXRuntime推理【CPU】 YOLOv9-Openvino和ONNXRuntime推理【CPU】 跟踪系列: YOLOv5/6/7-O…

关系代数-练习

设有一个SPJ数据库,包括4个关系模式S、P、J和 SPJ。 S(SNO, SNAME,STATUS,CITY) ; P(PNO,PNAME,COLOR,WEICHT) ; J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY)。 供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商…

第二十四节 Java 异常处理

什么是异常? 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常。异常发生时,是任程序自生自灭,立刻退出终止,还是输出错误给用户?或者用C语言风格…

【智能算法】人工水母搜索算法(JS)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.代码实现4.参考文献 1.背景 2020年,Chou 等人受到水母运动行为启发,提出了人工水母搜索算法(Artificial Jellyfish Search Optimizer, JS)。 2.算法原理 2.1算法思想 JS模拟了水母的搜索行为&#xf…

搭建一个自己的AI学术语音助手(一)

背景: 大模型出来后语音助手借着LLM的语义理解、知识组织能力的提升,升级了一波buffer。然后在使用这些语音助手的时候总觉得缺了点什么,但也讲不出来具体缺了什么。这几天的思考突然有了灵感,其实缺的就是自己的知识内容如何变成…

细说C++反向迭代器:原理与用法

文章目录 一、引言二、反向迭代器的原理与实现细节三、模拟实现C反向迭代器反向迭代器模板类的设计反向迭代器的使用示例与测试 一、引言 迭代器与反向迭代器的概念引入 迭代器(Iterator)是C标准模板库(STL)中的一个核心概念&am…

LinuxU盘挂载原理,为什么要用到U盘挂载及实现U盘挂载

目录 一、U盘挂载原理 二、为什么要用到U盘挂载 三、实现U盘挂载 一、准备工作 1、安装gcc 2、下载ntfs-3g 3、解压 4、编译准备 5、编译并安装 二、挂载演示 一、U盘挂载原理 Linux的U盘挂载原理涉及以下几个方面: 设备识别:当您将U盘插入Lin…

力扣L10--- 3. 无重复字符的最长子串--2024年3月14日

1.题目 2.知识点 注1:containsKey 是 Java 中 HashMap 类的一个方法,用于检查哈希表中是否包含指定的键。 注2:在哈希表(HashMap)中,每个键对应着唯一的值,因此键不能重复,但值可以重复。 (1)创…

股价暴涨20%,BOSS直聘最新财报透露四点关键信息

又是一年招聘季,随着“金三银四”的到来,招聘市场再度成为话题讨论的中心,无数求职者踏入劳动力市场。 对比起曾经线下场场爆满的人才市场、双选会,今年就业市场的热闹场景出现在线上,2月28 日,“智联招聘…

Python面试笔记

Python面试笔记 PythonQ. Python中可变数据类型与不可变数据类型,浅拷贝与深拷贝详解Q. 解释什么是lambda函数?它有什么好处?Q. 什么是装饰器?Q. 什么是Python的垃圾回收机制?Q. Python内置函数dir的用法?Q…

10、MongoDB -- MongoDB 的 MongoTemplate 的功能和用法介绍

目录 MongoTemplate 的功能和用法演示前提:登录单机模式的 mongodb 服务器命令登录【test】数据库的 mongodb 客户端命令登录【admin】数据库的 mongodb 客户端命令 为 MongoDB 提供的两个 Starterspring-boot-starter-data-mongodb(为以同步方式操作 Mo…

Java毕业设计-基于springboot开发的在线考试平台-毕业论文+答辩PPT(附源代码+演示视频)

文章目录 前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1、开发说明2、需求分析3、系统功能结构 三、系统实现展示1、系统功能模块2、后台登录2.1管理员功能2.2教师功能2.3学生功能 四、毕设内容和源代码获取总结 Java毕业设计-基于springboot开发…

VSSM VMamba实现

文章目录 VSSM维度变换初始化模型参数初始化模型搭建def_make_layerdef _make_downsample patch embed第一至四阶段分类器 VSSBlockdef __ init__ssm分支mlp分支 def forward VSSM Mamba实现可以参照之前的 mamba_minimal系列 论文地址: VMamba 论文阅读&#xff1…

Redis 的常用基本全局命令【小林优选】

前言 Redis 常用的有 5 种数据结构,字符串,列表,哈希表,集合,有序集合,每一种数据结构都有自己独特的命令,但也有些通用的全局命令,本文所提到的是最基本的命令,Redis 的…

CIDR网络地址、广播地址、网段区间计算说明与计算工具

文章目录 开始问题参考答案 答案解析计算工具测试 开始 好久没有看计算网络,感觉已经完全返给老师了。 最近,有同事遇到个问题,网络一直不对,又开始重新看一下。 相信很多朋友长时间不看也忘了,所以,这里…

TCP机械臂控制

通过w(红色臂角度增大)s(红色臂角度减小)d(蓝色臂角度增大)a(蓝色臂角度减小)按键控制机械臂 注意:关闭计算机的杀毒软件,电脑管家,防火墙 1)基于TCP服务器…

数据泄露态势(2024年2月)

监控说明:以下数据由零零信安0.zone安全开源情报系统提供,该系统监控范围包括约10万个明网、深网、暗网、匿名社交社群威胁源。在进行抽样事件分析时,涉及到我国的数据不会选取任何政府、安全与公共事务的事件进行分析。如遇到影响较大的伪造…

专业款希亦、小米、必胜、云鲸洗地机怎么样?深度测评利弊

洗地机可以说是一种非常实用的清洁工具,尤其是对于那些需要经常给家里地板清洁的人来说。它能够高效、彻底清洁地板,去除顽固污渍、灰尘和细菌,让家居环境更加洁净卫生。可是面对型号繁多的洗地机,我们应该怎么挑选呢?…

架构设计-复杂度来源:高性能

对性能孜孜不倦的追求是整个人类技术不断发展的根本驱动力。例如计算机,从电子管计算机到晶体管计算机再到集成电路计算机,运算性能从每秒几次提升到每秒几亿次。但伴随性能越来越高,相应的方法和系统复杂度也是越来越高。现代的计算机 CPU 集…

实现elasticsearch和数据库的数据同步

1. 数据同步 elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的数据同步。 1.1. 思路分析 常见的数据同步方案有三种: 同步调用 异步通知…