Chapter 10 - Knowledge representation Flashcards
What is this chapter about?
We are now interested in understanding what type of content we should add to our knowledge base.
What is ontology?
Ontology is a formal representation of a set of concepts within a domain, and the relationships between those concepts.
Complex domains require flexible and general representations. What should we concentrate on?
We should focus on general concepts, such as Events, Time, Physical Objects, Beliefs. These abstract concepts are present in most domains.
Elaborate on leaving placeholders for new knowledge
Instead of defining everything at once, we can leave placeholders for new knowledge. For instance, we can define what it means to be a physical object, and then the finer details of specific objects can be filled in later.
There is a good analogy to object oriented programming. We create interfaces with a certain behavior, but we leave out the implementation. Also, framworks like Swing/JavaFX includes objects called WINDOW, which allows user to use this interface/abstract class as a starting point to fill out their own more detailed objects.
What do we call the “general framework of concepts” in our AI-model/world?
Upper ontology. upper ontology is a framework, a structure of foundational concepts and relations acorss various domains of knowledge. They have the most general concepts at the top, and then more specific concepts below them.
Another definition is: Upper ontology is an ontology that consists of very general terms that are common across all domains.
In an ontology (upper ontology) “diagram”, what does each link mean?
Each link means that the lower concept is a specialization of the concept above.
What is the most important caveat in this topic?
Uncertainty. Using logic, either FOL or propositional make the world work in absolutes. This is often not the case. For instance, while it would be tempting to use the rule “Tomatoes are red”, tomatoes can indeed be yellow and orange. Therefore, is it paramount to handle these uncertainties.
Of what use is an upper ontology?
It provides a generality that is useful for us.
For instance, in the Wompus world, we could use the creature “Being”. This allows the world to have different animals besides the wompus while the agent can learn things about them.
What are the characteristics of general-purpose ontologies?
1) A general purpose ontology should be applicable in more or less ANY special-purpose domain
2) In any sufficiently demanding domain, different areas of knowledge must be unified, because reasoning and problem solving could involve several areas simultaneously. In other words, the ontology must be capable of bridging different areas of knowledge.
Elaborate shortly on special-purpose vs general purpose ontologies.
a special-purpose ontology would only consider a specific level of knowledge. For instance, a very specific purpose ontology could consider the side effects of one particular type of medicine?
this would be useful if this was our only problem. However, we want our ontology to be general, so that it can serve multiple purposes
Why do we want the ontology to be more general?
by making our ontology more general, we will enable our agent to function in more complex and interconnected systems.
Elaborate on organization of objects into categories.
Vital part of knowledge representation. This is because a lot of reasoning actually happens at the category-level, and not at the specific object-level.
There are many reasons for this. Some include:
1) Mimics the way humans thinks. We are often interested in buying a nice object, rather than buying a nice, specific item.
2) Inheritance. Categories allow for inheritance of properties. Kind of like in Java.
how can we represent categories in first-order logic?
Either one of two ways:
1) Objects
2) Predicates
We can use the predicate to indicate membership, like Basketball(b).
Or, we could reify and use objects. Reify is short for reification. Refers to turning a proposition into an object.
We would then use something like Basketballs, and then use a predicate to test for membership.
What is a subcategory?
A subcategory means a category is a subset of another category. For instance, basketball is a subcategory of balls.
What is a taxonomic hierarchy?
A taxonomic hierarchy is basically just taxonomy. Taxonomy is categorizing things based on their characteristics.