改变AI历史的Transformer是如何帮助LLM大模型工作的?看图解密Transformer原理,看不懂算我输!

图片

在过去的几年里,大型语言模型(LLM)的出现,为长达数十年的智能机器构建的探索中带来了巨大的飞跃。

这项基于试图模拟人类大脑的研究技术,也在近几年催生了一个新领域——Generative AI 生成式人工智能,简单理解就是可以

通过模仿人类能力和水平,生成合理且复杂的文本、好看图像甚至是计算机的代码。

2017年12月,Vaswani和研究团队用一篇“Attention is all you need”的论文彻底开启了AI的新纪元,论文提出了一种新的利用自注意力概念来处理顺序输入数据的变换器架构-Transformer,这使得对长距离依赖关系的更有效的处理成为可能。这个问题在之前一直是传统RNN架构难以克服的一个挑战。而这个Transformer就是大型语言模型(LLM)的基础,也是我们今天所见证的生成式人工智能强大能力的基础。

LLM一直为业内所公认的发力点,是通过撰写和分析文本提高生产力,而这个能力也恰恰是它对人类构成威胁的原因。高盛认为,这可能使大型经济体中相当于3亿全职工作者面临自动化的风险,导致大规模失业。

随着LLM以及所引领的生成式AI能力渐渐出现在我们生活的各个领域,了解LLM如何生成文本对我们来说意义重大,因为了解了它背后的原理,可以帮助我们理解这些模型是如何成就了各种多才多艺产品,同时也可以帮我们发现生成式AI还能在什么方面帮助到我们,与其担心被替代,不如主动出击,成为AI能力的驾驭者!

接下来我们用通俗易懂的语言,一步步看看LLM是怎么发挥威力的。

【理解阶段】把文字翻译成LLM看得懂的的语言

图片

首先,一段文字被分解成一个个的标记(tokens),这里用到的Embedding技术小纸条在之前的文章中为大家讲过,向量可以理解为就是大模型理解世界的语法。这些标记(tokens)是能够被编码的基本单元。在图中的例子中,我们将每个完整的单词视为一个独立的标记。

要弄清楚一个词的意思,比如例子中的“work”,大型语言模型(LLMs)会用大量的学习资料来研究它,同时关注它旁边的词。这些学习资料来源于网上的文本,量级非常的大,最新的GPT-4O甚至用到了1.8万亿。

最后,我们收集了一大堆词,其中一些在学习材料中是和“work”一起出现的(图中黄色的单词),还有一些词是没和“work”挨着的(图中灰色的单词)。

图片

模型在处理这些词的时候,会创建一个数值列表,我们称之为向量。它会根据每个词和“work”在训练材料里的距离来调整这个列表。这个列表就是词嵌入work embedding,它帮助模型捕捉到词的含义。

图片

一个词嵌入可以包含数百个值,每个值代表单词意义的不同方面,就像是给单词拍一张多角度的照片。每个值都像是从不同角度捕捉到的特点,比如单词的用法、它通常出现的语言环境等,咱么国家这种用法就非常多,“我去方便一下”和“行个方便”。再举个例子,比如我们要描述一个房子,我们会提到它有多少卧室、浴室、它的位置和类型,词嵌入通过数值来描述单词的这些语言属性。

图片

生成这些特征的方法让我们无法精确知道每个数值具体指代的内容,但那些我们认为在用法上相似的单词,它们的嵌入向量看起来会差不多。这就像是相似的单词在数学上也能找到它们的相似性。比如下面这张图,用颜色来直观的标记数据在词嵌入过程中的不同维度的数值,可以看出来意思相近的词,比如“sea”和“ocean”,呈现的大体色块更为相近。

图片

如果我们把一个词嵌入里的成百上千个数值减少到只有两个,就像把复杂的地图简化成只有两个点,这样我们就能更容易地看出不同单词在意义上的距离。

图片

通过这种方法,我们可以识别出代词或交通方式等意思相近词的群体,这种量化文本的能力就是模型开始撰写文本的首要步骤啦

图片

小纸条在之前的文章中为大家详细讲过上述向量Embedding有关的知识,这是大模型理解世界的语法。但是仅仅靠向量化还不足以使LLM的能力像如今这般强大,这背后很重要的加持,就来自我们今天要讨论的Transformer,它的重要程度甚至可以被看作AI大模型的心脏。

【学习阶段】Transformer训练

Transformer变换器不是只看一个词,而是一次性看一整句话、一段文字,甚至是整篇文章,这样它就能更好地理解意思。让计算机在翻译或者写东西的时候更准确,让大型语言模型更有效率。

Transformer变换器架构的一个关键概念是自注意力(self-attention)。正是这种机制让大型语言模型(LLMs)能够理解单词之间的关系。它会观察文本中的每个标记(token),它仔细查看一段话里的每一个单词,然后找出哪些词对理解这个词最有帮助,这样它就能更好地理解整个句子的意思。

在变换器出现之前,最先进的人工智能翻译方法是循环神经网络(RNNs),它们会逐个扫描句子中的每个单词并顺序处理。

图片

使用自注意力机制,变换器能够同时计算句子中的所有单词,模型能够一下子理解整个句子里的所有单词,而不是一个接一个地看。捕捉到这种上下文信息来全面理解句子的方式,让大型语言模型在分析语言的时候更加得心应手。

图片

Transformer 由两个基本组件组成:编码器和解码器。编码器负责对输入数据进行编码,例如,可以是一个单词序列。然后它获取输入序列,再应用多层自注意力和前馈神经网络来,捕获句子中的关系和特征并学习有意义的表示。

编码器做的事就是理解,解码器就是生成。

【学习阶段】不同词语在不同语境下的不同用法

在上面这个例子中,一次性评估整个句子意味着,Transformer变换器模型一下子看了整个句子,它就能明白“interest”这个词在这里是作为一个名词,用来表达一个人的观点或兴趣。

图片

如果我们调整句子中的一些内容,模型也会知道这回“interest”不再代表兴趣,而是金融领域的收益的意思

图片

如果我们把几个句子放在一起,模型还是能根据每个词周围的上下文来理解它们的意思。比如“interest”这个词第一次出现的时候,模型会特别注意它旁边的“no”和“in”,这样就能正确理解它的意思。

图片

对于第二个“interest”,模型特别关注了“rate”和“bank”这两个词。

图片

这个特性对于生成好的文章就非常关键。如果没有它,那些在不同情境下意思不同的词就可能被用错和理解错啦。

图片

自注意力机制同时是有效的,这就意味着,当你在写有关“interest”对应是利率的意思时,就不会使用到“enthusiasm”(热情)这个词。

图片

【学习阶段】“她”“他”“你”等代称如何被模型学习

无论是哪种语言体系,代词都是贯穿上下文的关键内容。比如在下面这个句子里,模型通过自注意力机制就能分析出来,这里的“it”最可能提到的是一只狗(颜色越深代表关联或者说相似度越大)。

图片

如果我们原本的句子中的“hungry”(饥饿的)换成“delicious”(美味的),模型就会重新分析一下,然后它就会知道这回的“it”最可能在说骨头。

图片

总结一下,自注意力在语言处理方面的好处随着规模的扩大而增加。它允许大型语言模型(LLMs)从超出句子边界的上下文中获取信息,给予模型对单词使用方式和时机更深入的理解,让大型语言模型能够不仅局限于一句话,而是能从更广阔的context上下文中学习,这样模型就能更懂一个词在什么时候、怎么用最合适。

图片

【生成阶段】Transformer如何帮助模型生成内容

以上理解环节讲差不多了,我们开始看看生成环节。上面我们也提到了编码器和解码器是组成Transformer的两个部分,理解学习还得靠编码器,这生成环节,就是解码器的主战场了。

解码器从编码器获取编码表示并产生输出序列。在机器翻译或文本生成等任务中,解码器根据从编码器接收到的输入,再生成翻译后的序列,再后面的生成环节会展开说说解码器是怎么工作的。简单来说与编码器类似,也由多层自注意力和前馈神经网络组成,只是额外包含一个注意力机制,使其能够专注于编码器的输出。然后,这允许解码器在生成输出时考虑来自输入序列的相关信息。

我们结合图来看,Transformer帮助大模型把一段文字分解成一个个小块,转换成机器能理解的代码后,我们就得到了一个数据块。这个数据块不仅包含了单词的意思,还有单词在句子中的位置,以及它们之间是如何相互联系的。

图片

简单来说,模型的基本任务就是去预测序列中的下一个词,并且反复这样做,直到生成的输出完整为止。

在这个过程中呢,模型会计算每个单词(token)成为下一个词的机会有多大,给每个单词一个概率分,这个分数就代表着这个单词接下来出现的可能性有多高,模型会不断来做这个计算,直到它对于自己生成的文本非常的满意。

图片

但这种单独预测下一个词的方法——被称为“贪婪搜索”——可能会引入问题。有时候,尽管每个单独的标记可能是最合适的下一个选择,但整个短语组合起来可能就不够相关。

并不是说这种方法总是错的,但有时它可能不会给出你期望的结果。

改写成易懂的语言:这种一次只猜一个词的方法,就像是在“贪心”地选词,被称为“贪婪搜索”。这种方式有时候可能会出问题。因为就算每个词单独看都是最合适的,但连在一起可能就不太对劲了。这并不是说它总是错的,只是有的时候会不太符合预期。

为了提高输出的质量,Transformer变换器采用很多聪明的方法来解决这个问题,其中一个就叫做**“束搜索”**。这种方法不会只关注序列中的下一个词,而是会看一组词整体出现的可能性有多大。

图片

这样做能产生更好的结果,让模型写出更连贯、更像人类写出的文本了!

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

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

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

相关文章

4.制作的docker镜像

最近工作需要,制作docker镜像,用做构建使用。 1.拉取基础镜像ubuntu:22.04 docker pull ubuntu:22.042.运行ubuntu容器 docker run --privileged -d --name ubuntu_build ubuntu:22.04 sleep infinity3.进入运行的容器 docker exec -it ubuntu_build …

数据结构:队列详解 c++信息学奥赛基础知识讲解

目录 一、队列概念 二、队列容器 三、队列操作 四、代码实操 五、队列遍历 六、案例实操 题目描述: 输入格式: 输出格式: 输入样例: 输出样例: 详细代码: 一、队列概念 队列是一种特殊的线性…

激励视频广告的eCPM更高,每天的展示频次有限制吗?

在APP发展初期,由于DUA量级有限,所需的广告资源比较少,往往接入1-2家广告平台就能满足APP用户每日需要的广告展示量。而随着APP用户规模的扩大、广告场景的不断丰富,开发者要提升APP整体广告变现收益,一是可以尽可能多…

nacos使用shared-configs设置多个配置文件后,配置中修改无法动态更新 解决办法

问题描述 今天使用nacos去做配置分离,启动成功了,配置也读取了,但是当我修改nacos中的配置时,发现数据无法动态更新 下面是测试接口的调用 可以看到我修改配置后,接口返回的参数依然是老参数 问题排查 首先检查了…

重生奇迹MU新手攻略:如何一步步往大佬发展

装备强化攻略: 提纯装备:通过提纯装备可以提升基础属性,选择合适的装备进行提纯可以获得更好的效果。 镶嵌宝石:使用宝石进行装备镶嵌可以增加装备的属性,根据需要选择适合的宝石进行镶嵌。 洗练装备:通…

大模型赋能全链路可观测性:运维效能的革新之旅

目录 全链路可观测工程与大模型结合---提升运维效能 可观测性(Observability)在IT系统中的应用及其重要性 统一建设可观测数据 统一建设可观测数据的策略与流程 全链路的构成和监控形态 云上的全链路可视方案 为什么一定是Copilot 大模型的Copilo…

jenkins设置定时构建语法

一、设置定时 定时构建的语法是*** * * * ***。 第一个*表示分钟,取值范围是0~59。例如,5 * * * *表示每个小时的第5分钟会构建一次;H/15 * * * 或/15 * * * 表示每隔15分钟构建一次; 第2个表示小时,取值范围是0~23。…

气膜建筑审批流程及现状分析—轻空间

气膜建筑作为一种新兴的建筑形式,以其快速建造、成本低廉和灵活多变的优势在各个领域得到了广泛应用。然而,气膜建筑在我国尚未被纳入正式的建筑规范,这使得其审批流程与传统建筑有显著差异。轻空间将详细探讨气膜建筑的审批流程及其在实际操…

全局mixins

一、文章由来 在开发过程中发现在钩子函数位置直接使用dicts就能直接绑定数据了,由此溯源发现了自己的盲区 二、局部使用 // myMixin.js文件 var myMixin {created: function () {this.hello()},methods: {hello: function () {console.log(hello from mixin!)…

Transformers 安装与基本使用

文章目录 Github文档推荐文章简介安装官方示例中文情感分析模型分词器 Tokenizer填充 Padding截断 Truncation google-t5/t5-small使用脚本进行训练Pytorch 机器翻译数据集下载数据集格式转换 Github https://github.com/huggingface/transformers 文档 https://huggingface…

边缘计算VNC智能盒子如何助力HMI设备实现二次开发?

HMI(Human-Machine Interface)又称人机界面,是用户与机器之间交互和通信的媒介。今天带你了解智能盒子如何助力HMI设备实现二次开发? HMI设备被广泛应用在工业自动化中,具有显示设备信息,实时监测&#xf…

【Linux杂货铺】Linux学习之路:期末总结篇1

第一章 什么是Linux? Linux 是 UNIX 操作系统的一个克隆;它由林纳斯 本纳第克特 托瓦兹从零开始编写,并在网络上众多松散的黑客团队的帮助下得以发展和完善;它遵从可移植操作系统接口(POSIX)标准和单一 UNIX 规范…

短信群发策略优化:如何有效降低退订率?

在短信群发营销中,退订率的上升常常影响营销效果。为了降低退订率,提高客户黏性,以下是一些实用的策略建议: 1.合理控制发送频率 过多的短信发送会给客户带来骚扰感,导致退订。因此,应合理控制短信的发送频…

排序算法(C语言版)

前言 排序作为生产环境中常见的需求之一,对整个产品有举足轻重的影响,可以说使用一个合适的排序算法是业务逻辑中比较重要的一部分。今天我们就来介绍常见的排序算法以及实现 排序 所谓排序无非就是按照特定的规则对一组数据就行顺序化。 常见的排序有…

智能语音热水器:置入NRK3301离线语音识别ic 迈向智能家居新时代

一、热水器语音识别芯片开发背景 在科技的今天,人们对于生活品质的追求已不仅仅满足于基本的物质需求,更渴望通过智能技术让生活变得更加便捷、舒适。热水器作为家庭生活中不可或缺的一部分,其智能化转型势在必行。 在传统热水器使用中&#…

论文导读 | 事件因果关系抽取和识别

导读 目前,对事件因果关系的研究主要分为两类任务:事件因果关系识别(Event Causality Identification,ECI)和事件因果关系抽取(Event Causality Extraction)。事件因果关系识别旨在检测文本中两…

v5 实现动态时移播放

背景 有用户提出需要从当前时间前一段时间开始播放,比如 10s 前开始播放,或者 1 分钟前开始播放等。 在 v4 中有一个时光回溯功能,可以在配置中指定缓存时间,然后播放时可以指定 submode: 2来播放。 但是弊端是无法动态指定时间…

MySQL实训

项目名称与项目简介 股票交易系统是一个综合性的金融服务平台,它提供了股票买卖、交易查询、用户管理、股票信息管理以及资金账户管理等功能。系统旨在为用户提供一个安全、高效、便捷的股票交易环境,让用户能够实时掌握市场动态,做出合理的…

使用模板方法设计模式封装 socket 套接字并实现Tcp服务器和客户端 简单工厂模式设计

文章目录 使用模板方法设计模式封装套接字使用封装后的套接字实现Tcp服务器和客户端实现Tcp服务器实现Tcp客户端 工厂模式 使用模板方法设计模式封装套接字 可以使用模块方法设计模式来设计套接字 socket 的封装 模板方法(Template Method)设计模式是一…

CORE Mobility Errorr的调试

在运行CORE tutorial 3中的mobility示例时,出现如下错误: 当看到这个问题的时候,并没有仔细去分析日志和现象,在core-daemon的进程打印界面只看了一下最后的出错堆栈: 2024-06-27 10:43:48,614 - ERROR - _server:_ca…