如何在自然文本中查找日期的引用?

biz*_*lop 1 nlp machine-learning named-entity-recognition temporal information-extraction

我想要做的是解析原始自然文本并找到描述日期的所有短语.

我有一个相当大的语料库,其中包含所有日期标记的引用:

I met him <date>yesterday</date>.
Roger Zelazny was born <date>in 1937</date>
He'll have a hell of a hangover <date>tomorrow morning</date>
Run Code Online (Sandbox Code Playgroud)

我不想解释日期短语,只需找到它们.事实上,他们的约会是无关紧要的(在现实生活中,他们甚至不是约会,但我不想让你厌烦细节),基本上它只是一套开放式的可能值.值本身的语法可以近似为无上下文,但是手动构建非常复杂,并且随着复杂性的增加,越来越难以避免误报.

我知道这是一个很长的镜头所以我不希望存在一个开箱即用的解决方案,但我可以使用哪种技术或研究?

Max*_*kin 6

学术界和工业界使用的通用方法之一是基于条件随机场.基本上,它是一个特殊的概率模型,您首先使用标记的数据进行训练,然后它可以标记给定文本中的某些类型的实体.

您甚至可以尝试斯坦福自然语言处理组的一个系统:Stanford Named Entity Recognizer

下载该工具时,请注意有几种型号,您需要最后一种:

包括在斯坦福NER中的是为CoNLL训练的4级模型,为MUC训练的7级模型,以及针对这些类集的交集的两个数据集训练的3级模型.

3级地点,人员,组织

4级地点,人员,组织,杂项

7类时间,地点,组织,人,钱,百分比,日期

更新.你可以在这里在线尝试这个工具.选择muc.7class.distsim.crf.ser.gz分类器并尝试一些带日期的文本.它似乎不承认"昨天",但它承认"20世纪",例如.最后,这是CRF培训的问题.


斯坦福NER截图