SlideShare une entreprise Scribd logo
1  sur  45
Télécharger pour lire hors ligne
Handling concept drift in data
       stream mining
Student: Manuel Martín Salvador
Supervisors: Luis M. de Campos and Silvia Acid




         Master in Soft Computing and Intelligent Systems
      Department of Computer Science and Artificial Intelligence
                       University of Granada
Who am I?
1. Current: PhD Student in Bournemouth University
2. Previous:
  ●   Computer Engineering in University of Granada
      (2004-2009)
  ●   Programmer and SCRUM Master in Fundación
      I+D del Software Libre (2009-2010)
  ●   Master in Soft Computing and Intelligent
      Systems in University of Granada (2010-2011)
  ●   Researcher in Department of Computer Science
      and Artificial Intelligence of UGR (2010-2012)
Index
1. Data streams
2. Online Learning
3. Evaluation
4. Taxonomy of methods
5. Contributions
6. MOA
7. Experimentation
8. Conclusions and future work


                                 3
Data streams
  1. Continous flow of instances.
       ●    In classification: instance = (a1 , a2 , …, an , c)
  2. Unlimited size
  3. May have changes in the underlying distribution of the
    data → concept drift




                                                                  4
Image: I. Žliobaitė thesis
Concept drifts
●   It happens when the data from a stream changes its
    probability distribution ПS1 to another ПS2. Potential
    causes:
    ●   Change in P(C)
    ●   Change in P(X|C)
    ●   Change in P(C|X)
●   Unpredictable
●   For example: spam


                                                             5
Gradual concept drift




                             6
Image: I. Žliobaitė thesis
Types of concept drifts




                              7
Image: D. Brzeziński thesis
Types of concept drifts




                              8
Image: D. Brzeziński thesis
Example: STAGGER
                          color=red   color=green    size=medium
Class=true if →              and           or              or
                         size=small   shape=cricle     size=large




                                                                    9

Image: Kolter & Maloof
Online learning (incremental)
●   Goal: incrementally learn a classifier at least as
    accurate as if it had been trained in batch
●   Requirements:
    1. Incremental
    2. Single pass
    3. Limited time and memory
    4. Any-time learning: availability of the model




                                                         10
Online learning (incremental)
●   Goal: incrementally learn a classifier at least as
    accurate as if it had been trained in batch
●   Requirements:
    1. Incremental
    2. Single pass
    3. Limited time and memory
    4. Any-time learning: availability of the model
●   Nice to have: deal with concept drift.


                                                         11
Evaluation
Several criteria:
   ●   Time → seconds
   ●   Memory → RAM/hour
   ●   Generalizability of the model → % success
   ●   Detecting concept drift → detected drifts, false
       positives and false negatives




                                                          12
Evaluation
Several criteria:
   ●   Time → seconds
   ●   Memory → RAM/hour
   ●   Generalizability of the model → % success
   ●   Detecting concept drift → detected drifts, false
       positives and false negatives


Problem: we can't use the traditional techniques for
evaluation (i.e. cross validation). → Solution: new
strategies.
                                                          13
Evaluation: prequential
●   Test y training each instance.                     errors
                                                 processed instances

●   Is a pessimistic estimator: holds the errors since the
    beginning of the stream. → Solution: forgetting
    mechanisms (sliding window and fading factor).
                       errors inside window
     Sliding window:       window size                                 …...


                        currentError⋅errors
     Fading factor:    1⋅processed instances                         …...




    Advantages: All instances are used for training.
                Useful for data streams with concept drifts.                  14
Evaluation: comparing




         Which method is better?   15
Evaluation: comparing




       Which method is better? → AUC   16
Evaluation: drift detection
●   First detected: correct.
●   Following detected: false positives.
●   Not detected: false negatives.
●   Distance = correct – real.




                                           17
Taxonomy of methods
                            ● Change detectors
  Learners with             ● Training windows
  triggers                  ● Adaptive sampling



   ✔ Advantages: can be used by any classification algorithm.
   ✗ Disadvantages: usually, once detected a change, they discard the old
     model and relearn a new one.




                                                                            18
Taxonomy of methods
                            ● Change detectors
  Learners with             ● Training windows
  triggers                  ● Adaptive sampling



   ✔ Advantages: can be used by any classification algorithm.
   ✗ Disadvantages: usually, once detected a change, they discard the old
     model and relearn a new one.

                            ● Adaptive ensembles
  Evolving                  ● Instance weighting

  Learners                  ● Feature space

                            ● Base model specific


   ✔ Advantages: they continually adapt the model over time
   ✗ Disadvantages: they don't detect changes.                              19
Contributions
●   Taxonomy: triggers → change detectors
    ●   MoreErrorsMoving
    ●   MaxMoving
    ●   Moving Average
        –   Heuristic 1
        –   Heuristic 2
        –   Hybrid heuristic: 1+2

●   P-chart with 3 levels: normal, warning and drift

                                                       20
Contributions: MoreErrorsMoving
●   n latest results of classification are monitored →
    History = {ei , ei+1 , …, ei+n} (i.e. 0,0,1,1)

●   History error rate:
●   The consecutive declines are controlled
●   At each time step:
    ●   If ci - 1 < ci (more errors) → declines++
    ●   If ci - 1 > ci (less errors) → declines=0
    ●   If ci - 1 = ci (same) → declines don't change
                                                         21
Contributions: MoreErrorsMoving
●   If consecutive declines > k → enable Warning
●   If consecutive declines > k+d → enable Drift
●   Otherwise → enable Normality




                                                   22
Contributions: MoreErrorsMoving
                        History = 8
                        Warning = 2
                        Drift = 4




                        Detected
                        drifts:
                        46 y 88




                        Distance to real drifts:
                        46-40 = 6
                        88-80 = 8



                                               23
Contributions: MaxMoving
●   n latest success accumulated rates are monitored since
    the last change
    ●   History={ai , ai+1 , …, ai+n} (i.e. H={2/5, 3/6, 4/7, 4/8})
●   History maximum:
●   The consecutive declines are controlled
●   At each time step:
    ●   If mi < mi - 1 → declines++
    ●   If mi > mi - 1 → declines=0
    ●   If mi = mi - 1 → declines don't change
                                                                      24
Contributions: MaxMoving
                           History = 4
                           Warning = 4
                           Drift = 8




                           Detected
                           drifts:
                           52 y 90




                           Distance to real drifts:
                           52-40 = 12
                           90-80 = 10



                                                  25
Contributions: Moving Average
      Goal: to smooth accuracy rates for better detection.




                                                             26
Contributions: Moving Average 1
●   m latest success accumulated rates are smoothed → Simple
    moving average (unweighted mean)




●   The consecutive declines are controlled
●   At each time step:
    ●   If st < st - 1 → declines++
    ●   If st > st - 1 → declines = 0
    ●   If st = st - 1 → declines don't change
                                                               27
Contributions: Moving Average 1
                         Smooth = 32
                         Warning = 4
                         Drift = 8




                         Detected
                         drifts:
                         49 y 91




                         Distance to real drifts:
                         49-40 = 9
                         91-80 = 11



                                                28
Contributions: Moving Average 2
●   History of size n with the smoothed success rates →
    History={si, si+1, …, si+n}
●   History maximum:
●   Difference between st and mt – 1 is monitored
●   At each time step:
    ●   If mt – 1 - st > u → enable Warning
    ●   If mt – 1 - st > v → enable Drift
    ●   Otherwise → enable Normality
●   Suitable for abrupt changes
                                                          29
Contributions: Moving Average 2
                         Smooth = 4
                         History = 32
                         Warning = 2%
                         Drift = 4%


                         Detected
                         drifts:
                         44 y 87




                         Distance to real drifts:
                         44-40 = 4
                         87-80 = 7



                                                30
Contributions: Moving Average Hybrid
 ●   Heuristics 1 and 2 are combined:
     ●   If Warning1 or Warning2 → enable Warning
     ●   If Drift1 or Drift2 → enable Drift
     ●   Otherwise → enable Normality




                                                    31
MOA: Massive Online Analysis
●   Framework for data stream mining. Algorithms for
    classification, regression and clustering.
●   University of Waikato → WEKA integration.
●   Graphical user interface and command line.
●   Data stream generators.
●   Evaluation methods (holdout and prequential).
●   Open source and free.



                                      http://moa.cs.waikato.ac.nz
                                                                    32
Experimentation
●   Our data streams:
    ●   5 synthetic with abrupt changes
    ●   2 synthetic with gradual changes
    ●   1 synthetic with noise
    ●   3 with real data




                                           33
Experimentation
●   Our data streams:
    ●   5 synthetic with abrupt changes
    ●   2 synthetic with gradual changes
    ●   1 synthetic with noise
    ●   3 with real data
●   Classification algorithm: Naive Bayes




                                            34
Experimentation
●   Our data streams:
    ●   5 synthetic with abrupt changes
    ●   2 synthetic with gradual changes
    ●   1 synthetic with noise
    ●   3 with real data
●   Classification algorithm: Naive Bayes
●   Detection methods:
        No detection         MovingAverage1
        MoreErrorsMoving     MovingAverage2
        MaxMoving            MovingAverageH
        DDM                  EDDM             35
Experimentation
●   Parameters tuning:
    ●   4 streams y 5 methods → 288 experiments




                                                  36
Experimentation
●   Parameters tuning:
    ●   4 streams y 5 methods → 288 experiments
●   Comparative study:
    ●   11 streams y 8+1 methods → 99 experiments




                                                    37
Experimentation
●   Parameters tuning:
    ●   4 streams y 5 methods → 288 experiments
●   Comparative study:
    ●   11 streams y 8+1 methods → 99 experiments
●   Evaluation: prequential




                                                    38
Experimentation
●   Parameters tuning:
    ●   4 streams y 5 methods → 288 experiments
●   Comparative study:
    ●   11 streams y 8+1 methods → 99 experiments
●   Evaluation: prequential
●   Measurements:
    ●   AUC: area under the curve of accumulated success
        rates
    ●   Number of correct drifts
    ●   Distance to drifts
    ●   False positives and false negatives                39
Experimentation: Agrawal




                           40
Experimentation: Electricity




                               41
Conclussions of experimentation
1. With abrupt changes:
  ●   More victories: DDM and MovingAverageH
  ●   Best in mean: MoreErrorsMoving → very responsive
2. With gradual changes:
  ●   Best: DDM and EDDM
  ●   Problem: many false positives → parameter tunning only with abrupt
      changes
3. With noise:
  ●   Only winner: DDM
  ●   Problem: noise sensitive → parameter tunning only with no-noise data
4. Real data:
  ●   Best: MovingAverage1 and MovingAverageH

                                                                             42
Conclussions of this work
1. Our methods are competitive, although sensitive to
  the parameters → Dynamic fit
2. Evaluation is not trivial → Standardization is needed
3. Large field of application in industry
4. Hot topic: last papers from 2011 + conferences




                                                           43
Future work
1. Dynamic adjustment of parameters.
2. Measuring the abruptness of change for:
  ●   Using differents forgetting mechanisms.
  ●   Setting the degree of change of the model.
3. Develop an incremental learning algorithm which
  allows partial changes of the model when a drift is
  detected.




                                                        44
Thank you




            45

Contenu connexe

Tendances

Image anomaly detection with generative adversarial networks
Image anomaly detection with generative adversarial networksImage anomaly detection with generative adversarial networks
Image anomaly detection with generative adversarial networksSakshiSingh480
 
Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...
Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...
Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...Analytics India Magazine
 
Transformers in Vision: From Zero to Hero
Transformers in Vision: From Zero to HeroTransformers in Vision: From Zero to Hero
Transformers in Vision: From Zero to HeroBill Liu
 
Classification Algorithm.
Classification Algorithm.Classification Algorithm.
Classification Algorithm.Megha Sharma
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep LearningOswald Campesato
 
Deep Generative Models
Deep Generative Models Deep Generative Models
Deep Generative Models Chia-Wen Cheng
 
Introduction to Few shot learning
Introduction to Few shot learningIntroduction to Few shot learning
Introduction to Few shot learningRidge-i, Inc.
 
Reinforcement learning, Q-Learning
Reinforcement learning, Q-LearningReinforcement learning, Q-Learning
Reinforcement learning, Q-LearningKuppusamy P
 
Few shot learning/ one shot learning/ machine learning
Few shot learning/ one shot learning/ machine learningFew shot learning/ one shot learning/ machine learning
Few shot learning/ one shot learning/ machine learningﺁﺻﻒ ﻋﻠﯽ ﻣﯿﺮ
 
Object classification using CNN & VGG16 Model (Keras and Tensorflow)
Object classification using CNN & VGG16 Model (Keras and Tensorflow) Object classification using CNN & VGG16 Model (Keras and Tensorflow)
Object classification using CNN & VGG16 Model (Keras and Tensorflow) Lalit Jain
 
Support Vector Machine ppt presentation
Support Vector Machine ppt presentationSupport Vector Machine ppt presentation
Support Vector Machine ppt presentationAyanaRukasar
 
Simple Introduction to AutoEncoder
Simple Introduction to AutoEncoderSimple Introduction to AutoEncoder
Simple Introduction to AutoEncoderJun Lang
 
Transfer learning-presentation
Transfer learning-presentationTransfer learning-presentation
Transfer learning-presentationBushra Jbawi
 
Generative adversarial networks
Generative adversarial networksGenerative adversarial networks
Generative adversarial networks남주 김
 
Image classification using CNN
Image classification using CNNImage classification using CNN
Image classification using CNNNoura Hussein
 
Object Detection with Transformers
Object Detection with TransformersObject Detection with Transformers
Object Detection with TransformersDatabricks
 
Focal loss for dense object detection
Focal loss for dense object detectionFocal loss for dense object detection
Focal loss for dense object detectionDaeHeeKim31
 

Tendances (20)

Image anomaly detection with generative adversarial networks
Image anomaly detection with generative adversarial networksImage anomaly detection with generative adversarial networks
Image anomaly detection with generative adversarial networks
 
Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...
Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...
Explainable deep learning with applications in Healthcare By Sunil Kumar Vupp...
 
Transformers in Vision: From Zero to Hero
Transformers in Vision: From Zero to HeroTransformers in Vision: From Zero to Hero
Transformers in Vision: From Zero to Hero
 
Classification Algorithm.
Classification Algorithm.Classification Algorithm.
Classification Algorithm.
 
Cnn
CnnCnn
Cnn
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning
 
Supervised Machine Learning
Supervised Machine LearningSupervised Machine Learning
Supervised Machine Learning
 
Deep Generative Models
Deep Generative Models Deep Generative Models
Deep Generative Models
 
Introduction to Few shot learning
Introduction to Few shot learningIntroduction to Few shot learning
Introduction to Few shot learning
 
Reinforcement learning, Q-Learning
Reinforcement learning, Q-LearningReinforcement learning, Q-Learning
Reinforcement learning, Q-Learning
 
Ensemble methods
Ensemble methods Ensemble methods
Ensemble methods
 
Few shot learning/ one shot learning/ machine learning
Few shot learning/ one shot learning/ machine learningFew shot learning/ one shot learning/ machine learning
Few shot learning/ one shot learning/ machine learning
 
Object classification using CNN & VGG16 Model (Keras and Tensorflow)
Object classification using CNN & VGG16 Model (Keras and Tensorflow) Object classification using CNN & VGG16 Model (Keras and Tensorflow)
Object classification using CNN & VGG16 Model (Keras and Tensorflow)
 
Support Vector Machine ppt presentation
Support Vector Machine ppt presentationSupport Vector Machine ppt presentation
Support Vector Machine ppt presentation
 
Simple Introduction to AutoEncoder
Simple Introduction to AutoEncoderSimple Introduction to AutoEncoder
Simple Introduction to AutoEncoder
 
Transfer learning-presentation
Transfer learning-presentationTransfer learning-presentation
Transfer learning-presentation
 
Generative adversarial networks
Generative adversarial networksGenerative adversarial networks
Generative adversarial networks
 
Image classification using CNN
Image classification using CNNImage classification using CNN
Image classification using CNN
 
Object Detection with Transformers
Object Detection with TransformersObject Detection with Transformers
Object Detection with Transformers
 
Focal loss for dense object detection
Focal loss for dense object detectionFocal loss for dense object detection
Focal loss for dense object detection
 

Similaire à Handling concept drift in data stream mining

How to easily find the optimal solution without exhaustive search using Genet...
How to easily find the optimal solution without exhaustive search using Genet...How to easily find the optimal solution without exhaustive search using Genet...
How to easily find the optimal solution without exhaustive search using Genet...Viach Kakovskyi
 
Machine learning using matlab.pdf
Machine learning using matlab.pdfMachine learning using matlab.pdf
Machine learning using matlab.pdfppvijith
 
adversarial robustness lecture
adversarial robustness lectureadversarial robustness lecture
adversarial robustness lectureMuhammadAhmedShah2
 
Optimization of power systems - old and new tools
Optimization of power systems - old and new toolsOptimization of power systems - old and new tools
Optimization of power systems - old and new toolsOlivier Teytaud
 
Tools for Discrete Time Control; Application to Power Systems
Tools for Discrete Time Control; Application to Power SystemsTools for Discrete Time Control; Application to Power Systems
Tools for Discrete Time Control; Application to Power SystemsOlivier Teytaud
 
Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)
Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)
Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)Universitat Politècnica de Catalunya
 
Causality without headaches
Causality without headachesCausality without headaches
Causality without headachesBenoît Rostykus
 
Online machine learning in Streaming Applications
Online machine learning in Streaming ApplicationsOnline machine learning in Streaming Applications
Online machine learning in Streaming ApplicationsStavros Kontopoulos
 
Dimensionality Reduction | Machine Learning | CloudxLab
Dimensionality Reduction | Machine Learning | CloudxLabDimensionality Reduction | Machine Learning | CloudxLab
Dimensionality Reduction | Machine Learning | CloudxLabCloudxLab
 
Online Machine Learning: introduction and examples
Online Machine Learning:  introduction and examplesOnline Machine Learning:  introduction and examples
Online Machine Learning: introduction and examplesFelipe
 
Training DNN Models - II.pptx
Training DNN Models - II.pptxTraining DNN Models - II.pptx
Training DNN Models - II.pptxPrabhuSelvaraj15
 
Aaa ped-16-Unsupervised Learning: clustering
Aaa ped-16-Unsupervised Learning: clusteringAaa ped-16-Unsupervised Learning: clustering
Aaa ped-16-Unsupervised Learning: clusteringAminaRepo
 
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...sleepy_yoshi
 
Beyond Churn Prediction : An Introduction to uplift modeling
Beyond Churn Prediction : An Introduction to uplift modelingBeyond Churn Prediction : An Introduction to uplift modeling
Beyond Churn Prediction : An Introduction to uplift modelingPierre Gutierrez
 
Jay Yagnik at AI Frontiers : A History Lesson on AI
Jay Yagnik at AI Frontiers : A History Lesson on AIJay Yagnik at AI Frontiers : A History Lesson on AI
Jay Yagnik at AI Frontiers : A History Lesson on AIAI Frontiers
 
Making BIG DATA smaller
Making BIG DATA smallerMaking BIG DATA smaller
Making BIG DATA smallerTony Tran
 
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...PyData
 
DRL #2-3 - Multi-Armed Bandits .pptx.pdf
DRL #2-3 - Multi-Armed Bandits .pptx.pdfDRL #2-3 - Multi-Armed Bandits .pptx.pdf
DRL #2-3 - Multi-Armed Bandits .pptx.pdfGulamSarwar31
 
Overview on Optimization algorithms in Deep Learning
Overview on Optimization algorithms in Deep LearningOverview on Optimization algorithms in Deep Learning
Overview on Optimization algorithms in Deep LearningKhang Pham
 

Similaire à Handling concept drift in data stream mining (20)

How to easily find the optimal solution without exhaustive search using Genet...
How to easily find the optimal solution without exhaustive search using Genet...How to easily find the optimal solution without exhaustive search using Genet...
How to easily find the optimal solution without exhaustive search using Genet...
 
Machine learning using matlab.pdf
Machine learning using matlab.pdfMachine learning using matlab.pdf
Machine learning using matlab.pdf
 
adversarial robustness lecture
adversarial robustness lectureadversarial robustness lecture
adversarial robustness lecture
 
Optimization of power systems - old and new tools
Optimization of power systems - old and new toolsOptimization of power systems - old and new tools
Optimization of power systems - old and new tools
 
Tools for Discrete Time Control; Application to Power Systems
Tools for Discrete Time Control; Application to Power SystemsTools for Discrete Time Control; Application to Power Systems
Tools for Discrete Time Control; Application to Power Systems
 
Meetup_FGVA_Uplift @ Dataiku
Meetup_FGVA_Uplift @ DataikuMeetup_FGVA_Uplift @ Dataiku
Meetup_FGVA_Uplift @ Dataiku
 
Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)
Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)
Optimization (DLAI D4L1 2017 UPC Deep Learning for Artificial Intelligence)
 
Causality without headaches
Causality without headachesCausality without headaches
Causality without headaches
 
Online machine learning in Streaming Applications
Online machine learning in Streaming ApplicationsOnline machine learning in Streaming Applications
Online machine learning in Streaming Applications
 
Dimensionality Reduction | Machine Learning | CloudxLab
Dimensionality Reduction | Machine Learning | CloudxLabDimensionality Reduction | Machine Learning | CloudxLab
Dimensionality Reduction | Machine Learning | CloudxLab
 
Online Machine Learning: introduction and examples
Online Machine Learning:  introduction and examplesOnline Machine Learning:  introduction and examples
Online Machine Learning: introduction and examples
 
Training DNN Models - II.pptx
Training DNN Models - II.pptxTraining DNN Models - II.pptx
Training DNN Models - II.pptx
 
Aaa ped-16-Unsupervised Learning: clustering
Aaa ped-16-Unsupervised Learning: clusteringAaa ped-16-Unsupervised Learning: clustering
Aaa ped-16-Unsupervised Learning: clustering
 
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
 
Beyond Churn Prediction : An Introduction to uplift modeling
Beyond Churn Prediction : An Introduction to uplift modelingBeyond Churn Prediction : An Introduction to uplift modeling
Beyond Churn Prediction : An Introduction to uplift modeling
 
Jay Yagnik at AI Frontiers : A History Lesson on AI
Jay Yagnik at AI Frontiers : A History Lesson on AIJay Yagnik at AI Frontiers : A History Lesson on AI
Jay Yagnik at AI Frontiers : A History Lesson on AI
 
Making BIG DATA smaller
Making BIG DATA smallerMaking BIG DATA smaller
Making BIG DATA smaller
 
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
 
DRL #2-3 - Multi-Armed Bandits .pptx.pdf
DRL #2-3 - Multi-Armed Bandits .pptx.pdfDRL #2-3 - Multi-Armed Bandits .pptx.pdf
DRL #2-3 - Multi-Armed Bandits .pptx.pdf
 
Overview on Optimization algorithms in Deep Learning
Overview on Optimization algorithms in Deep LearningOverview on Optimization algorithms in Deep Learning
Overview on Optimization algorithms in Deep Learning
 

Plus de Manuel Martín

Automatizando el aprendizaje basado en datos
Automatizando el aprendizaje basado en datosAutomatizando el aprendizaje basado en datos
Automatizando el aprendizaje basado en datosManuel Martín
 
Modelling Multi-Component Predictive Systems as Petri Nets
Modelling Multi-Component Predictive Systems as Petri NetsModelling Multi-Component Predictive Systems as Petri Nets
Modelling Multi-Component Predictive Systems as Petri NetsManuel Martín
 
Brand engagement with mobile gamification apps from a developer perspective
Brand engagement with mobile gamification apps from a developer perspectiveBrand engagement with mobile gamification apps from a developer perspective
Brand engagement with mobile gamification apps from a developer perspectiveManuel Martín
 
Effects of change propagation resulting from adaptive preprocessing in multic...
Effects of change propagation resulting from adaptive preprocessing in multic...Effects of change propagation resulting from adaptive preprocessing in multic...
Effects of change propagation resulting from adaptive preprocessing in multic...Manuel Martín
 
Improving transport timetables usability for mobile devices
Improving transport timetables usability for mobile devicesImproving transport timetables usability for mobile devices
Improving transport timetables usability for mobile devicesManuel Martín
 
Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?Manuel Martín
 
Towards Automatic Composition of Multicomponent Predictive Systems
Towards Automatic Composition of Multicomponent Predictive SystemsTowards Automatic Composition of Multicomponent Predictive Systems
Towards Automatic Composition of Multicomponent Predictive SystemsManuel Martín
 
From sensor readings to prediction: on the process of developing practical so...
From sensor readings to prediction: on the process of developing practical so...From sensor readings to prediction: on the process of developing practical so...
From sensor readings to prediction: on the process of developing practical so...Manuel Martín
 
Quick presentation for the OpenML workshop in Eindhoven 2014
Quick presentation for the OpenML workshop in Eindhoven 2014Quick presentation for the OpenML workshop in Eindhoven 2014
Quick presentation for the OpenML workshop in Eindhoven 2014Manuel Martín
 
Online Detection of Shutdown Periods in Chemical Plants: A Case Study
Online Detection of Shutdown Periods in Chemical Plants: A Case StudyOnline Detection of Shutdown Periods in Chemical Plants: A Case Study
Online Detection of Shutdown Periods in Chemical Plants: A Case StudyManuel Martín
 
Artificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data AnalysisArtificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data AnalysisManuel Martín
 
Minería de secuencias de datos
Minería de secuencias de datosMinería de secuencias de datos
Minería de secuencias de datosManuel Martín
 
Minería de secuencias de datos
Minería de secuencias de datosMinería de secuencias de datos
Minería de secuencias de datosManuel Martín
 
AndalucíaPeople: Un sistema de recomendación para sitios de ocio de Andalucía
AndalucíaPeople: Un sistema de recomendación para sitios de ocio de AndalucíaAndalucíaPeople: Un sistema de recomendación para sitios de ocio de Andalucía
AndalucíaPeople: Un sistema de recomendación para sitios de ocio de AndalucíaManuel Martín
 
Operaciones Colectivas en MPI
Operaciones Colectivas en MPIOperaciones Colectivas en MPI
Operaciones Colectivas en MPIManuel Martín
 
Introducción a GNU/Linux
Introducción a GNU/LinuxIntroducción a GNU/Linux
Introducción a GNU/LinuxManuel Martín
 
Presentación Día de la Libertad del Software 2011
Presentación Día de la Libertad del Software 2011Presentación Día de la Libertad del Software 2011
Presentación Día de la Libertad del Software 2011Manuel Martín
 
Presentacion Taller de Introducción a Linux SFD2010
Presentacion Taller de Introducción a Linux SFD2010Presentacion Taller de Introducción a Linux SFD2010
Presentacion Taller de Introducción a Linux SFD2010Manuel Martín
 

Plus de Manuel Martín (20)

Hogar (Des)Conectado
Hogar (Des)ConectadoHogar (Des)Conectado
Hogar (Des)Conectado
 
Automatizando el aprendizaje basado en datos
Automatizando el aprendizaje basado en datosAutomatizando el aprendizaje basado en datos
Automatizando el aprendizaje basado en datos
 
Modelling Multi-Component Predictive Systems as Petri Nets
Modelling Multi-Component Predictive Systems as Petri NetsModelling Multi-Component Predictive Systems as Petri Nets
Modelling Multi-Component Predictive Systems as Petri Nets
 
Brand engagement with mobile gamification apps from a developer perspective
Brand engagement with mobile gamification apps from a developer perspectiveBrand engagement with mobile gamification apps from a developer perspective
Brand engagement with mobile gamification apps from a developer perspective
 
Effects of change propagation resulting from adaptive preprocessing in multic...
Effects of change propagation resulting from adaptive preprocessing in multic...Effects of change propagation resulting from adaptive preprocessing in multic...
Effects of change propagation resulting from adaptive preprocessing in multic...
 
Improving transport timetables usability for mobile devices
Improving transport timetables usability for mobile devicesImproving transport timetables usability for mobile devices
Improving transport timetables usability for mobile devices
 
Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?
 
Towards Automatic Composition of Multicomponent Predictive Systems
Towards Automatic Composition of Multicomponent Predictive SystemsTowards Automatic Composition of Multicomponent Predictive Systems
Towards Automatic Composition of Multicomponent Predictive Systems
 
From sensor readings to prediction: on the process of developing practical so...
From sensor readings to prediction: on the process of developing practical so...From sensor readings to prediction: on the process of developing practical so...
From sensor readings to prediction: on the process of developing practical so...
 
Quick presentation for the OpenML workshop in Eindhoven 2014
Quick presentation for the OpenML workshop in Eindhoven 2014Quick presentation for the OpenML workshop in Eindhoven 2014
Quick presentation for the OpenML workshop in Eindhoven 2014
 
Online Detection of Shutdown Periods in Chemical Plants: A Case Study
Online Detection of Shutdown Periods in Chemical Plants: A Case StudyOnline Detection of Shutdown Periods in Chemical Plants: A Case Study
Online Detection of Shutdown Periods in Chemical Plants: A Case Study
 
Artificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data AnalysisArtificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data Analysis
 
Minería de secuencias de datos
Minería de secuencias de datosMinería de secuencias de datos
Minería de secuencias de datos
 
Minería de secuencias de datos
Minería de secuencias de datosMinería de secuencias de datos
Minería de secuencias de datos
 
AndalucíaPeople: Un sistema de recomendación para sitios de ocio de Andalucía
AndalucíaPeople: Un sistema de recomendación para sitios de ocio de AndalucíaAndalucíaPeople: Un sistema de recomendación para sitios de ocio de Andalucía
AndalucíaPeople: Un sistema de recomendación para sitios de ocio de Andalucía
 
Decompiladores
DecompiladoresDecompiladores
Decompiladores
 
Operaciones Colectivas en MPI
Operaciones Colectivas en MPIOperaciones Colectivas en MPI
Operaciones Colectivas en MPI
 
Introducción a GNU/Linux
Introducción a GNU/LinuxIntroducción a GNU/Linux
Introducción a GNU/Linux
 
Presentación Día de la Libertad del Software 2011
Presentación Día de la Libertad del Software 2011Presentación Día de la Libertad del Software 2011
Presentación Día de la Libertad del Software 2011
 
Presentacion Taller de Introducción a Linux SFD2010
Presentacion Taller de Introducción a Linux SFD2010Presentacion Taller de Introducción a Linux SFD2010
Presentacion Taller de Introducción a Linux SFD2010
 

Dernier

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Dernier (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Handling concept drift in data stream mining

  • 1. Handling concept drift in data stream mining Student: Manuel Martín Salvador Supervisors: Luis M. de Campos and Silvia Acid Master in Soft Computing and Intelligent Systems Department of Computer Science and Artificial Intelligence University of Granada
  • 2. Who am I? 1. Current: PhD Student in Bournemouth University 2. Previous: ● Computer Engineering in University of Granada (2004-2009) ● Programmer and SCRUM Master in Fundación I+D del Software Libre (2009-2010) ● Master in Soft Computing and Intelligent Systems in University of Granada (2010-2011) ● Researcher in Department of Computer Science and Artificial Intelligence of UGR (2010-2012)
  • 3. Index 1. Data streams 2. Online Learning 3. Evaluation 4. Taxonomy of methods 5. Contributions 6. MOA 7. Experimentation 8. Conclusions and future work 3
  • 4. Data streams 1. Continous flow of instances. ● In classification: instance = (a1 , a2 , …, an , c) 2. Unlimited size 3. May have changes in the underlying distribution of the data → concept drift 4 Image: I. Žliobaitė thesis
  • 5. Concept drifts ● It happens when the data from a stream changes its probability distribution ПS1 to another ПS2. Potential causes: ● Change in P(C) ● Change in P(X|C) ● Change in P(C|X) ● Unpredictable ● For example: spam 5
  • 6. Gradual concept drift 6 Image: I. Žliobaitė thesis
  • 7. Types of concept drifts 7 Image: D. Brzeziński thesis
  • 8. Types of concept drifts 8 Image: D. Brzeziński thesis
  • 9. Example: STAGGER color=red color=green size=medium Class=true if → and or or size=small shape=cricle size=large 9 Image: Kolter & Maloof
  • 10. Online learning (incremental) ● Goal: incrementally learn a classifier at least as accurate as if it had been trained in batch ● Requirements: 1. Incremental 2. Single pass 3. Limited time and memory 4. Any-time learning: availability of the model 10
  • 11. Online learning (incremental) ● Goal: incrementally learn a classifier at least as accurate as if it had been trained in batch ● Requirements: 1. Incremental 2. Single pass 3. Limited time and memory 4. Any-time learning: availability of the model ● Nice to have: deal with concept drift. 11
  • 12. Evaluation Several criteria: ● Time → seconds ● Memory → RAM/hour ● Generalizability of the model → % success ● Detecting concept drift → detected drifts, false positives and false negatives 12
  • 13. Evaluation Several criteria: ● Time → seconds ● Memory → RAM/hour ● Generalizability of the model → % success ● Detecting concept drift → detected drifts, false positives and false negatives Problem: we can't use the traditional techniques for evaluation (i.e. cross validation). → Solution: new strategies. 13
  • 14. Evaluation: prequential ● Test y training each instance. errors processed instances ● Is a pessimistic estimator: holds the errors since the beginning of the stream. → Solution: forgetting mechanisms (sliding window and fading factor). errors inside window Sliding window: window size …... currentError⋅errors Fading factor: 1⋅processed instances …... Advantages: All instances are used for training. Useful for data streams with concept drifts. 14
  • 15. Evaluation: comparing Which method is better? 15
  • 16. Evaluation: comparing Which method is better? → AUC 16
  • 17. Evaluation: drift detection ● First detected: correct. ● Following detected: false positives. ● Not detected: false negatives. ● Distance = correct – real. 17
  • 18. Taxonomy of methods ● Change detectors Learners with ● Training windows triggers ● Adaptive sampling ✔ Advantages: can be used by any classification algorithm. ✗ Disadvantages: usually, once detected a change, they discard the old model and relearn a new one. 18
  • 19. Taxonomy of methods ● Change detectors Learners with ● Training windows triggers ● Adaptive sampling ✔ Advantages: can be used by any classification algorithm. ✗ Disadvantages: usually, once detected a change, they discard the old model and relearn a new one. ● Adaptive ensembles Evolving ● Instance weighting Learners ● Feature space ● Base model specific ✔ Advantages: they continually adapt the model over time ✗ Disadvantages: they don't detect changes. 19
  • 20. Contributions ● Taxonomy: triggers → change detectors ● MoreErrorsMoving ● MaxMoving ● Moving Average – Heuristic 1 – Heuristic 2 – Hybrid heuristic: 1+2 ● P-chart with 3 levels: normal, warning and drift 20
  • 21. Contributions: MoreErrorsMoving ● n latest results of classification are monitored → History = {ei , ei+1 , …, ei+n} (i.e. 0,0,1,1) ● History error rate: ● The consecutive declines are controlled ● At each time step: ● If ci - 1 < ci (more errors) → declines++ ● If ci - 1 > ci (less errors) → declines=0 ● If ci - 1 = ci (same) → declines don't change 21
  • 22. Contributions: MoreErrorsMoving ● If consecutive declines > k → enable Warning ● If consecutive declines > k+d → enable Drift ● Otherwise → enable Normality 22
  • 23. Contributions: MoreErrorsMoving History = 8 Warning = 2 Drift = 4 Detected drifts: 46 y 88 Distance to real drifts: 46-40 = 6 88-80 = 8 23
  • 24. Contributions: MaxMoving ● n latest success accumulated rates are monitored since the last change ● History={ai , ai+1 , …, ai+n} (i.e. H={2/5, 3/6, 4/7, 4/8}) ● History maximum: ● The consecutive declines are controlled ● At each time step: ● If mi < mi - 1 → declines++ ● If mi > mi - 1 → declines=0 ● If mi = mi - 1 → declines don't change 24
  • 25. Contributions: MaxMoving History = 4 Warning = 4 Drift = 8 Detected drifts: 52 y 90 Distance to real drifts: 52-40 = 12 90-80 = 10 25
  • 26. Contributions: Moving Average Goal: to smooth accuracy rates for better detection. 26
  • 27. Contributions: Moving Average 1 ● m latest success accumulated rates are smoothed → Simple moving average (unweighted mean) ● The consecutive declines are controlled ● At each time step: ● If st < st - 1 → declines++ ● If st > st - 1 → declines = 0 ● If st = st - 1 → declines don't change 27
  • 28. Contributions: Moving Average 1 Smooth = 32 Warning = 4 Drift = 8 Detected drifts: 49 y 91 Distance to real drifts: 49-40 = 9 91-80 = 11 28
  • 29. Contributions: Moving Average 2 ● History of size n with the smoothed success rates → History={si, si+1, …, si+n} ● History maximum: ● Difference between st and mt – 1 is monitored ● At each time step: ● If mt – 1 - st > u → enable Warning ● If mt – 1 - st > v → enable Drift ● Otherwise → enable Normality ● Suitable for abrupt changes 29
  • 30. Contributions: Moving Average 2 Smooth = 4 History = 32 Warning = 2% Drift = 4% Detected drifts: 44 y 87 Distance to real drifts: 44-40 = 4 87-80 = 7 30
  • 31. Contributions: Moving Average Hybrid ● Heuristics 1 and 2 are combined: ● If Warning1 or Warning2 → enable Warning ● If Drift1 or Drift2 → enable Drift ● Otherwise → enable Normality 31
  • 32. MOA: Massive Online Analysis ● Framework for data stream mining. Algorithms for classification, regression and clustering. ● University of Waikato → WEKA integration. ● Graphical user interface and command line. ● Data stream generators. ● Evaluation methods (holdout and prequential). ● Open source and free. http://moa.cs.waikato.ac.nz 32
  • 33. Experimentation ● Our data streams: ● 5 synthetic with abrupt changes ● 2 synthetic with gradual changes ● 1 synthetic with noise ● 3 with real data 33
  • 34. Experimentation ● Our data streams: ● 5 synthetic with abrupt changes ● 2 synthetic with gradual changes ● 1 synthetic with noise ● 3 with real data ● Classification algorithm: Naive Bayes 34
  • 35. Experimentation ● Our data streams: ● 5 synthetic with abrupt changes ● 2 synthetic with gradual changes ● 1 synthetic with noise ● 3 with real data ● Classification algorithm: Naive Bayes ● Detection methods: No detection MovingAverage1 MoreErrorsMoving MovingAverage2 MaxMoving MovingAverageH DDM EDDM 35
  • 36. Experimentation ● Parameters tuning: ● 4 streams y 5 methods → 288 experiments 36
  • 37. Experimentation ● Parameters tuning: ● 4 streams y 5 methods → 288 experiments ● Comparative study: ● 11 streams y 8+1 methods → 99 experiments 37
  • 38. Experimentation ● Parameters tuning: ● 4 streams y 5 methods → 288 experiments ● Comparative study: ● 11 streams y 8+1 methods → 99 experiments ● Evaluation: prequential 38
  • 39. Experimentation ● Parameters tuning: ● 4 streams y 5 methods → 288 experiments ● Comparative study: ● 11 streams y 8+1 methods → 99 experiments ● Evaluation: prequential ● Measurements: ● AUC: area under the curve of accumulated success rates ● Number of correct drifts ● Distance to drifts ● False positives and false negatives 39
  • 42. Conclussions of experimentation 1. With abrupt changes: ● More victories: DDM and MovingAverageH ● Best in mean: MoreErrorsMoving → very responsive 2. With gradual changes: ● Best: DDM and EDDM ● Problem: many false positives → parameter tunning only with abrupt changes 3. With noise: ● Only winner: DDM ● Problem: noise sensitive → parameter tunning only with no-noise data 4. Real data: ● Best: MovingAverage1 and MovingAverageH 42
  • 43. Conclussions of this work 1. Our methods are competitive, although sensitive to the parameters → Dynamic fit 2. Evaluation is not trivial → Standardization is needed 3. Large field of application in industry 4. Hot topic: last papers from 2011 + conferences 43
  • 44. Future work 1. Dynamic adjustment of parameters. 2. Measuring the abruptness of change for: ● Using differents forgetting mechanisms. ● Setting the degree of change of the model. 3. Develop an incremental learning algorithm which allows partial changes of the model when a drift is detected. 44
  • 45. Thank you 45