RDa*_*ata 21 python nlp nltk stanford-nlp
我最近开始使用NLTK工具包来使用Python创建一些解决方案.
我听说很多关于使用斯坦福NLP的社区活动.谁能告诉我NLTK和斯坦福NLP有什么区别?它们是2个不同的库吗?我知道NLTK有一个与斯坦福NLP的接口,但是任何人都可以对一些基本差异或更详细的内容有所了解.
可以使用Python使用stanford NLP吗?
use*_*786 27
谁能告诉我NLTK和斯坦福NLP有什么区别?它们是2个不同的库吗?我知道NLTK有一个与Stanford NLP的接口,但是任何人都可以对一些基本差异或更详细的内容有所了解.
(我假设你的意思是" 斯坦福CoreNLP ".)
它们是两个不同的库.
主要功能区别在于NLTK具有与其他版本NLP工具的多个版本或接口,而Stanford CoreNLP仅具有其版本.NLTK还支持安装第三方Java项目,甚至包括在wiki上安装一些Stanford NLP软件包的说明.
两者都对英语有很好的支持,但如果你正在处理其他语言:
也就是说,哪一个"最好"将取决于您的具体应用和所需的性能(您使用的功能,语言,词汇,所需的速度等).
可以使用Python使用Stanford NLP吗?
是的,有许多接口和软件包可以在Python中使用Stanford CoreNLP (独立于NLTK).
选择将取决于您的用例。NLTK非常适合预处理和标记文本。它还包括一个不错的POS标记器。仅用于标记化/ POS标记的Standford Core NLP有点过大,因为Standford NLP需要更多资源。
但是一个根本的区别是,您不能解析语法依赖NLTK开箱即用。如果文本域不受限制,则需要为此指定一个语法,这可能非常繁琐。Standford NLP为通用文本提供了一个概率分析器,作为可下载的模型,它非常准确。它还内置了NER(命名实体识别)等。我也建议您看一下Spacy,它是用python编写的,比CoreNLP 易于使用且速度更快。
看来您是 NLP 新手。
我最近开始使用NLTK工具包
如果您确实是 NLP 新手,那么最好从简单开始。所以理想情况下你应该从 nltk 开始。我对自然语言处理比较陌生(几个月前)。我可以确认,对于初学者来说,nltk 更好,因为它有一本很棒的免费在线书籍,可以帮助初学者快速学习。
一旦您感到舒服并且确实有问题需要解决,请查看斯坦福核心 NLP,看看它是否能更好地解决您的问题。
如果您想坚持使用 NLTK,还可以访问NLTK中的斯坦福 CoreNLP API 。
现在来说说相同点和不同点:
谁能告诉我 NLTK 和斯坦福 NLP 有什么区别?他们是两个不同的图书馆吗?
两者都提供自然语言处理。斯坦福核心 NLP 的一些最有用的部分包括词性标注器、命名实体识别器、情感分析和模式学习。
命名实体识别器在斯坦福核心 NLP 中效果更好。斯坦福核心 NLP 更擅长语法功能,例如选择主语、宾语、预测(这就是我从 nltk 切换到斯坦福核心 NLP 的部分原因)。正如@user812786所说,NLTK与其他版本的NLP工具有多个接口。NLTK也更适合学习NLP。如果您需要使用多个语料库,请使用 NLTK,因为您可以轻松访问大量文本语料库和词汇资源。两者都有 POS 标签和情感分析。
斯坦福NLP可以用Python来使用吗?
是的,一点没错。您可以使用StanfordNLP,它是一个Python自然语言分析包,能够调用CoreNLP Java包。还有多个使用斯坦福 CoreNLP 服务器的Python 包