欢迎来到人工智能的世界博客主页卿云阁欢迎关注点赞收藏⭐️留言首发时间2026年4月27日✉️希望可以和大家一起完成进阶之路作者水平很有限如果发现错误请留言轰炸哦万分感谢目录整体结构细节模块整体描述骨干编码器提取图像特征记忆增强编码器给特征 “加 buff”网格解码器把特征 “翻译成文字”多头自注意力MSA是什么多头自注意力MSA记忆增强编码器网格解码器整体结构M2Transformer的整体框架其实就分三部分很好记骨干编码器Backbone Encoder、记忆增强编码器Memory-Augmented Encoder和网格解码器Meshed Decoder。其中骨干编码器用的是Faster R-CNN它的核心活儿就是“看图片、抓重点”——提取图像里各个区域的特征咱们结合“小狗在草地上追蝴蝶”的实例说清它的输入和输出输入就是原始的图像也就是这张“小狗追蝴蝶”的原图未经任何处理的像素画面张量大小通常为[3, H, W]其中3代表RGB三通道H、W分别是图像的高度和宽度比如常见的[3, 640, 640]输出就是图像的区域特征张量简单说就是能识别出图里“小狗”“草地”“蝴蝶”这几个关键区域还能提取出它们的基础特征比如小狗是毛茸茸的、蝴蝶是有翅膀的把这些特征转换成模型能识别的数值形式供下一部分使用输出张量大小通常为[N, C]N是提取到的区域数量比如这里识别出3个区域N3C是特征维度常用2048维即C2048张量大小为[3, 2048]。然后是记忆增强编码器和网格解码器这俩用的都是Transformer结构相当于模型的“大脑”部分咱们分别说它们的输入输出还是用刚才的图片举例。先看记忆增强编码器它可以理解成是骨干编码器的“延伸助手”输入就是上一步骨干编码器输出的区域特征张量也就是小狗、草地、蝴蝶的基础特征数值张量大小和上一步输出一致即[N, C] [3, 2048]输出就是经过语义增强后的特征张量——它不会重新提取特征而是在基础特征上细化比如区分出“小狗是黄色的拉布拉多”“草地是绿油油的短草”“蝴蝶是彩色的菜粉蝶”让这些区域的特征更精准、更有辨识度相当于给基础特征“加细节、提精度”输出张量大小保持不变仍为[N, C] [3, 2048]只是张量内的特征数值更具针对性。最后是网格解码器它的核心任务就是“转文字”输入就是记忆增强编码器输出的、经过语义增强后的特征张量也就是带有细节的小狗、草地、蝴蝶特征数值张量大小为[N, C] [3, 2048]输出就是咱们能看懂的自然文本描述同时会输出对应的文本张量文本张量大小通常为[L, V]L是生成文本的长度比如“一只黄色的拉布拉多小狗在绿油油的草地上追逐着一只彩色的蝴蝶”这句话L≈20V是词汇表大小常用10000左右即V10000张量大小为[20, 10000]——还是那张小狗追蝴蝶的图它会结合前面的细化特征生成一句完整的话比如“一只黄色的拉布拉多小狗在绿油油的草地上追逐着一只彩色的蝴蝶”这就是它的核心作用把模型能识别的特征数值转换成人类能理解的文字。细节模块整体描述骨干编码器提取图像特征输入一张普通的 RGB 图片 I比如你拍的一张小狗照片操作用 BackboneEncoder比如 Faster R-CNN处理图片输出一堆图像特征 X这一步就像给图片 “打标签”把图片里的物体小狗、草地、背景都找出来提取它们的基础特征比如小狗的轮廓、草地的颜色转换成模型能看懂的数字形式。记忆增强编码器给特征 “加 buff”输入上一步提取的图像特征X操作用记忆增强编码器处理输出 N 层不同的增强特征网格解码器把特征 “翻译成文字”输入上一步 N 层增强后的图像特征操作用网格解码器处理输出生成的文本描述多头自注意力MSA是什么多头自注意力MSA给 Key 和 Value “加上知识库输入图像特征X以及可学习的记忆槽操作把图像本身的特征和记忆槽拼接起来带记忆槽的多头自注意力计算输入图像特征X用来生成 Query上一步得到的 Key 和 Value带记忆槽操作做多头自注意力MSA再加上残差连接最后做层归一化前馈网络层输入上一步自注意力的输出(X)操作经过前馈网络FeedForward再加上残差连接和层归一化FeedForward 层的细节记忆增强编码器记忆增强编码器由多个上述编码层结构按顺序堆叠组成第 i 层的输出作为第 (i1) 层的输入相当于创建了图像区域之间关系的多级编码因此 N 个编码层的堆叠将产生 N 个输出作为图像的多级区域特征。网格解码器网格解码器的前向流程网格解码器使用已生成的单词以及记忆增强编码器输出的多级区域特征作为输入流程如下门控权重的计算与核心创新