2009-10-31 3 views
6

szukam wyodrębnić nazwy i miejsca z bardzo krótkimi seriami przykład tekstuCzy powinienem używać LingPipe lub NLTK do wyodrębniania nazw i miejsc?

 
"cardinals vs jays in toronto" 
" Daniel Nestor and Nenad Zimonjic play Jonas Bjorkman w/ Kevin Ullyett, paris time to be announced" 
"jenson button - pole position, brawn-mercedes - monaco". 

Dane te są obecnie w bazie danych MySQL, a ja (prawie) posiadają oddzielny rekord dla każdego sportowca, choć nazwy czasami są błędnie napisane, itd.

Chciałbym wydobyć sportowców i lokalizacje. Zwykle pracuję w PHP, ale nie byłem w stanie znaleźć biblioteki do ekstrakcji jednostek (i mogę chcieć zagłębić się w niektóre NLP i ML w przyszłości).

Z tego, co odkryłem, najbardziej polecane są LingPipe i NLTK, ale nie wiem, czy tak naprawdę będzie to odpowiadało mojemu celowi, czy też coś innego będzie lepsze.

Nie programowałem ani w Javie, ani w Pythonie, więc zanim zacznę uczyć się nowych języków, mam nadzieję uzyskać porady dotyczące trasy, którą mam podążać lub innych zaleceń.

+0

"... osobny stolik dla każdego sportowca ..." może masz na myśli _record_ dla każdego sportowca? (to byłoby strasznie dużo stołów inaczej ...) – mjv

+0

tak! języki/moduły byłyby najmniejszym z moich problemów, gdybym miał osobny stół dla każdego sportowca! Dziękuję za wskazanie tego. – pedalpete

Odpowiedz

4

To, co opisujesz, to named entity recognition. Więc polecam sprawdzenie innego questions w odniesieniu do tego tematu, jeśli jeszcze ich nie widziałeś. This wygląda jak najbardziej przydatna odpowiedź do mnie.

Nie mogę naprawdę komentować, czy NLTK lub LingPipe najlepiej nadają się do tego zadania, chociaż patrząc na odpowiedzi wygląda na to, że istnieje sporo innych zasobów napisanych w Javie.

Zaletą korzystania z NLTK jest to, że język Python jest bardzo łatwo dostępny. Inną zaletą jest to, że NLTK book (który jest dostępny za darmo) oferuje jednocześnie wprowadzenie do Pythona i NLTK, co byłoby dla Ciebie przydatne.

Powiązane problemy