【发布时间】:2019-09-06 08:37:22
【问题描述】:
(注意:我知道以前有关于这个问题的帖子(例如here 或here,但它们已经相当老了,我认为过去几年 NLP 已经取得了相当大的进展。 )
我正在尝试使用 Python 中的自然语言处理来确定句子的时态。
是否有一个易于使用的软件包?如果没有,我需要如何在 TextBlob、StanfordNLP 或 Google Cloud Natural Language API 中实施解决方案?
TextBlob 似乎最容易使用,并且我设法列出了 POS 标签,但我不确定如何将输出转换为“时态预测值”或只是对时态的最佳猜测。此外,我的文本是西班牙语,所以我更喜欢使用支持西班牙语的 GoogleCloud 或 StanfordNLP(或任何其他易于使用的解决方案)。
我还没有设法使用 StanfordNLP 的 Python 接口。
Google Cloud Natural Language API 似乎提供了我所需要的东西(请参阅here,但我还没有设法找出如何获得此输出。我已将 Google Cloud NLP 用于其他分析(例如实体情绪分析)并且它已经奏效了,所以如果我找到正确的使用示例,我相信我可以设置它。
文本块示例:
from textblob import TextBlob
from textblob.taggers import NLTKTagger
nltk_tagger = NLTKTagger()
blob = TextBlob("I am curious to see whether NLP is able to predict the tense of this sentence., pos_tagger=nltk_tagger)
print(blob.pos_tags)
-> 这会打印出 pos 标签,我如何将它们转换为对这句话时态的预测?
Google Cloud NLP 示例(设置凭据后):
from google.cloud import language
from google.cloud.language import enums
from google.cloud.language import types
text = "I am curious to see how this works"
client = language.LanguageServiceClient()
document = types.Document(
content=text,
type=enums.Document.Type.PLAIN_TEXT)
tense = (WHAT NEEDS TO COME HERE?)
print(tense)
->我不确定预测时态需要输入的代码(在代码中注明)
我是 Python 的新手,因此非常感谢您对这个主题的任何帮助!谢谢!
【问题讨论】:
标签: python google-cloud-platform nlp stanford-nlp part-of-speech