超越 Transformer 的架构前瞻

【从 0 开始学习 Transformer】番外:Transformer 如何穿梭时空? 1. 前言 讲解 Transfomer 在训练阶段为何无需循环调用模型即可完成导师监督(teacher-forcing)法。讲解前瞻遮挡原理的精妙用法:通过一次正向传播,模拟模型逐个得到得到整个目标句子的预测过程。 2. Transformer 穿越时空了? 首先,我们来看看 Transofrmer 是如何完成导师监督的(下面这是一张动图,依然来自Jay Alammar,有可能加载不出来,请参考原... 阅读详情

第六章:未来——超越 Transformer 的架构前瞻

Transformer 的成功令人瞩目,但在工程和科学的世界里,没有任何架构是完美的。Transformer 有它的阿喀琉斯之踵,全球顶尖实验室正在积极探索下一代架构。这一章我们来剖析 Transformer 的天花板在哪里,以及未来可能的突破方向——每一个新方案都是为了解决 Transformer 没能解决的问题而生的。


6.1 Transformer 的致命弱点:O(L2)O(L^2)O(L2) 复杂度

6.1.1 问题的本质

回忆第三章的核心公式:QKTQK^TQKT 计算的是"每个词与其他所有词的相关性"。

如果句子有 L 个词,QKTQK^TQKT 产生的是一个 L × L 的矩阵。

L = 100   词 →  矩阵大小 =     10,000     ✓ 轻松
L = 1,000  词 →  矩阵大小 =   1,000,000    ✓ 还行
L = 10,000 词 →  矩阵大小 = 100,000,000    ⚠ 开始吃力
L = 100,000词 →  矩阵大小 = 10,000,000,000 ✗ GPU 显存爆炸

计算量和内存需求随序列长度的平方增长——这就是 O(L2)O(L^2)O(L2) 复杂度。

6.1.2 这个限制的实际影响

在现实应用中,这个限制非常痛:

  • 一本小说有几十万字 → 无法一次性读入
  • 一段视频有成千上万帧 → 帧间注意力计算量爆炸
  • 一段基因序列可能有上百万碱基对 → 完全不可能
  • 实时对话需要维护完整的历史上下文 → 随对话变长,成本急剧飙升

目前的解决办法是截断——只看最近的 N 个词(比如 GPT-4 的上下文窗口最初是 8K tokens,后来扩展到 128K)。但截断本身就意味着信息损失。

6.1.3 为什么在设计时没有避免这个问题?

因为 O(L2)O(L^2)O(L2) 是"全连接"设计的必然代价。让每个词与所有词直接通信,计算量自然是词数的平方。

这就像一个有 100 人的会议,如果每两个人都要互相握一次手,总握手次数 = 100×99÷2=4,950100 × 99 ÷ 2 = 4,950100×99÷2=4,950 次。人数翻倍到 200 时,握手次数变成约 19,90019,90019,900 次——接近翻了 4 倍。

在序列很短时(几百到几千词),O(L2)O(L^2)O(L2) 完全可以承受。但当我们想处理更长序列时,这个平方关系就成了不可逾越的墙。


6.2 前沿探索方向一:线性注意力与状态空间模型

6.2.1 核心思路:用"记忆状态"代替"全局矩阵"

Mamba(2023) 和 SSM(State Space Model,状态空间模型) 系列代表了一种根本性不同的思路:

不再计算 L×L 的全局注意力矩阵,而是维护一个**固定大小的"隐藏状态"**来压缩和传递信息。

类比理解:

  • Transformer 的方式:每个人到了会场,和所有人握手(O(L2)O(L^2)O(L2))
  • SSM/Mamba 的方式:每个人到了会场,只看一块"共享白板"上的信息,然后更新白板(O(L)O(L)O(L))

白板的大小是固定的,不随与会人数增长。所以无论来了 100 人还是 100 万人,每个人的操作成本都是一样的。

6.2.2 Mamba 的关键创新:选择性状态空间

传统 SSM 的问题是"白板太小",容易忘记旧信息。Mamba 的核心创新是引入了**“选择性机制”**——根据当前输入的内容,动态决定:

  • 保留白板上的哪些信息(重要的事情不擦掉)
  • 遗忘哪些信息(不重要的覆盖掉)
  • 写入什么新信息

这非常像 LSTM 的门控思想,但 Mamba 在新的数学框架下实现了它,并且保持了线性复杂度。

6.2.3 为什么 Mamba 还没有完全取代 Transformer?

  • 训练效率:Mamba 的训练并行化技巧不如 Transformer 成熟
  • 生态惯性:大量工程设施(优化器、并行框架、推理引擎)是为 Transformer 建造的
  • 经验积累:学术界对 Transformer 的调参经验远多于 SSM
  • 混合趋势:最新研究显示 Mamba + Attention 的混合架构可能优于纯粹的两者

6.3 前沿探索方向二:高效长程注意力

6.3.1 核心思路:不放弃 Attention,但让它更高效

另一条路线是保留 Attention 的优点(全局信息获取能力),但想办法降低复杂度。

6.3.2 Perceiver IO:用"瓶颈"压缩

来自 DeepMind,2021 年。

核心观察:在全连接 Attention 中,大量的词-词关系其实是冗余的——不是每个词都需要和每个词交流。

Perceiver IO 的方案:引入一组固定数量的**“潜变量(Latents)”**作为中间缓冲。

传统 Attention(直接全连接):
  词1 ←→ 词2 ←→ 词3 ←→ ... ←→ 词L     → O(L²)

Perceiver IO(通过潜变量中转):
  词1 → 潜变量1 → 词1
  词2 → 潜变量2 → 词2        → O(L × M),M 是固定的潜变量数量
  ...    ...       ...
  词L → 潜变量M → 词L

潜变量的数量 M 是人为设定的(比如 256),不随输入长度 L 增长。所以总复杂度从 O(L2)O(L^2)O(L2) 降到了 O(L×M)=O(L)O(L × M) = O(L)O(L×M)=O(L)——线性!

类比:传统 Attention 是"所有人打电话给所有人"(O(L2)O(L^2)O(L2)条通话),Perceiver 是"所有人打电话给总机转接"(O(L)O(L)O(L)条通话)。信息在总机(潜变量)里被压缩和中转。

6.3.3 Hyena:用长卷积替代注意力

来自斯坦福,2023 年。

Hyena 的核心思想是:Attention 的QKTQK^TQKT本质上在计算一个"关系矩阵",而**长程卷积(Long Convolution)**也可以用来建模序列之间的依赖关系,且只需要 O(Llog⁡L)O(L \log L)O(LlogL) 的复杂度。

具体做法:使用参数化的滤波器(像信号处理中的滤波器),通过 FFT(快速傅里叶变换)实现高效的长程卷积。

类比:Attention 是"每两个人单独通话"(电话网络),Hyena 是"通过广播电台发信息"(无线广播)。广播覆盖所有人,成本不随听众数量增加。

6.3.4 RetNet:回归递推,告别二次开销

来自微软,2023 年。

RetNet(Retentive Network)的精妙之处在于它设计了一种"双模式"架构:

  • 训练时:使用并行模式,像 Transformer 一样高效训练
  • 推理时:切换为递推模式,像 RNN 一样逐步生成,每步只需 O(1)O(1)O(1) 计算

这解决了一个长期困扰的矛盾:

Transformer 训练快但推理贵(需要重算整个注意力矩阵),RNN 推理便宜但训练慢。RetNet 想要两者的优点。


6.4 前沿探索方向三:混合专家模型(MoE)

6.4.1 一个不同维度的问题

前面讨论的都是"如何处理长序列"的问题。MoE 解决的是另一个问题:如何在不增加计算成本的前提下,增加模型的知识容量?

6.4.2 核心思想:大模型里只激活一小部分

MoE(Mixture of Experts)的灵感来自人脑:人脑有约 860 亿个神经元,但在处理任何单一任务时,只有很小比例的神经元会被激活。

MoE 模型通常包含数十个甚至数百个"专家"子网络,但在处理每个输入时,一个**路由器(Router)**会选择性地只激活 1-2 个专家:

输入 "猫在睡觉"
    ↓
路由器判断:这是关于"动物行为"的 → 激活"动物专家"和"日常活动专家"
    ↓
只有 2 个专家参与计算(其余几十个专家休息)
    ↓
计算成本 ≈ 普通模型的 2/N (N = 专家总数)

6.4.3 MoE 的现实成就

Google 的 Switch Transformer(2021)用 MoE 架构训练了一个1.6 万亿参数的模型,但由于每次只激活一小部分专家,实际推理成本与一个几十亿参数的普通模型相当。

GPT-4 也被广泛传言使用了 MoE 架构(OpenAI 未公开确认)。


6.5 未来蓝图:融合式统一架构

6.5.1 不会是单一方案的胜利

综合以上分析,下一代架构最可能的形态不是某个单一方案的一家独大,而是一个取各家之长的融合体:

┌─────────────────────────────────────────────┐
│            融合式统一架构                       │
│                                              │
│  ┌──────────────┐  ┌──────────────┐          │
│  │ 局部注意力    │  │ SSM/Mamba    │          │
│  │ (精细理解)   │  │ (长程记忆)    │          │
│  └──────┬───────┘  └───────┬──────┘          │
│         │                  │                  │
│         ├──────────────────┤                  │
│         ↓                  ↓                  │
│  ┌──────────────────────────────┐            │
│  │    MoE 专家路由层             │            │
│  │  (按需激活,知识容量最大化)     │            │
│  └──────────────┬───────────────┘            │
│                 ↓                             │
│  ┌──────────────────────────────┐            │
│  │   Perceiver 式潜变量压缩      │            │
│  │  (控制计算规模,线性扩展)      │            │
│  └──────────────────────────────┘            │
└─────────────────────────────────────────────┘

各组件的分工:

  • 局部注意力:在短范围内保留 Transformer 的精确关系捕捉能力
  • SSM/Mamba:以线性成本处理长距离依赖
  • MoE:大幅扩展知识容量,而不增加每次推理的成本
  • Perceiver 潜变量:将任意长度的输入压缩到可控规模

6.5.2 预期突破

当前 Transformer 的限制未来架构的解决方案预期效果
O(L2)O(L^2)O(L2) 复杂度SSM + 潜变量压缩线性扩展,百万级长文无压力
推理成本高RetNet 递推模式O(1)O(1)O(1) 常数推理时延
知识容量受限于计算量MoE 稀疏激活万亿参数但推理成本不变
仅处理文本通用的序列编码文本/图像/视频/音频/代码统一处理

6.6 本章小结:进化的逻辑

Transformer 的成功
    ↓
暴露了 O(L²) 的天花板
    ↓
三条突围方向同时推进:
  ① 线性模型(Mamba/SSM)→ 用记忆状态代替全局矩阵
  ② 高效注意力(Perceiver/Hyena/RetNet)→ 降低矩阵规模
  ③ 稀疏激活(MoE)→ 增加容量不增加成本
    ↓
未来趋势:三者融合为统一架构
    ↓
目标:线性扩展 + 常数推理 + 全模态通用

💡 记忆要点:技术的进化永远遵循同一条逻辑链条——成功暴露短板 → 短板催生新方案 → 新方案融合旧优势。Transformer 也遵循了相同的逻辑从 RNN 进化而来,而未来的架构将从 Transformer 进化而去。理解这个进化的"为什么",比记住任何技术细节都更有价值。 因为细节会过时,但工程进化的逻辑永远不会。

MemoSight:基于前瞻预测与动态KV缓存压缩的长文本推理加速框架 在大型语言模型应用中,Transformer的自回归解码机制在处理长上下文时面临计算冗余和内存压力两大核心挑战。其原理在于生成每个新令牌都需基于完整历史序列重复计算注意力,导致时间复杂度随序列长度呈平方级增长,同时存储注意力键值对(KV缓存)的显存占用线性增加,形成内存墙。为突破这一瓶颈,业界涌现出推测解码、KV缓存量化等多种优化技术,旨在减少计算量或压缩内存占用。MemoSight框架创新性地将前瞻性多令牌预测与基于动态重要性评分的KV缓存管理协同优化,通过轻量级预测头网络并行预测高置信度未来令牌以跳过部 阅读详情

相关推荐

大语言模型分片推理与前瞻解码技术解析

分片推理(Split Inference)是一种平衡隐私保护与计算效率的大语言模型部署架构,通过将模型划分为本地和云端两部分执行,确保原始数据不离开用户设备。其核心技术原理在于保留嵌入层和部分Transformer层在本地,云端仅处理中间激活值。结合前瞻解码(Lookahead Decoding)技术,通过Jacobi迭代和n-gram预测实现并行token验证,有效分摊网络延迟开销。这种架构在医疗健康、金融等隐私敏感领域具有重要应用价值,同时支持跨模型规模扩展。工程实践中,WebSocket二进制协议和动

weixin_42521628的博客 375

Transformer中的掩码机制(前瞻掩码和填充掩码)

Transformer中的掩码机制(前瞻掩码和填充掩码)

缘友一世的博客 1420

【从 0 开始学习 Transformer】下:Transformer 训练与评估

1. 前言 2. 创造原训练集的编码表示 2.1. 数据下载与读取 2.2. 创建子词分词器 2.3. 数据处理 3. 损失函数设计 4. 优化器与学习率 5. 自回归原理 6. 训练 6.1. 超参数 6.2. 训练 6.2.1. 创建遮挡 6.2.2. 创建训练步骤及保存模型 6.2.3. 开始训练 7. 评估 1. 前言 在上一篇文章中我们已经描述了 Transfo...

我们胃口太大几千几百万都装得下 5311

推荐文章:探索未来音符 —— Anticipatory Music Transformer

推荐文章:探索未来音符 —— Anticipatory Music Transformer 在音乐创作的广阔天地里,人工智能正逐步展现其独特的创造力。今天,我们要向大家介绍一个开拓性的开源项目——Anticipatory Music Transformer(AMT),这是一次深度学习与音乐创作激情碰撞的结晶。 项目介绍 Anticipatory Music Transformer,基于John ...

gitblog_00280的博客 718

CVPR 2025前瞻:视觉Transformer的7个突破性研究方向

视觉Transformer技术正处于从"改进期"迈向"爆发期"的关键拐点。那些能够把握这七个突破性方向的研究者和企业,将在未来的视觉AI竞争中占据先机。关键的是,这些技术突破不仅仅是学术创新,更是解决实际问题的有力工具。从医疗诊断的可解释性,到边缘设备的高效部署,从长视频的理解能力,到多模态的无缝融合,视觉Transformer正在重新定义计算机视觉的可能性边界。对于研究人员,这是探索新架构和算法的黄金时期;对于工程师,这是将前沿技术转化为实用系统的关键窗口;

2401_88760782的博客 1222

构建完整的Transformer模型及其掩码技术

本文详细介绍了如何实现完整的Transformer模型,包括如何为编码器和解码器创建填充掩码和前瞻掩码,并将这些组件合并为一个单一模型。文章还展示了如何输出编码器和解码器层的摘要,为深入理解Transformer的架构和工作机制提供了详细指导。

weixin_33245447的博客 538

Transformer时间序列预测

Transformer时间序列预测

weixin_39559994的博客 1万+

海康威视iVMS-4200在银河麒麟系统部署全攻略与疑难排解

在信创国产化进程中,软件兼容性是关键挑战之一。以安防监控领域广泛使用的海康威视iVMS-4200客户端为例,其从Windows环境迁移到银河麒麟等国产操作系统时,面临架构适配、依赖库匹配等核心兼容性问题。这涉及到跨平台软件部署的通用原理:不同CPU架构(如ARM的飞腾、x86的兆芯)和操作系统底层API的差异,要求软件必须进行针对性编译和优化。解决这类问题的技术价值在于保障专业软件在国产化环境中的稳定运行,是信创产业落地的重要环节。具体到应用场景,如在基于银河麒麟V10的安防监控项目中,通过获取对应架构的.

weixin_33423874的博客 1423

FinBERT-FLS模型架构详解:BERT在金融前瞻语句识别中的创新应用

在金融文本分析领域,**FinBERT-FLS模型**代表了自然语言处理技术在金融前瞻语句识别方面的重大突破。这款基于BERT架构的深度学习模型专门用于识别公司年报中的前瞻性陈述,帮助投资者和分析师更准确地理解管理层对未来业绩的预期和展望。 ## 🔍 什么是金融前瞻语句(FLS)? 金融前瞻语句是公司管理层在财务报告中表达对未来事件或业绩的信念和观点的陈述。这些语句对于投资者进行财务分析至关

gitblog_09701的博客 1093

sklearn2pmml xgboost缺失值(missing)处理的坑

sklearn2pmml xgboost缺失值(missing)如何处理 今天同事在部署xgboost pmml模型时遇到了大坑,线上spark预测和本地python预测结果怎么都不对应,记录一下处理过程。 看了下同事的代码,貌似也没有问题 from sklearn2pmml import PMMLPipeline from sklearn2pmml import sklearn2pmml fro...

Skycrab 8969

大彩串口屏+LUA避坑指南:从Flash读写到控件状态配置的5个常见问题

本文针对大彩串口屏的LUA脚本开发,深度剖析了Flash数据存储与控件状态配置中的5个常见陷阱。重点讲解了如何通过标志位安全初始化Flash、正确处理多字节数据转换,以及如何精准配置按钮与文本控件的状态与事件响应,帮助开发者提升开发效率与代码可靠性。

weixin_27945229的博客 242

Transformer学习

Transformer 网络架构架构由 Ashish Vaswani 等人在 Attention Is All You Need一文中提出,并用于机器翻译任务,和以往网络架构有所区别的是,该网络架构中,编码器和解码器没有采用 RNN 或 CNN 等网络架构,而是采用完全依赖于注意力机制的架构。解码器可以堆叠n层高,每层可以从编码器和其前面的层中获取输入通过对叠层,模型可以学会从注意力头提取并关注不同的注意力组合,从而有可能提高预测能力。这就是Transformer,变形金刚qaq!

snubsa的博客 887

Rclone替代RaiDrive?零广告免费挂载Alist WebDAV到Windows资源管理器(含自启脚本)

本文详细介绍了如何使用开源工具Rclone替代RaiDrive,实现零广告、全免费的Alist WebDAV挂载方案。通过深入解析配置参数、提供完整的自启动解决方案和解决常见问题,帮助用户在Windows资源管理器中高效管理云存储,提升使用体验。

weixin_33709364的博客 635

探索音乐未来:Anticipatory Music Transformer 开源项目

探索音乐未来:Anticipatory Music Transformer 开源项目 在人工智能和音乐创作的交汇点上,我们发现了一个令人兴奋的开源项目——Anticipatory Music Transformer。这个由John Thickstun、David Hall、Chris Donahue和Percy Liang共同开发的项目,旨在通过预训练模型来创造富有前瞻性的音乐。 项目介绍 Ant...

gitblog_00081的博客 365

SAP License:SAP会计凭证抬头的字段状态控制

FI模块的同事一般都知道在FI中有个字段状态变式,可以控制在凭证输入时哪些字段是必输、哪些可选哪些隐藏,但这只对凭证行项目中有效,你是否想过对于凭证抬头的字段是哪控制呢? 在中国,会计附件上都要带一个附件张数字段,但SAP的默认配置中没有这一字段,并非SAP没有设置此字段,而是我们没有配置这一字段。如果需要在凭证输入时放出分支号(BRNCH)、附件页数(NUMPG)等字段,在个人参数文件中加入参数CSF,参数值AR,即可。如下图: 实际上,这是对凭证国家的一个设置,在SAP中,配置了AR这个国家..

SAP权限管控|SAP用户权限管理|SAP权限合规检查|SAP全日志管理 2224

RT-DETR改进策略【RT-DETR和Mamba】| CVPR 2025:EfficientViM 压缩隐藏状态空间进行通道混合、单头设计减少内存操作,提升目标检测效率与精度

本文记录的是利用模块优化的目标检测网络模型。EfficientViM Block(基于隐藏状态混合器的状态空间对偶性模块) 的设计旨在,提升特征提取效率,同时兼顾全局依赖捕捉与局部细节保留。本文将深入研究的原理,并将其应用到中,通过重构特征提取流程、减少内存绑定操作、融合多阶段特征,增强模型在资源受限环境下的检测性能与速度。Depth Information Assisted Collaborative Mutual Promotion Network for Single Image DehazingLE

Limiiiing的博客 916

transformer源码分析

基本以 https://wmathor.com/index.php/archives/1438/ 和 https://github.com/jadore801120/attention-is-all-you-need-pytorch为教材进行学习。 关键点: 1.encoder的隐藏层作为decoder的multi-head-attention的k,v矩阵的input,而decoder多头注意力的q矩阵的input由它自身的masked multi-head-attention经过LN和残差结构得到。 2

qq_38022658的博客 372

【AHE数据集】中国2019年多源热排放数据集-500m空间分辨率

【AHE数据集】中国2019年多源热排放数据集

WW、forever的博客 411

transformer 全总结

这篇大概写于好几个月之前,最近又很多东西要重新开始,于是重新写起笔记 这是写给我自己看的笔记,所以你看看不明白是很正常的,但我并不觉得完全没有参考价值,毕竟之前看的trans介绍,要么只有encoder,要么没有训练过程。 transformer 全总结 整体架构 en-de Here, the encoder maps an input sequence of symbol representations (????1,…,????????) to a sequence of continuous

qq_42501075的博客 1378

ROS2 机械臂末端刀具执行曲面路径规划入门教程

Noether工具路径规划系统摘要 Noether是一款用于网格曲面刀具路径规划的软件,支持喷涂、打磨、检测等机器人工艺流程。其核心流程分为三步:1)网格修改(平滑、分割等预处理);2)刀具路径规划(生成有序路径点序列);3)刀具路径修改(姿态调整等后期处理)。系统提供栅格规划和边界规划两种模式,支持自定义扩展。配套GUI工具可配置完整流程,包含网格处理、路径生成和可视化功能。通过示例演示了多组件网格处理、拼图边缘铣削等典型应用场景,并指导用户进行插件开发,实现圆柱体提取、摄像机悬停等定制化功能。系统采用模

机器人控制与仿真应用 916

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

具身智能创新架构解析(89):意图前瞻推理与共享控制交互机制研究

本文提出了一种面向人机协作的意图前瞻推理与共享控制交互TVA架构。该架构引入了“多模态意图前瞻推理模块”,利用Transformer的时序建模能力,融合人类视线、肢体姿态与力觉信息,预测人类未来的动作目标与轨迹,实现“未动先知”。同时,设计了“动态角色分配的共享控制机制”,根据预测的意图置信度,在“主导执行”与“辅助配合”间平滑切换,构建了人机互信的协作闭环。实验结果表明,该架构在复杂的“双人装配”任务中,协作流畅度提升了45%,人机碰撞率降低至1%以下,成功实现了具身智能体从“冷漠旁观者”到“默契搭档”的

专注AI智能体前沿技术探索,为企业提质降本增效全面赋能! 3151

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

RT-DETR:实时目标检测新范式,Transformer架构首次超越YOLO

百度团队提出的RT-DETR(Real-Time Detection Transformer)凭借创新混合编码器和动态查询机制,在COCO数据集上实现53.1% mAP与108 FPS的实时性能,首次让基于Transformer的端到端检测器在速度与精度上全面超越YOLO系列。 ## 行业现状:实时检测的技术困境 当前主流实时目标检测技术面临两大路线瓶颈: - **YOLO系列**:依赖...

gitblog_00117的博客 1237

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Lukasz Kaiser:从 Transformer 到推理模型的演进之路与 GPT-5 的技术前瞻

OpenAI研究科学家、Transformer共同创始人Lukasz Kaiser深度解读推理模型历史、现在与未来,涵盖Chain-of-Thought、Test-Time Compute、o系列模型技术路线与GPT-5前瞻。

2600_95884800的博客 222

具身智能创新原理(82):融合意图前瞻推理与共享心智模型的TVA架构

本文针对人机协作中的意图盲区与认知偏差,提出了融合意图前瞻推理与共享心智模型的TVA架构。通过理论构建与实验验证,得出以下结论: 首先,多模态意图前瞻机制打破了被动响应的局限,赋予了智能体主动预测人类伙伴行为的能力。 其次,共享心智模型实现了人机认知层面的对齐,显著提升了协作的默契度与效率。 最后,该架构在协作任务中的卓越表现,为具身智能从“工具属性”迈向“伙伴属性”奠定了关键技术基础。

专注AI智能体前沿技术探索,为企业提质降本增效全面赋能! 40

基于 pytorch 的手写 transformer + tokenizer

纯手工分模块实现一个 transformer 模型

大家好~我是SP_FA~ 3112

超越规模:Ilya Sutskever与AI研究新时代的架构革命

2025年末,AI领域迎来了一场思想地震。OpenAI前首席科学家、现Safe Superintelligence Inc. (SSI) 创始人Ilya Sutskever公开宣布 “Scaling时代已经终结” 。这一判断标志着AI发展范式的根本转变——从过去五年依赖算力与数据堆砌的“暴力美学”,重新回归到以研究为核心的“精巧设计”时代。作为深度学习革命的关键人物,Ilya几乎定义了过去十年AI的发展方向。他的这一宣言不仅是对当前技术极限的承认,更是对未来AI架构演进的前瞻性判断。本文将深入解读Ilya倡

深耕互联网架构与AI领域多年,专注大模型工程化、云原生架构、AI驱动系统,分享实战经验、前沿技术和架构方法论。每周产出深度长文+技术短文,涵盖大厂案例、论文解读与工程实践。拒绝水文,只讲干货。关注我,与一线架构师共同探索技术本质。 1403
上一篇: ibatis insert 返回自增主键
下一篇: chapter1_why_transformer
tianchao_
博客等级 码龄16年 2粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值