CSI 5388:Topics in Machine Learning

Slides:



Advertisements
Similar presentations
Computational Learning Theory
Advertisements

Artificial Neural Networks
3.6 Support Vector Machines
1 Knowledge and reasoning – second part Knowledge representation Logic and representation Propositional (Boolean) logic Normal forms Inference in propositional.
Constraint Satisfaction Problems
© Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems Introduction.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (Parallel Algorithms) Robin Pomplun.
Cognitive Radio Communications and Networks: Principles and Practice By A. M. Wyglinski, M. Nekovee, Y. T. Hou (Elsevier, December 2009) 1 Chapter 12 Cross-Layer.
Analysis of Algorithms
Artificial Intelligence 12. Two Layer ANNs
Chapter 7 Sampling and Sampling Distributions
Vote Elicitation with Probabilistic Preference Models: Empirical Estimation and Cost Tradeoffs Tyler Lu and Craig Boutilier University of Toronto.
1 Outline relationship among topics secrets LP with upper bounds by Simplex method basic feasible solution (BFS) by Simplex method for bounded variables.
Biostatistics Unit 5 Samples Needs to be completed. 12/24/13.
Pole Placement.
Detection Chia-Hsin Cheng. Wireless Access Tech. Lab. CCU Wireless Access Tech. Lab. 2 Outlines Detection Theory Simple Binary Hypothesis Tests Bayes.
Chi-Square and Analysis of Variance (ANOVA)
LIAL HORNSBY SCHNEIDER
Lecture 16 Decision Trees
Beyond Linear Separability
Statistical Analysis SC504/HS927 Spring Term 2008
by Colin Kriwox. 2 Contents Introduction credit card error checking what is a code purpose of error-correction codes Encoding naïve approach.
Local Search Jim Little UBC CS 322 – CSP October 3, 2014 Textbook §4.8
CPSC 322, Lecture 14Slide 1 Local Search Computer Science cpsc322, Lecture 14 (Textbook Chpt 4.8) Oct, 5, 2012.
PSSA Preparation.
Classification Classification Examples
Chapter 5 The Mathematics of Diversification
Slides from: Doug Gray, David Poole
1 Machine Learning: Lecture 4 Artificial Neural Networks (Based on Chapter 4 of Mitchell T.., Machine Learning, 1997)
1 Machine Learning: Lecture 3 Decision Tree Learning (Based on Chapter 3 of Mitchell T.., Machine Learning, 1997)
Data Mining Classification: Alternative Techniques
Data Mining Classification: Alternative Techniques
Support Vector Machines
CSCI 347 / CS 4206: Data Mining Module 07: Implementations Topic 03: Linear Models.
1 Chapter 10 Introduction to Machine Learning. 2 Chapter 10 Contents (1) l Training l Rote Learning l Concept Learning l Hypotheses l General to Specific.
Ensemble Learning: An Introduction
MACHINE LEARNING. What is learning? A computer program learns if it improves its performance at some task through experience (T. Mitchell, 1997) A computer.
Review Rong Jin. Comparison of Different Classification Models  The goal of all classifiers Predicating class label y for an input x Estimate p(y|x)
Neural Networks Lecture 8: Two simple learning algorithms
Issues with Data Mining
Machine Learning1 Machine Learning: Summary Greg Grudic CSCI-4830.
1 CSI 5388:Topics in Machine Learning Inductive Learning: A Review.
ECE 8443 – Pattern Recognition ECE 8527 – Introduction to Machine Learning and Pattern Recognition LECTURE 16: NEURAL NETWORKS Objectives: Feedforward.
LINEAR CLASSIFICATION. Biological inspirations  Some numbers…  The human brain contains about 10 billion nerve cells ( neurons )  Each neuron is connected.
Data Mining Practical Machine Learning Tools and Techniques Chapter 4: Algorithms: The Basic Methods Section 4.6: Linear Models Rodney Nielsen Many of.
For Wednesday No reading Homework: –Chapter 18, exercise 6.
1 Chapter 10 Introduction to Machine Learning. 2 Chapter 10 Contents (1) l Training l Rote Learning l Concept Learning l Hypotheses l General to Specific.
Decision Trees Binary output – easily extendible to multiple output classes. Takes a set of attributes for a given situation or object and outputs a yes/no.
1 Decision Tree Learning Original slides by Raymond J. Mooney University of Texas at Austin.
CS Inductive Bias1 Inductive Bias: How to generalize on novel data.
Back-Propagation Algorithm AN INTRODUCTION TO LEARNING INTERNAL REPRESENTATIONS BY ERROR PROPAGATION Presented by: Kunal Parmar UHID:
Machine Learning: Lecture 2
Classification Ensemble Methods 1
Data Mining and Decision Support
Tree and Forest Classification and Regression Tree Bagging of trees Boosting trees Random Forest.
Combining Models Foundations of Algorithms and Machine Learning (CS60020), IIT KGP, 2017: Indrajit Bhattacharya.
Machine Learning: Ensemble Methods
Chapter 7. Classification and Prediction
Deep Feedforward Networks
ECE 5424: Introduction to Machine Learning
Data Mining Lecture 11.
CSI 5388:Topics in Machine Learning
MACHINE LEARNING TECHNIQUES IN IMAGE PROCESSING
MACHINE LEARNING TECHNIQUES IN IMAGE PROCESSING
Machine Learning: Lecture 4
Machine Learning: UNIT-2 CHAPTER-1
Machine Learning: Lecture 6
Machine Learning: UNIT-3 CHAPTER-1
A task of induction to find patterns
A task of induction to find patterns
Presentation transcript:

CSI 5388:Topics in Machine Learning Inductive Learning: A Review

Course Outline Overview Theory Version Spaces Decision Trees Neural Networks Bagging Boosting

Inductive Learning : Overview Different types of inductive learning: Supervised Learning: The program attempts to infer an association between attributes and their inferred class. Concept Learning Classification Unsupervised Learning: The program attempts to infer an association between attributes but no class is assigned.: Reinforced learning. Clustering Discovery Online vs. Batch Learning  We will focus on supervised learning in batch mode.

Inductive Inference Theory (1) Given X the set of all examples. A concept C is a subset of X. A training example T is a subset of X such that some examples of T are elements of C (the positive examples) and some examples are not elements of C (the negative examples)

Inductive Inference Theory (2) Learning: {<xi,yi>}   f: X Y with i=1..n, xi T, yi  Y (={0,1}) yi= 1, if x1 is positive ( C) yi= 0, if xi is negative ( C) Goals of learning: f must be such that for all xj  X (not only  T) - f(xj) =1 si xj  C - f(xj) = 0, si xj  C Learning system

Inductive Inference Theory (3) Problem: La task or learning is not well formulated because there exist an infinite number of functions that satisfy the goal.  It is necessary to find a way to constrain the search space of f. Definitions: The set of all fs that satisfy the goal is called hypothesis space. The constraints on the hypothesis space is called the inductive bias. There are two types of inductive bias: The hypothesis space restriction bias The preference bias

Inductive Inference Theory (4) Hypothesis space restriction bias  We restrain the language of the hypothesis space. Examples: k-DNF: We restrict f to the set of Disjunctive Normal form formulas having an arbitrary number of disjunctions but at most, k conjunctive in each conjunctions. K-CNF: We restrict f to the set of Conjunctive Normal Form formulas having an arbitrary number of conjunctions but with at most, k disjunctive in each disjunction. Properties of that type of bias: Positive: Learning will by simplified (Computationally) Negative: The language can exclude the “good” hypothesis.

Inductive Inference Theory (5) Preference Bias: It is an order or unit of measure that serves as a base to a relation of preference in the hypothesis space. Examples: Occam’s razor: We prefer a simple formula for f. Principle of minimal description length (An extension of Occam’s Razor): The best hypothesis is the one that minimise the total length of the hypothesis and the description of the exceptions to this hypothesis.

Inductive Inference Theory (6) How to implement learning with these bias? Hypothesis space restriction bias: Given: A set S of training examples A set of restricted hypothesis, H Find: An hypothesis f  H that minimizes the number of incorrectly classified training examples of S.

Inductive Inference Theory (7) Preference Bias: Given: A set S of training examples An order of preference better(f1, f2) for all the hypothesis space (H) functions. Find: the best hypothesis f  H (using the “better” relation) that minimises the number of training examples S incorrectly classified. Search techniques: Heuristic search Hill Climbing Simulated Annealing et Genetic Algorithm

Inductive Inference Theory (8) When can we trust our learning algorithm? Theoretical answer Experimental answer Theoretical answer : PAC-Learning (Valiant 84) PAC-Learning provides the limit on the necessary number of example (given a certain bias) that will let us believe with a certain confidence that the results returned by the learning algorithm is approximately correct (similar to the t-test). This number of example is called sample complexity of the bias. If the number of training examples exceeds the sample complexity, we are confident of our results.

Inductive Inference Theory (9): PAC-Learning Given Pr(X) The probability distribution with which the examples are selected from X Given f, an hypothesis from the hypothesis space. Given D the set of all examples for which f and C differ. The error associated with f and the concept C is: Error(f) = xD Pr(x) f is approximately correct with an exactitude of  iff: Error(f)   f is probably approximately correct (PAC) with probability  and exactitude  if Pr(Error(f) > ) < 

Inductive Inference Theory (10): PAC-Learning Theorem: A program that returns any hypothesis consistent with the training examples is PAC if n, the number of training examples is greater than ln(/|H|)/ln(1-) where |H| represents the number of hypothesis in H. Examples: For 100 hypothesis, you need 70 examples to reduce the error under 0.1 with a probability of 0.9 For 1000 hypothesis, 90 are required For 10,000 hypothesis, 110 are required.  ln(/|H|)/ln(1-) grows slowly. That’s good!

Inductive Inference Theory (11) When can we trust our learning algorithm? - Theoretical answer Experimental answer Experimental answer : error estimation Suppose you have access to 1000 examples for a concept f. Divide the data in 2 sets: One training set One test set Train the algorithm on the training set only. Test the resulting hypothesis to have an estimation of that hypothesis on the test set.

A Taxonomy of Machine Learning Techniques: Highlight on Important Approaches Supervised Unsupervised Linear Nonlinear Single Combined Easy to Interpret Hard to Interpret Linear Regression Logistic Perceptron Bagging Boosting Random Forests Decision Rule Trees Learning Naïve k-Nearest Bayes Neighbours Multi-Layer SVM K-Means EM Self-Organizing Maps

Version Spaces: Definitions Given C1 and C2, two concepts represented by sets of examples. If C1  C2, then C1 is a specialisation of C2 and C2 is a generalisation of C1. C1 is also considered more specific than C2 Example: The set off all blue triangles is more specific than the set of all the triangles. C1 is an immediate specialisation of C2 if there is no concept that are a specialisation of C2 and a generalisation of C1. A version space define a graph where the nodes are concepts and the arcs specify that a concept is an immediate specialisation of another one. (See in class example)

Version Spaces: Overview (1) A Version Space has two limits: The general limit and the specific limit. The limits are modified after each addition of a training example. The starting general limit is simply (?,?,?); The specific limit has all the leaves of the Version Space tree. When adding a positive example all the examples of the specific limit are generalized until it is compatible with the example. When a negative example is added, the general limit examples are specialised until they are no longer compatible with the example.

Version Spaces: Overview (2) If the specific limits and the general limits are maintained with the previous rules, then a concept is guaranteed to include all the positive examples and exclude all the negative examples if they fall between the limits. General Limit more specific More general Specific Limit If f is here, it includes all examples + And exclude all examples - (See in class example)

Decision Tree: Introduction The simplest form of learning is the memorization of all the training examples. Problem: Memorization is not useful for new examples  We need to find ways to generalize beyond the training examples. Possible Solution: Instead of memorizing each attributes of each examples, we can memorize only those that distinguish between positive and negative examples. That is what the decision tree does. Notice: The same set of example can be represented by different trees. Occam’s Razor tells you to take the smallest tree.

Supervised Learning: Example Patient Attributes Class Temperature Cough Sore Throat Sinus Pain 1 37 yes no no no flu 2 39 no yes yes flu 3 38.4 no no no no flu 4 36.8 no yes no no flu 5 38.5 yes no yes flu 6 39.2 no no yes flu Goal: Learn how to predict whether a new patient with a given set of symptoms does or does not have the flu.

Decision Trees: An example Temperature High Medium Low Cough Sore Throat No Flu Yes No Yes No Flu No Flu Flu No Flu A Decision Tree for the Flu Concept

Decision tree: Construction Step 1: We choose an attribute A (= node 0) and split the example by the value of this attribute. Each of these groups correspond to a child of node 0. Step 2: For each descendant of node 0, if the examples of this descendant are homogenous (have the same class), we stop. Step 3: If the examples of this descendent are not homogenous, then we call the procedure recursively on that descendent.

Construction of Decision Trees I What is the most informative attribute? Assume: Temperature D11 D12 D1 D2 D5 D4 D6 D14 D3 D10 D8 D9 D7 D13

Construction of Decision Trees II Temperature Medium Low High What are the most informative attributes? Yes Cough and Sore Throat Assume:

Construction of Decision Trees III The informativeness of an attribute is an information-theoretic measure that corresponds to the attribute that produces the purest children nodes. This is done by minimizing the measure of entropy in the trees that the attribute split generates. The entropy and information are linked in the following way: The more there is entropy in a set S, the more information is necessary in order to guess correctly an element of this set. Info[x,y] = Entropy[x,y] = - x/(x+y) log x/(x+y) - y/(x+y) log y/(x+y)

Construction of Decision Trees IV Info[2,6]= .811 Info[3,3]= 1 Avg Tree Info = 8/14 +.811 + 6/14 * 1 = .892 Prior Info[9,5] = .940  Gain = .940 - .892 = .048 Medium Low High Yes Temperature Sore Throat No Yes Info[2,3] = .971 bits Info[4,0]= 0 bits Info[3,2]= .971 bits Avg Tree Info = 5/14 *.971 + 4/14 * 0 + 5/14 * .971 = .693 Prior Info[9,5] = .940  Gain = .940 - .693 = .247

Decision Tree: Other questions. We have to find a way to deal with attributes with continuous values or discrete values with a very large set. We have to find a way to deal with missing values. We have to find a way to deal with noise (errors) in the example’s class and in the attribute values.

Neural Network: Introduction (I) What is a neural network? It is a formalism inspired by biological systems and that is composed of units that perform simple mathematical operations in parallel. Examples of simple mathematical operation units: Addition unit Multiplication unit Threshold (Continous (example: the Sigmoïd) or not)

Multi-Layer Perceptrons: An Opaque Approach Examples: Input Units Hidden Units Output units weights Heteroassociation Autoassociation

Typically, y1=1 for positive example and y1=0 for negative example Representation in a Multi-Layer Perceptron hj=g(wji.xi) yk=g(wkj.hj) where g(x)= 1/(1+e ) Typically, y1=1 for positive example and y1=0 for negative example i j -x x1 x2 x3 x4 x5 x6 h1 h2 h3 y1 k j i wji’s wkj’s g (sigmoid): 1/2 1

Neural Network: Learning (I) The units are connected in order to create a network capable of computing complicated functions. Since the network has a sigmoid output, it implements a function f(x1,x2,x3,x4) where the output is in the range [0,1] We are interested in neural network capable of learning that function.

Learning in a Multi-Layer Perceptron I Learning consists of searching through the space of all possible matrices of weight values for a combination of weights that satisfies a database of positive and negative examples (multi-class as well as regression problems are possible). It is an optimization problem which tries to minimize the sum of square error: E= 1/2 n=1 k=1[yk-fk(x )] where N is the total number of training examples and K, the total number of output units (useful for multiclass problems) and fk is the function implemented by the neural net N K

Learning in a Multi-Layer Perceptron II The optimization problem is solved by searching the space of possible solutions by gradient. This consists of taking small steps in the direction that minimize the gradient (or derivative) of the error of the function we are trying to learn. When the gradient is zero we have reached a local minimum that we hope is also the global minimum.

Neural Network: Learning (II) Notice that a Neural Network with a set of adjustable weights represent a restricted hypothesis space corresponding to a family of functions. The size of this space can be increased or decreased by changing the number of hidden units in the network. Learning is done by a hill-climbing approach called backpropagation and is based on the paradigm of search by gradient.

Neural Network: Learning (III) The idea of search by gradient is to take small steps in the direction that minimize the gradient (or derivative) of the error of the function we are trying to learn. When the gradient is zero we have reached a local minimum that we hope is also the global minimum.

Description of Two classifier combination Schemes: - Bagging - Boosting

Combining Multiple Models The idea is the following: In order to make the outcome of automated classification more reliable, it may be a good idea to combine the decisions of several single classifiers through some sort of voting scheme Bagging and Boosting are the two most used combination schemes and they usually yield much improved results over the results of single classifiers One disadvantage of these multiple model combinations is that, as in the case of neural Networks, the learned model is hard, if not impossible, to interpret.

Bagging: Bootstrap Aggregating Algorithm Idea: perturb the composition of the data sets from which the classifier is trained. Learn a classifier from each different data set. Let these classifiers vote.  This procedure reduces the portion of the performance error caused by variance in the training set.

Boosting Boosting Algorithm Decrease the weight of the right answers  Increase the errors Idea: To build models that complement each other. A first classifier is built. Its errors are given a higher weight than its right answers so that the next classifier being built focuses on these errors, etc…