Semantic approaches appear to be in fashion nowadays. However, not every technique that is labeled “semantic” indeed deals with meaning. These approaches come in all forms and depths, some more pseudo-semantic than others.
How do we measure the “depth” of a semantic approach? A simple way to characterize the depth of semantics is to assess its closeness to the level at which humans can be expected to capture and analyze the meaning of an utterance, a piece of written text, or a situation. The closer it is to a human explanation of the meaning, the deeper the semantics. Otherwise, we call it shallow semantics.
Of course not all humans are equal in the background knowledge and commonsense that they bring to the situation or even in their linguistic abilities or cognitive bandwidth. Perhaps we can apply the same measure of depth to characterize some people as “deeper” than others, but this is not important to our present topic.
Another way to characterize depth is in terms of the types and amounts of knowledge that the approach demands in order to extract and process meaning. Shallow approaches can work with statistical or other empirical techniques that demand little knowledge of the domain. Deeper methods require large amounts of declarative (as well as procedural) knowledge creating which is often the biggest challenge in implementing deep semantic solutions. We may also note here that the types of knowledge required for shallow approaches are very un-human-like and are incompatible with cognitive models of reasoning, memory, and language processing.
How deep should we go?
Early work in Artificial Intelligence in the pre-WWW era, in what was popular then under the name of Natural Language Processing (NLP), attempted very deep approaches and consequently failed to scale up to faster performance or larger domains, corpora of texts, and knowledge bases. Later battles belonged to shallow approaches that have dominated most of the development of information retrieval and search engines as well as other Internet technologies. Even those exceptions that started out with deep ideas, the primary example being Yahoo!, soon tilted towards shallower approaches.
Google is a good example of the success of shallow semantics. It is a wonderful platform and search engine; I use it everyday. Nevertheless, links that point to a page do not always tell you what a page is really about. They are at best poor cousins of the actual meaning of the contents of the page. Yet, by analyzing links, Google was able to show far better precision and ranking of search results than other search engines. Many other such pseudo or shallow semantic tricks, heuristics, and hacks have been very successful… but only when compared to their non-semantic counterparts.
Friends, it is time once again to set aside quick wins and short-term ROI and seek far deeper semantic approaches. Who is going to do it? Well, that is a separate discussion for another day.
We do not want to repeat the mistakes of AI/NLP, i.e., promising human-like behaviors and being unable to deliver them in any but the smallest micro-worlds. At the same time, shallow approaches will only help us climb taller trees, not reach the moon ever.
Where then is the middle ground? There are a couple of ways to characterize this. One is in terms of the size of text units at which meaning is analyzed. For example, we do want to consider meanings of words and short phrases; we do want our systems to try to disambiguate them and pick the most contextually appropriate meaning. Perhaps even the meanings of individual sentences. But, we do not want to claim that they can deal with meanings of entire texts or figure out the intentions of the writer or speaker.
Another way to characterize the middle ground is in terms of the types of knowledge needed and inferences or reasoning that they support. We want to build semantic systems that are endowed with comprehensive lexicons that map words and phases to nodes in a comprehensive ontology. We do not want, at this time, systems that attempt to make elaborate inferences from meanings, the kinds of which did not work very well in AI. As an example, we are not trying to build a robot that can search the web, read and understand web pages, and make decisions or solve problems from its understanding. We are at a stage where it is meaningful only to attempt solutions that employ small units of meaning to improve, for example, the user experience of web search by providing better precision, recall, or navigational and visualization abilities.
The next time you hear or read about claims of semantic approaches, please judge for yourself whether it is indeed deep (enough) semantics, or just yet another poor cousin of true semantics.