加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 在stanford解析器中查找名词和动词

发布时间:2020-12-14 05:38:50 所属栏目:Java 来源:网络整理
导读:我需要找出一个单词是动词还是名词,还是两者都是 例如,单词是“search”它既可以是名词也可以是动词,但是stanford解析器会为它提供NN标签. 有没有什么办法让斯坦福解析器给出“搜索”既是名词又是动词? 我现在使用的代码 public static String Lemmatize(St
我需要找出一个单词是动词还是名词,还是两者都是

例如,单词是“search”它既可以是名词也可以是动词,但是stanford解析器会为它提供NN标签.

有没有什么办法让斯坦福解析器给出“搜索”既是名词又是动词?

我现在使用的代码

public static String Lemmatize(String word) {
    WordTag w = new WordTag(word);
    w.setTag(POSTagWord(word));
    Morphology m = new Morphology();
    WordLemmaTag wT = m.lemmatize(w);

    return wT.lemma();
}

或者我应该使用任何其他软件来做到这一点?请建议我
提前致谢

解决方法

Stanford Parser根据上下文统计猜测单词的词性标记.你应该真正传入一个完整的句子,以确定在这句话中,“搜索??”是名词还是动词.

您不需要完整的解析器来获取词性标记. Stanford POS Tagger就足够了;它还包括Morphology类,但它也考虑了上下文.

如果你想要一个英语单词可以使用的所有词性标签,而不给出上下文,那么WordNet可能是更好的选择.它有几个Java接口,包括JWNL和JWI.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读