我正在使用依赖关系树解析器制作一个应用程序。实际上,解析器是这样的:Parser Stanford,但它很少更改我想要解析的句子中某些单词的一两个字母。这对我来说是一个很大的麻烦,因为我看不到这些变化中的任何模式,我需要包含我句子中相同单词的依赖关系树。
我所能看到的就是一些单词有这些问题。我在处理一个推文数据库。所以,我在这个数据中有很多语法错误。例如,标签“#AllAmericanhumour”就变成了AllAmericanhumor。它漏掉了一个字母(U)。
我能做些什么来解决这个问题吗?在我的第一个视图中,我认为使用编辑距离算法,但我认为这可能是一个更简单的方法。
提前感谢大家
发布于 2012-07-29 01:50:13
您可以使用-tokenize.options标志/属性为记号赋予器提供选项。对于这种特殊的规范化,可以用以下命令关闭它
-tokenize.options americanize=false还可以关闭各种其他规格化(请参见PTBTokenizer或http://nlp.stanford.edu/software/tokenizer.shtml。您可以使用以下命令关闭很多功能
-tokenize.options ptb3Escaping=false但是,解析器是在看起来像ptb3Escaping=true输出的数据上训练的,因此如果与非规范化的标记一起使用,性能会降低。因此,您可能需要考虑其他策略。
如果您在Java级别上工作,您可以查看单词tokens,它实际上是Map,它们有各种键。OriginalTextAnnotation将为您提供未规范化的令牌,即使它已被规范化。CharacterOffsetBeginAnnotation和CharacterOffsetEndAnnotation会将字符偏移量映射到文本中。
附注:你应该接受一些答案:-)。
https://stackoverflow.com/questions/11680825
复制相似问题