Скачать презентацию Engineering a Knowledge Base for an Intelligent Personal Скачать презентацию Engineering a Knowledge Base for an Intelligent Personal

8757cefac9670ee92747c00968e2a2e7.ppt

  • Количество слайдов: 32

Engineering a Knowledge Base for an Intelligent Personal Assistant Vinay K. Chaudhri Adam Cheyer Engineering a Knowledge Base for an Intelligent Personal Assistant Vinay K. Chaudhri Adam Cheyer Richard Guili 3/16/2018 Bill Jarrold Karen L. Myers John Niekrasz 1

Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Future Work Summary and Conclusions 2

Problem n Cognitive Assistant that Learns and Organizes (CALO) n n n Learn from Problem n Cognitive Assistant that Learns and Organizes (CALO) n n n Learn from experience Be told what to do Explain what it is doing Reflect on experience Respond robustly to surprises Situated in an office environment 3

CALO Functions Organize & Manage Information Monitor & Manage Tasks Schedule & Organize in CALO Functions Organize & Manage Information Monitor & Manage Tasks Schedule & Organize in Time CALO Prepare Information Products Observe & Mediate Interactions Acquire, Allocate Resources 4

An Ontology is needed to permit sharing of data and knowledge across these various An Ontology is needed to permit sharing of data and knowledge across these various subcomponents 3/16/2018 5

Learning in Context Provides greater value, needs fewer examples To: Bob@ sri. com To: Learning in Context Provides greater value, needs fewer examples To: [email protected] sri. com To: Sue @ sri. com To: [email protected] com Subj: Re: f. MRI meeting Subj: f. MRI meeting See you then. Attached is the current draft. Ok, I suggest Wednesday at 4 pm. We need to meet soon to discuss the paper deadline. Learning Algorithm Important? Meeting? …? Manager of Works on Leader of Relevant to Meeting for Meetings Projects Files 6

7 7

Example Functionality n n n CALO will automatically put together a portfolio of information Example Functionality n n n CALO will automatically put together a portfolio of information (e. g. , mail, files, web pages) relevant to your projects and to upcoming meetings CALO will summarize, prioritize, and classify an email. CALO will identifies the action items, and produce an annotated meeting record. 8

Test Questions: PQs and Iqs (Parameterized Questions & Instantiated Questions) What |sc: %Meeting| is Test Questions: PQs and Iqs (Parameterized Questions & Instantiated Questions) What |sc: %Meeting| is being discussed or suggested in |io: %Email. Message|? What is the duration suggested for the meeting discussed in |io: %Email. Message|? What is the time suggested for the meeting discussed in |io: %Email. Message|? What date is mentioned in |io: %Email|? What location is mentioned in |io: %Email|? What time is mentioned in |io: %Email|? 9

Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Future Work Summary and Conclusions 10

KB Development n n n Knowledge Representation Framework Development Process Overview of Knowledge Content KB Development n n n Knowledge Representation Framework Development Process Overview of Knowledge Content 11

Knowledge Representation Framework The “core” ontology n n The Component Library (CLIB) n Barker, Knowledge Representation Framework The “core” ontology n n The Component Library (CLIB) n Barker, Porter, Clark KCAP 2001. CLIB is written in KM (Knowledge Machine) Re-usable, Composable, Domain. Independent Library Richly axiomatized event classes (e. g. Move, Attach) 12

Knowledge Representation Framework n n We used OWL for sharing the knowledge with modules Knowledge Representation Framework n n We used OWL for sharing the knowledge with modules that needed to load the ontology We developed a KM to OWL translator n We limited the translation to only that subset of KM that could be translated into OWL 13

Knowledge Representation Framework n SPARK procedure language for representing knowledge about performing automated tasks Knowledge Representation Framework n SPARK procedure language for representing knowledge about performing automated tasks n n Expressiveness of SPARK was essential for representing complex process structures necessary for accommodating office tasks We represent uncertain knowledge using weighted rules n n Weights are necessary to capture the output from learning methods We are still able to expose a deterministic interface to the rest of the system 14

Development Process n n Distributed team with over 20 different research groups We solicited Development Process n n Distributed team with over 20 different research groups We solicited requirements n n n Large scale reuse of ontologies n n n i. Calendar Work of Radarnetworks Ontology Simplification n List of classes and relations Formal axioms Eliminate unneeded constructs Simplify representation Distributed development n Use Protégé for knowledge authoring 15

Overview of Knowledge Content - The “Office Ontology” n People n n Postal address, Overview of Knowledge Content - The “Office Ontology” n People n n Postal address, home address, work address n Sender, receiver, etc n Projects/Tasks n Organizational roles Learning Methods n Start, end, repetition Meeting types, discussion topics, meeting roles Organizations n Calendars n n n Emails n n First name, last name Meetings Contacts n n n Capability of learning methods, data needed Provenance n Source of an information 16

Overview of Knowledge Content - Example Class n Chat. Session. Message n Comment: Overview of Knowledge Content - Example Class n Chat. Session. Message n Comment: "Instances of #$Chat. Session. Message are complete messages passed between chat participants during a #$Chat. Session. For example, if Bob and Fred are involved in CALO Online Chat Bob might send the chat message 'Hi Fred' to Fred. Such a message is a #$Chat. Session. Message. More specifically, it is a #$Chat. Text. Message. Please see the subclasses of #$Chat. Session. Message because developers are more likely to be referencing its subclasses. A negative example of #$Chat. Session. Message would be a portion of the message sent from Bob to Fred such as 'Hi Fr'. ” n Superclasses: n n Electronic. Message Computer. Encoded. Information 17

Overview of Knowledge Content n n Process model system (PTIME) has approx 50 process Overview of Knowledge Content n n Process model system (PTIME) has approx 50 process models In Core plus Office Ontology n Approx 1000 classes n Approx 500 relations 18

Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Future Work 19

Knowledge Engineering Challenges n n Reusing i. Calendar Representing Meetings Representing Tasks Ensuring Interoperability Knowledge Engineering Challenges n n Reusing i. Calendar Representing Meetings Representing Tasks Ensuring Interoperability 20

Reusing i. Calendar n Prune the relations needed n n Define symbol name mappings Reusing i. Calendar n Prune the relations needed n n Define symbol name mappings n n n All the relations were not needed We did not want to bloat the ontology We retained only what was needed We renamed the relations to fit in our standard naming convention But, we retained the mappings to the original name Link to the rest of the ontology n We needed to define i. Calendar relations using existing vocabulary of People, and Time 21

Representing Meetings n n Communication Modeling multi-modal communication Modeling Discourse Structure Modeling Meeting Activity Representing Meetings n n Communication Modeling multi-modal communication Modeling Discourse Structure Modeling Meeting Activity 22

Representing Meetings Model of Communication 23 Representing Meetings Model of Communication 23

Representing Meetings Modeling Discourse Structure n Modeling Dialog Structures n n Define Communicate subclasses Representing Meetings Modeling Discourse Structure n Modeling Dialog Structures n n Define Communicate subclasses such as Statement, Question, Back. Channel, etc. Modeling Argument Structure n Define coarser level actions such as Raising an Issue, Proposal, Acceptance, etc. 24

Representing Meetings Modeling the Meeting Activity n Provide ways to segment a meeting n Representing Meetings Modeling the Meeting Activity n Provide ways to segment a meeting n Physical state of participants n n Sitting, standing, etc Agenda state of participants n Position within a previously defined meeting structure 25

Representing Tasks n Tasks are modeled in terms of n n n a task Representing Tasks n Tasks are modeled in terms of n n n a task type a set of input and output parameters, Whether a parameter is required or optional allowed constraints Task instances are used through out the system n Descriptive properties n n Priority, documentation, source, location, resource allocation and usage Temporal properties n Creation time, start time (adapted from i. Calendar) 26

Ensuring Interoperability n OWL does not allow n-ary relationships n Task representation requires representing Ensuring Interoperability n OWL does not allow n-ary relationships n Task representation requires representing position of an argument in a list n n Needed to reify each argument so that the position could be specified OWL does not allow specialization of primitive data types n Special kinds of strings such as Postal Code, Telephone Number are of interest n Needed to define a hierarchy of ``pseudo ranges’’ 27

Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Future Work 28

Deploying the Knowledge Base n Querying the Knowledge base n n Uniform point of Deploying the Knowledge Base n Querying the Knowledge base n n Uniform point of access provided by a query manager Updating the knowledge base n n Methods to update the instance data if ontology changes Mechanism to propagate additions to the ontology at runtime 29

Documentation (via Owldoc) 30 Documentation (via Owldoc) 30

Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Outline n n n Problem KB Development Knowledge Engineering Challenges Deploying the Knowledge Base Future Work 31

Future Work n n Align Different OWL files Ontology to Help “Stacked Learning” n Future Work n n Align Different OWL files Ontology to Help “Stacked Learning” n n n A software engineer can solve a new learning problem by writing its specification in ontology An end-user can specify a goal, and CALO can compute how to learn to meet that goal CALO can infer a user’s goal and learn how to achieve that goal 32