我正在尝试编写一个模型,该模型将从财务文件中提取某些细节。
它必须能够提取;合同开始日期、合同期限、合同价值和所有命名实体。最好它还能够对命名实体进行分类。
我有大约 600 个可用于培训和测试目的的标记文档。
我应该使用什么型号?
我看过不同的命名实体识别模型,例如 Skip-Gram 模型。然而,这些模型并没有利用这些文档中的每一个都将包含所有这些信息的事实。为了说明这一点,Skip-Gram 模型通常以这样一种方式实现,即只有同一句子中的单词对其语义向量有贡献。
我正在尝试编写一个模型,该模型将从财务文件中提取某些细节。
它必须能够提取;合同开始日期、合同期限、合同价值和所有命名实体。最好它还能够对命名实体进行分类。
我有大约 600 个可用于培训和测试目的的标记文档。
我应该使用什么型号?
我看过不同的命名实体识别模型,例如 Skip-Gram 模型。然而,这些模型并没有利用这些文档中的每一个都将包含所有这些信息的事实。为了说明这一点,Skip-Gram 模型通常以这样一种方式实现,即只有同一句子中的单词对其语义向量有贡献。
假设您的财务文件具有一致的结构和格式,并且尽管由于深度学习的流行,算法最近变得“过时”,但我建议您尝试使用条件随机字段 (CRF)。
CRF 在这个领域提供了非常有竞争力的性能,通常用于命名实体识别、词性标注及其变体。
CRF 的另一个优点是它们考虑了当前“字段”在文档中的位置以及前面和后面的字段,以便计算当前类应该是什么,这样您就不必花费太多时间将结构特征工程化到您的模型中。
我在crfsuite库上取得了很大的成功, 特别是它是用 C 语言编写的,但有一个 python 包装器。