Как определить имена человека в тексте (Java)

Может быть огромное увеличение производительности путем ограничения того, какие столбцы возвращаются, если записи пересекают Интернет.

5
задан mjv 10 December 2009 в 23:53
поделиться

4 ответа

While we're waiting for details on what you're doing, here are a couple of links to lists of common first names, at least in the USA demographic:

I think you'll need these (and/or more) to check against, as your task doesn't sound like something a NLP can do for you without reference information.

2
ответ дан 13 December 2019 в 19:28
поделиться

I'd look into LingPipe. Check out this demo. By the way, what you are trying to do is called "named entity recognition". It's a difficult CS problem to get right.

3
ответ дан 13 December 2019 в 19:28
поделиться

OpenNLP имеет распознавание именованных объектов. Проверьте раздел Поиск английского имени в документации. Но мой опыт подсказывает, что он идентифицирует объекты, но с ним не связано никаких тегов. (Чтобы быть точным, я обнаружил, что теги присвоены неоднозначно.) Итак, если у вас есть предложение «Мой друг Джо Смит пошел в магазин Walmart», OpenNLP идентифицирует два названных объекта - «Joe Smith» и «Walmart». Я не мог сделать так, чтобы он пометил «Джо Смит» как личность и «Walmart» как организацию.

Как предложил Мэтт, вы можете попробовать LingPipe, хотя это коммерческий инструмент. Некоторые из альтернатив с открытым исходным кодом: MorphAdorner и Stanford NER .

3
ответ дан 13 December 2019 в 19:28
поделиться

Вы также можете просмотреть OpenCyc и проекты WordNet как более интересные с семантической точки зрения.

0
ответ дан 13 December 2019 в 19:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: