Oct 17

A crucial problem for an information extraction system is the disambiguation of the recognized named entities. Suppose you’ve got a vocabulary of phrases and key words for the entity in question, and a grammar containing various structural templates corresponding to different syntactic patterns of the entity and relying on the words and phrases from the vocabulary. This model roughly corresponds to our NLP-system exploited in Ontos. The immediately arising problem is that these templates are applied independently and allow for intersection of entities generated by different templates.
Take the string (1) as an input for such a model.

(1) President of Kimberly Clark Corporation Steven R. Kalmanson

When we apply all the variety of templates from the grammar, we’ll have a piled up tile of annotations subsecting and intersecting with each other.

For sure this picture is not what we’d like to get as an output. Rather, we’d like to see a finely plain structure of annotations without any intersections. Moreover, on the above picture there are some annotations that should remain in the new structure, and annotations (specifically all others) which we wouldn’t like to see any more in our lives. So how to rule out the incorrect annotations?

The solution developed in our team is the following. Recall that each annotation from the above picture arises from a specific template, and every template is motivated by some heuristics. Then some heuristics are relyible in a wide range of cases as they usually give a correct output, and some heuristics are not: we can pin our hopes on them only if we don’t have any stronger one at hand. Consequently we can rank our heuristics by assigning different weights to the templates used in our grammar. The more trustworthy is a template, the higher rank it gets.

Besides, for each type of conflict we will use a resolving rule formulated with respect to the weights of the annotations in conflict. These rules will constitute a special module called Minimization. After Minimization is applied, we get the desired output.

So that’s how it works. Although sometimes we get an incorrect analysis (when the ranking of specific templates occasionally goes wrong or when the correct hypothesis is absent), we never get intersections.

Oct 11

Today we are all flooded with news that we receive by email or RSS feeds. We all have the same problem of filtering the important ones from the less important ones and to identify what is linked together. The internet community has introduced several methods on how to aggregate news. Which of the methods is the best is difficult to say. One method that doesn’t seem to be mentioned is the possibility of automatic aggregation using semantic technologies, especially the functions of NLP. Automatic aggregation is subscribing to different sources and then analyzing the content with natural language processing (NLP) technologies. Doing it this way the system can extract objects of interest (e.g. person, organization, location etc) and the relation between the objects. After the information extraction process the system has to merge the same objects like Hillary Clinton is the same like she or Hillary or Clinton assuming the NLP can distinguish inside the text the meaning and then merge the objects together. This approach is driven and controlled by a clear knowledge model (ontology) which allows growing a semantic network of information. Over the time the more object – relation – object information we have we can start to rank information on his semantic meaning which provides a much better view. This is different to approaches introduced by Mixx or Digg where people create votes and therefore influence the ranking of the news. Another part that seems to be important for a successful start is the up to date information as seen when Tailrank started.
We’ll keep working on our approach and watch the other methods of aggregation and ranking. Would be interesting to hear about experiences from others when trying to understand how information is linked together. Can it be solved by filters or by votes or by using bookmarks?

Oct 04

Welcome to the Ontos blog. We will use it to inform about new trends and features concerning our technologies especially in the area of NLP (Natural Language Processing), aggregating and merging of news and information sources. We will share ideas and concepts on how to use information and enrich them in a semantic way - for example in our new semantic portal.