Inductive learning from imbalanced data sets
This presentation is the property of its rightful owner.
Sponsored Links
1 / 47

Inductive Learning from Imbalanced Data Sets PowerPoint PPT Presentation


  • 66 Views
  • Uploaded on
  • Presentation posted in: General

Inductive Learning from Imbalanced Data Sets. Nathalie Japkowicz, Ph.D. School of Information Technology and Engineering University of Ottawa. Inductive Learning: Definition.

Download Presentation

Inductive Learning from Imbalanced Data Sets

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Inductive learning from imbalanced data sets

Inductive Learning from Imbalanced Data Sets

Nathalie Japkowicz, Ph.D.

School of Information Technology and Engineering

University of Ottawa


Inductive learning from imbalanced data sets

Inductive Learning: Definition

Given a sequence of input/output pairs of the form <xi, yi>, where xi is a possible input, and yi is the output associated with xi:

Learn a function f such that:

  • f(xi)=yi for all i’s,

  • f makes a good guess for the outputs of inputs that it has not previously seen.

    [If f has only 2 possible outputs, f is called a concept and learning is called concept-learning.]


Inductive learning from imbalanced data sets

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

Inductive Learning: Example

Goal: Learn how to predict whether a new patient with

a given set of symptoms does or does not have the flu.


Standard assumption

Standard Assumption

  • The data sets are balanced: i.e., there are as many positive examples of the concept as there are negative ones.

  • Example: Our database of sick and healthy patients contains as many examples of sick patients as it does of healthy ones.


The standard assumption is not always correct

The Standard Assumption is not Always Correct

  • There exist many domains that do not have a balanced data set.

  • Examples:

    • Helicopter Gearbox Fault Monitoring

    • Discrimination between Earthquakes and Nuclear Explosions

    • Document Filtering

    • Detection of Oil Spills

    • Detection of Fraudulent Telephone Calls


Inductive learning from imbalanced data sets

But What is the Problem?

  • Standard learners are often biased towards the majority class.

  • That is because these classifiers attempt to reduce global quantities such as the error rate, not taking the data distribution into consideration.

  • As a result examples from the overwhelming class are well-classified whereas examples from the minority class tend to be misclassified.


Significance of the problem for machine learners data miners

Significance of the problem for Machine Learners/Data Miners

  • Two Workshops:

    • AAAI’2000 Workshop, organizers:R. Holte, N. Japkowicz, C. Ling, S. Matwin, 13 contributions

    • ICML’2003 Workshop, organizers: N. Chawla, N. Japkowicz, A. Kolcz, 16 contributions

  • Bibliography on Class Imbalance,

    • maintained by N. Japkowicz, 37 entries

  • Special Issue

    • ACM KDDSIGMOD Explorations Newsletter, editors: N. Chawla, N. Japkowicz, A. Kolcz (call for papers just came out)

  • Profile of people involved in this research:

    • Well-known researchers: e.g., F. Provost, C. Elkan, R. Holte, T. Fawcett, C. Ling, etc.


Inductive learning from imbalanced data sets

Several Common Approaches

  • At the data Level: Re-Sampling

    • Oversampling (Random or Directed)

    • Undersampling (Random or Directed)

    • Active Sampling

  • At the Algorithmic Level:

    • Adjusting the Costs

    • Adjusting the decision threshold / probabilistic estimate at the tree leaf


My contributions

Fundamental

What domain chara-cteristics aggravate the problem?

Class imbalances or small disjuncts?

Are all classifiers sensitive to class imbalances?

Which proposed solutions to the class imbalance problem are more appropriate?

New Approaches

Specialized Resampling: within-class versus between-class imbalances

One class versus two-class learning

Multiple Resampling

My Contributions


Part i fundamentals

Part I: Fundamentals

What domain characteristics aggravate the problem?

Class Imbalances or Small Disjuncts?

Are all classifiers sensitive to class imbalances?

Which proposed solutions to the class imbalance problem are more appropriate?


I i what domain characteristics aggravate the problem

+ - + - + - + -

1

0

I. I What domain characteristics aggravate the Problem?

To answer this question, I generated artificial domains that vary along three different axes:

  • The degree of concept complexity

  • The size of the training set

  • The degree of imbalance between the two classes.


I i what domain characteristics aggravate the problem1

I. I What domain characteristics aggravate the Problem?

  • I created 125 domains, each representing a different type of class imbalance, by varying the concept complexity (C), the size of the training set (S) and the degree of imbalance (I) at different rates (5 settings were used per domain characteristics).

  • I ran C5.0 [a decision tree learning algorithm] on these various imbalanced domains and plotted its error rate on each domain.

  • Each experiment was repeated 5 times and the results averaged.


Inductive learning from imbalanced data sets

Large

Imbal.

Full

balance

I. I What domain characteristics aggravate the Problem?

Error

rate

S= 1


Inductive learning from imbalanced data sets

Large

Imbal.

Full

balance

I.I What domain characteristics

aggravate the Problem?

Error

rate

S= 5


I i what domain characteristics aggravate the problem2

I. I What domain characteristics aggravate the Problem?

  • The problem is aggravated by two factors:

    • An increase in the degree of class imbalance

    • An increase in problem complexity – class imbalances do not hinder the classification of simple problems (e.g., linearly separable ones)

  • However, the problem is simultaneously mitigated by one factor:

    • The size of the training set – large training sets yield low sensitivity to class imbalances


I ii clas imbalances or small disjuncts

I.II: Clas Imbalances or Small Disjuncts?

  • Studying the training sets from the previous experiments, it can be inferred that when i and c are large, and s, small, the domain contains many very small subclusters.

  • These were also the conditions under which C5.0 performed the worst.

  • To test whether it is these small subclusters that cause performance degradation, we disregarded the value of s and set the size of all subclusters to 50 examples.


Inductive learning from imbalanced data sets

Large

Imbal.

Full

balance

I.II: Clas Imbalances or Small

Disjuncts?

High Concept Complexity: c=5

Error

rate

Previous

Experiment

This

Experiment


I ii class imbalances or small disjuncts

I.II: Class Imbalances or Small Disjuncts?

  • When all the subclusters are of size 50, even at the highest degree of concept complexity, no matter what the class imbalance is, the error is below 1%  It is negligible.

  • This suggests that it is not the class imbalance per se that causes a performance decrease, but rather, that it is the small disjunct problem created by the class imbalance (in highly complex and small-sized domains) that cause that loss of performance.


I iii are all classifiers sensitive to class imbalances

Neural Net (MLPs)

Decision Tree (C5.0)

A5

T

F

A2 A7

< 5

T

> 5

5

F

+ A5 - -+

T

F

+ -

Support Vector Machines (SVMs)

-

+

-

+

+

-

-

-

-

+

+

I.III Are all classifiers sensitive to class imbalances?


I iii are all classifiers sensitive to class imbalances1

Large

Imbal.

Full

balance

I.III Are all classifiers sensitive to class imbalances?

Error rate

S = 1; C = 3


I iii are all classifiers sensitive to class imbalances2

I.III Are all classifiers sensitive to class imbalances?

  • Decision Tree (C5.0) C5.0 is the most sensitive to class imbalances. This is because C5.0 works globally, not paying attention to specific data points.

  • Multi-Layer perceptrons (MLPs) MLPs are less prone to the class imbalance problem than C5.0. This is because of their flexibility: their solution gets adjusted by each data point in a bottom-up manner as well as by the overall data set in a top-down manner.

  • Support Vector Machines (SVMs) SVMs are even less prone to the class imbalance problem than MLPs because they are only concerned with a few support vectors, the data points located close to the boundaries.


I iv which solution is best

I.IV Which Solution is Best?

  • Random Oversampling

  • Directed Oversampling

  • Random Undersampling

  • Directed Undersampling

  • Adjusting the Costs


I iv which solution is best1

Large

Imbal.

Full

Bal.

I.IV Which Solution is Best?

Err. rate

S = 1; C = 3


Inductive learning from imbalanced data sets

I.IV Which Solution is Best?

  • Three of the five methods considered present an improvement over C5.0 at S=1 and C=3: Random oversampling, Directed oversampling and Cost-modifying.

  • Undersampling (random and directed) is not effective and can even hurt the performance.

  • Random oversampling helps quite dramatically at all complexity. Directed oversampling makes a bit of a difference by helping slightly more.

  • On the graph of the previous slide, Cost-adjusting is about as effective as Directed oversampling. Generally, however, it is found to be slightly more useful.


Part ii new approaches

Part II: New Approaches

Specialized Resampling: within-class versus between-class imbalances

One class versus two-class learning

Multiple Resampling


Ii i within class versus between class imbalances

II.I: Within-class versus Between-class Imbalances

Idea:

  • Use unsupervised learning to identify subclusters in each class separately.

  • Re-sample the subclusters of each class until no within-class imbalance and no between-class imbalance are present (although the subclusters of each class can have different sizes)


Inductive learning from imbalanced data sets

5

II.I: Within-class versus Between-class Imbalances

Symmetric

Case

Asymmetric

Case


Ii i within class vs between class imbalances experiments

II.I: Within-class vs Between- class Imbalances: Experiments

  • Imbalances

  • Random Oversampling

    • Between class imbalance eliminated

  • Guided Oversampling I (# Clusters Known)

    • Use prior knowledge of classes to guide clustering

  • Guided Oversampling II (# Clusters Unknown)

    • Let clustering algorithm determine the number of clusters


Ii i within class vs between class imbalances letters

II.I: Within-class vs Between- class Imbalances: Letters

  • Subset of the Letters dataset found at the UCI Repository

  • Positive class contains the vowels a and u

  • Negative class contains the consonants m, s, t and w.

  • All letters are distributed according to their frequency in English texts.


Ii i within class vs between class imbalances letters1

II.I: Within-class vs Between- class Imbalances: Letters


Ii i within class vs between class imbalances text classification

II.I: Within-class vs Between- class Imbalances: Text Classification

  • Reuters-21578 Dataset

  • Classifying a document according to its topic

  • Positive class is a particular topic

  • Negative class is every other topic


Ii i within class vs between class imbalances text classification1

II.I: Within-class vs Between- class Imbalances: Text Classification


Ii i within class versus between class imbalances1

II.I: Within-class versus Between-class Imbalances

Results:

  • On letter and text categorization tasks, this strategy worked better than the random over-sampling strategy.

  • Noise in the small subclusters, however, caused problems since it got too magnified.

  • This promising strategy requires more study..


Ii ii one class versus two class learning

RMLP

DMLP

Decision Tree (C5.0)

A5

T

F

A2 A7

< 5

T

> 5

5

F

+ A5 - -+

T

F

+ -

II.II One-Class versus Two-Class Learning


Ii ii one class versus two class learning1

II.II One-Class versus Two-Class Learning

Error

Rate


Ii ii one class versus two class learning2

II.II One-Class versus Two-Class Learning

  • One-Class learning is more accurate than two-class learning on two of our three domains considered and as accurate on the third.

  • It can thus be quite useful in class imbalanced situations.

  • Further comparisons with other proposed methods are required.


Ii iii multiple resampling

II.III Multiple Resampling

Idea:

  • Although the results reported here suggest that undersampling is not as useful as oversampling, other studies of ours and others (on different data sets) suggest that it can be  It shouldn’t be abandoned

  • Further experiments of ours (not reported here) suggest that rather than oversampling or undersampling until a full balance is achieved may not always be optimal  A different re-sampling rate should be used


Inductive learning from imbalanced data sets

II.III Multiple Resampling

Idea (Continued):

  • It is not possible to know, a-priori, whether a given domain favours oversampling or undersampling and what resampling rate is best.

  • Therefore, we decided to create a self-adaptive combination scheme that considers both strategies at various rates.


Ii iii multiple resampling1

Output

Oversampling Expert

Undersampl. Expert

Oversampling Classifiers

(sampled at different rates)

Undersampling Classifiers

(sampled at diff.rates)

II.III Multiple Resampling


Ii iii multiple resampling2

II.III Multiple Resampling

  • The combination scheme was compared to C4.5-Adaboost (with 20 classifiers) with respect to the FB-measures on a text classification task (Reuters-21578, Top 10 categories)

  • The FB-measure combines precision (the proportion of examples classified as positive that are truly positive) and recall (the proportion of truly positive examples that are classified as positive) in the following way:

    • F1  precision = recall

    • F2  2 * precision = recall

    • F0.5 precision = 2 * recall


Ii 3 testing the combination scheme results

II.3 Testing the Combination Scheme  Results

F-

Measure

In all cases, the mixture scheme is superior to Adaboost.

However, though it helps both recall and precision, it

helps recall more.


Summary conclusions overall goals of the research

Summary/Conclusions: Overall Goals of the research

  • This talk presented some of the work I conducted in the recent past years. In particular, I focused on the class imbalanced problem aiming at:

    • Establishing some fundamental results regarding the nature of the problem, the behaviour of different types of classifiers,and the relative performance of various previously proposed schemes for dealing with the problem.

    • Designing new methods for attacking the problem.


Summary conclusions results fundamentals

Summary/Conclusions: Results Fundamentals

  • The sensitivity of Decision Trees and Neural Networks to class imbalance increases with the domain complexity and the degree of imbalance. Training set size mitigates this pattern. SVMs are not sensitive to class imbalances [up to 1/16 imbalance].

  • Cost-Adjusting is slightly more effective than random or directed over- or under- sampling although all approaches are helpful, and directed oversampling is close to cost-adjusting.

  • The class imbalance problem may not be a problem in itself. Rather, the small disjunct problem it causes is responsible for the decay.


Summary conclusions results new approaches

Summary/Conclusions: Results, New Approaches

  • I presented three new methods very different from each other and from previously proposed schemes. They all showed promise over previously proposed approaches.

  • Approach 1: Oversampling with respect to within-class and between-class imbalances

  • Approach 2: One-class Learning

  • Approach 3: Adaptive combination scheme which combines over- and under-sampling at 10 different rates each.


Summary conclusions future work

Summary/Conclusions: Future Work

  • Expand on and study in more depth all the new proposed approaches I have described.

  • Adapt the idea of Boosting to the class imbalanced problem (with the National Institute of Health (NIH) in Washington, D.C.and Master’s Student Benjamin Wang)

  • Design novel Oversampling schemes and feature selection schemes fo Text Classification (with Ph.D. Student: Taeho Jo)


Partial bibliography

Partial Bibliography

  • "A Multiple Resampling Method for Learning from Imbalances Data Sets" , Estabrooks, A., Jo, T. and Japkowicz, N., Computational Intelligence, Volume 20, Number 1, 2004. (in press)

  • "The Class Imbalance Problem: A Systematic Study" , Japkowicz N. and Stephen, S., Intelligent Data Analysis, Volume 6, Number 5, pp. 429-450, November 2002.

  • "Supervised versus Unsupervised Binary-Learning by Feedforward Neural Networks" , Japkowicz, N., Machine Learning Volume 42, Issue 1/2, pp. 97-122, January 2001.

  • "A Mixture-of-Experts Framework for Concept-Learning from Imbalanced Data Sets" , Estabrooks A, and Japkowicz, N., Proceedings of the 2001 Intelligent Data Analysis Conference .

  • "Concept-Learning in the Presence of Between-Class and Within-Class Imbalances" , Japkowicz N., Proceedings of the Fourteenth Conference of the Canadian Society for Computational Studies of Intelligence, 2001.

  • "The Class Imbalance Problem: Significance and Strategies" , Japkowicz, N. in the Proceedings of the 2000 International Conference on Artificial Intelligence (IC-AI'2000), Volume 1, pp. 111-117


A summary of the various measures used

Actual Class

Pos

Neg

Pos

a

c

Classi-

Fied as

Neg

b

d

A Summary of the Various Measures Used

  • Error Rate:( b + c ) / ( a + b + c + d)

  • Accuracy: ( a + d ) / ( a + b + c + d)

  • Precision: P = a / ( a + c )

  • Recall: R = a / ( a + b )

  • FB-Measure: ( B2 + 1 ) P R / (B2 P + R )


  • Login