大模型(LLM)内部工作流程可视化

1. 概述

直观的了解大模型的工作原理对大模型开发十分重要,今天给大家介绍一个来自佐治亚理工学院和 IBM 的研究人员研发的一个的Transformer可视化工具。这个工具可以让我们可以全面了解变压器内部发生的情况。它专为交互式使用而设计,可以直接从我们的浏览器了解 Transformer 模型的工作原理,尤其是使用 GPT-2 模型同时还可以自定义文本来尝试,并实时观看 Transformer 的内部组件和操作协同工作以预测下一个单词。下面是这个工具的几个操作参数:

2.温度调整

温度是一个参数,它控制LLM 的输出随机性它直接影响模型在生成文本时如何从可能的下一个单词中进行选择。例如:假设我们有一个语言模型,它预测句子“Data visualization empowers users to _____”中的最后一个单词。给定句子的先前单词和先前的训练,语言模型将尝试用合理的最终token填充空白。

现在,点击输入句子的位置旁边的 “生成” 按钮。大模型将根据设定的 Temperature 计算概率分布,并输出下一个单词。

如果你将温度设置为 0.1,LLM 将始终生成最有可能的下一个单词,这对于回答问题等事情非常有用。但是,如果您将温度设置为 1,则 LLM 将更有可能生成不太可能的下一个单词,这可能会插产生更具创意的文本。

3. 嵌入(Embedng)

仔细看看 transformer Explainer 中的 “Embedding” 部分。这部分将向我们展示 Token 是如何转换的。那么,嵌入是怎么回事呢?当你输入文本时,它会通过四个步骤转换为最终的嵌入。首先,token是模型处理的任何文本块 — 它可以是一个完整的单词、单词的一部分、单个字符,甚至是标点符号。

例如,我们以“Data visualization empowers users to”这句话为例。当它被标记化时,它被拆分为像 [“Data”, “visualization”, “empowers”, “users”,“ to”] 这样的标记。然后,每个令牌都会被赋予一个唯一标识符,例如模型在处理过程中使用的特殊标签。这样,模型就确切地知道如何处理句子的每一部分,因为它发挥了它的魔力。

然后,令牌嵌入步骤开始。这会将每个单词转换为数字数据,有点像将单词转换为数字。这使模型能够理解和捕获不同标记在含义上的相似程度。例如,表示相似事物的 token 将具有相似的 embedding vector。这就像模型对共享共鸣的单词进行分组的方式!接下来,我们有位置编码。此步骤注入了一些魔力,将有关词序的信息添加到模型中。

我们为每个单词的嵌入添加一个特殊向量,以指示它在句子中的位置。这些向量设计得很巧妙,因此模型可以从中学习以理解单词序列。这就像给模型提供提示,弄清楚哪个单词在前,哪个词在后,依此类推,帮助它理解整体含义

4.多头注意力

嵌入被用于多头自我注意的,它可以帮助模型了解标记之间的复杂关系和依赖关系,无论它们在句子中相距多远。根据这个向量,我们计算三个重要的输入:Query、Key 和 Value。这些允许模型根据当前标记的 Query 提供的上下文关注输入句子的不同部分。这意味着模型可以更多地关注句子中任何给定时刻最重要的内容。

注意力分数决定了每个token的 Value 对 “Data” 的最终输出表示的影响程度。对序列中的每个 token 重复此过程,使模型能够捕获 input 数据中的复杂关系和依赖关系。

注意力分数的计算方法是将 Query for “data” 的点积与所有token的 Key 进行计算。在计算了点积之后,我们将 softmax 函数应用于这些分数,以将它们转换为注意力权重。此步骤可确保权重之和为 1,从而允许将它们解释为概率。最后,我们使用从 softmax 步骤获得的注意力权重,通过获取所有标记的值 (V) 的加权和来计算 “数据” 的输出。

接下来,他们使用 dropout 来改进泛化并防止过拟合。这是通过在训练期间随机禁用一部分神经元来完成的。层归一化还用于稳定和加速深度神经网络的训练。它通过减去平均值并将其除以标准差来标准化层的输出。在此之后,使用模型学习的参数对输出进行缩放和移动。最终输出结果是通过取 Value。

工具使用地址

Transformer Explainer: LLM Transformer Model Visually ExplainedAn interactive visualization tool showing you how transformer models work in large language models (LLM) like GPT.icon-default.png?t=O83Ahttps://poloclub.github.io/transformer-explainer/

5. 参考

  • 27
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值