论文笔记:The Expressive Power of Transformers with Chain of Thought

ICLR 2024 reviewer 评分 6888【但是chair 很不喜欢】

1 intro

  • 之前的研究表明,即使是具有理想参数的标准Transformer,也无法完美解决许多大规模的顺序推理问题,如模拟有限状态机、判断图中的节点是否相连,或解决矩阵等式问题
    • 这里的直觉是,Transformer缺乏递归连接,而解决这些顺序推理问题需要递归
    • 实证上,受这些结果启发的推理问题无法被最先进的变压器语言模型如ChatGPT和GPT-4所解决,且GPT-4的推理性能与问题的计算图深度负相关
    • ——>结果表明某些类型的顺序推理对变压器构成挑战,并激励了解决这一问题的扩展
  • 一种在提升Transformer顺序推理方面已经实证成功的方法是增加所谓的思考链(CoT)或草稿本
    • 这些方法允许Transformer在回答前输出一系列中间令牌,而不是在读入输入后立即回答
    • 直观上,这种方法可以在顺序推理问题上解锁更大的表现力,因为模型可以将每个中间令牌作为一种递归状态使用
  • 论文描述在生成答案前采取中间步骤的Transformer解码器的推理能力,并将其与没有中间步骤的Transformer进行比较
    • 提供了Transformer能力的上限和下限,取决于t(n):允许的中间步骤数量作为输入大小n的函数。
      • 主要关注三种情况:
        • 对数步骤(当t(n) = Θ(log n))
        • 线性步骤(当t(n) = Θ(n))
        • 和多项式步骤
  • 无中间步骤
    • 没有任何中间步骤的Transformer解码器只能解决属于相当小的电路复杂度类TC^0和相关逻辑类的问题
      • ——>基本的Transformer远非图灵完备:它们甚至无法解决比TC^0更大的类的完备问题,如模拟自动机(NC1-完备)、决定有向图连通性(NL-完备)或解决线性等式(P-完备)
  • 对数步骤
    • 通过对数数量的中间步骤,我们展示了Transformer的上界从TC0略微扩展到L
    • ——>这意味着具有对数数量中间步骤的Transformer可能获得了一些能力,但它们仍然无法解决像有向图连通性这样的NL-完备问题或解决线性等式这样的P-完备问题
  • 线性步骤
    • 线性中间步骤允许具有预投影范数的Transformer模拟自动机(NC1-完备)
      • 如果没有中间步骤(除非TC0等于NC1),否则无法完成这一任务
  • 多项式步骤
    • 通过多项式数量的解码步骤,论文展示了具有严格因果注意力和预投影范数的Transformer等同于P类。
    • 据我们所知,这是Transformer类与标准复杂度类之间的首次等价。

2 主要结论

2.1 具有中间解码的Transformer的能力

  • TIME(t(n)) 为存在一个在时间 O(t(n)) 内运行并接受语言 L 的图灵机的语言类
  • \widetilde{TIME(t(n))}为在TIME(t(n)log^kn) 中的问题类
    • 对于某些 k,这是当 t(n) ≥ n 时有意义的
  • SPACE(s(n)) 为存在一个带宽受 O(s(n)) 限制的图灵机接受语言 L 的语言类
  • CoT(t(n)) 表示一些使用 t(n) 解码步骤的变压器识别的语言集

——>具有 t(n) 步骤的Transformer与标准时间/空间复杂性类之间的以下关系

2.2 具有思考链的Transformer的能力

  • 方程(1)的左侧表明,具有 Θ(n) 步骤的Transformer解码器可以模拟如自动机或计数机这类的实时计算模型
    • 在复杂性理论的标准假设下,没有解码步骤的Transformer无法模拟所有自动机
    • ——>线性数量的解码步骤显著增强了变压器的能力
  • 同样,方程(1)的左侧意味着具有二次数量步骤的Transformer可以实现线性时间算法(用于随机访问图灵机)来解决有向图连通性问题,这是一个超出标准Transformer能力范围的问题
  • 具有多项式数量解码步骤的变压器可以解决线性等式、霍恩子句满足性和通用上下文无关识别问题,这些都是 P-完备问题,标准变压器已知无法表达

2.3 具有思考链的Transformer的局限性

  • 方程(1)的右侧确定了依赖于 t(n) 和 n 的变压器解码器中间步骤的两个上界。
  • 论文探讨了这一总结果在不同 t(n) 情形下的含义:
    • 对数步骤:具有 O(log n) 中间步骤的变压器解码器只能识别 L = SPACE(log n) 中的语言
      • ——>具有 O(log n) 中间步骤的变压器无法解决如有向图连通性这样的 NL-或 P-完备问题,就像没有中间解码步骤的变压器一样
    • 线性步骤:具有 O(n) 中间步骤的变压器解码器只能识别同时位于\widetilde{TIME(n^2)}和 SPACE(n) 中的语言
      • 由于 SPACE(n) 属于上下文敏感语言——>具有线性步骤的变压器最多可以识别上下文敏感语言
      • 结合我们的下界,这表明具有 Θ(n) 步骤的变压器解码器在乔姆斯基层级结构中处于正则语言和上下文敏感语言之间
    • 多项式步骤:
      • 如果 t(n) = O(n^c) 对于某些 c,我们得到的上限是P= \bigcup_0^\infty TIME(n^c)
      • 结合我们的下界,这表明具有多项式数量步骤的变压器解码器精确地识别 P 类问题
      • ——>多项式数量的步骤将Transformer转化为强大的推理器,尽管在实践中使用大型Transformer运行多项式数量的前向传递可能是不切实际的

后面的推导,感兴趣的可以看。。。实在是看不懂。。。

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

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

相关文章

系统架构最佳实践 -- 统一身份认证系统

目录 1.系统架构设计: 2.用户认证与授权: 3.用户身份管理: 4.安全性保障: 5.日志记录与审计: 6.高可用性与容错性: 7.用户体验优化: 随着互联网的快速发展和应用的普及,人们在…

数据结构,算法(一)--排序

排序 冒泡排序 两次for循环 一次循环可以将一个数据排好序&#xff0c;那两次for循环叠加就可以将整个数组的数据排好序。 //arr[i]>(<)arr[i1] 交换 ​ //走一轮用的代码 for(int i 0;i<arr.length-1;i){if(arr[i]>arr[i1]){//交换//并且要注意 i<arr.len…

博客摘录「 Python Web 开发简介」2024年4月10日

【深度之眼】【OpenCV】笔记汇总_opencv深度之眼笔记-CSDN博客

Linux操作系统中关于用户管理的操作

创建新用户 useradd 【选项】 用户名 在/etc/passwd中以追加的方式在passwd的最后一行添加用户信息。 可以使用命令tail -n 1/etc/passwd查看文件的最后一行内容。 ls /home/首先/home/这是普通用户的家目录&#xff0c; 在/home/下会有一个跟用户名同名的家目录&#xf…

《经典论文阅读2》基于随机游走的节点表示学习—Deepwalk算法

word2vec使用语言天生具备序列这一特性训练得到词语的向量表示。而在图结构上&#xff0c;则存在无法序列的难题&#xff0c;因为图结构它不具备序列特性&#xff0c;就无法得到图节点的表示。deepwalk 的作者提出&#xff1a;可以使用在图上随机游走的方式得到一串序列&#x…

荔枝派LicheePi 4A RISCV板子支持的好玩的AI模型

荔枝派LicheePi 4A 是基于 Lichee Module 4A 核心板的 高性能 RISC-V Linux 开发板&#xff0c;以 TH1520 为主控核心&#xff08;4xC9101.85G&#xff0c; RV64GCV&#xff0c;4TOPSint8 NPU&#xff0c; 50GFLOP GPU&#xff09;&#xff0c;板载最大 16GB 64bit LPDDR4X&…

给自己的机器人部件安装单目摄像头并实现gazebo仿真功能

手术执行器添加摄像头 手术执行器文件夹surgical_new内容展示如何添加单目摄像头下载现成的机器人环境文件启动仿真环境 手术执行器文件夹surgical_new内容展示 进入src文件夹下选择进入vision_obliquity文件夹 选择launch 有两个可用gazebo中rviz展示的launch文件&#xff0…

Github Coplit的认证及其在JetBrains中的使用

原文地址&#xff1a;Github Coplit的认证及其在JetBrains中的使用 - Pleasure的博客 下面是正文内容&#xff1a; 前言 今天分享一个可有可无的小技巧&#xff0c;水一篇文。 如标题所述&#xff0c;Github Coplit的认证及其在JetBrains中的使用 正文 介绍JetBrains JetBrain…

《经典论文阅读1》YouTubeDNN—基于深度学习的搜推系统开山之作

论文链接&#xff1a; https://static.googleusercontent.com/media/research.google.com/zh-CN//pubs/archive/45530.pdf全文由『说文科技』原创出品。版权所有&#xff0c;翻版必究。 这篇发表于2016年九月的文章&#xff0c;在搜索推荐仍然基于矩阵分解的时代&#xff0c;抛…

Github 2024-04-14开源项目日报 Top10

根据Github Trendings的统计,今日(2024-04-14统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量TypeScript项目3C++项目3Python项目2JavaScript项目1NSIS项目1Jupyter Notebook项目1非开发语言项目1项目化学习 创建周期:2538 天协议类型:M…

Go sync.RWMutex 使用示例

sync.RWMutex 是 Go 语言标准库中的读写互斥锁&#xff0c;适用于读多写少的并发场景。它允许同时有多个读取者&#xff08;读者&#xff09;访问共享资源&#xff0c;但只允许一个写入者&#xff08;作者&#xff09;独占访问。 下面是一个使用 sync.RWMutex 的示例&#xff…

聊聊jvm中内存模型的坑

jvm线程的内存模型 看图&#xff0c;简单来说线程中操作的变量是副本。在并发情况下&#xff0c;如果数据发生变更&#xff0c;副本的数据就变为脏数据。这个时候就会有并发问题。 参考&#xff1a;https://www.cnblogs.com/yeyang/p/12580682.html 怎么解决并发问题 解决的…

【1000个GDB技巧之】如何在远端服务器打开通过vscode动态观测Linux内核实战篇?

Step: 配置ssh的服务端host &#xff08;也可以直接在vscode中配置&#xff0c;忽略&#xff09; 主要步骤&#xff1a;在~/.ssh/config中添加服务端的host&#xff0c;以便vscode的remote中能够登录 详细配置过程参考兄弟篇文章&#xff1a;ssh config如何配置用host名替代ro…

【管理】推进五步法

推进五步法是一种常用的解决问题和推动工作的方法&#xff0c;通常用于团队协作、项目管理和决策过程中。这五个步骤是&#xff1a; 明确目标&#xff1a;首先确定工作的具体目标或问题的解决方向。目标应该具体、明确、可量化&#xff0c;并与团队共享。 分析现状&#xff1a…

Unity 人形骨骼动画模型嘴巴张开

最近搞Daz3D玩&#xff0c;导入后挂上动画模型嘴巴张开&#xff0c;其丑无比。 Google了一下&#xff0c;得知原因是Unity没有对下巴那根骨骼做控制&#xff0c;动画系统就会把它放到默认的位置&#xff0c;嘴巴就张开了。找到了3种解决办法。 1.移除动画中对下巴这个骨骼的转…

数据结构之排序了如指掌(三)

目录 题外话 正题 快速排序 Hoare法 Hoare法思路 Hoare法代码详解 挖坑法 挖坑法思路 挖坑法代码 前后指针法 前后指针法思路 前后指针法代码 小结 题外话 我们接着把没有写完的排序内容完成,快速排序其实大同小异,大家好好把思路整理一下 正题 快速排序 快速排序一…

蓝桥杯:握手问题和小球反弹问题

试题 A: 握手问题 本题总分&#xff1a; 5 分 【问题描述】 小蓝组织了一场算法交流会议&#xff0c;总共有 50 人参加了本次会议。在会议上&#xff0c; 大家进行了握手交流。按照惯例他们每个人都要与除自己以外的其他所有人进行一次握手&#xff08;且仅有一次&#x…

论文笔记:Teach LLMs to Phish: Stealing Private Information from Language Models

iclr 2024 reviewer 评分 588 1 intro 提出了一种“神经网络钓鱼攻击” 一种新的针对在敏感用户数据上训练或finetune的LLMs的攻击向量攻击者将看似无害的投毒数据插入到模型的训练数据集中&#xff0c;以“教会LLMs进行钓鱼”&#xff0c;即诱导模型记住他人的个人身份信息&…

Linux(Ubuntu) 查看并删除使用【dpkg】安装的软件【mysql 8.3安装失败---原因调查】

目录 ■前言 ■查看安装的软件 ■删除安装的软件 正常删除&#xff08;dpkg -r xxxxName&#xff09; 问题解决&#xff1a;use --purge to remove them too ■其他调查信息 命令 图片1 图片2 图片3 图片4 ■前言 安装Mysql8.3失败 我的服务器-CSDN博客 ■查看安…

结合 react-webcam、three.js 与 electron 实现桌面人脸动捕应用

系列文章目录 React 使用 three.js 加载 gltf 3D模型 | three.js 入门React three.js 3D模型骨骼绑定React three.js 3D模型面部表情控制React three.js 实现人脸动捕与3D模型表情同步结合 react-webcam、three.js 与 electron 实现桌面人脸动捕应用 示例项目(github)&…