Извлечение информации и извлечение отношений с Stanford NLP для python - PullRequest
0 голосов
/ 19 сентября 2018

Как мне извлечь названия некоторых компаний из пакета документов, используя ядро ​​Standford NLP для Python?

Вот пример моих данных:

'3Trucks Inc («3Trucks» или компания) - это высокотехнологичная цифровая платформа B2B, позволяющая грузовым владельцам соответствовать длинным-транспортировать потребности в грузоперевозках и владельцев грузовых автомобилей, которые могут их обслуживать, с помощью собственной цифровой платформы. Основанная в 2016 году, штаб-квартира 3Trucks находится в Калифорнии и арендует офисы в Бостоне и Флориде.Одними из их главных клиентов являются Google, IBM и Nokia

3Trucks, основанная в 2010 году, когда г-н Марк Роберт является ее генеральным директором, а Джон Маклин - партнером и техническим директором. '

Я хочу вывести для извлечения информации:

3Truck

Я хочу вывести для извлечения отношения:

('3truck', founded '2010'),
('John Mclean', 'Partner')
('3truck',client 'Google')

1 Ответ

0 голосов
/ 19 сентября 2018

обычно для таких приложений будет использоваться распознавание именованных объектов, но NER может классифицироваться только по некоторым категориям.

from nltk import word_tokenize, pos_tag, ne_chunk
from nltk.chunk import tree2conlltags

sentence = "Mark and John are working at Google."
print(tree2conlltags(ne_chunk(pos_tag(word_tokenize(sentence))
"""[('Mark', 'NNP', 'B-PERSON'), 
    ('and', 'CC', 'O'), ('John', 'NNP', 'B-PERSON'), 
    ('are', 'VBP', 'O'), ('working', 'VBG', 'O'), 
    ('at', 'IN', 'O'), ('Google', 'NNP', 'B-ORGANIZATION'), 
    ('.', '.', 'O')] """

Для вашего приложения вы должны обучить распознавание Именованной сущности в отношении данных, которые вы собираетесь задать Обучение NER

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