EDISON: Feature Extraction for NLP, Simplified

14838

Authors

nan

Abstract

AbstractWhen designing Natural Language Processing (NLP) applications that use Machine Learning (ML) techniques, feature extraction becomes a significant part of the development effort, whether developing a new application or attempting to reproduce results reported for existing NLP tasks. We present EDISON, a Java library of feature generation functions used in a suite of state-of-the-art NLP tools, based on a set of generic NLP data structures. These feature extractors populate simple data structures encoding the extracted features, which the package can also serialize to an intuitive JSON file format that can be easily mapped to formats used by ML packages. EDISON can also be used programmatically with JVM-based (Java/Scala) NLP software to provide the feature extractor input. The collection of feature extractors is organised hierarchically and a simple search interface is provided. In this paper we include examples that demonstrate the versatility and ease-of-use of the EDISON feature extraction suite to show that this can significantly reduce the time spent by developers on feature extraction design for NLP systems. The library is publicly hosted at https://github.com/IllinoisCogComp/illinois-cogcomp-nlp/, and we hope that other NLP researchers will contribute to the set of feature extractors. In this way, the community can help simplify reproduction of published results and the integration of ideas from diverse sources when developing new and improved NLP applications.

Keywords

nan

Full Content

EDISON: Feature Extraction for NLP, Simplified Mark Sammons1, Christos Christodoulopoulos1, Parisa Kordjamshidi1, Daniel Khashabi1, Vivek Srikumar2, Paul Vijayakumar1, Mazin Bokhari1, Xinbo Wu1, Dan Roth1 1Department of Computer Science, University of Illinois, Urbana-Champaign. {mssammon,christod,kordjam,khashab2,pvijaya2,mbokhar2,xinbowu2,danr}@illinois.edu 2 School of Computing, University of Utah. svivek@cs.utah.edu Abstract When designing Natural Language Processing (NLP) applications that use Machine Learning (ML) techniques, feature extraction becomes a significant part of the development effort, whether developing a new application or attempting to reproduce results reported for existing NLP tasks. We present EDISON, a Java library of feature generation functions used in a suite of state-of-the-art NLP tools, based on a set of generic NLP data structures. These feature extractors populate simple data structures encoding the extracted features, which the package can also serialize to an intuitive JSON file format that can be easily mapped to formats used by ML packages. EDISON can also be used programmatically with JVM-based (Java/Scala) NLP software to provide the feature extractor input. The collection of feature extractors is organised hierarchically and a simple search interface is provided. In this paper we include examples that demonstrate the versatility and ease-of-use of the EDISON feature extraction suite to show that this can significantly reduce the time spent by developers on feature extraction design for NLP systems. The library is publicly hosted at https://github.com/IllinoisCogComp/illinois-cogcomp-nlp/, and we hope that other NLP researchers will contribute to the set of feature extractors. In this way, the community can help simplify reproduction of published results and the integration of ideas from diverse sources when developing new and improved NLP applications. Keywords: Natural Language Processing Tools, Feature Extraction, Machine Learning, NLP, Reproducibility 1. Motivation The process of designing and building Natural Language Processing (NLP) applications that use Machine Learning (ML) techniques has a general structure that developers must follow. Given a specific task – co-reference resolu- tion, for example – the developers acquire a corpus that exemplifies this task. Next, they consider what existing tools and data resources might contribute to a solution to this problem, and decide on the set of data structures that will support the task. As part of this decision, they will decide on what machine learning models would be most appropriate, as this may affect other design choices (pro- gramming language, data structures, input resources). As they build the application, a significant part of their effort will go into designing features that will be extracted from the source data and used as inputs to the machine learning component, and then implementing the corresponding fea- ture extraction code. Often, other researchers have worked on the same task and published their own approaches, in which case the developers may try to recreate the features described in these publications. Frequently, the published description is terse due to space constraints, and many small but important details are omitted. In the best case, the au- thors have published their code, but even then it may take significant effort to understand the code and isolate the fea- ture extraction, and to port it …

Content truncated to 500 words

Labeled Text

AbstractWhen designing Natural Language Processing (NLP) applications that use Machine Learning (ML) techniques, feature extraction becomes a significant part of the development effort, whether developing a new application or attempting to reproduce results reported for existing NLP tasks. We present EDISON, a Java library of feature generation functions used in a suite of state-of-the-art NLP tools, based on a set of generic NLP data structures. These feature extractors populate simple data structures encoding the extracted features, which the package can also serialize to an intuitive JSON file format that can be easily mapped to formats used by ML packages. EDISON can also be used programmatically with JVM-based (Java/Scala) NLP software to provide the feature extractor input. The collection of feature extractors is organised hierarchically and a simple search interface is provided. In this paper we include examples that demonstrate the versatility and ease-of-use of the EDISON feature extraction suite to show that this can significantly reduce the time spent by developers on feature extraction design for NLP systems. The library is publicly hosted at and we hope that other NLP researchers will contribute to the set of feature extractors. In this way, the community can help simplify reproduction of published results and the integration of ideas from diverse sources when developing new and improved NLP applications.

Publication Details

Paper ID:
14838
Year:
2016
Publication:
TIPSTER
Publication Type:
conf
DOI:
nan