一、同一检测框不同实体类别预测失败原因
1. 训练与推理的时候输入不一致
layoutlm 系列的tokenizer分词的时候,对中文都有一个起始token,训练的时候人工标注,同一个检测框的key-value是被划分为不同的实体类别,分别分词,都带有起始token送入网络的。推理的时候按检测框维度分词再送入推理的,这个时候只有一个起始token,两个词之间没有起始token送入推理。
2. 后处理
原来后处理是按检测框维度,取检测框中所有token的类别,按众数决定整个检测框的实体类别。这样一个文本检测框中无法出现多个类别。
二、解决办法讨论
1. 针对训练推理输入不一致,在训练推理过程中,手动去除分词后的起始token,使得在训练推理过程中输入保持一致。
2. 后处理过程中一个检测框中按照token的BIO序列去分开不同的实体及实体类别。