V-JEPA: 从视频帧到3D时空Token,V-JEPA如何用ViT切分Tubelet、构建三维网格、加入位置编码,并用贯穿时间维的3D Multi-Block Mask遮住时空区域与抑制视频冗余
从视频帧到3D时空Token:彻底理解V-JEPA如何用ViT切分Tubelet、构建三维网格、加入位置编码,并用贯穿时间维的3D Multi-Block Mask遮住时空区域与抑制视频冗余的直觉教程从视频帧到3D时空Token1. 第一件事情:视频为什么不能直接扔进 ViT?普通 ViT 本质上处理的是:TokenSequence\text{Token Sequence}TokenSequence而一段视频原始是:T×H×W×3T\times H\times W\times3T×H×W×3其中:TTT是帧数;HHH是图像高度;WWW是图像宽度;333是 RGB 三个通道。因此必须先把视频切成很多小块,再把这些小块变成 Token。但图片只有空间:H×WH\times WH×W视频则有:T×H×WT\times H\times WT×H×W所以 V-JEPA 不再切二维 Patch,而是切三维时空 Patch(3D Spatio-temporal Patch)。2. V-JEPA 的一个 Token 到底是什么?V-JEPA 默认的基本 Patch 尺寸为:2×16×16\color{red}{2\times16\times16}2×16×16顺序是:Time×Height×Width\text{Time}\times\text{Height}\times\text{Width}Time×Height×Width也就是说:时间方向包含连续222帧;高度方向包含161616像素;宽度方向包含161616像素。因此一个 Token 不是:“某一帧里面一个16×1616\times1616×16小方块”。而是:“同一个空间小区域,在连续两帧中的内容”。这种跨时间的小立方体也常被称为Tubelet(时空管状块)。V-JEPA 官方模型配置使用2×16×162\times16\times162×16×16的时空 Patch。3. 用真正直观的六帧视频理解 Tubelet假设我们有一个非常小的视频:T=6,H=W=32T=6,\qquad H=W=32T=6,H=W=32每一帧只有:32×3232\times3232×32像素。空间 Patch 大小是:16×1616\times1616×16所以每一帧可以切成:2×22\times22×2四个小方块。先不要急着生成 Token。我们先把原始6 帧全部画出来。时间轴 │ │ ▼ Frame 1 Frame 2 ┌──────────┬──────────┐ ┌──────────┬──────────┐ │ 1-a │ 2-a │ │ 1-b │ 2-b │ │ 左上16×16│ 右上16×16│ │ 左上16×16│ 右上16×16│ ├──────────┼──────────┤ ├──────────┼──────────┤ │ 3-a │ 4-a │ │ 3-b │ 4-b │ │ 左下16×16│ 右下16×16│ │ 左下16×16│ 右下16×16│ └──────────┴──────────┘ └──────────┴──────────┘ Frame 3 Frame 4 ┌──────────┬──────────┐ ┌──────────┬──────────┐ │ 5-a │ 6-a │ │ 5-b │ 6-b │ │ 左上16×16│ 右上16×16│ │ 左上16×16│ 右上16×16│ ├──────────┼──────────┤ ├──────────┼──────────┤ │ 7-a │ 8-a │ │ 7-b │ 8-b │ │ 左下16×16│ 右下16×16│ │ 左下16×16│ 右下16×16│ └──────────┴──────────┘ └──────────┴──────────┘ Frame 5 Frame 6 ┌──────────┬──────────┐ ┌──────────┬──────────┐ │ 9-a │ 10-a │ │ 9-b │ 10-b │ │ 左上16×16│ 右上16×16│ │ 左上16×16│ 右上16×16│ ├──────────┼──────────┤ ├──────────┼──────────┤ │ 11-a │ 12-a │ │ 11-b │ 12-b │ │ 左下16×16│ 右下16×16│ │ 左下16×16│ 右下16×16│ └──────────┴──────────┘ └──────────┴──────────┘时间 T ↑ │ │ Frame 6 │ ──────────┼────────── / /| / 9-b 10-b / | / 左上16×16 右上16×16/ | ├──────────┬──────────┤ | / 11-b / 12-b / | / 左下16×16/ 右下16×16 / | └──────────┴──────────┘ | ▲ | │ | │ 时间 | │ | Frame 5 | ────────── | / /| | / 9-a 10-a / | | / 左上16×16 右上16×16/ | | ├──────────┬──────────┤ | | / 11-a / 12-a / | | / 左下16×16/ 右下16×16 / |/ └──────────┴──────────┘ | ▲ | │ | │ 时间 | │ | Frame 4 | ────────── | / /| | / 5-b 6-b / | | / 左上16×16 右上16×16/ | | ├──────────┬──────────┤ | | / 7-b / 8-b / | | / 左下16×16/ 右下16×16 / |/ └──────────┴──────────┘ | ▲ | │ | │ 时间 | │ | Frame 3 | ────────── | / /| | / 5-a 6-a / | | / 左上16×16 右上16×16/ | | ├──────────┬──────────┤ | | / 7-a / 8-a / | | / 左下16×16/ 右下16×16 / |/ └──────────┴──────────┘ | ▲ | │ | │ 时间 | │ | Frame 2 | ────────── | / /| | / 1-b 2-b / | | / 左上16×16 右上16×16/ | | ├──────────┬──────────┤ | | / 3-b / 4-b / | | / 左下16×16/ 右下16×16 / |/ └──────────┴──────────┘ | ▲ | │ | │ 时间 | │ | Frame 1 / ────────── / / / / 1-a 2-a / / 左上16×16 右上16×16/ ├──────────┬──────────┤ / 3-a / 4-a / / 左下16×16/ 右下16×16 / └──────────┴──────────┘ ↓ Height / 高度 Width / 宽度 →注意这里暂时用a、b表示某个 Token 中来自不同帧的空间切片。4. 现在把相邻两帧的同一个空间位置粘在一起Tubelet 的时间大小是222,所以:Frame 1 和 Frame 2 被配成一组。Frame 3 和 Frame 4 被配成另一组。Frame 5 和 Frame 6 被配成第三组。例如左上区域:Frame 1 Frame 2 ┌──────────────┐ ┌──────────────┐ │ │ │ │ │ 1-a │ ========= │ 1-b │ │ 16×16 │ 时间 │ 16×16 │ │ │ 深度=2 │ │ └──────────────┘ └──────────────┘ \____________________________/ │ ▼ Token 1 2×16×16所以:Token1={ Frame1左上,Frame2左上}\text{Token 1}=\{\text{Frame 1 左上},\text{Frame 2 左上}\}Token1={Frame1左上,Frame2左上}同理:Token2={ Frame1右上,Frame2右上}\text{Token 2}=\{\text{Frame 1 右上},\text{Frame 2 右上}\}Token2={Frame1右上,Frame2右上}Token3={ Frame1左下,Frame2左下}\text{Token 3}=\{\text{Frame 1 左下},\text{Frame 2 左下}\}Token3={Frame1左下,Frame2左下}Token4={ Frame1右下,Frame2右下}\text{Token 4}=\{\text{Frame 1 右下},\text{Frame 2 右下}\}Token4={Frame1右下,Frame2右下}而 Frame 3 和 Frame 4 得到:Token5,Token6,Token7,Token8\text{Token 5},\text{Token 6},\text{Token 7},\text{Token 8}Token5,Token6,Token7,Token8Frame 5 和 Frame 6 得到:Token9,Token10,Token11,Token12\text{Token 9},\text{Token 10},\text{Token 11},\text{Token 12}Token9,Token10,Token11,Token125. 这就是之前为什么会画成三个矩阵Tubelet 化之后,原来的:6×32×326\times32\times326×32×32视频在 Token 空间里变成:3×2×23\times2\times23×2×2为什么?时间:T′=62=3T'=\frac{6}{2}=3T′=26​=3高度:H′=3216=2H'=\frac{32}{16}=2H′=

相关新闻

2025年论文降重实战:高效工具与技巧

2025年论文降重实战:高效工具与技巧

1. 论文降重实战:2025年高效解决方案 去年指导学弟毕业论文时,他拿着查重率38%的稿子急得冒汗。我教他用几个工具组合处理,三小时后重复率直接降到6.3%。现在这套方法已经迭代到第三代,特别适合被AI检测和传统查重双重困扰的同学。…

2026/10/4 17:17:39 阅读更多 →
大模型推理能力评估与实战:从概念到部署优化全解析

大模型推理能力评估与实战:从概念到部署优化全解析

在 AI 模型领域,性能评估是一个复杂且多维度的议题。当我们谈论一个模型在“非推理”任务上超越 GPT-4o,在“推理”任务上超越 GPT-5 时,这通常意味着该模型在特定基准测试或特定任务集上取得了领先的综合得分。这里的“非推理”可能指代语言…

2026/10/2 3:10:49 阅读更多 →
从价格战转向价值战,云计算的竞争逻辑变了

从价格战转向价值战,云计算的竞争逻辑变了

谁能帮客户更好地赚钱,谁就能在这场竞赛中拔得头筹。©TMT星球原创 作者|黄燕华AI时代,云计算的竞争逻辑彻底变了。过去,云计算市场主要是厂商通过提供数据库、虚拟机、软件等帮助客户优化业务流程、提升效率。随着AI智能体的…

2026/10/2 11:55:45 阅读更多 →

最新新闻

人工合规审查有盲区,智能合规如何补足文件风险识别短板

人工合规审查有盲区,智能合规如何补足文件风险识别短板

合同、规章制度、对外函件、合作协议企业日常经营中,海量文本文件里潜藏着大量合规风险。传统人工文件合规审查存在天然短板:依赖个人经验、受精力限制、批量文件极易漏审。许多隐性合规漏洞藏在细碎条款之中,人工难以全覆盖排查。一旦文件落…

2026/10/10 20:50:33 阅读更多 →
同为免费编程搭档:AgnesCode 工作台 vs Cline/Continue 接入流,实测谁更顺?

同为免费编程搭档:AgnesCode 工作台 vs Cline/Continue 接入流,实测谁更顺?

同为免费编程搭档:AgnesCode 工作台 vs Cline/Continue 接入流,实测谁更顺? 【免费下载链接】Agnes-3.0-Flash 项目地址: https://ai.gitcode.com/hf_mirrors/Agnes-AI/Agnes-3.0-Flash 当 Agnes AI 打出"全模态 API 无限期免费…

2026/10/10 20:50:33 阅读更多 →
vue-table搭配Bootstrap样式实战:与Semantic UI完整对照教程

vue-table搭配Bootstrap样式实战:与Semantic UI完整对照教程

【免费下载链接】vue-table data table simplify! -- vuetable is a Vue.js component that will automatically request (JSON) data from the server and display them nicely in html table with swappable/extensible pagination component. 项目地址: https://…

2026/10/10 20:50:33 阅读更多 →
哈工大SSE第33题:5×5矩阵鞍点C语言实现详解

哈工大SSE第33题:5×5矩阵鞍点C语言实现详解

如果你正在刷哈工大 SSE 这套 C 语言编程练习,到第 33 题附近,大概率会撞上一个老熟脸:求 55 矩阵的鞍点。这道题说难不难,说简单也不简单,很多刚学完二维数组的同学会卡在这一题上。作为一个给 SSE 写过代码、也给学弟…

2026/10/10 20:49:33 阅读更多 →
零基础 4 小时学会用 AI 干实际工作:learn-opencode(OpenCode 中文实战课)完整学习路线图

零基础 4 小时学会用 AI 干实际工作:learn-opencode(OpenCode 中文实战课)完整学习路线图

文档教程 【免费下载链接】learn-opencode OpenCode 中文实战课源码与内容仓库:一课一页,覆盖入门到实战工作流。 项目地址: https://gitcode.com/gh_mirrors/le/learn-opencode 点击查看 免费下载 learn-opencode 是一门完全免费、开源的 O…

2026/10/10 20:49:33 阅读更多 →
Wolfram语言编程思维:从表达式到函数式,告别循环陷阱

Wolfram语言编程思维:从表达式到函数式,告别循环陷阱

先说一个我经常在群里看到的现象。很多人学过Python或者C语言之后,转来用Wolfram语言(也就是Mathematica),第一反应往往是:这个语言怎么连循环都写得这么别扭?其实不是Wolfram别扭,而是写这个语…

2026/10/10 20:49:33 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →