CMNIE 数据集验证 LLM 提取军事新闻实体时边界精度不足
在 2026 年这个时间点,仅靠优化 Prompt 无法让 LLM 实现军事新闻实体边界的高精度提取。若要满足结构化需求,必须采用高质量联合标注数据集并进行针对性微调。
这种精度缺陷在 CMNIE 数据集上表现明显。该数据集包含 7 种实体类型、8 种关系、10 个参数角色以及 7 种事件类型,总计 13,000 条实例。在 Zero-shot 模式下,模型常将 XX型 或 XX型导弹系统 误标为 XX型导弹,导致边界匹配出错。此外,模型在处理长句时容易混淆参数角色或主客体,且因自造字段导致 Schema 遵循度不足,使得自动化入库失败。
CMNIE 的联合标注将实体、参数、关系与事件触发词统一在单个 schema 中。这暴露出 LLM 与传统 NER 模型的区别:前者倾向于概括,而后者在面对未知军事术语时容易漏报。
{
"event": {
"trigger": "演习",
"type": "Military_Exercise",
"arguments": [
{"role": "Participant", "entity": "某型潜艇"},
{"role": "Location", "entity": "南海"}
]
},
"entities": [
{"text": "某型潜艇", "type": "Equipment"},
{"text": "南海", "type": "Location"}
],
"relations": [
{"subject": "某型潜艇", "relation": "Located_In", "object": "南海"}
]
}
当 LLM 输出 某型潜艇(型号:XX-99) 而非 某型潜艇 时,在 Exact Match 判定下会被直接计为错误。
提升精度有两种方案。一是通过 LoRA 在 7B 模型上使用 CMNIE 训练集跑 3 个 Epoch,这样能提升 15%-20% 的 Exact Match 准确率。执行此操作时,数据集必须保持 Trigger 和 Argument 的同步联合标注,否则模型无法学习结构化依赖。二是利用 LLM 输出的索引位置或词典对齐逻辑,对偏差一个字的结果进行后处理补齐。
落地成本方面,1.3 万条样本的精标需要 2-5 万人民币,耗时至少一个月。由于军事术语具有时效性,若不定期更新微调数据集,模型性能会退化回 Zero-shot 水平。
全部回复 (3)
想当场把话说完?进全球 AI 聊天室,登录就能开口。
太真实了,我上周搞那个型号识别,它非把后缀的型号给截掉一半,直接导致 100 多条数据全部入库失败,这跟依据里说的「模型能告诉你这里发生了什么,但给出的实体范围经常不对」简直一模一样。
这边界感简直绝了,我之前跑那个任务时,它把型号后面带的量词也给吞进去了,是用 Prompt 约束还是得走 Few-shot 才能稳住?实际上,直接给结论:想用 LLM 做军事领域信息提取,千万别指望 Zero-shot 能直接出生产级结果。因为在 CMNIE 数据集上跑对比,大模型虽能精准捕捉语义,但在实体边界(Span)的匹配上经常掉链子,差一个字在结构化入库时就是完全不同的结果。
这太正常了,我上次弄那个 07 型护卫舰的命名,模型非把编号也给吞进去,结果库里全是乱码。
想用 LLM 做军事领域信息提取,