Range Similarity Measures between Buyers and Sellers in
Range Similarity Measures between Buyers and Sellers in e-Marketplaces Lu Yang, Biplab Sarker, Virendrakumar C. Bhavsar and Harold Boley bhavsar@unb. ca Faculty of Computer Science University of New Brunswick (UNB) Fredericton, Canada IICAI, December 20, 2005 1
Agenda • Motivation • Partonomy Tree Similarity Algorithm • Tree representation • Partonomy similarity • Non-semantic matching on nodes • Semantic Matching • Inner nodes vs. leaf nodes • Global similarity measure (for inner nodes) • Taxonomic class similarity • Encoding subtaxonomies into partonomy trees • Local similarity measures (for leaf nodes) • Conclusion 2
Motivation Main Server Agents User Info User Profiles … User Agents … … User Web Browser To other sites (network) e-Market … Matcher 1 Matchern • e-business, e-learning … • Buyer-Seller matching • Metadata for buyers and sellers • Keywords/keyphrases • Tree similarity 3
Partonomy Tree Similarity Algorithm ─ Tree Representation • Tree representation for product/service descriptions [Bhavsar et al. 2004] • Characteristics of our trees • Node-labled, arc-labled and arc-weighted • Sibling arcs are labled in lexicographical order • Sibling arc weights sum to 1. 0 A simple example “Car” tree: Car Year Color 0. 3 Make 0. 5 0. 2 Black Ford 2002 4
Partonomy Tree Similarity Algorithm ─ Similarity Algorithm • Partonomy similarity [Bhavsar et al. 2004] Fragments of learning object trees [Boley et al. 2005] for learning object matching (http: //www. cs. unb. ca/agentmatcher) t t´ lom educational 0. 3334 edu-set general 0. 3333 gen-set language title en 0. 5 general technical format 0. 5 technical 0. 7 0. 3333 tec-set platform lom gen-set language title format en Introduction HTML Win. XP to Oracle 0. 2 0. 8 Basic Oracle tec-set platform 0. 1 0. 9 * Win. XP * : Don’t Care (si (wi + w'i)/2) A(si) ≥ si (A(si)(wi + w'i)/2) 5
Partonomy Tree Similarity Algorithm ─ Non-Semantic Matching • Non-semantic matching on both inner and leaf nodes • Exact string matching binary result 0. 0 or 1. 0 • Permutation of strings “Java Programming” vs “Programming in Java” Number of identical words Maximum length of the two strings Example 1: For two node labels “a b c” and “a b d e”, their similarity is: 2 4 = 0. 5 6
Partonomy Tree Similarity Algorithm ─ Non-Semantic Matching Example 2: Node labels “electric chair” and “committee chair” 1 2 = 0. 5 meaningful? • Semantic matching techniques are needed for the above problems 7
Semantic Matching • Inner nodes vs. leaf nodes • Inner nodes — class-oriented • Inner node labels can be classes • Classes are located in a taxonomy tree • Taxonomic class similarity measure (global similarity measure) • Leaf nodes — type-oriented • Address, currency, date, price and so on • Type similarity measures (local similarity measures) 8
Semantic Matching (Cont'd) Non-Semantic Matching Exact String Matching (both inner and leaf nodes) String Permutation (both inner and leaf nodes) Semantic Matching Taxonomic Class Similarity (inner nodes) Type Similarity (leaf nodes) 9
Semantic Matching ─ Global Similarity • Global similarity measure (for inner nodes) [Yang et al. 2005] Distributed Programming Tuition Credit 0. 2 Duration Textbook 0. 4 0. 1 0. 3 2 months “Introduction $800 3 to Distributed Programming” Object-Oriented Programming Tuition Credit 0. 1 Duration Textbook 0. 2 0. 5 0. 2 $1000 3 months “Objected-Oriented 3 Programming Essentials” t 1 t 2 partonomy trees 10
Semantic Matching ─ A Taxonomy Tree • The taxonomy tree of “Programming Techniques” according to the ACM Computing Classification System (http: //www. acm. org/class/1998/ccs 98. txt) Programming Techniques 0. 6 0. 7 Object-Oriented 0. 9 0. 8 0. 5 Programming 0. 5 General Concurrent Programming Sequential Automatic 0. 7 Applicative 0. 5 Programming Parallel Distributed Programming 11
Semantic Matching ─ Taxonomic Class Similarity • The arc weights can be determined by human experts or machine learning algorithms [Singh 2005] • Sibling arc weights do not need to add up to 1 • Three factors that affect the taxonomic class similarity • The shortest path length between two classes • Arc weights on the shortest path • Level difference of two classes 12
Semantic Matching ─ Taxonomic Class Similarity • Taxonomic class similarity computation [Yang et al. 2005] where TS(c 1, c 2) is the taxonomic class similarity of classes c 1 and c 2 Ns: the number of edges of the shortest path Nt: the number of edges of the whole tree M: the product of the arc weights on the shortest path : the level difference factor where G’s value is in (0. 0, 1. 0) and is the absolute difference of the depths of classes c 1 and c 2 (We assume G=0. 5 here) 13
Semantic Matching ─ Taxonomic Class Similarity Example Programming Techniques 0. 6 General 0. 8 0. 5 Applicative Automatic 0. 7 Programming 0. 9 0. 7 Object-Oriented Programming Concurrent Programming Sequential 0. 5 Programming Parallel Distributed Programming • red arrows stop at their nearest common ancestor 14
Semantic Matching ─ Encoding Subtaxonomies • Encoding subtaxonomy trees into partonomy trees • A converse task Computes the similarity of pairs of taxonomies e. g. subtaxonomies of the background taxonomy, as required in our Teclantic project (http: //teclantic. cs. unb. ca) • Allows the direct reuse of our partonomy similarity algorithm and permits weighted (or ‘fuzzy’) taxonomic subsumption with no added effort 15
Semantic Matching ─ Encoding Subtaxonomies Background Taxonomy tree of “Programming Techniques” for encoding Programming Techniques Applicative Concurrent Object-Oriented Programming Automatic 0. 15 Programming General 0. 3 0. 2 * * * Distributed Parallel Programming 0. 4 0. 6 * Sequential Programming 0. 15 * * • Sibling arc weights must sum up to 1. 0 • Classes are represented as arc labels (lexicographical ordered) • All node labels except the root node label are changed into “Don’t Care” 16
Semantic Matching ─ Encoding Subtaxonomies Two course trees with encoded subtaxonomy trees course Classification Tuition Duration Title 0. 05 0. 65 Credit 0. 15 0. 1 taxonomy $800 0. 05 2 months 3 Programming 1. 0 Techniques * Sequential Concurrent Programming 0. 3 0. 7 * * Parallel Distributed Programming 0. 4 0. 6 * Distributed Programming Classification Tuition Duration 0. 65 Title 0. 05 Credit 0. 05 taxonomy $1000 0. 2 3 months 3 Programming 1. 0 Techniques * Sequential Object-Oriented Programming 0. 2 0. 8 * * Object-Oriented Programming * • Weight assignment in the "Classification" branch (two options) • By human expert • By machine learning • Normalizes corresponding weights in the background taxonomy 17
Semantic Matching ─ Local Similarity • Local similarity measures (for leaf nodes) Special-purpose similarity measures for various data types realizing semantics to be invoked when computing similarity of any two of their instances • “Price” type • “Date” type [Yang et al. 2005] • . . . 18
Semantic Matching ─ Price Matching • Price is the omnipresent factor that determines buyers’ and sellers’ decision-making • Price similarity seems to be asymmetric for buyers and sellers e. g. buyer asks $800 and seller asks $1000 — Unsuccessful buyer asks $1000 and seller asks $800 — Successful The similarity of $800 and $1000 is different for the above cases 19
Semantic Matching ─ Price Matching • Transform the asymmetry to symmetry • Buyers and sellers always have price ranges in their minds [Bpref, Bmax] and [Smin, Spref] Bpref : buyer’s preferred price Bmax : buyer’s maximum acceptable price Smin : seller’s minimum acceptable price Spref : seller’s preferred price • Our price-range similarity measure is based on the intuition that the greater the overlap between the buyer’s and seller’s price ranges, the higher is their similarity value 20
Semantic Matching ─ Price Matching Algorithm • Pseudo code of the price-range similarity algorithm Price. Range. Sim ([Bpref, Bmax], [Smin, Spref]) Begin If Spref <= Bpref similarity = 1. 0 else if Bmax < Smin similarity = 0. 0 else if Bmax = Smin similarity = else { MIN = min{MIN, Smin} MAX = max{MAX, Bmax} similarity = } return similarity End. • This algorithm can be easily adapted to the “price”-typed attributes e. g. “salary range” in job seeking and recruiting e-Market 21
Semantic Matching ─ Date Matching • “Date”-typed leaf node similarity measure { if | d 1 – d 2 | ≥ 365 0. 0 DS(d 1, d 2) = 1– | d 1 – d 2 | 365 otherwise where DS(d 1, d 2) is the date similarity of two dates d 1 and d 2 Project start_date 0. 5 end_date 0. 5 Nov 3, 2004 May 3, 2004 t 1 start_date 0. 5 0. 74 end_date 0. 5 Jan 20, 2004 Feb 18, 2005 t 2 22
Conclusion • Weighted trees for product/service descriptions • Partonomy tree similarity algorithm • Synchronously traverses trees top-down • Aggregates intermediate similarity values bottom-up • Semantic Global and Local Matching • Taxonomic Class Similarity • Encoding Subtaxonomies into Partonomies • Leaf-Node Type Similarity Measures • Future Work • Improvement of Taxonomic Class Similarity • Generalization of Local Similarity Measures 23
References [1] Yang, L. , Ball, M. , Bhavsar, V. C. , and Boley, H. Weighted Partonomy. Taxonomy Trees with Local Similarity Measures for Semantic Buyer-Seller Match. Making, Journal of Business and Technology (to appear). [2] Boley, H. , Bhavsar, V. C. , Hirtle, D. , Singh, A. , Sun, Z. , and Yang, L. A Match. Making System for Learners and Learning Objects. International Journal of Interactive Technology and Smart Education, August, 2005, 2(3): 171 -178. [3] Bhavsar, V. C. , Boley, H. , and Yang, L. A Weighted-Tree Similarity Algorithm for Multi-Agent Systems in e-Business Environments. Computational Intelligence, 2004, 20(4): 584 -602. [4] Singh, A. , LOMGen. IE: A Weighted Tree Metadata Extraction Tool, Master Thesis, Faculty of Computer Science, University of New Brunswick, Fredericton, Canada, September 2005. 24
Thank you ! 25
Seller Weights • Advertisements on TV, Internet, and in newspaper Sellers always emphasize specific product/service attributes to attract buyers • Our match-making system is buyer-seller-centric Sellers also seek buyers having close preferences 26
Seller Weights (Cont’d) • Suppose sellers do not have weights buyer tree seller tree Car Year Color 0. 1 Car Make 0. 8 0. 0 Ford Make 0. 0 0. 1 White Year Color 2002 Red Ford 2002 Similarity=1/2(0. 1+0. 0)1. 0 // for “Make” +1/2(0. 8+0. 0)1. 0 // for “Year” = 0. 45 27
Seller Weights (Cont’d) • Suppose sellers have identical weights buyer tree 0. 7834 Car Color 0. 1 White Make 0. 1 Ford seller tree Year 0. 8 2002 Car Color 0. 3333 Red Year 0. 3334 Make 0. 3333 Ford 2002 28
Seller Weights • Sellers have arbitrary weights (Cont’d) 0. 925 buyer tree Car Color 0. 1 Make 0. 1 Year 0. 8 Ford White 2002 seller tree 1 Car Color 0. 05 2002 0. 65 seller tree 2 seller tree 3 Car Color 0. 2 Red Ford Red 0. 85 Make 0. 05 Year 0. 9 Make 0. 2 Ford Year 0. 6 2002 Color 0. 6 Red Make 0. 1 Ford Year 0. 3 2002 • All the seller trees above are identical except the arc weights • The buyer prefers to negotiate with seller 1 because they have closer preferences on the car attributes 29
Seller Weights (Cont’d) • Sellers can always select the averaged weights if they do not want to emphasize any attributes of their products/services • Using seller weights, both buyers and sellers can find the most promising trading partners • The negotiation space is decreased 30
Publications [1] Lu Yang, Marcel Ball, Virendrakumar C. Bhavsar, and Harold Boley, "Weighted Partonomy-Taxonomy Trees with Local Similarity Measures for Semantic Buyer-Seller Match-Making", Journal of Business and Technology (to appear). [2] Harold Boley, Virendrakumar C. Bhavsar, David Hirtle, Anurag Singh, Zhongwei Sun, and Lu Yang, "A Match-Making System for Learners and Learning Objects", International Journal of Interactive Technology and Smart Education, August, 2005, 2(3): 171 -178. [3] Jing Jin, Biplab K. Sarker, Virendrakumar C. Bhavsar, Harold Boley, and Lu Yang, "Towards a Weighted-Tree Similarity Algorithm for RNA Secondary Structure Comparison", In Proceedings of the 8 th International Conference on High Performance Computing in Asia Pacific Region, IEEE Computer Society, December 2005. [4] Lu Yang, Marcel Ball, Virendrakumar C. Bhavsar, and Harold Boley, "Weighted Partonomy-Taxonomy Trees with Local Similarity Measures for Semantic Buyer-Seller Match-Making", In Proceedings of Workshop of Business Agents and the Semantic Web (BASe. WEB'05), May 8, 2005, Victoria, British Columbia, Canada. [5] Lu Yang, Biplab K. Sarker, Virendrakumar C. Bhavsar, and Harold Boley, "A Weighted-Tree Simplicity Algorithm for Similarity Matching of Partial Product Descriptions", In Proceedings of ISCA 14 th International Conference on Intelligent and Adaptive Systems and Software Engineering, Toronto 2005, pp. 55 -60. [6] Virendrakumar C. Bhavsar, Harold Boley, and Lu Yang, "A Weighted-Tree Similarity Algorithm for Multi-Agent Systems in e-Business Environments", Computational Intelligence, 2004, 20(4), pp. 584 -602. [7] Riyanarto Sarno, Lu Yang, Virendrakumar C. Bhavsar, and Harold Boley, "The Agent. Matcher Architecture Applied to Power Grid Transactions", In Proceedings of the First International Workshop on Knowledge Grid and Grid Intelligence, Halifax, 2003, pp. 92 -99. [8] Virendrakumar C. Bhavsar, Harold Boley, and Lu Yang, "A Weighted-Tree Similarity Algorithm for Multi-Agent Systems in e-Business Environments", In Proceedings of 2003 Business Agents and the Semantic Web (BASe. WEB'03) Workshop, Halifax, Canada, June 14, 2003. 31
- Slides: 31