Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Attempto Controlled English Norbert Fuchs et al. Dept CS, Univ Zurich, Switzerland as (mis-)interpreted by Peter Clark Background • Funded continuously from 1989 to 2003 by Swiss NSF. • Employed in two master theses (robot control and querying an ontological database). Also taught to students of Univ Dresden. • Informal collaborations with hospital (use of controlled language for patient records) – Demand for past tense and passive voice • Now: funding from EC as part of the “Network of Excellence” 2003-2007. – ACE was chosen as (basis of) the controlled English for the EU Network of Excellence REWERSE (2004-8) – Initial requirements include: verbalization of formal languages in ACE, NAF as well as logical negation, decidable ACE subset. • Norbert Fuchs is now senior research fellow with the Univ Zurich heading Zurich’s part of REWERSE for next 4 years. • Not a stepping stone to full NL; rather full NL is considered largely out of reach. ACE: Overview and Approach • ACE is completely (& deliberately) knowledge poor – (Exception: numbers, groups, equality) • Parsing in ACE is deterministic – “predictability is better than smarts” – users learn the disambiguation rules, e.g., • PPs attach right-to-left • rules for coordination • More like an English-like programming language than a “natural” language – Though: Norbert claims can achieve both – “Only suitable for logic-like domains, not commonsense reasoning” The ACE System • Three main bits of software: – Language to logic translation – Lexicon editor – Theorem prover ACE Grammar (overview) • Vocabulary – Words only have one sense (per part of speech) – No ontology (sense taxonomy) • Basic sentence: – subject + verb + complements + adjuncts – e.g., “The driver stops the train at the station” • Composite sentences: • • • • • coordination (and, or) subordination (if, then) verb phrase negation (does not, is not) noun phrase negation (no) quantification (a, there is, for every) ACE • Words only have one sense (per part of speech) • Compound nouns are not decomposed – enter them explicitly in the lexicon • Anaphora resolution: – simple search of an object stack + recency • No inheritance hierarchy • Coordination Ambiguity Resolution • Fixed interpretation rules, e.g., – Relative phrases always attach to the immediately preceding noun phrase – PPs always attach to the verb • If there is a misattachment, e.g., in “The driver stops the train with the defective brake”, the user rewrites with a relative phrase, e.g., “the driver stops the train that has a defective brake”. – multiple PPs attach right-to-left – Plurals have a collective interpretation by default • “Three men lift a table” • Use of “cue” phrases to overwrite defaults, e.g., • “Each of three men lifts a table”, to get distributive interpretation ACE • No semantic roles: • “the person hits the nail” event(E,hit(person,nail)) • “the hammer hits the nail” event(E,hit(hammer,nail)) • • • • – User must be careful! Interpretation is context-free Verbs with multiple alternations are not allowed – e.g., “X gave Y Z”, “X gave Y” – no guessing of missing object Ditransitive verbs not allowed – instead use a preposition (e.g., “John gives a book to Mary”, rather than “John gave Mary a book”) prepositions need to be used consistently by user – e.g., “in the morning” “during the morning” – with one exception: “in the bed” vs. “in the morning” • disambiguated based on object type (physical vs. temporal) Background Knowledge in ACE • ACE deliberately has little prior, built-in knowledge, e.g.,; – No built-in knowledge that “give”, “give_to” are related – No built-in knowledge of interword relationships (e.g., “has” vs. “owns”) – No built-in knowledge of how verbs and nominalizations relate • Rather, philosophy is to allow user to specify such knowledge using axioms, so user has control, e.g., – “If a person X gives an object Y to a person Z, then the person X gives the object Y.” – “If a person X has an object Y then the person X owns the object Y”; or simply “If a person has an object then the person owns the object” Multiple ways of saying things… • “The box is red” – box(A) & property(A,red) • “The color of the box is red” – box(A) & color-of(A,B) & property(B,red) • “The red box” – box(A) & property(A,red) 2. The Lexicon Editor • Simple TTY interface; user enters word then: – part of speech – nouns: • singular/plural • mass/count • person/location/time/object – verbs: • 3rd person singular & plural • transitive/intransitive/ditransitive • Is accessible via the Web. more fancy Web-based interface is also under development. 3. Theorem Proving (Reasoning) • ACE translates to first-order logic, not Prolog – wanted non-Horn rules • No temporal reasoning • Use a theorem-prover to spot contradictions – spent 2 yrs wrestling with it (!) – Will help users debug the KB (in theory) • Events are reified. Also… • Feedback to help user – Feeback on failed parses: ACE will identify the first sentence that failed to parse, and try to give more info. – Paraphrase of successful parses: Helpful, providing that the paraphrase does not itself contain the ambiguity in the original sentence.