Lehrstuhl für Angewandte Informatik IV Prof. Dr.-Ing. Stefan Jablonski Uni nivers versity o Bayreu reuth th f The 13th Workshop on Domain-Specific Modeling model[NL]generation: Natural Language Model Extraction 27.10.2013 Lars Ackermann (M. Sc.) E-Mail: lars.ackermann@uni-bayreuth.de
Why domain-specific modeling is useful George : Condi! Nice to see you. What's happening? Condi : Sir, I have the report here about the new leader of China . […] Hu is the new leader of China. George : That's what I want to know. Condi : That's what I'm telling you. George : That's what I'm asking you. Who is the new leader of China? Condi : Yes . […] George : Will you or will you not tell me the name of the new leader of China? Condi : Yes, sir. George : Yassir? Yassir Arafat is in China? I thought he was in the Middle East . […] Source: James Sherman 04.12.2013 | 2 2013 (C) Databases and Information Systems Group | Lars Ackermann
Larger Scope Information about source- and target language and speaker Informal, Ideally, this is achieved Information Extraction textual Natural Language Processing the same way as description reconstructing a model Formal Language Modeling model reconstruction language Formal description of Model reconstruction a model instance There is no jump involved, levels are Information about reconstructed from modeling patterns bottom to top M0 M1 M2 04.12.2013 | 3 2013 (C) Databases and Information Systems Group | Lars Ackermann
Not only in IT (but notably there) … Docu Docu Docu What the customer What the project How the analyst What the programer What the customer explained manager understood designed it implemented really needed #1 Up to now Docu Docu Docu Subjectively created Customer target model model[NL]generation model[NL]generation Docu Systematically generated Customer target model Getting flexibly , intuitively and interactively towards the target model using natural language . 04.12.2013 | 4 2013 (C) Databases and Information Systems Group | Lars Ackermann
model[NL]generation: Natural Language Model Extraction Sample Sentences Input 2 3 “The manager notifies the Feedback customer.” “After that, employees advise their colleagues.” Intuitive Training a system for processing natural language Interactive using natural language Extracting target model model[NL]generation Flexible 1 Choosing the (domain specific) ER Processes UML meta model Model Type Library 04.12.2013 | 5 2013 (C) Databases and Information Systems Group | Lars Ackermann
Many users, even more formulations – one Activity: We need flexible detection rules “The manager notifies the customer.” “The customer is contacted by the manager.” Activity name : contacts “The manager is responsible for the contact to the customer.” ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 04.12.2013 | 6 2013 (C) Databases and Information Systems Group | Lars Ackermann
First attempt of detection rule definition: Plain Syntax Example: „The manager notifies the customer .“ • ? ? notifies Noun Design Deter- Deter- Noun Verb Noun Strategy miner miner Predicate [Rumbaugh1991] NP Object NP VP Subject S Great Basis : Such grammatical parsers already exist! • 04.12.2013 | 7 2013 (C) Databases and Information Systems Group | Lars Ackermann
Everything is fine so far … … but only so far. Syntax is ambiguous! POS Tags Example 1: “The manager notifies the customer.” • notifies/VBZ Example 2: “The manager is the executive.” • is/VBZ Adjust detection rules to „notifies“ • NP VP S Lexicalization of production rules notifies NP VP DT NN NP But … • NP VP S “The managers notify the customer.” notifies NP VP “The manager notifies the customers.“ notify NP VP “The managers notify many customers.“ … VP “The MN notifies the customer.“ “The MN notifies the customer.” … MN ?? VP “Managers notify the customer.“ … VP “Max notifies the customer.“ DT NN NP “She notifies many customers.“ DT NNS NP “The alarm notifies the customer.“ “The alarm notifies the customer.“ … Actor = Person?! NP … NP … … 04.12.2013 | 8 2013 (C) Databases and Information Systems Group | Lars Ackermann
Creating detection rules – 1 Requirement 1: Detection ability • The manager notifies the customer Process - an administrator Users meet Process Process detection ? ? <PERSON> <interact> <PERSON> rule Object Subject Requirement 2: Disambiguation ability • The manager is the executive Actor <be> <interact> 04.12.2013 | 9 2013 (C) Databases and Information Systems Group | Lars Ackermann
Creating detection rules – 2 1 S Syntactic basis • Syntax tree for given samples • Reduce them to be more general NP VP Remaining issues: Disambiguation • Specialization (Domain, • VBZ NP User, …) DT NN DT NN Automatic feature extraction The manager notifies the customer and abstraction 04.12.2013 | 10 2013 (C) Databases and Information Systems Group | Lars Ackermann
Creating detection rules – 3 2 S Object of interest Select the sentence parts which are the most relevant [Collins1999] (manager) (notifies) NP VP NP “The manager“ (customer) “All managers“ NP “The account manager“ “All assembly managers“ VP “notifies the customer“ The manager notifies the customer “meets an administrator“ “informs the CEO“ “teach all pupils“ 04.12.2013 | 11 2013 (C) Databases and Information Systems Group | Lars Ackermann
Creating detection rules – 4 S 3 Annotation (manager) (notifies) Automatically add NP VP disambiguating and specializing WNCat <person> WNCat <interact> information 1 2 TypDep nsubj_gov 1 TypDep nsubj_dep 2 dobj_gov 3 “The manager notifies the customer.” (customer) “Users meet an administrator.” NP WNCat <person> 3 “The manager is the executive.” S TypDep dobj_dep 2 (manager) (is) NP VP WNCat <be> WNCat <manager> 1 2 TypDep cop_dep 3 TypDep nsubj_dep 2 det_gov the (executive) NP WNCat <executive> 3 TypDep det_gov the nsubj_gov 1 cop_gov 2 04.12.2013 | 12 2013 (C) Databases and Information Systems Group | Lars Ackermann
Mapping: Feature key paths Process meta model element <<instance of>> MappingElement Entity Attribute Activity name = car name = color name = advise employee Entity Attribute name = car name = speed advises colleague 1 Schema Concat(Lemma(S_VP), S_NP) Attribute 2 name = color Concat(Lemma(advises), employee) Entity name = car 3 “advise employee” Attribute name = speed 04.12.2013 | 13 2013 (C) Databases and Information Systems Group | Lars Ackermann
Vision Formalized Dynamic Domains Knowledge ER Processes UML Flexible linguistic Source Linguistic Domain-specfic knowledge Using linguistic fingerprint phrases knowledge Bi-directional Generation Extraction transformation 04.12.2013 | 14 2013 (C) Databases and Information Systems Group | Lars Ackermann
References Main Literature: [Collins1999] Michael Collins. “ Head-Driven Statistical Models for Natural Language Parsing ” . • Diss. University of Pennsylvania, 1999. [JurMart2008] Dan Jurafsky und James H. Martin. Speech and Language Processing. 2 nd • edition. Prentice Hall International, Apr. 2008. isbn: 9780135041963. [Rumbaugh1991] James Rumbaugh, et al.: Object-Oriented Modeling and Design , Prentice • Hall 1990, ISBN 0-13-629841-9 Further Literature: ilastic.com, An open-source framework to query, integrate and manipulate any type of data in English . Checked 20.10.2012. • Friedrich, Fabian. Automated Generation of Business Process Models from Natural Language Input . Master Thesis. Berlin: The School • of Business und Economics of the Humboldt- Universitả t zu Berlin, 2010. Avik Sinha, Amit Paradkar, Palani Kumanan u. a. An Analysis Engine for Dependable Elicitation of Natural Language Use Case • Description and Its Application to Industrial Use Cases . Techn. Ber. RC24712 (W0812-106). IBM Research Report. IBM Research Division, 18. Dez. 2008. Images. #1: http://stoertebeker.kkb-clan.de/pics/softwareentwicklung.jpg, 20.10.2013 #2: http://invincibles.in/tag/marvin/, 20.10.2013 04.12.2013 | 15 2013 (C) Databases and Information Systems Group | Lars Ackermann
Thank you for your attention #2 04.12.2013 | 16 2013 (C) Databases and Information Systems Group | Lars Ackermann
Recommend
More recommend