简单的自然语言处理启动Java

前端之家收集整理的这篇文章主要介绍了简单的自然语言处理启动Java前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Is there a good natural language processing library [closed]3
我愿意开始开发一个关于NLP的项目.我不知道很多可用的工具. google搜索约一个月后我意识到openNLP可以是我的解决方案.

不幸的是,我没有看到任何有关使用API​​的完整教程.他们都缺乏一些一般的步骤.我需要一个来自地面的教程.我在网站上看到很多下载,但不知道如何使用它们?我需要训练或什么吗?这是我想要知道的 –

如何安装/设置一个nlp系统,

>解析英文句子
>识别不同的部分

解决方法

你说你需要“解析”每个句子.您可能已经知道了这一点,但是在NLP中,只是为了明确,术语“解析”通常意味着恢复一些分层句法结构.最常见的类型是组成结构(例如,通过无上下文的语法)和依赖结构.

如果您需要层次结构,我建议您考虑从一个解析器开始.我知道的大多数解析器在解析过程中都包含了POS标记,并且可能会提供比有限状态POS标签更高的准确性标记(Caveat – 我比组件解析器更为熟悉,而不是依赖解析器).可能有一些或大多数依赖解析器需要POS标签作为输入).

解析的大缺点是时间的复杂性.有限状态POS标签经常以每秒数千字的速度运行.即使是贪婪的依赖解析器也相当慢,组件解析器通常以每秒1-5句的速度运行.所以如果你不需要层次结构,你可能想要坚持使用有限状态的POS标签来提高效率.

如果您确定需要解析结构,请提供以下建议:

我认为@aab建议的斯坦福解析器既包括一个组成的解析器和依赖解析器.

伯克利解析器(http://code.google.com/p/berkeleyparser/)是一个非常着名的PCFG组件解析器,实现了最先进的精确度(相当于斯坦福解析器等于或高于我),效率相当(每秒3-5句话).

BUBS解析器(http://code.google.com/p/bubs-parser/)也可以运行高精度伯克利语法,并将效率提高到大约15-20句/秒.全面披露 – 我是在这个解析器工作的主要研究人员之一.

警告:这两个解析器都是研究代码,并带来所有的问题.但是我很想看到人们实际上使用BUBS,所以如果对你有用,请试一试,并与我联系,提出问题,意见,建议等.

和几个维基百科参考的背景如果需要:

>无上下文的语法:http://en.wikipedia.org/wiki/Stochastic_context-free_grammar
>依赖语法:http://en.wikipedia.org/wiki/Dependency_grammar

原文链接:https://www.f2er.com/java/125784.html

猜你在找的Java相关文章