Chapter 1 Understanding Large Language Models

news2025/1/8 4:20:40

文章目录

  • Understanding Large Language Models
    • What is an LLM?
    • Applications of LLMS
    • Stages of building and using LLMs
    • Using LLMS for different tasks
    • A closer look at the GPT architecture
    • Building a large language model
    • Summary

Understanding Large Language Models

What is an LLM?

  • LLMs 利用 transformer的架构,这使得它们在进行预测时能够选择性地关注输入的不同部分,使它们特别擅长处理细微差别和复杂性人类语言的。

    image-20241212085730852

    正如对不同领域之间关系的分层描述所示,LLMs 代表深度学习技术的特定应用,利用其处理和生成类人文本的能力。深度学习是机器学习的一个专门分支,专注于使用多层神经网络。机器学习和深度学习是旨在实现算法的领域,使计算机能够从数据中学习并执行通常需要人类智能的任务。


Applications of LLMS

  • 如今,LLMs 用于机器翻译、小说文本生成、情感分析、文本摘要和许多其他任务。 LLMs 最近被用于内容创作,例如撰写小说、文章,甚至计算机代码。

  • 还可以为复杂的聊天机器人和虚拟助手提供支持,例如 OpenAI 的 ChatGPT 或 Google 的 Gemini(以前称为 Bard),它们可以回答用户查询并增强传统搜索引擎(例如 Google Search 或 Microsoft Bing)。

  • 此外,LLMs 可用于从医学或法律等专业领域的大量文本中进行有效的知识检索。这包括筛选文档、总结冗长的段落以及回答技术问题。

  • 简而言之,LLMs 对于自动化几乎所有涉及解析和生成文本的任务来说都是无价的


Stages of building and using LLMs

  • 研究表明,在建模性能方面,定制的 LLMs(针对特定任务或领域定制的)可以胜过通用的 LLMs。创建LLM的一般过程包括预训练和微调。

    image-20241212090258310

    1. 预训练:在大型、多样化的数据集(有时称为原始文本)上进行训练以形成对语言的广泛理解的。这里的“原始”是指这些数据只是普通文本,没有任何标签信息。

    2. 微调:两个最流行的微调类别LLMs包括指令微调和分类任务微调。

      1️⃣指令微调:标记的数据集由指令和答案对组成,例如翻译文本的查询以及正确翻译的文本

      2️⃣分类微调:在分类微调中,标记数据集由文本和关联的类标签组成,例如与垃圾邮件和非垃圾邮件标签关联的电子邮件。


Using LLMS for different tasks

  • 简化版本的原始 transformer 架构

    image-20241212091450926

    上图所示的 Transformer 架构由两个子模块组成:编码器和解码器。编码器模块处理输入文本并将其编码为一系列数字表示或向量,以捕获输入的上下文信息。然后,解码器模块获取这些编码向量并从中生成输出文本。例如,在翻译任务中,编码器将源语言的文本编码为向量,解码器将这些向量解码以生成目标语言的文本。编码器和解码器都由通过所谓的自注意力机制(上图未显示)连接的许多层组成。

  • Transformer 架构的后来变体

    image-20241212091850051

    1. BERT(bidirectional encoder representations from transformers)

      BERT 建立在原始 Transformer 的编码器子模块之上,BERT 及其变体专门用于屏蔽词预测,其中模型预测给定句子中的屏蔽词或隐藏词。这种独特的训练策略为 BERT 提供了文本分类任务的优势,包括情感预测和文档分类。

    2. GPT(generative pretrained transformers)

      GPT 专注于原始 Transformer 架构的解码器部分,专为需要生成文本的任务而设计。这包括机器翻译、文本摘要、小说写作、编写计算机代码等等。

  • GPT 模型主要是为执行文本完成任务而设计和训练的,也表现出了非凡的多功能性。这些模型擅长执行零样本和少样本学习任务。零样本学习是指在没有任何先前具体示例的情况下泛化到完全未见过的任务的能力。另一方面,小样本学习涉及从用户提供的最少数量的示例作为输入进行学习,如 下图所示。

    image-20241212092307267


A closer look at the GPT architecture

  • ChatGPT 中提供的原始模型是通过使用 OpenAI 的 InstructGPT 论文中的方法在大型指令数据集上微调 GPT-3 来创建,利用人类反馈进行微调以遵循指令。

  • 在 GPT 模型的下一个单词预训练任务中,系统通过查看句子之前的单词来学习预测句子中即将出现的单词。这种方法有助于模型理解单词和短语通常如何在语言中组合在一起,形成可应用于各种其他任务的基础。

    image-20241216203924966

  • 与原始 Transformer 架构相比,通用 GPT 架构相对简单,本质上,它只是解码器部分。由于像 GPT 这样的解码器式模型通过一次预测一个单词来生成文本,因此它们被认为是一种自回归模型。自回归模型将之前的输出合并为未来预测的输入。因此,在 GPT 中,每个新单词都是根据其前面的序列来选择的,这提高了生成文本的连贯性。

    GPT 架构仅采用原始transformer的解码器部分。它专为单向、从左到右的处理而设计,非常适合文本生成和下一个单词预测任务,以迭代方式一次一个单词地生成文本

    image-20241216204327637

  • GPT-3 等架构也比原始 Transformer 模型大得多。原始transformer将编码器和解码器块重复六次。 GPT-3有96个transformer层,总共1750亿个参数


Building a large language model

  • 本书涵盖的构建LLMs的阶段包括实现LLM架构和数据准备过程、预训练LLM以创建基础模型以及微调成为个人助理或文本分类器的基础模型。

    image-20241216204558205


Summary

  • 现代LLMs的训练主要分为两个步骤。首先,它们在一个大规模的无标签文本语料库上进行预训练,使用句子中下一个单词的预测作为“标签”。接着,它们在一个较小的、有标签的目标数据集上进行微调,以遵循指令或执行分类任务。

  • LLMs基于Transformer架构。Transformer架构的关键思想是一种注意力机制,这种机制使得LLM在每次生成一个单词的输出时,能够有选择性地访问整个输入序列。

    原始的Transformer架构由一个用于解析文本的编码器和一个用于生成文本的解码器组成。而用于生成文本和遵循指令的LLMs,如GPT-3和ChatGPT,仅实现了解码器模块,从而简化了架构。

  • 尽管类似于GPT的模型的通用预训练任务是预测句子中的下一个单词,但这些LLMs展现出了“涌现”的特性,例如分类、翻译或总结文本的能力。

  • 一旦LLM完成预训练,所得到的基础模型可以更高效地进行微调,以适应各种下游任务。在自定义数据集上微调的LLMs在特定任务上可以超越通用LLMs的表现。

  • 传统的机器学习模型和通过传统监督学习范式训练的深度神经网络通常需要标签信息。然而,LLMs的预训练阶段并非如此。在这一阶段,LLMs利用自监督学习,模型从输入数据中生成自己的标签


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

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

相关文章

游戏社交趋势下,游戏语音再升级!

如今,游戏已成为我们社交生活的一个重要娱乐方式,春节临近,与亲朋好友一起畅玩“开黑”无疑是节假日的一大乐趣。在游戏社交互动中,“游戏语音”不可或缺。在传统游戏语音领域,多人在线游戏如 MOBA、FPS 和 MMORPG 的实…

CTFshow—远程命令执行

29-35 Web29 代码利用正则匹配过滤了flag,后面加了/i所以不区分大小写。 可以利用通配符绕过 匹配任何字符串/文本,包括空字符串;*代表任意字符(0个或多个) ls file * ? 匹配任何一个字符(不…

Elasticsearch 入门教程

掌握Elasticsearch:从入门到入门 一、ES 背景1.1 ElasticSearch 的背景1.2 ElasticSearch 的应用场景 二、ES 简介2.1 ElasticSearch 简介2.2 ElasticSearch 的定义与特点2.3 ElasticSearch 与传统数据库的区别2.4 ElasticSearch 的优势和劣势 三、ES 的核心概念3.1…

【Vue学习】Vue 组件实例的生命周期(四个阶段,八个钩子)

一、为什么要理解生命周期? 理解生命周期就像是知道了一部电影的剧情走向,能让你在适当的时机做出反应。Vue 生命周期的钩子让你可以在不同的阶段插入你的逻辑,像是提前准备、后期清理或者在数据更新时做点事情。这种“精确控制”的能力会让你…

【Vim Masterclass 笔记08】第 6 章:Vim 中的文本变换及替换操作 + S06L20:文本的插入、变更、替换,以及合并操作

文章目录 Section 6:Transforming and Substituting TextS06L21 Inserting, Changing, Replacing, and Joining1 定位到行首非空字符,并启用插入模式2 在紧挨光标的下一个字符位置启动插入模式3 定位到一行末尾,并启用插入模式4 定位到光标的…

vip与haproxy构建nginx高可用集群传递客户端真实ip

问题 系统使用了vip与haproxy实现高可用以及对nginx进行负载均衡,但是发现在上游的应用服务无法拿到客户端的请求ip地址,拿到的是主haproxy机器的ip,以下是nginx与haproxy的缩减配置: location ~* ^/(xx|xx) {proxy_pass http:/…

YOLOv5部署到web端(flask+js简单易懂)

文章目录 前言最终实现效果图后端实现 主界面检测函数检测结果显示 前端实现 主界面(index.html)显示图片界面 总结 前言 最近,老板让写一个程序把yolov5检测模型部署到web端,在网页直接进行目标检测。经过1个星期的努力,终于实…

【Vue】分享一个快速入门的前端框架以及如何搭建

先上效果图: 登录 菜单: 下载地址: 链接:https://pan.baidu.com/s/1m-ZlBARWU6_2n8jZil_RAQ 提取码:ui20 … 主要是可以自定义设置token,更改后端请求地址较为方便。 应用设置: 登录与token设置: 在这里设置不用登录,可以请求的接口: request.js i…

【Linux】RPMSG通讯协议介绍

RPMSG协议通讯协议介绍 RPMSG,全称Remote processor Messaging。是一种核间通讯协议。在Linux Kernel中,已经内置了RPMSG。 Linux RPMSG基于共享内存,利用RPMSG可以高效的实现核间通信。比如Linux与FreeRTOS、Linux与Android,都可…

【51单片机-零基础chapter1】

安装软件(配套的有,不多赘述) 1.管理员身份运行keil和破解软件kegen 将CID代码复制粘贴到 一定要管理员方式,不然会error 插入板子 我的电脑,管理 1.如果是拯救者,查看端口,如果没有则显示隐藏 2.苹果不知道,好像不可以 3.其他电脑在"其他设备找" (注:本人在校已…

计算机网络-数据链路层(CSMA/CD协议,CSMA/CA协议)

2.2 ppp协议 点对点协议ppp是目前使用最广泛的点对点数据链路层协议。 2.3 媒体接入控制基本概念 共享信道要着重考虑的一个问题就是如何协调多个发送和接收站点对一个共享传输媒体的占用,即媒体接入控制MAC。 2.3.1 静态划分信道 频分复用 时分复用 波分复用 码分复…

JMeter + Grafana +InfluxDB性能监控 (二)

您可以通过JMeter、Grafana 和 InfluxDB来搭建一个炫酷的基于JMeter测试数据的性能测试监控平台。 下面,笔者详细介绍具体的搭建过程。 安装并配置InfluxDB 您可以从清华大学开源软件镜像站等获得InfluxDB的RPM包,这里笔者下载的是influxdb-1.8.0.x86_…

李宏毅机器学习笔记-Transformer

目录 1. Seq2seq 2. encoder Transformer 中的 Block 结构 3. Decoder 4.Encoder和Decoder间的信息传递 5.Training 6.Tips 1. Seq2seq Transformer 是一个seq2seq的model。Seq2seq指的是input是一个序列,输出也是一个序列,输出的长度是由机器自己…

【AWS SDK PHP】This operation requests `sigv4a` auth schemes 问题处理

使用AWS SDK碰到的错误,其实很简单,要装个扩展库 保持如下 Fatal error: Uncaught Aws\Auth\Exception\UnresolvedAuthSchemeException: This operation requests sigv4a auth schemes, but the client currently supports sigv4, none, bearer, sigv4-…

Qt 5.14.2 学习记录 —— 일 新项目

文章目录 1、创建2、查看代码 ---- main.cpp3、查看代码 ---- widgt.h4、查看代码 ---- widgt.cpp和widget.ui5、查看代码 ---- Empty.pro6、运行产生的中间文件 1、创建 左上角的文件,新建文件或项目。如果要写一个GUI程序,应当选择Application&#x…

Spring MVC和servlet

1.Spring MVC是Spring框架的一个扩展 2.Spring MVC工作流程 1、用户发送请求至前端控制器DispatcherServlet。 2、DispatcherServlet收到请求调用HandlerMapping处理器映射器。 3、处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及…

蓝牙架构介绍

架构1:hostcontroller双芯片标准架构 这个标准把蓝牙协议栈分成host和controller两部分,其中host跑在AP上,controller跑在蓝牙模块上,两者之间通过HCI协议进行通信,AP芯片厂商一般会直接采用开源的Bluez来实现Host功能…

MySQL(二)MySQL DDL数据库定义语言

1. MySQL DDL数据库定义语言 1.1. MySQL定义语言 进入MySQL mysql -u root -p(回车后输入密码,即可进入mysq1)1.1.1. 数据库操作 (1)查看数据库 mysql>show databases;注:MySQL语句分隔符为“;”   mysql库很重要它里面有…

决定系数(R²分数)——评估回归模型性能的一个指标

目录 1.定义 2.计算举例 3. 结果分析 1.定义 R(R平方)分数,也称为决定系数,是用来评估回归模型性能的一个指标。它表示自变量解释因变量变异性的比例。R分数的取值范围通常在0到1之间,其值越接近1,说明…

node.js内置模块之---stream 模块

stream 模块的作用 在 Node.js 中,stream 模块是一个用于处理流(stream)的核心模块。流是一种处理数据的抽象方式,允许程序处理大量数据时不会一次性将所有数据加载到内存中,从而提高性能和内存效率。通过流&#xff0…