Chapter 1 Understanding Large Language Models

文章目录

  • 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利用自监督学习,模型从输入数据中生成自己的标签


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

什么是VLAN?

VLAN(Virtual Local Area Network,虚拟局域网)是一种将物理局域网划分成多个逻辑上独立的虚拟网络的技术。VLAN不依赖于设备的物理位置,而是通过逻辑划分,将局域网内的设备虚拟地组织到同一组。这种技术允许网络管理员…

【君正T31开发记录】12.编译工具相关总结及介绍

移植交叉工具包的时候,发现这是很多工具的集合包;以及写makefile的时候,也需要了解下这些工具的作用及用法,这里总结记录一下常见的工具及相关用法。 g C编译器,用于编译C源代码文件,这个很常见&#xff0…

Appium(一)--- 环境搭建

一、Android自动化环境搭建 1、JDK 必须1.8及以上(1) 安装:默认安装(2) 环境变量配置新建JAVA_HOME:安装路径新建CLASSPath%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar在path中增加:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;(3) 验证…

猫的眼睛有几种颜色?

在猫咪神秘而迷人的世界里,它们的眼睛犹如璀璨星辰,闪烁着各异的光芒,颜色丰富多样,令人着迷。 猫眼睛的颜色,粗略一数,常见的便有黄色、蓝色、绿色、棕色,还有那神秘的异瞳。这些色彩并非无端生…

PHP框架+gatewayworker实现在线1对1聊天--接收消息(7)

文章目录 接收消息的原理接收消息JavaScript代码 接收消息的原理 接收消息,就是接受服务器转发的客户端消息。并不需要单独创建函数,因为 ws.onmessage会自动接收消息。我们需要在这个函数里进行处理。因为初始化的时候,已经处理的init类型的…

校园周边美食探索及分享平台的设计与实现(源码+数据库+文档)

亲测完美运行带论文:文末获取源码 文章目录 项目简介(论文摘要)运行视频包含的文件列表(含论文)前台运行截图后台运行截图 项目简介(论文摘要) : 美食一直是与人们日常生活息息相关…

基于深度学习的视觉检测小项目(七) 开始组态界面

开始设计和组态画面。 • 关于背景和配色 在组态画面之前,先要确定好画面的风格和色系。如果有前端经验和美术功底,可以建立自己的配色体系。像我这种工科男,就只能从网络上下载一些别人做好的优秀界面,然后在photo shop中抠取色…

wps版excel中如何快速生成倒序序号?

使用wps办公软件打开的excel文件: 效果如下: 方法: 如:想生成此列序号从101~13序号,倒序排列。 在第1个格子中输入开头的最小数字:13 点击一下【13】这个单元格,然后鼠标放在右下角&#xff…

jupyter出现“.ipynb appears to have died. It will restart automatically.”解决方法

原因 解决方法:更新jupyter的版本 1.打开anaconda prompt 2、更新jupyter版本 在anaconda prompt输入以下指令 conda update jupyter如图:

【Flink CDC】Flink CDC的Schema Evolution表结构演变的源码分析和流程图

Flink CDC版本:3.2.1 说明:本文从SchemaOperator接收到,表结构变更事件开始,表结构变更事件应由source端产生,本文不讨论。 可以先看流程图,研究源码。 参考文章: Flink cdc3.0动态变更表结构—…

【编译原理与技术(李文生第二版)】期末复习

第五章 语法制导定义第五章 设计翻译方案√第六章 语义分析-类型表达式(仅记录,没说考)第七章 参数传递 √第七章 运行栈、display表 √例题1:来源:课件例题2:来源:教材7.4例题3:来源…

SpringBoot环境和Maven配置

SpringBoot环境和Maven配置 1. 环境准备2. Maven2.1 什么是Maven2.2 为什么要学 Maven2.3 创建一个 Maven项目2.4 Maven核心功能2.4.1 项目构建2.4.2 依赖管理2.4.3 Maven Help插件 2.5 Maven 仓库2.5.1本地仓库2.5.2 中央仓库2.5.3 私有服务器, 也称为私服 2.6 Maven设置国内源…

五个不同类型的数据库安装

一、 官方首页下载 打开 MySQL 官方首页,链接为: MySQL 进去社区后选择合适的版本进行安装 安装细节 依图一路next 点击finish结束安装 二、 在线YUM仓库 将该安装包的下载链接在 Linux 操作系统中按照以下命令直接进行下载 三、 二进制本地 通过该链接…

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

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

基于单片机的直流稳压电源的设计(论文+源码)

1.系统方案设计 在本次直流稳压电源的设计中,其关键指标如下: 系统输入电压220V交流系统输出直流0到12V可调,步进可以达到0.1V电流最大输出可以到2A具有短路保护功能可以通过液晶或者数码管等显示设备显示当前输出电压 2. 电路图

排序算法——堆排序

什么是堆 堆就是一种特殊的二叉树,他有以下特点: 堆中某个节点的值总是不大于或不小于其父节点的值; 堆总是一棵完全二叉树。 堆又可以分为大根堆和小根堆 大根堆:根节点最大,每个节点都小于或等于父节点 小跟堆&am…

数据挖掘——聚类

数据挖掘——聚类 聚类K-meansKNN VS K-meansK-Nearest Neighbors (KNN)K-means K中心算法PAM算法 K-modes算法——解决数据敏感的问题KMeans算法 ——解决初始点选择问题K-中心点层次方法AGNES算法——最小距离单链接全链接平均链接 聚类评估K均值和K中心点的优缺点层次化聚类…

在线机考|2024华为实习秋招春招编程题(最新)——第3题_个性化歌单推荐系统_300分(十一)

题目内容 假设你是音乐服务的开发者,为了提高用户体验需要解决推荐歌单的同质化问题,保证推荐给用户的所有歌单不包含相同歌曲的。给定一个包含N个歌单和M条歌单重复记录,每个歌单用一个从1到N的整数编号,歌单重复记录包含两个歌单的ID,表示两个歌单有相同的歌曲。 你的任…

每日OJ_牛客_宵暗的妖怪_DP_C++_Java

目录 牛客_宵暗的妖怪_DP 题目解析 C代码 Java代码 牛客_宵暗的妖怪_DP 宵暗的妖怪 描述: 露米娅作为宵暗的妖怪,非常喜欢吞噬黑暗。这天,她来到了一条路上,准备吞噬这条路上的黑暗。这条道路一共被分为n 部分&…

开源架构的自动化测试策略优化版

最近四篇文章推荐: 开源架构的容器化部署优化版(New) 开源架构的微服务架构实践优化版(New) 开源架构中的数据库选择优化版(New) 开源架构学习指南:文档与资源的智慧锦囊&#xff08…