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.
Institutions
📚 Shelves 6The field of science this work belongs to (OpenAlex fields).Computer Science · 9,086 worksArtificial Intelligence · 8,889 worksArts and Humanities · 9,296 worksLanguage and Linguistics · 9,206 worksDecision Sciences · 85 worksInformation Systems and Management · 18 works
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.
@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
- 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) ↗
- 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
- Central Repository. 2014. The Central Repository. URL http://search.maven.org (Last accessed: 2014-03-19), March. Sonatype Inc. (http://www.sonatype.org/central). ↗
- 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
- ClearNLP. 2014. Version 2.0.2 - fast and robust NLP components implemented in Java. //opennlp.apache.org (Last accessed: 2014-03-19), January. find
- 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
- 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
- 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
- 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
- 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
- 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
- Groovy. 2014. Version 2.2.2 - A dynamic language for the Java platform. URL http://groovy.codehaus.org (Last accessed: 2014-03-19, February. ↗
- 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
- 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
- Jython. 2014. Jython: Python for the Java Platform. URL http://www.jython.org (Last accessed: 2014-03-19. ↗
- 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
- 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…
- 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
- 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
- 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
- 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
- Martin Riedl and Chris Biemann. 2012. Text segmentation with topic models. JLCL, 27(1):47–69. find
- Douglas LT Rohde. 2005. Tgrep2 user manual version 1.15. Massachusetts Institute of Technology. http://ted-lab.mit.edu/dr/Tgrep2. ↗
- 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
- 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
- Sonatype Company. 2008. Maven: The Definitive Guide. O’Reilly Media, September. ISBN: 9780596517335. find
- 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
- 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
- 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
- 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
- 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
This page in Markdown → https://md.research.elamur.ai/free/en/papers/castilho-2014-broad-coverage-collection-portable-nlp/