Presentation is loading. Please wait.

Presentation is loading. Please wait.

International Technology Alliance In Network & Information Sciences International Technology Alliance In Network & Information Sciences Fact Extraction.

Similar presentations


Presentation on theme: "International Technology Alliance In Network & Information Sciences International Technology Alliance In Network & Information Sciences Fact Extraction."— Presentation transcript:

1 International Technology Alliance In Network & Information Sciences International Technology Alliance In Network & Information Sciences Fact Extraction using CNL: summary of reasoning (v3) David Mott, Dave Braines(ETS, IBM UK) Stephen Poteet (Boeing) February 2012

2 [2] Objective of reasoning Define rules for semantic reasoning –entities –situations Standardise processing of NL and CNL to use the same concepts and rules –NL processing currently done by basic rules in two agents –CNL processing currently done by "linguistic frames" Two different rule interpreters, but use same rules

3 [3] Conceptual Model(s) Meta Model Concept, Entity Concept, Relation Concept, Conceptual Model belongs to, has as domain Semiotic Triangle Thing, Meaning, Symbolstands for, expresses General Agent, Spatial Entity, Temporal Entity, Situation, Container has as agent role, is contained in Linguistic Sentence, Phrase, Word, Noun, Linguistic Category, Linguistic Frame has as dependent, is parsed from ACM Place, Church, Person, Village, IED, Facility,.... is located in meaning symbol thing conceptualises stands for expresses "Our" Semiotic Triangle, based on the original [Ogden, C. K. and Richards, I. A. (1923). ]

4 [4] Current NL Processing Stanford Parser Entity Extractor Situation Extractor Names CE Aggregator CEStore SYNCOIN Reports Message PreProcessor "Stylistic" CE Conceptual Model (concepts, logical rules, linguistic expression) Proper Nouns (places, units) For Analysis Our focus is on the semantics of the conceptual model

5 [5] Meta facts – the hard stuff! Conceptualise statements: conceptualise a ~ person ~ P. conceptualise the person P ~ is married to ~ the person P1. can be written in "meta facts", about the concepts themselves: there is an entity concept named 'person'. there is a relation concept named 'is married to' that has the entity concept 'person' as domain and has the entity concept 'person as range. the relation concept 'is married to' has as range the entity concept 'person' has as domain These meta facts can be used to talk about the concepts: the conceptual model m1 contains the entity concept 'person'. the relation concept 'is married to' is a symmetric relation. or to map between words and concepts: the verb '|marry|' expresses the relation concept 'is married to'.

6 [6] Meta facts and object facts Most "normal" facts are not meta facts: the person John is married to the person Jane. Sometimes we need to bridge the world of meta facts and "normal" (object) facts meta facts about the things and relations that exist words in a sentence object facts about the things and relations that exist the person John is married to the person Jane. the verb phrase has the verb |marry| as head. the relation concept 'is married to' has.... What do we put in here? the noun phrase has the noun |person| as head and |John| as dependent. magic mapping

7 [7] Meta facts – Mapping entities the thing John the entity concept 'person' realises person Meta rule: if ( the thing T realises the entity concept EC ) then ( the thing T is a ) is a the thing John realises the entity concept personthe thing John is a person magic mapping Meta level factsObject level facts

8 [8] Meta facts – Mapping relations the person John the relation concept 'is married to' relation realisation Meta rule: if ( the relation concept RC has the sequence ( the thing T, and the thing T2 ) as relation realisation ) then ( the thing T the thing T2 ) the relation concept 'is married to' has the sequence ( the person John, and the person Jane ) as relation realisation the person John is married to the person Jane. magic mapping Meta level factsObject level facts the person Jane the sequence "1""2" is married to

9 [9] Meta facts – Mapping attributes the person John the attribute concept 'sister' attribute realisation Meta rule: if ( the attribute concept AC has the sequence ( the thing T, and the thing T2 ) as attribute realisation ) then ( the thing T has the thing T2 as ) the attribute concept 'sister' has the sequence ( the person John, and the person Jane ) as attribute realisation. the person John has the person Jane as sister magic mapping Meta level factsObject level facts the person Jane the sequence "1""2" has as sister

10 [10] Add meta syntax to CE rules? if... then ( the thing T the thing T2 ). if ( the word W expresses the entity concept EC ) and.... then ( the thing T is a ). if... then ( the thing T has the thing T2 as Magic mapping occurs in the rule interpreter (need to define semantics)

11 [11] NP processing logic

12 [12] ENTITIES

13 [13] Logic of Entities the noun phrase np1 [ nn_cat_ent_1 ] if ( the noun phrase NP has the noun N as head and stands for the thing T ) and ( the noun N expresses the entity concept C ) then ( the thing T realises the entity concept EC ). "the patrol in East Rashid discovers the facility." the noun |patrol| has as head the thing s1 stands for the entity concept 'patrol unit' expresses realises patrol unit Analyst's helper is a

14 [14] Proper Names [ nn_comname ] if ( the noun phrase NP stands for the thing T and has the proper noun N as proper name head ) then ( the thing T has the value N as common name ). the noun phrase np1 the thing s1 stands for the proper noun |East Rashid| has as proper name head has as common name A "common name" defines a "well known" name that may be used when viewing the output CE as the name of the entity (but care is needed as uniqueness will only be within a certain context)

15 [15] Adjectives [ nn_cat_ent_2 ] if ( the noun phrase NP has the word W as dependent and stands for the thing T ) and ( the word W expresses the entity concept C ) then ( the thing T realises the entity concept EC ). the noun phrase np1 the adjective |Christian| has as dependent the thing s1 stands for the entity concept 'christian entity' expresses realises christian entity Analyst's helper is a Handled similarly to nouns, but currently requires the conceptual model to contain a noun form of the adjective e.g. "christian entity" "the Christian market" Needs more work here

16 [16] Containers [ nn_prep_in ] if ( the noun phrase NP has the prepositional phrase PP as dependent and stands for the thing T ) and ( the prepositional phrase PP has the preposition '|in|' as head and has the noun phrase NP1 as object ) and ( the noun phrase NP1 stands for the thing T1 ) then ( the thing T1 is a container ). [ nn_prep_in_1 ] if ( the noun phrase NP has the prepositional phrase PP as dependent and stands for the thing T ) and ( the prepositional phrase PP has the preposition '|in|' as head and has the noun phrase NP1 as object ) and ( the noun phrase NP1 stands for the container T1 ) then ( the thing T is contained in the container T1 ). the noun phrase np1 the prepositional phrase pp1 has as dependent "the patrol in East Rashid discovers the facility." the preposition |in| the patrol unit p1 stands for the noun phrase np2 has as headhas as object container is a the thing t2 stands for is contained in

17 [17] "Same as" processing Sameas inference is implemented in teh Prolog rule engine, but leads to large number of inferences; may need a better implementation if ( the thing T is the same as the thing T1 ) and ( the thing T is an ) then ( the thing T1 is an ). if ( the thing T is the same as the thing T1 ) and ( the thing T the thing T3 ) then ( the thing T1 the thing T3 ). if ( the thing T is the same as the thing T1 ) and ( the thing T has V as ) then ( the thing T1 has V as ). Two things may be determined to be the same entity, in which case their properties and relations are cross propagated A meta statement of propagation

18 [18] Common Names if ( there is a thing named T that has the proper noun PN as common name ) and ( there is a thing named T1 that has the proper noun PN as common name ) and ( the thing T # the thing T1 ) then ( the thing T is the same as the thing T1 ). Things with the same common name are the same thing (This is an assumption that common name is unique) Proper Names This is the way to identify the entities in noun phrases as already-known places/people/organisations etc, using a preexisting set of common names there is a place named 1234 that has the proper noun |East Rashid| as common name and has '32,33' as coordinates and is located in the place |Afghanistan|..

19 [19] Places [ place_1 ] if ( the thing T is contained in the container P ) and ( the container P is a place ) then ( the thing T is located in the place P ). there is a place named 1234 that has the proper noun |East Rashid| as common name and has '32,31' as coordinates. Factbase of Names the thing t1 has the proper noun |East Rashid| as common name. the thing t1 is a place sameas processing the patrol unit p1 is contained in the container t1 the patrol unit p1 is located in the place t1

20 [20] Specific ACM semantics [ attack_perp_1 ] if ( the attack A has the agent A1 as agent role ) then ( the attack A has the agent A1 as perpetrator ). [ attack_targ ] if ( the attack A has the thing A1 as patient role ) then ( the attack A has the thing A1 as target ). [ discovery_finder_1 ] if ( the discovery D has the agent A1 as agent role ) then ( the discovery D has the agent A1 as finder ). [ discovery_find ] if ( the discovery D has the thing A1 as patient role ) then ( the discovery D has the thing A1 as find ). Is this really necessary – could it be handled by meta level rules based on the range and domain of the entity concepts? We would need to define a new relation in the conceptualise? This needs to be done for each concept, by the analyst Analyst's helper

21 [21] SITUATIONS

22 [22] Logic of situations the verb phrase v1 the verb |discover| the relation concept 'finds' the thing s1 stands for is viewed relationally as has as head expresses [ vb_sit ] if ( the verb phrase VB stands for the thing T ) then ( the thing T is a situation ). [ vb_cat_ent ] if ( the verb phrase VB has the verb PT as head and stands for the situation T ) and ( the verb PT expresses the relation concept RC ) then ( the situation T is viewed relationally as the relation concept RC ). "the patrol in East Rashid discovers the facility." Analyst's helper situation is a "finds" is really a relation but the situation is an entity, so we need to reconcile these views, hence "is viewed relationally"

23 [23] Logic of situations (2) the verb phrase v1 the verb |discovers| the relation concept 'finds' the entity concept 'discovery' the situation s1 stands for realises reifies is viewed relationally as has as head expresses [ gen_reify ] if ( the situation S is viewed relationally as the relation concept RC ) and ( the entity concept EC reifies the relation concept RC ) then ( the situation S realises the entity concept EC ). "the patrol in East Rashid discovers the facility." discovery Analyst's helper is a

24 [24] Logic of situations (3) the verb phrase v1 the verb |finds| the relation concept 'finds' the entity concept 'discovery' the discovery s1 stands for realises reifies is viewed relationally as has as head expresses the patrol p1the facility f1 has as patient role has as agent role [ vb_patient ] if ( the verb phrase VB has the noun phrase NP as dependent and stands for the situation VBT ) and ( the noun phrase NP stands for the thing NPT ) then ( the situation VBT has the thing NPT as patient role ). [ vb_agent ] if ( the sentence phrase SP has the noun phrase NP as dependent and has the verb phrase VB as head ) and ( the noun phrase NP stands for the thing NPT ) and ( the verb phrase VB stands for the situation VBT ) then ( the situation VBT has the thing NPT as agent role ). the noun phrase np2 has as dependent stands for the sentence s1 the noun phrase np1 has as dependent has as head stands for "the patrol in East Rashid discovers the facility."

25 [25] Logic of situations (4) the verb phrase v1 the verb |finds| the relation concept 'finds' the entity concept 'discovery' the discovery s1 stands for realises reifies is viewed relationally as has as head expresses the patrol p1the facility f1 has as patient role has as agent role the noun phrase np2 has as dependent stands for the sentence s1 the noun phrase np1 has as dependent has as head stands for finds "the patrol in East Rashid discovers the facility." agent is a [ gen_relation ] if ( the situation S has the thing A as agent role and has the thing B as patient role and is viewed relationally as the relation concept RC ) then ( the relation concept RC has the sequence ( the thing A, and the thing B ) as relation instance ). [ gen-relation-domain ] if ( the situation S has the thing A as agent role and is viewed relationally as the relation concept RC ) and ( the relation concept RC has the entity concept EC as domain ) then ( the thing A realises the entity concept EC ). [ gen-relation-range ] if ( the situation S has the thing B as patient role and is viewed relationally as the relation concept RC ) and ( the relation concept RC has the entity concept EC as range ) then ( the thing B realises the entity concept EC ).

26 [26] Processing for CNL and NL NL processing: rules implemented as standard CE inference engine in agents running against CE store. CNL processing: special purpose inference engine, interpreting CE logic in linguistic frames SAME CE logic in both

27 [27] "Identical" NL and CNL parsers NL Parser CNL Parser lexicon conceptual model Reference English Grammar Semantic Theory Increase stylistic expressibility of CE Better understanding of linguistics stylistically expressive CE basic CE or predicate logic or CE-in-Java stylistically expressive CE NLP

28 [28] Linguistic Frame for semantics there is a linguistic frame named np3 that has 'a person' as example and defines the noun phrase NP_np3 and has the sequence ( the determiner DET_np3, and the noun COMMON_np3 ) as syntactic pattern and is predicated on the thing X and has the statement that ( the noun COMMON_np3 expresses the entity concept EC_np3 ) as preconditions and has the statement that ( the thing X realises the entity concept EC_np3 ) and ( the noun phrase NP_np3 stands for the thing X ) as semantic statement the word |a| belongs to the linguistic category 'determiner'. the word |person| is a noun. the word |person| expresses the entity concept person. semantics syntax determiner noun noun phrase a person person(COMMON _np3) v(X), X=COMMON_np3,... Analyst's Conceptual Model Linguistic Model We want exactly the same logic here as in the real NL processing (cf earlier slide on Logic of Entities) lambda variable

29 [29] CNL semantic processing truth box the person John is married tothe person Jane Linguistic Frame for NP Linguistic Frame for VP Word Category for Verb Linguistic Frame for Sentence NP processing not shown Rules for NP Rules for Sentence Concept Lookup Rules for VP Rules for NP CE facts passed upwards from box to box The result is the set of CE facts representing the sentence

30 [30] Analyst Helper Provides background linguistic information to NL and CNL parsers, specific to the ACM meta information on concepts –generated automatically from the ACM "expresses" relation between words and concepts –only analyst knows what the concepts mean –for each concept, ask analyst to say what words express it –can use Wordnet to make suggestions rules to determine ACM specific relations Sets of proper names –places, people, organisations,... –use (assumed unique) common name to identify feedback words that have not been recognised when analysing sentences –needs interaction between parser and analyst helper Basic user interface is needed –could be more elaborate if resources available

31 [31] What we need from the analysts helper? the word X expresses the concept Y. the entity concept EC reifies the relation concept RC rules, eg [ attack_perp_1 ] ? there is an entity concept named EC. the relation concept RC has the entity concept EC as domain and the entity concept EC1 as range. the attribute concept RC has the entity concept EC as domain and the entity concept EC1 as range. there is a place named 1234 that has the proper name |East Rashid| as common name and has '32,33' as coordinates... Analyst's helper Issues: –do we name concepts by the user-visible "concept term"? [a detail] –the expresses type information seems too simplistic –at some stage we need far more detailed background semantics for applying semantic constraints to parsing and for disambiguation conceptual model Proper Names

32 [32] Flow of information for NLP Analyst Helper NL parser "expresses" conceptual model Proper Names wordnet/etc meta information ITAnet MetaModel generator gazetteers etc Analyst the word |xxx| is an unrecognised word wordnet/etcgazetteers etc translate Actually the CE parser uses the same resources semantic rules generator?


Download ppt "International Technology Alliance In Network & Information Sciences International Technology Alliance In Network & Information Sciences Fact Extraction."

Similar presentations


Ads by Google