1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold...

34
1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University of New Brunswick, Canada 2 National Research Council of Canada MCS Defense September 28th, 2006

Transcript of 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold...

Page 1: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

1

Rule-based Social Networking for Expert Finding

Presented by: Jie Li1,2

Supervisors: Dr. Harold Boley1,2

Dr. Virendrakumar C. Bhavsar1

1University of New Brunswick, Canada2National Research Council of Canada

MCS DefenseSeptember 28th, 2006

Page 2: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

2

Contents1. Introduction & Background

Social Networking Rule Languages and Rule Engines

2. RuleML FOAF RuleML FOAF: Rules Extension of FOAF Vocabulary for Expert Finding Extension of FOAF Profiles for Rule-Based Social Networking

3. FindXpRT: A Profile-Based Expert Finder System The FindXpRT System FindXpRT Ruleset

4. Experiments Find an Expert via Direct Match Find an Expert with Referrals Execution Times

5. Conclusion

Page 3: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

3

Persons

Relationships

Determinable structure

An example

Social Networking

Page 4: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

4

Expert Finding

People in large organizations don't know all other members well, nor their expertise

Expert finder: provides services for finding an expert or an

expertise-developing project enables users to query for specific expertise

and provide them with ranked list of experts

Page 5: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

5

The Friend Of A Friend project (www.foaf-project.org)

Initiated in year 2000 by Dan Brickley and Libby Miller Semantic Web application Web-based social networking Describes people and their relationships Realized in RDF/XML Semantic Web vocabulary (ontology) Open to extensions for various applications Contains only facts

FOAF

Page 6: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

6

Rule Languages and Rule Engines RuleML: Rule Markup Language (

www.ruleml.org) Initially proposed in year 2000 XML-based language for Web rules allowing to

publish and share rulebases Evolving deductive family with current version 0.91 Object-Oriented RuleML (OO RuleML)

Natural extension to RuleML Includes “slot filler” sublanguage of RuleML POSL used as human-oriented syntax

Execution via rule engines such as OO jDREW Forward (bottom-up) Backward (top-down)

Page 7: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

7

OO jDREW: Object-Oriented Java Deductive Reasoning Engine for the Web (www.jdrew.org/oojdrew) jDREW was implemented initially to teach how to build

(pure) Prolog interpreters in Java has been under development as a reference implementation

of RuleML includes OO jDREW BU (Bottom Up) and

OO jDREW TD (Top Down)

Rule Languages and Rule Engines (contd)

Page 8: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

8

RuleML FOAF

Previous system ― RDF FOAF: Person-centric metadata facts only

Our contribution ― RuleML FOAF: Person-centric metadata rules added Enables XML-based

Rule Formalisation Rule Interchange Rule Execution

Can derive new FOAF facts

Page 9: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

9

RuleML FOAF: Rules

Make implicit properties and relationships explicit

Constitute person-centric metadata properties conditional on other persons, the time/place, …

\

phonePreference(Peter,office) :- time(9-12) OR time(13-17).

phonePreference(Peter,cell) :- time(12-13) OR time(17-18).

phonePreference(Peter,home) :- time(18-21).

phonePreference(Peter,voicemail) :- time(21-9).

Page 10: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

10

Extension of FOAF Vocabulary for Expert Finding

Original FOAF vocabulary Vocabulary of Classes: e.g., foaf:Person Vocabulary of Properties: e.g. foaf:knows

Extensions for expert finding applications Namespace specifies extensions

“foaf”: original FOAF vocabulary “sesdl”: RuleML FOAF extension based on SeSDL taxonomy (Scott

ish electronic Staff Development Library) “ex”: our own RuleML FOAF vocabulary specification

RuleML FOAF vocabulary is categorized into: fact vocabulary rule-conclusion vocabulary

Page 11: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

11

Extension of FOAF Profiles for Rule-Based Social Networking

foaf.person(Peter[ … ex.expertise->Category[ foaf.name->AI[ ex.rating->4.5; foaf.name->

Publications[ ex.amount->10]; ex.workDuration->3]]; … foaf.knows->Person[ foaf.name->Eric; foaf.name->Gloria]]).

P e te r

G r o up

be s tG r o up

pe te r @ be s t .c o mTe l

c e l l

0 5 2 3

exp

erti

se

C ate g o r y

AI

nam e

4 .5 P ubl i c at i o ns

nam

eam o unt

1 0

P e r s o n

G l o r i aE r i c

3

F r e dr i c to n

‘.’ is used for implementation instead of the symbol ‘:’ to express namespaces, because ‘:’ is reserved in OO jDREW

Page 12: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

12

Extension of FOAF Profiles for Rule-Based Social Networking (contd) (rule-1)expertise(?Person,?Area) :-

rating(?Person,?Area,?Score),greaterThanOrEqual(?Score,4),workDuration(?Person,?Area,?Year),greaterThanOrEqual(?Year,2).

(rule-2)expertise(?Person,?Area) :-

publication(?Person,?Area,?Amount),greaterThanOrEqual(?Amount,3).

(rule-3)expertise(?Person,?Area) :-

recordedCDs(?Person,?Area,?Amount),greaterThanOrEqual(?Amount,6).

(fact-0) * Only Stored *expertise(Bill,AI).

(fact-1) * Stored & Derivable *expertise(Peter,AI). (fact-2) * Given Facts *rating(Peter,AI,5). (fact-3) * Given Facts *workDuration(Peter, AI, 2).

(fact-4) * Given Facts *recordedCDs(Lucy,Pop,6). (fact-5) * Newly Derived*expertise(Lucy,Pop).

Page 13: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

13

FindXpRT: An Expert Finder System(Find an eXpert via Rules and Taxonomies)

A profile-based RuleML FOAF expert finder: uses person-centric metadata

Taxonomy of Computer Science from the 1998 ACM Classification

Makes taxonomic similarity applicable in match-making based on the algorithm of Teclantic.ca

Enables querying specific expertise Finds an appropriate expert with relevant expertise,

through match-making If none can be found, provides ‘proxy’ referrals Supports collaboration between people

Page 14: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

14

When a user queries FindXpRT, the system works as follows:

The FindXpRT System

Page 15: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

15

? E := ? P? R := ? R -0 .5

s tar t

Fai lN

n otEqu al (? C , ? E)

g r ou p(? C , ? Gr ou p),g r ou p(? E, ? Gr ou p)

Y

Y

c ol labor ate In (? C , ? P r oje c t1 ),c ol labor ate In (? E, ? P r oje c t1 )

N

c ol labor ate s (? C , ? E)

c ol labor ate d(? C , ? E)

Y

P r oc e s s as Global Expe r t Fin din g

N

Y

Fin dX pR T(? C , ? E, ? EX , ? R )

pr oje c tS tatu s (? P r oje c t1 , in P r og r e s s )

offe r s Expe r ti s e (? E, ? EX ),s e e k s Expe r ti s e (? C , ? C Y),

taxon om ic S im i lar i ty(? X , ? Y)>=? T

N

Y

Y

N

k n ows (? E, ? P ),? R > 3 .5

Ne n d

? C -- th e C oExpe r t ? E -- th e Expe r t

? EX , ? C Y, ? C X -- e xpe r ti s e? T -- Th r e s h old

? R -- R atin g th r e s h oldde g r e e =6

Y

Y

N

N

N

e xpe r ti s e (? E, ? X ),r atin g (? E, ? S c or e ),

? S c or e >R

(de g r e e --)>0

N af(bu s yW ith (? E, ? P r oje c t2 )),C ol labor ation D e c is ion (? C , ? E, ? C X ) = 'A c c e pt'

FindXpRT Flowchart:Rule system for expert finding

Page 16: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

16

CollaborationDecision Flowchart :Rule subsystem for decision making on collaboration

wo rk D u ra t io n (? C , ? Y e a r) ,? Y e a r > 2 .0

Y

k n o ws (Pe te r , ? C )Y

e m a ilA ddre s s (? C , ? Em a il) ,e m a il(Pe te r , ? Em a il)

N

ph o n e Pre fe re n ce (? C , ? Te l2 ) ,ca ll(Pe te r, ? Te l2 )

N

A cce pt th e re qu e s t

Y

Y

Y

N

? X - - e x pe rt is e? C - - ? C o Ex pe rt

S ta rt

Ph o n e Pre fe re n ce (Pe te r , ? Te l1 ) ,ca ll(? C , ? Te l1 )

D e clin e th e re qu e s t

En d

N

. . .

. . .

. . .

. . .

N

Page 17: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

17

(POSL-1) collaborationMode(F2F, ?Date, ?Distance) :-

workDay(?Date),lessThan(?Distance, 20).

(POSL-2) collaborationMode(Tel, ?Date, ?Distance) :-

workDay(?Date),greaterThanOrEqual(?Distance, 20).

(POSL-3)collaborationMode(Web, ?Date, ?Distance) :-

naf(workDay(?Date)).

collaborationMode Ruleset:Rules for specifying the collaboration mode

Page 18: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

18

<Assert><And mapClosure="universal">

<Implies> <And> <Atom>

<Rel>workDay</Rel><Var>Date</Var>

</Atom> <Atom>

<Rel>lessThan</Rel><Var>Distance</Var><Ind>20</Ind>

</Atom> </And> <Atom> <Rel>collaborationMode</Rel> <Ind>F2F</Ind> <Var>Date</Var> <Var>Distance</Var> </Atom></Implies>

</And></Assert>

RuleML Serializationof the Rule (POSL-1)

Page 19: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

19

FindXpRT Ruleset:Direct Match

% According to the criteria of both experts, find the most appropriate match, via possible referrals.

?CoExpert: the secondary expert, here the music expert ?Expert: the primary expert, here the Computer Science expert ?ReferredExpert: the referred primary expert, here the Computer Science expert ?CoExpertise: the expertise offered by the ?CoExpert ?Expertise: the expertise offered by the ?Expert ?RatingThreshold: the initial rating threshold ?UltimateRating: the rating of the ultimately referred-to expert ?Degree: the counter for controlling referral rounds

FindXpRT(?CoExpert,?Expert,?Expert, ?CoExpertise,?Expertise,?UltimateRating,?UltimateRating, ?Degree) :-

getRating(?RatingAgent, ?Expert, ?ExpertRating),greaterThanOrEqual(?ExpertRating, ?UltimateRating),satisfiedExpert(?CoExpert, ?Expert, ?Expertise),naf(busyWith(?Expert, ?Project)),CollaborationDecision(?Expert, ?CoExpert, ?CoExpertise).

Page 20: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

20

FindXpRT(?CoExpert,?Expert,?ReferredExpert, ?CoExpertise,?Expertise,?RatingThreshold,?UltimateRating,?Degree) :-

getRating(?RatingAgent, ?Expert, ?ExpertRating),add(?RatingTmp, ?RatingThreshold, 0.5:Real),lessThan(?ExpertRating, ?RatingTmp),greaterThanOrEqual(?CoExpertRating, ?RatingThreshold),satisfiedExpert(?CoExpert, ?Expert, ?Expertise),busyWith(?Expert, ?Project),% cannot do it, but:knows(?Expert, ?ReferredExpert),greaterThan(?Degree, 0:Integer),greaterThan(?RatingThreshold, 3.5:Real),subtract(?DegreeNew, ?Degree, 1:Integer),subtract(?RatingNew, ?RatingThreshold, 0.5:Real),FindXpRT(?CoExpert,?Expert,?ReferredExpert,

?CoExpertise,?Expertise, ?RatingNew, ?UltimateRating, ?DegreeNew).

FindXpRT Ruleset: Referral ― when the expert is busy

Page 21: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

21

FindXpRT Ruleset: Referral ― when the expert has declined

FindXpRT(?CoExpert,?Expert,?ReferredExpert, ?CoExpertise,?Expertise,?RatingThreshold,?UltimateRating,?Degree) :-

getRating(?RatingAgent, ?Expert, ?ExpertRating),add(?RatingTmp, ?RatingThreshold, 0.5:Real),lessThan(?ExpertRating, ?RatingTmp),greaterThanOrEqual(?CoExpertRating, ?RatingThreshold),satisfiedExpert(?CoExpert, ?Expert, ?Expertise),naf(CollaborationDecision(?Expert, ?CoExpert, ?CoExpertise)),% cannot do it, but:knows(?Expert, ?ReferredExpert),greaterThan(?Degree, 0:Integer),greaterThan(?Rating, 3.5:Real),subtract(?DegreeNew, ?Degree, 1:Integer),subtract(?RatingNew, ?Rating, 0.5:Real),FindXpRT(?CoExpert,?Expert,?ReferredExpert,

?CoExpertise,?Expertise, ?RatingNew, ?UltimateRating, ?DegreeNew).

Page 22: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

22

FindXpRT Benchmark

Proposed Benchmark for Computer Science (Expert) and Music (CoExpert)  Profiles

Consists of a suite for testing expert-finding systems against various subsets of 10 characteristic expert profiles

Used to compare execution times of different profiles, as well as queries

Page 23: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

23

Find an Expert via Direct Match

Offers Expertise: Pop MusicSeeks Expertise: Logic ProgrammingRating Threshold: 4.5Degree Threshold: 0 … … … … … …

FindXpRT(Lucy, ?CSXpRT, ?ReferredXpRT, PopMusic, LogicProgramming, 4.5:Real, ?RatingSought, 0:Intege

r)

Lucy

Offers Expertise: Logic ProgrammingSeeks Expertise: Pop MusicOverall Rating : 4.5 … … … … … …

Peter

Page 24: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

24

Page 25: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

25

Find an Expert with Referrals

Offers Expertise: Pop MusicSeeks Expertise: Logic ProgrammingRating Threshold: 4.5Degree Threshold: 0 … … … … … …

Lucy

Offers Expertise: Logic ProgrammingSeeks Expertise: Pop MusicOverall Rating: 4.5Status: Busy … … … … … …

Julia

FindXpRT(Lucy, ?CSXpRT, ?ReferredXpRT, PopMusic, LogicProgramming, 4.5:Real, ?RatingSought, 1:Integer)

Offers Expertise: Logic ProgrammingSeeks Expertise: Pop MusicOverall Rating: 4.0 … … … … … …

Hart foaf:knows

Page 26: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

26

Page 27: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

27

Execution Times

Table 1: Experiments on Direct Match, with Number of Matched Profiles Fixed

Page 28: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

28

Table 2: Experiments on up to 1 Round of Referral, with Number of Matched Profiles Fixed

Page 29: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

29

Table 3: Experiments on up to 2 Rounds of Referrals, with Number of Matched Profile Varied

Page 30: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

30

FindXpRT Benchmark Execution Times

It appears that the execution times increase linearly with the number of profiles

The execution has a (clearly) superlinear growth in the number of referral rounds (no I/O modes: search needed)

The efficiency could be improved by introducing mode declarations in POSL / OO RuleML and in the OO jDREW implementation, to reflect the intended FindXpRT dataflow

Changing the parameter(s) in queries from variables to constant(s) decreases the execution times

The execution times can also be decreased if Naf is replaced with ‘negative’ relations

Because many rules are packaged as person-centric modules, for these, search can be localised

Page 31: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

31

Conclusion: Contributions General methodology for rule-augmented FOAF

elaborated with RuleML FOAF Expert Finding Use Case: Proposed rule application

to FOAF community Extended factual FOAF vocabulary with properties

defined via RuleML rules Rule engine OO jDREW employed to run FOAF rules

Bottom-up execution: all the newly derived facts as required for the Fact Normal Form (FNF)

Top-down execution: enables users to query specific information on demand, as called for by the Rule Normal Form (RNF)

Page 32: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

32

Conclusion: Contributions (contd)

Implemented FindXpRT, our prototypical system for expert finding

Proposed expert finding benchmark in the domains of Computer Science and music

Tested the FindXpRT system in OO jDREW to compute results for expert finding

Analyzed factors that affect the execution times

Page 33: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

33

Future Work

Coupling of taxonomic expertise matching with similarity matching, cf. Teclantic.ca

"Stress testing" of FindXpRT on a large number of synthetic expert profiles to further evaluate FindXpRT system

Parallel processing of match-making in a distributed system to improve efficiency of FindXpRT

Make FindXpRT available to real-world experts A joint initiative, ExpertFinder, on extending the FOAF v

ocabulary for expert finding, has been founded in July, 2006 (http://rdfweb.org/topic/ExpertFinder),partially based on our work

Page 34: 1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.

34