Research focus: Computational Semantics and Pragmatics

I am working on algorithms and formal models for computational semantics and pragmatics. The challenge can be described as:

As for the extraction of semantic concepts and relations I developed an Open Information Extraction (OpenIE) platform that is based on various NLP components to analyze words, clauses, sentences, and paragraphs of text, and to detect core semantic relations that represent the predicate and its arguments. In simple terms, the task is to analyze input like:

and map it to:

It is easy to see how such relations, once extracted from unstructured text could be mapped into graph representations using various NLP components, as for example constituent parsers, dependency parsers, named entity recognition, anaphora resolution. Thus, the sequence of base sentences:

John Smith sold Grungle Inc. He bought Sproke LLC. Sproke LLC likes him. He likes apples.

would be rendered as a graph in the following way:

Simple concept graph extracted from unstructured text.

In fact, my current OpenIE system parses the sentences and renders this representation in Neo4J.

My interest, among others, is in:

Analyzing Implicatures and Presuppositions, the semantics and pragmatics of text, requires not only modeling of general and universal linguistic properties, but also domain specific knowledge. To analyze very specific semantic properties in the medical domain, for example, I utilize knowledge representations and ontologies from these specific domains. One example could be that we could conclude that person A has headache or uses blood thinners for some reason, if she says or writes that the price for Aspirin went up. Such implicatures are generated by looking up properties of specific medicine or chemicals from domain specific ontologies, taxonomies, or knowledge representations.

This kind of OpenIE requires much more sophisticated NLP components than common free tools and pipelines provide. The experiments involve processing of business, legal, or medical documents, as well as news articles.

My current experimental environment consists of microservices based on C++, Java, Go, and Python components coupled in an RPC-based and RESTful architecture. Given suggestions, advice and initial experiments, I am working towards a more homogeneous environment, mostly based on Java 10 based services and a RESTful architecture.

If you are interested in working on such an OpenIE and Graph-based system and join my research group, contact me please.

There are various GitHub repositories that I maintain with material and code that explain the project. See for more details my GitHub and Bitbucket pages.