如何在斯坦福时间标记器中为 sutime 编写自定义规则?

How to write custom rules for sutime in stanford temporal tagger?

Stanford temporal tagger 在大多数情况下工作正常。例如 "I should be in school tomorrow by 9'o clock." 的时间是 9 点钟。但是 SUTime 没有识别它:(

所以我想添加基于此的规则。有什么建议吗?

我正在使用 this

我在“9 点钟”规则的正下方添加了这条规则:

{ ( (?: /the/ /hour/ /of/?)? ([ $INT & { numcompvalue<=24 } ]) (/'/ /o/ /clock/)) => IsoTime([0].numcompvalue, 0, NIL) }

在:

edu/stanford/nlp/models/sutime/english.sutime.txt

并且能够识别您描述的模式。

请注意,分词器将“9 点钟”拆分为 [“9”、“'”、"o"、"clock"]。

一般来说,如果您向该文件添加规则,则可以为您希望涵盖的案例添加自定义模式。可以在这个 jar 中找到该文件:

stanford-corenlp-3.5.2-models.jar