Segment Anything(SAM)

基础模型 是一种有前景的发展,它们可以通过"提示"技术对新的数据集和任务进行零样本和少样本学习。Segment Anything 是 Meta AI 在 2023 年提出的。它主要用于解决图像分割中的核心挑战,即如何让机器理解并标注出图像中所有有意义的对象或区域,而不仅仅是预先定义的类别。+

传统的图像分割模型针对特定任务设计,需大量标注数据,且难以适应新场景,SAM 则试图超越这些限制,能够识别和分割图像中几乎任何东西,即可以在没有额外训练 的情况下,应用于各种不同的图像分布和任务,具有**"零样本" 泛化能力**。

可提示分割任务以及实际应用的目标对模型架构施加了限制。(1)模型必须支持灵活的提示,(2)需要能够以摊销的实时方式计算掩码以允许交互式使用,(3)必须具备处理歧义的能力。

一个简单的设计可以满足这三个约束条件:一个强大的图像编码器 计算图像嵌入,一个提示编码器 对提示进行嵌入,然后这两种信息源在一个轻量级掩码解码器 中结合,用于预测分割掩码。我们将该模型称为**"Segment Anything Model**",简称 SAM。该算法为每个训练样本模拟一系列提示(例如点、框、掩码),并将模型的掩码预测与真实标签进行比较。

SAM有三个组件,图像编码器、灵活的提示编码器和快速的掩码解码器。

**图像编码器:**受可扩展性和强大预训练方法的启发,使用了预训练的 ViT 模型将图像编码得到图像嵌入。

提示编码器:将点、框、掩码、文本等提示信息进行编码,后续会和图像嵌入一起用于生成掩码。对于点和框等稀疏提示,输出稀疏嵌入(sparse_embeddings),对于掩码这种密集提示,输出密集嵌入(dense_embeddings)。通过将位置编码与针对每种提示类型学习的嵌入相加来表示点和框,并使用 CLIP 的现成文本编码器表示自由文本。密集提示(即掩码)使用卷积进行嵌入,并与图像嵌入按元素相加。

掩码解码器:将图像编码器得到的图像嵌入和提示编码器得到的提示嵌入整合,然后结合两个可学习的 tokens 生成不同层级的掩码和对应的置信度值。如果指定了 "multimask_output" 参数则会输出 3 个层级的掩码,否则只输出 1 个掩码。

SAM 的训练损失主要针对掩码预测精度 设计,采用交叉熵损失(Cross-Entropy Loss),具体分为:

  1. 掩码分类损失

  2. 掩码分割损失(二进制交叉熵损失(BCE Loss)Dice 损失)

  3. 多掩码损失加权(如 3 个不同精度的掩码)

相关推荐
ZJU_统一阿萨姆6 分钟前
【算子开发】算子融合与Softmax_LayerNorm实现
人工智能·算法·语言模型·硬件架构
chunmiao303217 分钟前
皮尤研究:ChatGPT 发布后,超三成新网页带 AI 创作痕迹
人工智能·机器学习·chatgpt
HIT_Weston22 分钟前
181、【Agent】【OpenCode】TuiThreadCmd(类型增长)(编译&运行时)
人工智能·agent·opencode
jeffsonfu44 分钟前
循环神经网络(RNN)详解:处理序列数据的自然选择
人工智能·深度学习
蓝速科技2 小时前
蓝速科技信创落地:平衡安全合规与项目成本的实战方案
android·运维·人工智能·科技·安全·电脑·鸿蒙
TheBestRucy2 小时前
Python 九阳神功:从零筑基到线程飞升
服务器·开发语言·网络·人工智能·python
Web3&Basketball2 小时前
vLLM部署开源大模型实战:显存、命令与成本核算
人工智能·深度学习·大模型·ai技术·vllm
Dawson Zhu2 小时前
图结构(Graph)如何重构智能体认知?从DAG规划到GraphRAG的技术拆解
人工智能·语言模型·重构·架构·aigc