Machine learning 使用类别列表学习

Machine learning 使用类别列表学习,machine-learning,nlp,named-entity-recognition,crf,crf++,Machine Learning,Nlp,Named Entity Recognition,Crf,Crf++,在培训CRF++的模板中,我如何为上市公司提供一个自定义的dictionary.txt文件,为流行的欧洲食品提供另一个文件,例如,或任何类别的文件 然后为每个类别提供一个样本培训数据,从而了解如何在该类别的上下文中使用这些特定的命名实体。 通过这种方式,我和系统可以确保它正确理解文本中某些命名实体的结构,无论是推特还是普利策奖获奖新闻文章,而不是提供数百兆字节的数据 这会很酷。该模型将有一个明确的已知实体词典(不需要扩展),以及一个关于这些已知实体在人类文本中的结构的统计方法 PS-只是为了清晰

在培训CRF++的模板中,我如何为上市公司提供一个自定义的
dictionary.txt
文件,为流行的欧洲食品提供另一个文件,例如,或任何类别的文件

然后为每个类别提供一个样本培训数据,从而了解如何在该类别的上下文中使用这些特定的命名实体。
通过这种方式,我和系统可以确保它正确理解文本中某些命名实体的结构,无论是推特还是普利策奖获奖新闻文章,而不是提供数百兆字节的数据

这会很酷。该模型将有一个明确的已知实体词典(不需要扩展),以及一个关于这些已知实体在人类文本中的结构的统计方法


PS-只是为了清晰,而不是渴望一个正则表达式。只有当你在字典里有很多,很多规则和很多无聊的时间时,这些才是很酷的。

我想你说的是地名词典列表(dictionary.txt)

您必须在训练数据中包含单词的相应特征,然后在模板文件中指定它

例如:您的列表包含以下实体:
Hershey's
培训数据中有一句话:
我喜欢好时巧克力。

因此,当您以CoNLL格式(对于CRF++)排列数据时,您可以添加一列(该列的值应为0或1,表示字典中存在该单词),该列的所有单词值均为0,Hershey除外。 您还必须将此列作为功能包含在模板文件中

为了更好地了解模板文件和CRF++的NER培训,您可以观看以下视频并对您的疑问进行评论:)

(一)

(二)

编辑:(查看OP评论后)

具有额外功能的示例培训数据: 我添加了3个特性。
IsCountry
特征值(1或0)可从国家地名录列表中获得。其他2个特征可以脱机计算。请注意,文件中添加的标题仅供参考,不应包含在培训数据文件中

上述数据的示例模板文件:


请注意,测试数据也应与列车数据采用相同的格式,具有相同的功能/相同的列数。

-数据集和模板在crf++中运行不佳。您对数据集的其他功能和改进有何建议。这将充分说明crf++的最佳工作方式。在同一个数据集中,如果我必须包括地名录,你能给出一个修改的例子吗?你也能分享你的测试数据吗?不多,很少有标题-我不完全清楚地名录的部分。如果一个实体在地名录中,我要在培训数据中包含
1或0
,为什么测试数据也要表明这一点?有可能为模型提供一个全新的实体,而该实体不在地名录中,也不可能首先通过地名录运行每个实体,给出
1或0
标签,然后传递给CRF?这将变得更像正则表达式类型验证。我对你的评论的回复很长,所以我无法发表评论。我已在这里回覆: