Elamur Research⌕
☰
home / papers / 2014 / A broad-coverage collection of portable NLP components for building shareable analysis pipelines

A broad-coverage collection of portable NLP components for building shareable analysis pipelines

Paper · 2014 · Richard Eckart de Castilho and Iryna Gurevych

Summary

Building NLP pipelines from heterogeneous tools is difficult, and sharing a finished pipeline is harder still. Pipeline descriptors in GATE and Apache UIMA refer to components by name and to resources often only by file name, with no version information. A recipient must therefore rebuild the environment manually, and results may not be reproducible. The authors present DKPro Core, a UIMA-based collection that wraps a wide range of third-party NLP tools as interoperable components. Service-oriented platforms such as WebLicht, Argo, U-Compare and AnnoMarket rely on remote services. DKPro Core instead ships only portable software, distributed through Maven repositories. Its main novelty is an auto-configuration mechanism: at runtime, a component chooses a fitting resource (such as a model) and fetches it from the repository. As a result, a complete pipeline can be written as a short Groovy script whose dependencies download automatically, so it runs on any machine with Groovy installed. This supports reproducibility, teaching, documentation and work on clusters or sensitive local data. Users can also keep backups of every artifact.

Key points

  • DKPro Core is built on Apache UIMA. Components and resources are published as Maven artifacts, uniquely addressed by groupId, artifactId and version, through the federated Maven network with the Central Repository as the default entry point.

  • The authors find gaps in existing infrastructure:

    • GATE and UIMA XML descriptors lack versions.
    • The META-SHARE and CLARIN VLO directories target humans and lack data for programmatic download.
    • WebLicht (with its TCF format), Argo and U-Compare depend largely on web services or closed platforms.
  • The paper separates two tasks:

    • Resource selection: choosing a resource and configuring a component with it.
    • Resource acquisition: obtaining that resource.

    Both are implemented independently of the processing framework.

  • The demonstration is a self-contained Groovy script (Listing 1). Jython with jip, or Java with Maven, would also work. The collection has been used for preprocessing in temporal tagging, topic-model-based text segmentation and textual entailment.

  • Known limitations:

    • Tagsets and tokenization are passed through without checking.
    • Automatic selection can pick a POS model whose tagset does not match the following parser.
    • Future work plans finer, metadata-based selection to replace the "variant" coordinate.

Interesting ideas

  • I1. Version models like code. Trained models and other resources can be published as versioned artifacts in the same package infrastructure used for code. This would let a team version, cache and archive models exactly like libraries.
  • I2. Separate choosing a resource from fetching it. Splitting these two steps lets components default to a sensible resource while allowing explicit overrides. This keeps pipeline configurations short without hiding which resource was actually used.
  • I3. Make the pipeline description executable. A small runnable script that pulls its own dependencies works as both documentation and a reproducibility record. It suits papers, tutorials, Q&A answers and internal onboarding.
  • I4. Keep the resolver pluggable. Repository infrastructures and coordinate schemes may change over time, so the lookup mechanism should be swappable. Rich catalogue metadata could then be combined with automatic downloading, or even with service calls.
  • I5. Check compatibility between chained components. When a pipeline links components trained under different conventions, it is worth automatically detecting mismatched tagsets or tokenization. Such silent mismatches degrade results without raising any error.

Our summary of the paper, in our own words — not its text. The work belongs to its authors; read it at the links above.

 Institutions

Cite

Cite as Richard Eckart de Castilho and Iryna Gurevych. 2014. A broad-coverage collection of portable NLP components for building shareable analysis pipelines. Proceedings of the Workshop on Open Infrastructures and Analysis Frameworks for HLT.

The paper itself, not this page. BibTeX from the library's record of the work. DOI 10.3115/v1/w14-5201

@inproceedings{castilho2014broad,
  title = {{A broad-coverage collection of portable NLP components for building shareable analysis pipelines}},
  author = {Richard Eckart {de Castilho} and Iryna Gurevych},
  booktitle = {Proceedings of the Workshop on Open Infrastructures and Analysis Frameworks for HLT},
  year = {2014},
  doi = {10.3115/v1/w14-5201},
  url = {https://doi.org/10.3115/v1/w14-5201}
}

References

31 references, 1 of them with a card of ours. ↗ leads to the work, «find» searches for one we have no id for yet.

  1. Apache UIMA Community. 2013. Apache uimaFIT guide and reference, version 2.0.0. Technical report, Apache UIMA. 9 http://stackoverflow.com (Last accesses: 2014-02-14) ↗
  2. Ekaterina Buyko and Udo Hahn. 2008. Fully embedded type systems for the semantic annotation layer. In ICGL 2008 - Proceedings of First International Conference on Global Interoperability for Language Resources, pages 26–33, Hong Kong. find
  3. Central Repository. 2014. The Central Repository. URL http://search.maven.org (Last accessed: 2014-03-19), March. Sonatype Inc. (http://www.sonatype.org/central). ↗
  4. Christian Chiarcos, Stefanie Dipper, Michael Götze, Ulf Leser, Anke Lüdeling, Julia Ritz, and Manfred Stede. 2008. A flexible framework for integrating annotations from different tools and tagsets. Traitement Automatique des Langues, 49(2):271–293. find
  5. ClearNLP. 2014. Version 2.0.2 - fast and robust NLP components implemented in Java. //opennlp.apache.org (Last accessed: 2014-03-19), January. find
  6. Hamish Cunningham, Diana Maynard, Kalina Bontcheva, and Valentin Tablan. 2002. GATE: an architecture for development of robust HLT applications. In Proceedings of 40th Annual Meeting of the Association for Computational Linguistics, pages 168–175, Philadelphia, Pennsylvania, USA, July. Association f… find
  7. Stefan Evert and Andrew Hardie. 2011. Twenty-first century corpus workbench: Updating a query architecture for the new millennium. In Proceedings of the Corpus Linguistics 2011 conference, Birmingham, UK, July. University of Birmingham. find
  8. David Ferrucci and Adam Lally. 2004. UIMA: an architectural approach to unstructured information processing in the corporate research environment. Natural Language Engineering, 10(3-4):327–348. find
  9. Antske Fokkens, Marieke van Erp, Marten Postma, Ted Pedersen, Piek Vossen, and Nuno Freire. 2013. Offspring from reproduction problems: What replication failure teaches us. In Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pages 1691–… find
  10. Carole A Goble, Jiten Bhagat, Sergejs Aleksejevs, Don Cruickshank, Danius Michaelides, David Newman, Mark Borkum, Sean Bechhofer, Marco Roos, Peter Li, et al. 2010. myExperiment: a repository and social network for the sharing of bioinformatics workflows. Nucleic acids research, 38(suppl 2):W677–W68… find
  11. José Manuel Gómez-Pérez, Esteban Garcıa-Cuesta, Jun Zhao, Aleix Garrido, José Enrique Ruiz, and Graham Klyne. 2013. How reliable is your workflow: Monitoring decay in scholarly publications. In Proceedings of the 3rd Workshop on Semantic Publishing (SePublica 2013) at 10th Extended Semantic Web… find
  12. Groovy. 2014. Version 2.2.2 - A dynamic language for the Java platform. URL http://groovy.codehaus.org (Last accessed: 2014-03-19, February. ↗
  13. Péter Halácsy, András Kornai, and Csaba Oravecz. 2007. Hunpos – an open source trigram tagger. In Proceedings of the 45th Annual Meeting of the Association for Computational Linguistics Companion Volume Proceedings of the Demo and Poster Sessions, pages 209–212, Prague, Czech Republic, June. Asso… find
  14. Marie Hinrichs, Thomas Zastrow, and Erhard Hinrichs. 2010. WebLicht: Web-based LRT Services in a Distributed eScience Infrastructure. In Nicoletta Calzolari, Khalid Choukri, Bente Maegaard, Joseph Mariani, Jan Odijk, Stelios Piperidis, Mike Rosner, and Daniel Tapias, editors, Proceedings of the Seve… find
  15. Jython. 2014. Jython: Python for the Java Platform. URL http://www.jython.org (Last accessed: 2014-03-19. ↗
  16. Yoshinobu Kano, Makoto Miwa, Kevin Bretonnel Cohen, Lawrence E. Hunter, Sophia Ananiadou, and Jun’ichi Tsujii. 2011. U-Compare: A modular NLP workflow construction and evaluation system. IBM Journal of Research and Development, 55(3):11:1–11:10, May. find
  17. Christopher Manning, Mihai Surdeanu, John Bauer, Jenny Finkel, Steven Bethard, and David McClosky. 2014. The stanford corenlp natural language processing toolkit. In Proceedings of 52nd Annual Meeting of the Association for Computational Linguistics: System Demonstrations, pages 55–60, Baltimore, Ma…
  18. URL http: Joakim Nivre, Johan Hall, Jens Nilsson, Atanas Chanev, Gülsen Eryigit, Sandra Kübler, Svetoslav Marinov, and Erwin Marsi. 2007. Maltparser: A language-independent system for data-driven dependency parsing. Natural Language Engineering, 13(2):95–135. find
  19. Tae-Gil Noh and Sebastian Padó. 2013. Using UIMA to structure an open platform for textual entailment. In Peter Klügl, Richard Eckart de Castilho, and Katrin Tomanek, editors, Proceedings of the 3rd Workshop on Unstructured Information Management Architecture (UIMA@GSCL 2013), pages 26–33, Darmsta… find
  20. Philip V. Ogren, Philipp G. Wetzler, and Steven J. Bethard. 2009. ClearTK: a framework for statistical natural language processing. In Christian Chiarcos, Richard Eckart de Castilho, and Manfred Stede, editors, Proceedings of the Biennial GSCL Conference 2009, 2nd UIMA@GSCL Workshop, pages 241–248,… find
  21. Rafal Rak, Andrew Rowley, Jacob Carter, and Sophia Ananiadou. 2013. Development and analysis of nlp pipelines in argo. In Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics: System Demonstrations, pages 115–120, Sofia, Bulgaria, August. Association for Computatio… find
  22. Martin Riedl and Chris Biemann. 2012. Text segmentation with topic models. JLCL, 27(1):47–69. find
  23. Douglas LT Rohde. 2005. Tgrep2 user manual version 1.15. Massachusetts Institute of Technology. http://ted-lab.mit.edu/dr/Tgrep2. ↗
  24. Guergana K. Savova, James J. Masanz, Philip V. Ogren, Jiaping Zheng, Sunghwan Sohn, Karin C. Kipper-Schuler, and Christopher G. Chute. 2010. Mayo clinical text analysis and knowledge extraction system (cTAKES): architecture, component evaluation and applications. Journal of the American Medical Info… find
  25. Helmut Schmid. 1994. Probabilistic part-of-speech tagging using decision trees. In Proceedings of International Conference on New Methods in Language Processing, pages 44–49, Manchester, UK. find
  26. Sonatype Company. 2008. Maven: The Definitive Guide. O’Reilly Media, September. ISBN: 9780596517335. find
  27. Jannik Strötgen and Michael Gertz. 2010. HeidelTime: High Quality Rule-Based Extraction and Normalization of Temporal Expressions. In Proceedings of the 5th International Workshop on Semantic Evaluation, pages 321–324, Uppsala, Sweden, July. Association for Computational Linguistics. find
  28. Valentin Tablan, Kalina Bontcheva, Ian Roberts, Hamish Cunningham, and Marin Dimitrov. 2013. Annomarket: An open cloud platform for nlp. In Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics: System Demonstrations, pages 19–24, Sofia, Bulgaria, August. Associatio… find
  29. Paul Thompson, Yoshinobu Kano, John McNaught, Steve Pettifer, Teresa Attwood, John Keane, and Sophia Ananiadou. 2011. Promoting interoperability of resources in meta-share. In Proceedings of the Workshop on Language Resources, Technology and Services in the Sharing Paradigm, pages 50–58, Chiang Mai,… find
  30. Dieter Van Uytvanck, Claus Zinn, Daan Broeder, Peter Wittenburg, and Mariano Gardellini. 2010. Virtual Language Observatory: The portal to the language resources and technology universe. In Nicoletta Calzolari, Khalid Choukri, Bente Maegaard, Joseph Mariani, Jan Odijk, Stelios Piperidis, Mike Rosner… find
  31. Stephen Wu, Vinod Kaggal, Dmitriy Dligach, James Masanz, Pei Chen, Lee Becker, Wendy Chapman, Guergana Savova, Hongfang Liu, and Christopher Chute. 2013. A common type system for clinical natural language processing. Journal of Biomedical Semantics, 4(1):1. find

Updated

↑ back to top

This page in Markdown → https://md.research.elamur.ai/free/en/papers/castilho-2014-broad-coverage-collection-portable-nlp/