Skip to content

Instantly share code, notes, and snippets.

@ngopal
Created May 28, 2017 22:53
Show Gist options
  • Save ngopal/703c16240eab388f56d47ad63c46a46a to your computer and use it in GitHub Desktop.
Save ngopal/703c16240eab388f56d47ad63c46a46a to your computer and use it in GitHub Desktop.
Trying AdaBoosted Decision Trees
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Automatically created module for IPython interactive environment\n"
]
}
],
"source": [
"print(__doc__)\n",
"\n",
"# Author: Noel Dawe <noel.dawe@gmail.com>\n",
"#\n",
"# License: BSD 3 clause\n",
"\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"from sklearn.ensemble import AdaBoostClassifier\n",
"from sklearn.tree import DecisionTreeClassifier\n",
"from sklearn.datasets import make_gaussian_quantiles\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 7.00334571e-01, -2.47067578e-01],\n",
" [ -3.95001869e+00, 2.74007953e+00],\n",
" [ 1.50221617e-01, -2.15763780e+00],\n",
" [ -1.67205033e+00, -9.41519069e-01],\n",
" [ 2.56048303e+00, -1.84657672e+00],\n",
" [ -1.72497907e+00, 3.46393036e+00],\n",
" [ 1.89572778e-01, 1.69996229e+00],\n",
" [ -3.34372344e-01, 1.02928372e+00],\n",
" [ 3.09811727e+00, -2.68185934e+00],\n",
" [ -1.24066342e+00, -1.22723646e+00],\n",
" [ -3.78850955e-01, 7.50035894e-01],\n",
" [ 2.92145879e+00, -2.08053008e+00],\n",
" [ -2.67496068e-03, -1.97511955e+00],\n",
" [ 7.48777043e-01, 1.94738919e-01],\n",
" [ 1.60339212e+00, -1.55548115e+00],\n",
" [ 4.95746877e-01, -1.85584900e+00],\n",
" [ 2.06773287e+00, -2.91347893e+00],\n",
" [ -1.02614929e+00, -1.22721023e+00],\n",
" [ -1.05664139e+00, 2.39349225e+00],\n",
" [ -1.55651057e+00, 1.61888380e+00],\n",
" [ -1.44516496e+00, 1.12363261e+00],\n",
" [ 8.59137508e-02, 2.98575492e-01],\n",
" [ 1.72281294e-01, 1.59733146e+00],\n",
" [ 3.51855148e-01, -4.19513941e-01],\n",
" [ 4.24504938e-01, -4.98156510e-01],\n",
" [ 8.78343579e-01, 1.35216028e+00],\n",
" [ 1.88835360e-02, -9.82445104e-01],\n",
" [ -9.14878354e-01, 1.27489499e+00],\n",
" [ 1.19665186e+00, -1.21553910e+00],\n",
" [ 2.46753646e+00, -1.07650912e+00],\n",
" [ 5.18071703e-01, -1.47727247e+00],\n",
" [ 1.60036563e+00, 2.14934555e+00],\n",
" [ -4.33037868e-01, 1.17093297e+00],\n",
" [ 9.34823856e-01, 2.53449445e+00],\n",
" [ 1.64096654e+00, 5.22541611e-01],\n",
" [ 1.18650172e+00, 1.31677719e+00],\n",
" [ -1.32075477e+00, -7.53804574e-01],\n",
" [ -2.17618228e+00, -6.33419445e-01],\n",
" [ 7.25392309e-01, -4.21566930e-01],\n",
" [ 7.28424090e-01, -3.93509798e+00],\n",
" [ -2.63862543e-01, -8.03619515e-02],\n",
" [ -4.61740018e-01, -1.89883031e+00],\n",
" [ -1.94188114e+00, 4.45702687e-01],\n",
" [ -1.55551457e-01, 1.20900346e-02],\n",
" [ -2.75852737e-01, 1.13899830e+00],\n",
" [ -6.34611412e-01, -9.50985136e-01],\n",
" [ 6.52184525e-01, -1.66309064e+00],\n",
" [ 1.22387121e+00, -3.25486724e+00],\n",
" [ 3.25403095e-01, 1.07764655e+00],\n",
" [ -2.48325385e+00, 1.01086514e+00],\n",
" [ -1.92962007e-01, -1.68368047e-01],\n",
" [ 2.63837649e-01, 5.79900601e-01],\n",
" [ -7.88416597e-01, 1.32818518e+00],\n",
" [ -7.31281995e-01, -1.41000886e+00],\n",
" [ -2.71296440e-01, -1.25529692e+00],\n",
" [ -5.47237140e-02, -2.28504718e+00],\n",
" [ -1.58266817e+00, 2.76631331e+00],\n",
" [ 8.74746428e-01, -6.26739755e-01],\n",
" [ 4.46375223e-01, -2.85982439e+00],\n",
" [ 1.39488860e+00, 3.01982539e-01],\n",
" [ -2.01745402e+00, 2.50027294e+00],\n",
" [ 1.96403066e+00, -9.35281998e-01],\n",
" [ -1.61576473e+00, -4.94045216e-01],\n",
" [ -1.21808528e+00, 9.54186190e-01],\n",
" [ 8.26815166e-01, 4.58593033e-01],\n",
" [ 5.90154155e-01, 1.10983330e+00],\n",
" [ 1.22879059e+00, 1.06124232e+00],\n",
" [ -3.14419475e-01, -2.83914784e-01],\n",
" [ -2.62758315e+00, 1.74819994e+00],\n",
" [ 1.04730498e+00, -1.34873633e+00],\n",
" [ 2.29717124e+00, -8.65154217e-01],\n",
" [ -5.66927376e-01, 1.16531992e+00],\n",
" [ -1.69602112e+00, 1.22095466e+00],\n",
" [ -2.63849502e-01, -1.43890393e-01],\n",
" [ 3.57559250e+00, -3.51622675e-01],\n",
" [ -9.91850800e-01, -7.59748086e-01],\n",
" [ 2.59468255e+00, 7.98157889e-01],\n",
" [ -1.40999892e+00, -1.51029504e-01],\n",
" [ -3.76489822e-01, 4.61239343e-02],\n",
" [ 1.57597552e+00, -8.29470109e-01],\n",
" [ -1.58011545e+00, 3.31513859e-01],\n",
" [ 2.26326594e-01, 1.23908997e+00],\n",
" [ -3.54464236e+00, -2.98987929e+00],\n",
" [ 2.80438154e-01, 1.68303641e-01],\n",
" [ 8.81567244e-01, -6.15121640e-01],\n",
" [ -4.55966783e-01, -5.43134877e-01],\n",
" [ -8.76813602e-01, 9.87166370e-01],\n",
" [ 2.90079730e+00, 8.28251144e-01],\n",
" [ 6.07441693e-01, -8.58425367e-01],\n",
" [ -1.88366411e+00, -2.48998964e+00],\n",
" [ -1.10579011e+00, -6.18731137e-01],\n",
" [ -1.73793024e-01, -1.32337783e+00],\n",
" [ -1.17404035e+00, -1.24532478e+00],\n",
" [ -7.71841230e-01, -2.81199202e-01],\n",
" [ 1.58592413e+00, 5.78272686e-01],\n",
" [ -1.74917482e+00, 1.23862329e+00],\n",
" [ -9.48459701e-01, 5.33955827e-01],\n",
" [ -3.36500713e-01, 1.63382380e+00],\n",
" [ 6.24183582e-01, -1.41640889e-01],\n",
" [ -9.78156016e-01, -5.61094219e-01],\n",
" [ -7.95219967e-01, 2.76461509e+00],\n",
" [ -1.64027822e-01, -2.48136453e-01],\n",
" [ -2.37869080e-01, -2.46328205e-01],\n",
" [ -9.71808952e-01, -1.19530128e+00],\n",
" [ 9.25716129e-01, -7.23913968e-02],\n",
" [ -9.49285382e-01, -1.79104476e-02],\n",
" [ -9.98209218e-01, 1.68671281e+00],\n",
" [ 5.98911459e-01, 1.09375374e-01],\n",
" [ 3.99763826e-01, -1.16827819e+00],\n",
" [ -1.54843918e+00, 2.39542934e-01],\n",
" [ 6.19660791e-01, 1.58721193e+00],\n",
" [ 1.34951452e-01, 1.30312718e+00],\n",
" [ 1.80136291e+00, 2.78190197e+00],\n",
" [ 4.28627923e+00, 1.16613876e+00],\n",
" [ -5.82145687e-01, 1.80811175e+00],\n",
" [ -9.90513065e-01, -2.87643188e-01],\n",
" [ -3.59464616e-01, 1.97967829e+00],\n",
" [ 1.18228921e+00, 2.18263939e+00],\n",
" [ 1.20590565e+00, 5.00067288e-02],\n",
" [ -2.55859945e-01, -8.54072742e-01],\n",
" [ 8.73963523e-01, -2.60464658e-01],\n",
" [ -2.88103760e+00, -2.74723597e+00],\n",
" [ 7.36206116e-01, -1.61834311e+00],\n",
" [ 3.28796959e-01, 9.65273457e-01],\n",
" [ 7.11610788e-01, 1.82889758e+00],\n",
" [ 6.17572824e-02, -3.20056671e-01],\n",
" [ 1.27400270e+00, -9.66937211e-01],\n",
" [ 3.09087038e+00, -1.97494406e+00],\n",
" [ 5.96992531e-02, 8.24225180e-01],\n",
" [ 1.99056216e+00, 1.82577205e-01],\n",
" [ 1.88296471e+00, -4.06314677e-01],\n",
" [ 2.69995268e-01, 2.97020930e+00],\n",
" [ -2.95421058e-01, 8.29610473e-01],\n",
" [ 3.43186415e-01, 2.85430976e-01],\n",
" [ -2.36767042e+00, 1.16676837e+00],\n",
" [ -1.35117536e+00, 8.28602478e-01],\n",
" [ 2.69359418e+00, 1.57127145e+00],\n",
" [ 4.02694640e-01, 3.71185021e-01],\n",
" [ -7.46947655e-01, -1.51740678e+00],\n",
" [ 2.20448394e+00, 1.54718777e-01],\n",
" [ -2.04228533e+00, -7.13422465e-01],\n",
" [ 2.33735098e-02, 2.50581277e-01],\n",
" [ -5.00177990e-02, 2.98484629e+00],\n",
" [ -6.72278767e-01, 6.75442797e-01],\n",
" [ 7.18530159e-02, -9.00847883e-01],\n",
" [ 1.13400275e+00, 6.58561050e-02],\n",
" [ 4.51189417e-01, -3.52662967e-01],\n",
" [ 1.27504182e+00, 7.10634309e-01],\n",
" [ 2.05263095e+00, -8.74036092e-01],\n",
" [ 1.10055695e-01, 8.74521753e-01],\n",
" [ 8.51808095e-01, 5.94368792e-01],\n",
" [ -4.87885591e-01, -3.26456695e-01],\n",
" [ 8.79362949e-01, -8.48251703e-01],\n",
" [ -3.48136329e-02, -1.09624407e+00],\n",
" [ 1.69930420e-01, 8.72857008e-01],\n",
" [ -1.06687980e+00, 1.77182314e+00],\n",
" [ 2.28671205e+00, 7.10982974e-01],\n",
" [ 9.61763991e-01, -4.52267758e-01],\n",
" [ 3.02334545e+00, -1.11091283e+00],\n",
" [ 1.14685885e+00, 1.47706418e+00],\n",
" [ 3.09187201e-02, -6.62804867e-01],\n",
" [ 2.46206213e-02, -1.58677410e+00],\n",
" [ -2.03770642e+00, 1.74266901e+00],\n",
" [ -6.32335280e-01, 1.73171540e+00],\n",
" [ 4.03881469e-01, 1.25177864e+00],\n",
" [ 6.90868988e-01, -1.06874541e-01],\n",
" [ 1.46911984e+00, 3.09285628e+00],\n",
" [ 3.96920359e-01, -1.03396977e-01],\n",
" [ 7.95864375e-01, 3.40453661e-01],\n",
" [ 1.20672188e+00, -5.84111651e-01],\n",
" [ 3.91029067e-01, -1.03700265e+00],\n",
" [ -2.74827432e+00, 4.98502311e-01],\n",
" [ -2.43850310e-01, -1.24147928e+00],\n",
" [ -1.19512398e-01, -4.20533208e-01],\n",
" [ -7.04580379e-01, -4.39799174e-01],\n",
" [ 1.42853555e+00, 1.30110184e+00],\n",
" [ -1.57892704e+00, 1.14448204e-01],\n",
" [ 9.32037160e-01, -2.30154537e+00],\n",
" [ -1.56195683e-01, -8.73081803e-01],\n",
" [ 6.96269035e-01, -9.62624259e-01],\n",
" [ 1.12433669e+00, -5.29535749e-01],\n",
" [ 2.34731475e+00, 1.04940892e+00],\n",
" [ -3.94703783e-01, 2.29505519e+00],\n",
" [ -2.64904966e+00, 1.30194639e+00],\n",
" [ 1.58874472e+00, 4.31712788e-01],\n",
" [ 5.70623352e-01, 8.39446798e-01],\n",
" [ 1.69552593e+00, 2.61850717e-01],\n",
" [ -1.70362631e-01, -1.74389607e+00],\n",
" [ -5.30733066e-01, -9.03301205e-01],\n",
" [ -4.38571347e-01, -3.44338059e+00],\n",
" [ 1.07311326e+00, 1.25145005e+00],\n",
" [ -1.73956490e+00, 7.78577593e-01],\n",
" [ -6.25406645e-01, 4.57536771e-01],\n",
" [ -4.86282531e-01, 6.16552662e-02],\n",
" [ -1.79966985e+00, 4.43423439e-01],\n",
" [ 2.20990456e-01, -2.69013154e-01],\n",
" [ -1.92300979e-01, -1.12750974e+00],\n",
" [ -2.33447240e+00, -1.25943579e+00],\n",
" [ 2.30184577e+00, 4.78020726e-01],\n",
" [ 1.12119822e+00, -8.81805614e-01],\n",
" [ 2.99768342e+00, 1.28949630e+00],\n",
" [ 3.23382276e+00, 5.57227671e+00],\n",
" [ 2.84949083e+00, 1.85392118e+00],\n",
" [ 2.26373629e+00, 3.68104818e+00],\n",
" [ 2.33156589e+00, 2.75647435e+00],\n",
" [ 3.83291205e+00, 2.60832463e+00],\n",
" [ 2.35312436e+00, 1.68588718e+00],\n",
" [ 3.19138335e+00, 2.76702778e+00],\n",
" [ 2.45041040e+00, 2.17642271e+00],\n",
" [ 2.68869451e+00, 4.71445169e+00],\n",
" [ 3.45520128e+00, 5.26946386e+00],\n",
" [ 4.56002604e+00, 5.40919778e+00],\n",
" [ 2.24065715e+00, 3.85491115e+00],\n",
" [ 3.16417484e+00, 4.47221053e+00],\n",
" [ 9.49537271e-01, 4.01045105e+00],\n",
" [ 2.43668738e+00, 3.78916885e+00],\n",
" [ 2.14103201e+00, 2.34203886e+00],\n",
" [ 4.42111871e+00, 3.45253431e+00],\n",
" [ 2.83289000e+00, 2.85418899e+00],\n",
" [ 2.34814911e+00, 4.36942814e+00],\n",
" [ 4.10421861e+00, 3.61542736e+00],\n",
" [ 2.85246163e+00, 1.48974170e+00],\n",
" [ 2.64605199e+00, 2.52012507e+00],\n",
" [ 2.02075831e+00, 2.64287101e+00],\n",
" [ 3.51867254e+00, 3.09472185e+00],\n",
" [ 4.06671580e+00, 2.37726973e+00],\n",
" [ 1.31828160e+00, 3.38598985e+00],\n",
" [ 3.34374311e+00, 2.91045559e+00],\n",
" [ 1.82984781e+00, 3.71759080e+00],\n",
" [ 4.42246766e+00, 2.96628353e+00],\n",
" [ 3.17422164e+00, 3.62891320e+00],\n",
" [ 4.27229510e+00, 5.67849211e+00],\n",
" [ 2.72355226e-01, 9.18749883e-01],\n",
" [ 4.02754063e+00, 4.14036250e+00],\n",
" [ 1.25283356e+00, 5.16529988e+00],\n",
" [ 3.34977161e+00, 4.08407210e+00],\n",
" [ 4.38857831e+00, 1.65291381e+00],\n",
" [ 3.30471550e+00, 2.63669027e+00],\n",
" [ 5.51216415e+00, 3.71728653e+00],\n",
" [ 3.75687461e+00, 2.77443099e+00],\n",
" [ 2.77148833e+00, 2.93040451e+00],\n",
" [ 3.55270778e+00, 9.37456169e-01],\n",
" [ 2.76110452e+00, 3.98640147e+00],\n",
" [ 2.49191839e+00, 3.55351859e+00],\n",
" [ 3.53664199e+00, 4.37456586e+00],\n",
" [ 2.78881944e+00, 1.92484740e+00],\n",
" [ 2.85794774e+00, 2.78510753e+00],\n",
" [ 3.99062798e+00, 5.19199287e+00],\n",
" [ 2.13552546e+00, 4.46073614e+00],\n",
" [ 4.18376399e+00, 3.87330317e+00],\n",
" [ 4.34599012e+00, 1.89572778e+00],\n",
" [ 2.66215895e+00, 4.50515705e+00],\n",
" [ 4.37345059e+00, 3.50079884e+00],\n",
" [ 1.94510720e+00, 3.82634948e+00],\n",
" [ 3.71604294e+00, 3.39715322e+00],\n",
" [ 4.27384386e+00, 1.87514527e+00],\n",
" [ 3.60650753e+00, 2.78603320e+00],\n",
" [ 5.13694926e+00, 2.06771575e+00],\n",
" [ 3.36763206e+00, 2.56858381e+00],\n",
" [ 2.82462175e+00, 4.26514159e+00],\n",
" [ 1.49349261e+00, 3.67426797e+00],\n",
" [ 3.55132566e+00, 5.16208511e+00],\n",
" [ 1.48517017e+00, 4.07267923e+00],\n",
" [ 3.29720815e+00, 3.24719048e+00],\n",
" [ 3.62820817e+00, 2.63491233e+00],\n",
" [ 5.53005753e+00, 1.19820810e+00],\n",
" [ 5.07448402e+00, 3.24111525e+00],\n",
" [ 3.01635362e+00, 2.14917758e+00],\n",
" [ -4.20816529e-01, 5.37297848e+00],\n",
" [ 2.20769210e+00, 4.10409145e+00],\n",
" [ 3.34874379e+00, 3.32145566e+00],\n",
" [ 3.64845994e+00, 3.16864885e+00],\n",
" [ 3.54055884e+00, 2.87733539e+00],\n",
" [ 1.60070670e+00, 2.57214429e+00],\n",
" [ 3.49417432e+00, 3.72698225e+00],\n",
" [ 1.93446189e+00, 3.45216413e+00],\n",
" [ 3.04279698e+00, 4.78067810e+00],\n",
" [ 2.57886697e+00, 3.05339503e+00],\n",
" [ 2.48010463e+00, 2.10406118e+00],\n",
" [ 3.92934334e+00, 4.08378753e+00],\n",
" [ 4.04505180e+00, 2.49414447e+00],\n",
" [ 3.11687139e+00, 4.12854125e+00],\n",
" [ 2.72770475e+00, 2.75412258e+00],\n",
" [ 2.45238158e+00, 4.49970953e+00],\n",
" [ 2.71042506e+00, 3.89138585e+00],\n",
" [ 2.72759956e+00, 4.80057134e+00],\n",
" [ 3.51108849e+00, 3.96114383e+00],\n",
" [ 2.57880937e+00, 1.77504791e+00],\n",
" [ 3.52605994e+00, 2.25658182e+00],\n",
" [ 2.00936854e+00, 3.68272111e+00],\n",
" [ 1.11537086e+00, 2.45144267e+00],\n",
" [ 3.83772712e+00, 2.56716294e+00],\n",
" [ 3.42932939e+00, 1.39278762e+00],\n",
" [ 4.69788129e+00, 3.67131890e+00],\n",
" [ 3.44976528e+00, 4.50998696e+00],\n",
" [ 4.98035073e+00, 3.61572932e+00],\n",
" [ 1.99268753e+00, 3.88391220e+00],\n",
" [ 4.46836852e+00, 3.22676937e+00],\n",
" [ -6.97503348e-02, 4.10688579e-01],\n",
" [ 6.71202670e+00, 4.00990579e+00],\n",
" [ 1.64333479e+00, 2.97829958e+00],\n",
" [ 5.51639033e+00, 3.06541306e+00],\n",
" [ 3.76155065e+00, 2.26539248e+00],\n",
" [ 4.46703718e+00, 5.08769297e+00],\n",
" [ 6.19924625e-01, 3.43171566e+00],\n",
" [ 2.17860980e+00, 3.46241931e+00],\n",
" [ 2.38981549e+00, 2.61912274e+00],\n",
" [ 3.14919998e+00, 4.38332962e+00],\n",
" [ 5.67677227e+00, 1.28964828e+00],\n",
" [ 3.82596317e+00, 2.11525422e+00],\n",
" [ 3.13009574e+00, 1.13143086e+00],\n",
" [ 1.55196194e+00, 2.18462057e+00],\n",
" [ 5.13893742e+00, 2.05073664e+00],\n",
" [ 2.91509003e+00, 2.86724737e+00],\n",
" [ 1.92555396e+00, 1.93718205e+00],\n",
" [ 2.68281208e+00, 3.23183587e+00],\n",
" [ 4.90913909e+00, 3.13399039e+00],\n",
" [ 4.36483484e+00, 2.28165781e+00],\n",
" [ 3.56480837e+00, 1.55972125e+00],\n",
" [ 2.96985051e+00, 2.05062478e+00],\n",
" [ 4.03633091e+00, 1.94731226e+00],\n",
" [ 2.45838196e+00, 3.39623847e+00],\n",
" [ 4.76715612e+00, 2.33902777e+00],\n",
" [ 2.15838876e+00, 1.96483873e+00],\n",
" [ 3.64774276e+00, 2.60139769e-01],\n",
" [ 2.54037168e+00, 2.21771821e+00],\n",
" [ 2.77841879e+00, 2.26035131e+00],\n",
" [ 2.49584705e+00, 4.56587071e+00],\n",
" [ 1.53120263e+00, 4.05737775e+00],\n",
" [ 3.95533423e+00, 2.22909462e+00],\n",
" [ 2.78244588e+00, 1.15007630e+00],\n",
" [ 4.20800896e+00, 3.26152455e+00],\n",
" [ 3.98207519e+00, 3.05703306e+00],\n",
" [ 1.23529448e+00, 4.50919563e+00],\n",
" [ 2.71982022e+00, 4.97595607e+00],\n",
" [ 4.63069527e+00, 2.64812117e+00],\n",
" [ 5.61829396e+00, 2.03792127e+00],\n",
" [ 3.81039050e+00, 4.20802977e+00],\n",
" [ 1.65901233e+00, 3.20745027e+00],\n",
" [ 1.95718405e+00, 4.22582439e+00],\n",
" [ 2.42907923e+00, 4.69626105e+00],\n",
" [ 3.28180735e+00, 3.93326929e+00],\n",
" [ 2.14219052e+00, 2.75089369e+00],\n",
" [ 2.08492171e+00, 5.07282509e+00],\n",
" [ 4.10331870e+00, 2.16260781e+00],\n",
" [ 4.60405559e+00, 1.58544094e+00],\n",
" [ 3.06222654e+00, 2.21984285e+00],\n",
" [ 4.23714808e+00, 4.12678725e+00],\n",
" [ 9.94542009e-01, 7.84827836e+00],\n",
" [ 3.95214018e+00, 2.85453562e+00],\n",
" [ 2.95260787e+00, 1.02109110e+00],\n",
" [ 3.97098614e+00, 2.23633394e+00],\n",
" [ 8.10262856e-01, 3.44317064e+00],\n",
" [ 2.50902649e+00, 4.00919666e+00],\n",
" [ 2.48690796e+00, 2.41312073e+00],\n",
" [ 5.68304826e+00, 6.77441685e-01],\n",
" [ 6.09655394e+00, 2.69548583e+00],\n",
" [ 3.22172627e+00, 4.35600746e+00],\n",
" [ 2.31131931e+00, 5.39422690e+00],\n",
" [ 2.31721120e+00, 4.15024210e+00],\n",
" [ 3.20804650e+00, 1.57438721e+00],\n",
" [ 2.67395025e+00, 3.03994450e+00],\n",
" [ 3.28474652e+00, 3.83595134e+00],\n",
" [ 3.80958121e+00, 5.19493658e+00],\n",
" [ 3.75755263e+00, 2.45722745e+00],\n",
" [ 2.11132865e+00, 1.93720476e+00],\n",
" [ 2.65817650e+00, 4.98757610e+00],\n",
" [ 3.14716406e+00, 3.75591634e+00],\n",
" [ 2.74415786e+00, 3.71846374e+00],\n",
" [ 1.74845043e+00, 3.97309439e+00],\n",
" [ 3.55251051e+00, 2.14889919e+00],\n",
" [ 3.57151895e+00, 4.26600269e+00],\n",
" [ 3.90699272e+00, 1.83196008e+00],\n",
" [ 3.68923877e+00, 3.29484152e+00],\n",
" [ 3.34620563e+00, 1.98824141e+00],\n",
" [ 2.48210811e+00, 3.10589684e+00],\n",
" [ 4.70090044e+00, 2.19002203e+00],\n",
" [ 1.39982909e+00, 3.09354660e+00],\n",
" [ 4.40745772e-02, 8.22934698e-01],\n",
" [ 5.33272098e+00, 4.36076099e+00],\n",
" [ 2.89649923e+00, 2.63580756e+00],\n",
" [ 2.76505039e+00, 1.91288098e+00],\n",
" [ 2.87097960e+00, 3.77182892e+00],\n",
" [ 3.44866326e+00, 1.72064451e+00],\n",
" [ 2.60512118e+00, 2.52963140e+00],\n",
" [ 2.57747868e+00, 2.71728021e+00],\n",
" [ 2.27045882e+00, 2.62140525e+00],\n",
" [ 5.15585621e+00, 2.92571617e+00],\n",
" [ 1.63632484e+00, 2.91743992e+00],\n",
" [ 3.76024861e-01, 1.98325494e+00],\n",
" [ 3.02132208e+00, 1.62581332e+00],\n",
" [ 3.02677640e+00, 2.42599415e+00],\n",
" [ 3.76345963e+00, 2.46728903e+00],\n",
" [ 3.05170107e+00, 3.71379994e+00],\n",
" [ 2.79399933e+00, 2.78667352e+00],\n",
" [ 3.99320890e+00, 4.27917510e+00],\n",
" [ 3.39074150e+00, 2.69458491e+00],\n",
" [ 3.19600458e+00, 4.07308339e+00],\n",
" [ 2.69176330e+00, 3.46872845e+00],\n",
" [ 2.23411559e+00, 2.27269375e+00],\n",
" [ 3.38657228e+00, 5.23319432e-01],\n",
" [ 2.62018607e+00, 1.79449357e-02],\n",
" [ 3.76066785e+00, 4.17100515e+00],\n",
" [ 4.78922045e+00, 3.72562802e+00],\n",
" [ 3.17347352e+00, -8.18302486e-02],\n",
" [ 4.04505298e+00, 2.82888877e+00],\n",
" [ 4.48005069e+00, 4.36645006e+00],\n",
" [ 6.09169061e-01, 1.28250457e+00],\n",
" [ 2.52867868e+00, 4.78581059e+00],\n",
" [ 1.63157988e+00, 3.28709942e+00],\n",
" [ 2.86528849e+00, 3.01047028e+00],\n",
" [ 1.44144019e+00, 3.38401596e+00],\n",
" [ 2.75627799e+00, 5.28595124e+00],\n",
" [ 3.80169368e+00, 2.93730721e+00],\n",
" [ 3.15722906e+00, 5.15605947e+00],\n",
" [ 2.67190545e+00, 3.64955014e+00],\n",
" [ 1.36869903e+00, 8.43605716e-01],\n",
" [ 1.63260907e+00, 3.09911505e+00],\n",
" [ 4.04434493e+00, 3.04330710e+00],\n",
" [ 2.41315480e+00, 3.42886543e+00],\n",
" [ 2.62497821e+00, 4.01405770e+00],\n",
" [ 1.57908761e+00, 4.65353640e+00],\n",
" [ 3.84919673e+00, 2.07156093e+00],\n",
" [ 2.30950264e+00, 3.10984297e+00],\n",
" [ 2.65494495e+00, 5.51851088e+00],\n",
" [ 3.22849011e+00, 3.50220865e+00],\n",
" [ 3.63125041e+00, 1.63456740e+00],\n",
" [ 3.79442298e+00, 3.13146815e+00],\n",
" [ 3.07440349e+00, 3.25857396e+00],\n",
" [ 1.50612431e+00, 5.99985169e+00],\n",
" [ 3.97370413e+00, 2.54140859e+00],\n",
" [ 1.85619282e+00, 2.34718609e+00],\n",
" [ 3.80716786e+00, 1.00680324e+00],\n",
" [ 3.62576842e+00, 5.09512431e+00],\n",
" [ 2.86473057e+00, 2.24388898e+00],\n",
" [ 4.98940865e+00, 2.25075447e+00],\n",
" [ 2.77538155e+00, 4.34844435e+00],\n",
" [ 2.95668332e+00, 5.58495271e+00],\n",
" [ 4.38595729e+00, 4.86138785e+00],\n",
" [ 3.59831009e+00, 2.90744393e+00],\n",
" [ 1.06593644e+00, 1.98514213e+00],\n",
" [ 2.83346247e+00, 2.02354792e+00],\n",
" [ 4.98520401e+00, 2.01262928e+00],\n",
" [ 3.61627302e+00, 4.58387177e+00],\n",
" [ 4.02984088e+00, 2.87398941e+00],\n",
" [ 5.24706100e+00, 3.69122501e+00],\n",
" [ 3.24286657e+00, 3.14575523e+00],\n",
" [ 3.60298667e+00, 2.16634294e+00],\n",
" [ 3.09531103e+00, 3.75735805e+00],\n",
" [ 2.60012141e+00, 1.35556471e+00],\n",
" [ 3.45616462e+00, 2.81813788e+00],\n",
" [ 7.05855699e-01, 4.12751864e+00],\n",
" [ 4.72387740e+00, 3.15811650e+00],\n",
" [ 4.99345691e+00, 3.41397809e+00],\n",
" [ 2.41778951e+00, 3.58495062e+00],\n",
" [ 3.63083377e+00, -4.07894819e-01],\n",
" [ 4.40466035e+00, 2.93912702e+00],\n",
" [ 4.79070920e+00, 4.76853232e-01],\n",
" [ 2.04235768e+00, 2.46416312e+00],\n",
" [ 3.33864111e+00, 2.10192936e+00],\n",
" [ 3.63757320e+00, 1.59847375e+00],\n",
" [ 4.05990356e+00, 1.81202285e-01],\n",
" [ 2.59426264e+00, 3.47341184e+00],\n",
" [ 3.55311432e+00, 4.35233184e+00],\n",
" [ 4.02389249e+00, 4.89022116e+00],\n",
" [ 3.02024205e+00, 3.21700975e+00],\n",
" [ 2.77149963e+00, 2.87538726e+00],\n",
" [ 2.36669121e+00, 1.77889651e+00],\n",
" [ 2.06024123e+00, 3.82617701e+00],\n",
" [ 4.77763054e+00, 2.24306254e+00],\n",
" [ 9.78287596e-01, 1.90929662e+00],\n",
" [ 3.02102241e+00, 2.47441020e+00],\n",
" [ 3.77965227e+00, 4.72597586e+00],\n",
" [ 3.38000439e+00, 4.35080728e-01],\n",
" [ 2.54095988e+00, 2.08147856e+00],\n",
" [ 4.59976918e+00, 2.25951561e+00],\n",
" [ 1.65202231e+00, 4.40199449e+00],\n",
" [ 1.23132902e+00, 2.38215802e+00],\n",
" [ 2.15289204e+00, 2.51407815e+00],\n",
" [ 5.04948247e-01, 6.20823863e-01],\n",
" [ 3.05348338e+00, 2.72282279e+00],\n",
" [ 4.23847067e+00, 1.19158745e+00],\n",
" [ 2.70858183e+00, 4.41493291e+00],\n",
" [ 5.03283420e+00, 3.90881478e+00],\n",
" [ 2.07605499e+00, 4.53444385e+00],\n",
" [ 4.06416386e+00, 3.91906281e+00],\n",
" [ 7.24446240e-01, 4.51398556e+00],\n",
" [ 4.27985154e+00, 3.74527526e+00],\n",
" [ 1.08237023e+00, 4.24167387e+00],\n",
" [ 1.62936916e+00, 5.39569761e+00],\n",
" [ 2.04732139e+00, 4.36662067e+00],\n",
" [ 1.28681117e+00, 3.10014472e+00],\n",
" [ 3.73768745e+00, 3.51473847e+00],\n",
" [ 4.37589328e+00, 3.37387424e+00],\n",
" [ 1.98325123e+00, 1.92151710e+00],\n",
" [ 2.17789474e+00, 2.98448910e+00],\n",
" [ 1.77890512e+00, 2.86920461e+00],\n",
" [ 8.94180435e-01, 3.06995865e+00],\n",
" [ 8.49439078e-01, 3.87543489e+00],\n",
" [ 5.21744335e+00, 1.40081765e+00]])"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\n",
"# Construct dataset\n",
"X1, y1 = make_gaussian_quantiles(cov=2.,\n",
" n_samples=200, n_features=2,\n",
" n_classes=2, random_state=1)\n",
"X2, y2 = make_gaussian_quantiles(mean=(3, 3), cov=1.5,\n",
" n_samples=300, n_features=2,\n",
" n_classes=2, random_state=1)\n",
"X = np.concatenate((X1, X2))\n",
"y = np.concatenate((y1, - y2 + 1))\n",
"\n",
"X\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.figure.Figure at 0x107c8cc50>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Create and fit an AdaBoosted decision tree\n",
"bdt = AdaBoostClassifier(DecisionTreeClassifier(max_depth=1),\n",
" algorithm=\"SAMME\",\n",
" n_estimators=200)\n",
"\n",
"bdt.fit(X, y)\n",
"\n",
"plot_colors = \"br\"\n",
"plot_step = 0.02\n",
"class_names = \"AB\"\n",
"\n",
"plt.figure(figsize=(10, 5))\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-4.950018688068095,\n",
" 7.7099813119316352,\n",
" -4.9350979819253631,\n",
" 8.8449020180743432)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\n",
"# Plot the decision boundaries\n",
"plt.subplot(121)\n",
"x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1\n",
"y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1\n",
"xx, yy = np.meshgrid(np.arange(x_min, x_max, plot_step),\n",
" np.arange(y_min, y_max, plot_step))\n",
"\n",
"Z = bdt.predict(np.c_[xx.ravel(), yy.ravel()])\n",
"Z = Z.reshape(xx.shape)\n",
"cs = plt.contourf(xx, yy, Z, cmap=plt.cm.Paired)\n",
"plt.axis(\"tight\")\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.text.Text at 0x107d40590>"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\n",
"# Plot the training points\n",
"for i, n, c in zip(range(2), class_names, plot_colors):\n",
" idx = np.where(y == i)\n",
" plt.scatter(X[idx, 0], X[idx, 1],\n",
" c=c, cmap=plt.cm.Paired,\n",
" label=\"Class %s\" % n)\n",
"plt.xlim(x_min, x_max)\n",
"plt.ylim(y_min, y_max)\n",
"plt.legend(loc='upper right')\n",
"plt.xlabel('x')\n",
"plt.ylabel('y')\n",
"plt.title('Decision Boundary')\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x107c8cc50>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"\n",
"# Plot the two-class decision scores\n",
"twoclass_output = bdt.decision_function(X)\n",
"plot_range = (twoclass_output.min(), twoclass_output.max())\n",
"plt.subplot(122)\n",
"for i, n, c in zip(range(2), class_names, plot_colors):\n",
" plt.hist(twoclass_output[y == i],\n",
" bins=10,\n",
" range=plot_range,\n",
" facecolor=c,\n",
" label='Class %s' % n,\n",
" alpha=.5)\n",
"x1, x2, y1, y2 = plt.axis()\n",
"plt.axis((x1, x2, y1, y2 * 1.2))\n",
"plt.legend(loc='upper right')\n",
"plt.ylabel('Samples')\n",
"plt.xlabel('Score')\n",
"plt.title('Decision Scores')\n",
"\n",
"plt.tight_layout()\n",
"plt.subplots_adjust(wspace=0.35)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.13"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment