Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 16: Flat Clustering 1.

Slides:



Advertisements
Similar presentations
Lecture 15(Ch16): Clustering
Advertisements

Albert Gatt Corpora and Statistical Methods Lecture 13.
PARTITIONAL CLUSTERING
Clustering Paolo Ferragina Dipartimento di Informatica Università di Pisa This is a mix of slides taken from several presentations, plus my touch !
CSCI 5417 Information Retrieval Systems Jim Martin Lecture 16 10/18/2011.
Hinrich Schütze and Christina Lioma
Unsupervised learning
K nearest neighbor and Rocchio algorithm
CS347 Lecture 8 May 7, 2001 ©Prabhakar Raghavan. Today’s topic Clustering documents.
Clustering… in General In vector space, clusters are vectors found within  of a cluster vector, with different techniques for determining the cluster.
1 Learning to Detect Objects in Images via a Sparse, Part-Based Representation S. Agarwal, A. Awan and D. Roth IEEE Transactions on Pattern Analysis and.
CS728 Web Clustering II Lecture 14. K-Means Assumes documents are real-valued vectors. Clusters based on centroids (aka the center of gravity or mean)
1 Text Clustering. 2 Clustering Partition unlabeled examples into disjoint subsets of clusters, such that: –Examples within a cluster are very similar.
Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 16: Flat Clustering 1.
CS276A Text Retrieval and Mining Lecture 13 [Borrows slides from Ray Mooney and Soumen Chakrabarti]
Introduction to Information Retrieval Introduction to Information Retrieval Lecture 17: Hierarchical Clustering 1.
Semi-Supervised Clustering Jieping Ye Department of Computer Science and Engineering Arizona State University
KNN, LVQ, SOM. Instance Based Learning K-Nearest Neighbor Algorithm (LVQ) Learning Vector Quantization (SOM) Self Organizing Maps.
What is Cluster Analysis?
Advanced Multimedia Text Clustering Tamara Berg. Reminder - Classification Given some labeled training documents Determine the best label for a test (query)
K-means Clustering. What is clustering? Why would we want to cluster? How would you determine clusters? How can you do this efficiently?
Unsupervised Learning: Clustering 1 Lecture 16: Clustering Web Search and Mining.
“A Comparison of Document Clustering Techniques” Michael Steinbach, George Karypis and Vipin Kumar (Technical Report, CSE, UMN, 2000) Mahashweta Das
Clustering Unsupervised learning Generating “classes”
Unsupervised Learning. CS583, Bing Liu, UIC 2 Supervised learning vs. unsupervised learning Supervised learning: discover patterns in the data that relate.
Processing of large document collections Part 2 (Text categorization) Helena Ahonen-Myka Spring 2006.
Text Clustering.
Clustering Supervised vs. Unsupervised Learning Examples of clustering in Web IR Characteristics of clustering Clustering algorithms Cluster Labeling 1.
tch?v=Y6ljFaKRTrI Fireflies.
Introduction to Information Retrieval Introduction to Information Retrieval CS276: Information Retrieval and Web Search Pandu Nayak and Prabhakar Raghavan.
ITCS 6265 Information Retrieval & Web Mining Lecture 15 Clustering.
Basic Machine Learning: Clustering CS 315 – Web Search and Data Mining 1.
1 Motivation Web query is usually two or three words long. –Prone to ambiguity –Example “keyboard” –Input device of computer –Musical instruments How can.
Introduction to Information Retrieval Introduction to Information Retrieval Modified from Stanford CS276 slides Chap. 16: Clustering.
UNSUPERVISED LEARNING David Kauchak CS 451 – Fall 2013.
Information Retrieval Lecture 6 Introduction to Information Retrieval (Manning et al. 2007) Chapter 16 For the MSc Computer Science Programme Dell Zhang.
Hinrich Schütze and Christina Lioma Lecture 16: Flat Clustering
Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 16: Flat Clustering 1.
Clustering Clustering is a technique for finding similarity groups in data, called clusters. I.e., it groups data instances that are similar to (near)
Information Retrieval and Organisation Chapter 16 Flat Clustering Dell Zhang Birkbeck, University of London.
CS 8751 ML & KDDData Clustering1 Clustering Unsupervised learning Generating “classes” Distance/similarity measures Agglomerative methods Divisive methods.
Clustering. What is Clustering? Clustering: the process of grouping a set of objects into classes of similar objects –Documents within a cluster should.
Clustering Instructor: Max Welling ICS 178 Machine Learning & Data Mining.
V. Clustering 인공지능 연구실 이승희 Text: Text mining Page:82-93.
Machine Learning Queens College Lecture 7: Clustering.
CSCI 5417 Information Retrieval Systems Jim Martin Lecture 15 10/13/2011.
Clustering (Modified from Stanford CS276 Slides - Lecture 17 Clustering)
Today’s Topic: Clustering  Document clustering Motivations Document representations Success criteria  Clustering algorithms Partitional Hierarchical.
Compiled By: Raj Gaurang Tiwari Assistant Professor SRMGPC, Lucknow Unsupervised Learning.
Flat clustering approaches
Lecture 12: Clustering May 5, Clustering (Ch 16 and 17)  Document clustering  Motivations  Document representations  Success criteria  Clustering.
Text Clustering Hongning Wang
Basic Machine Learning: Clustering CS 315 – Web Search and Data Mining 1.
1 CS 391L: Machine Learning Clustering Raymond J. Mooney University of Texas at Austin.
1 Machine Learning Lecture 9: Clustering Moshe Koppel Slides adapted from Raymond J. Mooney.
1 Learning Bias & Clustering Louis Oliphant CS based on slides by Burr H. Settles.
Introduction to Information Retrieval Introduction to Information Retrieval Clustering Chris Manning, Pandu Nayak, and Prabhakar Raghavan.
Introduction to Data Mining Clustering & Classification Reference: Tan et al: Introduction to data mining. Some slides are adopted from Tan et al.
Introduction to Information Retrieval Introduction to Information Retrieval CS276: Information Retrieval and Web Search Christopher Manning and Prabhakar.
Introduction to Information Retrieval Introduction to Information Retrieval CS276: Information Retrieval and Web Search Christopher Manning and Prabhakar.
Prof. Paolo Ferragina, Algoritmi per "Information Retrieval"
Sampath Jayarathna Cal Poly Pomona
Semi-Supervised Clustering
Data Mining K-means Algorithm
Information Organization: Clustering
本投影片修改自Introduction to Information Retrieval一書之投影片 Ch 16 & 17
Machine Learning on Data Lecture 9b- Clustering
Text Categorization Berlin Chen 2003 Reference:
INFORMATION RETRIEVAL TECHNIQUES BY DR. ADNAN ABID
Presentation transcript:

Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 16: Flat Clustering 1

Introduction to Information Retrieval Overview ❶ Recap ❷ Clustering: Introduction ❸ Clustering in IR ❹ K-means ❺ Evaluation ❻ How many clusters? 2

Introduction to Information Retrieval Outline ❶ Recap ❷ Clustering: Introduction ❸ Clustering in IR ❹ K-means ❺ Evaluation ❻ How many clusters? 3

Introduction to Information Retrieval 4 MI example for poultry/ EXPORT in Reuters 4

Introduction to Information Retrieval 5 Linear classifiers  Linear classifiers compute a linear combination or weighted sum of the feature values.  Classification decision:  Geometrically, the equation defines a line (2D), a plane (3D) or a hyperplane (higher dimensionalities).  Assumption: The classes are linearly separable.  Methods for finding a linear separator: Perceptron, Rocchio, Naive Bayes, linear support vector machines, many others 5

Introduction to Information Retrieval 6 A linear classifier in 1D  A linear classifier in 1D is a point described by the equation w 1 d 1 = θ  The point at θ/w 1  Points (d 1 ) with w 1 d 1 ≥ are in the class c.  Points (d 1 ) with w 1 d 1 < θ are in the complement class 6

Introduction to Information Retrieval 7 A linear classifier in 2D  A linear classifier in 2D is a line described by the equation w 1 d 1 +w 2 d 2 = θ  Example for a 2D linear classifier  Points (d 1 d 2 ) with w 1 d 1 + w 2 d 2 ≥ θ are in the class c.  Points (d 1 d 2 ) with w 1 d 1 + w 2 d 2 < θ are in the complement class 7

Introduction to Information Retrieval 8 A linear classifier in 3D  A linear classifier in 3D is a plane described by the equation w 1 d 1 + w 2 d 2 + w 3 d 3 = θ  Example for a 3D linear classifier  Points (d 1 d 2 d 3 ) with w 1 d 1 + w 2 d 2 + w 3 d 3 ≥ θ are in the class c.  Points (d 1 d 2 d 3 ) with w 1 d 1 + w 2 d 2 + w 3 d 3 < θ are in the complement class 8

Introduction to Information Retrieval 9 Rocchio as a linear classifier  Rocchio is a linear classifier defined by:  where is the normal vector and 9

Introduction to Information Retrieval 10 Naive Bayes as a linear classifier Naive Bayes is a linear classifier (in log space) defined by: where, d i = number of occurrences of t i in d, and. Here, the index i, 1 ≤ i ≤ M, refers to terms of the vocabulary (not to positions in d as k did in our original definition of Naive Bayes) 10

Introduction to Information Retrieval 11 kNN is not a linear classifier  The decision boundaries between classes are piecewise linear... ... but they are in general not linear classifiers that can be described as 11

Introduction to Information Retrieval 12 Take-away today  What is clustering?  Applications of clustering in information retrieval  K-means algorithm  Evaluation of clustering  How many clusters? 12

Introduction to Information Retrieval Outline ❶ Recap ❷ Clustering: Introduction ❸ Clustering in IR ❹ K-means ❺ Evaluation ❻ How many clusters? 13

Introduction to Information Retrieval 14 Clustering: Definition  (Document) clustering is the process of grouping a set of documents into clusters of similar documents.  Documents within a cluster should be similar.  Documents from different clusters should be dissimilar.  Clustering is the most common form of unsupervised learning.  Unsupervised = there are no labeled or annotated data. 14

Introduction to Information Retrieval 15 Data set with clear cluster structure Propose algorithm for finding the cluster structure in this example 15

Introduction to Information Retrieval 16 Classification vs. Clustering  Classification: supervised learning  Clustering: unsupervised learning  Classification: Classes are human-defined and part of the input to the learning algorithm.  Clustering: Clusters are inferred from the data without human input.  However, there are many ways of influencing the outcome of clustering: number of clusters, similarity measure, representation of documents,... 16

Introduction to Information Retrieval Outline ❶ Recap ❷ Clustering: Introduction ❸ Clustering in IR ❹ K-means ❺ Evaluation ❻ How many clusters? 17

Introduction to Information Retrieval 18 The cluster hypothesis Cluster hypothesis. Documents in the same cluster behave similarly with respect to relevance to information needs. All applications of clustering in IR are based (directly or indirectly) on the cluster hypothesis. Van Rijsbergen’s original wording: “closely associated documents tend to be relevant to the same requests”. 18

Introduction to Information Retrieval 19 Applications of clustering in IR 19 ApplicationWhat is clustered? Benefit Search result clusteringsearch results more effective information presentation to user Scatter-Gather(subsets of) collection alternative user interface: “search without typing” Collection clusteringcollectioneffective information presentation for exploratory browsing Cluster-based retrievalcollectionhigher efficiency: faster search

Introduction to Information Retrieval 20 Search result clustering for better navigation 20

Introduction to Information Retrieval 21 Scatter-Gather 21

Introduction to Information Retrieval 22 Global navigation: Yahoo 22

Introduction to Information Retrieval 23 Global navigation: MESH (upper level) 23

Introduction to Information Retrieval 24 Global navigation: MESH (lower level) 24

Introduction to Information Retrieval 25 Navigational hierarchies: Manual vs. automatic creation  Note: Yahoo/MESH are not examples of clustering.  But they are well known examples for using a global hierarchy for navigation.  Some examples for global navigation/exploration based on clustering:  Cartia  Themescapes  Google News 25

Introduction to Information Retrieval 26 Global navigation combined with visualization (1) 26

Introduction to Information Retrieval 27 Global navigation combined with visualization (2) 27

Introduction to Information Retrieval 28 Global clustering for navigation: Google News 28

Introduction to Information Retrieval 29 Clustering for improving recall  To improve search recall:  Cluster docs in collection a priori  When a query matches a doc d, also return other docs in the cluster containing d  Hope: if we do this: the query “car” will also return docs containing “automobile”  Because the clustering algorithm groups together docs containing “car” with those containing “automobile”.  Both types of documents contain words like “parts”, “dealer”, “mercedes”, “road trip”. 29

Introduction to Information Retrieval 30 Data set with clear cluster structure Propose algorithm for finding the cluster structure in this example 30

Introduction to Information Retrieval 31 Desiderata for clustering  General goal: put related docs in the same cluster, put unrelated docs in different clusters.  How do we formalize this?  The number of clusters should be appropriate for the data set we are clustering.  Initially, we will assume the number of clusters K is given.  Later: Semiautomatic methods for determining K  Secondary goals in clustering  Avoid very small and very large clusters  Define clusters that are easy to explain to the user  Many others... 31

Introduction to Information Retrieval 32 Flat vs. Hierarchical clustering  Flat algorithms  Usually start with a random (partial) partitioning of docs into groups  Refine iteratively  Main algorithm: K-means  Hierarchical algorithms  Create a hierarchy  Bottom-up, agglomerative  Top-down, divisive 32

Introduction to Information Retrieval 33 Hard vs. Soft clustering  Hard clustering: Each document belongs to exactly one cluster.  More common and easier to do  Soft clustering: A document can belong to more than one cluster.  Makes more sense for applications like creating browsable hierarchies  You may want to put sneakers in two clusters:  sports apparel  shoes  You can only do that with a soft clustering approach.  We will do flat, hard clustering only in this class.  See IIR 16.5, IIR 17, IIR 18 for soft clustering and hierarchical clustering 33

Introduction to Information Retrieval 34 Flat algorithms  Flat algorithms compute a partition of N documents into a set of K clusters.  Given: a set of documents and the number K  Find: a partition into K clusters that optimizes the chosen partitioning criterion  Global optimization: exhaustively enumerate partitions, pick optimal one  Not tractable  Effective heuristic method: K-means algorithm 34

Introduction to Information Retrieval Outline ❶ Recap ❷ Clustering: Introduction ❸ Clustering in IR ❹ K-means ❺ Evaluation ❻ How many clusters? 35

Introduction to Information Retrieval 36 K-means  Perhaps the best known clustering algorithm  Simple, works well in many cases  Use as default / baseline for clustering documents 36

Introduction to Information Retrieval 37 Document representations in clustering  Vector space model  As in vector space classification, we measure relatedness between vectors by Euclidean distance... ...which is almost equivalent to cosine similarity.  Almost: centroids are not length-normalized. 37

Introduction to Information Retrieval 38 K-means  Each cluster in K-means is defined by a centroid.  Objective/partitioning criterion: minimize the average squared difference from the centroid  Recall definition of centroid: where we use ω to denote a cluster.  We try to find the minimum average squared difference by iterating two steps:  reassignment: assign each vector to its closest centroid  recomputation: recompute each centroid as the average of the vectors that were assigned to it in reassignment 38

Introduction to Information Retrieval K-means algorithm 39

Introduction to Information Retrieval Worked Example: Set of to be clustered 40

Introduction to Information Retrieval 41 Worked Example: Random selection of initial centroids Exercise: (i) Guess what the optimal clustering into two clusters is in this case; (ii) compute the centroids of the clusters 41

Introduction to Information Retrieval Worked Example: Assign points to closest center 42

Introduction to Information Retrieval Worked Example: Assignment 43

Introduction to Information Retrieval Worked Example: Recompute cluster centroids 44

Introduction to Information Retrieval Worked Example: Assign points to closest centroid 45

Introduction to Information Retrieval Worked Example: Assignment 46

Introduction to Information Retrieval Worked Example: Recompute cluster centroids 47

Introduction to Information Retrieval Worked Example: Assign points to closest centroid 48

Introduction to Information Retrieval Worked Example: Assignment 49

Introduction to Information Retrieval Worked Example: Recompute cluster centroids 50

Introduction to Information Retrieval Worked Example: Assign points to closest centroid 51

Introduction to Information Retrieval Worked Example: Assignment 52

Introduction to Information Retrieval Worked Example: Recompute cluster centroids 53

Introduction to Information Retrieval Worked Example: Assign points to closest centroid 54

Introduction to Information Retrieval Worked Example: Assignment 55

Introduction to Information Retrieval Worked Example: Recompute cluster centroids 56

Introduction to Information Retrieval Worked Example: Assign points to closest centroid 57

Introduction to Information Retrieval Worked Example: Assignment 58

Introduction to Information Retrieval Worked Example: Recompute cluster centroids 59

Introduction to Information Retrieval Worked Example: Assign points to closest centroid 60

Introduction to Information Retrieval Worked Example: Assignment 61

Introduction to Information Retrieval Worked Example: Recompute cluster caentroids 62

Introduction to Information Retrieval Worked Ex.: Centroids and assignments after convergence 63

Introduction to Information Retrieval 64 K-means is guaranteed to converge: Proof  RSS = sum of all squared distances between document vector and closest centroid  RSS decreases during each reassignment step.  because each vector is moved to a closer centroid  RSS decreases during each recomputation step.  see next slide  There is only a finite number of clusterings.  Thus: We must reach a fixed point.  Assumption: Ties are broken consistently. 64

Introduction to Information Retrieval 65 Recomputation decreases average distance – the residual sum of squares (the “goodness” measure) The last line is the componentwise definition of the centroid! We minimize RSSk when the old centroid is replaced with the new centroid. RSS, the sum of the RSSk, must then also decrease during recomputation. 65

Introduction to Information Retrieval 66 K-means is guaranteed to converge  But we don’t know how long convergence will take!  If we don’t care about a few docs switching back and forth, then convergence is usually fast (< iterations).  However, complete convergence can take many more iterations. 66

Introduction to Information Retrieval 67 Optimality of K-means  Convergence does not mean that we converge to the optimal clustering!  This is the great weakness of K-means.  If we start with a bad set of seeds, the resulting clustering can be horrible. 67

Introduction to Information Retrieval 68 Convergence Exercise: Suboptimal clustering  What is the optimal clustering for K = 2?  Do we converge on this clustering for arbitrary seeds d i, d j ? 68

Introduction to Information Retrieval 69 Initialization of K-means  Random seed selection is just one of many ways K-means can be initialized.  Random seed selection is not very robust: It’s easy to get a suboptimal clustering.  Better ways of computing initial centroids:  Select seeds not randomly, but using some heuristic (e.g., filter out outliers or find a set of seeds that has “good coverage” of the document space)  Use hierarchical clustering to find good seeds  Select i (e.g., i = 10) different random sets of seeds, do a K- means clustering for each, select the clustering with lowest RSS 69

Introduction to Information Retrieval 70 Time complexity of K-means  Computing one distance of two vectors is O(M).  Reassignment step: O(KNM) (we need to compute KN document-centroid distances)  Recomputation step: O(NM) (we need to add each of the document’s < M values to one of the centroids)  Assume number of iterations bounded by I  Overall complexity: O(IKNM) – linear in all important dimensions  However: This is not a real worst-case analysis.  In pathological cases, complexity can be worse than linear. 70

Introduction to Information Retrieval Outline ❶ Recap ❷ Clustering: Introduction ❸ Clustering in IR ❹ K-means ❺ Evaluation ❻ How many clusters? 71

Introduction to Information Retrieval 72 What is a good clustering ?  Internal criteria  Example of an internal criterion: RSS in K-means  But an internal criterion often does not evaluate the actual utility of a clustering in the application.  Alternative: External criteria  Evaluate with respect to a human-defined classification 72

Introduction to Information Retrieval 73 External criteria for clustering quality  Based on a gold standard data set, e.g., the Reuters collection we also used for the evaluation of classification  Goal: Clustering should reproduce the classes in the gold standard  (But we only want to reproduce how documents are divided into groups, not the class labels.)  First measure for how well we were able to reproduce the classes: purity 73

Introduction to Information Retrieval 74 External criterion: Purity  Ω= {ω 1, ω 2,..., ω K } is the set of clusters and C = {c 1, c 2,..., c J } is the set of classes.  For each cluster ω k : find class c j with most members n kj in ω k  Sum all n kj and divide by total number of points 74

Introduction to Information Retrieval 75 Example for computing purity To compute purity: 5 = max j |ω 1 ∩ c j | (class x, cluster 1); 4 = max j |ω 2 ∩ c j | (class o, cluster 2); and 3 = max j |ω 3 ∩ c j | (class ⋄, cluster 3). Purity is (1/17) × ( ) ≈

Introduction to Information Retrieval 76 Rand index  Definition:  Based on 2x2 contingency table of all pairs of documents:  TP+FN+FP+TN is the total number of pairs.  There are pairs for N documents.  Example: = 136 in o/ ⋄ /x example  Each pair is either positive or negative (the clustering puts the two documents in the same or in different clusters)... ... and either “true” (correct) or “false” (incorrect): the clustering decision is correct or incorrect. 76

Introduction to Information Retrieval 77 Rand Index: Example As an example, we compute RI for the o/ ⋄ /x example. We first compute TP + FP. The three clusters contain 6, 6, and 5 points, respectively, so the total number of “positives” or pairs of documents that are in the same cluster is: Of these, the x pairs in cluster 1, the o pairs in cluster 2, the ⋄ pairs in cluster 3, and the x pair in cluster 3 are true positives: Thus, FP = 40 − 20 = 20. FN and TN are computed similarly. 77

Introduction to Information Retrieval 78 Rand measure for the o/ ⋄ /x example ( )/( ) ≈

Introduction to Information Retrieval 79 Two other external evaluation measures  Two other measures  Normalized mutual information (NMI)  How much information does the clustering contain about the classification?  Singleton clusters (number of clusters = number of docs) have maximum MI  Therefore: normalize by entropy of clusters and classes  F measure  Like Rand, but “precision” and “recall” can be weighted 79

Introduction to Information Retrieval 80 Evaluation results for the o/ ⋄ /x example All four measures range from 0 (really bad clustering) to 1 (perfect clustering). 80

Introduction to Information Retrieval Outline ❶ Recap ❷ Clustering: Introduction ❸ Clustering in IR ❹ K-means ❺ Evaluation ❻ How many clusters? 81

Introduction to Information Retrieval 82 How many clusters?  Number of clusters K is given in many applications.  E.g., there may be an external constraint on K. Example: In the case of Scatter-Gather, it was hard to show more than 10–20 clusters on a monitor in the 90s.  What if there is no external constraint? Is there a “right” number of clusters?  One way to go: define an optimization criterion  Given docs, find K for which the optimum is reached.  What optimiation criterion can we use?  We can’t use RSS or average squared distance from centroid as criterion: always chooses K = N clusters. 82

Introduction to Information Retrieval 83 Exercise  Your job is to develop the clustering algorithms for a competitor to news.google.com  You want to use K-means clustering.  How would you determine K? 83

Introduction to Information Retrieval 84 Simple objective function for K (1)  Basic idea:  Start with 1 cluster (K = 1)  Keep adding clusters (= keep increasing K)  Add a penalty for each new cluster  Trade off cluster penalties against average squared distance from centroid  Choose the value of K with the best tradeoff 84

Introduction to Information Retrieval 85 Simple objective function for K (2)  Given a clustering, define the cost for a document as (squared) distance to centroid  Define total distortion RSS(K) as sum of all individual document costs (corresponds to average distance)  Then: penalize each cluster with a cost λ  Thus for a clustering with K clusters, total cluster penalty is Kλ  Define the total cost of a clustering as distortion plus total cluster penalty: RSS(K) + Kλ  Select K that minimizes (RSS(K) + Kλ)  Still need to determine good value for λ... 85

Introduction to Information Retrieval Pick the number of clusters where curve “flattens”. Here: 4 or Finding the “knee” in the curve 86

Introduction to Information Retrieval 87 Take-away today  What is clustering?  Applications of clustering in information retrieval  K-means algorithm  Evaluation of clustering  How many clusters? 87

Introduction to Information Retrieval 88 Resources  Chapter 16 of IIR  Resources at  K-means example  Keith van Rijsbergen on the cluster hypothesis (he was one of  the originators)  Bing/Carrot2/Clusty: search result clustering 88