Learning through Creation: A Hash-Free Framework for On-the-Fly Category Discovery¶
日期: 2026-03-14
arXiv: 2603.13858
代码: LTC
领域: 模型压缩 / 开放世界识别
关键词: on-the-fly category discovery, pseudo-unknown generation, hash-free, prototype matching, open-world
一句话总结¶
提出 LTC(Learning through Creation)框架,通过在训练时用 MKEE(核能量最小化+熵最大化)单步扰动生成伪未知类样本,配合双 max-margin 损失和自适应阈值在连续特征空间(无 hash)中实现类别发现-识别对齐,在 7 个 OCD benchmark 上提升 1.5%-13.1%。
研究背景与动机¶
-
领域现状: On-the-Fly Category Discovery (OCD) 要求模型在离线阶段仅用已知类标注训练,在线阶段从流式数据中实时识别已知类并发现新类。现有方法如 SMILE/PHE 用 hash 编码做原型匹配,DiffGRE 用扩散模型做数据增强。
-
现有痛点: (a) Hash 编码损失细粒度信息 — 将高维特征量化为二值码丢弃语义细节。(b) 优化目标错位 — 训练时仅优化已知类表示学习,却期望推理时自动具备未知类发现能力,本质上是不合理的。(c) DiffGRE 虽避免 hash 但将特征压缩到 12 维,信息损失严重。
-
核心矛盾: 训练阶段从不接触"未知"概念,却期望模型在推理时能发现未知类 — 训练目标与推理目标的根本性不对齐。
-
切入角度: 如果模型从未见过"未知",就不能指望它能检测未知。解决方案是在训练时主动创造伪未知样本,让模型学会区分已知与未知的边界。
-
核心 idea: 通过创造来学习 — 在线生成伪未知样本(不依赖外部生成器),用 margin loss 显式塑造已知/未知的决策边界。
方法详解¶
整体框架¶
训练:提取已知类特征 → mixup 生成跨类混合样本作初始化 → MKEE 扰动推向未知区域 → 双 max-margin loss 分离已知/未知 + 自适应阈值。推理:动态原型字典做连续特征空间匹配,相似度低于阈值则创建新原型。
关键设计¶
-
Hash-Free 动态原型字典:
- 用连续特征空间的余弦相似度做原型匹配,替代 hash 码的汉明距离
- 推理时维护动态字典:\(\hat{y} = \arg\max_k f(x)^\top P_k\),若 \(s_{\max} < \tau\) 则初始化新原型
- 训练目标:supervised contrastive loss(类内聚合、类间分离)+ cross-entropy
-
MKEE 伪未知生成:
- 第一步(Mixup 初始化):对不同类样本做 mixup \(x_{mix} = \lambda x_i + (1-\lambda) x_j\),在类间边界附近生成候选
- 第二步(MKEE 扰动):沿目标函数 \(\mathcal{J}(x) = -H(p) - \lambda_\rho \rho(x)\) 做单步梯度上升。\(H(p)\) 是分类器预测熵(鼓励不确定性),\(\rho(x)\) 是 KDE 估计的已知类特征密度(鼓励远离已知类)
- 效果:将样本从已知分布的高密度区域推向低密度、高不确定性的"未知类似"区域
- 计算极轻:只需一步梯度操作,batch 内完成,不依赖外部生成器
-
双 Max-Margin 损失 + 自适应阈值:
- \(\mathcal{L}_{pos}\):迫使已知类样本的最大原型相似度高于 \(\tau + m_{pos}\)
- \(\mathcal{L}_{neg}\):迫使伪未知样本的最大原型相似度低于 \(\tau - m_{neg}\)
- 自适应阈值:基于已知/伪未知样本相似度的分位数做 EMA 更新 \(\tau\)
损失函数¶
\(\mathcal{L}_{total} = \mathcal{L}_{ce} + \alpha \mathcal{L}_{sup} + \gamma_{mm} \mathcal{L}_{mm}\)
实验关键数据¶
主实验(7 个 OCD Benchmark, All-class Accuracy)¶
| 方法 | CIFAR-10 | CIFAR-100 | ImageNet-100 | CUB-200 | Stanford Cars | Oxford Pets | Food101 |
|---|---|---|---|---|---|---|---|
| SMILE | 73.9 | 58.5 | 42.5 | 32.5 | 28.9 | - | - |
| PHE | 82.6 | 63.2 | 44.4 | 35.3 | 32.3 | - | - |
| DiffGRE-S | 81.1 | 61.2 | 44.1 | 36.1 | 30.0 | 72.3 | 68.1 |
| LTC | 84.7 | 67.2 | 51.1 | 43.1 | 37.7 | 85.4 | 72.3 |
消融实验¶
| 配置 | CIFAR-10 All | CUB-200 All | 说明 |
|---|---|---|---|
| Baseline (hash-free) | ~80 | ~36 | 无伪未知生成 |
| + MKEE generation | 提升 | 提升 | 伪未知样本有效 |
| + Dual margin loss | 进一步提升 | 进一步提升 | 边界分离增强 |
| + Adaptive threshold | 最佳 | 最佳 | 动态调节更鲁棒 |
关键发现¶
- Oxford Pets 上 +13.1% 是最大提升,细粒度数据集上伪未知生成的价值最大
- Hash-free baseline 本身就比 SMILE/PHE 的 hash 方法强,证实连续特征空间优于离散编码
- 仅用 ~200 个伪未知样本(整个训练过程)就在 Pets 上提升 ~10%,说明关键不是数据量而是决策边界塑造
- MKEE 的 t-SNE 可视化清晰显示伪未知点落在所有已知类簇之外
亮点与洞察¶
- "训练-推理目标对齐"的核心洞察深刻 — 不能指望只学已知类的模型自动发现未知,必须在训练中模拟发现过程
- MKEE 生成的极致轻量化令人印象深刻 — 不用扩散模型/GAN,仅靠 mixup + 单步梯度就能生成有效的伪未知样本,计算开销几乎为零
- 自适应阈值的设计合理 — 随训练进展模型信心变化,固定阈值必然次优
局限性 / 可改进方向¶
- MKEE 生成质量依赖于 mixup 初始化,如果类间差异极大 mixup 可能生成不自然样本
- 未知类数量的估计仍是开放问题(依赖阈值)
- 缺少大规模数据集(如 ImageNet-1K full)上的验证
相关工作与启发¶
- vs SMILE/PHE: hash 编码 → 连续原型匹配,信息保留更完整
- vs DiffGRE: 不用外部扩散模型做数据增强,而是在线轻量生成
- "通过创造来学习"的思路可推广到 OOD 检测、开放集识别等需要处理未知类的场景
评分¶
- 新颖性: ⭐⭐⭐⭐ "训练时主动创造未知"的理念和 MKEE 生成器设计新颖
- 实验充分度: ⭐⭐⭐⭐ 7 个benchmark全面,消融充分
- 写作质量: ⭐⭐⭐⭐ 问题定义清晰,方法逻辑链紧凑
- 价值: ⭐⭐⭐⭐ OCD 方向的显著推进,+13.1% 的提升说明方法有效