问题
I need to extract dates from lots of text. The more languages the better; English,Spanish, and Portuguese at a minimum. Does such a tool exist? In Java and Mavenized? Here's what I've found:
- http://code.google.com/p/heideltime/ many languages and an impressive online demo, but requires some odd external dependencies that I suspect will make cluster deployment hard/impossible
- http://nlp.stanford.edu/software/sutime.shtml Well documented, but English only. Easy to train?
- http://natty.joestelmach.com/ English only
- https://github.com/samtingleff/jchronic English only
- http://code.google.com/p/nltk/source/browse/trunk/nltk_contrib/nltk_contrib/timex.py English only
Where else should I look?
回答1:
You might find Apache Tika useful.
回答2:
I've been researching a similar topic. There isn't much documentation out there, but I'll share what I've discovered.
UIMA is essentially a framework that glues together programs ("Annotators") in an analysis pipeline. As unstructured data flows through the pipeline, the annotators extract the useful bits and write it to a data object called the Common Analysis Structure (CAS).
A UIMA pipeline is implemented in Java, and thus runs in a JVM. Tools written in other languages, e.g. Perl, can be brought into the pipeline with an appropriate wrapper.
The pipeline can be run in a MapReduce map task. The digitalPebble Behemoth project provides a convenient way to handle this.
来源:https://stackoverflow.com/questions/17241917/is-there-a-multilingual-temporal-expression-tagger-that-can-run-on-hadoop