Apache NLP,我可以从二进制文件中获取正确的令牌。
如果输入是“hosr road”,这是错字错误,正确的单词是“hosur road”, 在二进制文件中搜索后,我可以将正确的单词作为“hosur road”作为标记。
String input = "hosr road";
InputStream tokenModelIn = getClass().getClassLoader().getResourceAsStream("META-INF/nlp/en-token.bin");
TokenizerModel tokenModel = new TokenizerModel(tokenModelIn);
Tokenizer tokenizer = new TokenizerME(tokenModel);
String tokens[] = tokenizer.tokenize(input);
提前致谢。
答案 0 :(得分:1)
简短回答:不,你不能。
OpenNLP语言模型不是用于纠正给定语言拼写的字典。而且,"标记化"与"拼写纠正"不同。令牌只代表一个句子的片段,所以标记化 - 作为一个自然语言处理步骤 - 只是给你这些片段,即使它们拼写错误。它不会纠正这些。
如果您希望对某些文本数据进行拼写纠正,可以尝试使用其他API / Framework。也许请查看Lucene和此StackOverflow post。