Как найти название места внутри предложения, используя НЛП - PullRequest
0 голосов
/ 17 февраля 2019

Есть предложения типа

query = "Weather of Moscow"

или

query = "what is the weather tomorrow in France"

Я хочу найти название города.Это будет Moscow и France для них обоих.

Знаете ли вы какой-нибудь драгоценный камень, который решает эту проблему?

1 Ответ

0 голосов
/ 23 февраля 2019

Для извлечения именованных сущностей из текста вы можете использовать Распознавание именованных сущностей (NER).

Для NER в ruby ​​проверьте этот репозиторий:

https://github.com/mblongii/ruby-ner

и это:

https://github.com/diasks2/ruby-nlp#named-entity-recognition

В python вы можете сделать следующее:

Для этого вы можете использовать Spacy NER (Name Entognition Recognition).

import spacy

nlp = spacy.load('en_core_web_sm')
doc = nlp(u'what is the weather tomorrow in France')

for ent in doc.ents:
    print(ent.text, ent.start_char, ent.end_char, ent.label_)

Вывод:

(u'tomorrow', 20, 28, u'DATE')
(u'France', 32, 38, u'GPE')`

'GPE' означает 'Геополитическое образование, то есть страны, города, штаты' .

Чтобы узнать больше о Spacy NER, проверьте эту ссылку: ссылка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...