具有自定义数据的 Huggingface NER

Huggingface NER with custom data

我有一个 csv 数据如下。

**token**      **label**
0.45"      length
1-12       size
2.6"       length
8-9-78     size
6mm        length

每当我收到如下文字时

6mm 8-9-78 silver head

我应该会说 length = 6mmsize = 8-9-78。我是 NLP 世界的新手,我正在尝试使用 Huggingface NER 解决这个问题。我浏览了各种文章。我不知道如何使用自己的数据进行训练。我应该使用哪个 model/tokeniser?还是我应该自己建?任何帮助将不胜感激。

我可能会先看看 spaCy 的模式匹配 + NER。 spacy 提供的模式匹配规则非常强大,尤其是与它们的统计 NER 模型结合使用时。您甚至可以使用您开发的模式来创建您自己的自定义 NER 模型。这会让您很好地了解您仍然存在差距或复杂性的地方,这些差距或复杂性可能需要 Huggingface 等其他东西。

如果您愿意付费,还可以利用 prodigy,它提供了很好的 UI 人机交互。

Adding REGEX entities to SpaCy's Matcher

我有两个选择,一个是 Spacy(如@scarpacci 所建议),另一个是 SparkNLP。我选择 SparkNLP 并找到了解决方案。我将数据格式化为 CoNLL 格式并使用 Spark 的 NerDlApproachGLOVE word embedding.

进行训练