首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >NLTK vs斯坦福NLP

NLTK vs斯坦福NLP
EN

Stack Overflow用户
提问于 2016-10-13 11:36:32
回答 7查看 15K关注 0票数 29

我最近开始使用NLTK工具包来创建一些使用Python的解决方案。

我听说了很多关于使用斯坦福NLP的社区活动。谁能告诉我NLTK和斯坦福NLP之间的区别?它们是两个不同的库吗?我知道NLTK有一个到斯坦福NLP的接口,但是谁能给出一些基本的区别,甚至更多的细节。

可以通过Python使用Stanford NLP吗?

EN

回答 7

Stack Overflow用户

发布于 2016-10-14 02:13:06

谁能告诉我NLTK和斯坦福NLP有什么不同?它们是两个不同的库吗?我知道NLTK有一个到斯坦福NLP的接口,但是谁能给出一些基本的区别,甚至更多的细节。

(我猜你指的是“Stanford CoreNLP”。)

它们是两个不同的库。

用Java

  • NLTK编写的
  • Stanford CoreNLP

的Python库

主要的功能差异是NLTK有多个版本或接口到其他版本的NLP工具,而斯坦福CoreNLP只有他们的版本。NLTK还支持安装第三方Java项目,甚至包括instructions for installing some Stanford NLP packages on the wiki

这两种语言都对英语有很好的支持,但如果您正在处理其他语言:

models for English, Chinese, French, German, Spanish, and Arabic.

  • NLTK自带
  • Stanford CoreNLPcorpora in additional languages like Portugese, Russian, and Polish自带。单个工具可能支持更多语言(例如,没有丹麦语语料库,但有DanishStemmer).

也就是说,哪一个是“最好的”将取决于您的特定应用程序和所需的性能(您正在使用的功能、语言、词汇、期望的速度等)。

可以使用斯坦福自然语言处理程序吗?

Yes, there are a number of interfaces and packages for using Stanford CoreNLP in Python (独立于NLTK)。

票数 35
EN

Stack Overflow用户

发布于 2018-06-25 20:02:05

选择将取决于您的用例。对于pre-processing和文本标记化,NLTK非常棒。它还包括一个很好的POS标记器。Standford Core NLP仅用于标记化/POS标记有点夸张,因为Standford NLP需要更多的资源。

但一个根本的区别是,您不能使用NLTK即可解析语法依赖。如果文本域不受限制,您需要为那些可能非常乏味的内容指定一个语法。而Standford NLP为一般文本提供了一个概率解析器作为一个可下载的模型,这是非常准确的。它还内置了NER (命名实体识别)等功能。另外,我会推荐大家看看Spacy,它是用python编写的,使用起来很简单,而且比CoreNLP更具faster特性。

票数 10
EN

Stack Overflow用户

发布于 2019-08-26 05:03:04

看起来您是NLP的新手。

我最近开始使用NLTK工具包

如果你确实是NLP的新手,那么最好的办法就是从简单开始。因此,理想情况下,您应该从nltk开始。我是自然语言处理的新手(只有几个月大)。我可以肯定的是,对于初学者来说,nltk更好,因为它有一个很棒的免费online book,可以帮助初学者快速学习。

一旦你感觉很舒服,并且确实有问题要解决,看看斯坦福核心NLP是否会更好地解决你的问题。

如果你想坚持使用NLTK,你也可以在NLTK中访问斯坦福CoreNLP API。

现在来看看它们的异同:

谁能告诉我NLTK和斯坦福NLP有什么不同?它们是两个不同的库吗?

两者都提供自然语言处理。Stanford Core NLP的一些最有用的部分包括词性标记器、命名实体识别器、情感分析和模式学习。

命名实体识别器在Stanford Core NLP中更好。Stanford Core NLP更擅长语法功能,例如提取主语、宾语、谓语(这就是我从nltk切换到Stanford Core NLP的部分原因)。正如@user812786所说,NLTK有多个接口可以连接到其他版本的NLP工具。NLTK也更适合学习NLP。如果您需要使用多个语料库,请使用NLTK,因为您可以很容易地访问大量text corpora and lexical resources。两者都有POS标签和情感分析。

可以使用斯坦福自然语言处理程序吗?

是的绝对是。您可以使用StanfordNLP,这是一个Python自然语言分析包,能够调用Python包。还有多个使用Stanford CoreNLP server的Python包

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40011896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档