Posts Tagged ‘artificial intelligence’

Big Data Just Got Smaller: New Approach to Find Information

Tuesday, November 15th, 2011

Press Release

For Immediate Release

ai-Fingerprint

ai-Fingerprint shows a graphical representation of the knowledge within a news article

San Diego, CA – Artificial intelligence vendor ai-one will unveil a new approach to graphically represent knowledge at the SuperData conference in San Diego on Wednesday November 16, 2011. The discovery, named ai-Fingerprint, is a significant breakthrough because it allows computers to understand the meaning of language much like a person. Unlike other technologies, ai-Fingerprints compresses knowledge in way that can work on any kind of device, in any language and shows how clusters of information relate to each other. This enables almost any developer to use off-the-shelf and open-source tools to build systems like Apple’s SIRI and IBM Watson.

Ondrej Florian, ai-one’s VP of Core Technology invented ai-Fingerprints as a way to find information by comparing the differences, similarities and intersections of information on multiple websites. The approach is dynamic so that the ai-Fingerprint transforms as the source information changes. For example, the shape for a Twitter feed adapts with the conversation. This enables someone to see new information evolve and immediately understand its significance.

“The big idea is that we use artificial intelligence to identify clusters and show how each cluster relates to another,” said Florian. “Our approach enables computers to compare ai-Fingerprints across many documents to find hidden patterns and interesting relationships.”

The ai-Fingerprint is the collection of all the keywords and their associations identified by ai-one’s Topic-Mapper tool. Each keyword and its associations is a coordinate – much like what you would find on a map. The combination of these keywords and associations forms a graph that encapsulates the entire meaning of the document.

The real-world applications are impressive. “It solves a lot of so-called Big Data problems because the system learns by itself,” said Olin Hyde who worked with Florian on the project. “ai-Fingerprints work with existing computer languages and standards. So it only took us about a week to create a generic tool, called BrainBrowser, to find relationships in complex texts – such as summarizing news articles, searching for a job, or identifying new uses for a drug.”

To build BrainBrowser, the team fed ai-Fingerprint results from Topic-Mapper into a natural language processing tool, OpenNLP, so that the computer could understand the rules of grammar then tag parts of speech, chunk phrases and classify words into categories (also called named-entity recognition). The ai-Fingerprint is continuously updated by Topic-Mapper so that the computer can understand how information changes over time – as it does in a human conversation.

Next, the team built a little tool in Java that converted the output into a continuous data feed using an open-standard format called XGMML. This format shares the knowledge of a document as a network of words, sentences and relationships.

Finally, they visualized the result with an open-source bioinformatics tool, called Cytoscape, to show the differences, similarities and identify anomalous information among documents. The result is a graphic representation of knowledge that can show clusters, extract summaries and compare many documents at the same time.

The approach is easy for others to replicate with other technologies. “We used Topic-Mapper with Java, OpenNLP and Cytoscape,” said Florian, “But you could easily do this with Python, MATLAB and NLTK. Heck, you could throw a voice recognition tool on it, like Dragon or Nuance, and you can build an intelligent agent just like SIRI.”

ai-Fingerprint works in any language because Topic-Mapper looks only at byte-patterns. “The approach can give false positives if you don’t teach it the rules of language” warned Florian, “but it is very accurate once it learns the grammar from an outside source of information – such as a natural language processing system or an external database.”

ai-one’s engineering team sees ai-Fingerprints as a way to make it easier, faster and less expensive for their partners to develop intelligent systems. The team is now testing it for applications in advertising, financial analysis, medical research and search engine optimization (SEO).

“Our mission is to make powerful AI available to all developers. This is a big step in that direction,” said ai-one’s chief operating officer Tom Marsh. “We are eager to find academic and consulting partners who can build upon what we started.”

“BrainBrowser is just a minimally viable product (MVP) to prove the concept,” added Hyde. “The sky is the limit for those that want to build commercial applications. Just take the MVP code and customize to your needs.”

A demo of the system can be seen on www.ai-one.com and the semsys YouTube channel.  ai-one intends to provide the source code for ai-Fingerprint as part of its Topic-Mapper software development kit.

Machines can learn.

Saturday, September 10th, 2011

Check out our newest video (3 min 34 sec). Machines can learn.

 

Machines can learn.

Machines can learn.

 

 

 

 

Artificial Intelligence for Everyone

Wednesday, August 24th, 2011

Artificial Intelligence is the Only Way to Keep Pace

Do yourself (and humanity) a favor — sign up and take Stanford’s class Introduction to Artificial Intelligence (AI). It is free. Open to everyone. And online. You have no excuse. (If the prerequisites of knowing linear algebra and probability theory scare you — then overcome your fear by taking a few of the 10-minute classes offered by Salman Khan at Khan Academy (also free, open and online). I regularly use Sal’s classes to refresh my decades-old memory of many long forgotten math classes. Amazing stuff).

Stanford Professor Sebastian Thrun and Google’s Peter Norvig deserve tremendous credit for making this course available to anyone with an Internet connection. Why?  Because if you don’t understand artificial intelligence you won’t understand the future. Stanford and AAAI are showing the kind of leadership in education that  that can (and probably will) spawn a new wave of innovation that will transform our lives even more than the Internet.

This class is so important that everyone at ai-one signed up — even though we already know a bit about artificial intelligence ourselves (which is often called machine learning). My fiance, father, cousins…even my workout buddy also signed up. If nothing else, this class is taught by two of the smartest people working on how to solve problems faster and more accurately by using machines that can learn how to reason and learn patterns with ever decreasing human intervention.

Machine Learning is Very Different from Machine Programming

I often speak with prospective customer for our technology who immediately ask me what a learning machine can do differently than a computer that is programmed. The answer is simple but profound: Machines can now learn like humans — by detecting the meaning of data by detecting inherent patterns and associations of each element within a data set. This means the machine can learn the meaning of whatever data you feed to it. No, it can’t reason — that is, machine’s can’t spontaneously create new thoughts (yet). They can spontaneously detect how a word is related to other words, documents, websites, etc. This way of determining meaning through association is often called a semantic network. Although the concepts for creating a world wide web of semantically linked data has been around for a long time (notably described by Tim Berners-Lee in his famous paper The Semantic Web in 2001).

Linking data is the only to make sense out of it. Without links it is simply a sea of noise. Noise that is growing at an astonishing rate.

Evolve or Die: Why Everyone Needs to Know About Artificial Intelligence

Human currently doubles every 5 years — your cognitive capacity does not.

In fact, cognitive capacities are much the same for any individual human as they were before we learned enough to form civilizations. So we are only as smart as our capacity to learn — and that capacity has limits. One such limit is the Dunbar Number which is the theoretical limit of the number of people with whom you can maintain meaningful relationships. This is thought to be between 100 and 200 people. So even though I might have over 800 Facebook friends — most are people whom I do not have sustainable, long-term relationships. Many of these “friends” are people I knew in high school and have long since lost contact (except through Facebook). Interestingly, about 142 people made a personal effort to wish me a happy birthday (130 were on Facebook) — reflecting a value  that falls within widely accepted values for the Dunbar Number (which can be thought of as a Dunbar Limit).

The news for your brain gets worse. Knowledge is continuing to grow faster. Several leading indicators  (such as the adoption newly patented technologies) indicate that this pace will increase exponentially — as predicted by Ray Kurzweil in his now famous essay The Law of Accelerating Returns. Data grows even faster than human knowledge. Data includes both the factual information (that is useful) and all the outputs of sensing devices. Knowledge is the extraction of meaning from data.

Cisco’s Dave Evan’s estimates there are about 35 billion sensors connected to the Internet — enabling an internet of things. That works out to 7 devices for every human on the planet — and growing.

Artificial intelligence is the only way for humans to evolve as fast as our data. If only a few people know about artificial intelligence then only a few people will reap the benefits. Knowing about AI is essential for us to ensure a future filled with greater liberties and opportunities for everyone’s mutual benefit.

Example to Illustrate Difference Between Data and Knowledge

Sensors record data. To make that data useful (actionable or meaningful) we must use systems (such as software) to process the data into information. For example, my heart rate monitor records each heartbeat and my location over time (it is GPS enabled). I know the exact time and place for each contraction of my heart as indicated by an electrical signal. Each of these data points is meaningless unless I can see a pattern of how all those heartbeats fit together. My goal is to see a pattern where I run faster at a lower heart rate. My monitor is old — so it takes me about 20 minutes to download the data, look at it (using the really bad software that came with the system), then determine if how I am progressing (or not). NONE of this data links anywhere. So it is useless to my  insurance company — too bad because I’d like them to know that I am fitter than the average person so they can lower my health insurance rates.

Big Data

The explosion of data caused by all the billions of people and billions of sensors offers a tremendous opportunity to find new value — both in terms of new ways to make money and new ways to make discoveries to improve the human condition.

It is comical when business leaders complain about “big data” problems — rather than seeing big data as a massive, unprecedented opportunity to gain competitive advantage by understanding more than competitors. IDC’s 2011 Digital Universe Study provides great insights on how businesses can “extract value from chaos.”

Big data is a relative term. Thirty years ago, it was unimaginable to have a way to access a terabyte of data. Now I can access 10,000x more than that — from my cell phone. Thirty years from now, my great-nieces and nephews will scoff at our struggles to make sense of exabytes of “chaotic” data (absurd because chaos is only a matter of not seeing inherent patterns within data). The story of science is the never ending discovery of new patterns in things we considered random, chaotic (or divine), such as: weather, astronomical events, plagues, diseases, etc.

Making Sense of It All

We recently released an application program interface (API) that enables programmers to build artificial intelligence into software applications. The value of this API is that is generates a lightweight ontology that reveals all patterns and associations within a data set. Feed it data. It tells you how any one element (byte, word, document, etc.) relates to another. Here is a link to a video that describes ai-one’s machine learning technology.

Yes, you can get a no-obligation copy to try for yourself — just contact us.

How to Use ai-one’s Machine Learning SDK: Insights from an expert programmer

Friday, July 8th, 2011

Ondrej Florian is one of ai-one’s leading experts in developing machine learning applications. Ondrej joined the ai-one Consulting Partner program in February 2011 and is currently building systems for financial services clients from his office in Basel, Switzerland. (Since this interview was posted, Ondrej has joined the ai-one team full-time).

Olin Hyde, ai-one’s VP of Business Development, recently interviewed Ondrej Florian who answered questions about his experience using ai-one’s Topic-Mapper SDK for machine learning.

Interview with Ondrej Florian GER Version- Für eine deutsche Version dieses Interviews finden Sie hier

What has been your experience using ai-one’s technology?

It has been a long journey. I was one of the first developers to use Topic-Mapper. At first I confused by what it actually does, more then anything. Now I love it. It is amazing because it opens so many possibilities to build really cool, smart applications.

What changed your mind about ai-one? Isn’t it hard to like a system after you have a rough start?

First I had to understand that artificial intelligence (AI) is not a magic bullet. Instead, it is a completely different way to look at programming.

They key is:  You need to find the core problem then see how to use AI to build a solution.

When I first started using it, I was frustrated with the results that Topic-Mapper gave me. It felt like the answers were wrong. The system seemed to have a life of its own. I fed it data and it gave me very perplexing answers. I thought, “That cannot be right.”

Then I realized that the system was only learning what it was exposed to.

If you feed it a little, then it only knows a little. The more you feed it, the more it knows.

I love it now. It makes me think in a different way. The possibilities for developing AI applications are only limited by my imagination.

What is so different about programming with ai-one technology?

It is more like a conversation than programming. You can think of AI as giving the computer an empty brain. With AI, it has the capacity to learn and act independently.

As a programmer, I am used to computers doing what I tell them to do. They only follow directions. With AI they start to find relationships independently.

With ai-one, I had to start thinking in a different way. You must think like teaching the computer – not programming it.

Inspiration is really important. The technology allows you to do so much more than what I understood at the beginning. It is not a problem with the technical documentation as such.  The API is very simple. Very straightforward.

The hardest part is to really understand two things:

  1. What are the core problems you want to solve with AI?
  2. What data is necessary for the system to solve the problem?

Forget your ‘assumptions’ you may have about how the system should work, don’t force it.

Once you have these two questions answered, then you can think about lower level questions, like: How can I make it easier for the system to read the data the same way I do?

The key to getting the most from the technology is to think about solving problems in a totally different way. I was told this at the start by Tomi Diggelmann (ai-one’s VP of Technology). He said: “It is important to get programmers to think differently or they will not understand what they can do with ai-one.”

How they should they think about problems? What is so different about it?

ai-one is very different than the traditional API – which is just a functional technology stack (e.g., LAMP). Traditional systems have a simple goal — to extract results. Programmers look for algorithms to solve a problem, using code to sort, match, extract data.  All you need to do is read the documentation, develop test cases, then build the application to meet the test cases. The hardest part is often making sure the data is in the right format, complies with your structure, and so on.

ai-one is different. It is very dynamic. First, you don’t have to worry about data formats. You just feed data into the holosemantic space. This is may be possibly the import command. It will accept any kind of data. It makes associations among all the elements as it ingests the data.

You curate the data by asking the system questions. It will reveal a lot of associations. You teach the system to know the data the way you know it by providing it with commands for context, associations and keywords.

Are there a lot of commands to know?

Really there are just four general functions you must understand: association, reverse_association, association_check and keyword. You use these commands to ask the system to tell you what it has learned from ingesting the data. It will give you results back. And they are sometimes confusing. At beginning you get nothing or things that are seemingly irrelevant. This is a sign that you have given the system too little information. If you give the system enough information it will give you easily over 80% correct answers the first time, without any teaching. The more data, the more accurate it becomes.

ai-one” listens” to the data then tells you what the data means. This eliminates the editorial bias of the programmer.

Yes, you can teach ai-one to give you the right answer – but this must be done carefully. Like an obedient child, the system will learn exactly what you tell it.

So you just feed the system information and it gives you meaning? That sounds too simple.

You must structure the data in the right way. Teaching is only to correct mistakes. Associations that should not be there.

I understand you were frustrated when you first used the SDK?

Yes. It was confusing to me because I had to teach rather than program. Under normal circumstances the machine will only do what it is programmed to do. In a way, ai-one’s SDK has a life of its own. It learns associations based only on the inherent semantic value of the data.

Programmers must learn why the data gives them the results. Programming with ai-one’s Topic-Mapper is almost like a conversation between the programmer and the system.

So how can programmers get up to speed quickly?

Working with ai-one is interactive. The machine will tell you what it sees – the programmer must be able to set aside assumptions and see how the machine is learning. The advantage of ai-one is that it will tell you how it is forming associations.

When you interact with the system – you must think past “bugs.” The results are not bugs – they are what the machine is seeing!  It sees the data from an inherent meaning – must be structured in way that the machine sees in the way you want it to see. Remember, the machine has no bias.

You must observe and learn from the results you are getting back.

People are still trying to determine how to use AI. It has been around for a long time. And it has failed many times. What makes this different?

From a programmer’s perspective, it comes down to inspiration. Rather than programming, you are influencing. Teaching the machine to augment human understanding.  ai-one’s SDK enables the programmer to find unknowns at the start – rather than when the program breaks from having an inadequate algorithm.

Do you have a case example where ai-one’s SDK has solved an unknown problem?

Many. For example, in risk management there are many ways for a person to cheat and steal from a financial institution. So how do you monitor and prevent it?

Traditionally, programmers would use SQL to run queries against a database and use rules to isolate variance then model the variance using algorithms. Risk evaluation is essentially static – you only program what you can know. This is doomed to fail. You can’t possibly know all the risk factors.

ai-one allows you to find the unknown – the unexpected relationships between data elements that are associated with risk. You let the system tell you what data elements are associated with risk then model those!

A lot of people don’t believe ai-one’s claims. They consider them too good to be true. How do you address this doubt and mistrust?

You can’t address it by arguments. Programmers like control. This is the problem. To control something, you must know a lot about it. When data gets really big and complex, it becomes impossible to know it enough to control it.

What changed my mind about ai-one is when I understood that the SDK enables me to understand big data so that I can use machine learning to augment systems to model data more accurately.

Statistical approaches are great at handling what is known.

ai-one’s technology is not a replacement for algorithms or programming – rather it is a way to enhance the value of all the great things programmers can do!

The way to address this skepticism is with demonstration, to take them through the same experience and let them discover it for themselves.  That’s why I signed up to help ai-one with the training for new programmers.

AI Goes to Wall Street: Trading Platforms Get Smarter

Thursday, June 30th, 2011

Press Release

It is no secret that for many years global banks have used artificial intelligence to make better trades. Now that technology might be coming to your local independent investment advisory service.

Caapi Technologies just announced that it signed a deal to use artificial intelligence technology to build custom trading systems for small to mid-size investment firms. Caapi will build applications with software development kits (SDKs) from ai-one that enable computers to understand human language to find undervalued stocks, bonds and derivatives.

The partnership makes Caapi one of the first consulting firms to use ai-one’s machine learning technology to build trading algorithms and platforms for traders, banks and hedge funds.

Building custom trading algorithms is a huge industry propelled by the success of high-frequency trading across global markets. Originally, these algorithms were designed to find and exploit pricing differences between stocks, commodities and derivatives. Now trading algorithms are so widespread and so sophisticated that they have completely reshaped markets to the point where pricing is often driven more by speculation than it is by the underlying value of the asset class.

The challenge now is to find underpriced opportunities that generate returns based on actual performance rather than market volatility. This requires that investors sort through vast amounts of unstructured data to find undervalued assets before they are identified by the rest of the market. Often this means reading text that can’t be processed by search engines like Google. Traditional algorithmic approaches, such as Google’s, fail as they only know what they are programmed to know or programmed to find. They miss finding unexpected results that don’t fit into an equation.

ai-one’s technology is described as “biologically inspired intelligence.” It is modeled after the human brain and does not depend on algorithms. Rather, it automatically sees the inherent patterns within data and forms associations between each data element. This enables machines to learn without any human intervention. More importantly, it enables people to ask the questions they wouldn’t normally know to ask.

The CEO of Caapi, Mr. Moris Oz, sees machine learning as the key to discovering hidden investment opportunities. “a-one’s technology enables us to build semantic associative search engines for our clients that understand how the price of any given investment is related to the unstructured data found on the internet.”

Caapi’s approach is to combine proven techniques using sophisticated algorithms with machine learning that understands words.  “Language is not math,” adds Olin Hyde, VP of Business Development at ai-one. “Algorithms are fantastic at processing structured data. But human behaviors and communications are inherently unstructured and complex. We learn through words not equations. So why not enable computers to do the same?”

According to Moris Oz, CEO of Caapi, “ai-one’s SDK for machine learning could be the answer for understanding and correlating soft data driving price moves in the markets.  I’m looking forward to applying this to new applications.” The market will soon tell if it works or not.

About Caapi Technologies, Founded by Moris Oz, the company offers consulting, system engineering, Algo trading machines and rigid body physics simulations. They design, program and deliver complex algorithmic and automated trading platforms. Caapi’s expertise spans the most common technology platforms such as Java, .NET, GWT, Flex, PHP, CSS, JS, Facebook SDK etc., for building scalable, feature-rich Web applications. Based in Israel, Caapi services encompass project management, software design, software development, quality assurance, documentation, and technical support.

For more information see http://www.caapitech.com

Contact Moris Oz, Ph +972-9-8656875 email moris@caapitech.com

About ai-one inc., ai-one provides an “API for building learning machines”.  Based in San Diego, Zurich and Berlin, ai-one’s software technology is an adaptive holosemantic data space with semiotic capabilities (“biologically inspired intelligence”).  The Topic-Mapper™ SDK for text enables developers to create intelligent applications that deliver better sense-making capabilities for semantic discovery, lightweight ontologies, knowledge collaboration, sentiment analysis, artificial intelligence and data mining.

For more information see http://www.ai-one.com

Contact: Olin Hyde, Ph: 1-858-531-0674, email: oh@ai-one.com, web: www.ai-one.com

 

Lightweight Ontologies (LWO) versus Full-Fledged Ontologies

Tuesday, May 31st, 2011

Prof. Dr. Ulrich Reimer of University of Konstanz and University of Applied Sciences St. Gallen Institute for Information and Process Management explains the value of lightweight ontologies.

1. What are ontologies and what are they good for?

Originally, the term ontology means a philosophic discipline that is concerned with the study of the nature of being and existence as well as the basic categories of being and the relations among them. In computer science the term ontology stands for an engineering artefact and thus has a quite different meaning:

Definition: An ontology is a formal representation of concepts in a domain of discourse and the relationships between those concepts.

An ontology can therefore serve as a shared vocabulary when:

  • Information systems need to exchange information among each other and therefore need a common basis for denominating objects in the domain.
  • People wish to share information objects among each other and therefore need a common vocabulary to characterize the objects so that they can be more easily retrieved and shared.
  • Knowledge-based systems need to reason about entities within a given domain using terminological reasoning to diagnose malfunctioning devices, design and configure complex systems, understand natural language texts, etc.

The definition of an ontology leaves it open what exactly “a formal representation of concepts in a domain of discourse” means. It is meanwhile standard to use description logics (a subset of first-order logic) to formally represent an ontology. Current ontology languages like OWL and (with some restrictions) RDF Schema are based on such description logics. In practice, however, ontologies are sometimes informally represented, e.g. by a graph. In that case their correct interpretation by a computer is not granted and even worse, they cannot be shared freely between applications.

2. Ontologies have varying degrees of expressiveness

The level of detail in which the concepts in an ontology are represented can vary quite considerably. In the simplest case an ontology is just a taxonomy (or concept hierarchy: see Fig.1).  Concept hierarchy (taxonomy)

Concepts can be represented in more detail by stating additional relationships between concepts as well as properties all instances of a concept have (see Fig.2).Concept hierarchy with additional relationships

Going even further, relationships between concepts can be said to have certain properties (e.g. being transitive like the part-of relation), to fulfill certain cardinality restrictions (to state that an airplane has two wings), to be not fulfilled (to state that a bachelor does not have a relationship “being-married” to a female person), etc.

2.1 Lightweight ontologies

Ontologies with restricted expressiveness, like taxonomies (cf. Fig.1), are sometimes called light-weight ontologies (LWO). A lightweight ontology can also mean a collection of concepts which are related with each other via associations that are untyped and do not specify of what kind the relationship is (cf. Fig.3). Typically, a numerical weight between 0 and 1 is assigned to the associations, indicating their semantic strength (or semantic nearness of the related concepts). These kinds of lightweight ontologies are also called associative networks.

In the following we will focus on lightweight ontologies of the latter kind:

Definition: A lightweight ontology (or associative network or LWO) is a directed graph whose nodes represent concepts. The links between the nodes indicate associations (or untyped relationships) between the corresponding concepts. The associations express semantic nearness. An association between two concept nodes is labelled with an association strength between 0 and 1.

Lightweight ontology (associative network)

Lightweight ontologies are sufficient for many kinds of applications, especially in the area of information retrieval where typed relationships between concepts are not really needed:

  • Query extension: There is a huge gap between a user’s information need and its transformation into an appropriate query for obtaining the relevant information. It can be quite cumbersome to find the needed information because there may be many ways to refer to a particular concept (e.g. “MSD”, “musculoskeletal disorder”, “lower back pain”). A lightweight ontology which relates semantically similar concepts with each other enables a search engine to extend a query to include additional, related concepts. For example, entering the search term “life style” would also retrieve documents that contain the words “nutrition” or “physical exercise” if the underlying ontology contains the proper relations between these terms (cf. Fig.3). Query extension introduces an independence from actual words occurring in a document or in a query. This is sometimes called concept-based or content-oriented retrieval (as opposed to word-based retrieval).
  • Document categorization / document clustering: Rules for categorising text documents into predefined categories typically refer to the words occurring in the documents. A lightweight ontology as background knowledge introduces an independence from concrete wording as discussed above for query expansion. Similarly, lightweight ontologies can improve document clustering.
  • Tag cloud generation: By using a lightweight ontology the concepts most strongly related to a query term can be shown as a tag cloud (cf. Fig.4). The font size of the tags in the cloud and their closeness to the query term correspond to association strength. A tag cloud:
    • helps the user to get a better understanding of the underlying domain and thus of his or her information need and how to properly express it;
    • allows a user explore the term space defined by the lightweight ontology and thus to improve his or her understanding of the underlying domain;
    • allows a user reformulate or extend the original query by selecting terms from the tag cloud.

Since lightweight ontologies can be constructed automatically from text documents (see Sec.3) they can also play an important role in the first steps of building more detailed knowledge models. For example:

  • Building a simulation model might start with learning a lightweight ontology from relevant text documents, which gives an initial account of the relevant concepts to consider and how they are associated with each other.
  • Defining a mapping between the schemas of two different data sources might begin with learning a lightweight ontology from text documents as well as from already existing ontologies and thesauri.

Tag cloud derived from the lightweight ontology in Fig.3

2.2 Full-fledged ontologies

Ontologies with a richer structure, i.e. consisting of a taxonomy and additional relationships between concepts, are in the following called full-fledged ontologies. They can be used whenever a more detailed conceptual model of a domain of discourse is needed:

  • Software engineering: An ontology provides a formal representation of the relevant con-cepts in the domain of interest together with their attributes and inter-relationships. Due to the formal representational basis of description logics a computer can perform formal reasoning on the ontology and check it for consistency and compliance with business logic. Moreover, the ontology can be automatically translated into a component of the target software system. Often UML class diagrams are used in software engineering. Although UML class diagrams qualify as ontologies in an informal way they are not based on any representation formalism and therefore do not facilitate consistency checks or automatic translation.
  • Interoperability: The semantic interoperability of application systems requires either a com-mon data schema or a mapping between the data schemas. In order to keep the actual data schemas hidden an ontology can serve as an interchange format that provides a neutral representation of the kinds of data objects involved, their attributes and inter-relationships. Each application system needs only to map to this interchange ontology in order to communicate with other application systems.
  • Information extraction from texts: Automatically extracting facts from text documents not only requires natural language understanding capabilities but also an ontology that provides the necessary background knowledge and the schemata into which the facts are extracted. For example, for extracting facts from life science documents the relationships between proteins and (areas on) genomes might be relevant and have to be encoded in the ontology.

3. Where do the ontologies come from?

Ontologies can be obtained in one of the following ways, or a combination of them:

  • manual building,
  • reuse of existing ontologies,
  • automatically learning ontologies from text documents,
  • extending an existing ontology by social tagging.

Full-fledged ontologies can only be built manually, possibly reusing parts of already existing ones. Automatically learning a full-fledged ontology from text documents is subject to ongoing research and not practically feasible at the moment.

As opposed to full-fledged ontologies, lightweight ontologies can be automatically learned from text documents. This opens up huge opportunities whenever:

  1. a lightweight ontology is sufficient for the application (as for most information retrieval sce-narios), and/or
  2. complex models need to be built (such as full-fledged ontologies, schema mappings, simulation models) : Instead of starting from scratch an initial lightweight ontology is learned to get hints as to what concepts to consider in the final models. This is very helpful because in the beginning it is often only partially known what the relevant domain concepts are.

4. Learning lightweight ontologies with ai-one

There exist many approaches to learning lightweight ontologies from text documents. A recent approach is based on a biologically inspired neural network (BINN) and the associated learning algorithm provided by the company ai-one™. This approach has considerable advantages over other approaches (see Reimer et al 2011 for details):

  • Higher relevance: The learned associations between concepts are more relevant (as judged by domain experts) than those of other approaches.
  • Directed associations: Most classical approaches yield symmetric associations between con-cepts, while target applications (e.g. query extension) often need asymmetric (or directed) associations. Learning a lightweight ontology with a BINN is one of the few approaches that results in directed associations.
  • Speed: Building association nets with a BINN is magnitudes faster than with other approaches.
  • Incremental learning: Due to the nature of a BINN, the learning of lightweight ontologies is incremental, i.e. can be continued any time when further input documents are available. This is not possible with most other approaches, which have to start from scratch again when new learning input is to be considered.
  • Evolving domains: Due to the support of incremental learning it is possible to take account of evolving domains when using a BINN for learning.
  • Small learning input: Unlike other approaches, learning a lightweight ontology with a BINN already delivers reasonable associations from a very small number of input texts.

References:
U. Reimer, E. Maier, S. Streit, T. Diggelmann, M. Hoffleisch: Learning a Lightweight Ontology for Semantic Retrieval in Patient-Centered Information Systems. In: Int. Journal of Knowledge Management, Vol. 7, No.3, 2011.