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

学渣适用版——Transformer理论和代码以及注意力机制attention的学习

参考一篇玩具级别不错的代码和案例

自注意力机制

注意力机制是为了transform打基础。
参考这个自注意力机制的讲解流程很详细,
但是学渣一般不知道 key,query,value是啥。
结合B站和GPT理解
在这里插入图片描述

注意力机制是一种常见的神经网络结构,用于处理序列数据或者其他类型的数据,其中的关键术语包括 key,query 和 value。

Key(键)是一个向量,用于表示输入数据中的某个特征,通常是通过矩阵乘法和非线性变换得到的结果。
Query(查询)也是一个向量,用于表示注意力机制当前所关注的部分。在每个时间步骤,注意力机制都会根据输入的
query,对输入数据进行加权处理。 Value(值)是一个向量,用于表示输入数据中的具体数值或特征。
具体地说,注意力机制的运作过程是这样的:首先,将输入数据经过线性变换得到 key,query 和 value 向量。然后,针对每个
query 向量,计算它与所有 key 向量之间的相似度得分,并将这些得分进行 softmax 处理,以得到每个 key
向量的权重。最后,将所有 key 向量根据对应的权重加权求和,得到一个加权平均的 value 向量,作为最终的输出。

通过这种方式,注意力机制能够在输入数据中寻找相关的部分,并且根据当前的查询进行自适应的加权处理。这种机制被广泛应用于自然语言处理、语音识别、计算机视觉等领域。

Regenerate response

【大白话浅谈【注意力机制】】 【精准空降到 02:42】 https://www.bilibili.com/video/BV1Ff4y187nr/?p=3&share_source=copy_web&vd_source=dab83d5b330f632d6bccec4d78fd0119&t=162
在这里插入图片描述

transform解读

这块作者解释的 很不错!

也就是说,任意两个相距k个时间步的位置编码向量的内积都是相同的,这就相当于蕴含了两个时间步之间相对位置关系的信息。此外,每个时间步的位置编码又是唯一的,这两个很好的性质使得上面的公式作为位置编码是有理论保障的
在这里插入图片描述
本学渣不是很理解这里的key和value 有什么区别

划重点 key和value的区别

其实就是 键值对,用key和query计算结果,给value加权重!!!
感谢活的明白大哥,他果然活的很明白。
在这里插入图片描述

进阶资源推荐

知乎的哈弗论文解读:
搞懂Transformer结构,看这篇PyTorch实现就够了(上) - 忆臻的文章 - 知乎
另一个知乎文章

https://www.ylkz.life/deeplearning/p10391698/ 还有这位月来客栈写得,把原理和pytorch的源码都讲了遍,就是写得太详细了。可以参考下。

http://www.lryc.cn/news/20872.html

相关文章:

  • 网上这么多IT的培训机构,我们该怎么选?
  • 数据结构与算法—跳表(skiplist)
  • 【C++】5.C/C++内存管理
  • 一文让你彻底理解关于消息队列的使用
  • 条件期望3
  • 第四届蓝桥杯省赛 C++ B组 - 翻硬币
  • linux shell 入门学习笔记14 shell脚本+数学计算
  • ESP32设备驱动-MAX30100心率监测传感器驱动
  • RTD2169芯片停产|完美替代RTD2169芯片|CS5260低BOM成本替代RTD2169方案设计
  • urho3d数据库
  • 141. 周期
  • Windows下命令执行绕过技巧总结(渗透测试专用)
  • mindspore的MLP模型(多层感知机)
  • 【论文极速读】VQ-VAE:一种稀疏表征学习方法
  • Flask-Blueprint
  • png图片转eps格式
  • English Learning - L2 语音作业打卡 Day2 2023.2.23 周四
  • 低频量化之 可转债 配债 策略数据 - 全网独家
  • 论文阅读_DALLE-2的unCLIP模型
  • 软件测试5年,历经3轮面试成功拿下华为Offer,24K/16薪不过分吧
  • 【软件工程】课程作业(三道题目:需求分析、概要设计、详细设计、软件测试)
  • 05 DC-AC逆变器(DCAC Converter / Inverter)简介
  • 带你深层了解c语言指针
  • 2-MATLAB APP Design-下拉菜单栏的使用
  • 七、HTTPTomcatServlet
  • LeetCode 热题 C++ 198. 打家劫舍
  • C语言学习笔记——程序环境和预处理
  • 「JVM 高效并发」Java 内存模型
  • C语言刷题(2)——“C”
  • 第一个 Spring MVC 注解式开发案例(初学必看)