In the journey from abacus to cognitive systems, we have designed systems that report sales data, search collections of documents, and track what people think of us. We can even build models to predict who will buy what. What we haven’t managed is to design digital systems that effectively uncover the unasked for—true discovery engines. Consider how the brain attacks an information problem. We define an information need, usually in “I’ll know the answer when I see it” general terms. Then we amass clues and isolated facts, merge them, and come up with a trial answer. We gather, synthesize, think, and do it again. We ask colleagues for advice. Then we go through the cycle again and again, asking more questions, seeking additional information, adding pieces to the puzzle, until we arrive at a satisfactory answer. Our goals shift as our understanding improves.
Contrast that process with how we use today’s technologies. Be it a doctor diagnosing a patient or an intelligence analyst trying to find links between terrorists and organized crime, in each case, there is far too much information to absorb quickly. It is stashed in multiple locations and stored in a variety of formats. Furthermore, these voyages of exploration don’t lend themselves to queries. We are often looking for the unexpected. How do you ask a BI system or a search engine, “What’s going on? Tell me what I ought to know today?” These information forays require that we amass all the possibly relevant facts and then look for patterns to emerge. They require us to abandon our assumptions and be open to unexpected possibilities. There may even be more than one right solution, depending on our goals and our resources.
This is cognitive computing territory: complex problems, too much information from multiple sources, and no single “right” solution. The information changes as we find more. Our goals change as we learn more.
The need is acute. We are buried today in a digital mudslide, one in which information nuggets and dross are jumbled together. Worse, one person’s nugget is another’s garbage. The value of information depends on who needs it, when they need it, and for what purpose. Designing systems that can handle the information onslaught and deliver the information pertinent to this person, in this place and this time, is a tall order. This is the dream at the heart of cognitive computing: If we can mimic the way that people gather, organize, and synthesize information in order to solve an entire range of information problems, we will have some help in extracting the nuggets from the mud.
Every previous information-seeking technology invented was designed to answer a question that we posed directly. None engages in a conversation: “Have you considered this? It looks like it might be related.” Associations by recommendation engines and suggestions for related topics are a beginning, but a conversation lasts longer and plumbs the depths of information needs and desires. No one technology can come close to the human brain’s ability to take in all the clues about a topic, winnow out the extraneous, and then synthesize it all into a summary or a new idea. None can match the human voyage of discovery or give us the “Aha!” moments, the “Eureka” factor, that make all the difference between “business as usual” and breakthroughs. For this, we need something that approximates how we amass information and how we think. We also need a digital assistant that, unlike humans, doesn’t forget or ignore or skip things or get tired.
Cognitive computing does just this: It finds and merges information on a topic without regard to origin or format. While it may answer questions, cognitive computing also explores, looking for patterns without needing a precise query. Most importantly, it uses every trick in our technology book in order to give people the tools they need to see inside vast quantities of information.
But let’s not denigrate today’s technologies. Each one has its uses. The problem is, the systems designed so far are each suited to only one type of information processing. We have databases for structured information, search engines for finding answers to questions, transactional systems for reporting, email for short messages, CRM for sales tracking, document repositories for formal documents, sentiment analysis for tracking what people are saying, etc., etc., etc.
Nothing connects these and helps us find parallels in the disparate data they contain. If we can unite the data and assemble more clues, as a person might, the chances are good we will find the unexpected.
What Is Cognitive Computing?
Cognitive computing makes a new class of problems computable. It addresses complex situations that are characterized by ambiguity and uncertainty; in other words, cognitive computing handles human kinds of problems. In these dynamic, information-rich, and shifting situations, data tends to change frequently, and it is often conflicting. The goals of users evolve as they learn more and redefine their objectives. To respond to the fluid nature of users understanding their problems, a cognitive computing system is likely to return different information sets in response to new information or changes in the user’s goals. For instance, in a cognitive travel application, the query about Indonesia will present images, activities, history, or geography if you are at the beginning of planning a vacation. This set of information will differ if the system knows that you like to hike or kayak. The same query later in the process may give you information on hotels and airline schedules. Still later, it might show you pertinent events that coincide with your visit.
We won’t expect to get the same answers as the user’s interests change throughout the process. Systems often need to weigh conflicting evidence and suggest an answer that is “best” rather than “right.” We are familiar with the relevance ranking search engines do—their best guess at what is most useful is supposed to appear at the top of the list. Cognitive systems return information with confidence scores that reflect this same idea: Here’s the information that most closely matches what I know about your information problem. But they go farther. They may also suggest additional tests for the doctor to perform or engage in a “conversation” about factors such as avoiding sunlight when you are on a drug or the need to drink plenty of water with it. If the patient can’t avoid sun or drink enough while traveling, cognitive systems may suggest another drug.
Like the brain, cognitive systems try to mimic every identifiable signal, usually without trying to make sense of it. Our brains stash everything away until patterns of similar attributes begin to emerge. (Poison ivy is a plant. So is lettuce [leaves, stems].) And even more important, they look for differentiators to help us distinguish between similar things. (Poison ivy makes you itch.) We assemble meaning out of these information bits as needed, sorting and re-sorting them to find patterns and determine actions. (Eat the lettuce, not the poison ivy.) Similarly, cognitive systems can wring every ounce of meaning from all incoming signals.
Cognitive systems are simultaneously more complex and simpler than traditional systems. They are easier to interact with because they present information in more human terms: in language, images, and visual representations. But beneath that, they are complex systems, taking in, processing, analyzing, and evaluating signals dynamically and continuously.
Cognitive systems differ from current computing applications by moving beyond tabulating and calculating based on preconfigured rules and programs. Although capable of basic computing, cognitive systems can also infer, and even reason, based on broad objectives. They differ from traditional computing in these ways:
1. Cognitive computing systems make context computable. They identify and extract context features such as hour, location, task, history, or profile to present an information set appropriate to a specific time and place. Like Big Data analytics, they provide machine-aided serendipity by wading through massive collections of diverse information to find patterns. The difference is that, by filtering the information for its usefulness to a particular task, place, and person, cognitive systems can respond to the needs of the moment. I want restaurants where I am now. Or, if I am planning a trip to Bali, maybe I want to know about restaurants there. Context determines the information I’m looking for.
2. Cognitive computing systems redefine the nature of the relationship between people and the increasingly pervasive digital environment. They may play the role of assistant or coach for the user or may act virtually autonomously in some problem-solving situations. The boundaries of the processes and the domains that lend themselves to these systems are still unexplored.
3. They are stateful, i.e., the computer or program keeps track of the state of interaction, not stateless, meaning operating with no record of previous interactions. In a cognitive system, information interactions exist in a continuum framed by a task or goal. Defining an information need, exploring possibilities and patterns, browsing, and redefining new information goals all require slightly different features, tools, and design from the same underlying platform. Time is important in a cognitive system. We depend on time to determine a sequence of events in a flow of information: Who bought this company and when? What had they bought before? Did the employee download the file before or after he was told not to? Even less critically, if I am asking the same question, am I still looking for the same thing? If I have already looked at beaches in Bali, do I need plane tickets or hotel recommendations now? Time is important. We need it to determine the next step to take and to remember what we have already done. Time is an aspect of context that will only become more important. It helps give us the answers we need when we need them.
4. Complexity of both the separate technologies and the design of the interactions of the components distinguish cognitive systems from traditional computing. Just as an amoeba and a human both contain DNA, the difference between humans and amoebae lies in complexity. People have specialized organs that contribute to knowledge acquisition, evaluation, and action—the brain and the senses. We need all of our senses. We need our memories of what happened where and when and what the outcome was. In the same way, cognitive systems gather clues to meaning, look for patterns, and infer actions to recommend. The more clues, the better the understanding, but the more difficult it is to filter the larger piles of information.
5. They are dynamic, designed to handle ambiguity and change in a shifting situation. Complex systems tend to be dynamic and therefore probabilistic by their very nature. We expect people to react to changing situations by using the knowledge they have to act appropriately when they confront change. Our supporting systems must do so also.