我正在尝试构建可以在“职位描述”中命名实体的 NER 模型。
实体是:
- 必备技能(必须具备java、python、c++等技能)
- Nicetohave 技能(候选人“可能”或“可能不”有这个,都可以。)
- 学位(学士、硕士……)
- 认证
- 职称
我准备了数据集,对它们进行了注释并训练了一个 spacy V2.0 模型。该模型在所有标签上都表现良好(在 70-90 秒范围内),除了“很高兴拥有”。它要么是错误分类,要么根本没有预测。所以我试图用 nicetohave 技能来捕捉句子,并“根据某些启发式方法手动重新分类它们。
但是,其中存在一些复杂性。例如:
所需技能:python、c++知识 必须有matlab知识 很高兴拥有技能:有CAD知识者优先 必须有CATIA V5知识
在上面的示例中,从Required Skills 到matlab这个词的技能是强制性的,从nice to have: until CATIA V5 everything has to be nicetohave。也有可能在某些职位描述中顺序可能会发生变化(首先提到Nicetohave,然后是强制性技能)
或者,也有可能先给出必修技能,然后再有,再有必修。还有更多类似的组合。
那么我该如何处理这种情况呢?我对任何想法、建议持开放态度..