我可以在识别段落中给定的单词时使用自然语言处理吗?还是需要使用机器学习算法

时间:2019-06-23 20:16:13

标签: python algorithm machine-learning nlp

我需要使用NLP识别一些给定的单词。 例如,

玛丽住在法国

如果我们在这里考虑给定的单词,则是澳大利亚,德国,法国。但是这句话只包括法国。

因此,在上述3个给定单词中,我需要识别的句子仅包括法国

1 个答案:

答案 0 :(得分:0)

我会发表评论,但是我没有足够的声誉。您究竟要在这里实现什么以及您的示例的代表性如何还不清楚,请编辑您的问题以使其更清楚。

无论如何,就像Guy Coder所说的那样,如果您完全知道要查找的词,那么您根本就不需要机器学习或NLP库。但是,如果不是这种情况,并且您不知道要查找的每个示例,则以下内容可能会有所帮助:

您似乎想执行的操作是执行命名实体识别(NER),即在句子中标识命名实体(例如国家/地区)。如果是这样,简短的答案是:您不需要使用任何机器学习算法。您可以只使用一个spaCy之类的python库,它带有预先训练的语言模型,该模型可以执行很多任务,例如NER,以提高性能。以下代码段将帮助您入门:

import spacy
nlp = spacy.load('en')

doc = nlp("Mary Lives in France")
for entity in doc.ents:
    if (entity.label_ == "GPE"):
        print(entity.text)

以上代码段的输出为“ France”。命名实体涵盖了许多可能的事物。在上面的代码段中,我已经过滤了地缘政治实体(GPE)。

https://spacy.io/usage/spacy-101上了解有关spaCy的更多信息