Very basically we have created a technology which can represent the world’s knowledge in a form that is clear and accessible to humans, as well as being comprehensible to computers. This is different from the knowledge stored in websites and books, which is written in natural language that is good for humans, but incomprehensible to computers.
Because it is so different it is hard to describe the technology by direct comparison with anything else: instead there are several completely valid ways of looking at it. These include :
A Question-Answering site
One way of thinking about our technology is that it is a website where you can ask questions about any subject and get a direct response. Unlike human-powered Q&A sites, you don’t need to wait for someone to respond. The computer answers your question using knowledge stored in a form it can comprehend, and isn’t just regurgitating text that it doesn’t understand. For this reason it can answer questions it hasn’t seen before and can combine knowledge through a process of inference and cross-referencing stored information to produce a reasoned answer. (See screenshots for some examples.)
An Enhanced Search-Engine
Another way of thinking about our technology is as a super-enhanced search-engine. You can treat our site just as you did your previous search-engine, but in addition to receiving a list of documents, your query will also be passed through our technology – if we can help more directly we will. Your query may be a standard question; even if it isn’t, we may be able to work out what you are looking for and give you the answer directly, at the top of your screen. Because of the way facts are assessed you can enjoy a high degree of confidence that any information we retrieve will be accurate (unlike information on any single web page).
Using our question-answering technology we can also interpret the typical two and three word “keywordese” queries that people have learned to type into search-engines as questions and can produce an inline response. Where what is typed is just the name of an entity, our technology can produce a small information screen giving core information about the entity (as well as search-engine results). This information screen is populated from our knowledge base and determined by the type of thing that has been entered by the user. For example, a business screen can contain contact details and their official website. (See screenshots for some examples.)
A “Wikipedia for Facts”
The knowledge in our system comes from two main sources: information we have imported ourselves and facts added by users like you. A big part of our technology is enabling users to add knowledge without having to have any technical understanding of the underlying computer processes.
The crucial difference between our technology and sites like Wikipedia is that, whereas their users create and edit documents in natural language, here the information is in the form of discrete facts. Unlike natural language, these facts are in a form that computers can understand and process.
One advantage of having the computer understand the knowledge it holds is that the quality of the knowledge can be maintained. With our system once a fact has been established with enough evidence it can’t be easily changed. Furthermore, facts that contradict this knowledge are also automatically prevented. Within Wikipedia when someone maliciously or erroneously edits a page, the only solution is for someone else to change it back. Any page being looked at is the opinion of the last person to edit the page.
A Universal Database
With a typical database-driven application the developers sit down and create a schema – a number of related database tables and fields which store the data required. They then write code which manipulates and processes the data in that schema and when the application is finished this code is run by users. The knowledge that such a system can process is extremely narrow and remains so because nothing that happens after launch expands the scope of the application. Users may add data to the tables but the schema remains fixed.
Our technology is like a database application except that everything in it is amenable to expansion by users. The scope of the knowledge that it can store expands every time a user adds a new class, relation or attribute; and knowledge about every conceivable entity can be put into our system and used to answer questions.
A Platform for Building Knowledge Services
Every database driven application that has ever been written starts by knowing nothing.
Building a knowledge service thus involves many thousands of hours of hard work creating and populating database tables, and writing software to manipulate and present those tables. Such systems needs to be taught everything from scratch, and at the end they know very little: only the narrow knowledge put in by the developers.
Building a knowledge service on top of our technology is different. The system already knows a great deal; new services can be built on this and existing knowledge can often be leveraged – massively reducing implementation time and ultimately increasing the quality of the delivered service.
We experience this every day as we add knowledge services to our system.