Learning to attach semantic metadata to Web Services Andreas He, - - PowerPoint PPT Presentation

learning to attach semantic metadata to web services
SMART_READER_LITE
LIVE PREVIEW

Learning to attach semantic metadata to Web Services Andreas He, - - PowerPoint PPT Presentation

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services Andreas He, Nicholas Kushmerick University College Dublin, Ireland {andreas.hess,


slide-1
SLIDE 1

1 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services

Andreas Heß, Nicholas Kushmerick University College Dublin, Ireland {andreas.hess, nick}@ucd.ie

US Office of Naval Research Science Foundation Ireland

slide-2
SLIDE 2

2 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services

  • 1. Introduction
  • 2. Our Machine Learning Approach
  • 3. Classification Tasks

a) Domain & Datatype (Web Forms) b) Category (Web Services)

  • 4. Conclusion & Discussion
slide-3
SLIDE 3

3 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Web Services Web Services

  • Web Services
  • Web-accessible

computational entities

  • Loosely coupled
  • Just RPC? Web forms?
  • Data Integration?
slide-4
SLIDE 4

4 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Web Services Web Services

  • Tasks / Problems
  • Automatic Discovery
  • Automatic Composition
  • Automatic Invocation
slide-5
SLIDE 5

5 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Scenario Scenario

Congo Winding Stair Teatime

  • author
  • title
  • quantity
  • authName
  • bookT
  • ISBN
  • region
  • qlty
  • qty

? ?

slide-6
SLIDE 6

6 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Scenario Scenario

Congo Winding Stair Teatime

  • author
  • title
  • quantity
  • authName
  • bookT
  • ISBN
  • region
  • qlty
  • qty

Global Ontology

  • Item

➢ Quantity ➢ Price

  • Book

➢ Author ➢ Title ➢ ISBN

  • Tea

➢ Region ➢ Quality

slide-7
SLIDE 7

7 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Scenario Scenario

Congo Winding Stair Teatime

  • author
  • title
  • quantity
  • authName
  • bookT
  • ISBN
  • region
  • qlty
  • qty

Global Ontology

  • Item

➢ Quantity ➢ Price

  • Book

➢ Author ➢ Title ➢ ISBN

  • Tea

➢ Region ➢ Quality

Semantic Metadata e.g. DAML-S / OWL-S (handcrafted)

slide-8
SLIDE 8

8 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Scenario Scenario

Congo Winding Stair Teatime

  • author
  • title
  • quantity
  • authName
  • bookT
  • ISBN
  • region
  • qlty
  • qty

Global Ontology

  • Item

➢ Quantity ➢ Price

  • Book

➢ Author ➢ Title ➢ ISBN

  • Tea

➢ Region ➢ Quality

!

slide-9
SLIDE 9

9 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services

  • Assumes:
  • semantic annotation
  • a shared ontology
  • Semantic metadata needs to be handcrafted!!
  • Our contribution: Use machine learning!
slide-10
SLIDE 10

10 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services

✔ Introduction

  • 2. Our Machine Learning Approach
  • 3. Classification Tasks

a) Domain & Datatype (Web Forms) b) Category (Web Services)

  • 4. Conclusion & Discussion
slide-11
SLIDE 11

11 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Machine Learning Machine Learning

Global Ontology

  • Item

Quantity

Price

  • Book

Author

Title

ISBN

  • Tea

Region

Quality

Congo

  • author
  • title
  • quantity

Winding Stair Teatime

  • authName
  • bookT
  • ISBN
  • region
  • qlty
  • qty

Learning algorithm Training data Semantic Metadata (handcrafted!)

slide-12
SLIDE 12

12 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Machine Learning Machine Learning

Global Ontology

  • Item

Quantity

Price

  • Book

Author

Title

ISBN

  • Tea

Region

Quality

BookMaster

  • writer
  • bookName
  • librNumber ?

Learning algorithm

slide-13
SLIDE 13

13 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Machine Learning Machine Learning

Global Ontology

  • Item

Quantity

Price

  • Book

Author

Title

ISBN

  • Tea

Region

Quality

BookMaster

  • writer
  • bookName
  • librNumber

Learning algorithm Semantic Metadata (automatic)

slide-14
SLIDE 14

14 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Key Assumption Key Assumption

public int nbgfuibhuf(int nvzfdubzuf, int cnuzdc) { int vfddf = 0; for (int ujz = 0; ujz < nvzfdubzuf; ujz++) { vfddf += cnuzdc; } return vfddf; }

What does this function do?

slide-15
SLIDE 15

15 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Key Assumption Key Assumption

public int multiply(int factor1, int factor2) { int product = 0; for (int n = 0; n < factor1; n++) { product += factor2; } return product; }

What does this function do?

slide-16
SLIDE 16

16 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Key Assumption Key Assumption

/** * This function multiplies two numbers in a very * inefficent way. It serves only as an example. */ public int multiply(int factor1, int factor2) { int product = 0; for (int n = 0; n < factor1; n++) { product += factor2; } return product; }

What does this function do?

slide-17
SLIDE 17

17 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

A Text Classification Problem A Text Classification Problem

Web Service classification == Text classification

slide-18
SLIDE 18

18 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Definitions Definitions

Category

  • Broad description of

service as a whole

  • e.g. e-commerce,

weather, finance

  • Profile hierarchy

Domain

  • Purpose of single
  • peration
  • e.g. query price,

purchase book

  • Atomic process

Datatype

  • Meaning of single

parameter

  • e.g. author name,

credit card number

  • Property

?

slide-19
SLIDE 19

19 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services

✔ Introduction ✔ Our Machine Learning Approach

  • 3. Classification Tasks

a) Domain & Datatype (Web Forms) b) Category (Web Services)

  • 4. Conclusion & Discussion
slide-20
SLIDE 20

20 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Assumption Assumption

Dependencies between CategoryDomainDatatype

?

Books Category Query book price Domain Datatype Book title

slide-21
SLIDE 21

21 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Assumption Assumption

Dependencies between CategoryDomainDatatype

Tea Category Domain Datatype Order tea

Book title??

slide-22
SLIDE 22

22 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Assumption Assumption

Dependencies between CategoryDomainDatatype

Tea Category Domain Datatype Order tea

Credit card number

slide-23
SLIDE 23

23 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Bayesian Networks Bayesian Networks

  • Bayesian Networks
  • Nodes are random variables
  • Edges indicate conditional probabilites
  • Flow of evidence
slide-24
SLIDE 24

24 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Bayesian Networks Bayesian Networks domain datatype1 datatype2 datatype3 term1

1

Pr[title | BookTitle] = 0.39 Pr[title | DestAirport] = 0.02 Pr[city | BookTitle] = 0.01 Pr[city | DestAirport] = 0.47 ... ... ...

Pr[BookTitle | SEARCHBOOK] = 0.42

Pr[Airport | SEARCHBOOK] = 0.001 Pr[BookTitle | QUERYFLIGHT] = 0.001 Pr[Airport | QUERYFLIGHT] = 0.73 ... ... ...

term1

K

term2

1

term2

K

term3

1

term3

K

… … …

Pr[SEARCHBOOK] = 0.51

Pr[QUERYFLIGHT] = 0.28

Pr[FINDCOLLEGE] = 0.03

... ... ...

slide-25
SLIDE 25

25 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Flow of evidence Flow of evidence

Dependencies between CategoryDomainDatatype

Category Domain Datatype Book title

?

slide-26
SLIDE 26

26 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Flow of evidence Flow of evidence

Dependencies between CategoryDomainDatatype

?

Category Query book price Domain Datatype Book title

?

slide-27
SLIDE 27

27 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Flow of evidence Flow of evidence

Dependencies between CategoryDomainDatatype

?

Books Category Query book price Domain Datatype Book title

slide-28
SLIDE 28

28 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Web Forms Web Forms

domain datatype1 datatype2 datatype3

departure

station time calendar

arrival

station

slide-29
SLIDE 29

29 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Evaluation Evaluation

129 real Web forms 656 fields

Search Book (44) Find College (2) Search College Book (17) Query Flight (34) Find Job (28) Find Stock Quote (9)

6 domains (number of services in domain)

Book Details Book Edition Book Format Book Search Type Book Title Number of Children City Class College Subject Company Name Country Currency ... ... ... ... Ticker Symbol Time Time Return Time Period Travel Type US State ZIP

72 datataypes (illustrative sample)

slide-30
SLIDE 30

30 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Evaluation Evaluation

slide-31
SLIDE 31

31 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Web Forms? Web Forms?

  • Why forms? Not talking about services?
  • Fully annotated Web Services not available

at time of experiments

  • Web Services actually easier:

HTML parsing causes noise

  • Next experiment will show real Web Services!
slide-32
SLIDE 32

32 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services

✔ Introduction ✔ Our Machine Learning Approach

  • 3. Classification Tasks

✔ Domain & Datatype (Web Forms) b) Category (Web Services)

  • 4. Conclusion & Discussion
slide-33
SLIDE 33

33 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

A Text Classification Problem A Text Classification Problem

  • Text sources:

A) Service Description (plain text, e.g. from UDDI) B) WSDL: service, portType, operation C) WSDL: Input message D) WSDL: Output message

slide-34
SLIDE 34

34 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Ensemble Learning Ensemble Learning

  • Ensemble Learning
  • Each text source contains different words

(e.g. operation “buyBook”, message part “author”)

  • Using seperate learners is more accurate
slide-35
SLIDE 35

35 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Evaluation Evaluation

391 real Web Services 11 categories (number of services in category)

Business (22) Communication (44) Converter (43) Country Information (62) Developers (34) Finder (44) Games (9) Mathematics (10) Money (54) News (30) Web (39) discarded (33)

slide-36
SLIDE 36

36 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Evaluation Evaluation

WSDL only

slide-37
SLIDE 37

37 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Evaluation Evaluation

WSDL plus plain text descriptions (easier)

slide-38
SLIDE 38

38 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Clustering Clustering

  • Clustering
  • Unsupervised – no training data needed
  • Algorithm discovers meaningful groups of services
  • Evaluation
  • All clustering algorithms outperform baseline
  • See paper for details
slide-39
SLIDE 39

39 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Learning to attach semantic metadata to Web Services Learning to attach semantic metadata to Web Services

✔ Introduction ✔ Our Machine Learning Approach ✔ Classification Tasks

✔ Domain & Datatype (Web Forms) ✔ Category (Web Services)

  • 4. Conclusion & Discussion
slide-40
SLIDE 40

40 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Contribution Contribution

  • Summary
  • Bayesian inference algorithm for classifying forms
  • Ensemble learning for classifying Web Services
  • Clustering of Web Services
slide-41
SLIDE 41

41 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Open Issues & Limitations Open Issues & Limitations

  • Open issues
  • Larger Web Service corpus  training data
  • Predictions not good enough yet
  • Limitations: We do not handle...
  • Process Model
  • Compostion & Workflow
slide-42
SLIDE 42

42 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Current & Future Work Current & Future Work

slide-43
SLIDE 43

43 Andreas Heß, Nicholas Kushmerick: Learning to attach semantic metadata to Web Services

Discussion & Questions Discussion & Questions

  • We are gathering annotated Web Services
  • Contact us to use them, or to contribute:
  • (Partially) annotated Web Services in large numbers?
  • Global / Shared Profile Hierarchy?
  • Questions?