目录

1. 条件概率:上下文预测的基础

2. LLM 是如何“看着上下文写出下一个词”的?

补充说明(重要)

📌 Step 1: 输入处理

📌 Step 2: 概率计算

📌 Step 3: 决策选择

🤔 一个有趣的细节:为什么 ChatGPT 有时“拼字很差”?

3. 温度 (Temperature) 的妙用

4. 小结:LLM 的核心运作机制


1. 条件概率:上下文预测的基础

“条件概率” 是理解 LLM 的第一步,也是预测逻辑的底层支撑。换句话说,模型是在已知上下文的基础上预测下一个词出现的概率,这是一个“给定 A,求 B”的问题,即 P(下一个词 | 上下文)。在 LLM 中,上下文越丰富,模型对后续词语的预测就越精准。

在深入探讨 LLM之前,我们必须理解条件概率。 让我们考虑一个包含 14 个人的群体:其中一些人喜欢网球(7人)其中一些人喜欢足球(8人)有些喜欢网球和足球(3人) 有些全部都不喜欢(2人)。如下图所示。

 ​​​

那么条件概率是什么呢?这是在另一个事件发生的情况下,某事件发生的概率度量。 如果事件是 A 和 B,我们表示为 P(A|B)。 这读作"给定 B 的 A 的概率"。

这里:

  • A:喜欢篮球

  • B:喜欢足球

  • P(A∣B):已知喜欢足球的前提下,喜欢篮球的概率

举例说明:如果我们正在预测今天是否会下雨(事件 A),知道天是多云的(事件 B)可能会影响我们的预测(下雨概率增大)。 由于多云时下雨的可能性更大,我们会说条件概率 P(A|B)很高。 这就是条件概率!

2. LLM 是如何“看着上下文写出下一个词”的?

LLM 从海量文本中学习一个高维的“词序列概率分布”,其内部参数(以巨大的权重矩阵形式存在)就是训练的成果,它让模型能够评估在不同上下文中、每个词出现的概率。

那么,这个如何应用于像 GPT-4 这样的 LLMs这些模型的任务是预测序列中的下一个词。 这是一个条件概率的问题:在已知之前出现过的词的情况下,哪个词最有可能成为下一个词?

为了预测下一个词,模型会根据之前的词(上下文)计算每个可能下一个词的条件概率。 条件概率最高的词被选为预测结果。

LLM 学习一个高维的词序列概率分布。 而这个分布的参数就是训练好的权重! 训练或者说预训练是监督式的。

补充说明(重要)

在前面我们提到,LLM 的任务就是“根据上下文预测下一个词”。但更准确地说,LLM 的工作原理是:
👉 模型会把输入文本转化为一系列 token,然后基于上下文重复预测下一个 token 的概率分布。

📌 Step 1: 输入处理

  • 文本会先经过 分词器(Tokenizer) 转换成 token 序列;

  • 每个 token 会被映射为数字 ID,再转为向量输入模型。

举例:

  • "Learning new things is fun!" → 被分词后,每个常见的单词通常会变成一个 token;

  • "prompting" 这样的长单词,会被拆解为多个 token:"prom""pt""ing"

因此,LLM 实际上预测的不是一个完整的单词,而是一个个 token。

📌 Step 2: 概率计算

  • 模型通过 自注意力机制(Self-Attention),结合上下文信息,计算出每个 token 作为下一个输出的条件概率

  • 举例:在 "I love machine" 之后,模型会评估 "learning""apple""gun" 等 token 出现的概率,通常 "learning" 的概率最高。

📌 Step 3: 决策选择

  • 如果模型每次都选择概率最高的 token,输出可能会“死板”且容易重复;

  • 因此在实际生成时,会引入 温度(Temperature) 参数和 采样(Sampling)策略,让结果既合理又有一定多样性。

🤔 一个有趣的细节:为什么 ChatGPT 有时“拼字很差”?

当你让 ChatGPT 颠倒 "lollipop" 的字母时,它可能会输出错误。
原因是:

  • 分词器将 "lollipop" 分解为三个 token:"l""oll""ipop"

  • 模型处理的单位是 token,而不是单个字母,自然就难以逐字母反转。

✅ 小技巧:
如果你写成 "l - o - l - l - i - p - o - p",分词器会把它们分解为单个字母 token,
这样 ChatGPT 就能逐字处理,从而更容易得到正确的结果。

3. 温度 (Temperature) 的妙用

但是有一个问题? 如果我们总是选择概率最高的词,最终会得到重复的输出,使 LLM几乎毫无用处,并扼杀它们的创造力。 这就是温度(Temperature)发挥作用的地方。

然而,过高的温度值会产生乱码。

所以,LLM不是选择最佳词元(为了简化,我们可以将词元视为单词),而是对预测进行"采样"。 所以即使“词元 1”得分最高,也可能不会被选择,因为我们正在进行采样。

现在,温度在 softmax 函数中引入了以下调整,进而影响了采样过程:

让我们来看一个代码示例!

在低温下,概率集中在最可能的标记周围,导致生成几乎贪婪的结果。

在高温下,概率变得更加均匀,产生高度随机和随机的输出。

4. 小结:LLM 的核心运作机制

核心概念通俗类比 / 理解技术要点及作用
条件概率看天气图预测是否下雨模型预测下一个词的可能性,依赖上下文
概率模型训练出的“大脑”,帮你判断哪个词最可能出现权重矩阵构成预测核心,来自大规模语料预训练
温度控制+采样 留有余地,不死板,让生成更“有痕迹”或“有趣”控制输出“保守”或“多样性”之间的平衡

 原文链接:Akshay 🚀 on X: "How LLMs work, clearly explained:" / X

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python netifaces 库详解:跨平台网络接口与 IP 地址管理

一、前言 在现代网络编程中,获取本机的网络接口信息和 IP 配置是非常常见的需求。 例如: 开发一个需要选择合适网卡的 网络服务;在多网卡环境下实现 流量路由与控制;在系统诊断工具中展示 IP/MAC 地址、子网掩码、默认网关&#x…

HTML应用指南:利用POST请求获取上海黄金交易所金价数据

上海黄金交易所(SGE)作为中国唯一经国务院批准、专门从事黄金等贵金属交易的国家级市场平台,自成立以来始终秉持“公开、公平、公正”的原则,致力于构建规范、高效、透明的贵金属交易市场体系。交易所通过完善的交易机制、严格的风…

C++常见面试题-1.C++基础

一、C 基础 1.1 语言特性与区别C 与 C 的主要区别是什么?C 为何被称为 “带类的 C”? 主要区别:C 引入了面向对象编程(OOP)特性(类、继承、多态等),而 C 是过程式编程语言&#xff1…

Tomcat里catalina.sh详解

在 Tomcat 中,catalina.sh(Linux/macOS)或 catalina.bat(Windows)是 核心的启动和关闭脚本,用于控制 Tomcat 服务器的运行。它是 Tomcat 的“主控脚本”,负责设置环境变量、启动/关闭 JVM 进程&…

STM32之MCU和GPIO

一、单片机MCU 1.1 单片机和嵌入式 嵌入式系统 以计算机为核心,tips:计算机【处理单元,内存 硬盘】 可以控制的外部设备,传感器,电机,继电器 嵌入式开发 数据源--> 处理器(CPU MCU MPU) --> 执行器 …

22_基于深度学习的桃子成熟度检测系统(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)

目录 项目介绍🎯 功能展示🌟 一、环境安装🎆 环境配置说明📘 安装指南说明🎥 环境安装教学视频 🌟 二、数据集介绍🌟 三、系统环境(框架/依赖库)说明🧱 系统环…

数据结构:二叉树oj练习

在讲今天的题目之前,我们还需要讲一下二叉树的以下特点: 对任意一颗二叉树,如果度为0的节点个数是n0,度为2的节点个数是n2,则有n0n21. 证明:二叉树总的节点个数是n,那么有nn0n1n2 二叉树的度为…

RabbitMQ高级特性——TTL、死信队列、延迟队列、事务、消息分发

目录 一、TTL 1.1设置消息的TTL 1.2设置队列的TTL 1.3两者之间的区别 二、死信队列 2.1死信的概念 2.2死信产生的条件: 2.3死信队列的实现 死信队列的工作原理 2.4常⻅⾯试题 三、延迟队列 3.1概念 3.2应用场景 3.3RabbitMQ 实现延迟队列的核心原理 1…

神经网络设计中关于BN归一化(Normalization)的讨论

在神经网络的结构中,我们常常可以看见归一化(Normalization)如BN的出现,无论是模型的backbone或者是neck的设计都与它有着重大的关系。 因此引发了我对它的思考,接下来我将从 是什么(知识领域,诞…

MacOS 安全机制与“文件已损坏”排查完整指南

1. 背景说明macOS 为了保护系统安全,内置了多个安全机制:机制作用是否影响第三方 AppSIP (System Integrity Protection)保护系统关键文件/目录不被篡改高风险 App/驱动可能受限Gatekeeper限制未签名/未认证 App 运行阻止“未知开发者” App文件隔离属性…

package.json文件中的devDependencies和dependencies对象有什么区别?

前端项目的package.json文件中,dependencies和devDependencies对象都用于指定项目所依赖的软件包,但它们在项目的开发和生产环境中的使用有所不同。1.dependencies:dependencies是指定项目在生产环境中运行所需要的依赖项。这些依赖项通常包括…

【最新版】CRMEB Pro版v3.4系统源码全开源+PC端+uniapp前端+搭建教程

一.系统介绍 crmebPro版 v3.4正式发布,智能任务推送、动态标签管理、商城AI生产力,焕然一新,不负期待!页面DIY设计功能全面升级,组件更丰富,样式设计更全面;移动端商家管理,让商城管…

AI 浪潮下 IT 从业者的职业展望:替代之惑与转型之道

一、引言1.1 科技变革的浪潮:AI 崛起与 IT 行业震荡在当今科技飞速发展的时代,人工智能(AI)无疑是最具影响力的变革力量之一。从实验室的前沿研究到广泛的商业应用,AI 以惊人的速度渗透到各个领域,彻底改变…

DSP音频算法移植优化工程师实战

以下以音频FIR滤波器算法为例,完整演示从MATLAB原型 → Python验证 → TI DSP C语言移植优化的全流程,包含关键代码和优化技巧:关键优化技术解析: 内存访问优化使用#pragma DATA_ALIGN确保64位对齐(满足LDDW指令要求&a…

Spark 运行流程核心组件(三)任务执行

一、启动模式 1、standalone资源申请:Driver向Master申请Executor资源Executor启动:Master调度Worker启动Executor注册通信:Executor直接向Driver注册 2、YARNDriver向YARN ResourceManager(RM)申请AM容器RM分配NodeManager(NM)启动AM&#x…

rabbitmq发送的延迟消息时间过长就立即消费了

RabbitMQ延迟消息在设置过长时间后被立即消费的问题,通常与以下原因有关: TTL限制问题 RabbitMQ对消息TTL(Time To Live)有32位整数限制(0-4294967295毫秒),约49.7天。超过该值的延迟时间会导致消息立即被消费解决方案:确保设置的…

kafka的pull的依据

1. 每次 pull() 是否必须在提交上一批消息的 offset 之后?绝对不需要! 提交 offset 和调用 poll() (拉取消息) 是两个完全独立的行为。消费者可以连续调用 poll() 多次,期间完全不提交任何 offset。 这是 Kafka 消费者的正常工作模式。提交 o…

学习嵌入式的第二十一天——数据结构——链表

单向链表特点:存储的内存空间不连续 。为了弥补顺序存储存劣势。优势 插入,删除 O(1) 动态存储 ,在程序运行期间决定大小。劣势: 不能随机访问 O(N) 节点-> 数据域指针域 顺序表(数组) 只有数据域链表的操作代码&#xff1…

Rust Web 全栈开发(十三):发布

Rust Web 全栈开发(十三):发布Rust Web 全栈开发(十三):发布发布 teacher_service发布 svr测试 teacher_service 和 svr发布 wasm-client测试 wasm-clientRust Web 全栈开发(十三)&a…

Zephyr 中的 bt_le_per_adv_set_data 函数的介绍和应用方法

目录 概述 1 函数接口介绍 1.1 函数原型 1.2 功能详解 2 使用方法 2.1 创建流程 2.1.1 创建扩展广播实例 2.1.2 设置周期性广播数据 2.1.3 配置周期性广播参数 2.1.4 启动广播 2.2 主流程函数 2.3 关键配置 (prj.conf) 3 高级用法 3.1 大数据分片传输 3.2 动态数…