-
Notifications
You must be signed in to change notification settings - Fork 25
Qanary Components (R1)
We implemented component wrappers for well known components dedicated to the tasks of named entity identification/recognition (NEI) and named entity disambiguation (NED), which are fundamental steps in the state-of-the-art QA pipelines. User can select any of these wrappers( as a resource) to include it in their question answering systems. The major advantage of these wrappers (as resources) is the inclusion of totally independent component (for which the wrappers are implemented) performing NED/NER and Entity Linking task in the QA pipeline. Some of these tools are never used in Question Answering Systems, and now we enabled them to be reused in QA Pipeline. Because when many tools are available in the research community to perform individual QA pipeline, these tools can be reused in Pipeline, just by providing a way to do so. We provide a methodology for their inclusion. For example, in a typical question answering system, there will be one component doing NED task. User can select any of the below mentioned NED component resource to include in their QA system, considering the particular usage and benchmarked performance (note: we have evaluated each of below mentioned resources over QALD). Hence, these components are populating the ecosystem established by Qanary and can now be easily reused for new QA systems, i.e they are integrable just by configuration. There are 9 sub resources in this group, which are the wrappers for particular NER/NED components. Following this interaction principle, the wrapper components for the following tools/approaches, which are pluggable into the Qanary reference implementation:
-
R1.1: qa Vocabulary: The qa vocabulary is designed to be extensible so as to not constrain the creativity of the QA community. We have extended the qa vocabulary with a standard NER and NED representation. The complete vocabulary can be find at the persistant URI https://w3id.org/wdaqua/qanary# .
-
R1.2: Stanford NER (NER) is a standard NLP tool that can be used to spot entities for any ontology, but only for languages where a model is available (currently English, German, Spanish and Chinese). The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_component-stanford-NER.
-
R1.3: FOX (NER): It integrates four different NER tools (comprising the Stanford NER tool) using ensemble learning. The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_component-FOX-NER
-
R1.4: DBpedia Spotlight Spotter (NER): It uses lexicalizations, i.e., ways to express named entities, that are available directly in DBpedia.The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_component-DBpedia-Spotlight-NER
-
R1.5: DBpedia Spotlight Disambiguator (NED): the NED part of DBpedia Spotlight, disambiguates entities by using statistics extracted from Wikipedia texts. The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_component-DBpedia-Spotlight-NED
-
R1.6: AGDISTIS (NED): It is a NED tool that uses the graph structure of an ontology to disambiguate entities. The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_component-AGDISTIS-NED
-
R1.7 Alchemy API: It is a commercial service that offers several text analysis tools as web services. We have used it as NER+NED tool. The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_component-Alchemy-NERD
-
R1.8 Lucene Linker (NER + NED): It is a component that we implemented following the idea of the QA system SINA which employs information retrieval methods.The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_component-Lucene-Linker-NERD
-
R1.9 QA Pipeline: It provides also several web interfaces for machine and also human interaction (e.g., for assigning a URI to a textual question, retrieving information about a previous QA process, etc.). Particularly, as each component automatically registers itself to the Qanary Pipeline, a new QA system can be created and executed just by on-demand configuration. The resource wrapper can be find at the link: https://github.com/WDAqua/Qanary/tree/master/qanary_pipeline-template
-
How to establish a Docker-based Qanary Question Answering system
-
How to implement a new Qanary component
... using Java?
... using Python (Qanary Helpers)?
... using Python (plain Flask service)?