Data Mining. CS57300 Purdue University. Bruno Ribeiro. February 15th, 2018

Similar documents
Introduction to Ensemble Learning Featuring Successes in the Netflix Prize Competition

Python Machine Learning

Machine Learning and Data Mining. Ensembles of Learners. Prof. Alexander Ihler

Lecture 1: Machine Learning Basics

(Sub)Gradient Descent

Assignment 1: Predicting Amazon Review Ratings

CS Machine Learning

Learning From the Past with Experiment Databases

Semi-Supervised Face Detection

Active Learning. Yingyu Liang Computer Sciences 760 Fall

Generative models and adversarial training

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Rule Learning With Negation: Issues Regarding Effectiveness

A survey of multi-view machine learning

arxiv: v1 [cs.lg] 15 Jun 2015

The Good Judgment Project: A large scale test of different methods of combining expert predictions

Truth Inference in Crowdsourcing: Is the Problem Solved?

Model Ensemble for Click Prediction in Bing Search Ads

CSL465/603 - Machine Learning

Rule Learning with Negation: Issues Regarding Effectiveness

Softprop: Softmax Neural Network Backpropagation Learning

Analysis of Hybrid Soft and Hard Computing Techniques for Forex Monitoring Systems

Probabilistic Latent Semantic Analysis

Australian Journal of Basic and Applied Sciences

Learning Methods in Multilingual Speech Recognition

CS 446: Machine Learning

Twitter Sentiment Classification on Sanders Data using Hybrid Approach

Artificial Neural Networks written examination

Semi-supervised methods of text processing, and an application to medical concept extraction. Yacine Jernite Text-as-Data series September 17.

Evolutive Neural Net Fuzzy Filtering: Basic Description

Impact of Cluster Validity Measures on Performance of Hybrid Models Based on K-means and Decision Trees

Speech Recognition at ICSI: Broadcast News and beyond

Iterative Cross-Training: An Algorithm for Learning from Unlabeled Web Pages

A study of speaker adaptation for DNN-based speech synthesis

Comment-based Multi-View Clustering of Web 2.0 Items

Issues in the Mining of Heart Failure Datasets

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

arxiv: v2 [cs.cv] 30 Mar 2017

Reducing Features to Improve Bug Prediction

Word Segmentation of Off-line Handwritten Documents

Probability and Statistics Curriculum Pacing Guide

Learning Structural Correspondences Across Different Linguistic Domains with Synchronous Neural Language Models

Universidade do Minho Escola de Engenharia

Analysis of Emotion Recognition System through Speech Signal Using KNN & GMM Classifier

Learning goal-oriented strategies in problem solving

Using the Attribute Hierarchy Method to Make Diagnostic Inferences about Examinees Cognitive Skills in Algebra on the SAT

Course Outline. Course Grading. Where to go for help. Academic Integrity. EE-589 Introduction to Neural Networks NN 1 EE

Class-Discriminative Weighted Distortion Measure for VQ-Based Speaker Identification

Semi-Supervised GMM and DNN Acoustic Model Training with Multi-system Combination and Confidence Re-calibration

Word learning as Bayesian inference

Chinese Language Parsing with Maximum-Entropy-Inspired Parser

QuickStroke: An Incremental On-line Chinese Handwriting Recognition System

Version Space. Term 2012/2013 LSI - FIB. Javier Béjar cbea (LSI - FIB) Version Space Term 2012/ / 18

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

Chapter 2 Rule Learning in a Nutshell

OCR for Arabic using SIFT Descriptors With Online Failure Prediction

Comparison of EM and Two-Step Cluster Method for Mixed Data: An Application

COMPUTER-ASSISTED INDEPENDENT STUDY IN MULTIVARIATE CALCULUS

BMBF Project ROBUKOM: Robust Communication Networks

STA 225: Introductory Statistics (CT)

Switchboard Language Model Improvement with Conversational Data from Gigaword

WHEN THERE IS A mismatch between the acoustic

Beyond the Pipeline: Discrete Optimization in NLP

Applications of data mining algorithms to analysis of medical data

Machine Learning from Garden Path Sentences: The Application of Computational Linguistics

Unsupervised Learning of Word Semantic Embedding using the Deep Structured Semantic Model

ScienceDirect. A Framework for Clustering Cardiac Patient s Records Using Unsupervised Learning Techniques

Corrective Feedback and Persistent Learning for Information Extraction

Calibration of Confidence Measures in Speech Recognition

An Online Handwriting Recognition System For Turkish

Language Acquisition Fall 2010/Winter Lexical Categories. Afra Alishahi, Heiner Drenhaus

Experiments with SMS Translation and Stochastic Gradient Descent in Spanish Text Author Profiling

Likelihood-Maximizing Beamforming for Robust Hands-Free Speech Recognition

Attributed Social Network Embedding

Activity Recognition from Accelerometer Data

Mining Student Evolution Using Associative Classification and Clustering

An Empirical Comparison of Supervised Ensemble Learning Approaches

Speech Emotion Recognition Using Support Vector Machine

On-Line Data Analytics

Introduction to Causal Inference. Problem Set 1. Required Problems

Lecture 1: Basic Concepts of Machine Learning

Physics 270: Experimental Physics

Comparison of network inference packages and methods for multiple networks inference

PREDICTING SPEECH RECOGNITION CONFIDENCE USING DEEP LEARNING WITH WORD IDENTITY AND SCORE FEATURES

Linking Task: Identifying authors and book titles in verbose queries

Fragment Analysis and Test Case Generation using F- Measure for Adaptive Random Testing and Partitioned Block based Adaptive Random Testing

INPE São José dos Campos

Discriminative Learning of Beam-Search Heuristics for Planning

Grade 2: Using a Number Line to Order and Compare Numbers Place Value Horizontal Content Strand

FRAMEWORK FOR IDENTIFYING THE MOST LIKELY SUCCESSFUL UNDERPRIVILEGED TERTIARY STUDY BURSARY APPLICANTS

Multi-Lingual Text Leveling

arxiv:cmp-lg/ v1 22 Aug 1994

Combining Proactive and Reactive Predictions for Data Streams

Detailed course syllabus

Given a directed graph G =(N A), where N is a set of m nodes and A. destination node, implying a direction for ow to follow. Arcs have limitations

Universityy. The content of

Major Milestones, Team Activities, and Individual Deliverables

COBRA: A Fast and Simple Method for Active Clustering with Pairwise Constraints

IEEE TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, VOL. 17, NO. 3, MARCH

Transcription:

Data Mining CS573 Purdue University Bruno Ribeiro February 15th, 218 1

Today s Goal Ensemble Methods Supervised Methods Meta-learners Unsupervised Methods 215 Bruno Ribeiro

Understanding Ensembles The Data Class 1 Class 2 X 2 x x x x Population 1 x xx x x x Population 2 x x xx x x x x x x Population 3 X 1 Three simple classification problems if we can break them down If no classes, clustering problem is also simple if clustering algorithm knows shape of cluster

Why just not choose the Best classifier? Choosing the best classifier is a tricky business Why select just one of multiple similarly good hypotheses } Ensembles are a way to include multiple hypotheses in the decision Most methods can be thought as approximations to a Bayesian approach that considers a continuous pool of models Can be justified by Bias-Variance reduction: Variance: error from sensitivity to small fluctuations in the training set Bias: erroneous assumptions in the model 4

Model Search Space [Lecture 7] Best possible parameters in search space w model search space ŵ Estimated parameters True Model Space Bias related to arrow = parameter values look better than w in the training data Variance related to number of "trolls 5

Bias-Variance Reduction Variance reduction: if the training sets are completely independent, it will always help to average an ensemble to reduce variance without affecting bias (e.g., bagging). Reduces sensitivity to individual data points Bias reduction: for simple models, average of models has much greater model complexity than single model (e.g., hyperplane classifiers, Gaussian densities). Averaging models can reduce bias substantially by increasing model complexity, and control variance by fitting one component at a time (e.g., boosting) 6

Advantages of Ensembles No need to select best model Put all models to work, make them work together Ensembles are generally more accurate than any individual members: As long as constituent members of the ensemble are Accurate (better than guessing) Diverse (different errors on new examples) 7

Overview Ensembles Supervised Learning SVM, Logistic Regression,... Boosting, rule ensemble, Bayesian model averaging, mixture of experts,..... Bagging, random forest, random decision tree... Semisupervised Learning Semi-supervised Learning, Collective Inference Multi-view Learning Consensus maximization Consensus Maximization Unsupervised Learning K-means, Spectral Clustering,... Clustering Ensemble Single Models Combine by learning Combine by consensus Ack: Gao, Fan, Han 21 8

Training and Validation Data Randomly divide original data {x 1,,x N } into training and validation We will need this separation to train some ensembles Original dataset Train Validation Used to train simple models Used to combine simple models 9

Ensemble of Classifiers Consensus training validation classifier 1 labeled training data classifier 2 validation data combine the predictions by majority voting or averaging classifier k final predictions Algorithms: bagging, random forest, random decision tree, model averaging of probabilities Ack: Gao, Fan, Han 21 1

Ensemble of Classifiers Learn to Combine training validation1 validation2 classifier 1 Ensemble model labeled training data classifier 2 validation data classifier k final predictions learn the combination from labeled data Algorithms: boosting, stacked generalization, rule ensemble, Bayesian model averaging, mixture of experts Ack: Gao, Fan, Han 21 11

Pros and Cons Combine by learning Combine by consensus Pros Get useful feedbacks from labeled data Can potentially improve accuracy Do not need labeled data Can improve the generalization performance Cons Need to keep the labeled data to train the ensemble May overfit the labeled data Cannot work when no labels are available No feedbacks from the labeled data Require the assumption that consensus is better Ack: Gao, Fan, Han 21 12

Ensemble Training Strategies Methods differ in training strategy and assembling Parallel training with different training sets Bagging (bootstrap aggregation) bootstrap to train separate models, average their predictions Cross-validated committees disjoint subsets of training sets Sequential or Joint training Boosting: Iteratively re-weights training examples so each new classifier focuses on hard examples (supervised only) Mixture of experts: parallel training with objective encouraging division of labor Must be careful w.r.t. model complexity 13

Learn to Combine: Supervised Ensembles w/ Parallel Training 14

Learning to Combine with Logistic Regression Can be any classifier C(x i ) = 1 x i1 w 2 w 1 Supervised Learning Classifier (e.g. Logistic Regression Classifier) X ˆt i = P [t i =1 x i, w] w 3 x i2 What if input x ik was the decision ŷ i (k) of another classifier G k (x i )? High-level classifier is known as meta learner 15

General Algorithm (Learn to Combine) Problem Given a data set D={x 1,x 2,,x n } and their corresponding labels T={t 1,t 2,,t n } from a set of labels L An ensemble approach computes: A set of classifiers {f 1,f 2,,f K }, each of which maps data to a class label: f j (x)=l, l L All trained in parallel A combination of classifiers f* which minimizes generalization error: f*(x)= g(f 1 (x), f 2 (x),, f K (x)) Ack: Gao, Fan, Han 21 16

Example of Learn to Combine Stacked generalization to reduce bias 17

Stacked Generalization Example Train these first on training data G 1 (x i ) G 2 (x i ) G k (x i ) 1 w 1 w 2 Trains Logistic Regression Classifier over validation1 w 3 w 4 X ˆt i = P [t i =1 x i, w] Combine pre-trained answers over validation1 Train Validation1 Validation2 18

Stacked generalization (stacking) [Wolpert, 1992] Stacked generalization combines multiple models through a meta learner Simplest approach Stacking usually combines models of different types. The algorithm: 1. Split the original training set into training, validation1, validation2 2. Train k=1,,k models (base learners ) on training data 3. Apply the models over x validation1: for classifier k, predict label f k (x) 4. Train a classifier on validation1 using the predictions from (3) as input and the correct labels as output 5. Evaluation ensemble with validation2 19

Example of Combine Bagging to reduce variance 2

Bagging Bootstrapping: Repeatedly draw n samples from training dataset D Sample with replacement Contains around 63.2% original records in each sample Bagging: bootstrap aggregation (Breiman 1994) Algorithm: 1. Generate K bootstrap samples from your original training set 2. Train on bootstrap sample k=1,,k to get model f k 3. Average the model predictions f? (x i )= 1 K KX f k (x i ) k=1 For regression: average predictions For classification: average class probabilities (or take the majority vote if only hard outputs available) The more bootstraps the better, so use as many as you have time for 21

Bagging, Error Reduction Error Reduction Under mean squared error, bagging reduces variance and leaves bias unchanged Consider idealized bagging estimator: f? (x i )=E [f k (x i )], where the expectation is over all possible classifiers f k Bagging usually decreases MSE Bagging is not effective with large training datasets Why? 22

A specific type of Bagging: Random Forest 23

Random Forests (1) Algorithm Choose T: the number of trees to grow Choose m<m (M is the number of total features) number of features used to calculate the best split at each node (typically 2% ) For each tree Choose a training set by choosing n times (n is the number of training examples) with replacement from the training set For each node, randomly choose m features and calculate the best split Fully grown and not pruned Use majority voting among all T trees to classify a new example *[Breiman1] Ack: Gao, Fan, Han 21 24

Random Forests (2) Discussions Bagging+random features Improves accuracy Incorporates more diversity and reduce variance Improved efficiency Searching among subsets of features is much faster than searching among the complete set Still quite slow but easily parallelizable Ack: Gao, Fan, Han 21 25

Random Decision Tree (1) Single-model learning algorithms Fix structure of the model, minimize some form of errors, or maximize data likelihood (eg., Logistic regression, Naive Bayes, etc.) Use some free-form functions to match the data given some preference criteria such as information gain, gini index and MDL. (eg., Decision Tree, Rule-based Classifiers, etc.) Such methods will make mistakes if Data is insufficient Structure of the model or the preference criteria is inappropriate for the problem Decision Trees Make no assumption about the true model, neither parametric form nor free form Do not prefer one base model over the other, just average them Ack: Gao, Fan, Han 21 26

Random Decision Tree (2) Algorithm At each node, an un-used feature is chosen at random A discrete feature is unused if it has never been chosen previously on a given decision path starting from the root to the current node. A continuous feature can be chosen multiple times on the same decision path, but each time a different threshold value must be chosen We stop when one of the following happens: A node becomes too small (<= 3 examples). Or the total height of the tree exceeds some limits, such as the total number of features. Prediction Simple averaging over multiple trees Ack: Gao, Fan, Han 21 27

Optimal Decision Boundary Ack: Tony Liu 28

RDT looks like the optimal boundary Ack: Tony Liu 29

Supervised Ensembles - Sequential or Joint Learning Methods 3

Mixture of Experts: Basic Idea Hierarchical mixture of experts (HME) architecture (Jordan & Jacobs 1994) Similar to Stacked Generalization but trains base learners and meta learner together (jointly) G 1 (x i ) G 2 (x i ) 1 w 1 w 2 w 3 } Jointly train experts and combining classifier } Trained through maximum likelihood estimation using EM } Can also be trained as a Bayesian mixture (Waterhouse, MacKay, Robinson 1996) X ˆt i = P [t i =1 x i, w] Meta-learner G k (x i ) w 4 31

Sequential Training: Boosting Classifiers trained sequentially Each classifier is trained given knowledge of the performance of previously trained classifiers: focus on hard examples Final classifier: weighted sum of component classifiers Ack: Urtasun & Zeme 32

Boosting Justification Suppose you have a weak learner (a classifier that uses a very simple model) that can always get correct labels with (.5 + ε) probability when given a binary classification task (two labels) This seems like a weak assumption but Can we apply this learning module many times to get a strong learner that gets close to zero error rate on the training data? (Freund & Shapire, 1996) theoretically showed how to do this and it actually led to an effective new learning procedure Ack: Urtasun & Zeme 33

Boosting (Adaboost) Algorithm First train the base classifier on all the training data with equal importance weights Then re-weight the training data to emphasize the misclassified (or hard) cases and train a second model How to re-weight the data? Keep training new models on re-weighted data Finally, use a weighted committee of all the models for the validation data Ack: Urtasun How & Zemeto weight the models in the committee? 34

Adaboost in Details Input: {x i, t i } i=1,..,n, t i {-1,1} and a learning procedure f that outputs classification probabilities, Output: classifier f*(x) Initialize example x i weight: For k=1,,k Learn classifier f k by minimizing over Err i = Compute classifier coefficient w (1) i =1/N, 8i nx i=1 k = 1 2 log 1 w (k) i 1{f k (x i ) 6= t i } Err k Err k Update observation weights Final classifier: w (k+1) i = f? (x) = sign w (k) i exp( k t i f k (x i )) P n j=1 w(k) j exp( k t j f k (x j ))! KX k f k (x) k=1 35

Slight Improvement over Adaboost Algorithm A more robust AdaBoost Initially, set uniform weights on all the records At each round Create a bootstrap sample based on the weights Train a classifier on the sample and apply it on the original training set Observations that are wrongly classified will have their weights increased Observations that are classified correctly will have their weights decreased If the error rate is higher than 5%, start over Final prediction is weighted average of all the classifiers with weight representing the training accuracy Ack: Gao, Fan, Han 21 36

Data model Classifications (colors) and Weights (circle radius) after 1 iteration Of AdaBoost (3-leaf decision tree) 3 iterations 2 iterations Ack: Elder, John. 27. 37

Explaining Adaboost Theoretical Understanding Among the classifiers of the form: k=1 We seek to minimize the exponential loss function: Main Issue with Adaboost? Not at all robust to mislabeling (noise in labels) Weights of mislabeled observations keeps growing exponentially until classifier fits the noise Choice of classifiers f k? f? (x) = nx exp ( t i f? (x i )) i=1 KX k f k (x) Weak learners, very simple models (e.g., shallow decision tree) Otherwise Adaboost easily overfits data 38

Side note about Boosting Extensions: Zhu et al. (25) Multi-class AdaBoost generalizes for K-class problems State-of-the-art: Gradient Tree Boosting Boosted trees > 5% of all Kaggle winning entries All-in-one package (based on best practices): Tianqi Chen, Carlos Guestrin, XGBoost: A Scalable Tree Boosting System, KDD 216 39

Unsupervised Ensembles 4

Majority Voting General algorithm: 1. Train multiple classifiers over same training data or same classifier over different training data (same classifiers give different answers when trained over different training data) 2. Each votes on validation instance 3. Take majority as classification Strong assumption that consensus is better 41

Clustering Ensemble Problem Given an unlabeled data set D={x 1,x 2,,x n } An ensemble approach computes: Challenges A set of clustering solutions {C 1,C 2,,C k }, each of which maps data to a cluster: f j (x)=m A unified clustering solutions f* which combines base clustering solutions by their consensus The correspondence between the clusters in different clustering solutions is unknown (label switching problem) Unsupervised Combinatorial optimization problem is NP-complete Ack: Gao, Fan, Han 21 42

Motivations Goal Combine weak clusterings to a better one [Punch,Topchy, Jain 25] Ack: Gao, Fan, Han 21 43

An Example base clustering models objects These may not represent the same cluster! The goal: get the consensus clustering [Gionis, Mannila, Tsaparas 27] Ack: Gao, Fan, Han 21 44

Hard Correspondence (1) Re-labeling+voting Find the correspondence between the labels in the partitions and fuse the clusters with the same labels by voting [Dudoit, Fridlyand 23; Dimitriadou, Weingessel, Homik 21] Re-labeling Voting C 1 C 2 C 3 v 1 1 3 2 v 2 1 3 2 v 3 2 1 2 v 4 2 1 3 v 5 3 2 1 v 6 3 2 1 C 1 C 2 C 3 v 1 1 1 1 v 2 1 1 1 v 3 2 2 1 v 4 2 2 2 v 5 3 3 3 v 6 3 3 3 C* 1 1 2 2 3 3 Ack: Gao, Fan, Han 21 45

Hard Correspondence (2) Details Hungarian method to match clusters in two different clustering solutions Match to a reference clustering or match in a pairwise manner Problems In most cases, clusters do not have one-to-one correspondence 46

Soft Correspondence (1) ú ú ú ú ú ú ú ú û ù ê ê ê ê ê ê ê ê ë é 1 1 1 1 1 1 47 Notations Membership matrix M 1, M 2,,M k Membership matrix of consensus clustering M Correspondence matrix S 1, S 2,,S k M i S i =M C 1 C 2 C 3 v 1 1 3 2 v 2 1 3 2 v 3 2 1 2 v 4 2 1 3 v 5 3 2 1 v 6 3 2 1 ú ú ú ú ú ú ú ú û ù ê ê ê ê ê ê ê ê ë é 1 1 1 1 1 1 ú ú ú û ù ê ê ê ë é 1 1 1 = X M 2 S 2 M [Long, Zhang, Yu, 25]

Soft Correspondence (2) Consensus function Minimize disagreement min k å = M - j 1 M j S j 2 Constraint 1: column-sparseness Constraint 2: each row sums up to 1 Variables: M, S 1, S 2,,S k M = 1 k k å j = 1 M j S j Optimization EM-based approach Iterate until convergence Update S using gradient descent Update M as 48