510 likes | 674 Views
Upper Ontology Symposium. Applications of the Cyc Formal Ontology. Dr. Douglas B. Lenat , 3721 Executive Center Drive, Suite 100, Austin, TX 78731 Email : Lenat@cyc.com Phone: (512) 342-4001. 2 July 2005. A formal ontology has two parts:
E N D
Upper Ontology Symposium Applications of the Cyc Formal Ontology Dr. Douglas B. Lenat , 3721 Executive Center Drive, Suite 100, Austin, TX 78731 Email: Lenat@cyc.com Phone: (512) 342-4001 2 July 2005
A formal ontology has two parts: • A set of terms (sort of like words) • A set of axioms involving those terms (sort of like sentences built out of them) The sentences are written in logic, not English, so computers can deeply understand them, not just store them. It can deduce the same sorts of things from them that you or I could. 2 July 2005
A formal ontology: terms + axioms (in logic) CYC: 300k terms, 3.2 million handcrafted axioms. Very general ones (“Upper Ontology”) all the way down to some domain-specific terms and axioms. This afternoon’s talk: Formal Ontologies in general This talk: Examples of how CYC is applied today 2 July 2005
Application#1: Smarter searching When you become happy, you smile. You become happy when someone you love accomplishes a milestone. Taking one’s first step is a milestone. Parents love their children. • Query: “Someone smiling” find information by inference (+KB) (implies (and (isa ?PARENT Person) (children ?PARENT ?CHILD)) (loves ?PARENT ?CHILD)) • Caption: “A man helping his daughter take her first step” .
vets Web Results 1 -25 Revise New Search vets: 25,947 matches a second later as fast as usual 1.Photographs of Cyclo-Vets @ work 2.Veterans National Archives 3.Recommended Vets for Hamster Owners 4.Sponsors on Vets On Line 5.Pops Place BBS Index Page • Do you mean: • vets (military veteran) • vets (veterinary surgeon)
Web Results 1 -25 Revise New Search vets: 25,947 matches 1.Photographs of Cyclo-Vets @ work 2.Veterans National Archives 3.Recommended Vets for Hamster Owners 4.Sponsors on Vets On Line 5.Pops Place BBS Index Page (ex-serviceman OR ”mili • Do you mean: • vets (military veteran) • vets (veterinary surgeon) (ex-serviceman OR "military veteran") OR vet OR veteran AND NOT (veterinarian OR "veterinary surgeon" OR animal)
as fast as usual 1. Veterans News and Information Service - Military, Army, Navy, Marine Corps, Air Force, Coast Guard 2.Surf Point - Society & Issues: Military/Armed Forces: War Veterans 3.AVet Remembers 4.Retail and Wholesale Merchants of Military/ Veteran Goods and Services (ex-serviceman OR ”mili • Do you mean: • vets (military veteran) • vets (veterinary surgeon) (ex-serviceman OR "military veteran") OR vet OR veteran AND NOT (veterinarian OR "veterinary surgeon" OR animal) Web Results 1 -25 Revise New Search vets: 25,947 matches vets: 388,109 matches
vets Web Results 1 -25 Revise New Search vets: 25,947 matches 1.Photographs of Cyclo-Vets @ work 2.Veterans National Archives 3.Recommended Vets for Hamster Owners 4.Sponsors on Vets On Line 5.Pops Place BBS Index Page • Do you mean: • vets (military veteran) • vets (veterinary surgeon)
Web Results 1 -25 Revise New Search vets: 25,947 matches 1.Photographs of Cyclo-Vets @ work 2.Veterans National Archives 3.Recommended Vets for Hamster Owners 4.Sponsors on Vets On Line 5.Pops Place BBS Index Page veterinarian OR “veteri • Do you mean: • vets (military veteran) • vets (veterinary surgeon) veterinarian OR "veterinary surgeon" OR animal OR vet AND NOT (ex-serviceman OR "military veteran" OR veteran)
1.Veterinary Book List 2.Advice from The White Cross Veterinary Group 3.Welcome to the World of Eco-Vet 4.Animal Wellness International 5.The economy or management of animals veterinarian OR “veteri • Do you mean: • vets (military veteran) • vets (veterinary surgeon) veterinarian OR "veterinary surgeon" OR veterinary OR vet AND NOT (ex-serviceman OR "military veteran" OR veteran) Web Results 1 -25 Revise New Search vets: 25,947 matches vets: 153,060 matches
Three Improvements to Search • Deep semantic search involving n axioms (slow) • Add in OR and AND-NOT terms, to reduce the number of false negatives and false positives • Suggest plausible appropriate follow-on queries • For veterinarians: how to train to be a vet • For veterans: benefits of reenlisting
Application#2: Deep Question-Answering • Even 2-3 step reasoning is relatively deep • Draw on knowledge from all levels of the Cyc ontology (upper, middle, and domain-specific) • The following examples come from current DTO and AFRL programs transitioned to RDEC
For: • - ETA often executes attacks near national election • - ETA has performed multi-target coordinated attacks • Over the past 30 years, ETA performed 75% of all terrorist attacks in Spain • Over the past 30 years, 98% of all terrorist attacks in Spain were performed • by Spain-based groups, and ETA is a Spain-based group. • Against: • ETA warns (a few minutes ahead of time) of attacks that would result in a • high number civilian casualties, to prevent them. There was no such warning • prior to this attack. • ETA generally takes responsibility for its attacks, and it did not do so this time. • ETA has never been known to falsely deny responsibility for an attack, and it • did deny responsibility for this attack. What factors argue <for/against> the conclusion that <ETA> <performed> <the March 2004 Madrid attacks>?
Knowledge Users User Interface (with Natural Language Dialog) Knowledge Authors Other Applications Knowledge Entry Tools Cyc API Cyc Reasoning Modules Cyc Ontology & Knowledge Base Interface to External Data Sources External Data Sources Data Bases Web Pages Text Sources Other KBs A Typical Architecture: Formal Ontology + Inference Engines + Interfaces/API’s
Application#3: Semantic Data Base Integration (Virtual Joins) • Similar to that last “deep question answering” application, but some of the information is outside the KB: in data bases, on websites, in other ontologies / knowledge bases, etc. • Map the schema of each of information source to Cyc, and have it call on those external sources as needed, to solve sub-sub-…-problems of the query
DB4 SuspN Qusay Hussein Uday Hussein FBI Most Wanted DB4 CATS NARCL DB8 CDE DB8 USGS OFAC Prenom Surnom ann Qusai Hussein 30 Odai Hussein Data Warehousing: a Quadratic Solution Sept. 9, 2003 YOB 1964 Dec. 31, 1996
FBI Most Wanted DB4 CONCEPTS QusayHusseinAl-Takriti UdaiHusseinAl-Takriti CATS RULES (age ?PERSON (YearsDuration ?AGE)) NARCL DB8 (birthDate ?PERSON ?BIRTH-DATE) you! CYC HAL CDE USGS OFAC A Solution that Scales Linearly DB4 Sept. 9, 2003 SuspN YOB Qusay Hussein 1966 Uday Hussein 1964 DB8 Dec. 31, 1996 Prenom Surnom ann (…and, by the way, enables DB population/enrichment) Qusai Hussein 30 Odai Hussein 32
FBI Most Wanted DB4 CATS NARCL DB8 CDE USGS OFAC A Solution that Scales Linearly DB4 Sept. 9, 2003 SuspN YOB Qusay Hussein 1966 Uday Hussein 1964 DB8 Dec. 31, 1996 Prenom Surnom ann (…and, by the way, enables DB population/enrichment) Qusai Hussein 30 Odai Hussein 32
USGS GNIS DB AMVA KB UN FAO DB DTRA CATS DB RAND R A very recent Cyc SKSI example “What major US cities are particularly vulnerable to an anthrax attack?” The answer is logically implied by data dispersed through several sources:
“What major US cities are particularly vulnerable to an anthrax attack?” “major US city” ?C is aU.S. City with >1M population “particularly vulnerable to an anthrax attack” • the current ambient temperature at ?C is above freezing, and • ?C has more than 100 people for each hospital bed, and • the number of anthrax host animals near ?C exceeds 100k
USGS GNIS DB AMVA KB UN FAO DB DTRA CATS DB RAND R “What major US cities are particularly vulnerable to an anthrax attack?” U.S. cities with population > 1 million 1-2 conjuncts in a CycL “Ask” expression
(and (isa ?C USCity) (> (NumberOfInhabitantsFn ?C) 106) (vulnerableToScriptedEventTypeUsing ?C DeployingABioAgentByInfectingAZoonoticHost Anthrax-Bacterium)) USGS GNIS DB AMVA KB UN FAO DB DTRA CATS DB RAND R “What major US cities are particularly vulnerable to an anthrax attack?” U.S. cities with population > 1 million 1-2 conjuncts in a CycL “Ask” expression
USGS GNIS DB state | name | type | county | state_fips | -------+-----------------------+-------+----------------+------------+ TX | Dallas | ppl | Dallas | 48 | MN | Hennepin County | civil | Hennepin | 27 | CA | Sacramento County | civil | Sacramento | 6 | AZ | Phoenix | ppl | Maricopa | 4 | primary_lat | primary_long| elevation | population | status | ------------+-------------+-----------+------------+------------------+ 32.78333 | -96.8 | 463 | 1022830 | BGN 1978 1959 45.01667 | -93.45 | 0 | 1032431 | 38.46667 | -121.31667 | 0 | 1041219 | 33.44833 | -112.07333 | 1072 | 1048949 | BGN 1931 1900 1897 The Geographic Names Information System (GNIS) DB maintained by the US Geological Survey (USGS).
USGS GNIS DB • So how do we explain to our system that: • row 1 of that table is “about” the city of Dallas, TX • the population field of that table contains the number of inhabitants of the city that that row is “about” • here is exactly how to access tuples of that database • that access will be fast, accurate, recent, complete The Geographic Names Information System (GNIS) DB maintained by the US Geological Survey (USGS).
USGS GNIS DB • the population field of that table contains the number of inhabitants of the city that that row is “about” • We provide the field encodings and decodings, some of which correspond to explicit fields like population, two-letter state codes, etc: (fieldDecoding Usgs-Gnis-LS ?x (TheFieldCalled “population”) (numberOfInhabitants (TheReferentOfTheRow Usgs-Gnis) ?x)) The Geographic Names Information System (GNIS) DB maintained by the US Geological Survey (USGS).
USGS GNIS DB • how to access tuples of that database • We provide all the information needed for a JDBC connection script: • We assert, in the context (MappingMtFn Usgs-KS), all of these: (passwordForSKS Usgs-KS "geografy") (portNumberForSKS Usgs-KS 4032) (serverOfSKS Usgs-KS "sksi.cyc.com") (sqlProgramForSKS Usgs-KS PostgreSQL) (structuredKnowledgeSourceName Usgs-KS "usgs") (subProtocolForSKS Usgs-KS "postgresql") (userNameForSKS "sksi") The Geographic Names Information System (GNIS) DB maintained by the US Geological Survey (USGS).
USGS GNIS DB • that access will be fast, accurate, recent, complete • We provide meta-level assertions about the database, about each table of the database, about the completeness etc. of various kinds of data in the DB, etc. • We assert, in the context (MappingMtFn Usgs-KS): (schemaCompleteExtentKnownForValueTypeInArg Usgs-Gnis-LS USCity numberOfInhabitants 1) The Geographic Names Information System (GNIS) DB maintained by the US Geological Survey (USGS).
USGS GNIS DB • that access will be fast, accurate, recent, complete • We provide meta-level assertions about the database, about each table of the database, about the completeness etc. of various kinds of data in the DB, etc. • We assert, in the context (MappingMtFn Usgs-KS): (resultSetCardinality Usgs-Gnis-PS (TheSet (PhysicalFieldFn Usgs-Gnis-PS "state")) TheEmptySet 60.0)(resultSetCardinality Usgs-Gnis-PS (TheSet (PhysicalFieldFn Usgs-Gnis-PS "primary_long") (PhysicalFieldFn Usgs-Gnis-PS "primary_lat") (PhysicalFieldFn Usgs-Gnis-PS "name")) (TheSet (PhysicalFieldFn Usgs-Gnis-PS "county") (PhysicalFieldFn Usgs-Gnis-PS "state")) 530.36) The Geographic Names Information System (GNIS) DB maintained by the US Geological Survey (USGS).
“What major US cities are particularly vulnerable to an anthrax attack?” “major US city” U.S. City with >1M population “particularly vulnerable to an anthrax attack” • the current ambient temperature at ?C is above freezing, and • ?C has more than 100 people for each hospital bed, and • the number of anthrax host animals near ?C exceeds 100k Cyc knows that pullets are chickens, so don’t add those two numbers together!