61
Thomas Roth-Berghofer Explanation-aware System Design and Computing Thomas Roth-Berghofer Senior researcher, [email protected] German Research Center for Artificial Intelligence DFKI GmbH, Kaiserslautern, Germany 1 Freitag, 11. September 2009

Explanation Aware Design And Computing 2009 09 11

Embed Size (px)

DESCRIPTION

The ability to explain reasoning processes and results can substantially affect the usability and acceptance of a software system. The described basic explanation scenario of user, originator and explainer helps identifying communication partners and required knowledge bases. Explanation goals and kinds further help structuring knowledge acquisition and use in software design and computing. Explanation-awareness is exemplified through coTag, a code tagging and retrieval plugin for eclipse.

Citation preview

Page 1: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Explanation-aware System Design and Computing

Thomas Roth-BerghoferSenior researcher, [email protected]

German Research Center for Artificial Intelligence DFKI GmbH, Kaiserslautern, Germany

1Freitag, 11. September 2009

Page 2: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

2Freitag, 11. September 2009

Page 3: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

3Freitag, 11. September 2009

Page 4: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Traditional view on software systems

U

I

User

Software System

4Freitag, 11. September 2009

Page 5: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

„Trust me. I know what I am

doing!“

„Traditional“ behaviour of software systems

SLEDGE HAMMER

5Freitag, 11. September 2009

Page 6: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Overview

• Explanation-aware view on software design: communication scenario

• Aspects of explanation-aware design

• Example: coTag — Code tagging and similarity-based retrieval

6Freitag, 11. September 2009

Page 7: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Communication participants

U

I

Explainer

Originator

User Software System

7Freitag, 11. September 2009

Page 8: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

U

I

Explainer

Originator

The user communicates by way

of a user interface (UI) with the whole software system and

is the recipient of explanations.

8Freitag, 11. September 2009

Page 9: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Originator

U

I

Explainer

Originator

The originator is the tool the user works with to perform tasks and solve problems.

9Freitag, 11. September 2009

Page 10: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Explainer

U

I

Explainer

Originator

The explainer can be seen as another tool that helps understanding how the originator works and what knowledge the originator uses. 

10Freitag, 11. September 2009

Page 11: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Explanation knowledge

U

I

Explainer

Originator

• concept explanations• templates• …

11Freitag, 11. September 2009

Page 12: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Problem solving knowledge

U

I

Explainer

Originator

• results• concepts• workflows• …

12Freitag, 11. September 2009

Page 13: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Reasoning information

U

I

Explainer

Originator

• intermediate results• context snapshots• …

13Freitag, 11. September 2009

Page 14: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

What are explanations?

14Freitag, 11. September 2009

Page 15: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

What are explanations?Explanations are answers to questions.

15Freitag, 11. September 2009

Page 16: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Cognitive aspects of explanations

• „Explanations are the most common method used by humans to support decision making.“ (Roger Schank, 1986)

• Main purpose:

• Explain a solution.

• How was the solution derived?

• How does a system work?

• How to handle a system

• Explain failures.

16Freitag, 11. September 2009

Page 17: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Computational aspects of explanations

• Backward explanations:

• Explain result and how it was obtained.

• Forward explanations:

• Explain (indirectly) by showing different ways to further optimise a given result.

• Open up possibilities for exploratory use.

17Freitag, 11. September 2009

Page 18: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Code-tagging and similarity-based retrieval with myCBR

EXAMPLE:

Roth-Berghofer, Th. and Bahls, D. (2008). Code tagging and retrieval with myCBR. In Petridis, M., Coenen, F., and Bramer, M., editors, Research and Development in Intelligent Systems XXV, London, UK. Springer Verlag.

18Freitag, 11. September 2009

Page 19: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Programmer‘s dilemma

19Freitag, 11. September 2009

Page 20: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Typical questions of programmers

• Where is the code fragment I used to solve a similar problem with in the past?

• Is this piece of code still available?

• Is it worth the effort to search for it?

• If so, what would be the right search term?

20Freitag, 11. September 2009

Page 21: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Personalised approach

• Personal vocabulary: tags

• Linking tags

21Freitag, 11. September 2009

Page 22: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Linking tags

GridBag

PatternLayout

Similar!

22Freitag, 11. September 2009

Page 23: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Personalised approach

• Personal vocabulary: tags

• Linking tags

• Work context

• Social dimension: tag exchange

• Similarity-based retrieval

23Freitag, 11. September 2009

Page 24: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Case-BasedReasoning cycle

Agnar Aamodt and Enric Plaza. Case-based reasoning: Foundational issues, methodological variations, and system approaches. AI Communications, 7(1):39–59, 1994.

24Freitag, 11. September 2009

Page 25: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Design decisions / constraints

• Integration in IDE eclipse

• Storage of code snippets and tags separately from code

• Queries = Search text plus work context

• Community repository for experience exchange

25Freitag, 11. September 2009

Page 26: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Code snippet & context

Work context

• java.net.URL

• java.net.URLConnection

• java.io.InputStream

• java.lang.StringBuffer

• java.io.BufferedReader

• java.lang.String

• java.lang.Exception

Java code snippet

26Freitag, 11. September 2009

Page 27: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Case structureAttribute Value type category

Tags String (multiple) Problem description

Context items String (multiple) Problem description

Code snippet String Solution

Document type String Provenance

Project name String Provenance

File path String Provenance

Author ID String Provenance

Creation date Long Provenance

Rating Float Maintenance

Rating count Integer Maintenance

27Freitag, 11. September 2009

Page 28: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Case structureAttribute Value type category

Tags String (multiple) Problem description

Context items String (multiple) Problem description

Code snippet String Solution

Document type String Provenance

Project name String Provenance

File path String Provenance

Author ID String Provenance

Creation date Long Provenance

Rating Float Maintenance

Rating count Integer Maintenance

Set by user

Set by coTag

28Freitag, 11. September 2009

Page 29: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Acquiring case

29Freitag, 11. September 2009

Page 30: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Query view

• Search for tags: init, logging config

• Include context => regard currently selected code

30Freitag, 11. September 2009

Page 31: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Retrieval

• Result for: init, logging, config

• Ranked list of code snippets

31Freitag, 11. September 2009

Page 32: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Presentation of cases

32Freitag, 11. September 2009

Page 33: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Situations in which explanations play a role

• Instructing explanations:• Novice users want to know about how tagging and (similarity-based)

retrieval works.

• Convincing explanations:• Regular users want to check when the retrieval does not meet their

expectations.

• Improving explanations• Regular users want to correct coTag‘s behaviour.

33Freitag, 11. September 2009

Page 34: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Explanation of matching

• Search terms: • init, logging, config

• Case tags: • init, Logger

34Freitag, 11. September 2009

Page 35: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Graphical explanation of trigram matching

• Syntactical similarity• Typos

• Stemming

35Freitag, 11. September 2009

Page 36: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Similarity customisation

• Tag similarities:

• Updates personal and community similarity measure

unsimilar 0%

partly similar 25%

similar 50%

very similar 75%

identical 100%

36Freitag, 11. September 2009

Page 37: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Three levels of similarity calculation

Personal

Imported

Trigram

37Freitag, 11. September 2009

Page 38: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Customised (personal) and imported similarity

38Freitag, 11. September 2009

Page 39: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Client-side architecture

39Freitag, 11. September 2009

Page 40: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Client-side architecture

40Freitag, 11. September 2009

Page 41: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Client-side architecture

41Freitag, 11. September 2009

Page 42: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Tag and exchange code snippets

42Freitag, 11. September 2009

Page 43: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

43Freitag, 11. September 2009

Page 44: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

44Freitag, 11. September 2009

Page 45: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

• Re-finding information is a quite typical task in knowledge-work.

• Tagging is a helpful and well-known technique.

• Similarity-based retrieval can improve searches.

• Explanation-aware design and development of applications helps dealing with increased complexity of similarity-based retrieval.

Summary

45Freitag, 11. September 2009

Page 46: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Explaining Semantic Search Results of Medical Images in MEDICO

Forcher, B., Möller, M., Sintek, M., and Roth-Berghofer, Th. Explanation of semantic search results of medical images in Medico. In Th. Roth-Berghofer, N. Tintarev, and D. B. Leake, editors, Workshop 10@IJCAI-09: Explanation-aware Computing (ExaCt 2009), pages 13–24, 2009.

46Freitag, 11. September 2009

Page 47: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Goal of Medico Project

Development of

• intelligent

• robust and

• scalable

semantic search engine for medical images

47Freitag, 11. September 2009

Page 48: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

U

I

Explainer

Originator

Reconstructive explanations

line of reasoning

line of explanation

48Freitag, 11. September 2009

Page 49: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

• Exploration interface with concept explanations support domain understanding.

• Justification interface provides action explanations, which counteract encapsulation and information hiding.

RadSem

49Freitag, 11. September 2009

Page 50: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Explainer

• Concept• Why• How• Action

explanations

• Relevant• Innovative• Convincing• Short and easy to overlook• Provide different perspectives

and follow-up questions

Good explanations

Kinds Goals

• Transparency• Justification• Relevance• Conceptualisation• Learning

OPEN QUESTION: OPERATIONALISATION OF THOSE CRITERIA

Originator

50Freitag, 11. September 2009

Page 51: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Kinds of explanations

• Concept explanations

• Action explanations

• Why- and How-explanations

51Freitag, 11. September 2009

Page 52: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Concept Explanations

• The goal of concept explanations is to build links between unknown and known concepts.

• Variations:• Definition: “What is a bicycle?” – “A bicycle is a land vehicle

with two wheels in line. Bicycles are a form of human powered vehicle.”

• Functional mapping: “What is a bicycle?” – “A bicycle serves as a means of transport.”

• Prototypical usage of individual things or actions: “What is a bicycle?” – “The thing, that man over there just crashed with.”

• …

52Freitag, 11. September 2009

Page 53: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Action explanations: “Why was this seat post selected?” – “For the given price, only one other seat post was available. But this was too short.

Action explanations

• Action explanations explain the activities of the respective system (originator).

• In RadSem: Reconstructive explanations based on search concepts and found concepts.

53Freitag, 11. September 2009

Page 54: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Why-explanations

• Why-explanations provide causes or justifications for facts or events.

• Examples:• Justification: “Why does the universe expand?” – “Because we

can observe a red shift of the light emitted by other galaxies.”

• Cause: “Because the whole matter was concentrated at one point of the universe and because the whole matter moves away from each other

54Freitag, 11. September 2009

Page 55: Explanation Aware Design And Computing   2009 09 11

Transparency

Justification

Relevance

Conceptualisation

Learning

Sørmo, F., Cassens, J., Aamodt, A.: Explanation in Case-Based Reasoning – Perspectives and Goals, 2005.

How did the system reach an answer?

Why is the answer a good answer?

Why is the question relevant?

What is the meaning of a concept?

Teach the user about the given domain.

Explanation goals

55Freitag, 11. September 2009

Page 56: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

When are explanations good explanations?

• Short and easy to overlook

• Innovative

• Relevant

• Convincing

• Different perspectives and follow-up questions

• NaturalW. R. Swartout and J. D. Moore. Explanation in second generation expert systems. In J. David, J. Krivine, and R. Simmons, editors, Second Generation Expert Systems, pages 543–585, Berlin, 1993. Springer Verlag.

56Freitag, 11. September 2009

Page 57: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Take home messages

U

I

Explainer

Originator

• The ability to explain reasoning processes and results can substantially affect the usability and acceptance of a software system.

• Basic explanation scenario helps identifying communication partners and knowledge bases.

• Explanation goals and kinds further help structuring knowledge acquisition and use in software design and computing.

57Freitag, 11. September 2009

Page 58: Explanation Aware Design And Computing   2009 09 11

Thomas Roth-Berghofer

Explanation-aware System Design and Computing

Thomas Roth-BerghoferSenior researcher, [email protected]

Thank you!

58Freitag, 11. September 2009

Page 59: Explanation Aware Design And Computing   2009 09 11

Publications of ExaCt research group

2009

[Roth-Berghofer, Tintarev, Leake, 2009] Roth-Berghofer, Th., Tintarev, N., and Leake, D.B., editors. Proceedings of the IJCAI-09 workshop on Explanation-aware Computing (ExaCt 2009), July 2009.

[Adrian et al., 2009] Adrian, B., Forcher, B., Roth-Berghofer, Th., and Dengel, A. Explaining ontology-based information extraction in the NEPOMUK semantic desktop. In Thomas R. Roth-Berghofer, Nava Tintarev, and David B. Leake, editors, Workshop 10@IJCAI-09: Explanation-aware Computing (ExaCt 2009), pages 94–101, 2009.

[Forcher et al., 2009] Forcher, B., Möller, M., Sintek, M., and Roth-Berghofer, Th. Explanation of semantic search results of medical images in medico. In Thomas R. Roth-Berghofer, Nava Tintarev, and David B. Leake, editors, Workshop 10@IJCAI-09: Explanation-aware Computing (ExaCt 2009), pages 13–24, 2009.

[Stahl, Roth-Berghofer, 2009] Stahl, A. and Roth-Berghofer, Th. Rapid Prototyping of CBR applications with the Open Source Tool myCBR. Künstliche Intelligenz, 23(1):34–37, March 2009.

2008

[Roth-Berghofer et al., 2008] Roth-Berghofer, Th., Schulz, S., Bahls, D., and Leake, D.B., editors. Proceedings of the ECAI-08 workshop on Explanation-aware Computing ExaCt2008. University of Patras, July 2008. http://ceur- ws.org/Vol- 391.

[Forcher, Adrian, Roth-Berghofer, 2008] Forcher, B., Adrian, B., and Roth-Berghofer, Th.. Explanation styles in iDocument. ExaCt 2008, ECAI-08 Workshop.

[Bahls, 2008] Bahls, D. (2008). Explanation support for the case-based reasoning tool myCBR. Project thesis, University of Kaiserslautern.

[Forcher et al., 2008] Forcher, B., Adrian, B., and Roth-Berghofer, T. (2008). Explanations in the information extraction system iDocument. Künstliche Intelligenz, 22(2).

[Mittag, 2008] Mittag, F. (2008). ReduxExp: A justification-based explanation-support server. Project thesis, University of Kaiserslautern.

[Roth-Berghofer and Bahls, 2008] Roth-Berghofer, T. R. and Bahls, D. (2008). Code tagging and retrieval with myCBR. In Petridis, M., Coenen, F., and Bramer, M., editors, Research and Development in Intelligent Systems XXV, London, UK. Springer Verlag.

[Roth-Berghofer and Mittag, 2008] Roth-Berghofer, T. R. and Mittag, F. (2008). ReduxExp: A justification-based explanation-support server. Proceedings of AI-2008. the twenty-eighth SGAI international conference on artificial intelligence. In Petridis, M., Coenen, F., and Bramer, M., editors, Research and Development in Intelligent Systems XXV, London, UK. Springer Verlag.

[Roth-Berghofer and Richter, 2008a] Roth-Berghofer, T. R. and Richter, M. M., editors (2008a). Künstliche Intelligenz—Topic: Explanation, volume 22, Bremen. BöttcherIT Verlag.

[Roth-Berghofer and Richter, 2008b] Roth-Berghofer, T. R. and Richter, M. M. (2008b). On explanation. Künstliche Intelligenz, 22(2):5–7.

2007

[Bahls and Roth-Berghofer, 2007] Bahls, D. and Roth-Berghofer, T. (2007). Explanation support for the case-based reasoning tool myCBR. In Proceedings of the Twenty-Second AAAI Conference on Artificial Intelligence. July 22–26, 2007, Vancouver, British Columbia, Canada., pages 1844–1845. The AAAI Press, Menlo Park, California.

[Eppert, 2007] Eppert, M. (2007). Generating provenance explanations for the gnowsis rebirth machine - a first pass. Pro ject thesis, University of Kaiserslautern.

[Roth-Berghofer et al., 2007] Roth-Berghofer, T. R., Schulz, S., and Leake, D. B., editors (2007). Proceedings of the AAAI-07 workshop on Explanation-aware Computing ExaCt2007. AAAI Press. Technical Report WS-07-06.

59Freitag, 11. September 2009

Page 60: Explanation Aware Design And Computing   2009 09 11

Publications of ExaCt research group

2006

[Richter et al., 2006] Richter, M. M., Roth-Berghofer, T., and Schulz, S., editors (2006). Explanation-aware Computing, volume 25. SAP - Slovak Academic Press Ltd., Bratislava.

2005

[Roth-Berghofer et al., 2005a] Roth-Berghofer, T., Cassens, J., and Sørmo, F. (2005a). Goals and kinds of explanations in case-based reasoning. In Althoff, K.-D., Dengel, A., Bergmann, R., Nick, M., and Roth-Berghofer, T., editors, WM 2005: Professional Knowledge Management, pages 264–268, Kaiserslautern, Germany. DFKI GmbH.

[Roth-Berghofer and Cassens, 2005] Roth-Berghofer, T. R. and Cassens, J. (2005). Mapping goals and kinds of explanations to the knowledge containers of case-based reasoning systems. In Muñoz-Avila, H. and Ricci, F., editors, Case-Based Reasoning Research and Developmen, pages 451–464, Heidelberg. Springer Verlag.

[Roth-Berghofer et al., 2005b] Roth-Berghofer, T. R., Schulz, S., and Woody, A., editors (2005b). Proceedings of the AAAI Fal l Symposium on Explanation-aware Computing ExaCt2005. AAAI Press. Technical Report FS-05-04.

2004

[Roth-Berghofer, 2004] Roth-Berghofer, T. R. (2004). Explanations and Case-Based Reasoning: Foundational issues. In Funk, P. and González-Calero, P. A., editors, Advances in Case-Based Reasoning, pages 389–403. Springer-Verlag.

[Memmel, Roth-Berghofer, 2004] Memmel, M. and Roth-Berghofer, Th. Explanation and e-learning: A first pass. In Klaus-Peter F¨ahnrich, Klaus P. Jantke, and Wolfgang S. Wittig, editors, Von e-Learning bis e-Payment. Das Internet als sicherer Marktplatz, pages 255–263. Akademische Verlagsgesellschaft Aka, 2004.

60Freitag, 11. September 2009

Page 61: Explanation Aware Design And Computing   2009 09 11

Invitation to participate

• Manifesto

• Mailing list

• Workshop series

• …

HTTP://ON-EXPLANATION.NET

61Freitag, 11. September 2009