当前位置: 首页 > news >正文

翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习三

合集 ChatGPT 通过图形化的方式来理解 Transformer 架构

  1. 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习一
  2. 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习二
  3. 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习三
  4. 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习四
  5. 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习五
  6. 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习六

在这里插入图片描述

例如,GPT-3中的1750亿个权重
在这里插入图片描述

被组织成大约28000个不同的矩阵。
在这里插入图片描述

这些矩阵然后被分为8个不同的类别,
在这里插入图片描述

你和我要做的就是一个一个地理解每一个类别,了解每种类型的功能。
在这里插入图片描述

接下来的过程将非常有趣,我们将查看GPT-3的具体数据,以弄清楚1750亿是如何分配的。
在这里插入图片描述

尽管现在有更大更好的模型可用,但GPT-3模型仍然具有独特的魅力,作为第一个吸引全球关注的大型语言模型,其影响不限于机器学习社区。
在这里插入图片描述

事实上,对于更现代的模型,公司往往对具体数据保持更严格的保密。
在这里插入图片描述

在这里,我想说明的是,当你深入研究像ChatGPT这样的工具的内部工作原理时,
在这里插入图片描述

你会发现几乎所有的计算过程都体现为矩阵和向量的乘积。

在这里插入图片描述

在大量的数字中很容易迷失方向,
在这里插入图片描述

但你需要在脑海中清楚地区分两个概念:模型的权重(我用蓝色或红色表示)和你正在处理的数据(我用灰色表示)。
在这里插入图片描述

权重是模型的"大脑"。
这些是在训练期间学习的,它们决定了模型的行为模式。
在这里插入图片描述

正在处理的数据只是对模型在一次操作中接收的特定输入进行编码,例如一段文本。
在这里插入图片描述

记住上面的基础知识,让我们探索文本处理示例的第一步:将输入分割成小片段并将这些片段转换为向量。
在这里插入图片描述

我之前提到过,这些小片段被称为tokens,它们可能是单词的一部分或标点符号,但在本章中,特别是在下一章中,我倾向于简化理解,假设它们对应于完整的单词。
因为我们人类是用词来思考的,通过参考小例子并解释每一步,我们可以让这个过程更容易理解。

在这里插入图片描述

该模型预设了一个包含所有可能单词的词汇表,比如说有50000个。
在这里插入图片描述

我们要遇到的第一个矩阵称为嵌入矩阵(embedding matrix),它为每个单词分配了一个单独的列。
在这里插入图片描述

这些列定义了第一步中每个单词转换成的向量。
在这里插入图片描述

我们称之为 W E W_E WE,就像我们看到的所有其他矩阵一样,
在这里插入图片描述

它的初始值是随机的,
在这里插入图片描述

但会根据数据进行学习和调整。
在这里插入图片描述

在Transformer出现之前,将单词转换为向量的做法在机器学习中已经很普遍,

虽然对于第一次接触的用户来说这可能看起来很奇怪,但它为接下来的一切奠定了基础,所以需要花一些时间来熟悉它。
在这里插入图片描述

我们通常将这种转换称为词嵌入(word embedding),它是一种表示,允许你从几何角度理解这些向量,将它们视为高维空间中的点。
在这里插入图片描述

将三个数字视为三维空间中的坐标很容易,但词向量的维度远远超过这个数量。
在GPT-3中,它们有惊人的12288个维度,正如你所看到的,选择一个有很多不同方向的空间来工作是很重要的。

在这里插入图片描述

就像你可以在三维空间中选择一个二维切片,并将所有点投影到这个切片上一样,为了使一个简单模型输出的词向量能够动态显示,
在这里插入图片描述

我采取了类似的方法,在高维空间中选择一个三维"切片",并将词向量映射到这个切片上进行显示。
在这里插入图片描述

这里的关键思想是,模型在训练过程中调整和微调权重,以确定单词如何具体嵌入为向量,并且它倾向于找到一组嵌入,使得这个空间中的方向具有特定的语义含义。
在这里插入图片描述

对于到目前为止我运行的这个简单的词向量模型,如果我搜索并找到与"tower"最相似的所有词向量,你会发现它们都有类似的"tower感"。
如果你想在家用Python试一试,这就是我用来制作动画的模型。
虽然它不是一个Transformer模型,但它足以说明空间中的方向能够传达特定的语义这一点。

在这里插入图片描述

一个经典的例子是,如果你计算"woman"和"man"向量之间的差异,你会发现这个差异可以可视化为连接一个词的尖端到另一个词的尖端的空间中的一个小向量,而这个差异与"king"和"queen"之间的差异非常相似。
在这里插入图片描述

因此,假设你不知道表示"女性君主"的词,你可以通过将"woman减去man"的方向加到"king"向量上,并搜索最接近该点的词向量来找到它。
至少在理论上是这样。
在这里插入图片描述

虽然这是我正在研究的模型的一个经典例子,但真正的"queen"嵌入实际上比这种方法可能设想的要远一些,
在这里插入图片描述

可能是因为在训练数据中,"queen"不仅仅是"king"的女性版本。
在这里插入图片描述

当我深入研究时,我发现似乎用家庭关系来解释这种现象更合适。
在这里插入图片描述

关键是,在训练过程中,模型发现采用这种嵌入方法更有利,即空间中的一个方向可以编码性别信息。
在这里插入图片描述

另一个例子是,如果你用意大利的向量表示减去德国的向量表示,再加上希特勒的向量表示,结果非常接近墨索里尼的向量表示。
在这里插入图片描述

就好像模型学会了将某些方向与"意大利"特征相关联,
在这里插入图片描述

而将其他方向与二战轴心国领导人相关联。
在这里插入图片描述

我个人最喜欢的一个例子是,在某些模型中,如果你计算"德国"和"日本"向量之间的差异,然后加上"寿司"的向量,你会得到一个非常接近"德国香肠"的结果。
在这里插入图片描述

此外,在搜索最近邻的过程中,我惊喜地发现"猫"与"野兽"和"怪物"非常接近。
在这里插入图片描述

一个有用的数学概念,特别是对于接下来的章节,是两个向量的点积
在这里插入图片描述

可以被看作是衡量它们是否对齐的一种方式。
在这里插入图片描述

从计算的角度来看,点积涉及将对应的元素逐一相乘,然后求和,这很好,因为我们的很多计算看起来都像是权重的总和。
在这里插入图片描述

从几何的角度来看,当两个向量指向相似的方向时,点积为正;
在这里插入图片描述

如果它们垂直,点积为零;
在这里插入图片描述

当它们指向相反的方向时,点积为负。
在这里插入图片描述

例如,假设你正在测试这个模型,通过从"cats"的向量表示中减去"cats"的向量表示。
有可能在这个空间中找到代表复数概念的方向。
在这里插入图片描述

为了测试这一点,我将计算一些特定单数名词的嵌入向量的点积,并将其与相应复数名词的点积进行比较。
在这里插入图片描述

如果你尝试一下,你会发现复数名词的点积通常高于单数名词,这表明它们在某个方向上更紧密地对齐。
在这里插入图片描述

更有趣的是,如果你将这个点积应用于像"one"、“two”、"three"等词的嵌入,你可以看到结果值逐渐增加,就像我们可以定量地衡量模型认为一个词有多"复数"一样。

参考

参考
https://youtu.be/wjZofJX0v4M?si=DujTHghH5dYM3KpZ

相关文章:

翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习三

合集 ChatGPT 通过图形化的方式来理解 Transformer 架构 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习一翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习二翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深…...

基于Seata实现分布式事务实现

Seata 是一个开源的分布式事务解决方案,它提供了高性能和简单易用的分布式事务服务。Seata 将事务的参与者分为 TC(Transaction Coordinator)、TM(Transaction Manager)和 RM(Resource Manager)…...

adss光缆是什么意思

adss光缆,adss光缆型号,adss光缆用途 什么是adss光缆 ADSS用于高压输电线路并利用电力系统输电塔干,整个光缆为非金属介质,自承悬挂于电力铁塔上的电力强度最小的位置。它运用于已建高压输电线路,具有安全性高&#…...

JavaScript异步编程——04-同源和跨域

同源和跨域 同源 同源策略是浏览器的一种安全策略,所谓同源是指,域名,协议,端口完全相同。 跨域问题的解决方案 从我自己的网站访问别人网站的内容,就叫跨域。 出于安全性考虑,浏览器不允许ajax跨域获取…...

出差——蓝桥杯十三届2022国赛大学B组真题

问题分析 该题属于枚举类型&#xff0c;遍历所有情况选出符合条件的即可。因为只需要派两个人&#xff0c;因此采用两层循环遍历每一种情况。 AC_Code #include <bits/stdc.h> using namespace std; string str;//选择的两人 bool ok(){if(str.find("A")!-1…...

UE5(射线检测)学习笔记

这一篇会讲解射线检测点击事件、离开悬停、进入悬停事件的检测&#xff0c;以及关闭射线检测的事件&#xff0c;和射线检测蓝图的基础讲解。 创建一个简单的第三人称模板 创建一个射线检测的文件夹RadiationInspection&#xff0c;并且右键蓝图-场景组件-命名为BPC_Radiation…...

语音识别的基本概念

语音识别的基本概念​​​​​​​ ​​​​​​​ 言语是一种复杂的现象。人们很少了解它是如何产生和感知的。天真的想法常常是语音是由单词构成的&#xff0c;而每个单词又由音素组成。不幸的是&#xff0c;现实却大不相同。语音是一个动态过程&#xff0c;没有明确区分的…...

OpenCV Radon变换探测直线(拉东变换)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 Radon变换可以将原始图像中直线特征的处理问题转化为变换域图像中对应点特征的处理问题,其中对应特征点的横坐标表示原始图像的旋转角度,一般来讲原始图像中的噪声不会分布在直线的特征上。因此,Radon变换在探测…...

六、Redis五种常用数据结构-zset

zset是Redis的有序集合数据类型&#xff0c;但是其和set一样是不能重复的。但是相比于set其又是有序的。set的每个数据都有一个double类型的分数&#xff0c;zset正是根据这个分数来进行数据间的排序从小到大。有序集合中的元素是唯一的&#xff0c;但是分数(score)是可以重复的…...

FPGA第一篇,FPGA现场可编程门阵列,从0开始掌握可编程硬件开发(FPGA入门指南)

简介&#xff1a;FPGA全称Field-Programmable Gate Array&#xff0c;是一种可编程逻辑器件&#xff0c;它通过可编程的逻辑单元和可编程的连接网络实现了灵活的硬件实现。与固定功能的集成电路&#xff08;ASIC&#xff09;相比&#xff0c;FPGA具有更高的灵活性和可重新配置性…...

C#实现简单音乐文件解析播放——Windows程序设计作业2

1. 作业内容 编写一个C#程序&#xff0c;要求实现常见音乐文件的播放功能&#xff0c;具体要求如下&#xff1a;     1). 播放MP3文件&#xff1a; 程序应能够读取MP3文件&#xff0c;并播放其中的音频。     2). 播放OGG文件&#xff1a; 应能够播放ogg文件。     …...

Python数据爬取超简单入门

## 什么是网络爬虫&#xff1f; 网络爬虫是一种自动浏览器程序&#xff0c;能够自动地从互联网获取数据。爬虫的主要任务是访问网页&#xff0c;分析网页内容&#xff0c;然后提取所需的信息。爬虫广泛应用于数据收集、数据分析、网页内容监控等领域。 ## 爬虫的基本步骤 1.…...

Dreamweaver 2021 for Mac 激活版:网页设计工具

在追求卓越的网页设计道路上&#xff0c;Dreamweaver 2021 for Mac无疑是您的梦幻之选。这款专为Mac用户打造的网页设计工具&#xff0c;集强大的功能与出色的用户体验于一身。 Dreamweaver 2021支持多种网页标准和技术&#xff0c;让您能够轻松创建符合现代网页设计的作品。其…...

【Git】Git学习-15:分支简介和基本操作

学习视频链接&#xff1a;【GeekHour】一小时Git教程_哔哩哔哩_bilibili​编辑https://www.bilibili.com/video/BV1HM411377j/?vd_source95dda35ac10d1ae6785cc7006f365780https://www.bilibili.com/video/BV1HM411377j/?vd_source95dda35ac10d1ae6785cc7006f365780 git bran…...

浏览器提示网站“不安全”原因及解决方法

是否经常会遇到访问的网站被浏览器提示访问不安全&#xff1f;那么&#xff0c;浏览器提示网站不安全通常有哪些原因又该如何处理这种不安全提醒&#xff0c;以下总结了几个原因及相应的处理办法&#xff1a; 一、网站管理者原因排查及处理办法&#xff1a; 1、网站没有部署S…...

Jmeter详细学习思路和教程

目录 1、JMeter环境准备 1.1、介绍 1.2、与LoadRunner比较 1.3、前提条件 1.4、安装配置 2、JMeter脚本 2.1、测试计划 2.2、线程组 2.3、Sampler 2.4、HTTP请求 2.5、查看结果树 2.6、HTTP Cookie管理器 2.7、HTTP信息头管理器 2.8、响应断言 2.9、参数化 3、JM…...

钉钉开放平台创建企业内部H5微应用或者小程序

前言&#xff1a; 在当今企业数字化转型的浪潮中&#xff0c;创建企业内部H5微应用或小程序已成为提升工作效率和促进内部沟通的重要举措。发话不多说本文将介绍如何利用钉钉平台快速创建这些应用&#xff0c;让企业内部的工作更加便捷高效。 步骤 1.在浏览器打开链接…...

Linux中每当执行‘mount’命令(或其他命令)时,自动激活执行脚本:输入密码,才可以执行mount

要实现这个功能&#xff0c;可以通过创建一个自定义的mount命令的包装器&#xff08;wrapper&#xff09;来完成。这个包装器脚本会首先提示用户输入密码&#xff0c;如果密码正确&#xff0c;则执行实际的mount命令。以下是创建这样一个包装器的步骤&#xff1a; 创建一个名为…...

【网络协议】----IPv6协议报文、地址分类

【网络协议】----IPv6协议简介 【网络协议】----IPv6协议简介IPv6特点IPv4 和 IPv6报文结构IPv6报文格式-拓展报头 IPv6地址分类IPv6地址表示IPv6单播地址可聚合全球单播地址链路本地地址唯一本地地址特殊地址补充 接口标识&#xff08;主机位&#xff09;生成方法通过EUI-64规…...

Llama改进之——SwiGLU激活函数

引言 今天介绍LLAMA模型引入的关于激活函数的改进——SwiGLU1&#xff0c;该激活函数取得了不错的效果&#xff0c;得到了广泛地应用。 SwiGLU是GLU的一种变体&#xff0c;其中包含了GLU和Swish激活函数。 GLU GLU(Gated Linear Units,门控线性单元)2引入了两个不同的线性层…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别

一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...

FFmpeg 低延迟同屏方案

引言 在实时互动需求激增的当下&#xff0c;无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作&#xff0c;还是游戏直播的画面实时传输&#xff0c;低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架&#xff0c;凭借其灵活的编解码、数据…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明&#xff1a;server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强&#xff0c;React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 &#xff08;1&#xff09;使用React Native…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时&#xff0c;你可能需要保留重要的数据&#xff0c;例如通讯录。好在&#xff0c;将通讯录从 iPhone 转移到 Android 手机非常简单&#xff0c;你可以从本文中学习 6 种可靠的方法&#xff0c;确保随时保持连接&#xff0c;不错过任何信息。 第 1…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...