This page provides and links to software components
developed by ESSENCE fellows.
Software Components
First-Person Communication Planner
Tânia Marques
Extension of the symbolic planning technology to allow explicit communication planning regadless of the domain.
Programming Language: C
Dependencies: Flex, Bison (included in repository)
AMI Adjancency Pair Tools
Julian J. Schlöder
Tools to extract and analyse the adjacency pair annotation in the AMI meeting corpus.
Programming Language: Python
Dependencies: NLTK, NXT toolkit (for data extraction)
Polarity Model for Disagreement Detection
Julian J. Schlöder
A toy implementation of the polarity-based model for disagreement detection (paper). The model analyses the AMI corpus, using the Adjacency Pair Tools above.
Programming Language: Python
Dependencies: NLTK, scikit-learn, NXT toolkit (for data extraction)
Adaptation in ambiguous communication
Thomas Brochhagen
Iterated dyadic interaction between ambiguous language users without a common prior. Linguistic behavior is a generalized variant of Iterated Quantal Response, coupled with adaptive dynamics.
Programming Language: Python
Dependencies: numpy (matplotlib and seaborn for visualization)
Expressivity and learnability in cultural transmission
Thomas Brochhagen
Population level dynamics on linguistic types that exert pressure towards either only expressivity, only learnability, or a combination thereof. Linguistic behavior is a variant of Iterated Quantal Response / RSA. Dynamics are replicator dynamics (expressivity) and iterated Bayesian learning as mutator dynamics (learnability).
Programming Language: Python
Dependencies: numpy
User Interface for the translation of WordNet concepts to any other language
Mercedes Huertas-Migueláñez
User interface that supports the translation of WordNet-like concepts in other languages. This simplified version has been tested to translate English concepts into Italian and submit them to a database.
Programming Language: HTML5, CSS, Angularjs
Dependencies: Angularjs, Mongodb
Crowdsourcing platform on OmegaWiki synset and WordNet Synset alignments
Khuyagbaatar Batsuren
In the first phase, an automatic method was used to estimate the similarities between WordNet synsets of two resources. Based on findings from the first phase, this platform asks users whether WordNet synsets and Omegawiki synsets match.
Programming Language: Java, Angularjs
Dependencies: Apache Web Server, Zend Framework, Webix, and Angularjs
Vocabulary Alignment in Openly Specified Interactions
Paula Chocrón
Simulations that show pairs of heterogeneous agents aligning their vocabulary from the experience of interacting with each other. The interactions are specified in Linear Temporal Logic, and the learning is inspired by very simple reinforcement learning techniques.
Programming Language: Python
Dependencies: NuSMV (included in the package)
Two-agent system arguing about meaning in order to build contrast sets
Kemo Adrian
Two agents build contrast sets (knowledge representations associated to a vocabulary) that is initially unable to guarantee mutual intelligibility. Through argumentation over the concepts that compose the contrast set, the agents build a new version of their initial contrast set. This final contrast set guarantees mutual intelligibility while providing the same expressiveness as their initial versions.
Programming Language: Java
Dependencies: FTL (included in repository)
Domain-Aware Semantic Matcher
Francisco José Quesada Real
This component carries out semantic matching between two schemas considering domain information and domain-specific terminologies.
Programming Language: Java
Dependencies: WordNet, S-Match and Diversicon
A Web-Based Editor and Visualiser for Distributed Linked-Data Instructions
Paolo Pareti
This Javascript application allows non-expert users to generate resources that embed Linked Data into simple human-readable HTML pages (using RDFa). These resources describe human instructions, and they can be interconnected not only through HTML links, but also through semantic links (Linked Data). This application allows the exploration of potentially distributed resources by following semantic links and by displaying them in a graphical representation.
Programming Language: Javascript
Dependencies: rdflib.js
A Framework for Exploring Structure Alignment between Co-situated Agents
Michael Anslow
A multi-agent framework for exploring structure alignment problems where structures are graph knowledge bases of agents in a multi-agent system and where these structures are their representation of a shared environment. The essential problem is that of finding structural similarity between knowledge graphs while the setting provides the scenario in which structure matching occurs.
Programming Language: Java
Dependencies: Neo4J, Cypher
GUESSence guessing game for the Taboo Challenge
Dagmar Gromann
This is a web application that is also displayed in a webview Android mobile application of the guessing game GUESSence that is based on the popular board game Taboo. The two game roles are describer and guesser. The describer describes a given city to a guesser without using a set of forbidden words that are provided. The guesser provides city names they think are being described. The game was used to collect the dataset for the Taboo Challenge held at IJCAI 2017.
Programming Language: Python
Dependencies: Django, NLTK, NGINX, Stanford NER
Image Schema Extraction using Spectral Clustering
Dagmar Gromann
Extracting image schemas, spatio-temporal cognitive building blocks, from natural language text is an open challenge and no gold standard data set exists. For this reason this code represents a first unsupervised spectral clustering method to identify them in natural language based on prepositions as spatial indicators, verbs as movement indicators, and their co-occurring nouns with frequencies as feature vectors. The code includes required preprocessing steps to go from raw input sentences to spatial clusters that are potentially image schematic in English, Swedish, and German.
Programming Language: Python, Java (for dependency parsing)
Dependencies: sklearn, scipy, gensim, Stanford NER
Meta-Layer Problem Solving for Computational Construction Grammar
Paul Van Eecke
We present a series of major advances in Fluid Construction Grammar (FCG), a fully operational computational construction grammar framework. FCG can be used to comprehend (semantically parse) and formulate (semantically produce) natural language. It is mainly used in multi-agent experiments into language emergence and evolution. We have integrated a library of diagnostics and repairs for on-the-fly meta-layer problem solving and learning. It is now also available as a web service, for easier integration into external applications and NLP pipelines.
Technical details : FCG can be called through a web-api based on http requests. The source code can also be downloaded freely and is written in common lisp. It is compatible with all major operating systems (including linux, OSX and windows) and major lisp distributions (including LispWorks, Closure Common Lisp and Steel Bank Common Lisp).
Web service: https://www.fcg-net.org/fcg-interactive
Download: https://www.fcg-net.org/download
Programming Language: Common Lisp (ANSI standard)
Dependencies: gnuplot and graphviz for visualisation (other libraries are included in the release)
Evolution of the tone of Artificial Intelligence Narratives
Aysenur Bilgin
The aim of this project is to explore how the narratives regarding Artificial Intelligence (AI) have been changing throughout its history (1950s-today). The project combines the following two approaches:
- Diachronic computational linguistics: Using context predicting distributional semantic models to mine word/topic associations and to create semantic vector spaces for each specified time interval
- Natural Language Processing: Using lexicon based unsupervised methods to analyse and track the changes in sentiment over time
Programming Language : Python 2.7
Dependencies: Gensim, NLTK, StanfordCoreNLP Server for training and analysis