Introduction to Classification, aka Machine Learning

Similar documents
Python Machine Learning

CS Machine Learning

Introduction to Ensemble Learning Featuring Successes in the Netflix Prize Competition

Rule Learning With Negation: Issues Regarding Effectiveness

Twitter Sentiment Classification on Sanders Data using Hybrid Approach

(Sub)Gradient Descent

Rule Learning with Negation: Issues Regarding Effectiveness

A Case Study: News Classification Based on Term Frequency

Linking Task: Identifying authors and book titles in verbose queries

Switchboard Language Model Improvement with Conversational Data from Gigaword

Reducing Features to Improve Bug Prediction

Learning From the Past with Experiment Databases

Disambiguation of Thai Personal Name from Online News Articles

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

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

Probabilistic Latent Semantic Analysis

Applications of data mining algorithms to analysis of medical data

Australian Journal of Basic and Applied Sciences

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

Using dialogue context to improve parsing performance in dialogue systems

Lecture 1: Basic Concepts of Machine Learning

SINGLE DOCUMENT AUTOMATIC TEXT SUMMARIZATION USING TERM FREQUENCY-INVERSE DOCUMENT FREQUENCY (TF-IDF)

Lecture 1: Machine Learning Basics

THE ROLE OF DECISION TREES IN NATURAL LANGUAGE PROCESSING

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

Issues in the Mining of Heart Failure Datasets

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

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

Speech Recognition at ICSI: Broadcast News and beyond

Assignment 1: Predicting Amazon Review Ratings

Large-Scale Web Page Classification. Sathi T Marath. Submitted in partial fulfilment of the requirements. for the degree of Doctor of Philosophy

Mining Student Evolution Using Associative Classification and Clustering

Generative models and adversarial training

Netpix: A Method of Feature Selection Leading. to Accurate Sentiment-Based Classification Models

WE GAVE A LAWYER BASIC MATH SKILLS, AND YOU WON T BELIEVE WHAT HAPPENED NEXT

Word Segmentation of Off-line Handwritten Documents

Softprop: Softmax Neural Network Backpropagation Learning

ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY DOWNLOAD EBOOK : ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY PDF

Detecting English-French Cognates Using Orthographic Edit Distance

Universidade do Minho Escola de Engenharia

Using Web Searches on Important Words to Create Background Sets for LSI Classification

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

Individual Component Checklist L I S T E N I N G. for use with ONE task ENGLISH VERSION

Learning Methods in Multilingual Speech Recognition

Evaluating and Comparing Classifiers: Review, Some Recommendations and Limitations

The Internet as a Normative Corpus: Grammar Checking with a Search Engine

AQUA: An Ontology-Driven Question Answering System

Lip reading: Japanese vowel recognition by tracking temporal changes of lip shape

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

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

POLA: a student modeling framework for Probabilistic On-Line Assessment of problem solving performance

On-Line Data Analytics

CS 446: Machine Learning

Beyond the Pipeline: Discrete Optimization in NLP

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

Data Fusion Through Statistical Matching

OCR for Arabic using SIFT Descriptors With Online Failure Prediction

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

System Implementation for SemEval-2017 Task 4 Subtask A Based on Interpolated Deep Neural Networks

have to be modeled) or isolated words. Output of the system is a grapheme-tophoneme conversion system which takes as its input the spelling of words,

Speech Emotion Recognition Using Support Vector Machine

Cross-lingual Short-Text Document Classification for Facebook Comments

Artificial Neural Networks written examination

A Bayesian Learning Approach to Concept-Based Document Classification

COMPUTER-ASSISTED INDEPENDENT STUDY IN MULTIVARIATE CALCULUS

First Grade Curriculum Highlights: In alignment with the Common Core Standards

Introduction to Questionnaire Design

Mining Association Rules in Student s Assessment Data

*Net Perceptions, Inc West 78th Street Suite 300 Minneapolis, MN

Predicting Students Performance with SimStudent: Learning Cognitive Skills from Observation

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

Target Language Preposition Selection an Experiment with Transformation-Based Learning and Aligned Bilingual Data

An Empirical Analysis of the Effects of Mexican American Studies Participation on Student Achievement within Tucson Unified School District

Chapter 2 Rule Learning in a Nutshell

Analyzing sentiments in tweets for Tesla Model 3 using SAS Enterprise Miner and SAS Sentiment Analysis Studio

Calibration of Confidence Measures in Speech Recognition

CLASSIFICATION OF TEXT DOCUMENTS USING INTEGER REPRESENTATION AND REGRESSION: AN INTEGRATED APPROACH

Linking the Ohio State Assessments to NWEA MAP Growth Tests *

Predicting Student Attrition in MOOCs using Sentiment Analysis and Neural Networks

Radius STEM Readiness TM

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

The University of Amsterdam s Concept Detection System at ImageCLEF 2011

Feature Selection based on Sampling and C4.5 Algorithm to Improve the Quality of Text Classification using Naïve Bayes

Using EEG to Improve Massive Open Online Courses Feedback Interaction

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

2/15/13. POS Tagging Problem. Part-of-Speech Tagging. Example English Part-of-Speech Tagsets. More Details of the Problem. Typical Problem Cases

A Decision Tree Analysis of the Transfer Student Emma Gunu, MS Research Analyst Robert M Roe, PhD Executive Director of Institutional Research and

Truth Inference in Crowdsourcing: Is the Problem Solved?

What Different Kinds of Stratification Can Reveal about the Generalizability of Data-Mined Skill Assessment Models

Multi-Lingual Text Leveling

Memory-based grammatical error correction

Rule discovery in Web-based educational systems using Grammar-Based Genetic Programming

Cross-Lingual Text Categorization

The stages of event extraction

Spoken Language Parsing Using Phrase-Level Grammars and Trainable Classifiers

QuickStroke: An Incremental On-line Chinese Handwriting Recognition System

Multi-label classification via multi-target regression on data streams

Generating Test Cases From Use Cases

CSL465/603 - Machine Learning

Active Learning. Yingyu Liang Computer Sciences 760 Fall

Transcription:

Introduction to Classification, aka Machine Learning

Classification: Definition Given a collection of examples (training set ) Each example is represented by a set of features, sometimes called attributes Each example is to be given a label or class Find a model for the label as a function of the values of features. Goal: previously unseen examples should be assigned a label as accurately as possible. A test set is used to determine the accuracy of the model. Usually, the given data set is divided into training and test sets, with training set used to build the model and test set used to validate it. 2

Supervised vs. Unsupervised Learning Supervised learning (classification) Supervision: The training data (observations, measurements, etc.) are accompanied by labels indicating the class of the observations New data is classified based on the training set Unsupervised learning (includes clustering) The class labels of training data is unknown Given a set of measurements, observations, etc. with the aim of establishing the existence of classes or clusters in the data 3

Examples of Classification Tasks Predicting tumor cells as benign or malignant Classifying credit card transactions as legitimate or fraudulent Classifying secondary structures of protein as alpha-helix, beta-sheet, or random coil Categorizing news stories as finance, weather, entertainment, sports, etc 4

10 10 Illustrating Classification Task Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No 10 No Small 90K Yes Training Set Tid Attrib1 Attrib2 Attrib3 Class 11 No Small 55K? 12 Yes Medium 80K? 13 Yes Large 110K? 14 No Small 95K? 15 No Large 67K? Test Set Induction Deduction Learning algorithm Learn Model Apply Model Model 5

Classification Techniques There are a number of different classification algorithms to build a model for classification Decision Tree based Methods Rule-based Methods Memory based reasoning, instance-based learning Neural Networks Genetic Algorithms Naïve Bayes and Bayesian Belief Networks Support Vector Machines In this introduction, we illustrate classification tasks using Decision Tree methods Features can have numeric values (continuous) or a finite set of values (categorical/nominal), including boolean true/false 6

10 Example of a Decision Tree Tid Refund Marital Status Taxable Income Cheat 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No 5 No Divorced 95K Yes 6 No Married 60K No 7 Yes Divorced 220K No 8 No Single 85K Yes 9 No Married 75K No 10 No Single 90K Yes Refund Yes No MarSt Single, Divorced TaxInc < 80K > 80K YES Married Training Data Model: Decision Tree Example task: Given the marital status, refund status, and taxable income of a person, label them as to whether they will cheat on their income tax. 7

10 Another Example of Decision Tree Tid Refund Marital Status Taxable Income 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No Cheat 5 No Divorced 95K Yes 6 No Married 60K No 7 Yes Divorced 220K No 8 No Single 85K Yes 9 No Married 75K No 10 No Single 90K Yes Married MarSt Yes Single, Divorced Refund No TaxInc < 80K > 80K YES There could be more than one tree that fits the same data! 8

10 10 Decision Tree Classification Task Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No Tree Induction algorithm 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes Induction 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No Learn Model 10 No Small 90K Yes Training Set Tid Attrib1 Attrib2 Attrib3 Class Apply Model Model Decision Tree 11 No Small 55K? 12 Yes Medium 80K? 13 Yes Large 110K? Deduction 14 No Small 95K? 15 No Large 67K? Test Set 9

10 Apply Model to Test Data Start from the root of tree. Test Data Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? Single, Divorced MarSt Married TaxInc < 80K > 80K YES 10

10 Apply Model to Test Data Test Data Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? Single, Divorced MarSt Married TaxInc < 80K > 80K YES 11

10 Apply Model to Test Data Test Data Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? Single, Divorced MarSt Married TaxInc < 80K > 80K YES 12

10 Apply Model to Test Data Test Data Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? Single, Divorced MarSt Married TaxInc < 80K > 80K YES 13

10 Apply Model to Test Data Test Data Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? Single, Divorced MarSt Married TaxInc < 80K > 80K YES 14

10 Apply Model to Test Data Test Data Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? Single, Divorced MarSt Married Assign Cheat to No TaxInc < 80K > 80K YES 15

10 10 Decision Tree Classification Task Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No Tree Induction algorithm 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes Induction 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No Learn Model 10 No Small 90K Yes Training Set Tid Attrib1 Attrib2 Attrib3 Class Apply Model Model Decision Tree 11 No Small 55K? 12 Yes Medium 80K? 13 Yes Large 110K? Deduction 14 No Small 95K? 15 No Large 67K? Test Set 16

Evaluating Classification Methods Accuracy classifier accuracy: predicting class label predictor accuracy: guessing value of predicted attribute Speed time to construct model (training time) time to use the model (classification/prediction time) Robustness: handling noise and missing values Scalability: efficiency in disk-resident databases Interpretability understanding and insight provided by the model Other measures, e.g. goodness of rules, such as decision tree size or compactness of classification model 17

Metrics for Performance Evaluation Focus on the predictive capability of a model Rather than how fast it takes to classify or build models, scalability, etc. Confusion Matrix for a binary classifier (two labels): PREDICTED CLASS Class=Yes Class=No a: TP (true positive) ACTUAL CLASS Class=Yes a b Class=No c d b: FN (false negative) c: FP (false positive) d: TN (true negative) 18

Classifier Accuracy Measures Another widely-used metric: Accuracy of a classifier M is the percentage of test set that are correctly classified by the model M Accuracy = a a + d + b + c + d = TP + TN TP + TN + FP + FN Yes - C 1 No - C 2 Yes - C 1 a: True positive b: False negative No - C 2 c: False positive d: True negative classes buy_computer = yes buy_computer = no total buy_computer = yes 6954 46 7000 buy_computer = no 412 2588 3000 total 7366 2634 10000 19

Other Classifier Measures Alternative accuracy measures (e.g., for cancer diagnosis or information retrieval) sensitivity = t-pos/pos /* true positive recognition rate */ specificity = t-neg/neg /* true negative recognition rate */ precision = t-pos/(t-pos + f-pos) recall = t-pos/(t-pos + f-neg ) accuracy = sensitivity * pos/(pos + neg) + specificity * neg/(pos + neg) 20

Multi-Class Classification Most classification algorithms solve binary classification tasks, while many tasks are naturally multi-class, i.e. there are more than 2 labels Multi-Class problems are solved by training a number of binary classifiers and combining them to get a multi-class result Confusion matrix is extended to the multi-class case Accuracy definition is naturally extended to the multi-class case Precision and recall are defined for the binary classifiers trained for each label 21

Issues with imbalanced classes Consider a 2-class problem with labels Yes and No Number of No examples = 990 Number of Yes examples = 10 If model predicts everything to be No, accuracy is 990/1000 = 99 % Accuracy is misleading because model does not detect any Yes example Precision and recall will be better measures if you are training a classifier to find rare examples. 22

Evaluating the Accuracy of a Classifier Holdout method Given data is randomly partitioned into two independent sets Training set (e.g., 2/3) for model construction Test set (e.g., 1/3) for accuracy estimation Cross-validation (k-fold, where k = 10 is most popular) Randomly partition the data into k mutually exclusive subsets, each approximately equal size At i-th iteration, use D i as test set and others as training set 1: test train train train train 2: train test train train train... 23

Evaluating the Model - Learning Curve Learning curve shows how accuracy changes with varying sample size Requires a sampling schedule for creating learning curve 24

Classifier Performance: Feature Selection Too long a training or testing is a performance issue for classification of problems with large numbers of attributes or nominal attributes with large numbers of values Feature selection techniques aim to reduce the number of features by finding a smaller or minimal set that can accurately classify the problem reduce the training and prediction time by eliminating noisy or redundant features Two main types of techniques Filtering methods apply a statistical or other information measure to the attribute values without running any training and testing Wrapper methods try different combinations of attributes, run crossvalidation evaluations and compare the results 25

Classifier Performance: Ensemble Methods Construct a set of classifiers from the training data Predict class label of previously unseen records by aggregating predictions made by multiple classifiers Examples of ensemble methods Bagging Boosting Heterogeneous classifiers trained on different feature subsets sometimes called mixture of experts 26

General Idea D Original Training data Step 1: Create Multiple Data Sets... D 1 D 2 D t-1 D t Step 2: Build Multiple Classifiers C 1 C 2 C t -1 C t Step 3: Combine Classifiers C * 27

Examples of Classification Problems Some NLP problems are widely investigated as supervised classification problems, and use a variety of problem instances Text categorization: assigning topic labels to documents Word Sense Disambiguation: assigning a sense to a word, as it occurs in a document Semantic Role Labeling: assigning semantic roles to phrases in a sentence From the NLTK book, chapter 6: Classify first names according to gender Document classification (text categorization) Part-Of-Speech tagging Sentence Segmentation Identifying Dialog Act types Recognizing Textual Entailment 28

Text Categorization Represent each document by the words/tokens/terms it contains Sometimes called unigrams, sometimes bag-of-words Identify terms from the document text Remove symbols with little meaning Remove words with little meaning the stop words Stem the meaningful words Remove endings to get root of the word From enchanted, enchants, enchantment, enchanting, get the root word enchant Group together words into phrases (optional) Proper names or other words that are likely to have a different meaning as a phrase than the individual words After grouping, may also want to lowercase the terms 29

Document Features Use a feature vector to represent all the words in a document one position for each word in the collection, representing the weights (often frequency) of words Water, water everywhere, and not a drop to drink! ( 2, 1, 1, 1, 1, 0, ) Another document with the word drink: drink ( 0, 0, 0, 0, 1, 0, ) (shown with frequency weights) Feature vectors may have thousands of words and are often restricted by a threshold frequency of 5 or more

Weka demonstration to observe feature vectors Compare Traditional data mining problem Text mining problem 31