From 1dc910ff058fbaa933337678e80d144e07100f42 Mon Sep 17 00:00:00 2001 From: mhjensen Date: Sat, 2 Nov 2019 11:27:24 +0100 Subject: [PATCH] Updating decision trees --- .../html/._DecisionTrees-bs000.html | 127 +- .../html/._DecisionTrees-bs001.html | 125 +- .../html/._DecisionTrees-bs002.html | 128 +- .../html/._DecisionTrees-bs003.html | 125 +- .../html/._DecisionTrees-bs004.html | 125 +- .../html/._DecisionTrees-bs005.html | 125 +- .../html/._DecisionTrees-bs006.html | 125 +- .../html/._DecisionTrees-bs007.html | 125 +- .../html/._DecisionTrees-bs008.html | 125 +- .../html/._DecisionTrees-bs009.html | 125 +- .../html/._DecisionTrees-bs010.html | 125 +- .../html/._DecisionTrees-bs011.html | 125 +- .../html/._DecisionTrees-bs012.html | 125 +- .../html/._DecisionTrees-bs013.html | 125 +- .../html/._DecisionTrees-bs014.html | 125 +- .../html/._DecisionTrees-bs015.html | 125 +- .../html/._DecisionTrees-bs016.html | 125 +- .../html/._DecisionTrees-bs017.html | 171 +-- .../html/._DecisionTrees-bs018.html | 198 +-- .../html/._DecisionTrees-bs019.html | 200 +-- .../html/._DecisionTrees-bs020.html | 190 ++- .../html/._DecisionTrees-bs021.html | 359 ++--- .../html/._DecisionTrees-bs022.html | 234 +-- .../html/._DecisionTrees-bs023.html | 211 ++- .../html/._DecisionTrees-bs024.html | 327 ++++- .../html/._DecisionTrees-bs025.html | 178 ++- .../html/._DecisionTrees-bs026.html | 247 ++-- .../html/._DecisionTrees-bs027.html | 159 +- .../html/._DecisionTrees-bs028.html | 152 +- .../html/._DecisionTrees-bs029.html | 208 ++- .../html/._DecisionTrees-bs030.html | 160 +- .../html/._DecisionTrees-bs031.html | 154 +- .../html/._DecisionTrees-bs032.html | 184 ++- .../html/._DecisionTrees-bs033.html | 189 ++- .../html/._DecisionTrees-bs034.html | 201 ++- .../html/._DecisionTrees-bs035.html | 182 +-- .../html/._DecisionTrees-bs036.html | 184 ++- .../html/._DecisionTrees-bs037.html | 188 ++- .../html/._DecisionTrees-bs038.html | 188 ++- .../DecisionTrees/html/DecisionTrees-bs.html | 127 +- .../html/DecisionTrees-reveal.html | 123 +- .../html/DecisionTrees-solarized.html | 184 ++- doc/pub/DecisionTrees/html/DecisionTrees.html | 184 ++- .../DecisionTrees/ipynb/DecisionTrees.ipynb | 1308 +++-------------- .../ipynb/ipynb-DecisionTrees-src.tar.gz | Bin 195 -> 195 bytes .../pdf/DecisionTrees-minted.pdf | Bin 268642 -> 274455 bytes doc/pub/Regression/ipynb/Regression.ipynb | 32 +- doc/src/DecisionTrees/DecisionTrees.do.txt | 65 +- 48 files changed, 4469 insertions(+), 4148 deletions(-) diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html index 71dfb146f..ec2e98fd3 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -210,7 +233,7 @@ MathJax.Hub.Config({
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

    -

    Nov 1, 2019

    +

    Nov 2, 2019


    @@ -234,7 +257,7 @@ MathJax.Hub.Config({

  • 9
  • 10
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs001.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs001.html index 564622280..faef31394 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs001.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs001.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -239,7 +262,7 @@ given some assumptions, make predictions about the target feature value
  • 10
  • 11
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs002.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs002.html index a656feab8..f9b5ef95f 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs002.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs002.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -193,6 +216,9 @@ MathJax.Hub.Config({

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    +

    +Figure to come here. +

    @@ -211,7 +237,7 @@ MathJax.Hub.Config({

  • 11
  • 12
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs003.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs003.html index 3b71a3c6c..a927e32dc 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs003.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs003.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -225,7 +248,7 @@ node.
  • 12
  • 13
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs004.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs004.html index 6241edf93..667e72b4b 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs004.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs004.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -226,7 +249,7 @@ Then we are essentially done!
  • 13
  • 14
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs005.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs005.html index fd01cc25e..578b184c6 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs005.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs005.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -305,7 +328,7 @@ plt.show()
  • 14
  • 15
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs006.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs006.html index f4928d223..c5f8301d4 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs006.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs006.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -238,7 +261,7 @@ within box \( j \).
  • 15
  • 16
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs007.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs007.html index c95e0e19f..b6521d733 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs007.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs007.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -230,7 +253,7 @@ better tree in some future step.
  • 16
  • 17
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs008.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs008.html index 3fa62eb1f..f4cf44cdb 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs008.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs008.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -263,7 +286,7 @@ region contains more than five observations.
  • 17
  • 18
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs009.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs009.html index e029c1c2a..9b05825f6 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs009.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs009.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -232,7 +255,7 @@ parameter \( \alpha \).
  • 18
  • 19
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs010.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs010.html index 6429bb8bb..6fead1309 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs010.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs010.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -245,7 +268,7 @@ subtree corresponding to \( \alpha \).
  • 19
  • 20
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs011.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs011.html index 6f3e89514..95e3b593b 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs011.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs011.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -241,7 +264,7 @@ MathJax.Hub.Config({
  • 20
  • 21
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs012.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs012.html index d990bf268..56a8b4c24 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs012.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs012.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -233,7 +256,7 @@ fall into that region.
  • 21
  • 22
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs013.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs013.html index 7a5788c32..00541fd4e 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs013.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs013.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -238,7 +261,7 @@ than is the classification error rate.
  • 22
  • 23
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs014.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs014.html index 04481483a..adaad6832 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs014.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs014.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -264,7 +287,7 @@ $$
  • 23
  • 24
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs015.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs015.html index 852f360a6..e061afb47 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs015.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs015.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -255,7 +278,7 @@ os.system(cmd)
  • 24
  • 25
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs016.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs016.html index 42c56ab71..f071e4f4e 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs016.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs016.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -246,7 +269,7 @@ os.system(cmd)
  • 25
  • 26
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs017.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs017.html index 2bcfc46bd..cdc844132 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs017.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs017.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,48 +214,16 @@ MathJax.Hub.Config({ -

    Computing the Gini index

    +

    Algorithms for Setting up Decision Trees

    +Two algorithms stand out in the set up of decision trees: -

    -The example we will look at is a classical one in many Machine -Learning applications. Based on various meteorological features, we -have several so-called attributes which decide whether we at the end -will do some outdoor activity like skiing, going for a bike ride etc -etc. The table here contains the feautures outlook, temperature, -humidity and wind. The target or output is whether we ride -(True=1) or whether we do something else that day (False=0). The -attributes for each feature are then sunny, overcast and rain for the -outlook, hot, cold and mild for temperature, high and normal for -humidity and weak and strong for wind. +

      +
    1. The CART (Classification And Regression Tree) algorithm for both classification and regression
    2. +
    3. The ID3 algorithm based on the computation of the information gain for classification
    4. +
    -

    -The table here summarizes the various attributes and +We discuss both algorithms with applications here. The popular library -Scikit-Learn_ uses the CART algorithm. For classification problems you can use either the gini index or the entropy to split a tree in two branches. -

    -
    - - - - - - - - - - - - - - - - - - - - -
    Day Outlook Temperature Humidity Wind Ride
    1 Sunny Hot High Weak 0
    2 Sunny Hot High Strong 1
    3 Overcast Hot High Weak 1
    4 Rain Mild High Weak 1
    5 Rain Cool Normal Weak 1
    6 Rain Cool Normal Strong 0
    7 Overcast Cool Normal Strong 1
    8 Sunny Mild High Weak 0
    9 Sunny Cool Normal Weak 1
    10 Rain Mild Normal Weak 1
    11 Sunny Mild Normal Strong 1
    12 Overcast Mild High Strong 1
    13 Overcast Hot Normal Weak 1
    14 Rain Mild High Strong 0
    -
    -

    @@ -259,7 +250,7 @@ The table here summarizes the various attributes and

  • 26
  • 27
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs018.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs018.html index 84d46cc6c..839564a4e 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs018.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs018.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,79 +214,8 @@ MathJax.Hub.Config({ -

    Simple Python Code to read in Data and perform Classification

    +

    The CART algorithm for Classification

    -

    - - -

    # Common imports
    -import numpy as np
    -import pandas as pd
    -import matplotlib.pyplot as plt
    -from sklearn.tree import DecisionTreeClassifier
    -from sklearn.model_selection import train_test_split
    -from sklearn.tree import export_graphviz
    -from sklearn.preprocessing import StandardScaler, OneHotEncoder
    -from sklearn.compose import ColumnTransformer
    -from IPython.display import Image 
    -from pydot import graph_from_dot_data
    -import os
    -
    -# Where to save the figures and data files
    -PROJECT_ROOT_DIR = "Results"
    -FIGURE_ID = "Results/FigureFiles"
    -DATA_ID = "DataFiles/"
    -
    -if not os.path.exists(PROJECT_ROOT_DIR):
    -    os.mkdir(PROJECT_ROOT_DIR)
    -
    -if not os.path.exists(FIGURE_ID):
    -    os.makedirs(FIGURE_ID)
    -
    -if not os.path.exists(DATA_ID):
    -    os.makedirs(DATA_ID)
    -
    -def image_path(fig_id):
    -    return os.path.join(FIGURE_ID, fig_id)
    -
    -def data_path(dat_id):
    -    return os.path.join(DATA_ID, dat_id)
    -
    -def save_fig(fig_id):
    -    plt.savefig(image_path(fig_id) + ".png", format='png')
    -
    -infile = open(data_path("rideclass.csv"),'r')
    -
    -# Read the experimental data with Pandas
    -from IPython.display import display
    -ridedata = pd.read_csv(infile,names = ('Outlook','Temperature','Humidity','Wind','Ride'))
    -ridedata = pd.DataFrame(ridedata)
    -
    -# Features and targets
    -X = ridedata.loc[:, ridedata.columns != 'Ride'].values
    -y = ridedata.loc[:, ridedata.columns == 'Ride'].values
    -
    -# Create the encoder.
    -encoder = OneHotEncoder(handle_unknown="ignore")
    -# Assume for simplicity all features are categorical.
    -encoder.fit(X)    
    -# Apply the encoder.
    -X = encoder.transform(X)
    -print(X)
    -# Then do a Classification tree
    -tree_clf = DecisionTreeClassifier(max_depth=2)
    -tree_clf.fit(X, y)
    -print("Train set accuracy with Decision Tree: {:.2f}".format(tree_clf.score(X,y)))
    -#transfer to a decision tree graph
    -export_graphviz(
    -    tree_clf,
    -    out_file="DataFiles/ride.dot",
    -    rounded=True,
    -    filled=True
    -)
    -cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
    -os.system(cmd)
    -

    @@ -290,7 +242,7 @@ os.system(cmd)

  • 27
  • 28
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs019.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs019.html index 0c7d2dc4a..d493197a8 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs019.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs019.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,81 +214,8 @@ MathJax.Hub.Config({ -

    Computing the Gini Factor

    +

    The CART algorithm for Regression

    -

    -The above functions (gini, entropy and misclassification error) are -important components of the so-called CART algorithm. We will discuss -this algorithm below after we have discussed the information gain -algorithm ID3. - -

    -In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc. - -

    - - -

    # Split a dataset based on an attribute and an attribute value
    -def test_split(index, value, dataset):
    -	left, right = list(), list()
    -	for row in dataset:
    -		if row[index] < value:
    -			left.append(row)
    -		else:
    -			right.append(row)
    -	return left, right
    - 
    -# Calculate the Gini index for a split dataset
    -def gini_index(groups, classes):
    -	# count all samples at split point
    -	n_instances = float(sum([len(group) for group in groups]))
    -	# sum weighted Gini index for each group
    -	gini = 0.0
    -	for group in groups:
    -		size = float(len(group))
    -		# avoid divide by zero
    -		if size == 0:
    -			continue
    -		score = 0.0
    -		# score the group based on the score for each class
    -		for class_val in classes:
    -			p = [row[-1] for row in group].count(class_val) / size
    -			score += p * p
    -		# weight the group score by its relative size
    -		gini += (1.0 - score) * (size / n_instances)
    -	return gini
    -
    -# Select the best split point for a dataset
    -def get_split(dataset):
    -	class_values = list(set(row[-1] for row in dataset))
    -	b_index, b_value, b_score, b_groups = 999, 999, 999, None
    -	for index in range(len(dataset[0])-1):
    -		for row in dataset:
    -			groups = test_split(index, row[index], dataset)
    -			gini = gini_index(groups, class_values)
    -			print('X%d < %.3f Gini=%.3f' % ((index+1), row[index], gini))
    -			if gini < b_score:
    -				b_index, b_value, b_score, b_groups = index, row[index], gini, groups
    -	return {'index':b_index, 'value':b_value, 'groups':b_groups}
    - 
    -dataset = [[0,0,0,0,0],
    -            [0,0,0,1,1],
    -            [1,0,0,0,1],
    -            [2,1,0,0,1],
    -            [2,2,1,0,1],
    -            [2,2,1,1,0],
    -            [1,2,1,1,1],
    -            [0,1,0,0,0],
    -            [0,2,1,0,1],
    -            [2,1,1,0,1],
    -            [0,1,1,1,1],
    -            [1,1,0,1,1],
    -            [1,0,1,0,1],
    -            [2,1,0,1,0]]
    -
    -split = get_split(dataset)
    -print('Split: [X%d < %.3f]' % ((split['index']+1), split['value']))
    -

    @@ -292,7 +242,7 @@ split = get_split(dataset)

  • 28
  • 29
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs020.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs020.html index 5e0032142..bde376c17 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs020.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs020.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,39 +214,48 @@ MathJax.Hub.Config({ -

    Entropy and the ID3 algorithm

    +

    Computing the Gini index

    -ID3, learns decision trees by constructing -them topdown, beginning with the question which attribute should be tested at the root of the tree? - -

      -
    1. Each instance attribute is evaluated using a statistical test to determine how well it alone classifies the training examples.
    2. -
    3. The best attribute is selected and used as the test at the root node of the tree.
    4. -
    5. A descendant of the root node is then created for each possible value of this attribute.
    6. -
    7. Training examples are sorted to the appropriate descendant node.
    8. -
    9. The entire process is then repeated using the training examples associated with each descendant node to select the best attribute to test at that point in the tree.
    10. -
    11. This forms a greedy search for an acceptable decision tree, in which the algorithm never backtracks to reconsider earlier choices.
    12. -
    - -The ID3 algorithm selects, which attribute to test at each node in the -tree. +The example we will look at is a classical one in many Machine +Learning applications. Based on various meteorological features, we +have several so-called attributes which decide whether we at the end +will do some outdoor activity like skiing, going for a bike ride etc +etc. The table here contains the feautures outlook, temperature, +humidity and wind. The target or output is whether we ride +(True=1) or whether we do something else that day (False=0). The +attributes for each feature are then sunny, overcast and rain for the +outlook, hot, cold and mild for temperature, high and normal for +humidity and weak and strong for wind.

    -We would like to select the attribute that is most useful for classifying -examples. - -

    -What is a good quantitative measure of the worth of an attribute? - -

    -Information gain measures how well a given attribute separates the -training examples according to their target classification. - -

    -The ID3 algorithm uses this information gain measure to select among the candidate -attributes at each step while growing the tree. +The table here summarizes the various attributes and +

    +
    + + + + + + + + + + + + + + + + + + + + +
    Day Outlook Temperature Humidity Wind Ride
    1 Sunny Hot High Weak 0
    2 Sunny Hot High Strong 1
    3 Overcast Hot High Weak 1
    4 Rain Mild High Weak 1
    5 Rain Cool Normal Weak 1
    6 Rain Cool Normal Strong 0
    7 Overcast Cool Normal Strong 1
    8 Sunny Mild High Weak 0
    9 Sunny Cool Normal Weak 1
    10 Rain Mild Normal Weak 1
    11 Sunny Mild Normal Strong 1
    12 Overcast Mild High Strong 1
    13 Overcast Hot Normal Weak 1
    14 Rain Mild High Strong 0
    +
    +

    @@ -250,7 +282,7 @@ attributes at each step while growing the tree.

  • 29
  • 30
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs021.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs021.html index e67e33add..dd583f072 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs021.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs021.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,198 +214,78 @@ MathJax.Hub.Config({ -

    Implementing the ID3 Algorithm

    +

    Simple Python Code to read in Data and perform Classification

    -

    import re
    -import math
    -from collections import deque
    +
    # Common imports
    +import numpy as np
    +import pandas as pd
    +import matplotlib.pyplot as plt
    +from sklearn.tree import DecisionTreeClassifier
    +from sklearn.model_selection import train_test_split
    +from sklearn.tree import export_graphviz
    +from sklearn.preprocessing import StandardScaler, OneHotEncoder
    +from sklearn.compose import ColumnTransformer
    +from IPython.display import Image 
    +from pydot import graph_from_dot_data
    +import os
     
    -# x is examples in training set
    -# y is set of targets
    -# label is target attributes
    -# Node is a class which has properties values, childs, and next
    -# root is top node in the decision tree
    +# Where to save the figures and data files
    +PROJECT_ROOT_DIR = "Results"
    +FIGURE_ID = "Results/FigureFiles"
    +DATA_ID = "DataFiles/"
     
    -class Node(object):
    -	def __init__(self):
    -		self.value = None
    -		self.next = None
    -		self.childs = None
    +if not os.path.exists(PROJECT_ROOT_DIR):
    +    os.mkdir(PROJECT_ROOT_DIR)
     
    -# Simple class of Decision Tree
    -# Aimed for who want to learn Decision Tree, so it is not optimized
    -class DecisionTree(object):
    -	def __init__(self, sample, attributes, labels):
    -		self.sample = sample
    -		self.attributes = attributes
    -		self.labels = labels
    -		self.labelCodes = None
    -		self.labelCodesCount = None
    -		self.initLabelCodes()
    -		# print(self.labelCodes)
    -		self.root = None
    -		self.entropy = self.getEntropy([x for x in range(len(self.labels))])
    +if not os.path.exists(FIGURE_ID):
    +    os.makedirs(FIGURE_ID)
     
    -	def initLabelCodes(self):
    -		self.labelCodes = []
    -		self.labelCodesCount = []
    -		for l in self.labels:
    -			if l not in self.labelCodes:
    -				self.labelCodes.append(l)
    -				self.labelCodesCount.append(0)
    -			self.labelCodesCount[self.labelCodes.index(l)] += 1
    +if not os.path.exists(DATA_ID):
    +    os.makedirs(DATA_ID)
     
    -	def getLabelCodeId(self, sampleId):
    -		return self.labelCodes.index(self.labels[sampleId])
    +def image_path(fig_id):
    +    return os.path.join(FIGURE_ID, fig_id)
     
    -	def getAttributeValues(self, sampleIds, attributeId):
    -		vals = []
    -		for sid in sampleIds:
    -			val = self.sample[sid][attributeId]
    -			if val not in vals:
    -				vals.append(val)
    -		# print(vals)
    -		return vals
    +def data_path(dat_id):
    +    return os.path.join(DATA_ID, dat_id)
     
    -	def getEntropy(self, sampleIds):
    -		entropy = 0
    -		labelCount = [0] * len(self.labelCodes)
    -		for sid in sampleIds:
    -			labelCount[self.getLabelCodeId(sid)] += 1
    -		# print("-ge", labelCount)
    -		for lv in labelCount:
    -			# print(lv)
    -			if lv != 0:
    -				entropy += -lv/len(sampleIds) * math.log(lv/len(sampleIds), 2)
    -			else:
    -				entropy += 0
    -		return entropy
    +def save_fig(fig_id):
    +    plt.savefig(image_path(fig_id) + ".png", format='png')
     
    -	def getDominantLabel(self, sampleIds):
    -		labelCodesCount = [0] * len(self.labelCodes)
    -		for sid in sampleIds:
    -			labelCodesCount[self.labelCodes.index(self.labels[sid])] += 1
    -		return self.labelCodes[labelCodesCount.index(max(labelCodesCount))]
    +infile = open(data_path("rideclass.csv"),'r')
     
    -	def getInformationGain(self, sampleIds, attributeId):
    -		gain = self.getEntropy(sampleIds)
    -		attributeVals = []
    -		attributeValsCount = []
    -		attributeValsIds = []
    -		for sid in sampleIds:
    -			val = self.sample[sid][attributeId]
    -			if val not in attributeVals:
    -				attributeVals.append(val)
    -				attributeValsCount.append(0)
    -				attributeValsIds.append([])
    -			vid = attributeVals.index(val)
    -			attributeValsCount[vid] += 1
    -			attributeValsIds[vid].append(sid)
    -		# print("-gig", self.attributes[attributeId])
    -		for vc, vids in zip(attributeValsCount, attributeValsIds):
    -			# print("-gig", vids)
    -			gain -= vc/len(sampleIds) * self.getEntropy(vids)
    -		return gain
    +# Read the experimental data with Pandas
    +from IPython.display import display
    +ridedata = pd.read_csv(infile,names = ('Outlook','Temperature','Humidity','Wind','Ride'))
    +ridedata = pd.DataFrame(ridedata)
     
    -	def getAttributeMaxInformationGain(self, sampleIds, attributeIds):
    -		attributesEntropy = [0] * len(attributeIds)
    -		for i, attId in zip(range(len(attributeIds)), attributeIds):
    -			attributesEntropy[i] = self.getInformationGain(sampleIds, attId)
    -		maxId = attributeIds[attributesEntropy.index(max(attributesEntropy))]
    -		return self.attributes[maxId], maxId
    +# Features and targets
    +X = ridedata.loc[:, ridedata.columns != 'Ride'].values
    +y = ridedata.loc[:, ridedata.columns == 'Ride'].values
     
    -	def isSingleLabeled(self, sampleIds):
    -		label = self.labels[sampleIds[0]]
    -		for sid in sampleIds:
    -			if self.labels[sid] != label:
    -				return False
    -		return True
    -
    -	def getLabel(self, sampleId):
    -		return self.labels[sampleId]
    -
    -	def id3(self):
    -		sampleIds = [x for x in range(len(self.sample))]
    -		attributeIds = [x for x in range(len(self.attributes))]
    -		self.root = self.id3Recv(sampleIds, attributeIds, self.root)
    -
    -	def id3Recv(self, sampleIds, attributeIds, root):
    -		root = Node() # Initialize current root
    -		if self.isSingleLabeled(sampleIds):
    -			root.value = self.labels[sampleIds[0]]
    -			return root
    -		# print(attributeIds)
    -		if len(attributeIds) == 0:
    -			root.value = self.getDominantLabel(sampleIds)
    -			return root
    -		bestAttrName, bestAttrId = self.getAttributeMaxInformationGain(
    -			sampleIds, attributeIds)
    -		# print(bestAttrName)
    -		root.value = bestAttrName
    -		root.childs = []  # Create list of children
    -		for value in self.getAttributeValues(sampleIds, bestAttrId):
    -			# print(value)
    -			child = Node()
    -			child.value = value
    -			root.childs.append(child)  # Append new child node to current
    -									   # root
    -			childSampleIds = []
    -			for sid in sampleIds:
    -				if self.sample[sid][bestAttrId] == value:
    -					childSampleIds.append(sid)
    -			if len(childSampleIds) == 0:
    -				child.next = self.getDominantLabel(sampleIds)
    -			else:
    -				# print(bestAttrName, bestAttrId)
    -				# print(attributeIds)
    -				if len(attributeIds) > 0 and bestAttrId in attributeIds:
    -					toRemove = attributeIds.index(bestAttrId)
    -					attributeIds.pop(toRemove)
    -				child.next = self.id3Recv(
    -					childSampleIds, attributeIds, child.next)
    -		return root
    -
    -	def printTree(self):
    -		if self.root:
    -			roots = deque()
    -			roots.append(self.root)
    -			while len(roots) > 0:
    -				root = roots.popleft()
    -				print(root.value)
    -				if root.childs:
    -					for child in root.childs:
    -						print('({})'.format(child.value))
    -						roots.append(child.next)
    -				elif root.next:
    -					print(root.next)
    -
    -
    -def test():
    -	f = open('DataFiles/rideclass.csv')
    -	attributes = f.readline().split(',')
    -	attributes = attributes[1:len(attributes)-1]
    -	print(attributes)
    -	sample = f.readlines()
    -	f.close()
    -	for i in range(len(sample)):
    -		sample[i] = re.sub('\d+,', '', sample[i])
    -		sample[i] = sample[i].strip().split(',')
    -	labels = []
    -	for s in sample:
    -		labels.append(s.pop())
    -	# print(sample)
    -	# print(labels)
    -	decisionTree = DecisionTree(sample, attributes, labels)
    -	print("System entropy {}".format(decisionTree.entropy))
    -	decisionTree.id3()
    -	decisionTree.printTree()
    -
    -
    -if __name__ == '__main__':
    -	test()
    +# Create the encoder.
    +encoder = OneHotEncoder(handle_unknown="ignore")
    +# Assume for simplicity all features are categorical.
    +encoder.fit(X)    
    +# Apply the encoder.
    +X = encoder.transform(X)
    +print(X)
    +# Then do a Classification tree
    +tree_clf = DecisionTreeClassifier(max_depth=2)
    +tree_clf.fit(X, y)
    +print("Train set accuracy with Decision Tree: {:.2f}".format(tree_clf.score(X,y)))
    +#transfer to a decision tree graph
    +export_graphviz(
    +    tree_clf,
    +    out_file="DataFiles/ride.dot",
    +    rounded=True,
    +    filled=True
    +)
    +cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
    +os.system(cmd)
     

    @@ -410,7 +313,7 @@ MathJax.Hub.Config({

  • 30
  • 31
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs022.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs022.html index cab8de1df..3aa96b7f6 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs022.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs022.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,51 +214,80 @@ MathJax.Hub.Config({ -

    Cancer Data again now with Decision Trees and other Methods

    +

    Computing the Gini Factor

    + +

    +The above functions (gini, entropy and misclassification error) are +important components of the so-called CART algorithm. We will discuss +this algorithm below after we have discussed the information gain +algorithm ID3. + +

    +In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc. +

    -

    import matplotlib.pyplot as plt
    -import numpy as np
    -from sklearn.model_selection import  train_test_split 
    -from sklearn.datasets import load_breast_cancer
    -from sklearn.svm import SVC
    -from sklearn.linear_model import LogisticRegression
    -from sklearn.tree import DecisionTreeClassifier
    +
    # Split a dataset based on an attribute and an attribute value
    +def test_split(index, value, dataset):
    +	left, right = list(), list()
    +	for row in dataset:
    +		if row[index] < value:
    +			left.append(row)
    +		else:
    +			right.append(row)
    +	return left, right
    + 
    +# Calculate the Gini index for a split dataset
    +def gini_index(groups, classes):
    +	# count all samples at split point
    +	n_instances = float(sum([len(group) for group in groups]))
    +	# sum weighted Gini index for each group
    +	gini = 0.0
    +	for group in groups:
    +		size = float(len(group))
    +		# avoid divide by zero
    +		if size == 0:
    +			continue
    +		score = 0.0
    +		# score the group based on the score for each class
    +		for class_val in classes:
    +			p = [row[-1] for row in group].count(class_val) / size
    +			score += p * p
    +		# weight the group score by its relative size
    +		gini += (1.0 - score) * (size / n_instances)
    +	return gini
     
    -# Load the data
    -cancer = load_breast_cancer()
    +# Select the best split point for a dataset
    +def get_split(dataset):
    +	class_values = list(set(row[-1] for row in dataset))
    +	b_index, b_value, b_score, b_groups = 999, 999, 999, None
    +	for index in range(len(dataset[0])-1):
    +		for row in dataset:
    +			groups = test_split(index, row[index], dataset)
    +			gini = gini_index(groups, class_values)
    +			print('X%d < %.3f Gini=%.3f' % ((index+1), row[index], gini))
    +			if gini < b_score:
    +				b_index, b_value, b_score, b_groups = index, row[index], gini, groups
    +	return {'index':b_index, 'value':b_value, 'groups':b_groups}
    + 
    +dataset = [[0,0,0,0,0],
    +            [0,0,0,1,1],
    +            [1,0,0,0,1],
    +            [2,1,0,0,1],
    +            [2,2,1,0,1],
    +            [2,2,1,1,0],
    +            [1,2,1,1,1],
    +            [0,1,0,0,0],
    +            [0,2,1,0,1],
    +            [2,1,1,0,1],
    +            [0,1,1,1,1],
    +            [1,1,0,1,1],
    +            [1,0,1,0,1],
    +            [2,1,0,1,0]]
     
    -X_train, X_test, y_train, y_test = train_test_split(cancer.data,cancer.target,random_state=0)
    -print(X_train.shape)
    -print(X_test.shape)
    -# Logistic Regression
    -logreg = LogisticRegression(solver='lbfgs')
    -logreg.fit(X_train, y_train)
    -print("Test set accuracy with Logistic Regression: {:.2f}".format(logreg.score(X_test,y_test)))
    -# Support vector machine
    -svm = SVC(gamma='auto', C=100)
    -svm.fit(X_train, y_train)
    -print("Test set accuracy with SVM: {:.2f}".format(svm.score(X_test,y_test)))
    -# Decision Trees
    -deep_tree_clf = DecisionTreeClassifier(max_depth=None)
    -deep_tree_clf.fit(X_train, y_train)
    -print("Test set accuracy with Decision Trees: {:.2f}".format(deep_tree_clf.score(X_test,y_test)))
    -#now scale the data
    -from sklearn.preprocessing import StandardScaler
    -scaler = StandardScaler()
    -scaler.fit(X_train)
    -X_train_scaled = scaler.transform(X_train)
    -X_test_scaled = scaler.transform(X_test)
    -# Logistic Regression
    -logreg.fit(X_train_scaled, y_train)
    -print("Test set accuracy Logistic Regression with scaled data: {:.2f}".format(logreg.score(X_test_scaled,y_test)))
    -# Support Vector Machine
    -svm.fit(X_train_scaled, y_train)
    -print("Test set accuracy SVM with scaled data: {:.2f}".format(logreg.score(X_test_scaled,y_test)))
    -# Decision Trees
    -deep_tree_clf.fit(X_train_scaled, y_train)
    -print("Test set accuracy with Decision Trees and scaled data: {:.2f}".format(deep_tree_clf.score(X_test_scaled,y_test)))
    +split = get_split(dataset)
    +print('Split: [X%d < %.3f]' % ((split['index']+1), split['value']))
     

    @@ -263,7 +315,7 @@ deep_tree_clf.fit(X_train_scaled, y_train)

  • 31
  • 32
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs023.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs023.html index 9ba0bc5d6..81650dfee 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs023.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs023.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,75 +214,39 @@ MathJax.Hub.Config({ -

    Another example, the moons again

    +

    Entropy and the ID3 algorithm

    +

    +ID3, learns decision trees by constructing +them topdown, beginning with the question which attribute should be tested at the root of the tree? - -

    from __future__ import division, print_function, unicode_literals
    +
      +
    1. Each instance attribute is evaluated using a statistical test to determine how well it alone classifies the training examples.
    2. +
    3. The best attribute is selected and used as the test at the root node of the tree.
    4. +
    5. A descendant of the root node is then created for each possible value of this attribute.
    6. +
    7. Training examples are sorted to the appropriate descendant node.
    8. +
    9. The entire process is then repeated using the training examples associated with each descendant node to select the best attribute to test at that point in the tree.
    10. +
    11. This forms a greedy search for an acceptable decision tree, in which the algorithm never backtracks to reconsider earlier choices.
    12. +
    -# Common imports -import numpy as np -import os +The ID3 algorithm selects, which attribute to test at each node in the +tree. -# to make this notebook's output stable across runs -np.random.seed(42) +

    +We would like to select the attribute that is most useful for classifying +examples. -# To plot pretty figures -import matplotlib -import matplotlib.pyplot as plt -from matplotlib.colors import ListedColormap -plt.rcParams['axes.labelsize'] = 14 -plt.rcParams['xtick.labelsize'] = 12 -plt.rcParams['ytick.labelsize'] = 12 +

    +What is a good quantitative measure of the worth of an attribute? +

    +Information gain measures how well a given attribute separates the +training examples according to their target classification. -from sklearn.svm import SVC -from sklearn import datasets -from sklearn.tree import DecisionTreeClassifier -from sklearn.datasets import make_moons -from sklearn.tree import export_graphviz +

    +The ID3 algorithm uses this information gain measure to select among the candidate +attributes at each step while growing the tree. -Xm, ym = make_moons(n_samples=100, noise=0.25, random_state=53) - -deep_tree_clf1 = DecisionTreeClassifier(random_state=42) -deep_tree_clf2 = DecisionTreeClassifier(min_samples_leaf=4, random_state=42) -deep_tree_clf1.fit(Xm, ym) -deep_tree_clf2.fit(Xm, ym) - - -def plot_decision_boundary(clf, X, y, axes=[0, 7.5, 0, 3], iris=True, legend=False, plot_training=True): - x1s = np.linspace(axes[0], axes[1], 100) - x2s = np.linspace(axes[2], axes[3], 100) - x1, x2 = np.meshgrid(x1s, x2s) - X_new = np.c_[x1.ravel(), x2.ravel()] - y_pred = clf.predict(X_new).reshape(x1.shape) - custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0']) - plt.contourf(x1, x2, y_pred, alpha=0.3, cmap=custom_cmap) - if not iris: - custom_cmap2 = ListedColormap(['#7d7d58','#4c4c7f','#507d50']) - plt.contour(x1, x2, y_pred, cmap=custom_cmap2, alpha=0.8) - if plot_training: - plt.plot(X[:, 0][y==0], X[:, 1][y==0], "yo", label="Iris-Setosa") - plt.plot(X[:, 0][y==1], X[:, 1][y==1], "bs", label="Iris-Versicolor") - plt.plot(X[:, 0][y==2], X[:, 1][y==2], "g^", label="Iris-Virginica") - plt.axis(axes) - if iris: - plt.xlabel("Petal length", fontsize=14) - plt.ylabel("Petal width", fontsize=14) - else: - plt.xlabel(r"$x_1$", fontsize=18) - plt.ylabel(r"$x_2$", fontsize=18, rotation=0) - if legend: - plt.legend(loc="lower right", fontsize=14) -plt.figure(figsize=(11, 4)) -plt.subplot(121) -plot_decision_boundary(deep_tree_clf1, Xm, ym, axes=[-1.5, 2.5, -1, 1.5], iris=False) -plt.title("No restrictions", fontsize=16) -plt.subplot(122) -plot_decision_boundary(deep_tree_clf2, Xm, ym, axes=[-1.5, 2.5, -1, 1.5], iris=False) -plt.title("min_samples_leaf = {}".format(deep_tree_clf2.min_samples_leaf), fontsize=14) -plt.show() -

    @@ -286,7 +273,7 @@ plt.show()

  • 32
  • 33
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs024.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs024.html index 1cdf2975f..b2a17c4b1 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs024.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs024.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,30 +214,198 @@ MathJax.Hub.Config({ -

    Playing around with regions

    +

    Implementing the ID3 Algorithm

    +

    -

    np.random.seed(6)
    -Xs = np.random.rand(100, 2) - 0.5
    -ys = (Xs[:, 0] > 0).astype(np.float32) * 2
    +
    import re
    +import math
    +from collections import deque
     
    -angle = np.pi/4
    -rotation_matrix = np.array([[np.cos(angle), -np.sin(angle)], [np.sin(angle), np.cos(angle)]])
    -Xsr = Xs.dot(rotation_matrix)
    +# x is examples in training set
    +# y is set of targets
    +# label is target attributes
    +# Node is a class which has properties values, childs, and next
    +# root is top node in the decision tree
     
    -tree_clf_s = DecisionTreeClassifier(random_state=42)
    -tree_clf_s.fit(Xs, ys)
    -tree_clf_sr = DecisionTreeClassifier(random_state=42)
    -tree_clf_sr.fit(Xsr, ys)
    +class Node(object):
    +	def __init__(self):
    +		self.value = None
    +		self.next = None
    +		self.childs = None
     
    -plt.figure(figsize=(11, 4))
    -plt.subplot(121)
    -plot_decision_boundary(tree_clf_s, Xs, ys, axes=[-0.7, 0.7, -0.7, 0.7], iris=False)
    -plt.subplot(122)
    -plot_decision_boundary(tree_clf_sr, Xsr, ys, axes=[-0.7, 0.7, -0.7, 0.7], iris=False)
    +# Simple class of Decision Tree
    +# Aimed for who want to learn Decision Tree, so it is not optimized
    +class DecisionTree(object):
    +	def __init__(self, sample, attributes, labels):
    +		self.sample = sample
    +		self.attributes = attributes
    +		self.labels = labels
    +		self.labelCodes = None
    +		self.labelCodesCount = None
    +		self.initLabelCodes()
    +		# print(self.labelCodes)
    +		self.root = None
    +		self.entropy = self.getEntropy([x for x in range(len(self.labels))])
     
    -plt.show()
    +	def initLabelCodes(self):
    +		self.labelCodes = []
    +		self.labelCodesCount = []
    +		for l in self.labels:
    +			if l not in self.labelCodes:
    +				self.labelCodes.append(l)
    +				self.labelCodesCount.append(0)
    +			self.labelCodesCount[self.labelCodes.index(l)] += 1
    +
    +	def getLabelCodeId(self, sampleId):
    +		return self.labelCodes.index(self.labels[sampleId])
    +
    +	def getAttributeValues(self, sampleIds, attributeId):
    +		vals = []
    +		for sid in sampleIds:
    +			val = self.sample[sid][attributeId]
    +			if val not in vals:
    +				vals.append(val)
    +		# print(vals)
    +		return vals
    +
    +	def getEntropy(self, sampleIds):
    +		entropy = 0
    +		labelCount = [0] * len(self.labelCodes)
    +		for sid in sampleIds:
    +			labelCount[self.getLabelCodeId(sid)] += 1
    +		# print("-ge", labelCount)
    +		for lv in labelCount:
    +			# print(lv)
    +			if lv != 0:
    +				entropy += -lv/len(sampleIds) * math.log(lv/len(sampleIds), 2)
    +			else:
    +				entropy += 0
    +		return entropy
    +
    +	def getDominantLabel(self, sampleIds):
    +		labelCodesCount = [0] * len(self.labelCodes)
    +		for sid in sampleIds:
    +			labelCodesCount[self.labelCodes.index(self.labels[sid])] += 1
    +		return self.labelCodes[labelCodesCount.index(max(labelCodesCount))]
    +
    +	def getInformationGain(self, sampleIds, attributeId):
    +		gain = self.getEntropy(sampleIds)
    +		attributeVals = []
    +		attributeValsCount = []
    +		attributeValsIds = []
    +		for sid in sampleIds:
    +			val = self.sample[sid][attributeId]
    +			if val not in attributeVals:
    +				attributeVals.append(val)
    +				attributeValsCount.append(0)
    +				attributeValsIds.append([])
    +			vid = attributeVals.index(val)
    +			attributeValsCount[vid] += 1
    +			attributeValsIds[vid].append(sid)
    +		# print("-gig", self.attributes[attributeId])
    +		for vc, vids in zip(attributeValsCount, attributeValsIds):
    +			# print("-gig", vids)
    +			gain -= vc/len(sampleIds) * self.getEntropy(vids)
    +		return gain
    +
    +	def getAttributeMaxInformationGain(self, sampleIds, attributeIds):
    +		attributesEntropy = [0] * len(attributeIds)
    +		for i, attId in zip(range(len(attributeIds)), attributeIds):
    +			attributesEntropy[i] = self.getInformationGain(sampleIds, attId)
    +		maxId = attributeIds[attributesEntropy.index(max(attributesEntropy))]
    +		return self.attributes[maxId], maxId
    +
    +	def isSingleLabeled(self, sampleIds):
    +		label = self.labels[sampleIds[0]]
    +		for sid in sampleIds:
    +			if self.labels[sid] != label:
    +				return False
    +		return True
    +
    +	def getLabel(self, sampleId):
    +		return self.labels[sampleId]
    +
    +	def id3(self):
    +		sampleIds = [x for x in range(len(self.sample))]
    +		attributeIds = [x for x in range(len(self.attributes))]
    +		self.root = self.id3Recv(sampleIds, attributeIds, self.root)
    +
    +	def id3Recv(self, sampleIds, attributeIds, root):
    +		root = Node() # Initialize current root
    +		if self.isSingleLabeled(sampleIds):
    +			root.value = self.labels[sampleIds[0]]
    +			return root
    +		# print(attributeIds)
    +		if len(attributeIds) == 0:
    +			root.value = self.getDominantLabel(sampleIds)
    +			return root
    +		bestAttrName, bestAttrId = self.getAttributeMaxInformationGain(
    +			sampleIds, attributeIds)
    +		# print(bestAttrName)
    +		root.value = bestAttrName
    +		root.childs = []  # Create list of children
    +		for value in self.getAttributeValues(sampleIds, bestAttrId):
    +			# print(value)
    +			child = Node()
    +			child.value = value
    +			root.childs.append(child)  # Append new child node to current
    +									   # root
    +			childSampleIds = []
    +			for sid in sampleIds:
    +				if self.sample[sid][bestAttrId] == value:
    +					childSampleIds.append(sid)
    +			if len(childSampleIds) == 0:
    +				child.next = self.getDominantLabel(sampleIds)
    +			else:
    +				# print(bestAttrName, bestAttrId)
    +				# print(attributeIds)
    +				if len(attributeIds) > 0 and bestAttrId in attributeIds:
    +					toRemove = attributeIds.index(bestAttrId)
    +					attributeIds.pop(toRemove)
    +				child.next = self.id3Recv(
    +					childSampleIds, attributeIds, child.next)
    +		return root
    +
    +	def printTree(self):
    +		if self.root:
    +			roots = deque()
    +			roots.append(self.root)
    +			while len(roots) > 0:
    +				root = roots.popleft()
    +				print(root.value)
    +				if root.childs:
    +					for child in root.childs:
    +						print('({})'.format(child.value))
    +						roots.append(child.next)
    +				elif root.next:
    +					print(root.next)
    +
    +
    +def test():
    +	f = open('DataFiles/rideclass.csv')
    +	attributes = f.readline().split(',')
    +	attributes = attributes[1:len(attributes)-1]
    +	print(attributes)
    +	sample = f.readlines()
    +	f.close()
    +	for i in range(len(sample)):
    +		sample[i] = re.sub('\d+,', '', sample[i])
    +		sample[i] = sample[i].strip().split(',')
    +	labels = []
    +	for s in sample:
    +		labels.append(s.pop())
    +	# print(sample)
    +	# print(labels)
    +	decisionTree = DecisionTree(sample, attributes, labels)
    +	print("System entropy {}".format(decisionTree.entropy))
    +	decisionTree.id3()
    +	decisionTree.printTree()
    +
    +
    +if __name__ == '__main__':
    +	test()
     

    @@ -242,7 +433,7 @@ plt.show()

  • 33
  • 34
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs025.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs025.html index 6c0dce319..b24d3a1a3 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs025.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs025.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,24 +214,51 @@ MathJax.Hub.Config({ -

    Regression trees

    +

    Cancer Data again now with Decision Trees and other Methods

    -

    # Quadratic training set + noise
    -np.random.seed(42)
    -m = 200
    -X = np.random.rand(m, 1)
    -y = 4 * (X - 0.5) ** 2
    -y = y + np.random.randn(m, 1) / 10
    -
    -

    +

    import matplotlib.pyplot as plt
    +import numpy as np
    +from sklearn.model_selection import  train_test_split 
    +from sklearn.datasets import load_breast_cancer
    +from sklearn.svm import SVC
    +from sklearn.linear_model import LogisticRegression
    +from sklearn.tree import DecisionTreeClassifier
     
    -
    -
    from sklearn.tree import DecisionTreeRegressor
    +# Load the data
    +cancer = load_breast_cancer()
     
    -tree_reg = DecisionTreeRegressor(max_depth=2, random_state=42)
    -tree_reg.fit(X, y)
    +X_train, X_test, y_train, y_test = train_test_split(cancer.data,cancer.target,random_state=0)
    +print(X_train.shape)
    +print(X_test.shape)
    +# Logistic Regression
    +logreg = LogisticRegression(solver='lbfgs')
    +logreg.fit(X_train, y_train)
    +print("Test set accuracy with Logistic Regression: {:.2f}".format(logreg.score(X_test,y_test)))
    +# Support vector machine
    +svm = SVC(gamma='auto', C=100)
    +svm.fit(X_train, y_train)
    +print("Test set accuracy with SVM: {:.2f}".format(svm.score(X_test,y_test)))
    +# Decision Trees
    +deep_tree_clf = DecisionTreeClassifier(max_depth=None)
    +deep_tree_clf.fit(X_train, y_train)
    +print("Test set accuracy with Decision Trees: {:.2f}".format(deep_tree_clf.score(X_test,y_test)))
    +#now scale the data
    +from sklearn.preprocessing import StandardScaler
    +scaler = StandardScaler()
    +scaler.fit(X_train)
    +X_train_scaled = scaler.transform(X_train)
    +X_test_scaled = scaler.transform(X_test)
    +# Logistic Regression
    +logreg.fit(X_train_scaled, y_train)
    +print("Test set accuracy Logistic Regression with scaled data: {:.2f}".format(logreg.score(X_test_scaled,y_test)))
    +# Support Vector Machine
    +svm.fit(X_train_scaled, y_train)
    +print("Test set accuracy SVM with scaled data: {:.2f}".format(logreg.score(X_test_scaled,y_test)))
    +# Decision Trees
    +deep_tree_clf.fit(X_train_scaled, y_train)
    +print("Test set accuracy with Decision Trees and scaled data: {:.2f}".format(deep_tree_clf.score(X_test_scaled,y_test)))
     

    @@ -236,7 +286,7 @@ tree_reg.fit(X, y)

  • 34
  • 35
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs026.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs026.html index 0f91c9af8..0e1700f16 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs026.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs026.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,79 +214,73 @@ MathJax.Hub.Config({ -

    Final regressor code

    +

    Another example, the moons again

    -

    from sklearn.tree import DecisionTreeRegressor
    +
    from __future__ import division, print_function, unicode_literals
     
    -tree_reg1 = DecisionTreeRegressor(random_state=42, max_depth=2)
    -tree_reg2 = DecisionTreeRegressor(random_state=42, max_depth=3)
    -tree_reg1.fit(X, y)
    -tree_reg2.fit(X, y)
    +# Common imports
    +import numpy as np
    +import os
     
    -def plot_regression_predictions(tree_reg, X, y, axes=[0, 1, -0.2, 1], ylabel="$y$"):
    -    x1 = np.linspace(axes[0], axes[1], 500).reshape(-1, 1)
    -    y_pred = tree_reg.predict(x1)
    -    plt.axis(axes)
    -    plt.xlabel("$x_1$", fontsize=18)
    -    if ylabel:
    -        plt.ylabel(ylabel, fontsize=18, rotation=0)
    -    plt.plot(X, y, "b.")
    -    plt.plot(x1, y_pred, "r.-", linewidth=2, label=r"$\hat{y}$")
    +# to make this notebook's output stable across runs
    +np.random.seed(42)
     
    +# To plot pretty figures
    +import matplotlib
    +import matplotlib.pyplot as plt
    +from matplotlib.colors import ListedColormap
    +plt.rcParams['axes.labelsize'] = 14
    +plt.rcParams['xtick.labelsize'] = 12
    +plt.rcParams['ytick.labelsize'] = 12
    +
    +
    +from sklearn.svm import SVC
    +from sklearn import datasets
    +from sklearn.tree import DecisionTreeClassifier
    +from sklearn.datasets import make_moons
    +from sklearn.tree import export_graphviz
    +
    +Xm, ym = make_moons(n_samples=100, noise=0.25, random_state=53)
    +
    +deep_tree_clf1 = DecisionTreeClassifier(random_state=42)
    +deep_tree_clf2 = DecisionTreeClassifier(min_samples_leaf=4, random_state=42)
    +deep_tree_clf1.fit(Xm, ym)
    +deep_tree_clf2.fit(Xm, ym)
    +
    +
    +def plot_decision_boundary(clf, X, y, axes=[0, 7.5, 0, 3], iris=True, legend=False, plot_training=True):
    +    x1s = np.linspace(axes[0], axes[1], 100)
    +    x2s = np.linspace(axes[2], axes[3], 100)
    +    x1, x2 = np.meshgrid(x1s, x2s)
    +    X_new = np.c_[x1.ravel(), x2.ravel()]
    +    y_pred = clf.predict(X_new).reshape(x1.shape)
    +    custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0'])
    +    plt.contourf(x1, x2, y_pred, alpha=0.3, cmap=custom_cmap)
    +    if not iris:
    +        custom_cmap2 = ListedColormap(['#7d7d58','#4c4c7f','#507d50'])
    +        plt.contour(x1, x2, y_pred, cmap=custom_cmap2, alpha=0.8)
    +    if plot_training:
    +        plt.plot(X[:, 0][y==0], X[:, 1][y==0], "yo", label="Iris-Setosa")
    +        plt.plot(X[:, 0][y==1], X[:, 1][y==1], "bs", label="Iris-Versicolor")
    +        plt.plot(X[:, 0][y==2], X[:, 1][y==2], "g^", label="Iris-Virginica")
    +        plt.axis(axes)
    +    if iris:
    +        plt.xlabel("Petal length", fontsize=14)
    +        plt.ylabel("Petal width", fontsize=14)
    +    else:
    +        plt.xlabel(r"$x_1$", fontsize=18)
    +        plt.ylabel(r"$x_2$", fontsize=18, rotation=0)
    +    if legend:
    +        plt.legend(loc="lower right", fontsize=14)
     plt.figure(figsize=(11, 4))
     plt.subplot(121)
    -plot_regression_predictions(tree_reg1, X, y)
    -for split, style in ((0.1973, "k-"), (0.0917, "k--"), (0.7718, "k--")):
    -    plt.plot([split, split], [-0.2, 1], style, linewidth=2)
    -plt.text(0.21, 0.65, "Depth=0", fontsize=15)
    -plt.text(0.01, 0.2, "Depth=1", fontsize=13)
    -plt.text(0.65, 0.8, "Depth=1", fontsize=13)
    -plt.legend(loc="upper center", fontsize=18)
    -plt.title("max_depth=2", fontsize=14)
    -
    +plot_decision_boundary(deep_tree_clf1, Xm, ym, axes=[-1.5, 2.5, -1, 1.5], iris=False)
    +plt.title("No restrictions", fontsize=16)
     plt.subplot(122)
    -plot_regression_predictions(tree_reg2, X, y, ylabel=None)
    -for split, style in ((0.1973, "k-"), (0.0917, "k--"), (0.7718, "k--")):
    -    plt.plot([split, split], [-0.2, 1], style, linewidth=2)
    -for split in (0.0458, 0.1298, 0.2873, 0.9040):
    -    plt.plot([split, split], [-0.2, 1], "k:", linewidth=1)
    -plt.text(0.3, 0.5, "Depth=2", fontsize=13)
    -plt.title("max_depth=3", fontsize=14)
    -
    -plt.show()
    -
    -

    - - -

    tree_reg1 = DecisionTreeRegressor(random_state=42)
    -tree_reg2 = DecisionTreeRegressor(random_state=42, min_samples_leaf=10)
    -tree_reg1.fit(X, y)
    -tree_reg2.fit(X, y)
    -
    -x1 = np.linspace(0, 1, 500).reshape(-1, 1)
    -y_pred1 = tree_reg1.predict(x1)
    -y_pred2 = tree_reg2.predict(x1)
    -
    -plt.figure(figsize=(11, 4))
    -
    -plt.subplot(121)
    -plt.plot(X, y, "b.")
    -plt.plot(x1, y_pred1, "r.-", linewidth=2, label=r"$\hat{y}$")
    -plt.axis([0, 1, -0.2, 1.1])
    -plt.xlabel("$x_1$", fontsize=18)
    -plt.ylabel("$y$", fontsize=18, rotation=0)
    -plt.legend(loc="upper center", fontsize=18)
    -plt.title("No restrictions", fontsize=14)
    -
    -plt.subplot(122)
    -plt.plot(X, y, "b.")
    -plt.plot(x1, y_pred2, "r.-", linewidth=2, label=r"$\hat{y}$")
    -plt.axis([0, 1, -0.2, 1.1])
    -plt.xlabel("$x_1$", fontsize=18)
    -plt.title("min_samples_leaf={}".format(tree_reg2.min_samples_leaf), fontsize=14)
    -
    +plot_decision_boundary(deep_tree_clf2, Xm, ym, axes=[-1.5, 2.5, -1, 1.5], iris=False)
    +plt.title("min_samples_leaf = {}".format(deep_tree_clf2.min_samples_leaf), fontsize=14)
     plt.show()
     

    @@ -292,7 +309,7 @@ plt.show()

  • 35
  • 36
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs027.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs027.html index deb24ecb1..1a5e76321 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs027.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs027.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,18 +214,32 @@ MathJax.Hub.Config({ -

    Pros and cons of trees, pros

    +

    Playing around with regions

    +

    -

      -
    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • -
    • Trees are very easy to explain to people. In fact, they are even easier to explain than linear regression!
    • -
    • No feature normalization needed
    • -
    • Tree models can handle both continuous and categorical data (Classification and Regression Trees)
    • -
    • Can model nonlinear relationships
    • -
    • Can model interactions between the different descriptive features
    • -
    • Trees can be displayed graphically, and are easily interpreted even by a non-expert (especially if they are small)
    • -
    + +
    np.random.seed(6)
    +Xs = np.random.rand(100, 2) - 0.5
    +ys = (Xs[:, 0] > 0).astype(np.float32) * 2
     
    +angle = np.pi/4
    +rotation_matrix = np.array([[np.cos(angle), -np.sin(angle)], [np.sin(angle), np.cos(angle)]])
    +Xsr = Xs.dot(rotation_matrix)
    +
    +tree_clf_s = DecisionTreeClassifier(random_state=42)
    +tree_clf_s.fit(Xs, ys)
    +tree_clf_sr = DecisionTreeClassifier(random_state=42)
    +tree_clf_sr.fit(Xsr, ys)
    +
    +plt.figure(figsize=(11, 4))
    +plt.subplot(121)
    +plot_decision_boundary(tree_clf_s, Xs, ys, axes=[-0.7, 0.7, -0.7, 0.7], iris=False)
    +plt.subplot(122)
    +plot_decision_boundary(tree_clf_sr, Xsr, ys, axes=[-0.7, 0.7, -0.7, 0.7], iris=False)
    +
    +plt.show()
    +
    +

      @@ -228,7 +265,7 @@ MathJax.Hub.Config({
    • 36
    • 37
    • ...
    • -
    • 42
    • +
    • 50
    • »
    diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs028.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs028.html index 830923076..767d35e1c 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs028.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs028.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,20 +214,25 @@ MathJax.Hub.Config({ -

    Disadvantages

    +

    Regression trees

    +

    -

      -
    • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
    • -
    • If continuous features are used the tree may become quite large and hence less interpretable
    • -
    • Decision trees are prone to overfit the training data and hence do not well generalize the data if no stopping criteria or improvements like pruning, boosting or bagging are implemented
    • -
    • Small changes in the data may lead to a completely different tree. This issue can be addressed by using ensemble methods like bagging, boosting or random forests
    • -
    • Unbalanced datasets where some target feature values occur much more frequently than others may lead to biased trees since the frequently occurring feature values are preferred over the less frequently occurring ones.
    • -
    • If the number of features is relatively large (high dimensional) and the number of instances is relatively low, the tree might overfit the data
    • -
    • Features with many levels may be preferred over features with less levels since for them it is more easy to split the dataset such that the sub datasets only contain pure target feature values. This issue can be addressed by preferring for instance the information gain ratio as splitting criteria over information gain
    • -
    + +
    # Quadratic training set + noise
    +np.random.seed(42)
    +m = 200
    +X = np.random.rand(m, 1)
    +y = 4 * (X - 0.5) ** 2
    +y = y + np.random.randn(m, 1) / 10
    +
    +

    -However, by aggregating many decision trees, using methods like bagging, random forests, and boosting, the predictive performance of trees can be substantially improved. + +

    from sklearn.tree import DecisionTreeRegressor
     
    +tree_reg = DecisionTreeRegressor(max_depth=2, random_state=42)
    +tree_reg.fit(X, y)
    +

    @@ -231,7 +259,7 @@ However, by aggregating many decision trees, using methods like bagging, random

  • 37
  • 38
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs029.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs029.html index ccafcc714..294420e7b 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs029.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs029.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,22 +214,81 @@ MathJax.Hub.Config({ -

    Bagging

    - +

    Final regressor code

    -The plain decision trees suffer from high -variance. This means that if we split the training data into two parts -at random, and fit a decision tree to both halves, the results that we -get could be quite different. In contrast, a procedure with low -variance will yield similar results if applied repeatedly to distinct -data sets; linear regression tends to have low variance, if the ratio -of \( n \) to \( p \) is moderately large. + +

    from sklearn.tree import DecisionTreeRegressor
    +
    +tree_reg1 = DecisionTreeRegressor(random_state=42, max_depth=2)
    +tree_reg2 = DecisionTreeRegressor(random_state=42, max_depth=3)
    +tree_reg1.fit(X, y)
    +tree_reg2.fit(X, y)
    +
    +def plot_regression_predictions(tree_reg, X, y, axes=[0, 1, -0.2, 1], ylabel="$y$"):
    +    x1 = np.linspace(axes[0], axes[1], 500).reshape(-1, 1)
    +    y_pred = tree_reg.predict(x1)
    +    plt.axis(axes)
    +    plt.xlabel("$x_1$", fontsize=18)
    +    if ylabel:
    +        plt.ylabel(ylabel, fontsize=18, rotation=0)
    +    plt.plot(X, y, "b.")
    +    plt.plot(x1, y_pred, "r.-", linewidth=2, label=r"$\hat{y}$")
    +
    +plt.figure(figsize=(11, 4))
    +plt.subplot(121)
    +plot_regression_predictions(tree_reg1, X, y)
    +for split, style in ((0.1973, "k-"), (0.0917, "k--"), (0.7718, "k--")):
    +    plt.plot([split, split], [-0.2, 1], style, linewidth=2)
    +plt.text(0.21, 0.65, "Depth=0", fontsize=15)
    +plt.text(0.01, 0.2, "Depth=1", fontsize=13)
    +plt.text(0.65, 0.8, "Depth=1", fontsize=13)
    +plt.legend(loc="upper center", fontsize=18)
    +plt.title("max_depth=2", fontsize=14)
    +
    +plt.subplot(122)
    +plot_regression_predictions(tree_reg2, X, y, ylabel=None)
    +for split, style in ((0.1973, "k-"), (0.0917, "k--"), (0.7718, "k--")):
    +    plt.plot([split, split], [-0.2, 1], style, linewidth=2)
    +for split in (0.0458, 0.1298, 0.2873, 0.9040):
    +    plt.plot([split, split], [-0.2, 1], "k:", linewidth=1)
    +plt.text(0.3, 0.5, "Depth=2", fontsize=13)
    +plt.title("max_depth=3", fontsize=14)
    +
    +plt.show()
    +

    -Bootstrap aggregation, or just bagging, is a -general-purpose procedure for reducing the variance of a statistical -learning method. + +

    tree_reg1 = DecisionTreeRegressor(random_state=42)
    +tree_reg2 = DecisionTreeRegressor(random_state=42, min_samples_leaf=10)
    +tree_reg1.fit(X, y)
    +tree_reg2.fit(X, y)
    +
    +x1 = np.linspace(0, 1, 500).reshape(-1, 1)
    +y_pred1 = tree_reg1.predict(x1)
    +y_pred2 = tree_reg2.predict(x1)
    +
    +plt.figure(figsize=(11, 4))
    +
    +plt.subplot(121)
    +plt.plot(X, y, "b.")
    +plt.plot(x1, y_pred1, "r.-", linewidth=2, label=r"$\hat{y}$")
    +plt.axis([0, 1, -0.2, 1.1])
    +plt.xlabel("$x_1$", fontsize=18)
    +plt.ylabel("$y$", fontsize=18, rotation=0)
    +plt.legend(loc="upper center", fontsize=18)
    +plt.title("No restrictions", fontsize=14)
    +
    +plt.subplot(122)
    +plt.plot(X, y, "b.")
    +plt.plot(x1, y_pred2, "r.-", linewidth=2, label=r"$\hat{y}$")
    +plt.axis([0, 1, -0.2, 1.1])
    +plt.xlabel("$x_1$", fontsize=18)
    +plt.title("min_samples_leaf={}".format(tree_reg2.min_samples_leaf), fontsize=14)
    +
    +plt.show()
    +

    @@ -233,7 +315,7 @@ learning method.

  • 38
  • 39
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs030.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs030.html index 19bc01de5..fd04d1e03 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs030.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs030.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,33 +214,18 @@ MathJax.Hub.Config({ -

    More bagging

    +

    Pros and cons of trees, pros

    -

    -Bagging typically results in improved accuracy -over prediction using a single tree. Unfortunately, however, it can be -difficult to interpret the resulting model. Recall that one of the -advantages of decision trees is the attractive and easily interpreted -diagram that results. +

      +
    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • +
    • Trees are very easy to explain to people. In fact, they are even easier to explain than linear regression!
    • +
    • No feature normalization needed
    • +
    • Tree models can handle both continuous and categorical data (Classification and Regression Trees)
    • +
    • Can model nonlinear relationships
    • +
    • Can model interactions between the different descriptive features
    • +
    • Trees can be displayed graphically, and are easily interpreted even by a non-expert (especially if they are small)
    • +
    -

    -However, when we bag a large number of trees, it is no longer -possible to represent the resulting statistical learning procedure -using a single tree, and it is no longer clear which variables are -most important to the procedure. Thus, bagging improves prediction -accuracy at the expense of interpretability. Although the collection -of bagged trees is much more difficult to interpret than a single -tree, one can obtain an overall summary of the importance of each -predictor using the MSE (for bagging regression trees) or the Gini -index (for bagging classification trees). In the case of bagging -regression trees, we can record the total amount that the MSE is -decreased due to splits over a given predictor, averaged over all \( B \) possible -trees. A large value indicates an important predictor. Similarly, in -the context of bagging classification trees, we can add up the total -amount that the Gini index is decreased by splits over a given -predictor, averaged over all \( B \) trees. - -

      @@ -243,7 +251,7 @@ predictor, averaged over all \( B \) trees.
    • 39
    • 40
    • ...
    • -
    • 42
    • +
    • 50
    • »
    diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs031.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs031.html index 044ef068d..21e98113b 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs031.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs031.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,23 +214,20 @@ MathJax.Hub.Config({ -

    Simple Voting Example, head or tail

    -

    +

    Disadvantages

    + +
      +
    • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
    • +
    • If continuous features are used the tree may become quite large and hence less interpretable
    • +
    • Decision trees are prone to overfit the training data and hence do not well generalize the data if no stopping criteria or improvements like pruning, boosting or bagging are implemented
    • +
    • Small changes in the data may lead to a completely different tree. This issue can be addressed by using ensemble methods like bagging, boosting or random forests
    • +
    • Unbalanced datasets where some target feature values occur much more frequently than others may lead to biased trees since the frequently occurring feature values are preferred over the less frequently occurring ones.
    • +
    • If the number of features is relatively large (high dimensional) and the number of instances is relatively low, the tree might overfit the data
    • +
    • Features with many levels may be preferred over features with less levels since for them it is more easy to split the dataset such that the sub datasets only contain pure target feature values. This issue can be addressed by preferring for instance the information gain ratio as splitting criteria over information gain
    • +
    + +However, by aggregating many decision trees, using methods like bagging, random forests, and boosting, the predictive performance of trees can be substantially improved. - -
    heads_proba = 0.51
    -coin_tosses = (np.random.rand(10000, 10) < heads_proba).astype(np.int32)
    -cumulative_heads_ratio = np.cumsum(coin_tosses, axis=0) / np.arange(1, 10001).reshape(-1, 1)
    -plt.figure(figsize=(8,3.5))
    -plt.plot(cumulative_heads_ratio)
    -plt.plot([0, 10000], [0.51, 0.51], "k--", linewidth=2, label="51%")
    -plt.plot([0, 10000], [0.5, 0.5], "k-", label="50%")
    -plt.xlabel("Number of coin tosses")
    -plt.ylabel("Heads ratio")
    -plt.legend(loc="lower right")
    -plt.axis([0, 10000, 0.42, 0.58])
    -plt.show()
    -

    @@ -234,7 +254,7 @@ plt.show()

  • 40
  • 41
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs032.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs032.html index d0c8d30ae..bd6c12724 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs032.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs032.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,54 +214,27 @@ MathJax.Hub.Config({ -

    Using the Voting Classifier

    +

    From a Single Tree to Many Trees, that is meet the Jungle of Methods

    +

    +As stated above and seen in many of the examples discussed here about +a single decision tree, we often end up overfitting our training +data. This normally means that we have a high variance. Can we reduce +the variance of a statistical learning method? - -

    from sklearn.model_selection import train_test_split
    -from sklearn.datasets import make_moons
    +

    +This leads us to a set of different methods that can combine different +machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are -X, y = make_moons(n_samples=500, noise=0.30, random_state=42) -X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42) +

      +
    1. Votign classifiers
    2. +
    3. Bagging and Pasting
    4. +
    5. Random forests
    6. +
    7. Boosting methods
    8. +
    -from sklearn.ensemble import RandomForestClassifier -from sklearn.ensemble import VotingClassifier -from sklearn.linear_model import LogisticRegression -from sklearn.svm import SVC +We discuss these methods here. -log_clf = LogisticRegression(solver="liblinear", random_state=42) -rnd_clf = RandomForestClassifier(n_estimators=10, random_state=42) -svm_clf = SVC(gamma="auto", random_state=42) - -voting_clf = VotingClassifier( - estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)], - voting='hard') - -voting_clf.fit(X_train, y_train) - -from sklearn.metrics import accuracy_score - -for clf in (log_clf, rnd_clf, svm_clf, voting_clf): - clf.fit(X_train, y_train) - y_pred = clf.predict(X_test) - print(clf.__class__.__name__, accuracy_score(y_test, y_pred)) - -log_clf = LogisticRegression(solver="liblinear", random_state=42) -rnd_clf = RandomForestClassifier(n_estimators=10, random_state=42) -svm_clf = SVC(gamma="auto", probability=True, random_state=42) - -voting_clf = VotingClassifier( - estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)], - voting='soft') -voting_clf.fit(X_train, y_train) - -from sklearn.metrics import accuracy_score - -for clf in (log_clf, rnd_clf, svm_clf, voting_clf): - clf.fit(X_train, y_train) - y_pred = clf.predict(X_test) - print(clf.__class__.__name__, accuracy_score(y_test, y_pred)) -

    @@ -264,6 +260,8 @@ voting_clf.fit(X_train, y_train)

  • 40
  • 41
  • 42
  • +
  • ...
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs033.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs033.html index 11262aea5..f614c844d 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs033.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs033.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,61 +214,22 @@ MathJax.Hub.Config({ -

    Please, not the moons again! Voting and Bagging

    +

    Bagging

    +

    +The plain decision trees suffer from high +variance. This means that if we split the training data into two parts +at random, and fit a decision tree to both halves, the results that we +get could be quite different. In contrast, a procedure with low +variance will yield similar results if applied repeatedly to distinct +data sets; linear regression tends to have low variance, if the ratio +of \( n \) to \( p \) is moderately large. - -

    from sklearn.model_selection import train_test_split
    -from sklearn.datasets import make_moons
    -
    -X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    -X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)
    -from sklearn.ensemble import RandomForestClassifier
    -from sklearn.ensemble import VotingClassifier
    -from sklearn.linear_model import LogisticRegression
    -from sklearn.svm import SVC
    -
    -log_clf = LogisticRegression(random_state=42)
    -rnd_clf = RandomForestClassifier(random_state=42)
    -svm_clf = SVC(random_state=42)
    -
    -voting_clf = VotingClassifier(
    -    estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
    -    voting='hard')
    -voting_clf.fit(X_train, y_train)
    -

    +Bootstrap aggregation, or just bagging, is a +general-purpose procedure for reducing the variance of a statistical +learning method. - -

    from sklearn.metrics import accuracy_score
    -
    -for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
    -    clf.fit(X_train, y_train)
    -    y_pred = clf.predict(X_test)
    -    print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -

    - - -

    log_clf = LogisticRegression(random_state=42)
    -rnd_clf = RandomForestClassifier(random_state=42)
    -svm_clf = SVC(probability=True, random_state=42)
    -
    -voting_clf = VotingClassifier(
    -    estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
    -    voting='soft')
    -voting_clf.fit(X_train, y_train)
    -
    -

    - - -

    from sklearn.metrics import accuracy_score
    -
    -for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
    -    clf.fit(X_train, y_train)
    -    y_pred = clf.predict(X_test)
    -    print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -

    @@ -270,6 +254,9 @@ voting_clf.fit(X_train, y_train)

  • 40
  • 41
  • 42
  • +
  • 43
  • +
  • ...
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs034.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs034.html index 91e4880c1..7ce207a31 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs034.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs034.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,64 +214,32 @@ MathJax.Hub.Config({ -

    Now Bagging

    +

    More bagging

    +Bagging typically results in improved accuracy +over prediction using a single tree. Unfortunately, however, it can be +difficult to interpret the resulting model. Recall that one of the +advantages of decision trees is the attractive and easily interpreted +diagram that results. - -

    from sklearn.ensemble import BaggingClassifier
    -from sklearn.tree import DecisionTreeClassifier
    -
    -bag_clf = BaggingClassifier(
    -    DecisionTreeClassifier(random_state=42), n_estimators=500,
    -    max_samples=100, bootstrap=True, n_jobs=-1, random_state=42)
    -bag_clf.fit(X_train, y_train)
    -y_pred = bag_clf.predict(X_test)
    -

    +However, when we bag a large number of trees, it is no longer +possible to represent the resulting statistical learning procedure +using a single tree, and it is no longer clear which variables are +most important to the procedure. Thus, bagging improves prediction +accuracy at the expense of interpretability. Although the collection +of bagged trees is much more difficult to interpret than a single +tree, one can obtain an overall summary of the importance of each +predictor using the MSE (for bagging regression trees) or the Gini +index (for bagging classification trees). In the case of bagging +regression trees, we can record the total amount that the MSE is +decreased due to splits over a given predictor, averaged over all \( B \) possible +trees. A large value indicates an important predictor. Similarly, in +the context of bagging classification trees, we can add up the total +amount that the Gini index is decreased by splits over a given +predictor, averaged over all \( B \) trees. - -

    from sklearn.metrics import accuracy_score
    -print(accuracy_score(y_test, y_pred))
    -
    -

    - - -

    tree_clf = DecisionTreeClassifier(random_state=42)
    -tree_clf.fit(X_train, y_train)
    -y_pred_tree = tree_clf.predict(X_test)
    -print(accuracy_score(y_test, y_pred_tree))
    -
    -

    - - -

    from matplotlib.colors import ListedColormap
    -
    -def plot_decision_boundary(clf, X, y, axes=[-1.5, 2.5, -1, 1.5], alpha=0.5, contour=True):
    -    x1s = np.linspace(axes[0], axes[1], 100)
    -    x2s = np.linspace(axes[2], axes[3], 100)
    -    x1, x2 = np.meshgrid(x1s, x2s)
    -    X_new = np.c_[x1.ravel(), x2.ravel()]
    -    y_pred = clf.predict(X_new).reshape(x1.shape)
    -    custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0'])
    -    plt.contourf(x1, x2, y_pred, alpha=0.3, cmap=custom_cmap)
    -    if contour:
    -        custom_cmap2 = ListedColormap(['#7d7d58','#4c4c7f','#507d50'])
    -        plt.contour(x1, x2, y_pred, cmap=custom_cmap2, alpha=0.8)
    -    plt.plot(X[:, 0][y==0], X[:, 1][y==0], "yo", alpha=alpha)
    -    plt.plot(X[:, 0][y==1], X[:, 1][y==1], "bs", alpha=alpha)
    -    plt.axis(axes)
    -    plt.xlabel(r"$x_1$", fontsize=18)
    -    plt.ylabel(r"$x_2$", fontsize=18, rotation=0)
    -plt.figure(figsize=(11,4))
    -plt.subplot(121)
    -plot_decision_boundary(tree_clf, X, y)
    -plt.title("Decision Tree", fontsize=14)
    -plt.subplot(122)
    -plot_decision_boundary(bag_clf, X, y)
    -plt.title("Decision Trees with Bagging", fontsize=14)
    -plt.show()
    -

    @@ -272,6 +263,10 @@ plt.show()

  • 40
  • 41
  • 42
  • +
  • 43
  • +
  • 44
  • +
  • ...
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs035.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs035.html index 4b7896efb..8bccb0b35 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs035.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs035.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,47 +214,23 @@ MathJax.Hub.Config({ -

    Random forests

    - +

    Simple Voting Example, head or tail

    -Random forests provide an improvement over bagged trees by way of a -small tweak that decorrelates the trees. - -

    -As in bagging, we build a -number of decision trees on bootstrapped training samples. But when -building these decision trees, each time a split in a tree is -considered, a random sample of \( m \) predictors is chosen as split -candidates from the full set of \( p \) predictors. The split is allowed to -use only one of those \( m \) predictors. - -

    -A fresh sample of \( m \) predictors is -taken at each split, and typically we choose - -$$ -m\approx \sqrt{p}. -$$ - -

    -In building a random forest, at -each split in the tree, the algorithm is not even allowed to consider -a majority of the available predictors. - -

    -The reason for this is rather clever. Suppose that there is one very -strong predictor in the data set, along with a number of other -moderately strong predictors. Then in the collection of bagged -variable importance random forest trees, most or all of the trees will -use this strong predictor in the top split. Consequently, all of the -bagged trees will look quite similar to each other. Hence the -predictions from the bagged trees will be highly correlated. -Unfortunately, averaging many highly correlated quantities does not -lead to as large of a reduction in variance as averaging many -uncorrelated quanti- ties. In particular, this means that bagging will -not lead to a substantial reduction in variance over a single tree in -this setting. + +

    heads_proba = 0.51
    +coin_tosses = (np.random.rand(10000, 10) < heads_proba).astype(np.int32)
    +cumulative_heads_ratio = np.cumsum(coin_tosses, axis=0) / np.arange(1, 10001).reshape(-1, 1)
    +plt.figure(figsize=(8,3.5))
    +plt.plot(cumulative_heads_ratio)
    +plt.plot([0, 10000], [0.51, 0.51], "k--", linewidth=2, label="51%")
    +plt.plot([0, 10000], [0.5, 0.5], "k-", label="50%")
    +plt.xlabel("Number of coin tosses")
    +plt.ylabel("Heads ratio")
    +plt.legend(loc="lower right")
    +plt.axis([0, 10000, 0.42, 0.58])
    +plt.show()
    +

    @@ -254,6 +253,11 @@ this setting.

  • 40
  • 41
  • 42
  • +
  • 43
  • +
  • 44
  • +
  • 45
  • +
  • ...
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs036.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs036.html index af874b3ba..187f9c1c7 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs036.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs036.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,20 +214,53 @@ MathJax.Hub.Config({ -

    A simple scikit-learn example

    +

    Using the Voting Classifier

    -

    from sklearn.ensemble import RandomForestClassifier
    -from sklearn.preprocessing import LabelEncoder
    -from sklearn.model_selection import cross_validate
    -# Data set not specificied
    -X = dataset.XXX
    -Y = dataset.YYY
    -#Instantiate the model with 100 trees and entropy as splitting criteria
    -Random_Forest_model = RandomForestClassifier(n_estimators=100,criterion="entropy")
    -#Cross validation
    -accuracy = cross_validate(Random_Forest_model,X,Y,cv=10)['test_score']
    +
    from sklearn.model_selection import train_test_split
    +from sklearn.datasets import make_moons
    +
    +X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    +X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)
    +
    +from sklearn.ensemble import RandomForestClassifier
    +from sklearn.ensemble import VotingClassifier
    +from sklearn.linear_model import LogisticRegression
    +from sklearn.svm import SVC
    +
    +log_clf = LogisticRegression(solver="liblinear", random_state=42)
    +rnd_clf = RandomForestClassifier(n_estimators=10, random_state=42)
    +svm_clf = SVC(gamma="auto", random_state=42)
    +
    +voting_clf = VotingClassifier(
    +    estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
    +    voting='hard')
    +
    +voting_clf.fit(X_train, y_train)
    +
    +from sklearn.metrics import accuracy_score
    +
    +for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
    +    clf.fit(X_train, y_train)
    +    y_pred = clf.predict(X_test)
    +    print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    +
    +log_clf = LogisticRegression(solver="liblinear", random_state=42)
    +rnd_clf = RandomForestClassifier(n_estimators=10, random_state=42)
    +svm_clf = SVC(gamma="auto", probability=True, random_state=42)
    +
    +voting_clf = VotingClassifier(
    +    estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
    +    voting='soft')
    +voting_clf.fit(X_train, y_train)
    +
    +from sklearn.metrics import accuracy_score
    +
    +for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
    +    clf.fit(X_train, y_train)
    +    y_pred = clf.predict(X_test)
    +    print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
     

    @@ -227,6 +283,12 @@ accuracy = cross_validate(Random_Forest_mode

  • 40
  • 41
  • 42
  • +
  • 43
  • +
  • 44
  • +
  • 45
  • +
  • 46
  • +
  • ...
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs037.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs037.html index 462ed91d1..3e4b68888 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs037.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs037.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,24 +214,60 @@ MathJax.Hub.Config({ -

    Then random forests

    +

    Please, not the moons again! Voting and Bagging

    -

    bag_clf = BaggingClassifier(
    -    DecisionTreeClassifier(splitter="random", max_leaf_nodes=16, random_state=42),
    -    n_estimators=500, max_samples=1.0, bootstrap=True, n_jobs=-1, random_state=42)
    +
    from sklearn.model_selection import train_test_split
    +from sklearn.datasets import make_moons
    +
    +X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    +X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)
    +from sklearn.ensemble import RandomForestClassifier
    +from sklearn.ensemble import VotingClassifier
    +from sklearn.linear_model import LogisticRegression
    +from sklearn.svm import SVC
    +
    +log_clf = LogisticRegression(random_state=42)
    +rnd_clf = RandomForestClassifier(random_state=42)
    +svm_clf = SVC(random_state=42)
    +
    +voting_clf = VotingClassifier(
    +    estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
    +    voting='hard')
    +voting_clf.fit(X_train, y_train)
     

    -

    bag_clf.fit(X_train, y_train)
    -y_pred = bag_clf.predict(X_test)
    -from sklearn.ensemble import RandomForestClassifier
    -rnd_clf = RandomForestClassifier(n_estimators=500, max_leaf_nodes=16, n_jobs=-1, random_state=42)
    -rnd_clf.fit(X_train, y_train)
    -y_pred_rf = rnd_clf.predict(X_test)
    -np.sum(y_pred == y_pred_rf) / len(y_pred) 
    +
    from sklearn.metrics import accuracy_score
    +
    +for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
    +    clf.fit(X_train, y_train)
    +    y_pred = clf.predict(X_test)
    +    print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    +
    +

    + + +

    log_clf = LogisticRegression(random_state=42)
    +rnd_clf = RandomForestClassifier(random_state=42)
    +svm_clf = SVC(probability=True, random_state=42)
    +
    +voting_clf = VotingClassifier(
    +    estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
    +    voting='soft')
    +voting_clf.fit(X_train, y_train)
    +
    +

    + + +

    from sklearn.metrics import accuracy_score
    +
    +for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
    +    clf.fit(X_train, y_train)
    +    y_pred = clf.predict(X_test)
    +    print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
     

    @@ -230,6 +289,13 @@ np.sum(y_pred =

  • 40
  • 41
  • 42
  • +
  • 43
  • +
  • 44
  • +
  • 45
  • +
  • 46
  • +
  • 47
  • +
  • ...
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs038.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs038.html index 6f47e526d..cadb27ef5 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs038.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs038.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -191,11 +214,64 @@ MathJax.Hub.Config({ -

    Feature Importance

    +

    Now Bagging

    -Example will be added here. + +

    from sklearn.ensemble import BaggingClassifier
    +from sklearn.tree import DecisionTreeClassifier
    +
    +bag_clf = BaggingClassifier(
    +    DecisionTreeClassifier(random_state=42), n_estimators=500,
    +    max_samples=100, bootstrap=True, n_jobs=-1, random_state=42)
    +bag_clf.fit(X_train, y_train)
    +y_pred = bag_clf.predict(X_test)
    +
    +

    + + +

    from sklearn.metrics import accuracy_score
    +print(accuracy_score(y_test, y_pred))
    +
    +

    + + +

    tree_clf = DecisionTreeClassifier(random_state=42)
    +tree_clf.fit(X_train, y_train)
    +y_pred_tree = tree_clf.predict(X_test)
    +print(accuracy_score(y_test, y_pred_tree))
    +
    +

    + + +

    from matplotlib.colors import ListedColormap
    +
    +def plot_decision_boundary(clf, X, y, axes=[-1.5, 2.5, -1, 1.5], alpha=0.5, contour=True):
    +    x1s = np.linspace(axes[0], axes[1], 100)
    +    x2s = np.linspace(axes[2], axes[3], 100)
    +    x1, x2 = np.meshgrid(x1s, x2s)
    +    X_new = np.c_[x1.ravel(), x2.ravel()]
    +    y_pred = clf.predict(X_new).reshape(x1.shape)
    +    custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0'])
    +    plt.contourf(x1, x2, y_pred, alpha=0.3, cmap=custom_cmap)
    +    if contour:
    +        custom_cmap2 = ListedColormap(['#7d7d58','#4c4c7f','#507d50'])
    +        plt.contour(x1, x2, y_pred, cmap=custom_cmap2, alpha=0.8)
    +    plt.plot(X[:, 0][y==0], X[:, 1][y==0], "yo", alpha=alpha)
    +    plt.plot(X[:, 0][y==1], X[:, 1][y==1], "bs", alpha=alpha)
    +    plt.axis(axes)
    +    plt.xlabel(r"$x_1$", fontsize=18)
    +    plt.ylabel(r"$x_2$", fontsize=18, rotation=0)
    +plt.figure(figsize=(11,4))
    +plt.subplot(121)
    +plot_decision_boundary(tree_clf, X, y)
    +plt.title("Decision Tree", fontsize=14)
    +plt.subplot(122)
    +plot_decision_boundary(bag_clf, X, y)
    +plt.title("Decision Trees with Bagging", fontsize=14)
    +plt.show()
    +

    @@ -215,6 +291,14 @@ Example will be added here.

  • 40
  • 41
  • 42
  • +
  • 43
  • +
  • 44
  • +
  • 45
  • +
  • 46
  • +
  • 47
  • +
  • 48
  • +
  • ...
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/DecisionTrees-bs.html b/doc/pub/DecisionTrees/html/DecisionTrees-bs.html index 71dfb146f..ec2e98fd3 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees-bs.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees-bs.html @@ -64,40 +64,55 @@ Automatically generated HTML file from DocOnce source ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -151,31 +166,39 @@ MathJax.Hub.Config({
  • Classification tree, how to split nodes
  • Visualizing the Tree, Classification
  • Visualizing the Tree, The Moons
  • -
  • Computing the Gini index
  • -
  • Simple Python Code to read in Data and perform Classification
  • -
  • Computing the Gini Factor
  • -
  • Entropy and the ID3 algorithm
  • -
  • Implementing the ID3 Algorithm
  • -
  • Cancer Data again now with Decision Trees and other Methods
  • -
  • Another example, the moons again
  • -
  • Playing around with regions
  • -
  • Regression trees
  • -
  • Final regressor code
  • -
  • Pros and cons of trees, pros
  • -
  • Disadvantages
  • -
  • Bagging
  • -
  • More bagging
  • -
  • Simple Voting Example, head or tail
  • -
  • Using the Voting Classifier
  • -
  • Please, not the moons again! Voting and Bagging
  • -
  • Now Bagging
  • -
  • Random forests
  • -
  • A simple scikit-learn example
  • -
  • Then random forests
  • -
  • Feature Importance
  • -
  • Boosting: AdaBoost
  • -
  • Gradient Boosting
  • -
  • Gradient Boots with Early Stopping
  • +
  • Algorithms for Setting up Decision Trees
  • +
  • The CART algorithm for Classification
  • +
  • The CART algorithm for Regression
  • +
  • Computing the Gini index
  • +
  • Simple Python Code to read in Data and perform Classification
  • +
  • Computing the Gini Factor
  • +
  • Entropy and the ID3 algorithm
  • +
  • Implementing the ID3 Algorithm
  • +
  • Cancer Data again now with Decision Trees and other Methods
  • +
  • Another example, the moons again
  • +
  • Playing around with regions
  • +
  • Regression trees
  • +
  • Final regressor code
  • +
  • Pros and cons of trees, pros
  • +
  • Disadvantages
  • +
  • From a Single Tree to Many Trees, that is meet the Jungle of Methods
  • +
  • Bagging
  • +
  • More bagging
  • +
  • Simple Voting Example, head or tail
  • +
  • Using the Voting Classifier
  • +
  • Please, not the moons again! Voting and Bagging
  • +
  • Now Bagging
  • +
  • Random forests
  • +
  • A simple scikit-learn example
  • +
  • Then random forests
  • +
  • Feature Importance
  • +
  • Boosting, a Bird'e Eye
  • +
  • Adaptive boosting: AdaBoost, Basic Algorithm
  • +
  • AdaBoost Examples
  • +
  • Gradient boosting: Basic Algorithm
  • +
  • Gradient Boosting, Examples
  • +
  • Gradient Boots with Early Stopping
  • +
  • XGBoost: Extreme Gradient Boosting
  • @@ -210,7 +233,7 @@ MathJax.Hub.Config({
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

    -

    Nov 1, 2019

    +

    Nov 2, 2019


    @@ -234,7 +257,7 @@ MathJax.Hub.Config({

  • 9
  • 10
  • ...
  • -
  • 42
  • +
  • 50
  • »
  • diff --git a/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html b/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html index 758d6151d..5b1289cc6 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html @@ -148,7 +148,7 @@ MathJax.Hub.Config({
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

     
    -

    Nov 1, 2019

    +

    Nov 2, 2019


    @@ -194,6 +194,9 @@ given some assumptions, make predictions about the target feature value

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    + +

    +Figure to come here.

    @@ -691,7 +694,31 @@ os.system(cmd)
    -

    Computing the Gini index

    +

    Algorithms for Setting up Decision Trees

    +Two algorithms stand out in the set up of decision trees: + +
      +

    1. The CART (Classification And Regression Tree) algorithm for both classification and regression
    2. +

    3. The ID3 algorithm based on the computation of the information gain for classification
    4. +
    +

    + +We discuss both algorithms with applications here. The popular library -Scikit-Learn_ uses the CART algorithm. For classification problems you can use either the gini index or the entropy to split a tree in two branches. +

    + + +
    +

    The CART algorithm for Classification

    +
    + + +
    +

    The CART algorithm for Regression

    +
    + + +
    +

    Computing the Gini index

    The example we will look at is a classical one in many Machine @@ -732,7 +759,7 @@ The table here summarizes the various attributes and

    -

    Simple Python Code to read in Data and perform Classification

    +

    Simple Python Code to read in Data and perform Classification

    @@ -809,7 +836,7 @@ os.system(cmd)

    -

    Computing the Gini Factor

    +

    Computing the Gini Factor

    The above functions (gini, entropy and misclassification error) are @@ -888,7 +915,7 @@ split = get_split(dataset)

    -

    Entropy and the ID3 algorithm

    +

    Entropy and the ID3 algorithm

    ID3, learns decision trees by constructing @@ -925,7 +952,7 @@ attributes at each step while growing the tree.

    -

    Implementing the ID3 Algorithm

    +

    Implementing the ID3 Algorithm

    @@ -1122,7 +1149,7 @@ attributes at each step while growing the tree.

    -

    Cancer Data again now with Decision Trees and other Methods

    +

    Cancer Data again now with Decision Trees and other Methods

    @@ -1172,7 +1199,7 @@ deep_tree_clf.fit(X_train_scaled, y_train)

    -

    Another example, the moons again

    +

    Another example, the moons again

    @@ -1245,7 +1272,7 @@ plt.show()

    -

    Playing around with regions

    +

    Playing around with regions

    @@ -1274,7 +1301,7 @@ plt.show()

    -

    Regression trees

    +

    Regression trees

    @@ -1297,7 +1324,7 @@ tree_reg.fit(X, y)

    -

    Final regressor code

    +

    Final regressor code

    @@ -1376,7 +1403,7 @@ plt.show()

    -

    Pros and cons of trees, pros

    +

    Pros and cons of trees, pros

    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • @@ -1391,7 +1418,7 @@ plt.show()
      -

      Disadvantages

      +

      Disadvantages

      • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
      • @@ -1409,7 +1436,32 @@ However, by aggregating many decision trees, using methods like bagging, random
        -

        Bagging

        +

        From a Single Tree to Many Trees, that is meet the Jungle of Methods

        + +

        +As stated above and seen in many of the examples discussed here about +a single decision tree, we often end up overfitting our training +data. This normally means that we have a high variance. Can we reduce +the variance of a statistical learning method? + +

        +This leads us to a set of different methods that can combine different +machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are + +

          +

        1. Votign classifiers
        2. +

        3. Bagging and Pasting
        4. +

        5. Random forests
        6. +

        7. Boosting methods
        8. +
        +

        + +We discuss these methods here. +

        + + +
        +

        Bagging

        The plain decision trees suffer from high @@ -1428,7 +1480,7 @@ learning method.

        -

        More bagging

        +

        More bagging

        Bagging typically results in improved accuracy @@ -1457,7 +1509,7 @@ predictor, averaged over all \( B \) trees.

        -

        Simple Voting Example, head or tail

        +

        Simple Voting Example, head or tail

        @@ -1478,7 +1530,7 @@ plt.show()

        -

        Using the Voting Classifier

        +

        Using the Voting Classifier

        @@ -1530,7 +1582,7 @@ voting_clf.fit(X_train, y_train)

        -

        Please, not the moons again! Voting and Bagging

        +

        Please, not the moons again! Voting and Bagging

        @@ -1589,7 +1641,7 @@ voting_clf.fit(X_train, y_train)

        -

        Now Bagging

        +

        Now Bagging

        @@ -1651,7 +1703,7 @@ plt.show()

        -

        Random forests

        +

        Random forests

        Random forests provide an improvement over bagged trees by way of a @@ -1697,7 +1749,7 @@ this setting.

        -

        A simple scikit-learn example

        +

        A simple scikit-learn example

        @@ -1716,7 +1768,7 @@ accuracy = cross_validate(Random_Forest_model,X,Y,cv=Then random forests +

        Then random forests

        @@ -1739,7 +1791,7 @@ np.sum(y_pred == y_pred_rf) / len(y_pred)

        -

        Feature Importance

        +

        Feature Importance

        Example will be added here. @@ -1747,8 +1799,17 @@ Example will be added here.

        -

        Boosting: AdaBoost

        +

        Boosting, a Bird'e Eye

        +
        + +
        +

        Adaptive boosting: AdaBoost, Basic Algorithm

        +
        + + +
        +

        AdaBoost Examples

        @@ -1788,7 +1849,12 @@ plt.show()

        -

        Gradient Boosting

        +

        Gradient boosting: Basic Algorithm

        +
        + + +
        +

        Gradient Boosting, Examples

        @@ -1879,7 +1945,7 @@ plt.show()

        -

        Gradient Boots with Early Stopping

        +

        Gradient Boots with Early Stopping

        @@ -1943,6 +2009,11 @@ error_going_up = 0

        +
        +

        XGBoost: Extreme Gradient Boosting

        +
        + +
    diff --git a/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html b/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html index eb1f7a577..160958595 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html @@ -84,40 +84,55 @@ div { text-align: justify; text-justify: inter-word; } ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -159,7 +174,7 @@ MathJax.Hub.Config({
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

    -

    Nov 1, 2019

    +

    Nov 2, 2019












    @@ -200,6 +215,9 @@ given some assumptions, make predictions about the target feature value

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    +

    +Figure to come here. +











    @@ -675,7 +693,30 @@ os.system(cmd)











    -

    Computing the Gini index

    +

    Algorithms for Setting up Decision Trees

    +Two algorithms stand out in the set up of decision trees: + +
      +
    1. The CART (Classification And Regression Tree) algorithm for both classification and regression
    2. +
    3. The ID3 algorithm based on the computation of the information gain for classification
    4. +
    + +We discuss both algorithms with applications here. The popular library -Scikit-Learn_ uses the CART algorithm. For classification problems you can use either the gini index or the entropy to split a tree in two branches. + +

    +









    + +

    The CART algorithm for Classification

    + +

    +









    + +

    The CART algorithm for Regression

    + +

    +









    + +

    Computing the Gini index

    The example we will look at is a classical one in many Machine @@ -715,7 +756,7 @@ The table here summarizes the various attributes and











    -

    Simple Python Code to read in Data and perform Classification

    +

    Simple Python Code to read in Data and perform Classification

    @@ -791,7 +832,7 @@ os.system(cmd)











    -

    Computing the Gini Factor

    +

    Computing the Gini Factor

    The above functions (gini, entropy and misclassification error) are @@ -869,7 +910,7 @@ split = get_split(dataset)











    -

    Entropy and the ID3 algorithm

    +

    Entropy and the ID3 algorithm

    ID3, learns decision trees by constructing @@ -905,7 +946,7 @@ attributes at each step while growing the tree.











    -

    Implementing the ID3 Algorithm

    +

    Implementing the ID3 Algorithm

    @@ -1101,7 +1142,7 @@ attributes at each step while growing the tree.











    -

    Cancer Data again now with Decision Trees and other Methods

    +

    Cancer Data again now with Decision Trees and other Methods

    @@ -1150,7 +1191,7 @@ deep_tree_clf.fit(X_train_scaled, y_train)











    -

    Another example, the moons again

    +

    Another example, the moons again

    @@ -1222,7 +1263,7 @@ plt.show()











    -

    Playing around with regions

    +

    Playing around with regions

    @@ -1250,7 +1291,7 @@ plt.show()











    -

    Regression trees

    +

    Regression trees

    @@ -1272,7 +1313,7 @@ tree_reg.fit(X, y)











    -

    Final regressor code

    +

    Final regressor code

    @@ -1350,7 +1391,7 @@ plt.show()











    -

    Pros and cons of trees, pros

    +

    Pros and cons of trees, pros

    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • @@ -1364,7 +1405,7 @@ plt.show()









      -

      Disadvantages

      +

      Disadvantages

      • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
      • @@ -1381,7 +1422,31 @@ However, by aggregating many decision trees, using methods like bagging, random











        -

        Bagging

        +

        From a Single Tree to Many Trees, that is meet the Jungle of Methods

        + +

        +As stated above and seen in many of the examples discussed here about +a single decision tree, we often end up overfitting our training +data. This normally means that we have a high variance. Can we reduce +the variance of a statistical learning method? + +

        +This leads us to a set of different methods that can combine different +machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are + +

          +
        1. Votign classifiers
        2. +
        3. Bagging and Pasting
        4. +
        5. Random forests
        6. +
        7. Boosting methods
        8. +
        + +We discuss these methods here. + +

        +









        + +

        Bagging

        The plain decision trees suffer from high @@ -1400,7 +1465,7 @@ learning method.











        -

        More bagging

        +

        More bagging

        Bagging typically results in improved accuracy @@ -1429,7 +1494,7 @@ predictor, averaged over all \( B \) trees.











        -

        Simple Voting Example, head or tail

        +

        Simple Voting Example, head or tail

        @@ -1449,7 +1514,7 @@ plt.show()











        -

        Using the Voting Classifier

        +

        Using the Voting Classifier

        @@ -1500,7 +1565,7 @@ voting_clf.fit(X_train, y_train)











        -

        Please, not the moons again! Voting and Bagging

        +

        Please, not the moons again! Voting and Bagging

        @@ -1558,7 +1623,7 @@ voting_clf.fit(X_train, y_train)











        -

        Now Bagging

        +

        Now Bagging

        @@ -1619,7 +1684,7 @@ plt.show()











        -

        Random forests

        +

        Random forests

        Random forests provide an improvement over bagged trees by way of a @@ -1663,7 +1728,7 @@ this setting.











        -

        A simple scikit-learn example

        +

        A simple scikit-learn example

        @@ -1681,7 +1746,7 @@ accuracy = cross_validate(Random_Forest_model,X,Y,cv=Then random forests +

        Then random forests

        @@ -1703,7 +1768,7 @@ np.sum(y_pred == y_pred_rf) / len(y_pred)











        -

        Feature Importance

        +

        Feature Importance

        Example will be added here. @@ -1711,8 +1776,17 @@ Example will be added here.











        -

        Boosting: AdaBoost

        +

        Boosting, a Bird'e Eye

        +

        +









        + +

        Adaptive boosting: AdaBoost, Basic Algorithm

        + +

        +









        + +

        AdaBoost Examples

        @@ -1751,7 +1825,12 @@ plt.show()











        -

        Gradient Boosting

        +

        Gradient boosting: Basic Algorithm

        + +

        +









        + +

        Gradient Boosting, Examples

        @@ -1841,7 +1920,7 @@ plt.show()











        -

        Gradient Boots with Early Stopping

        +

        Gradient Boots with Early Stopping

        @@ -1903,6 +1982,9 @@ error_going_up = 0 print("Minimum validation MSE:", min_val_error)

    +









    + +

    XGBoost: Extreme Gradient Boosting

    diff --git a/doc/pub/DecisionTrees/html/DecisionTrees.html b/doc/pub/DecisionTrees/html/DecisionTrees.html index 0d5d09fec..dc47b1555 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees.html @@ -89,40 +89,55 @@ div { text-align: justify; text-justify: inter-word; } ('Classification tree, how to split nodes', 2, None, '___sec13'), ('Visualizing the Tree, Classification', 2, None, '___sec14'), ('Visualizing the Tree, The Moons', 2, None, '___sec15'), - ('Computing the Gini index', 2, None, '___sec16'), + ('Algorithms for Setting up Decision Trees', 2, None, '___sec16'), + ('The CART algorithm for Classification', 2, None, '___sec17'), + ('The CART algorithm for Regression', 2, None, '___sec18'), + ('Computing the Gini index', 2, None, '___sec19'), ('Simple Python Code to read in Data and perform Classification', 2, None, - '___sec17'), - ('Computing the Gini Factor', 2, None, '___sec18'), - ('Entropy and the ID3 algorithm', 2, None, '___sec19'), - ('Implementing the ID3 Algorithm', 2, None, '___sec20'), + '___sec20'), + ('Computing the Gini Factor', 2, None, '___sec21'), + ('Entropy and the ID3 algorithm', 2, None, '___sec22'), + ('Implementing the ID3 Algorithm', 2, None, '___sec23'), ('Cancer Data again now with Decision Trees and other Methods', 2, None, - '___sec21'), - ('Another example, the moons again', 2, None, '___sec22'), - ('Playing around with regions', 2, None, '___sec23'), - ('Regression trees', 2, None, '___sec24'), - ('Final regressor code', 2, None, '___sec25'), - ('Pros and cons of trees, pros', 2, None, '___sec26'), - ('Disadvantages', 2, None, '___sec27'), - ('Bagging', 2, None, '___sec28'), - ('More bagging', 2, None, '___sec29'), - ('Simple Voting Example, head or tail', 2, None, '___sec30'), - ('Using the Voting Classifier', 2, None, '___sec31'), + '___sec24'), + ('Another example, the moons again', 2, None, '___sec25'), + ('Playing around with regions', 2, None, '___sec26'), + ('Regression trees', 2, None, '___sec27'), + ('Final regressor code', 2, None, '___sec28'), + ('Pros and cons of trees, pros', 2, None, '___sec29'), + ('Disadvantages', 2, None, '___sec30'), + ('From a Single Tree to Many Trees, that is meet the Jungle of ' + 'Methods', + 2, + None, + '___sec31'), + ('Bagging', 2, None, '___sec32'), + ('More bagging', 2, None, '___sec33'), + ('Simple Voting Example, head or tail', 2, None, '___sec34'), + ('Using the Voting Classifier', 2, None, '___sec35'), ('Please, not the moons again! Voting and Bagging', 2, None, - '___sec32'), - ('Now Bagging', 2, None, '___sec33'), - ('Random forests', 2, None, '___sec34'), - ('A simple scikit-learn example', 2, None, '___sec35'), - ('Then random forests', 2, None, '___sec36'), - ('Feature Importance', 2, None, '___sec37'), - ('Boosting: AdaBoost', 2, None, '___sec38'), - ('Gradient Boosting', 2, None, '___sec39'), - ('Gradient Boots with Early Stopping', 2, None, '___sec40')]} + '___sec36'), + ('Now Bagging', 2, None, '___sec37'), + ('Random forests', 2, None, '___sec38'), + ('A simple scikit-learn example', 2, None, '___sec39'), + ('Then random forests', 2, None, '___sec40'), + ('Feature Importance', 2, None, '___sec41'), + ("Boosting, a Bird'e Eye", 2, None, '___sec42'), + ('Adaptive boosting: AdaBoost, Basic Algorithm', + 2, + None, + '___sec43'), + ('AdaBoost Examples', 2, None, '___sec44'), + ('Gradient boosting: Basic Algorithm', 2, None, '___sec45'), + ('Gradient Boosting, Examples', 2, None, '___sec46'), + ('Gradient Boots with Early Stopping', 2, None, '___sec47'), + ('XGBoost: Extreme Gradient Boosting', 2, None, '___sec48')]} end of tocinfo --> @@ -164,7 +179,7 @@ MathJax.Hub.Config({
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

    -

    Nov 1, 2019

    +

    Nov 2, 2019












    @@ -205,6 +220,9 @@ given some assumptions, make predictions about the target feature value

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    +

    +Figure to come here. +











    @@ -680,7 +698,30 @@ os.system(cmd)











    -

    Computing the Gini index

    +

    Algorithms for Setting up Decision Trees

    +Two algorithms stand out in the set up of decision trees: + +
      +
    1. The CART (Classification And Regression Tree) algorithm for both classification and regression
    2. +
    3. The ID3 algorithm based on the computation of the information gain for classification
    4. +
    + +We discuss both algorithms with applications here. The popular library -Scikit-Learn_ uses the CART algorithm. For classification problems you can use either the gini index or the entropy to split a tree in two branches. + +

    +









    + +

    The CART algorithm for Classification

    + +

    +









    + +

    The CART algorithm for Regression

    + +

    +









    + +

    Computing the Gini index

    The example we will look at is a classical one in many Machine @@ -720,7 +761,7 @@ The table here summarizes the various attributes and











    -

    Simple Python Code to read in Data and perform Classification

    +

    Simple Python Code to read in Data and perform Classification

    @@ -796,7 +837,7 @@ os.system(cmd)











    -

    Computing the Gini Factor

    +

    Computing the Gini Factor

    The above functions (gini, entropy and misclassification error) are @@ -874,7 +915,7 @@ split = get_split(dataset)











    -

    Entropy and the ID3 algorithm

    +

    Entropy and the ID3 algorithm

    ID3, learns decision trees by constructing @@ -910,7 +951,7 @@ attributes at each step while growing the tree.











    -

    Implementing the ID3 Algorithm

    +

    Implementing the ID3 Algorithm

    @@ -1106,7 +1147,7 @@ attributes at each step while growing the tree.











    -

    Cancer Data again now with Decision Trees and other Methods

    +

    Cancer Data again now with Decision Trees and other Methods

    @@ -1155,7 +1196,7 @@ deep_tree_clf.fit(X_train_scaled, y_train)











    -

    Another example, the moons again

    +

    Another example, the moons again

    @@ -1227,7 +1268,7 @@ plt.show()











    -

    Playing around with regions

    +

    Playing around with regions

    @@ -1255,7 +1296,7 @@ plt.show()











    -

    Regression trees

    +

    Regression trees

    @@ -1277,7 +1318,7 @@ tree_reg.fit(X, y)











    -

    Final regressor code

    +

    Final regressor code

    @@ -1355,7 +1396,7 @@ plt.show()











    -

    Pros and cons of trees, pros

    +

    Pros and cons of trees, pros

    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • @@ -1369,7 +1410,7 @@ plt.show()









      -

      Disadvantages

      +

      Disadvantages

      • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
      • @@ -1386,7 +1427,31 @@ However, by aggregating many decision trees, using methods like bagging, random











        -

        Bagging

        +

        From a Single Tree to Many Trees, that is meet the Jungle of Methods

        + +

        +As stated above and seen in many of the examples discussed here about +a single decision tree, we often end up overfitting our training +data. This normally means that we have a high variance. Can we reduce +the variance of a statistical learning method? + +

        +This leads us to a set of different methods that can combine different +machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are + +

          +
        1. Votign classifiers
        2. +
        3. Bagging and Pasting
        4. +
        5. Random forests
        6. +
        7. Boosting methods
        8. +
        + +We discuss these methods here. + +

        +









        + +

        Bagging

        The plain decision trees suffer from high @@ -1405,7 +1470,7 @@ learning method.











        -

        More bagging

        +

        More bagging

        Bagging typically results in improved accuracy @@ -1434,7 +1499,7 @@ predictor, averaged over all \( B \) trees.











        -

        Simple Voting Example, head or tail

        +

        Simple Voting Example, head or tail

        @@ -1454,7 +1519,7 @@ plt.show()











        -

        Using the Voting Classifier

        +

        Using the Voting Classifier

        @@ -1505,7 +1570,7 @@ voting_clf.fit(X_train, y_train)











        -

        Please, not the moons again! Voting and Bagging

        +

        Please, not the moons again! Voting and Bagging

        @@ -1563,7 +1628,7 @@ voting_clf.fit(X_train, y_train)











        -

        Now Bagging

        +

        Now Bagging

        @@ -1624,7 +1689,7 @@ plt.show()











        -

        Random forests

        +

        Random forests

        Random forests provide an improvement over bagged trees by way of a @@ -1668,7 +1733,7 @@ this setting.











        -

        A simple scikit-learn example

        +

        A simple scikit-learn example

        @@ -1686,7 +1751,7 @@ accuracy = cross_validate(Random_Forest_mode











        -

        Then random forests

        +

        Then random forests

        @@ -1708,7 +1773,7 @@ np.sum(y_pred =











        -

        Feature Importance

        +

        Feature Importance

        Example will be added here. @@ -1716,8 +1781,17 @@ Example will be added here.











        -

        Boosting: AdaBoost

        +

        Boosting, a Bird'e Eye

        +

        +









        + +

        Adaptive boosting: AdaBoost, Basic Algorithm

        + +

        +









        + +

        AdaBoost Examples

        @@ -1756,7 +1830,12 @@ plt.show()











        -

        Gradient Boosting

        +

        Gradient boosting: Basic Algorithm

        + +

        +









        + +

        Gradient Boosting, Examples

        @@ -1846,7 +1925,7 @@ plt.show()











        -

        Gradient Boots with Early Stopping

        +

        Gradient Boots with Early Stopping

        @@ -1908,6 +1987,9 @@ error_going_up = print("Minimum validation MSE:", min_val_error)

    +









    + +

    XGBoost: Extreme Gradient Boosting

    diff --git a/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb b/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb index 964cf0fc9..3739cfe22 100644 --- a/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb +++ b/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb @@ -10,7 +10,7 @@ " \n", "**Morten Hjorth-Jensen**, Department of Physics, University of Oslo and Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University\n", "\n", - "Date: **Nov 1, 2019**\n", + "Date: **Nov 2, 2019**\n", "\n", "Copyright 1999-2019, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license\n", "\n", @@ -47,6 +47,7 @@ "\n", "## A typical Decision Tree with its pertinent Jargon, Classification Problem\n", "\n", + "Figure to come here.\n", "\n", "\n", "\n", @@ -92,40 +93,11 @@ }, { "cell_type": "code", - "execution_count": 30, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "2nd degree coefficients:\n", - "zero power: -7.159472988729101\n", - "first power: 0.07804791022278464\n", - "second power: -0.0005586058040523115\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZIAAAEdCAYAAAAmZOH3AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvqOYd8AAAIABJREFUeJzsnXd4FNXawH8nPSF1EzqEhN0EQiAJECK9F0VFENulK1LkgqJ+ChYUlauooChwRbiAglyuYgE7vUiXDlJMD6GGNBJIQsr5/pjssiGbRjqc3/PMk92ZM2femZ3MO+e8TUgpUSgUCoXidrGqbgEUCoVCUbtRikShUCgU5UIpEoVCoVCUC6VIFAqFQlEulCJRKBQKRblQikShUCgU5UIpEkWtQggxUwjxVXXLYY4QYrgQYkMp29Y4+SsSIcRfQoie1S2HompRikRRLQghYoQQGUKIdCHEJSHEF0II5+qW63aQUq6SUvYvbz9CiJ5CiLz8a5ImhDgjhHiyImSsKqSUgVLKbdUth6JqUYpEUZ08KKV0BtoBocDr1SxPTeB8/jVxBZ4HlgghWlT0QYQQNhXdp+LuRSkSRbUjpTwH/Aa0BhBCNBJC/CiESBJCRAghxlnaTwjxixBiyi3rjgkhhuR/lkKIiUKIcCFEihBioRBC5G+zEkK8LoSIFUJcFkKsEEK45W/zyd/3SSHEWSFEcn4/HfL7TxFCLDA75hghxE6z75/k73dVCHFQCNHtNq6JlFL+CiQBQWZ9txRCbMy/NmeEEI+ZbfMUQvyUf9w/hRCzbpFLCiH+KYQIB8JL0d9AIcTJ/NHROSHE/+Wv9xJC/Jx/HZKEEH8IIazyt8UIIfrmf7YXQswTQpzPX+YJIezzt/UUQsQLIV7Mv/4XatvoS3ETpUgU1Y4QoikwEDicv+p/QDzQCHgEeFcI0dvCrl8CI8z6CQYaA7+YtXkA6ID2MH4MGJC/fkz+0gtoDjgDCyjIPYAf8DgwD3gN6AsEAo8JIXoUcUp/AiGADvgvsEYI4VBEW4vkK7pBgBcQkb+uDrAxv896wBPAv4UQrfJ3WwhcAxoAo/OXWxmcf16tStHfUmCClNIFTclvyV//ItrvUxeoD7wKWMq19BrQMf9aBANhFBx1NgDc0H6zscBCIYRHKS6PoqYhpVSLWqp8AWKAdCAFiAX+DTgCTYFcwMWs7XvAF/mfZwJf5X92AJIBv/zvc4B/m+0nga5m378Bpud/3gxMMtvWAsgGbACf/H0bm21PBB43+/4dMDX/8xhgZzHnmgwE3yq/hXY9gbz8a5KVfx2mmm1/HPjjln0+B94ErPPlb2G2bZa5XPnn1Ls0/eV/jgMmAK63tHkbWAcYivhd++Z/jgQGmm0bAMSYnWsGYGO2/TLQsbrvTbWUfVEjEkV1MlhK6S6lbCalnCSlzEAbhSRJKdPM2sWivbUWQEqZCXwNjMifWvkHsPKWZhfNPl9HG3mQf5zYW45hg/aGbeSS2ecMC98tOgcIIf5PCHFKCJEqhEhBe+v2stTWAuellO5oNpJPAfORWDPgnvwppZT8voejvdnXzZf/rFl788+W1hXXH8BQtJFirBBiuxCiU/76D9FGSRuEEFFCiOlFnIula9zI7HuilDLH7Lv576OoRShFoqhpnAd0QggXs3XewLki2n+J9vDrA1yXUu4pw3Ga3XKMHAoqizKTbw95GW0azSNfKaQCoiz9SCmzgGlAGyHE4PzVZ4Ht+crXuDhLKZ8BEvLlb2LWTVNLXZt9Lq4/pJR/SikfQpv2Wos2okNKmSalfFFK2RwYBLwghOhj4ViWrvH5slwHRe1AKRJFjUJKeRbYDbwnhHAQQgShzZ9bjL3IVxx5wFwKj0aKYzXwvBDCV2hux+8CX9/yhnw7uKA90BMAGyHEG2ijizIjpbyBdl5v5K/6GfAXQowUQtjmLx2EEAFSylzge2CmEMJJCNESGFXCIYrsTwhhJ7T4GDcpZTZwFe06I4R4QAhhyHdcSEWbgsuz0P9q4HUhRF0hhFf+edyxMTR3M0qRKGoi/0CzU5wHfkCbs99UTPsVQBvK9pBahqZ4dgDRQCYwpdg9Ssd64Hfgb7SpnEwsTzGVlmWAtxDiwfzpvv5oRvHzaNN27wP2+W0no02jXUQ7t9VothaLlKK/kUCMEOIqMBFt5AeaA8ImNBvXHjS71FYLh5gFHACOAceBQ/nrFHcYQkpV2EpRuxFCjALGSym7VrcsNQkhxPtAAymlJe8thaLCUCMSRa1GCOEETAIWV7cs1U1+TEiQ0AhDmxL8obrlUtz5KEWiqLUIIQag2SIuocVC3O24oNlJrqF5s81Fc9NVKCoVNbWlUCgUinKhRiQKhUKhKBd3ReI2Ly8v6ePjU91iKBQKRa3i4MGDV6SUdUtqd1coEh8fHw4cOFDdYigUCkWtQggRW3IrNbWlUCgUinKiFIlCoVAoyoVSJAqFQqEoF3eFjUShUBQmOzub+Ph4MjMzq1sURTXj4OBAkyZNsLW1va39lSJRKO5S4uPjcXFxwcfHBy3/ouJuREpJYmIi8fHx+Pr63lYftXJqSwihE0L8IIS4JrRSqcOqWyaForaRmZmJp6enUiJ3OUIIPD09yzUyra0jkoXADbQiRCHAL0KIo1LKv6pXLIWidqGUiALKfx/UuhFJfp3pocAMKWW6lHIn8CNayusKJysni3/t+Bdboy1lyVYoFApFrVMkgD+QI6X822zdUSDQvJEQYrwQ4oAQ4kBCQsJtH8zO2o5//fEvfv7759vuQ6FQWMba2pqQkBBat27Ngw8+SEpKSoX0GxMTQ+vWrSukLyMpKSl4enoa68uzZ88ehBDEx8cDkJqaik6nIy/PUo0vjZkzZzJnzhwAevbsWWKgdM+ePWnRogVBQUG0bNmSyZMnl+oavfvuu6U9rQqhNioSZ7RqbeakomU+NSGlXCylDJVShtatW2KEf5EIIdDr9EQkR9x2HwqFwjKOjo4cOXKEEydOoNPpWLhwYXWLVCTu7u40bNiQU6dOAbB7927atm3L7t27Adi7dy9hYWFYWVXsY3XVqlUcO3aMY8eOYW9vz0MPPVTiPkqRlEw6hUuXugJplXVAvYeeyKTIyupeoVAAnTp14ty5cwCkp6fTp08f2rVrR5s2bVi3TsuGHxMTQ0BAAOPGjSMwMJD+/fuTkZEBwMGDBwkODiY4OLiAQsrMzOTJJ5+kTZs2tG3blq1btWnqL774gsGDB9OvXz98fHxYsGABH330EW3btqVjx44kJSUVkrFz584mxbF7926ef/75At+7dOkCwJIlS+jQoQPBwcEMHTqU69evF3neeXl5jBkzhtdff73Y62NnZ8cHH3xAXFwcR48eBWDw4MG0b9+ewMBAFi/WSvJMnz6djIwMQkJCGD58eJHtKpLaaGz/G60Wtp+UMjx/XTBQaYZ2g87A+sj15Mk8rERt1L0KRfFM/X0qRy4eqdA+QxqEMO/eeaVqm5uby+bNmxk7diygxTX88MMPuLq6cuXKFTp27MigQYMACA8PZ/Xq1SxZsoTHHnuM7777jhEjRvDkk0+yYMECunfvzksvvWTqe+HChQghOH78OKdPn6Z///78/bc2M37ixAkOHz5MZmYmBoOB999/n8OHD/P888+zYsUKpk6dWkDOLl26sH37dp5++mmioqJ49NFH+fzzzwFNkUyfPh2Ahx9+mHHjxgHw+uuvs3TpUqZMKVzJOScnh+HDh9O6dWtee+21Eq+TtbU1wcHBnD59muDgYJYtW4ZOpyMjI4MOHTowdOhQZs+ezYIFCzhy5Obvaamdp6dnqX6b0lDrnopSymtoxXveFkLUEUJ0AR5Cq1FdKeg99GTmZHI+7XxlHUKhuCsxvjk3aNCAS5cu0a9fP0CLbXj11VcJCgqib9++nDt3jkuXLgHg6+tLSEgIAO3btycmJoaUlBRSUlLo3r07ACNH3vS92blzJyNGjACgZcuWNGvWzKRIevXqhYuLC3Xr1sXNzY0HH3wQgDZt2hATE1NIXuOIJDo6Gh8fHxwcHJBSkp6ezsGDB7nnnnsATUF169aNNm3asGrVKv76y/J77oQJE0qtRIyY15D69NNPCQ4OpmPHjpw9e5bw8HCL+5S23e1SG0ckoJVWXQZcBhKBZyrT9degMwAQmRRJE9cmlXUYhaLaKO3IoaIx2kiuX7/OgAEDWLhwIc8++yyrVq0iISGBgwcPYmtri4+PjynOwd7e3rS/tbW1aWrrdjDvy8rKyvTdysqKnJycQu39/PxISUnhp59+olOnToCmzJYvX46Pjw/Ozs4AjBkzhrVr1xIcHMwXX3zBtm3bLB6/c+fObN26lRdffBEHB4cS5c3NzeX48eMEBASwbds2Nm3axJ49e3BycqJnz54WY0FK26481LoRCYCUMklKOVhKWUdK6S2lrNQyq3qdHoCIJGVwVygqAycnJz799FPmzp1LTk4Oqamp1KtXD1tbW7Zu3UpsbPHZzN3d3XF3d2fnzp2AZqA20q1bN9P3v//+m7i4OFq0aHHbsnbs2JFPPvnEpEg6derEvHnzTPYRgLS0NBo2bEh2dnYBWW5l7NixDBw4kMcee8yi4jInOzubV155haZNmxIUFERqaioeHh44OTlx+vRp9u7da2pra2tLdnY2QLHtKopaqUiqGm83b2ysbJQiUSgqkbZt2xIUFMTq1asZPnw4Bw4coE2bNqxYsYKWLVuWuP/y5cv55z//SUhISIHpn0mTJpGXl0ebNm14/PHH+eKLLwqMRMpKly5dOHv2LKGhoYCmSKKioujcubOpzTvvvMM999xDly5dSpT9hRdeoG3btowcOdKi6/Dw4cMJCgqidevWXLt2zeR4cO+995KTk0NAQADTp0+nY8eOpn3Gjx9PUFAQw4cPL7ZdRXFX1GwPDQ2V5S1s5T/fn7QbaQxrPYz3+r7HP3/5J9O6TjNNeykU5izcv5DvTn1HSIMQPhrwUaHtyRnJTF0/lY8HfIzOUVcNEsKpU6cICAiolmMrah6W7gchxEEpZWhJ+6oRSSn5Z4d/4mjjyMd7P+bA+QP85/B/+OHUD9UtlqKGMn//fLbGbOXjvR+TkV14Dn9rzFZWHF3B5qjN1SCdQlGxKEVSSp7r+Bzv9HoHiWRj5EYAIpNVbImiMLl5uUQlR+Ht5g1AVHJUoTbGaVI1Xaq4E1CKpAwYje7rI9cD6iGgsEz81Xiy87IZoB8AWH7hMAa4qpcRxZ2AUiRlwGgP2XduH6AUicIyxvvCqEgs3SfGlDvqHlLcCShFUgY8HT1xs3cjT2qeFWevniUrJ6uapVLUNIyjjA6NO+Du4G4xvY4akSjuJJQiKQPGBI4AjjaO5Mk8YlJiqlcoRY0jIikCe2t7mrg2waAzFEr4mZWTRVxqHI42jsRfjbdojFcoahNKkZQR4/RWT5+egHqjVBQmIikCXw9frIQVeg99oemr6JRoJNJ0D0WnRFeDlNXP2bNn6dWrF61atSIwMJBPPvmkzH0UlYr9dtOvVxXG9PnGJSYmhgMHDvDss88CWjS6MRlkbUApkjKi99BGJMXNfyvubiKTI00vHAadgdiUWLJzs29uz5/WutvvIRsbG+bOncvJkyfZu3cvCxcu5OTJkxXW/+2kXy8NJUWglwZjahjj4uPjQ2hoKJ9++imgFMkdj5/OD4Au3l1wtnMuMP+dnZtN+8XtWXt6bXWJd8cyf998HvjvA6bvnZZ2wvYdW8auG1umfg5dOITffD8Srt1+sbOiiL8aj9cHXhy7dAyDx01FkitzcZvtxpboLYCZMd5wdyuShg0b0q5dOwBcXFwICAgwpZHv2bMn06ZNIywsDH9/f/744w9AS/L4xBNPEBAQwJAhQ0qVZ8tS+vWvvvqKsLAwQkJCmDBhArm5uQAsXboUf39/wsLCGDduHJMnTwa03FkTJ07knnvu4eWXX+batWs89dRThIWF0bZtW1O0eW5uLi+99BIdOnQgKCjIlBm4NGzbto0HHniAmJgYFi1axMcff0xISIjp3GsytTVpY7XxWOBj5Mpc2jdsr01bmM1/x6bGcujCITZHbWZwy8HVKOWdx/rI9fwW8RtZOVlk5WaxN17LF7QxamOZ+tkes52IpAgOXzxMf33/CpXx4PmDJGYkMqH9BKbco6UMH9JyCGdTz/LmtjfZGbeT3r69iUyOxMXOhRaeLYo0xlc5U6fCkYpNI09ICMwrXTLImJgYDh8+bMqeC9qb//79+/n1119566232LRpE5999hlOTk6cOnWKY8eOmRRRSZinX7ezs+Prr79m165d2NraMmnSJFatWkXfvn155513OHToEC4uLvTu3Zvg4GBTH/Hx8ezevRtra2teffVVevfuzbJly0hJSSEsLIy+ffuyatUq3Nzc+PPPP8nKyqJLly70798fX1/fAvIYsx6Dls34hx9uBjf7+PgwceJEnJ2d+b//+79SnV91oxRJGaljV4en2z0NaG+bJy6fMG0zBZmpaooVTkRShMm54Xq2ViQouH4wRy8dJSM7A0dbx1L3Y/xb0YrE2Pd7fd7Dw9EDADcHN2b0mMGSQ0sKHNugMyCEsGiMv9tIT09n6NChzJs3D1fXmzXrHn74YeBmqniAHTt2mOwIQUFBBAUFlfo4xnRQmzdv5uDBg3To0AHQHur16tVj//799OjRA51OS1nz6KOPmtLNG79bW1sDsGHDBn788UdT2dzMzEzi4uLYsGEDx44d49tvvwW0hInh4eGFFIlxautOQSmScqD30PPjmR/JzcvF2spaRStXEsZIcdCurVGRDNAP4Oilo0SnRNOqbqtS9VWZ8RsRSRHoHHUmJWKOQWcocH8EN9DedPUeeg6cL18euAqhlCOHiiY7O5uhQ4cyfPhwk+IwYkysaG1tXW67hHn69cuXLzN69Gjee++9Am3Wri1+SrpOnTqmz1JKvvvuu0JZhKWUzJ8/nwEDBpRL3tqGspGUA4POQHZeNvFX44GbRtSYlBhy8spvkFNoGCPFQTNkGz3ljCOKskwNVWb8RmRypMkZ41b0HnoikyPJycshJiWmgA0lJiWmgDH+bkFKydixYwkICOCFF14o1T7du3fnv//VqkacOHGCY8eOlbjPrenX+/Tpw7fffsvly5cBSEpKIjY2lg4dOrB9+3aSk5PJycnhu+++K7LPAQMGMH/+fNMo5/Dhw6b1n332mSmF+99//821a9dKdW7muLi4kJZWadXDKxylSMrBrXVKjG+7OXk5xKXGVZtcdxrmo4eIpAgikiKoV6ee6a2+tKOL7NxsU9xPZY1IisoGbdAZuHztMicTTpKdl226d/QeenJl7l15v+zatYuVK1eyZcsWkxvsr7/+Wuw+zzzzDOnp6QQEBPDGG2/Qvn37ItsWlX69VatWzJo1i/79+xMUFES/fv24cOECjRs35tVXXyUsLIwuXbrg4+ODm5ubxb5nzJhBdnY2QUFBBAYGMmPGDACefvppWrVqRbt27WjdujUTJky4rdHUgw8+yA8//KCM7XcDpsqJyZH0oQ8RSRF4OXlx5foVIpMiae7RvJolvDMwjh68nLyITI7kevZ1DDqDKdNAaUcXcalx5MpcvJy8iEqOIk/mYSUq5l3qRu4NYlNjGd5muMXtxntlQ+SGAt+NfyOSIkzK5W6ha9euFFXGwryioJeXl8lG4ujoyP/+978S+y6qIqGRxx9/nMcff7zQ+mHDhjF+/HhycnIYMmQIgwdrTjNffPFFgXaOjo4WPbKsrKx49913effdd4s9fnp6eqF1PXv2pGfPngD4+/uXarRVU1AjknLQxLUJ9tb2RCRFmObxjdMtyk5ScRgjxbs3624akeg99KZMA6W91sZ2/fX9yczJ5Hza+QqTMTYlljyZV+SIxKgkfo/4XfuePwVmrkgU1c/MmTMJCQmhdevW+Pr6mhSJonjUiKQcWAkrfD18iUyO5FzaOW7k3qCbdze+P/W9inivIGJSYjh44SC+Hr746/z54dQPSGSBN/q98XtN7sBGfN19qe9c3/Q9OSPZFMcxQD+A/x7/LxFJETRxbVIqOa5cv4KLnQv2NgUr6yVnJGNvY2/6vYsaVRgVx9aYrdhb29PYtTEADZwb4GTrpO6XGoLRC0tRNpQiKSdGbxzjG6Wfzs9iWgxF2cnIzqDVwlZk5GTwcMDDtKrbCok2FWL00mrl1Ypv/vqGTks7Fdg3sG4gJybddM1+dM2jbI7ejLuDO129uwKa4d2YpqQ4pJQELwrmqZCneKf3OwW29VnRhw6NOtCmfhuAIkckLvYuNHVtytmrZwmoG2CaUhNCqPtFUetRiqSc6D30bI3eanoQ6HV69Dq9esOsACKTI8nIyeC1bq/x3D3P4e7gTmPXxggE3Zp1A+ClLi/RqWknU0ZmgFXHV7H6+Gqyc7OxtbYF4Pjl49zvdz9z+s/B280bWytbiw/va9eucebMGc6cOcPp06eJiori/KXznD95nk+tP+VH9x+xsbHBw8MDDw8Pjlw8QnLzZFLbpuIknKhfp36hPo1sHb2V8KTwQq7Kep2evxP/LmIvhaLmoxRJOTHoDFzLvsaus7uwtbKlqWtTDB4GNkZuREqJEKK6Ray1GF11B7ccTN06dQHo7du7QBsnW6dCgYWX0i/x1bGviE2NxaAzkJaVxuVrl+nm3Y2WXi0B8HH3ITI5kuTkZLZv386OHTvYsWMHhw8fJi9PU0pCCJo2bYqTuxM4QJ5THr6+vmRnZ5OSkkJUbBQyWhKzM4aYFTEIW0HPzT25//77GTx4MP7+/gXkMr5k3IrBw8Bv4b9VqPFfoahKlCIpJ8a57w2RG2ju0RxrK2sMOgMZORlcSL9AI5dG1Sxh7cU0yisiNqMozN2yDTpDIftFXFwcNgds+G3fb9T9R11yc3Oxt7enY8eOvPLKK4SEhNCyZUsMBgMODg6sPLqSUWtHccP6Bt+9+h3WVvnRzZEbGLBiAKSAe4o7XolepJ1PY9q0aUybNo22bdsyYcIEhg0bhouLS7HyZuVmcT7tfKltNgpFTUK9/pQT45z4xfSLN2MDbokvUdwexUWKF8etnlARSRGQCcd+PUbXrl1p1qwZp1ac4nrydV566SX++OMPUlNT2bZtG7NmzeKRRx6hdevWODg4ADfdj2/k3uBc2rkC8mEF6CCleQpDnhvCoUOHiI2NZd68eeTm5jJx4kRTfMKVK1dKJe/dxFNPPUW9evVo3bp1gfVJSUn069cPPz8/+vXrR3JyMlA4K+6YMWNM6UiKw5i2PTAwkODgYObOnWsaeVY327Ztw83NzRRL07dvXwAWLVrEihUrAM39+Pz5ivMyrGiUIiknzdybYS20N1TzaGW4Ox8MFUlxkeLFUb9OferY1iEiMYJdu3bxr6n/gjnwzkvvkJiYyLvvvsurX79K3qQ8Xnj9Bbp27WpKx2GJWwMiTfLdElFv/N29vb157rnnOHLkCHv27OG+++5j9uzZ+Pj48Oabb3L9+nWL+9WI5I1VzJgxY/j9998LrZ89ezZ9+vQhPDycPn36MHv2bOD206sbc1v99ddfbNy4kd9++4233nqr3PIDpszB5aFbt26mlPKbNm0CYOLEiYwaNQpQiuSOx87aDm83b+DmSMTbzRsbK5u78sFQkRQXKV4cmZmZeJz2YPmk5XTt2pWTu0/i2MGRffv2cfLkSV555RU6h3Q2HaMscpj/phHJEQWCTm9VekIIOnbsyNdff82JEye4//77efvtt2nZsiVr1qwxBeM1dW1apPH/Tqd79+6mJInmrFu3jtGjRwMwevRo1q5dW2R69R07dtC5c2eaN29eqtFJvXr1WLx4MQsWLEBKWWTq97y8PCZNmkTLli3p168fAwcONPXv4+PDtGnTaNeuHWvWrCEyMpJ7772X9u3b061bN06fPg1AQkICQ4cOpUOHDnTo0IFdu3aV+trMnDmTOXPm8O2333LgwAGGDx9OSEhIqVLnVzXKRlIBGHQGolOiTQ8bGysbfNx97vqsruWhpEhxS1y8eJFPPvmExYsXk5SUhH1DexYtWsQqsYpcm1zCwsJMbY1KPzI5kk5NOxXVpanNQy0eIi41rtDoJKh+kCm4sTil16pVK77++msmT57MlClTeOyxx3j44Yf57LPPqFevHr4evtV6v0ydOrXCs9GGhIQw7zaTQV66dImGDRsC0KBBAy5dumQxvfrSpUu5cOECO3fu5PTp0wwaNIhHHnmkxP6bN29Obm4uly9fZt26dRZTvx88eJCYmBhOnjzJ5cuXCQgI4KmnnjL14enpyaFDhwDo06cPixYtws/Pj3379jFp0iS2bNnCc889x/PPP0/Xrl2Ji4tjwIABnDp1qpA8f/zxhymt/KOPPsprr71m2vbII4+wYMEC5syZQ2ho6G1dz8pGKZIKQO+hZyMbC7yR6j307Ivfx5dHvmRU8Kga7721/9x+tsdsN323s7ZjTMgY3Bws5xqyxOELh9kUtQk/T79y12MpKVLcnOjoaD788EOWLVvGjRs3GDJkCLadbPk+43uutr7KyV0nGeg3sMA+vu6+CESJo4DUzFSuXL+Cv6c/vu6+bIjagNcuL0AbndxnuI/E64kkXEsolaG8W7duHDx4kLlz5zJjxgz++OMPli1bht5Dz/5z+/lw14fY29jzVNuniEiKYGPkzXorNlY2jAoehaeTZ4nHuZMQQhT7/zN48GCsrKxo1aoVly5dKnP/RaV+37lzJ48++ihWVlY0aNCAXr16FdjPmGIlPT2d3bt38+ijj5q2ZWVlAbBp06YCVR+vXr1Keno6zs7OBfrq1q0bP//8c5llrykoRVIB9PDpwYaoDfh63Kw50NW7K+sj1zNm3Rg6Ne2Ev6d/MT1UP8/88gyHLhwqsM7O2o5nOjxT6j6e+/05/oj7AythRfor6aWuEWIJ87icovjrr7+YPXs2q1evxsrKitGjR/Pyyy/j5+fH2tNr+ebrb3h508sAdGnapcC+9jb2NHVrWmK8j8njy0NPV++uLD28lCMXtTd3gaBTk0442TrhYONg8uYqCWtra15++WUGDhzIiBEjePDBB+kxsgdxvnEmed3s3Vh2ZBk7YncU2Dc7L5uXu7xcquOUhdsdOVQW9et4oc2YAAAgAElEQVTX58KFCzRs2JALFy5Qr169Itua27eKyt11K1FRUVhbW1OvXr0iU7+XlEDSmFY+Ly8Pd3d3iyO6vLw89u7da3LcuFNRNpIK4InWTxD5bCR21namda93f52to7cCEJ4YXl2ilQopJeGJ4TwT+gzpr6ST9koaTrZOhCeVTe7wpHCcbJ3Ik3lEp0SXSybjA9zSiGTv3r089NBDtG7dmh9++IHnnnuO6OholixZgp+fVgp5cMvBXH/tOumvpHPt1WtMCJ1QqB/zGiFFYdxu0BlY8uAS0l9JNy3XXr3G0FZDebvX22wYuaHM59i6dWv27NnDuHHj2L5yOz139iRmfAw2VjaEJ4UTnhjOyKCRpuPVdapb4++limLQoEF8+eWXAHz55ZemeusVkV49ISGBiRMnMnnyZIQQRaZ+79KlC9999x15eXlcunSpyESQrq6u+Pr6smbNGkD7fzKW9O3fvz/z5883tb3d6cOanlZeKZJKJLBuIFDzvbcSrieQdiONll4tqWNXB2c75zKn7Ui/kc7F9IsVlrQyIimCOrZ1TJHiUko2btxI79696dSpE3/88QdvvvkmsbGxzJ07l8aNGxfqw8HGgTp2dXCydbJ4DL2HvkSHCON2vU5LElnHro5pKc+Iy4ijoyOLFy9m2bJl7N65m3t730uj7EYcvXSUC+kXaOHZwnS8O7Ga4j/+8Q86derEmTNnaNKkCUuXLgVg+vTpbNy4ET8/PzZt2sT06dOB20+vbixtGxgYSN++fenfvz9vvvkmUHTq96FDh9KkSRNatWrFiBEjaNeuXZFp5VetWsXSpUsJDg4mMDDQlLL+008/5cCBAwQFBdGqVSsWLVp0W9fJWDNeGdvvQrycvHCxc6nx6VKMD0vzt3+DzsCZxDPF75ibC1euQFISFyP288AZmIIbzfaAV/y/od4+yMyErKybf/PywMqq8OLoCM7OpsX3r61MzPNEbtnCD8eP896XX3LgyBEaNWrE3LlzGT9+fKF55rJi0BlIuJ5AamZqkbagiKQI6tepj7Nd+Y5VEk8++SR6vZ4hQ4aQPi+dhJEJUK/wb7ItZlulylHVrF692uJ6T09PNm/eXGj9renVu3XrVmC7pfTsULyLbnGp3+fMmYOzszOJiYmEhYXRpo2WU82Y1t6Ir6+vRTdmLy8vvv766yKPDQXTx5szc+ZM0+ehQ4cydOjQYvupTpQiqURMNblr+IjEUgS53kPPlpO/kHfsKFYRkRAZCfHx2nLunLZcuKApE8AA/ATAl2hJTNaD9SZwcNAWe3ttsbbWlIn5kpsLGRmQlmbq7xlgFRD4n76cBvTAYmDUjRvYL18OW7ZAs2bg43Pzb/Pm4OVV6vM2ryfTrmE7y9cm+fZckG+H7t27s2fPHjp078DV/1yFYQVtRHoPPSuPrSxTjXpF+XjggQdISUnhxo0bzJgxgwYNGlS3SDUSpUgqGb1Oz9GLR6tbjGI5e/4UneMFzb/eCH99AmfO8MZfh/nw0g14O+RmQ1dXaNwYmjSBgADtc6NGoNOx5sJmPjj1HzZPPcSQDU9h5+HFb6M3Fn1QS0hJelISn/97IdM+eJPcdAjW61l9//08qtdjfeUKXL4MFy9CbCzs2gUpKQX78PLSZGvV6ubfNm3AwgPAqDgjk4pWJJFJkfRp3qds51EO/P39mbp4Km+PfRu+gqiHoggdrLl8GhVaWWrUK8pHSQWyFBq1SpEIIbYBHQFj7cpzUsoW1SdRyRg8DKw7vY6cvBxsrGrA5U5Ph/37Ye9eOHQIjh5lemQEr0qAKeDmBi1bkt6pHR+kbuYfQ2bQqvNDYDBo24pg009bicnxwrVVW+qebMGB8wfKJFZCQgLz589nwYIFWjoMH3j2vWeZ9895xbtOX72qKZWYGIiIgFOn4ORJ+OYbyE+rAWgKr337m0toaImpbDKyMziXds6UsaCqCG0RCk+C9SprRj0xCs9fPOnTp8/N2JekyApTJCqxqAJK7+1WFDXgyVZmJksp/1PdQpQWvU5Pdl42Z1PPFnAPrhKkhOho2LkT9uzRluPHtekk0JRDcDBLAjOJ99HxzvM/grc3CEFWSgyzPvGlWRdvWrUrui62EfN0JgadgW9PflsgjXtRRERE8Mknn7B06VIyMjIYPHgwfUb2YcrxKQwaOKjkh5yrqzbiyJ+7LnDuly9rSuXoUTh4UFt+/lnbBjg3a8Y3ng5kXP4F6g6BFi3A7HhRyVGm86lK9Do91IGgl4LIXprNoEGD2LhxI/4hmgt5RU2VOjg4kJiYiKenp1ImdzFSShITE8vlolwbFUmtwvgQGrNuDLN6zaJbs24kXk9k5raZvN/v/SI9im6bixc1+8HmzdoSG6utd3WFe+6B11+HTp20zx5aMsTXP6zLwy07araGfIxpOyx5NS0/vBxPJ08GtRhEZk4mz/zyDPvO7eOhFpqLpt5DT67MNaVx3xC5gcikSFNMitEDa/78+fzyyy9YW1szcuRI3Hu7E2kTyfIrywtcu9tCCKhfX1vMA8nS0uDIEThwAHbvps+GdegO7YJ/B5Dqas+pFjqaDBlNk0fHEpFTcixLZdDcozkCQYB3AHM3zqV79+4MHDiQzZs3l6lGfUk0adKE+Ph4EhISKqQ/Re3FwcGBJk3KkXlaSllrFmAbkABcAXYBPYtpOx44ABzw9vaW1cXVzKuy95e9pf079nLM2jFSSilXHFkhmYlcH7G+/Ae4cUPKLVukfOEFKQMDpdTet6V0d5dyyBApFyyQ8vhxKXNyLO6ekpEimYn8YOcHhbb5z/eXj3zzSKH1TT9qKrsv7y6llHJn7E7JTKT/fH+57vQ6KaWUO2J2SGYifw//XUop5cBVA6XHbA+ZlpYmFy5cKFu2bCkBWa9ePTljxgx57tw5mZuXKx1mOcj6H9aXIYtC5JD/DZG5ebnlvz4lMPr7UbLr9Hry4DuT5PJgZJQ7pmuY3MhTLuiAvPrNV1JevVrpspjz3G/PyZ/P/CyllDI2NlZ6e3tLT09PGTAzQA5YOaBKZVHcvQAHZCmezbVtRDINOAncAJ4AfhJChEgpC72iSSkXozn6EBoaWr4JwHLgYu/C5lGb6fFFj4JpzfP/3lqUqVQkJ8Nvv8FPP8Hvv2sGZzs76N4dRo6EPn2gbVvNQ6oEiqs1btAZCo1IMnMyib8aT67MLXAuP//jZ/w8/Qr0FZEUQX/ZnxNHTpC8LZlG7zYi7WoaoaGhrFixgscee8wUlRx/NZ7MnEw+HvAxE0Mnlv2a3CZ6nYEvHS7zc7f6vJkLDerU52GbIBbaDOLsijmMPpqI82MjwNZWG9kMGQIPPQT5eaAqi3n33ow09/b2ZvPmzVq+poVxZEyteXEEirubGhOQKITYJoSQRSw7AaSU+6SUaVLKLCnll2ijkoHF91wzMHjcfCgbH95lyg6cmAhLlkDfvlC3Lgwfrk1hDRkC33+vbd+4EaZNg9DQUikRKBi5fSvGoERpZoiLTo5GIjmfdp7r2deJTI7ESljRzP3mtFhD54Y43HBgzfI1hISEEPdhHByGLn26sGfPHvbv38/IkSMLpLYwBf7dRtr48mA8701Rm/B09KRD4zB2OlyCyZN5cYo//T9up13nqVM1e9Mzz2jeap07w4cfagb+qpDTYODHH38k62oWMZ/FkHat5kY5K+4+aowikVL2lFKKIpauRe0G1AoroV6n50L6Ba7duHZzRFJSlHJKCnzxBdx3n+a+On48xMXByy9rhvMLF2DZMk2Z3GZwXnEPcIPOQNqNNBKu35xDNzf0RiVHEZEUQTO3ZthZ25GamsrKlSsZNGgQWe9nsX3Rds0Kdz/wIox6axQdO3a0aNgtTqFVJsbR0574PVopXDPlGZkciXc9P20k8sEHcOYMnDgBb7+tBVi+/DL4+WmKe948zT5ViYSFhTFu1jiIhydGPFFjCjMpFDVGkZSEEMJdCDFACOEghLARQgwHugOFw0lrIObBb8aHpsURSU6ONmX18MOaofjJJzWX1hde0Nx1z5yBd9+Fjh21iPByEpEUQQPnBtSxq1Nom3mchXl788+nYk/hdMqJQYMGUa9ePUaNGsXRo0fR36vH9xVf5q6ZCx0AR4o1EkcmR2o1792alvucyoLxd8nJy8GgM2DQGbiefZ2zV88SmxJbULEJAYGBmsPCoUPaCGXOHM2i8vzz2kilf3/48kvNLbkSeOLRJ6Av/Lr2V2bMmFEpx1AoykqtUSSALTCLm8b2KcBgKeXf1SpVKTE+lA+eP0hiRiL21vZEJkeSJ/PfKk+ehJde0oL9Bg3Sgu0mTdLiPaKj4f33NbtHBbtpRiZHFjkKsFTpMfxKOLbnbWErPDv0WY783xH++vwvDh8+zOTJk9mzZw+xsbEMfnYw553Om5IM2lvbF+u2GpEUgY+7T5XH2ugcdXg4aN5reg+9aYSyJXoLuTK3+BGSjw+8+KLmVnzyJLzyijbVNWaMNoIcPVpzvS6nj745eg89dIEug7vw7rvvlph+Q6GoCmqNsV1KmYD2blsrMT6gNkRpWWK7N+vOztMbSVkwF92q72DfPrCxgfvv10YhAwdqBt5KJiIpgr7N+1rc5uPuAzmwbec2Lm64yM6dO/lty29kp2eDgGuGa9ADpgyfwryn5mFlNkLS6/Rk5WaxI24H9tb2hDUOK1GRVPW0lhG9Ts+B8wdMIxKA9ZHrtW2ltdkEBMCsWfDOO9q044oV8N//an8DAmDcOBg1CjzLV0ukoUtDHG0dCR0birwsGTt2LK1btyYwMLBc/SoU5aHWKJLajruDO15OXqyPWI8+Ed49nYV+LXhkvqyl8ZgzB0aM0KazqghT5Hb+wzMzM5OTJ0+aakcfPnwYsU+wLHsZoKXvcAh0oN097bjhc4OYGzGQCb279i6gRODmaGZ9xHr0Oj1+Oj9+jbBc38Foj7i1ZkhVYdAZTIqkmVszrIU16yPWm7aVCSE0Q3znztpv+s03sHixNjU5fbo2ZTllihbLcxujSythRXOP5kSnR7NmzRrat2/PkCFD+PPPP4vMTKtQVDa1aWqrdpOXx6h4T776TzIR86H9t7vZoIdflrysGXBffLFKlEhGRgaRkZF8sPID6j5eF9bDD2/8QEBAAC4uLrRv356xY8eyfPlypJQ06dUE/2f82Xd6HxkTM0i7L43eg3oT0CyA5EwtBUlRhnqA5Mxk9B56DDoDF9Mvkn6jcHbWK9evcDXrarWNSIwpUPQeemytbfFx9yE5MxknWycaOJcjSZ+zMzz1lDY9eewYTJiguW136aIFhK5aBTdulF3efLfsRo0a8c033xAdHc3o0aNLNL7n5uXS68te/PL3L7d7RgqFRdSIpLLJyNCmN+bOZW54OKkeTvz5dE/avvkZI5brecnXmvvL8GYqpeTGjRtkZWWRmZlJZmYmaWlppKSkFFpSU1O5fPky58+f5/z585w7d46UW5Ic2tjZkOmXSUBAAA8//DBt27YlJCSE5s2bY2VlxYSfJvD96e+JuBHB2atnGdt2LE+3e5qUzBS8HL2oW6cugfUKT6s0c2vG+33fJ/5qPMPaDCMuNQ7QPL2C6gcVaFtcLEtVML79eJq5N6O+s6bI5/Sfw5boLYQ2Cq241CFt2sCnn2qOEitWaJ9HjNDsYpMmaUqmbt1SdaX30LM+cj15Mo9u3boxZ84cpk6dyuzZs3n11VeL3C8uNY5tMdsIrBvI/f73V8x5KRQoRVIqevToQW5ubklR9wXX5eQgExKQV65onx0dkU2agKsrcncMsv+9iCTBgkUL+M75uyL7y83NJTMz06Q4jLWgS4OjoyOenp40btyYFi1a0KtXLxo1akSjRo1YHrWcWOtYIl+PLDQtZY5BZ+DK9SumMrzz75tvSmFeVMZc0FLom5eENVaPjEiKKKRIqsv110hTt6Y83e5p0/fBLQeXu+Z8kTg7a4pj4kTYsEFzG54xQ7OvPPWUplh8i8/JZtAZyMzJ5ELaBRq7NubZZ59l7969zJgxg+7du9O1q2VveVP8Ug2vj6OofShFUgpsbW2xsbFBCFHsAiAyMxHR0Yi4OERuLqJePYS/P6Ju3YLthCA5LpnM3EzaGtoW2Z+1tTUODg44ODhgb29f6LO9vT2urq64u7sXWNzc3LCzsyvynD75/BMCnAOKVSJwc5SwPnI9TVyb3HYdDEuuxEYikyIRCHzdqzipZXViZQX33qstp07Bxx/D0qWaPWXYMM2e0spyhl9zb7rGro0RQvD555/z559/MmzYMI4cOYJOpyu0362ZFRSKikIpklKwadOmkhvFxmrTFsuXa+6ew4bB//0fBAUVucuUX6ew4tgKVk9bXaXZV8ti3DY+tE5cPkFPn563fUw3Bze8nLwsPsQikiNo6tYUext7C3veBQQEaArkzTfho49g0SJYuRIGD9ZcisPCCjQ3T0HTw6cHoNUN/9///kfnzp0ZO3Ys33//faF7yqjEY1Jiak5ZA8UdgTK2l5fYWG1+289Pi0IfN06rJrhiRbFKBLSH9NWsq1y5fqVqZM2nLMbt5h7NTZ/Lm76kqJrj1en6W6No3BjmztWyF7zxBmzfrhnlBw7UYlXy8XbzxsbKptAUVWhoKLNnz2bt2rV89tlnhbo3XvucvByTzUqhqAiUIrldLCmQiAhYuFCr6VEKTIWKqnjO2lRatxTGbWc7Z5PnUnkf9noPfZFTW1WdY6tG4+kJb72l3WOzZ2sxRqGhmuvwiRPYWNng4+5jcXQ3depU7rvvPl544YUCtc1B+92NwZdqektRkShFUlauXNES+FlSIE3Llt7DUuR4VWBUXKVVDMaHfEWMSOJS48jKuekwcDXrKgnXE9SIxBIuLloSzuhomDlTqy8TFATDhtEjq6HFFxArKyu+/PJL3N3dGTFihMk5Q0pJZFIk/fT9gDImDFUoSkApktJy7Rr861+g18P8+Vr6i9tUIEZ83X0RiCr9p07NTGVf/L4yGbeND/mKGJFIJDEpMaZ11ZX1t1bh6qrZT6KiNMWybh2fT9vJlP8cR164YGqWk5dDWlYadevWZenSpRw/fpw33niDPJnHnvg9ZORk0M27Gw42Dvx5/k+SM5KLOahCUXqUIimJnBwtfbufn5asr2dPrVztkiW3rUCM2NvY09StaclZgCuQXl/2YsGfC/D18C21cTuwbiC2VrbljvOwNAKrbtffWoWnJ7z3HkRFceyRrgw/mA1+Bi0ty/XrvL/zfQL/HYiUkvvvv5/x48fz4Ycf8tKSl+iyTHOsaFW3FS29WrL8yHI6LKm1GYcUNQylSIrjyBEtkGz8eC1B3x9/wLp1Rbpl3g4GnaHKprZy8nI4fvk4j7R6hJ/+8VOp9/tn2D85MP4Arvau5Tq+JZtQdQcj1krq1+fcOy/T6p+Q1D1MM8z7+eGy+jvOpZw1pf2fO3cuzZs3Z8kbS3ATbvwy7Bd6+vTkm0e+YWTQSCKTIy1mGlAoyopSJMXRqJE2T/3DD1o23iICvcpDUQboyiAuNY6cvBzuM9xHq7qlV4ZOtk6Fgghvh7pOdXGxcyk0Iqlfpz7OdrdXT+VuRe+hJ8ITfps9VnvBadKEZxcd5sBiuPyzlhHY2dmZFStWkHY5DbuNdgz0G4iVsMLP048H/R8ElK1EUTEoRVIc9erB/v2aP38lxXkYdAYSridwNaty6leYU932CCFEoRGYcv29PXw9zOxrXbsid+9m1GO2eGRA6yeehSeegPh4OnfujGsfVxJ2JvDjjz+a9q8uj0HFnYlSJNVMcRHfFU1NsEfodfpCU1tqWqvsONg40MS1icm+duH6JVa2yiZgMmwd1R3WroWWLcmZ/S4ZHa7SwNCAcePGkZCgTXsZ7zvlBqyoCJQiqWaq0gU4MjkSRxtHGro0rPRjFYXBw0B0cjS5eblkZGcQfzXelH1XUTaMWYDh5otIpi0sfaipVmirTx9sXnmNY4vh7SfuIyUlhcmTJwM3Mw2oqS1FRaAUSTVTlVMMEUkRNPdojpWovp9dr9OTnZfN2atniU6JNq1TlB3zaULjX1OgYvPmsG4d+xe/iU0ejJu1nDf8/Pjmm2/4/vvvb+5fhR6DijsXpUiqGWc7Z+rXqV8lI5KaYI8wH4HVhKm22ozeQ2+yr0UmR2ItrOnt07vAvbQ3SEfrSZA+Yxovh4fTzsqKZ8aMITEhoUo9BhV3NkqR1ACK+oe+fO0y+8/tB2BT1CYyczLL3HfCtQQWH1zMogOLiq3PXlUYj7/y2EpWn1hdYJ2ibBivW2RSpKnmfUuvliRmJPL5gc9Jv5FORFIEdnVcqPPWe9geP87ytm1JTkvj2cBAwtLcOJt6tkCmAYXidlCKpAZwqwHayKwds+j9pfaG2W9lP1YeXVnmvj/a8xETfp7AM788Q2ZOJqGNQitC5NumkUsjGrk0YsXRFfzvxP/wdfdF51g45bmiZMynRY0vCR0aa0GGE3+ZyFfHvjI5MwghwN+foP37ee3BB/lvQgJNxy7ilR2S6MtnqvM0FHcAKo90DcDgYWDF0RVkZGcUqPdxJvEM17KvsTlqs+l7Wfk76W/8Pf3ZPmY7NlY2eDl5VZjct4OVsCJiSgSpWamAVstecXsYPa/CE8MJTwwnrE0YPX16kvhyIk0/bsrfiX8XLiRmZcUr337L923bMjEyglNbcrHu9RCs/g7aFV2oTKEoDjUiqQEY3yyNxmcjxumu9ZHrC3wvCxFJEfh7+tPAuUG1KxEjjraONHBuQAPnBjjYOFS3OLUWF3sX6tepz5/n/yQ1K9U01aVz1NHcozlnEs8QnRxdKG7Izs6O5StXciUnl2AfsEpK0tLVv/02ZGdXw5koajtlViRCiDZCiAVCiN+EEA3z1w0WQrStePHuDiy5AGfnZhObEgvA5ujNhbaXBmPGV+Vee+ei1+lN94e595tBZ2Bn3E6y87It2qDatWvHtGnTOBsDY8Z2gsce0xJDdu6suQ4rFGWgTIpECNEf+BNoDPQGjPMweuDNihXt7sHcaGokNjWWXJkLYIp6j0qOIk/mlbrfS9cucS37mjJm38EYi6MZP5vWe1heb84bb7yBQyMHfl68jdR//xvWrIGYGG2Ka+5cyM2tdPkVdwZlHZG8A7wgpRwC3DBbvw0Is7iHokR0jjrcHdwtZsU1JyMngwtpFwqtL4qyFLBS1E7Mp63MywKY/+ZFpcSxt7en8+TOZKVk8eKLL8Ijj8CJE3DffVqZ6J49tdT1CkUJlFWRtAZ+tbA+CVCuN+Xg1uAw4+ikbYO2Bf6WJXDR2Icakdy5GH/bJq5NCjhqGNfbW9vT2LVxkfuHdQjDqosVS5cuZcOGDVC/Pnz/vVYq+vhxCAmBVasq9yQUtZ6yKpIktGmtW2kHxJdfnLuXW7MARyRF4GTrRJemWh2JAfoBpvWlJSIpAmthTTO3ZhUrrKLGUFT1SuP3kjIZ6HV68nrkoffT8/TTT3P16lUtQenIkXDsGAQHw4gRMGoUpKVV3okoajVlVST/BT4UQjQBJGAjhOgBzAFWVLRwdxMGnYGYlBjG/TiOK9evaP7/Hnr8PP0A6O3bGxsrGyKTIglPDOf9ne8jpeSNrW8w4vsR/BquDRRv5N7g2d+eZcT3I1h9YjXN3Jtha21bnaemqESKql7Z1K0ptla2JY5GDToD2ILXMC/OnTvH05Of5qM9H2kbvb1h61atzO+qVdC2Lfz5Z2WchqKWU1ZF8joQDcQCzsBJYAuwE/hXxYp2d3Gf4T58PXz5z+H/8HvE76Z0Jvca7qVv877c0+QeLY9ScgTLDi9j+ubpHLl4hHd2vMOq46v4YNcHABw8f5D5++ezNWYrAMNaD6vO01JUMjpHHcPaDOPhgIcLrLexsmF8+/E8Hvh4sfu3a9iOsMZhHLI+RMCgANasXMOLn71ISmZKfkc2mjfX9u2aa3DnzvD++5BXeqcPxZ1PmQISpZTZwHAhxAy06Swr4LCUMrwyhLub6OLdhePPHMfpX06EJ4YTlRzFA/4P4O/pz8aRG4Gb2V6NnlvG+JJ6deqZbCfGqa8to7bQwqtFNZyJoioRQrDqYcs2jAUDF5S4v6u9K/ue3kePL3qQUz+HOvvrcO3Haxx97Sg9WvS42bBrV61i6IQJMH06bNqkjVLq1auoU1HUYsrq/msnhHCQUkZJKb+VUn4jpQwXQjgIIewqS8i7BWONiR1xO8jKzbI4722e7NCoSAboBxB/NZ6M7AwikiKwElb4uPtUtfiKWozBw0BUWhSeT3jCVZg1Y1bhRh4e8PXXsGQJ7NypTXXt3Fn1wipqHGWd2loDTLKwfiLwTfnFUeh1enbF7QIKz3sbdAZSs1L56/JfAOyK26VlfPXtDWiR8ZHJkTR1bYq9jX3VCq6o1eh1ei6mX+S8+3noBJvWbGLTpk2FGwoBTz8Ne/eCk5PmIjxnDkhZ5TIrag5lVSRdgA0W1m8EOpdfHIXBw0B2npam4tb4D+MIxbg9Oy8bbzdvArwCgJup2ZW7r6KsGO+ZnLwc6AVujd0YO3YsaUV5agUHw4EDWhnql16Chx+GlJQqlFhRkyirInECciyszwNcyi+OwvgPbWtlS1PXpha3Gbcb15lHxteEVPGK2keBe8veFt8xvsTHx/PSSy8VvZObmxYN//HH8PPP0L49HD5cBdIqahplVSTHgH9YWD8MOFFeYYQQk4UQB4QQWUKILyxs7yOEOC2EuC6E2CqEuOMCJIyjEF8PX6ytrAts8/XwRSAA6Nasm9beQ4/OUYebvRsHLhzgyvUrRUYyKxRFYX7PdGvWjQRdAi+88AKff/655SkuI0LA1KmaV9eNG9CpEyxfXgUSK2oSZVUkbwOvCiFWCSHG5i//BaYDb1WAPOeBWcCyWzcIIbyA74EZaFH0B4CvK+CYNYqi4gLgpjHeSljR17evqZ0QAoPOwIbIDUXuq1AUh7GGu721PT2a9eBc2jlemfEK/v7+PD0Jwf0AACAASURBVP3000VPcRnp3BkOHdK8u556Cp59VmUSvosokyKRUv4KPAg0Az7NX7yBQVLKn8srjJTyeynlWiDRwuaHgb+klGuklJnATCBYCNGyvMetSRQVqWzEoDPQ1LUpreq20trlj2AMOgNXrl8psE6hKAsGnQFfD1/8Pf0BaPOfNqTem0psXCxhj5UilV7duvD77/DCCzB/PvTvD1euVLLUippAmQtbSSl/B36vBFlKIhA4aibHNSFEZP7607c2FkKMB8YDeHt7V5WM5cbF3oWFAxfSy6eXxe0zus8gKSOJfvp+vNH9Dfrr+wPw3D3P4WTrRF2nugTWDaxKkRV3CG/1fIvMnEy6eXdjUugkrudcBz38fPJnTv9+mk2bNtG3b9/iO7Gx0TIHh4TAuHEQGgpr12rfFXcsQt6m254Qwp1bRjRSyqQKEUqIWUATKeUYs3VLgQQp5XSzdbuAJVLKL4rrLzQ0VB44cKAiRFMo7jrm/TGP54c8T5M6Tfjr+F+4urqWbscDB2DIEEhM1OwmjxcfZa+oeQghDkopS6zPXdaAxGb5Ba0y0KafEvKXK/l/i9t3mxBCFrGUJqopHbj1DnYFVCY5haISCWgYAIPhfPx5pkyZUvodQ0M1ZdKuHTzxBLzyikqtcodS1qmt5YA7MBbNMF7q4YyUsmcZj3UrfwGjjV+EEHXQCmr9Vc5+FQpFMRh0BmgKD4x9gBVLVjBw4EAeL+3oon592LIFpkyB2bPhzBn46istmFFxx1BWRRIGdJRSltvV1xJCCBs0mawBayGEA5AjpcwBfkDLPDwU+AV4AzgmpSxkH1EoFBWHt5s31sKawEcDuXz8MhMnTqRTp06ltz3a2cGiRRAQoBnie/SAH3+Ehg0rV3BFlVFW999ooDJzb7wOZKC5E4/I//w6gJQyARiKlmU4GbgHeKISZVEoFICttS0+7j5EpUbx1VdfkZOTw6hRo8gtSyleY7zJunVw6hSEhcHRoyXvp6gVlFWRPAe8J4SolEAFKeVMKaW4ZZlptn2TlLKllNJRStlTShlTGXIoFIqCGHQGrUaOXs/8+fPZvn07c+bMKXtHDz6oJXqUUos5+eWXihdWUeWUVZGsA3oCZ/Kjy6+aLxUvnkKhqAnoPfSEJ/5/e3ceHlV5PXD8e7IRCAGSEJA9MGGRGEEaQWUVLBREqyBLRBbRigt1oZX+RKSItIJQN8paqawVqhgUFxAUBBWsiIAgCAmEsG8JgYTseX9/3JlhEhLIPlnO53nuw8y9d+6clws5ee+7HSQuMY5e9/di0KBBTJw4ke//933hL9a+Pfzvf9CqFebee0mY8QrnL+c1dExVFIVtIxlbKlEopcq11nVbk5iWSLM3rVmJpoyewhebvqDrPV05d/BcwbsEOzRsCJs3c6jf7djGT+LtVZPo/dEe2tTXMVAVUWEXtlpcWoEopcqv0beMJsA3gIzsDCZ8OYF9yfu4+cmb2TJlCyMeHkHUB1GISOEu6ufHK0+34+b0nxm3DeKGPwIfbwJf31Ipgyo9hX205SQiN4hIU9etJANTSpUfNX1qMrzdcEbfMprw+uFEx0eTeEMi9ISPPvyI2bNnF+m6BxMPsfKRjvypNzRd/z387nc6HX0FVNgBibVFZLF9QOJxrF5crptSqpILDQglOj6amPgY6Aztu7Vn3LhxfP994dtLYuJjCK8Xzso+jZj/XDf47jvo1g2OHy+FyFVpKWyNZCbQDrgPSMWaPv554Big8x8oVQXYAm0kpCaQnJEMHtD7T71p1KgRgwYN4vz5gjeaX0q7xOnk04QGhmILtLEsPBs+/xxiY63p6PftK71CqBJV2ETSF/ijMWYdkAX8aIx5HWvcx5iSDk4pVf7kXqbgeOZx3n//fU6fPs3QoUPJKOD08TEJMYDVIyw0INSq4fTqBZs3W1PQd+4M335b4vGrklfYRFIHOGJ/nQgE2V9vRZfaVapKcF3ioHGtxsQkxBAREeFcBOu5554r0HVi4q1E4qiRnEw6SXJ6stU9+LvvrGnp77rLWn1RlWuFTSQxQAv7633AULG6agwASmTmX6VU+dYiwPoR4CEe9Grei+j4aABGjRrF888/z+zZswvU+O74nC3QdmW5aHsthebNrdpIeLg1g/B775VCSVRJKew4kkXAzcAmYBrwCdbYEg+sUe9KqUrOz8ePhv4NqeZZjbbBbVm8azHv/vQuPp4+PPPiM+z5ZQ9PP/M0R72OEn57OABdmnahWR1rDMra6LWcv3yeDYc3EFwjmFrVajlrOTHxMdxc/2bri+rWhQ0b4N57YdgwuHSJrEcfYduxbXRu2tktZVd5K+w4kjdcXn9lX50wAjhojPm5pINTSpVPHRt1xMfTh1tuuAWA0R+Ptv5sP5rbnr6Nz3/4nOnPTLfmCa8H/Vv1Z03kGvad3Uff5X2d1/lti98CV1b1dNRSnGrVshrgBw2CMWP45cA3dPFfyu7HdxNeP7z0C6oKpFCJRERGACuNMWkAxpg4IE5EfERkhDFmSWkEqZQqX1YMXIGI4OPpQ9yzcaRmpjJy9Uj2n99PdlA2wY8GIwsFVkHY/4Wx/5w1Sbfjz9VDVtM2uC2NazUGoI5vHerWqHvl0Zar6tUhKgpGjCD8H0uZ2hX2DfxFE0k5Utg2kneB2nns97cfU0pVAdW8quHj6QNAk9pNaBnUkrbBbYmJjyEmPoY2oW346suvyMzI5KfpP3E47jCZ2ZnORNE9pDstg1pS3bu685q2ANvVNRIHb29YtoyNvVvx4hZo8dc3dZGscqSwiUTIezGrpli9uJRSVVRoYCink0/z85mfCQ0MJSwsjLVr15JyMYWsxVnsOryL6PhogqoHUce3Tp6fzzeRAHh68tLgurx2B0R8uA0efhgyM0uxRKqgCpRIRORnEdmNlUS+FpHdLtteYAuwoTQDVUqVb44G8wupF5yvb731Vqa9Mw3iIfK+SPYf3e9sD8nr80cvHiUtMy3f74i5cIi//BbeGRACS5bA8OGaTMqBgtZIPgBWYdVIPrW/dmzLgD9gLUSllKqiXAcqur4edPcgGAKHDxzmu1e+o5FHo3w/n22yib0Qm+fxpPQkTiWdAoHJnTPgtddgxQp48EFrAKNymwI1thtjXgYQkVhghaOxXSmlHFxrGq6vG/g3oHrb6vT+a28+mvwRX//1a2J7xhISEpLn52MSYmhdt/VV13cMYAyvF87PZ34mZcJYqnt5Wcv3ZmZaScXHpxRKpq6nsG0knwHOhQdEJFxEpopIZMmGpZSqaGpVq0VwjWAg5+h3D/HAFmjjQO0DMBxSE1Pp1KnTVZM8Omox+bWTOBrq+9j6AHAo4RA89xy89ZbVq+uBByBNf8d1h8Imkv8C9wCISF1gM3A/ME9E/lTCsSmlKhhboI3A6oEEVA/IuT/Axr5z+6Ap/Gv1v/D396dHjx6sWLHCeU5wjWD8ffyJiY/haOJRnv78acatG0dCSgJrfl3DG9usYWx9Qq1E4kw4Tz9Nxltvwpo1ZN3/ez77+UM2H9lcrHJ8EfMFGw5ps29BFTaR3Axss79+AIg2xoQBI9BJG5Wq8ga1HcSw8GFX7e/fqj/1/eoTFhxG/8792bZtGxEREURGRvLUU0+RmpqKiGALtBGdEM3yn5cz63+zeGPbG3x68FMmbpzID8d/oLetNx0adADIMebki9+FMqY/eH6+Dr8hD/HKugnFKsf49eP5vw3/V6xrVCWFnSKlOpBkf30X8LH99Q6gSUkFpZSqmMbdPi7P/Y92eJRHOzx6ZUc1+Oqrr5gwYQIzZ85k69atLFmyhNDAUHaf3k2Dmg2oXa02F9MuOtc+eTzicd783ZsABPgG5HgEFh0fzYIIuLftAPrO+JCJ/9gOI1KLtNqiMYbo+Gi8PLwwxhR+5ccqqLA1koPAABFpAvQGvrDvrw/osmZKqQLz9vZmxowZrFmzhqNHj9KhQwdOrjnJobOHOHD+AGH1wmhSuwnfHv2W5IzkHD3BbIG2HDUSR1J586aLPHIvdD+QRtaA+yA9vdBxnU4+TXJGMolpicSn6Fy0BVHYRPIyMB2IBbYZYxytZX2An0owLqVUFdG/f3/27dvH4MGD+Xbpt2TOymTruq3WOiWBoc72jtzdi11rJI6ksvnIZhbdgvMxF0OHFrprsKN3mOt11bUVKpEYYz7EGsUeAfzO5dAGIO86rVJKXUfdunVZtmwZ0xdNB2/IXJnJVxO+wmOfB+kZVq3CtSdYaEAoRy4cISPLShKOpJKeZZ27IAJ2v/io1ZurkIMWcz8yU9dX2BoJxpjTxpifjDHZLvu+N8bsL9nQlFJVTeR9kfA48HtIv5TOhmkb4G2QLZJjEiZboI0sk8WRxCNkZmcSeyEWLw+rydfx54a7b4QZM2DlShg9usBzc0XHR+MhHs7X6vqu29guIm8DLxhjku2v82WMebrEIlNKVTmNajWimnc10m5JY/Vbq4laHcXM12divjS0srXitttuo0+fPtQLrwcZ1g96T/EkIzuDbs26sfnIZtrUbcOxi8esJPDnOZCaCi+9BNWqwfz54HHt359jEmJoVrsZGdkZ+mirgArSaysc8HZ5nZ+8JnNUSqkC8xAPWgS0YN+5fbQObs1DQx5i5oWZdPHvQt/UvqxevZopU6ZgjAEPePS/j9KmbRuIh4BOAXAK6vrUhWzYF7ePzMxMvCZOtAYqTp1qJZNZs+AaPbGi46OxBdrIyMrQGkkBiTGV/+d/RESE2b59u7vDUEoVwL3v3cuWuC3Ej48nOSMZ/1f9eSLiCebcPQeA+Ph4Nm7cyNBZQ2mU1IhLJy4Rfyo+319l/fz8wBcaZnlQ/8Il6rRoQUDnzjRp0oSQkBDatGlD+/bt8ff3ByDotSAGtx1MRnYGS3YtoVPjTnwS+Qm1ffNaQQOmbp5K3Rp1uaPJHYxaPQoRYcl9SwirF1Yqfz9lSUR+NMZEXO+8Ao8jEZHqwHhgINa67QY4BLwP/MMYk1LEWJVSyunZ256lf6v+iAg1fWoy/a7pzpUUAQIDAxk4cCA3nrmRkDohtApqxT+3/ZP9I/cz9eOptKvVjvX71vPJ7k+Y1GkS8QnxzNo8ixSfxngfr83xQ4fYdf48J5KSyMrKAkBEaN26Nd17dSf+YjzNb2tOtxbdiL0Qy5eHv2T7ie30atErz3jnbZ9Ho1qNuJR2iZ9OWZ1X1x9aXykSSUEVKJGIiBfwFdABWIs1A7AAbYFJQF8R6W6M0fmclVLF0rN5T3o27+l8P77z+DzPCw0MZf+5/Xh6eGKrayOkWQjv/PEdAPx3+rOm+hoe+uNDpGelMytgFg0aNuCrR7bBqFGwdCmZs2Zx/J572Lt3Lzt27ODbb7/l3XfehTSYtnYal5+8zKtDX6Xj4Y5Ex0fnmUhSMlI4fuk4qZmpzrVWMrMzq9wjsYLWSB4DQoEOxpi9rgdE5CZgI9ZU8nNLNjyllMpbaGAonx38DBHJMcYErnQVjo6PztlF2MMDFi6ExES8nn6aZkFBNIuMpF+/fgAs/mExo/4xirBzYUyZMoVp06bh2cmTX9r9Yg16yOVQwiEAzqec58eTPxIaGFolG+kL2v33AeBvuZMIgDFmD/AqMKgkA1NKqWuxBdhIy0rjl7O/5BhjAlcGL8bExzhrBwmpCdZIdW9vq0twt24wYgR8+qnzc0dTjsKNsO7zdRw8eJBBgwaRtTmL+aPmExUVdVUMrjUPRyK57kqPlVBBE0kY1qOt/GwAbip+OEopVTD5LaQFcEPNG6jhXcOap8ulduActe7rCx9/DDffbE0/v2WLdTwhhob+DanhXQObzcbSpUvpMqULHrU9GDBgAGPHjiU1NfXK9XLVPGwBNmwBNmIvxJKZXXWe9Bc0kQQAZ69x/Cxw9SLMSilVSnIspJWrRiIi2AKs+bii46Px97F6ZOWoKdSqBWvXQrNm0L8//PST1fU317Uibo2AR+DZZ59l9uzZdO3alXPnzjmv5+ft5zzXUSPJzM4kLjGupItcbhU0kXgC10qv2fZzikVExorIdhFJE5FFuY6FiIgRkSSX7aXifqdSqmJqUqsJ3h7WELfcNRLHvuj4aKLjo+kR0gPIY+6s4GBYvx5q14Y+fcj+df9V1woNDCXFpDB+yniioqLYs2cP3bp149gxa9Bj2+C2NKjZALCSm2v7TFVR0MZ2AZaJSH7Lj1UroXhOAFOxJoGsns85dbR3mFLK08OT5gHNiYmPoWntplcdtwXYWHNgDdkmmyFhQ9hxcofzh3tyerJzXq46jRsj69eT3aUzy+ed56NO9XJex17z2XlqJ937dOf9j94n8oFI7uh8B2aUocvNXfD18uVk0kmrsd3euP/z6Z/p1bwXnh7F/h273CtoIllcgHOWFCcQcE4KiYhEAI2Lez2lVOXWOsha293b0/uqY62CWjnbKVoGtSQ0MJSYhBh+PPEjHd/pSLZ9usDnbnuOrk27MnXAeb5+F0ZMWAm9JliPvuzXAej3n35XLh4JSYuTYA40WdgEvyA/dp/eTXCNYAwGP28//rz+z3xz9Bte7vEynf/dmZ1jduZ4HFeZFCiRGGMeLu1ACuGIiBhgPfC8MeZcXieJyGNY3ZZp2vTq31aUUhXf631e52LaxTyPRYZHkmWsAYeD2g5iy5EtfBb9GdtPbCfbZDP1zqks+3kZ245tw8fThz1NfNj8jzH0fW4ODBxo9eby8aFFQAtWDFzBqaRTOa5/sN1B5j0zj+9mfsfiVYsZfctoRARBWD10NS9//TLbjm1j69GtJKUnsf3E9qqdSMqJc8CtwE4gCJgNLMd6DHYVY8wCYAFYU6SUUYxKqTKUV9uIQ02fmjwe8XiOc08lnWLnqZ1U86zGC11fIPZCLB/9+hEN/RvSvE5z+o19G/w7wMMPWzMGL1kCHh4MuWnI1V9wG9xR5w6GDRvG1PFTeffdd52H7mpxFz8c/4EJX01g56mdQOVuMyn0NPJFJSKb7I3leW3fXO/zxpgkY8x2Y0ymMeY0MBboLSL+pR+9Uqqic9QGvjj0BbZAGx7iQWhgKGcvn2XHyR1XktKoUfC3v8Hy5TDh2mu/P/jgg7z00kssWrSIZcuW5TjmuN4Xh6yFZCvzIMUySyTGmB7GGMln61KUS9r/LLMyKKUqLscP9kMJh5w9qxzJ5fCFwzm7/b7wAjzxBEyfbs0WfA2TJk2ia9euPPHEExw8eNC533Ftx+h3rZGUERHxEhFfrK7EniLia5/nCxHpJCKtRcRDRIKAt4FNxpjEa11TKaUg1wqL9qSS76BGESuB3HcfPPMMrFqV73W9vLxYvnw53t7eREZGkp5+9YqOoImkLE0EUoD/Ax6yv55oP9YCa8LIS8AeIA2IdEOMSqkKqLZvberWqAtc+SGfV3Jx8vSE//wHbr8dhg1zjn7PS5MmTVi4cCE//vgjr7/+uvP7gmsEA9CgZgNOJp0kOT25JItUbpSrRGKMmZzHY6/J9mPvGWOaG2P8jDENjDEjjDGnrnNJpZRyyv1Iy7+aP/X86uXYl0P16tZUKs2bw+9/DwcO5Hvt+++/n4EDB/Lyyy9z6NChHNfsE2r1CXI85qpsylUiUUqp0pTfIy0P8SCkTkjeHwoKgs8+Ay8vuPtuOJfniAMA3nrrLby9vXnyyScxxji/p4/NSiSVtcFdE4lSqsro0KADAb4BNKvd7Mq+GzoQXi8cH0+f/D/YvDl89BEcPQr3328t3ZuHRo0a8fe//51169axcuVKOtxgfZ9jfZXK2k6iS+0qpaqMzOxMElMTCaoR5NyXmplKWmZavkvp5vDf/8KQIfDQQ9YYkzzWfs/KyqJjx46cO3eOvfv2kkYaQTWCnEv4zu1fcZZtKuhSu1ojUUpVGV4eXjmSCICvl2/BkgjA4MHWGJNly2DKlDxP8fT0ZMaMGcTFxTF/7nzn99kCbEQnVM4aiSYSpZQqjBdegJEjYfJka9BiHnr27Enfvn2ZOnUq8fHxAJV6wStNJEopVRgisGAB9OhhTaOST7fg6dOnk5iYyKuvvgpYNZK4xDjnrMOViSYSpZQqLB8fa5BiSIjV+B59dU0jPDyckSNHMmvWLI4fP05oYCjZJpvYC7FlHm5p00SilFJFERhodQsGq1twQsJVp0yaNInMzExmzJiRYx35ykYTiVJKFZXNBqtXw+HDEBkJmTnX3GvevDnDhw9n/vz51Mq01jepjO0kmkiUUqo4unSBuXNh3ToYP/6qwxMmTCA9PZ0lc5fg5+1XKQclaiJRSqnieuQRa3LHN94Al3VJAFq2bMnQoUOZO3cuzXyaaY1EKaVUPmbOhLvugscfh+++y3HoxRdfJDk5mext2VojUUoplQ8vL1i5Epo2tXpyxcU5D7Vt25Z77rmHIxuOEHMmhqzsLDcGWvI0kSilVEkJDLRmC05NtdYySb4ybfy4ceNISUwh46cMjl085sYgS54mEqWUKkk33gjvvQc7d1prv9vnM+zevTuhYaGwFQ6eP3idi1QsmkiUUqqk9etnLdP7/vswdSoAIsJTf3wKzsHHn37s5gBLliYSpZQqDX/+MwwfDpMmWY+7gDEjx0At+HiRJhKllFLX45iTKyLCSii//kp13+rU7V6XIz8dYf/+/e6OsMRoIlFKqdLi62vNyeXjAwMGwKVLtO/bHvEU5s2b5+7oSowmEqWUKk1Nm1rdgvfvh9GjCQtpi0eYB4sWLSLZpVdXRaaJRCmlSlvPnlbj+wcf8MBnR8j6TRaJiYmsWLHC3ZGVCE0kSilVFv70Jxg8mM5z1tAzA1q0bsGcOXOoDMudayJRSqmyIAILF5LeysbKVdCzV3t27NjBDz/84O7Iik0TiVJKlZWaNZGoKLyz4fl131CzZk3mzp3r7qiKTROJUkqVIZ82YfxpRH1axZxheKNGrFixwrmue0WliUQppcrYka7h/Ouehjzx66+kpqbybq6p5ysaTSRKKVXGQgNCeeGOFML79qWzCAvefrtCN7prIlFKqTJmC7RxPi2BCwtmMSYwkANxcXz9ySfuDqvINJEopVQZCw0MBSDaI4EHVq0iAJj/xBPOmYIrGk0kSilVxhyJJCY+hurduzOie3dWHT/O2cmT3RtYEWkiUUqpMtYioAWAc/32x2bPJgNY/MorsGWLGyMrGk0kSilVxmp416Chf0OiE6xE0jYsjC63384CLy/MkCFw5oybIywcTSRKKeUGtgAbMfExzvdjnnySgxkZbDx3Dh58ELIqzrru5SaRiEg1EVkoIkdE5JKI7BSRvrnO6SUi+0XksohsFJFm7opXKaWKIzQw1PloC+CBBx4gICCA+e3awZdfwiuvuDG6wik3iQTwAo4C3YHawETgvyISAiAidYEPgZeAQGA7sNIdgSqlVHGFBoZyMukkyenWVPK+vr6MHDmSqF27ODN4MEyZAl984eYoC6bcJBJjTLIxZrIxJtYYk22M+QQ4DPzGfsoAYK8x5n1jTCowGWgnIm3cFLJSShWZLcAGQNT+KFIyUgB47LHHyMjIYFF4OISFwbBhcOKE8zMHzh9gU+wm4lPK15Qq5SaR5CYi9YFWwF77rjBgl+O4MSYZiLHvz+vzj4nIdhHZfvbs2dIOVymlCuWmejcBMDxqONO+mQbAjTfeSLdu3ViwaBHZK1fC5cvw0EOQlUVKRgrt5rXjzsV38oc1f3Bn6Fcpl4lERLyB5cBiY4xjYeOaQGKuUxMB/7yuYYxZYIyJMMZEBAcHl16wSilVBGH1wtjx2A5C6oSw9+xe5/7HHnuMmJgYvjpxAv75T9i4EaZN41DCIVIzUxGEvWf2XuPKZa/MEomIbBIRk8/2jct5HsBSIB0Y63KJJKBWrsvWAi6VevBKKVUKbmlwC22D2+ZodB84cCBBQUEsWLAARo2yenD99a/Er/8YgB4hPTiUcIis7PLTq6vMEokxpocxRvLZugCIiAALgfrAQGNMhssl9gLtHG9ExA+wceXRl1JKVTi2ABsxCTHOSRudje5RUZw+cwbmzoWQENr96TUCLkMfWx8ysjM4dvGYmyO/orw92poL3AjcY4xJyXUsCrhJRAaKiC8wCdjt8uhLKaUqnNDAUJLSkziTfGUQ4h/+8AcyMzP597//DbVqwYoV1Dh/kSWfeHNrwwiAHLWY/Lz66qssW7as1GJ3KDeJxD4mZAzQHjglIkn2bRiAMeYsMBD4G5AAdAKGuitepZQqCc55txKuDE5s06YNPXv2ZM6cOWRkZEBEBO8Mbkn/XzJoH7X1qvPzkpWVxfTp09m8eXPpBW9XbhKJMeaI/TGXrzGmpsu23OWcDcaYNsaY6vZHZbFuDFkppYrN0Q04dw3jueee49ixY3zwwQcAzOiYzo5bGhDw4lQiznhft0ayZ88eEhMT6datW+kE7qLcJBKllKqKQuqE4CEeOaZLAejXrx+tWrXi9ddfJz0znSOJcaydOAQJDGTlKuHYyV+veV1HTUQTiVJKVXLVvKrRtHZTohOiSc1MZcmuJRhjWBuzllZ3t2L79u18+MWHZJksGrZoB8uXE3ImncHztmCMYdnuZVzOuMzOUzv5/tj3ZGRlsHjnYr7e/DXNmjWjadOmpV4Gr1L/BqWUUtfkmMDxg18+YOTqkbSp24bhUcOJrx6PRw0PZr05CzrbH4O178r6oZ24773viZ03jeFnJpCWmcbS3UuJT4lnyp1TGLV6FHU21uGefveUSfxaI1FKKTdzTOB48PxBAL4/9j3xKfH4+fmR/Ztstm7YCmddVlYcG8m3TaDB+FdoegEOxh/kYPxBouOj+fXcr3AKLpy/wJ133lkm8WsiUUopN7MF2Difcp7tJ7cDsC5mHQB9QvtAJ/Dw8cDzG09uqHmDdX691jw0ALIyM1j6Iew9tZsTl06QkpnClrgtsA/EQ+jfv3+ZxK+JRCml3MxR09gUuwmAjbEbAWvwITVBOgpZu7PYv98aNmcLsBEbAM/04jKg3gAACbdJREFU96BbHHRYusF5rY2xG2EfBLUOoqymh9JEopRSbuZIJJczLuf4s7etNwCZt2Xi5evFX/7yFwCa1WmGp3jyTlg6K8Jg4oYMfnPcutblk5fhLPjc5FNm8WsiUUopN3Os4Q7gIdaP5Ub+jWhWuxl+3n7gB7dH3s6aNWv48ssv8fH0oWntpiDw1D3CyZqw/EPwS8daqckD4lvEO6ddKW2aSJRSys38fPxoULMBALc2vBWwaiki4qytDB49mBYtWjBmzBguX77s3N/S1pER90PLeHh7gz/sgKCIIFKrp3Iq6VSZxK+JRCmlygFboDXCvY+tj/XePuLdsb9NgzYsXLiQmJgYnn/+eWci6WPrw9fNYVnvBpz63yVIh/sfvh+4/jQqJUUTiVJKlQOOxOBoF3G8Dw0Idb7v0aMH48aNY86cOZzedBqAu1rchYd48H6vm3kZuNsDHouwxo889dlT/G3z30o9dh2QqJRS5cDwm4cT6BvIrY1uZUS7Edx/o1WrGBw2mITUBKtNBHjttdfYv38/H878kLb3taWJZxMia0WyfuZ6atT2Z17KZRq9OJshjwwi7tIx0rLSSj12KavGGHeKiIgw27dvd3cYSilVItLS0hg7dizvvPOOc1/jxo2Jiooi4ocf4Mkn4a234Omni/U9IvKjMSbiuudpIlFKqYpp165drF27lgYNGtC/f38CAwPBGLj3Xli/Hn78EcLCinx9TSQuNJEopaqU06chPBwaN4Zt28CnaGNKCppItLFdKaUqm/r1YcEC+OknePnlUv86TSRKKVUZ3XcfjB0LOo28UkqpIps1q0y+RmskSimlikUTiVJKqWLRRKKUUqpYNJEopZQqFk0kSimlikUTiVJKqWLRRKKUUqpYNJEopZQqliox15aInAWOFOMSdYFzJRRORVDVygta5qpCy1w4zYwxwdc7qUokkuISke0Fmbissqhq5QUtc1WhZS4d+mhLKaVUsWgiUUopVSyaSApmgbsDKGNVrbygZa4qtMylQNtIlFJKFYvWSJRSShWLJhKllFLFoolEKaVUsWgiuQYRCRSRKBFJFpEjIvKgu2MqaSKySURSRSTJvv3qcuxBe7mTRWS1iAS6M9aiEJGxIrJdRNJEZFGuY71EZL+IXBaRjSLSzOVYNRH5t4hcFJFTIjKuzIMvovzKLCIhImJc7nWSiLzkcrwil7maiCy0/3u9JCI7RaSvy/FKda+vVV533GddavfaZgPpQH2gPfCpiOwyxux1b1glbqwx5h3XHSISBswH7gZ2YPX8mAMMLfvwiuUEMBXoA1R37BSRusCHwKPAGuAVYCVwm/2UyUBLoBlwA7BRRH4xxqwts8iLLs8yu6hjjMnMY/9kKm6ZvYCjQHcgDugH/FdEwoEkKt+9vlZ5HcruPhtjdMtjA/ywkkgrl31LgWnujq2Ey7kJeDSP/X8H/uPy3mb/+/B3d8xFLOdUYJHL+8eA73Ld7xSgjf39CaC3y/FXgBXuLkcxyxwCGMArn/MrfJlzlWc3MLAq3Otc5S3z+6yPtvLXCsg0xhxw2bcLCHNTPKXpVRE5JyLfikgP+74wrPICYIyJwZ5Y3RBfachdvmQgBggTkQCggetxKte9PyIix0TkXXvNjMpWZhGpj/VvdS9V4F7nKq9Dmd1nTST5qwlczLUvEfB3Qyyl6S9AC6AR1uOrNSJiwyp/Yq5zK1P5r1W+mi7vcx+ryM4Bt2I90vgNVnmW249VmjKLiDdWuRYbY/ZTye91HuUt8/usbST5SwJq5dpXC7jkhlhKjTHme5e3i0UkEut5a2Uv/7XKl+TyPjXXsQrLGJMEbLe/PS0iY4GTIuJPJSmziHhgPYJOB8bad1fae51Xed1xn7VGkr8DgJeItHTZ146cVcfKyACCVc52jp0i0gKohvX3UhnkLp8fVjvQXmNMAnDS9TiV8947prXwqAxlFhEBFmJ1jhlojMmwH6qU9/oa5c2t9O+zuxuIyvMGrADew2qc64xVBQxzd1wlWL46WD17fLFqp8OAZKxnrWFYj/a62su/jIrZAOllL9+rWL+5OcoabL+fA+37pgPbXD43DfgaCADa2P/z/c7d5SlmmTsBrbF+gQzC6rm0sTKU2R7/PGAbUDPX/kp5r69R3jK/z27/yyjPGxAIrLb/cI0DHnR3TCVcvmDgB6xq7QX7P8rfuhx/0F7uZOAjINDdMRehjJOxfiNz3Sbbj90F7MfqwbMJCHH5XDXg3/ZkehoY5+6yFLfMQCRw2H4/TwJLgBsqSZmb2cuZivX4xrENq4z3+lrldcd91kkblVJKFYu2kSillCoWTSRKKaWKRROJUkqpYtFEopRSqlg0kSillCoWTSRKKaWKRROJUkqpYtFEolQRiUiwiMwRkVj7IlKnReRLEfmt/XisiPzZ3XEqVdp00kalim4VUAN4BIgG6mEtNBTkzqCUKms6sl2pIhCROkAC1pQyG/I4vgkrqTgZY8R+7A6sebButV/jY+AvxpiLLp/dD6QBI+wff8d+Trb9nAFcWekuBfgZGGyMOV2CxVSqQPTRllJF45jb6F4R8c3j+ADgGDAFayGhBgD2pVC/wEoe7ezntcea+8jVMKz/n7cDY7BW+XvWfo0bsCYUXQzcCHTDmpxRKbfQGolSRSQiA4F/YT3e+gn4Fnjf2Nd4EZFY4J/GmJkun1kCZBhjHnHZ197++frGmDP2GklDoLWx/wcVkYnA48aYxiLSAfgRa+LBI6VfUqWuTWskShWRMWYV1g/8e4DPgTuAbSIy4Rof+w3wkIgkOTasBATWGhkO20zO3/K2Ao1EpBbW0qgbgD0iskpEnhCR4BIqllKFpolEqWIwxqQaY9YbY6YYY+7AWmhosoj45PMRD6z2jvYuWzusto6dBfzOLKC3fduN1dh/UETaXfODSpUS7bWlVMn6hSsLS6UDnrmO78BaHC36OtfpJCLiUiu5DTjhaJC3798KbBWRKVgr3A3Bqq0oVaa0RqJUEYhIkIh8JSIPicjNItJcRAYB44Ev7T/wY4GuItJIROraPzod6Cgi80TkFhEJFZH+IjI/11c0BN4UkdYi8gDwPPCG/btvE5GJInKriDQF7gWaYCUxpcqc1kiUKpokrBUlnwFCsVadOw78B5hqP2cSMB+IsR8XY8xuEelmP+drrBrLISAq1/WX2499j7US3kLsiQRr2djOwB+xlks+CrxijFlW4qVUqgC015ZS5Yy919YeY8xYd8eiVEHooy2llFLFoolEKaVUseijLaWUUsWiNRKllFLFoolEKaVUsWgiUUopVSyaSJRSShWLJhKllFLF8v819RAZnIt3CwAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "%matplotlib inline\n", "\n", @@ -536,469 +508,11 @@ }, { "cell_type": "code", - "execution_count": 31, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " mean radius mean texture mean perimeter mean area mean smoothness \\\n", - "0 17.990 10.38 122.80 1001.0 0.11840 \n", - "1 20.570 17.77 132.90 1326.0 0.08474 \n", - "2 19.690 21.25 130.00 1203.0 0.10960 \n", - "3 11.420 20.38 77.58 386.1 0.14250 \n", - "4 20.290 14.34 135.10 1297.0 0.10030 \n", - "5 12.450 15.70 82.57 477.1 0.12780 \n", - "6 18.250 19.98 119.60 1040.0 0.09463 \n", - "7 13.710 20.83 90.20 577.9 0.11890 \n", - "8 13.000 21.82 87.50 519.8 0.12730 \n", - "9 12.460 24.04 83.97 475.9 0.11860 \n", - "10 16.020 23.24 102.70 797.8 0.08206 \n", - "11 15.780 17.89 103.60 781.0 0.09710 \n", - "12 19.170 24.80 132.40 1123.0 0.09740 \n", - "13 15.850 23.95 103.70 782.7 0.08401 \n", - "14 13.730 22.61 93.60 578.3 0.11310 \n", - "15 14.540 27.54 96.73 658.8 0.11390 \n", - "16 14.680 20.13 94.74 684.5 0.09867 \n", - "17 16.130 20.68 108.10 798.8 0.11700 \n", - "18 19.810 22.15 130.00 1260.0 0.09831 \n", - "19 13.540 14.36 87.46 566.3 0.09779 \n", - "20 13.080 15.71 85.63 520.0 0.10750 \n", - "21 9.504 12.44 60.34 273.9 0.10240 \n", - "22 15.340 14.26 102.50 704.4 0.10730 \n", - "23 21.160 23.04 137.20 1404.0 0.09428 \n", - "24 16.650 21.38 110.00 904.6 0.11210 \n", - "25 17.140 16.40 116.00 912.7 0.11860 \n", - "26 14.580 21.53 97.41 644.8 0.10540 \n", - "27 18.610 20.25 122.10 1094.0 0.09440 \n", - "28 15.300 25.27 102.40 732.4 0.10820 \n", - "29 17.570 15.05 115.00 955.1 0.09847 \n", - ".. ... ... ... ... ... \n", - "539 7.691 25.44 48.34 170.4 0.08668 \n", - "540 11.540 14.44 74.65 402.9 0.09984 \n", - "541 14.470 24.99 95.81 656.4 0.08837 \n", - "542 14.740 25.42 94.70 668.6 0.08275 \n", - "543 13.210 28.06 84.88 538.4 0.08671 \n", - "544 13.870 20.70 89.77 584.8 0.09578 \n", - "545 13.620 23.23 87.19 573.2 0.09246 \n", - "546 10.320 16.35 65.31 324.9 0.09434 \n", - "547 10.260 16.58 65.85 320.8 0.08877 \n", - "548 9.683 19.34 61.05 285.7 0.08491 \n", - "549 10.820 24.21 68.89 361.6 0.08192 \n", - "550 10.860 21.48 68.51 360.5 0.07431 \n", - "551 11.130 22.44 71.49 378.4 0.09566 \n", - "552 12.770 29.43 81.35 507.9 0.08276 \n", - "553 9.333 21.94 59.01 264.0 0.09240 \n", - "554 12.880 28.92 82.50 514.3 0.08123 \n", - "555 10.290 27.61 65.67 321.4 0.09030 \n", - "556 10.160 19.59 64.73 311.7 0.10030 \n", - "557 9.423 27.88 59.26 271.3 0.08123 \n", - "558 14.590 22.68 96.39 657.1 0.08473 \n", - "559 11.510 23.93 74.52 403.5 0.09261 \n", - "560 14.050 27.15 91.38 600.4 0.09929 \n", - "561 11.200 29.37 70.67 386.0 0.07449 \n", - "562 15.220 30.62 103.40 716.9 0.10480 \n", - "563 20.920 25.09 143.00 1347.0 0.10990 \n", - "564 21.560 22.39 142.00 1479.0 0.11100 \n", - "565 20.130 28.25 131.20 1261.0 0.09780 \n", - "566 16.600 28.08 108.30 858.1 0.08455 \n", - "567 20.600 29.33 140.10 1265.0 0.11780 \n", - "568 7.760 24.54 47.92 181.0 0.05263 \n", - "\n", - " mean compactness mean concavity mean concave points mean symmetry \\\n", - "0 0.27760 0.300100 0.147100 0.2419 \n", - "1 0.07864 0.086900 0.070170 0.1812 \n", - "2 0.15990 0.197400 0.127900 0.2069 \n", - "3 0.28390 0.241400 0.105200 0.2597 \n", - "4 0.13280 0.198000 0.104300 0.1809 \n", - "5 0.17000 0.157800 0.080890 0.2087 \n", - "6 0.10900 0.112700 0.074000 0.1794 \n", - "7 0.16450 0.093660 0.059850 0.2196 \n", - "8 0.19320 0.185900 0.093530 0.2350 \n", - "9 0.23960 0.227300 0.085430 0.2030 \n", - "10 0.06669 0.032990 0.033230 0.1528 \n", - "11 0.12920 0.099540 0.066060 0.1842 \n", - "12 0.24580 0.206500 0.111800 0.2397 \n", - "13 0.10020 0.099380 0.053640 0.1847 \n", - "14 0.22930 0.212800 0.080250 0.2069 \n", - "15 0.15950 0.163900 0.073640 0.2303 \n", - "16 0.07200 0.073950 0.052590 0.1586 \n", - "17 0.20220 0.172200 0.102800 0.2164 \n", - "18 0.10270 0.147900 0.094980 0.1582 \n", - "19 0.08129 0.066640 0.047810 0.1885 \n", - "20 0.12700 0.045680 0.031100 0.1967 \n", - "21 0.06492 0.029560 0.020760 0.1815 \n", - "22 0.21350 0.207700 0.097560 0.2521 \n", - "23 0.10220 0.109700 0.086320 0.1769 \n", - "24 0.14570 0.152500 0.091700 0.1995 \n", - "25 0.22760 0.222900 0.140100 0.3040 \n", - "26 0.18680 0.142500 0.087830 0.2252 \n", - "27 0.10660 0.149000 0.077310 0.1697 \n", - "28 0.16970 0.168300 0.087510 0.1926 \n", - "29 0.11570 0.098750 0.079530 0.1739 \n", - ".. ... ... ... ... \n", - "539 0.11990 0.092520 0.013640 0.2037 \n", - "540 0.11200 0.067370 0.025940 0.1818 \n", - "541 0.12300 0.100900 0.038900 0.1872 \n", - "542 0.07214 0.041050 0.030270 0.1840 \n", - "543 0.06877 0.029870 0.032750 0.1628 \n", - "544 0.10180 0.036880 0.023690 0.1620 \n", - "545 0.06747 0.029740 0.024430 0.1664 \n", - "546 0.04994 0.010120 0.005495 0.1885 \n", - "547 0.08066 0.043580 0.024380 0.1669 \n", - "548 0.05030 0.023370 0.009615 0.1580 \n", - "549 0.06602 0.015480 0.008160 0.1976 \n", - "550 0.04227 0.000000 0.000000 0.1661 \n", - "551 0.08194 0.048240 0.022570 0.2030 \n", - "552 0.04234 0.019970 0.014990 0.1539 \n", - "553 0.05605 0.039960 0.012820 0.1692 \n", - "554 0.05824 0.061950 0.023430 0.1566 \n", - "555 0.07658 0.059990 0.027380 0.1593 \n", - "556 0.07504 0.005025 0.011160 0.1791 \n", - "557 0.04971 0.000000 0.000000 0.1742 \n", - "558 0.13300 0.102900 0.037360 0.1454 \n", - "559 0.10210 0.111200 0.041050 0.1388 \n", - "560 0.11260 0.044620 0.043040 0.1537 \n", - "561 0.03558 0.000000 0.000000 0.1060 \n", - "562 0.20870 0.255000 0.094290 0.2128 \n", - "563 0.22360 0.317400 0.147400 0.2149 \n", - "564 0.11590 0.243900 0.138900 0.1726 \n", - "565 0.10340 0.144000 0.097910 0.1752 \n", - "566 0.10230 0.092510 0.053020 0.1590 \n", - "567 0.27700 0.351400 0.152000 0.2397 \n", - "568 0.04362 0.000000 0.000000 0.1587 \n", - "\n", - " mean fractal dimension ... worst radius \\\n", - "0 0.07871 ... 25.380 \n", - "1 0.05667 ... 24.990 \n", - "2 0.05999 ... 23.570 \n", - "3 0.09744 ... 14.910 \n", - "4 0.05883 ... 22.540 \n", - "5 0.07613 ... 15.470 \n", - "6 0.05742 ... 22.880 \n", - "7 0.07451 ... 17.060 \n", - "8 0.07389 ... 15.490 \n", - "9 0.08243 ... 15.090 \n", - "10 0.05697 ... 19.190 \n", - "11 0.06082 ... 20.420 \n", - "12 0.07800 ... 20.960 \n", - "13 0.05338 ... 16.840 \n", - "14 0.07682 ... 15.030 \n", - "15 0.07077 ... 17.460 \n", - "16 0.05922 ... 19.070 \n", - "17 0.07356 ... 20.960 \n", - "18 0.05395 ... 27.320 \n", - "19 0.05766 ... 15.110 \n", - "20 0.06811 ... 14.500 \n", - "21 0.06905 ... 10.230 \n", - "22 0.07032 ... 18.070 \n", - "23 0.05278 ... 29.170 \n", - "24 0.06330 ... 26.460 \n", - "25 0.07413 ... 22.250 \n", - "26 0.06924 ... 17.620 \n", - "27 0.05699 ... 21.310 \n", - "28 0.06540 ... 20.270 \n", - "29 0.06149 ... 20.010 \n", - ".. ... ... ... \n", - "539 0.07751 ... 8.678 \n", - "540 0.06782 ... 12.260 \n", - "541 0.06341 ... 16.220 \n", - "542 0.05680 ... 16.510 \n", - "543 0.05781 ... 14.370 \n", - "544 0.06688 ... 15.050 \n", - "545 0.05801 ... 15.350 \n", - "546 0.06201 ... 11.250 \n", - "547 0.06714 ... 10.830 \n", - "548 0.06235 ... 10.930 \n", - "549 0.06328 ... 13.030 \n", - "550 0.05948 ... 11.660 \n", - "551 0.06552 ... 12.020 \n", - "552 0.05637 ... 13.870 \n", - "553 0.06576 ... 9.845 \n", - "554 0.05708 ... 13.890 \n", - "555 0.06127 ... 10.840 \n", - "556 0.06331 ... 10.650 \n", - "557 0.06059 ... 10.490 \n", - "558 0.06147 ... 15.480 \n", - "559 0.06570 ... 12.480 \n", - "560 0.06171 ... 15.300 \n", - "561 0.05502 ... 11.920 \n", - "562 0.07152 ... 17.520 \n", - "563 0.06879 ... 24.290 \n", - "564 0.05623 ... 25.450 \n", - "565 0.05533 ... 23.690 \n", - "566 0.05648 ... 18.980 \n", - "567 0.07016 ... 25.740 \n", - "568 0.05884 ... 9.456 \n", - "\n", - " worst texture worst perimeter worst area worst smoothness \\\n", - "0 17.33 184.60 2019.0 0.16220 \n", - "1 23.41 158.80 1956.0 0.12380 \n", - "2 25.53 152.50 1709.0 0.14440 \n", - "3 26.50 98.87 567.7 0.20980 \n", - "4 16.67 152.20 1575.0 0.13740 \n", - "5 23.75 103.40 741.6 0.17910 \n", - "6 27.66 153.20 1606.0 0.14420 \n", - "7 28.14 110.60 897.0 0.16540 \n", - "8 30.73 106.20 739.3 0.17030 \n", - "9 40.68 97.65 711.4 0.18530 \n", - "10 33.88 123.80 1150.0 0.11810 \n", - "11 27.28 136.50 1299.0 0.13960 \n", - "12 29.94 151.70 1332.0 0.10370 \n", - "13 27.66 112.00 876.5 0.11310 \n", - "14 32.01 108.80 697.7 0.16510 \n", - "15 37.13 124.10 943.2 0.16780 \n", - "16 30.88 123.40 1138.0 0.14640 \n", - "17 31.48 136.80 1315.0 0.17890 \n", - "18 30.88 186.80 2398.0 0.15120 \n", - "19 19.26 99.70 711.2 0.14400 \n", - "20 20.49 96.09 630.5 0.13120 \n", - "21 15.66 65.13 314.9 0.13240 \n", - "22 19.08 125.10 980.9 0.13900 \n", - "23 35.59 188.00 2615.0 0.14010 \n", - "24 31.56 177.00 2215.0 0.18050 \n", - "25 21.40 152.40 1461.0 0.15450 \n", - "26 33.21 122.40 896.9 0.15250 \n", - "27 27.26 139.90 1403.0 0.13380 \n", - "28 36.71 149.30 1269.0 0.16410 \n", - "29 19.52 134.90 1227.0 0.12550 \n", - ".. ... ... ... ... \n", - "539 31.89 54.49 223.6 0.15960 \n", - "540 19.68 78.78 457.8 0.13450 \n", - "541 31.73 113.50 808.9 0.13400 \n", - "542 32.29 107.40 826.4 0.10600 \n", - "543 37.17 92.48 629.6 0.10720 \n", - "544 24.75 99.17 688.6 0.12640 \n", - "545 29.09 97.58 729.8 0.12160 \n", - "546 21.77 71.12 384.9 0.12850 \n", - "547 22.04 71.08 357.4 0.14610 \n", - "548 25.59 69.10 364.2 0.11990 \n", - "549 31.45 83.90 505.6 0.12040 \n", - "550 24.77 74.08 412.3 0.10010 \n", - "551 28.26 77.80 436.6 0.10870 \n", - "552 36.00 88.10 594.7 0.12340 \n", - "553 25.05 62.86 295.8 0.11030 \n", - "554 35.74 88.84 595.7 0.12270 \n", - "555 34.91 69.57 357.6 0.13840 \n", - "556 22.88 67.88 347.3 0.12650 \n", - "557 34.24 66.50 330.6 0.10730 \n", - "558 27.27 105.90 733.5 0.10260 \n", - "559 37.16 82.28 474.2 0.12980 \n", - "560 33.17 100.20 706.7 0.12410 \n", - "561 38.30 75.19 439.6 0.09267 \n", - "562 42.79 128.70 915.0 0.14170 \n", - "563 29.41 179.10 1819.0 0.14070 \n", - "564 26.40 166.10 2027.0 0.14100 \n", - "565 38.25 155.00 1731.0 0.11660 \n", - "566 34.12 126.70 1124.0 0.11390 \n", - "567 39.42 184.60 1821.0 0.16500 \n", - "568 30.37 59.16 268.6 0.08996 \n", - "\n", - " worst compactness worst concavity worst concave points worst symmetry \\\n", - "0 0.66560 0.71190 0.26540 0.4601 \n", - "1 0.18660 0.24160 0.18600 0.2750 \n", - "2 0.42450 0.45040 0.24300 0.3613 \n", - "3 0.86630 0.68690 0.25750 0.6638 \n", - "4 0.20500 0.40000 0.16250 0.2364 \n", - "5 0.52490 0.53550 0.17410 0.3985 \n", - "6 0.25760 0.37840 0.19320 0.3063 \n", - "7 0.36820 0.26780 0.15560 0.3196 \n", - "8 0.54010 0.53900 0.20600 0.4378 \n", - "9 1.05800 1.10500 0.22100 0.4366 \n", - "10 0.15510 0.14590 0.09975 0.2948 \n", - "11 0.56090 0.39650 0.18100 0.3792 \n", - "12 0.39030 0.36390 0.17670 0.3176 \n", - "13 0.19240 0.23220 0.11190 0.2809 \n", - "14 0.77250 0.69430 0.22080 0.3596 \n", - "15 0.65770 0.70260 0.17120 0.4218 \n", - "16 0.18710 0.29140 0.16090 0.3029 \n", - "17 0.42330 0.47840 0.20730 0.3706 \n", - "18 0.31500 0.53720 0.23880 0.2768 \n", - "19 0.17730 0.23900 0.12880 0.2977 \n", - "20 0.27760 0.18900 0.07283 0.3184 \n", - "21 0.11480 0.08867 0.06227 0.2450 \n", - "22 0.59540 0.63050 0.23930 0.4667 \n", - "23 0.26000 0.31550 0.20090 0.2822 \n", - "24 0.35780 0.46950 0.20950 0.3613 \n", - "25 0.39490 0.38530 0.25500 0.4066 \n", - "26 0.66430 0.55390 0.27010 0.4264 \n", - "27 0.21170 0.34460 0.14900 0.2341 \n", - "28 0.61100 0.63350 0.20240 0.4027 \n", - "29 0.28120 0.24890 0.14560 0.2756 \n", - ".. ... ... ... ... \n", - "539 0.30640 0.33930 0.05000 0.2790 \n", - "540 0.21180 0.17970 0.06918 0.2329 \n", - "541 0.42020 0.40400 0.12050 0.3187 \n", - "542 0.13760 0.16110 0.10950 0.2722 \n", - "543 0.13810 0.10620 0.07958 0.2473 \n", - "544 0.20370 0.13770 0.06845 0.2249 \n", - "545 0.15170 0.10490 0.07174 0.2642 \n", - "546 0.08842 0.04384 0.02381 0.2681 \n", - "547 0.22460 0.17830 0.08333 0.2691 \n", - "548 0.09546 0.09350 0.03846 0.2552 \n", - "549 0.16330 0.06194 0.03264 0.3059 \n", - "550 0.07348 0.00000 0.00000 0.2458 \n", - "551 0.17820 0.15640 0.06413 0.3169 \n", - "552 0.10640 0.08653 0.06498 0.2407 \n", - "553 0.08298 0.07993 0.02564 0.2435 \n", - "554 0.16200 0.24390 0.06493 0.2372 \n", - "555 0.17100 0.20000 0.09127 0.2226 \n", - "556 0.12000 0.01005 0.02232 0.2262 \n", - "557 0.07158 0.00000 0.00000 0.2475 \n", - "558 0.31710 0.36620 0.11050 0.2258 \n", - "559 0.25170 0.36300 0.09653 0.2112 \n", - "560 0.22640 0.13260 0.10480 0.2250 \n", - "561 0.05494 0.00000 0.00000 0.1566 \n", - "562 0.79170 1.17000 0.23560 0.4089 \n", - "563 0.41860 0.65990 0.25420 0.2929 \n", - "564 0.21130 0.41070 0.22160 0.2060 \n", - "565 0.19220 0.32150 0.16280 0.2572 \n", - "566 0.30940 0.34030 0.14180 0.2218 \n", - "567 0.86810 0.93870 0.26500 0.4087 \n", - "568 0.06444 0.00000 0.00000 0.2871 \n", - "\n", - " worst fractal dimension \n", - "0 0.11890 \n", - "1 0.08902 \n", - "2 0.08758 \n", - "3 0.17300 \n", - "4 0.07678 \n", - "5 0.12440 \n", - "6 0.08368 \n", - "7 0.11510 \n", - "8 0.10720 \n", - "9 0.20750 \n", - "10 0.08452 \n", - "11 0.10480 \n", - "12 0.10230 \n", - "13 0.06287 \n", - "14 0.14310 \n", - "15 0.13410 \n", - "16 0.08216 \n", - "17 0.11420 \n", - "18 0.07615 \n", - "19 0.07259 \n", - "20 0.08183 \n", - "21 0.07773 \n", - "22 0.09946 \n", - "23 0.07526 \n", - "24 0.09564 \n", - "25 0.10590 \n", - "26 0.12750 \n", - "27 0.07421 \n", - "28 0.09876 \n", - "29 0.07919 \n", - ".. ... \n", - "539 0.10660 \n", - "540 0.08134 \n", - "541 0.10230 \n", - "542 0.06956 \n", - "543 0.06443 \n", - "544 0.08492 \n", - "545 0.06953 \n", - "546 0.07399 \n", - "547 0.09479 \n", - "548 0.07920 \n", - "549 0.07626 \n", - "550 0.06592 \n", - "551 0.08032 \n", - "552 0.06484 \n", - "553 0.07393 \n", - "554 0.07242 \n", - "555 0.08283 \n", - "556 0.06742 \n", - "557 0.06969 \n", - "558 0.08004 \n", - "559 0.08732 \n", - "560 0.08321 \n", - "561 0.05905 \n", - "562 0.14090 \n", - "563 0.09873 \n", - "564 0.07115 \n", - "565 0.06637 \n", - "566 0.07820 \n", - "567 0.12400 \n", - "568 0.07039 \n", - "\n", - "[569 rows x 30 columns]\n", - " malignant benign\n", - "0 1 0\n", - "1 1 0\n", - "2 1 0\n", - "3 1 0\n", - "4 1 0\n", - "5 1 0\n", - "6 1 0\n", - "7 1 0\n", - "8 1 0\n", - "9 1 0\n", - "10 1 0\n", - "11 1 0\n", - "12 1 0\n", - "13 1 0\n", - "14 1 0\n", - "15 1 0\n", - "16 1 0\n", - "17 1 0\n", - "18 1 0\n", - "19 0 1\n", - "20 0 1\n", - "21 0 1\n", - "22 1 0\n", - "23 1 0\n", - "24 1 0\n", - "25 1 0\n", - "26 1 0\n", - "27 1 0\n", - "28 1 0\n", - "29 1 0\n", - ".. ... ...\n", - "539 0 1\n", - "540 0 1\n", - "541 0 1\n", - "542 0 1\n", - "543 0 1\n", - "544 0 1\n", - "545 0 1\n", - "546 0 1\n", - "547 0 1\n", - "548 0 1\n", - "549 0 1\n", - "550 0 1\n", - "551 0 1\n", - "552 0 1\n", - "553 0 1\n", - "554 0 1\n", - "555 0 1\n", - "556 0 1\n", - "557 0 1\n", - "558 0 1\n", - "559 0 1\n", - "560 0 1\n", - "561 0 1\n", - "562 1 0\n", - "563 1 0\n", - "564 1 0\n", - "565 1 0\n", - "566 1 0\n", - "567 1 0\n", - "568 0 1\n", - "\n", - "[569 rows x 2 columns]\n" - ] - }, - { - "data": { - "text/plain": [ - "0" - ] - }, - "execution_count": 31, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "import os\n", "from sklearn.datasets import load_breast_cancer\n", @@ -1044,20 +558,11 @@ }, { "cell_type": "code", - "execution_count": 32, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0" - ] - }, - "execution_count": 32, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "# Common imports\n", "import numpy as np\n", @@ -1089,6 +594,21 @@ "cell_type": "markdown", "metadata": {}, "source": [ + "## Algorithms for Setting up Decision Trees\n", + "Two algorithms stand out in the set up of decision trees:\n", + "1. The CART (Classification And Regression Tree) algorithm for both classification and regression\n", + "\n", + "2. The ID3 algorithm based on the computation of the information gain for classification\n", + "\n", + "We discuss both algorithms with applications here. The popular library -Scikit-Learn_ uses the CART algorithm. For classification problems you can use either the **gini** index or the **entropy** to split a tree in two branches.\n", + "\n", + "## The CART algorithm for Classification\n", + "\n", + "\n", + "## The CART algorithm for Regression\n", + "\n", + "\n", + "\n", "## Computing the Gini index\n", "\n", "The example we will look at is a classical one in many Machine\n", @@ -1130,78 +650,11 @@ }, { "cell_type": "code", - "execution_count": 33, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " (0, 0)\t1.0\n", - " (0, 7)\t1.0\n", - " (0, 9)\t1.0\n", - " (0, 13)\t1.0\n", - " (1, 3)\t1.0\n", - " (1, 5)\t1.0\n", - " (1, 8)\t1.0\n", - " (1, 12)\t1.0\n", - " (2, 3)\t1.0\n", - " (2, 5)\t1.0\n", - " (2, 8)\t1.0\n", - " (2, 11)\t1.0\n", - " (3, 1)\t1.0\n", - " (3, 5)\t1.0\n", - " (3, 8)\t1.0\n", - " (3, 12)\t1.0\n", - " (4, 2)\t1.0\n", - " (4, 6)\t1.0\n", - " (4, 8)\t1.0\n", - " (4, 12)\t1.0\n", - " (5, 2)\t1.0\n", - " (5, 4)\t1.0\n", - " (5, 10)\t1.0\n", - " (5, 12)\t1.0\n", - " (6, 2)\t1.0\n", - " :\t:\n", - " (8, 12)\t1.0\n", - " (9, 3)\t1.0\n", - " (9, 4)\t1.0\n", - " (9, 10)\t1.0\n", - " (9, 12)\t1.0\n", - " (10, 2)\t1.0\n", - " (10, 6)\t1.0\n", - " (10, 10)\t1.0\n", - " (10, 12)\t1.0\n", - " (11, 3)\t1.0\n", - " (11, 6)\t1.0\n", - " (11, 10)\t1.0\n", - " (11, 11)\t1.0\n", - " (12, 1)\t1.0\n", - " (12, 6)\t1.0\n", - " (12, 8)\t1.0\n", - " (12, 11)\t1.0\n", - " (13, 1)\t1.0\n", - " (13, 5)\t1.0\n", - " (13, 10)\t1.0\n", - " (13, 12)\t1.0\n", - " (14, 2)\t1.0\n", - " (14, 6)\t1.0\n", - " (14, 8)\t1.0\n", - " (14, 11)\t1.0\n", - "Train set accuracy with Decision Tree: 0.73\n" - ] - }, - { - "data": { - "text/plain": [ - "0" - ] - }, - "execution_count": 33, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "# Common imports\n", "import numpy as np\n", @@ -1288,73 +741,11 @@ }, { "cell_type": "code", - "execution_count": 34, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "X1 < 0.000 Gini=0.408\n", - "X1 < 0.000 Gini=0.408\n", - "X1 < 1.000 Gini=0.394\n", - "X1 < 2.000 Gini=0.394\n", - "X1 < 2.000 Gini=0.394\n", - "X1 < 2.000 Gini=0.394\n", - "X1 < 1.000 Gini=0.394\n", - "X1 < 0.000 Gini=0.408\n", - "X1 < 0.000 Gini=0.408\n", - "X1 < 2.000 Gini=0.394\n", - "X1 < 0.000 Gini=0.408\n", - "X1 < 1.000 Gini=0.394\n", - "X1 < 1.000 Gini=0.394\n", - "X1 < 2.000 Gini=0.394\n", - "X2 < 0.000 Gini=0.408\n", - "X2 < 0.000 Gini=0.408\n", - "X2 < 0.000 Gini=0.408\n", - "X2 < 1.000 Gini=0.407\n", - "X2 < 2.000 Gini=0.407\n", - "X2 < 2.000 Gini=0.407\n", - "X2 < 2.000 Gini=0.407\n", - "X2 < 1.000 Gini=0.407\n", - "X2 < 2.000 Gini=0.407\n", - "X2 < 1.000 Gini=0.407\n", - "X2 < 1.000 Gini=0.407\n", - "X2 < 1.000 Gini=0.407\n", - "X2 < 0.000 Gini=0.408\n", - "X2 < 1.000 Gini=0.407\n", - "X3 < 0.000 Gini=0.408\n", - "X3 < 0.000 Gini=0.408\n", - "X3 < 0.000 Gini=0.408\n", - "X3 < 0.000 Gini=0.408\n", - "X3 < 1.000 Gini=0.367\n", - "X3 < 1.000 Gini=0.367\n", - "X3 < 1.000 Gini=0.367\n", - "X3 < 0.000 Gini=0.408\n", - "X3 < 1.000 Gini=0.367\n", - "X3 < 1.000 Gini=0.367\n", - "X3 < 1.000 Gini=0.367\n", - "X3 < 0.000 Gini=0.408\n", - "X3 < 1.000 Gini=0.367\n", - "X3 < 0.000 Gini=0.408\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 1.000 Gini=0.405\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 1.000 Gini=0.405\n", - "X4 < 1.000 Gini=0.405\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 1.000 Gini=0.405\n", - "X4 < 1.000 Gini=0.405\n", - "X4 < 0.000 Gini=0.408\n", - "X4 < 1.000 Gini=0.405\n", - "Split: [X3 < 1.000]\n" - ] - } - ], + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "# Split a dataset based on an attribute and an attribute value\n", "def test_split(index, value, dataset):\n", @@ -1458,37 +849,11 @@ }, { "cell_type": "code", - "execution_count": 35, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "['Outlook', 'Temperature', 'Humidity', 'Wind']\n", - "System entropy 0.863120568566631\n", - "Outlook\n", - "(Sunny)\n", - "(Overcast)\n", - "(Rain)\n", - "Humidity\n", - "(High)\n", - "(Normal)\n", - "1\n", - "Temperature\n", - "(Mild)\n", - "(Cool)\n", - "Wind\n", - "(Weak)\n", - "(Strong)\n", - "1\n", - "1\n", - "0\n", - "0\n", - "1\n" - ] - } - ], + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "import re\n", "import math\n", @@ -1688,32 +1053,11 @@ }, { "cell_type": "code", - "execution_count": 36, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(426, 30)\n", - "(143, 30)\n", - "Test set accuracy with Logistic Regression: 0.95\n", - "Test set accuracy with SVM: 0.63\n", - "Test set accuracy with Decision Trees: 0.90\n", - "Test set accuracy Logistic Regression with scaled data: 0.96\n", - "Test set accuracy SVM with scaled data: 0.96\n", - "Test set accuracy with Decision Trees and scaled data: 0.90\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python3.7/site-packages/sklearn/linear_model/logistic.py:757: ConvergenceWarning: lbfgs failed to converge. Increase the number of iterations.\n", - " \"of iterations.\", ConvergenceWarning)\n" - ] - } - ], + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", @@ -1767,20 +1111,11 @@ }, { "cell_type": "code", - "execution_count": 37, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from __future__ import division, print_function, unicode_literals\n", "\n", @@ -1857,20 +1192,11 @@ }, { "cell_type": "code", - "execution_count": 38, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "np.random.seed(6)\n", "Xs = np.random.rand(100, 2) - 0.5\n", @@ -1903,8 +1229,10 @@ }, { "cell_type": "code", - "execution_count": 39, - "metadata": {}, + "execution_count": 10, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "# Quadratic training set + noise\n", @@ -1917,24 +1245,11 @@ }, { "cell_type": "code", - "execution_count": 40, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "DecisionTreeRegressor(criterion='mse', max_depth=2, max_features=None,\n", - " max_leaf_nodes=None, min_impurity_decrease=0.0,\n", - " min_impurity_split=None, min_samples_leaf=1,\n", - " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", - " presort=False, random_state=42, splitter='best')" - ] - }, - "execution_count": 40, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", "\n", @@ -1951,20 +1266,11 @@ }, { "cell_type": "code", - "execution_count": 41, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", "\n", @@ -2008,20 +1314,11 @@ }, { "cell_type": "code", - "execution_count": 42, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "tree_reg1 = DecisionTreeRegressor(random_state=42)\n", "tree_reg2 = DecisionTreeRegressor(random_state=42, min_samples_leaf=10)\n", @@ -2091,6 +1388,26 @@ "\n", "However, by aggregating many decision trees, using methods like bagging, random forests, and boosting, the predictive performance of trees can be substantially improved. \n", "\n", + "\n", + "## From a Single Tree to Many Trees, that is meet the Jungle of Methods\n", + "\n", + "As stated above and seen in many of the examples discussed here about\n", + "a single decision tree, we often end up overfitting our training\n", + "data. This normally means that we have a high variance. Can we reduce\n", + "the variance of a statistical learning method?\n", + "\n", + "This leads us to a set of different methods that can combine different\n", + "machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are\n", + "1. Votign classifiers\n", + "\n", + "2. Bagging and Pasting\n", + "\n", + "3. Random forests\n", + "\n", + "4. Boosting methods\n", + "\n", + "We discuss these methods here.\n", + "\n", "## Bagging\n", "\n", "The **plain** decision trees suffer from high\n", @@ -2135,20 +1452,11 @@ }, { "cell_type": "code", - "execution_count": 43, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "heads_proba = 0.51\n", "coin_tosses = (np.random.rand(10000, 10) < heads_proba).astype(np.int32)\n", @@ -2173,24 +1481,11 @@ }, { "cell_type": "code", - "execution_count": 44, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "LogisticRegression 0.864\n", - "RandomForestClassifier 0.872\n", - "SVC 0.888\n", - "VotingClassifier 0.896\n", - "LogisticRegression 0.864\n", - "RandomForestClassifier 0.872\n", - "SVC 0.888\n", - "VotingClassifier 0.912\n" - ] - } - ], + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "from sklearn.datasets import make_moons\n", @@ -2246,37 +1541,11 @@ }, { "cell_type": "code", - "execution_count": 45, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python3.7/site-packages/sklearn/linear_model/logistic.py:432: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n", - " FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/ensemble/forest.py:248: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n", - " \"10 in version 0.20 to 100 in 0.22.\", FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/svm/base.py:196: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n", - " \"avoid this warning.\", FutureWarning)\n" - ] - }, - { - "data": { - "text/plain": [ - "VotingClassifier(estimators=[('lr', LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,\n", - " intercept_scaling=1, max_iter=100, multi_class='warn',\n", - " n_jobs=None, penalty='l2', random_state=42, solver='warn',\n", - " tol=0.0001, verbose=0, warm_start=False)), ('rf', RandomFore...rbf', max_iter=-1, probability=False, random_state=42,\n", - " shrinking=True, tol=0.001, verbose=False))],\n", - " flatten_transform=None, n_jobs=None, voting='hard', weights=None)" - ] - }, - "execution_count": 45, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "from sklearn.datasets import make_moons\n", @@ -2300,36 +1569,11 @@ }, { "cell_type": "code", - "execution_count": 46, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "LogisticRegression 0.864\n", - "RandomForestClassifier 0.872\n", - "SVC 0.888\n", - "VotingClassifier 0.896\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python3.7/site-packages/sklearn/linear_model/logistic.py:432: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n", - " FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/ensemble/forest.py:248: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n", - " \"10 in version 0.20 to 100 in 0.22.\", FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/svm/base.py:196: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n", - " \"avoid this warning.\", FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/linear_model/logistic.py:432: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n", - " FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/svm/base.py:196: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n", - " \"avoid this warning.\", FutureWarning)\n" - ] - } - ], + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.metrics import accuracy_score\n", "\n", @@ -2341,37 +1585,11 @@ }, { "cell_type": "code", - "execution_count": 47, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python3.7/site-packages/sklearn/linear_model/logistic.py:432: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n", - " FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/ensemble/forest.py:248: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n", - " \"10 in version 0.20 to 100 in 0.22.\", FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/svm/base.py:196: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n", - " \"avoid this warning.\", FutureWarning)\n" - ] - }, - { - "data": { - "text/plain": [ - "VotingClassifier(estimators=[('lr', LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,\n", - " intercept_scaling=1, max_iter=100, multi_class='warn',\n", - " n_jobs=None, penalty='l2', random_state=42, solver='warn',\n", - " tol=0.0001, verbose=0, warm_start=False)), ('rf', RandomFore...'rbf', max_iter=-1, probability=True, random_state=42,\n", - " shrinking=True, tol=0.001, verbose=False))],\n", - " flatten_transform=None, n_jobs=None, voting='soft', weights=None)" - ] - }, - "execution_count": 47, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "log_clf = LogisticRegression(random_state=42)\n", "rnd_clf = RandomForestClassifier(random_state=42)\n", @@ -2385,42 +1603,11 @@ }, { "cell_type": "code", - "execution_count": 48, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python3.7/site-packages/sklearn/linear_model/logistic.py:432: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n", - " FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/ensemble/forest.py:248: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n", - " \"10 in version 0.20 to 100 in 0.22.\", FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/svm/base.py:196: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n", - " \"avoid this warning.\", FutureWarning)\n", - "/usr/local/lib/python3.7/site-packages/sklearn/linear_model/logistic.py:432: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n", - " FutureWarning)\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "LogisticRegression 0.864\n", - "RandomForestClassifier 0.872\n", - "SVC 0.888\n", - "VotingClassifier 0.912\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python3.7/site-packages/sklearn/svm/base.py:196: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n", - " \"avoid this warning.\", FutureWarning)\n" - ] - } - ], + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.metrics import accuracy_score\n", "\n", @@ -2439,8 +1626,10 @@ }, { "cell_type": "code", - "execution_count": 49, - "metadata": {}, + "execution_count": 20, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.ensemble import BaggingClassifier\n", @@ -2455,17 +1644,11 @@ }, { "cell_type": "code", - "execution_count": 50, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "0.904\n" - ] - } - ], + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.metrics import accuracy_score\n", "print(accuracy_score(y_test, y_pred))" @@ -2473,17 +1656,11 @@ }, { "cell_type": "code", - "execution_count": 51, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "0.856\n" - ] - } - ], + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "tree_clf = DecisionTreeClassifier(random_state=42)\n", "tree_clf.fit(X_train, y_train)\n", @@ -2493,20 +1670,11 @@ }, { "cell_type": "code", - "execution_count": 52, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from matplotlib.colors import ListedColormap\n", "\n", @@ -2591,21 +1759,11 @@ }, { "cell_type": "code", - "execution_count": 53, - "metadata": {}, - "outputs": [ - { - "ename": "AttributeError", - "evalue": "'list' object has no attribute 'XXX'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0msklearn\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodel_selection\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mcross_validate\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0;31m# Data set not specificied\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0mX\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdataset\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mXXX\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 6\u001b[0m \u001b[0mY\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdataset\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mYYY\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0;31m#Instantiate the model with 100 trees and entropy as splitting criteria\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mAttributeError\u001b[0m: 'list' object has no attribute 'XXX'" - ] - } - ], + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.preprocessing import LabelEncoder\n", @@ -2628,8 +1786,10 @@ }, { "cell_type": "code", - "execution_count": 54, - "metadata": {}, + "execution_count": 25, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "bag_clf = BaggingClassifier(\n", @@ -2639,20 +1799,11 @@ }, { "cell_type": "code", - "execution_count": 55, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.976" - ] - }, - "execution_count": 55, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "bag_clf.fit(X_train, y_train)\n", "y_pred = bag_clf.predict(X_test)\n", @@ -2671,35 +1822,25 @@ "\n", "Example will be added here.\n", "\n", - "## Boosting: AdaBoost" + "\n", + "## Boosting, a Bird'e Eye\n", + "\n", + "\n", + "\n", + "\n", + "## Adaptive boosting: AdaBoost, Basic Algorithm\n", + "\n", + "\n", + "## AdaBoost Examples" ] }, { "cell_type": "code", - "execution_count": 56, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "from sklearn.ensemble import AdaBoostClassifier\n", "\n", @@ -2738,35 +1879,21 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Gradient Boosting" + "## Gradient boosting: Basic Algorithm\n", + "\n", + "\n", + "\n", + "\n", + "## Gradient Boosting, Examples" ] }, { "cell_type": "code", - "execution_count": 57, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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KCJSCsVOEYkCJbgZJKrMa73zRK0xs5yvYcOGhbKtdevWYWb85Cc/KXjZBx98EDPjmWeeCaUslbZkyRImT57Myy+/XO2iSMQodkabYmRlKEZWn5ooZFGvnc7irDXlcUrHHHMMI0aMYPLkye3TunXrFsq2unXrRmtrK0OHDi142bFjx9La2sqee+4ZSlkqbcmSJVx88cXstNNO7L333tUujkRMcuxU3IwWxcjKUIysPiW4earVjhO1ZsyYMZ3+7tatG/369dtieibr16/PO7ibWd7rTbX11lsXvaxIXChuRo9ipNQLNVHIU72OcVnLjj/+eHbaaSf+9a9/MWbMGJqbm7nooosAuPHGGznkkEPo378/vXr1Yt999+XWW2/ttHy622/nnXceXbp04fXXX+eII46gR48e7LDDDkyZMgXnXPt86W6/jRkzhkMPPZQHHniAkSNH0r17d/baay/uu+++Lcp+4403sssuu7DVVlsxYsQIHnjgAcaMGcORRx6ZdZ83btzIpEmT+OhHP8pWW21Fv379OOigg/j3v//dPo9zjiuvvJK99tqLrbbaigEDBnD66aezYsUKAGbPns1uu+0GwEknndR+W/P222/P99BLnVDcjDfFSMXIOFMNbp7qdYzLYsXltuSSJUs46aSTOPfcc9l9993p0aMHAHPnzm0P7gCPPfYYJ510Ehs2bODkk0/Ouk7nHMceeyxf/epXOeecc7jrrrs4//zzGTZsGF/60peyLjtr1ix+8IMfMGnSJHr37s3ll1/Osccey5w5c9h+++0B+Pvf/86Xv/xlPv/5zzN16lQWLlzIGWecwbp16xg5cmTW9V9yySVceeWVTJkyhT333JMVK1bw7LPPsmzZsvZ5zjrrLK666irOOussxo8fzzvvvMMFF1zAq6++yuOPP86wYcO4/fbbOf7445k8eTJHHHEEADvvvHPWbUv9UdzMTDFSMVLKzDmnl3Psu+++Lp2nn3bussv8v8n/ryWvvvpqqOt7+mnnmpuda2z0/1bzeG2//fZuwoQJad/7n//5Hwe4Bx98MOs6Nm/e7DZu3OhOPPFEt99++7VPX7t2rQPclClT2qede+65DnC33npr+7S2tja38847u8985jPt0x544AEHuNbW1vZp+++/v+vataubN29e+7R33nnHAe7nP/95+7R99tnHjRo1qlMZn3rqKQe4I444Iuu+jB8/3n3pS1/K+P5rr73mzMxdfvnlnab/85//dIB74IEHnHPOzZo1ywHupptuyrq9hLDPsTgBprsIxLhyvXLFzquvjn/cVIxUjEwoV4wsVD3E1FJjp5ooZJFoP3bhhf5f8E/sifKv7SiI023J7t27t/+6TjZ79my++MUvst1229GlSxeampq4+eabee211/Ja76c//en2/5sZe+yxB2+//XbO5fbYY4/2WgiAIUOGsM0227Qvu379el588UU+//nPd1rugAMOYNCgQTnX/7GPfYx77rmHiy66iKeffnqLp+H84x//wDnHhAkT2LRpU/vr4IMPplu3bvzrX//KuQ2R5Nh55pnRr6WsNMVIxUgpPyW4WcQpCEVJnMbB3HbbbbeY9sEHH3DooYcye/ZsfvrTn/Lkk0/y3HPPMWHCBNatW5dznY2NjbS0tHSa1q1bt7yW7dOnzxbTkpddsGABzjkGDBiwxXwDBw7Muf7JkydzwQUXcMcdd3DggQfSr18/vva1r7F8+XKA9uebDxkyhKampvZX165dWb9+PUuXLs25jXrS2gpTpvh/pYNiZ3aKkYqR9axScVNtcLNQ+7HixOmRpekeefjEE08wf/587rnnHkaPHt0+PQrP/h44cCBm1h5kky1cuDBnAO/WrRsXXHABF1xwAe+//z733nsv3//+99mwYQM33HADffv2BWDatGntbe2S9e/fP5wdqQEaISAzxc7sFCPLRzEy2ioZN5XgZhGnIBQ1cX5k6Zo1awBoampqn7Zo0SLuv//+ahWp3VZbbcXIkSO54447mDRpUvv0p556ivfff7+g8RYHDRrE6aefzl//+ldeeeUVAA4//HDMjHfffZcJEyZkXDYxTNDatWuL3JP40yNpM1PszE0xsjwUI6OtknFTCW4OcQ5CUpyDDjqIHj16cPrpp3PRRRexcuVKLrnkEgYOHMi7775b7eJxySWX8JnPfIYvfOELnHLKKSxYsICLL76YgQMH0tCQvdXRJz/5Sfbff3/22WcfttlmG6ZPn86jjz7KWWedBcDuu+/OmWeeyWmnncYrr7zCQQcdRLdu3Xj77bd56KGH+Pa3v80BBxzAkCFDaGlp4ZZbbmH48OF0796dHXfckd69e1fiEESCaimzU+ysXYqRipHFqmTcVIIbeHP5mxz752OLWnbZMli8GPr3hz59YL/B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aQ5Ieyvq61//uuvVq5dbsmSJc865iy++2HXt2tU9/PDDBZVz8+bNrlevXu7CCy8saLm4ids5lu47Xiyq2ETBRSh2Zjqmidg5m12cA/f7s2YXeojLLm7nbz7yjZHljoO5YmBbW5vbuHFjztemTZtK3tdcqn0skkX1nIxS7Kx64hqVVyEJbnsyi/830S6sudk5O/Ykx2TchXfckPf6qi2qX5RSzJ492wHu2GOP7TT9yiuvdIBbs2ZNznX85Cc/cWbm1q9fv8V77733nuvevbs7++yz3R/+8AfX0NDg/vznPxdV1o9//OPusMMOK2rZuIjjORZWm89qJ7jlfuUbO9PFTec6Yucr7O4cuBdufiWv9VVSHM/fXPKNkZWIg9li4GOPPebwzWWyvg455JCS9zWXah+LZFE+J6MSO+PSBjdSEj16EwMVJwYef+QR+PY/uzCjDbbfIX07sriwi63aRQDA/ai4ZoDPP/88AJdddlmn6UuWLKGlpYXm5mYALr30Um666SbeeOMN7rrrLo4++uj2ed977z1aWlro2rXrFusfNGgQZ555Jj//+c/ZtGkTv/71r/niF7/YaZ5s607Wv39/5syZk/Y9qR61+QxXurgJHbGz37FdYAGM3CMmsdOiESNx5Y2RpcTBMGLgvvvuy3PPPZdzf3r1SjcwiBfG9QCqfyziIiqxUwluETI9T33sWBi1pAsznofHHt/E/02C446D006rZmnr04wZMxg2bBjDhw/vNP2FF15g7733bv/7sMMOY8KECZxyyilbrGPdunV069Yt4zZ23nln1q9fz8c//nG++c1vbvF+tnUna25uZu3atbl2SSJET9UqXKa4mXiP7XyCe9f/beLqcxU7yy3fGFlKHAwjBvbs2ZORI0fm2h0syw+OMK4HUP1jUQsqGTuV4BYp0y+UpgY/luMtt22C5+Chh/z0uAXqYmtOo2LGjBmMGjVqi+kvvPACn/vc59r/HjNmTMZ19O3blw8++CDte4888ginn346Y8eO5amnnuLll1/uFChzrTvZsmXL6NevX17zSvXF6BG9kZO1Zid4PO8VUzbxb2IQO4usOY2KfGNkKXEwjBj4+OOP84lPfCLnOg455BCmZXgCSBjXA6j+sYi7SsfOWIyiECddEkPdNHT0BL7zzioVpk4553jhhRfYZ599Ok1fvnw5b7311hbTM9l1113Z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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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WE488cSw9gGcccYZ3HDDDZxwwgk899xzPPjggwwZMoSffvqJ8ePHc+ONNwK2e0VJSQklJSXsvffeAY/16quvMn78eNq2bct//vMfZs+ezZdffsnhhx/Oj36jEL/77jsuv/xyrrrqKubNm8fee+/Nqaee2qBv7fjx4/nxxx+ZPXs2r732GnfccQfZ2dkBr0fXUWezId755nfsaF07FEWJb1xoRscY49oCdATmA2XAD8CZQeq9ApT6LFXAF+GOP3LkSBOOJUuMuf12+xktX331VeANEB9LlDz88MMGCLiMHz++Ub0///nPDfYfP368GThwYIP1CRMmBD3f999/b9LS0szNN9/coHzx4sUGMPPnz/f5SjEDBw401dXVdWVXXnmlAcz06dPryqqrq02XLl3M+eef38jeiy++uMF5br31VpOWlmZWrFhRZw9gHn744bo6/fv3N0cffXSD/Xbu3Gk6depkLr/88qD/mzHGnHfeeQYwc+fObVB+zDHHmIKCAuPxeBrYd8UVVzQ6RiTn3759u8nLy2v0/91xxx0GMDfddFNd2U033WTwuTYWLlxoAHPvvfcG/T+89q1atarRNv/jjxw50gwYMKDB77R69WqTkZFhrrzyyrqyI4880mRkZJiVK1fWlW3atMmkpaWZ2267zRhjzJYtWwxgnn/++aC2BSPovRkNw4bZ++jTTxttApYaF7Uw2qVVtPOkk+z3MW9es3RTUZQkJyPDakVlZaNNkWqn25HNWY74dQPOAmaLyP7+lYwx44wxbb0LsAR4prkn96ZCmjrVfro293Hru5l2aSLz58/no48+arDMnDmzUb3x48c3WB86dChr166tWx81ahQLFizghhtuYPHixVRVVTWo/8Ybb+DxeDjrrLMaRFEPPvhg8vPzeffddxvUHzt2bIOBSvvttx8Axx13XF1ZRkYGAwYMCBh1PO200xqsn3HGGXg8Hj788MOA38OqVav47rvvGtmXm5tLUVFRI/sCkZ6ezsSJExudd+3atY0ifRMmTGjS+b/44gvKysoC/n/heP311xERLrzwwrB1w1FWVsYnn3zC6aef3uB36tu3L4cddhjvvPNOg/oDBw5k4MCBdetdu3ala9eudddQp06d6NevH9dddx0PPvggq1ataraNURHfkc2W104nsvnt0h2x0U1FURKfmhq7pKVBZmaTD+Oasyki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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 28, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "np.random.seed(42)\n", "X = np.random.rand(100, 1) - 0.5\n", @@ -2861,28 +1988,11 @@ }, { "cell_type": "code", - "execution_count": 58, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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BatevGBv+XI//nbtWh+s9ezpj3Xo4LuF993XX+j++U8/hjfMBHP88XDssf5COGuWX8Rl7VooKvKP++/vX/Ptt6FbN3/Ozp3h2299sLh2rf8d3n67vwGJBnJ5eX5fqgHeDTckPpYouHSu7sDTzL/n6uqaN0p5ef49mNW+iWrMsXbtfKtFNOgePvy7itR+GtLixHTBN2SCUZMmxpf0qQj+9Tt2TGl1LbV4p0YBaCsTvTsvK4Pp032wGf1gBr8P/Af3fff5DfwH+s9/Dp99Bs89tzX9UziuNPqBnmqLW7L/tPfffz+//e1v+fLLL+nbty9XX301o0ePrvM58QLmuuqS6rEvv4QPP/SLAzRFi111te/Seeyxxp+rrtdoiPDvJd7+/PymCwib63elGyapU0wXfOlbDQsumiwxvqRP2ALasWNKNxEpLQUrCkBbu+hY0eiHfryxo+ADzptuqn0+53xv1XnnJQ6+6uqCDQOXK67w/8S9evmu3q5dfevhkCH+5nTePFix4n4eeGAcmzb5i8XChQs555xx/POfsP/+o/n2W9hxR99iG7bcPvigXz0qNmBu02ZrV3G8lkGIH6DVdawuiYK25joWW6a5WxbDfeFKXNA8AWFdxxt6TKSWsAX0j3/k3PZ/ZS8H1cAaith96J+AnpmsnTSXmAAUkr+JUIt3anI+AP34448pidxmnHzyyVxwwQWsW7eOY445ptZzxowZw5gxY1ixYgU//vGPax0///zzOeWUU1i0aBGnn356rePjx4/nuOOO4+OPP+bcc8+tdfx3v/sdRx55JO+//z6XXHJJrePXXHMNw4cP54033uCKK66odfzmm29m6NChvPzyy1x11VW1jt95553stttuPP3009x44421jt9777306dOHhx9+mNtvv73W8UcffZSePXty9913c/fdd9c6/txzz9GxY0duu+02dt/9EZYs8cuLhQFOXl4peXlQVXUD8Ezk2R0wmx6UnQy8EjneA+ceCwLPCUBZjaPO7Uhl5X1MmgRwCfB+5Pm7EixlDZwH1JydunHjOh599Lc8+uho4P8BiyPPLwamBF+fhHMrI2MURwITg6+Ppro6OvngWOBXAFRXl1DbycAFmK0DjqkVFJqNIT9/DLCCysraf3t5eefTtu0pbNq0COdOp6jI528Nz9O27Xiqq4+juvpjoObfnp+g8zucOxL/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\n", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "61\n", - "Minimum validation MSE: 0.002712853325235463\n" - ] - } - ], + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "\n", "from sklearn.model_selection import train_test_split\n", @@ -2944,32 +2054,14 @@ ] }, { - "cell_type": "code", - "execution_count": null, + "cell_type": "markdown", "metadata": {}, - "outputs": [], - "source": [] + "source": [ + "## XGBoost: Extreme Gradient Boosting" + ] } ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.4" - } - }, + "metadata": {}, "nbformat": 4, "nbformat_minor": 2 } diff --git a/doc/pub/DecisionTrees/ipynb/ipynb-DecisionTrees-src.tar.gz b/doc/pub/DecisionTrees/ipynb/ipynb-DecisionTrees-src.tar.gz index 866e8bc6fee5f73d5e3c883649989c1a4a087323..cc84654c373b9919009e62dbf1803a4e4fc3b795 100644 GIT binary patch literal 195 zcmV;!06hO6iwFSnS-o8V1MSaC3c@fD2H>uHia9|^A4%6jUAPcLdV$nVZG0p(Nx|OU zv;|$Mt0F?a&CkHkFtcB;itReGcN;8*5W=zy#>^R=k|gsyiQN#Vl;#P|a+Uyz)0D9Q z$Z{vW^u}`SPH9gl4a&DYS8JLNd*)Z*nSY{eg@Mg(u&t6HmBmV_GZc6bMkrZoL=%Z_ xkQLMl&Da2qw_a!jE(hRsEvzf@OW0|3)ck6q@Yg?ip67YrJph!{X}|yo002}lTEqYV literal 195 zcmV;!06hO6iwFQN#k*Yq1MSaC3c@fD2H>uHia9|^+az5Jb>Tt~=><|dwegYEBn5kW z`v6_3t0F?a&CkHkFtcB;^6ffucNZ*%5W*>iF*DAlB*{Ea;$etW#&|{($~cfXO?ego zS?;8l&N^X+Q<@Vhi|TD}sMYm{J@YH@%s){y(!yrfyGAQe+F_~n8FD;GE43;NqK#zR xs}d@Wc5HybTPF>IP(6sMl5Qx9OV}EHG~#Nb@Yg?ip67YrJpdG^W*7hn002fPR}BCF diff --git a/doc/pub/DecisionTrees/pdf/DecisionTrees-minted.pdf b/doc/pub/DecisionTrees/pdf/DecisionTrees-minted.pdf index 3038a87577964dc6a4c39ea35e7b32959395c399..233d1821a1f00d71edd4ec85cae6ee08c788ba55 100644 GIT binary patch delta 112678 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" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "from numpy import *\n", "from numpy.random import randint, randn\n", diff --git a/doc/src/DecisionTrees/DecisionTrees.do.txt b/doc/src/DecisionTrees/DecisionTrees.do.txt index c04e655e0..a734ad86b 100644 --- a/doc/src/DecisionTrees/DecisionTrees.do.txt +++ b/doc/src/DecisionTrees/DecisionTrees.do.txt @@ -35,6 +35,7 @@ given some assumptions, make predictions about the target feature value !split ===== A typical Decision Tree with its pertinent Jargon, Classification Problem ===== +Figure to come here. @@ -462,6 +463,23 @@ os.system(cmd) !ec +!split +===== Algorithms for Setting up Decision Trees ===== +Two algorithms stand out in the set up of decision trees: +o The CART (Classification And Regression Tree) algorithm for both classification and regression +o The ID3 algorithm based on the computation of the information gain for classification + +We discuss both algorithms with applications here. The popular library -Scikit-Learn_ uses the CART algorithm. For classification problems you can use either the _gini_ index or the _entropy_ to split a tree in two branches. + +!split +===== The CART algorithm for Classification ===== + + +!split +===== The CART algorithm for Regression ===== + + + !split ===== Computing the Gini index ===== @@ -1127,6 +1145,24 @@ plt.show() However, by aggregating many decision trees, using methods like bagging, random forests, and boosting, the predictive performance of trees can be substantially improved. + +!split +===== From a Single Tree to Many Trees, that is meet the Jungle of Methods ===== + +As stated above and seen in many of the examples discussed here about +a single decision tree, we often end up overfitting our training +data. This normally means that we have a high variance. Can we reduce +the variance of a statistical learning method? + +This leads us to a set of different methods that can combine different +machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are +o Votign classifiers +o Bagging and Pasting +o Random forests +o Boosting methods + +We discuss these methods here. + !split ===== Bagging ===== @@ -1426,9 +1462,19 @@ np.sum(y_pred == y_pred_rf) / len(y_pred) Example will be added here. -!split -===== Boosting: AdaBoost ===== +!split +===== Boosting, a Bird'e Eye ===== + + + + +!split +===== Adaptive boosting: AdaBoost, Basic Algorithm ===== + + +!split +===== AdaBoost Examples ===== !bc pycod from sklearn.ensemble import AdaBoostClassifier @@ -1461,14 +1507,17 @@ for subplot, learning_rate in ((121, 1), (122, 0.5)): save_fig("boosting_plot") plt.show() - - - !ec !split -===== Gradient Boosting ===== +===== Gradient boosting: Basic Algorithm ===== + + + + +!split +===== Gradient Boosting, Examples ===== !bc pycod np.random.seed(42) X = np.random.rand(100, 1) - 0.5 @@ -1617,3 +1666,7 @@ for n_estimators in range(1, 120): print(gbrt.n_estimators) print("Minimum validation MSE:", min_val_error) !ec + +!split +===== XGBoost: Extreme Gradient Boosting ===== +