DecisionTreeAndGradientBoostingQuadratic.ipynb (168037B)
1 { 2 "cells": [ 3 { 4 "cell_type": "code", 5 "execution_count": 54, 6 "metadata": {}, 7 "outputs": [ 8 { 9 "data": { 10 "text/plain": [ 11 "<matplotlib.collections.PathCollection at 0x7fda6c2c6850>" 12 ] 13 }, 14 "execution_count": 54, 15 "metadata": {}, 16 "output_type": "execute_result" 17 }, 18 { 19 "data": { 20 "image/png": "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T396xLH6+noSduNk9n4bhmGsXLnSKC4uNjo7O9MxxKxi5n6/9957o/5G33jjjcb1119vbNu2zRgcHEzn0G2D4CXLzJw507jsssuMl19+2diyZYtx/vnnG3Pnzg19/4033jA++tGPGi+//HLEnyF2G8XF7L3u7+836urqjIsvvth4/fXXjd7e3tDj/fffz9SvYUsbNmwwCgsLjQcffNDYsWOHcdtttxklJSWG1+s1DMMwvvjFLxpLliwJnf/CCy8Yp512mrFq1Spj586dxrJly4wxY8YY27Zty9Sv4Chm7/eKFSuMgoIC49FHHx3xOj569GimfgVHMXu/T8VuI4KXrHPo0CFj7ty5xplnnmkUFxcbjY2NI/6g7Nmzx5BkPP/88xF/BsFLfMze6+eff96QFPaxZ8+ezPwSNvaTn/zEOPfcc42CggKjtrbWeOmll0Lfu/baa40FCxaMOP9Xv/qVccEFFxgFBQXGxz72MePpp59O84idzcz9/vCHPxz2dbxs2bL0D9yhzL6+T0bwYhguwzCMdC9VAQAAJIrdRgAAwFEIXgAAgKMQvAAAAEcheAEAAI5C8AIAAByF4AUAADgKwQsAAHAUghcAAOAoBC8AAMBRCF4AAICjELwAAABHIXgBAACO8v8DePEwspedH+wAAAAASUVORK5CYII=", 21 "text/plain": [ 22 "<Figure size 640x480 with 1 Axes>" 23 ] 24 }, 25 "metadata": {}, 26 "output_type": "display_data" 27 } 28 ], 29 "source": [ 30 "import numpy as np\n", 31 "from sklearn.tree import DecisionTreeRegressor\n", 32 "import matplotlib.pyplot as plt\n", 33 "np.random.seed(10)\n", 34 "X = np.random.rand(100,1) - .5\n", 35 "y = 3 * X[:,0] ** 2 + .05 * np.random.randn(100)\n", 36 "plt.scatter(X,y)" 37 ] 38 }, 39 { 40 "cell_type": "code", 41 "execution_count": 55, 42 "metadata": {}, 43 "outputs": [ 44 { 45 "data": { 46 "text/html": [ 47 "<style>#sk-container-id-22 {\n", 48 " /* Definition of color scheme common for light and dark mode */\n", 49 " --sklearn-color-text: black;\n", 50 " --sklearn-color-line: gray;\n", 51 " /* Definition of color scheme for unfitted estimators */\n", 52 " --sklearn-color-unfitted-level-0: #fff5e6;\n", 53 " --sklearn-color-unfitted-level-1: #f6e4d2;\n", 54 " --sklearn-color-unfitted-level-2: #ffe0b3;\n", 55 " --sklearn-color-unfitted-level-3: chocolate;\n", 56 " /* Definition of color scheme for fitted estimators */\n", 57 " --sklearn-color-fitted-level-0: #f0f8ff;\n", 58 " --sklearn-color-fitted-level-1: #d4ebff;\n", 59 " --sklearn-color-fitted-level-2: #b3dbfd;\n", 60 " --sklearn-color-fitted-level-3: cornflowerblue;\n", 61 "\n", 62 " /* Specific color for light theme */\n", 63 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 64 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", 65 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 66 " --sklearn-color-icon: #696969;\n", 67 "\n", 68 " @media (prefers-color-scheme: dark) {\n", 69 " /* Redefinition of color scheme for dark theme */\n", 70 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 71 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", 72 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 73 " --sklearn-color-icon: #878787;\n", 74 " }\n", 75 "}\n", 76 "\n", 77 "#sk-container-id-22 {\n", 78 " color: var(--sklearn-color-text);\n", 79 "}\n", 80 "\n", 81 "#sk-container-id-22 pre {\n", 82 " padding: 0;\n", 83 "}\n", 84 "\n", 85 "#sk-container-id-22 input.sk-hidden--visually {\n", 86 " border: 0;\n", 87 " clip: rect(1px 1px 1px 1px);\n", 88 " clip: rect(1px, 1px, 1px, 1px);\n", 89 " height: 1px;\n", 90 " margin: -1px;\n", 91 " overflow: hidden;\n", 92 " padding: 0;\n", 93 " position: absolute;\n", 94 " width: 1px;\n", 95 "}\n", 96 "\n", 97 "#sk-container-id-22 div.sk-dashed-wrapped {\n", 98 " border: 1px dashed var(--sklearn-color-line);\n", 99 " margin: 0 0.4em 0.5em 0.4em;\n", 100 " box-sizing: border-box;\n", 101 " padding-bottom: 0.4em;\n", 102 " background-color: var(--sklearn-color-background);\n", 103 "}\n", 104 "\n", 105 "#sk-container-id-22 div.sk-container {\n", 106 " /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n", 107 " but bootstrap.min.css set `[hidden] { display: none !important; }`\n", 108 " so we also need the `!important` here to be able to override the\n", 109 " default hidden behavior on the sphinx rendered scikit-learn.org.\n", 110 " See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n", 111 " display: inline-block !important;\n", 112 " position: relative;\n", 113 "}\n", 114 "\n", 115 "#sk-container-id-22 div.sk-text-repr-fallback {\n", 116 " display: none;\n", 117 "}\n", 118 "\n", 119 "div.sk-parallel-item,\n", 120 "div.sk-serial,\n", 121 "div.sk-item {\n", 122 " /* draw centered vertical line to link estimators */\n", 123 " background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n", 124 " background-size: 2px 100%;\n", 125 " background-repeat: no-repeat;\n", 126 " background-position: center center;\n", 127 "}\n", 128 "\n", 129 "/* Parallel-specific style estimator block */\n", 130 "\n", 131 "#sk-container-id-22 div.sk-parallel-item::after {\n", 132 " content: \"\";\n", 133 " width: 100%;\n", 134 " border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n", 135 " flex-grow: 1;\n", 136 "}\n", 137 "\n", 138 "#sk-container-id-22 div.sk-parallel {\n", 139 " display: flex;\n", 140 " align-items: stretch;\n", 141 " justify-content: center;\n", 142 " background-color: var(--sklearn-color-background);\n", 143 " position: relative;\n", 144 "}\n", 145 "\n", 146 "#sk-container-id-22 div.sk-parallel-item {\n", 147 " display: flex;\n", 148 " flex-direction: column;\n", 149 "}\n", 150 "\n", 151 "#sk-container-id-22 div.sk-parallel-item:first-child::after {\n", 152 " align-self: flex-end;\n", 153 " width: 50%;\n", 154 "}\n", 155 "\n", 156 "#sk-container-id-22 div.sk-parallel-item:last-child::after {\n", 157 " align-self: flex-start;\n", 158 " width: 50%;\n", 159 "}\n", 160 "\n", 161 "#sk-container-id-22 div.sk-parallel-item:only-child::after {\n", 162 " width: 0;\n", 163 "}\n", 164 "\n", 165 "/* Serial-specific style estimator block */\n", 166 "\n", 167 "#sk-container-id-22 div.sk-serial {\n", 168 " display: flex;\n", 169 " flex-direction: column;\n", 170 " align-items: center;\n", 171 " background-color: var(--sklearn-color-background);\n", 172 " padding-right: 1em;\n", 173 " padding-left: 1em;\n", 174 "}\n", 175 "\n", 176 "\n", 177 "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n", 178 "clickable and can be expanded/collapsed.\n", 179 "- Pipeline and ColumnTransformer use this feature and define the default style\n", 180 "- Estimators will overwrite some part of the style using the `sk-estimator` class\n", 181 "*/\n", 182 "\n", 183 "/* Pipeline and ColumnTransformer style (default) */\n", 184 "\n", 185 "#sk-container-id-22 div.sk-toggleable {\n", 186 " /* Default theme specific background. It is overwritten whether we have a\n", 187 " specific estimator or a Pipeline/ColumnTransformer */\n", 188 " background-color: var(--sklearn-color-background);\n", 189 "}\n", 190 "\n", 191 "/* Toggleable label */\n", 192 "#sk-container-id-22 label.sk-toggleable__label {\n", 193 " cursor: pointer;\n", 194 " display: block;\n", 195 " width: 100%;\n", 196 " margin-bottom: 0;\n", 197 " padding: 0.5em;\n", 198 " box-sizing: border-box;\n", 199 " text-align: center;\n", 200 "}\n", 201 "\n", 202 "#sk-container-id-22 label.sk-toggleable__label-arrow:before {\n", 203 " /* Arrow on the left of the label */\n", 204 " content: \"▸\";\n", 205 " float: left;\n", 206 " margin-right: 0.25em;\n", 207 " color: var(--sklearn-color-icon);\n", 208 "}\n", 209 "\n", 210 "#sk-container-id-22 label.sk-toggleable__label-arrow:hover:before {\n", 211 " color: var(--sklearn-color-text);\n", 212 "}\n", 213 "\n", 214 "/* Toggleable content - dropdown */\n", 215 "\n", 216 "#sk-container-id-22 div.sk-toggleable__content {\n", 217 " max-height: 0;\n", 218 " max-width: 0;\n", 219 " overflow: hidden;\n", 220 " text-align: left;\n", 221 " /* unfitted */\n", 222 " background-color: var(--sklearn-color-unfitted-level-0);\n", 223 "}\n", 224 "\n", 225 "#sk-container-id-22 div.sk-toggleable__content.fitted {\n", 226 " /* fitted */\n", 227 " background-color: var(--sklearn-color-fitted-level-0);\n", 228 "}\n", 229 "\n", 230 "#sk-container-id-22 div.sk-toggleable__content pre {\n", 231 " margin: 0.2em;\n", 232 " border-radius: 0.25em;\n", 233 " color: var(--sklearn-color-text);\n", 234 " /* unfitted */\n", 235 " background-color: var(--sklearn-color-unfitted-level-0);\n", 236 "}\n", 237 "\n", 238 "#sk-container-id-22 div.sk-toggleable__content.fitted pre {\n", 239 " /* unfitted */\n", 240 " background-color: var(--sklearn-color-fitted-level-0);\n", 241 "}\n", 242 "\n", 243 "#sk-container-id-22 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n", 244 " /* Expand drop-down */\n", 245 " max-height: 200px;\n", 246 " max-width: 100%;\n", 247 " overflow: auto;\n", 248 "}\n", 249 "\n", 250 "#sk-container-id-22 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n", 251 " content: \"▾\";\n", 252 "}\n", 253 "\n", 254 "/* Pipeline/ColumnTransformer-specific style */\n", 255 "\n", 256 "#sk-container-id-22 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 257 " color: var(--sklearn-color-text);\n", 258 " background-color: var(--sklearn-color-unfitted-level-2);\n", 259 "}\n", 260 "\n", 261 "#sk-container-id-22 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 262 " background-color: var(--sklearn-color-fitted-level-2);\n", 263 "}\n", 264 "\n", 265 "/* Estimator-specific style */\n", 266 "\n", 267 "/* Colorize estimator box */\n", 268 "#sk-container-id-22 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 269 " /* unfitted */\n", 270 " background-color: var(--sklearn-color-unfitted-level-2);\n", 271 "}\n", 272 "\n", 273 "#sk-container-id-22 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 274 " /* fitted */\n", 275 " background-color: var(--sklearn-color-fitted-level-2);\n", 276 "}\n", 277 "\n", 278 "#sk-container-id-22 div.sk-label label.sk-toggleable__label,\n", 279 "#sk-container-id-22 div.sk-label label {\n", 280 " /* The background is the default theme color */\n", 281 " color: var(--sklearn-color-text-on-default-background);\n", 282 "}\n", 283 "\n", 284 "/* On hover, darken the color of the background */\n", 285 "#sk-container-id-22 div.sk-label:hover label.sk-toggleable__label {\n", 286 " color: var(--sklearn-color-text);\n", 287 " background-color: var(--sklearn-color-unfitted-level-2);\n", 288 "}\n", 289 "\n", 290 "/* Label box, darken color on hover, fitted */\n", 291 "#sk-container-id-22 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n", 292 " color: var(--sklearn-color-text);\n", 293 " background-color: var(--sklearn-color-fitted-level-2);\n", 294 "}\n", 295 "\n", 296 "/* Estimator label */\n", 297 "\n", 298 "#sk-container-id-22 div.sk-label label {\n", 299 " font-family: monospace;\n", 300 " font-weight: bold;\n", 301 " display: inline-block;\n", 302 " line-height: 1.2em;\n", 303 "}\n", 304 "\n", 305 "#sk-container-id-22 div.sk-label-container {\n", 306 " text-align: center;\n", 307 "}\n", 308 "\n", 309 "/* Estimator-specific */\n", 310 "#sk-container-id-22 div.sk-estimator {\n", 311 " font-family: monospace;\n", 312 " border: 1px dotted var(--sklearn-color-border-box);\n", 313 " border-radius: 0.25em;\n", 314 " box-sizing: border-box;\n", 315 " margin-bottom: 0.5em;\n", 316 " /* unfitted */\n", 317 " background-color: var(--sklearn-color-unfitted-level-0);\n", 318 "}\n", 319 "\n", 320 "#sk-container-id-22 div.sk-estimator.fitted {\n", 321 " /* fitted */\n", 322 " background-color: var(--sklearn-color-fitted-level-0);\n", 323 "}\n", 324 "\n", 325 "/* on hover */\n", 326 "#sk-container-id-22 div.sk-estimator:hover {\n", 327 " /* unfitted */\n", 328 " background-color: var(--sklearn-color-unfitted-level-2);\n", 329 "}\n", 330 "\n", 331 "#sk-container-id-22 div.sk-estimator.fitted:hover {\n", 332 " /* fitted */\n", 333 " background-color: var(--sklearn-color-fitted-level-2);\n", 334 "}\n", 335 "\n", 336 "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n", 337 "\n", 338 "/* Common style for \"i\" and \"?\" */\n", 339 "\n", 340 ".sk-estimator-doc-link,\n", 341 "a:link.sk-estimator-doc-link,\n", 342 "a:visited.sk-estimator-doc-link {\n", 343 " float: right;\n", 344 " font-size: smaller;\n", 345 " line-height: 1em;\n", 346 " font-family: monospace;\n", 347 " background-color: var(--sklearn-color-background);\n", 348 " border-radius: 1em;\n", 349 " height: 1em;\n", 350 " width: 1em;\n", 351 " text-decoration: none !important;\n", 352 " margin-left: 1ex;\n", 353 " /* unfitted */\n", 354 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 355 " color: var(--sklearn-color-unfitted-level-1);\n", 356 "}\n", 357 "\n", 358 ".sk-estimator-doc-link.fitted,\n", 359 "a:link.sk-estimator-doc-link.fitted,\n", 360 "a:visited.sk-estimator-doc-link.fitted {\n", 361 " /* fitted */\n", 362 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 363 " color: var(--sklearn-color-fitted-level-1);\n", 364 "}\n", 365 "\n", 366 "/* On hover */\n", 367 "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n", 368 ".sk-estimator-doc-link:hover,\n", 369 "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n", 370 ".sk-estimator-doc-link:hover {\n", 371 " /* unfitted */\n", 372 " background-color: var(--sklearn-color-unfitted-level-3);\n", 373 " color: var(--sklearn-color-background);\n", 374 " text-decoration: none;\n", 375 "}\n", 376 "\n", 377 "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n", 378 ".sk-estimator-doc-link.fitted:hover,\n", 379 "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n", 380 ".sk-estimator-doc-link.fitted:hover {\n", 381 " /* fitted */\n", 382 " background-color: var(--sklearn-color-fitted-level-3);\n", 383 " color: var(--sklearn-color-background);\n", 384 " text-decoration: none;\n", 385 "}\n", 386 "\n", 387 "/* Span, style for the box shown on hovering the info icon */\n", 388 ".sk-estimator-doc-link span {\n", 389 " display: none;\n", 390 " z-index: 9999;\n", 391 " position: relative;\n", 392 " font-weight: normal;\n", 393 " right: .2ex;\n", 394 " padding: .5ex;\n", 395 " margin: .5ex;\n", 396 " width: min-content;\n", 397 " min-width: 20ex;\n", 398 " max-width: 50ex;\n", 399 " color: var(--sklearn-color-text);\n", 400 " box-shadow: 2pt 2pt 4pt #999;\n", 401 " /* unfitted */\n", 402 " background: var(--sklearn-color-unfitted-level-0);\n", 403 " border: .5pt solid var(--sklearn-color-unfitted-level-3);\n", 404 "}\n", 405 "\n", 406 ".sk-estimator-doc-link.fitted span {\n", 407 " /* fitted */\n", 408 " background: var(--sklearn-color-fitted-level-0);\n", 409 " border: var(--sklearn-color-fitted-level-3);\n", 410 "}\n", 411 "\n", 412 ".sk-estimator-doc-link:hover span {\n", 413 " display: block;\n", 414 "}\n", 415 "\n", 416 "/* \"?\"-specific style due to the `<a>` HTML tag */\n", 417 "\n", 418 "#sk-container-id-22 a.estimator_doc_link {\n", 419 " float: right;\n", 420 " font-size: 1rem;\n", 421 " line-height: 1em;\n", 422 " font-family: monospace;\n", 423 " background-color: var(--sklearn-color-background);\n", 424 " border-radius: 1rem;\n", 425 " height: 1rem;\n", 426 " width: 1rem;\n", 427 " text-decoration: none;\n", 428 " /* unfitted */\n", 429 " color: var(--sklearn-color-unfitted-level-1);\n", 430 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 431 "}\n", 432 "\n", 433 "#sk-container-id-22 a.estimator_doc_link.fitted {\n", 434 " /* fitted */\n", 435 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 436 " color: var(--sklearn-color-fitted-level-1);\n", 437 "}\n", 438 "\n", 439 "/* On hover */\n", 440 "#sk-container-id-22 a.estimator_doc_link:hover {\n", 441 " /* unfitted */\n", 442 " background-color: var(--sklearn-color-unfitted-level-3);\n", 443 " color: var(--sklearn-color-background);\n", 444 " text-decoration: none;\n", 445 "}\n", 446 "\n", 447 "#sk-container-id-22 a.estimator_doc_link.fitted:hover {\n", 448 " /* fitted */\n", 449 " background-color: var(--sklearn-color-fitted-level-3);\n", 450 "}\n", 451 "</style><div id=\"sk-container-id-22\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>DecisionTreeRegressor(max_depth=2, random_state=10)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-22\" type=\"checkbox\" checked><label for=\"sk-estimator-id-22\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\"> DecisionTreeRegressor<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.tree.DecisionTreeRegressor.html\">?<span>Documentation for DecisionTreeRegressor</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>DecisionTreeRegressor(max_depth=2, random_state=10)</pre></div> </div></div></div></div>" 452 ], 453 "text/plain": [ 454 "DecisionTreeRegressor(max_depth=2, random_state=10)" 455 ] 456 }, 457 "execution_count": 55, 458 "metadata": {}, 459 "output_type": "execute_result" 460 } 461 ], 462 "source": [ 463 "tree_reg1 = DecisionTreeRegressor(max_depth=2, random_state=10)\n", 464 "tree_reg1.fit(X,y)" 465 ] 466 }, 467 { 468 "cell_type": "code", 469 "execution_count": 56, 470 "metadata": {}, 471 "outputs": [ 472 { 473 "data": { 474 "text/html": [ 475 "<style>#sk-container-id-23 {\n", 476 " /* Definition of color scheme common for light and dark mode */\n", 477 " --sklearn-color-text: black;\n", 478 " --sklearn-color-line: gray;\n", 479 " /* Definition of color scheme for unfitted estimators */\n", 480 " --sklearn-color-unfitted-level-0: #fff5e6;\n", 481 " --sklearn-color-unfitted-level-1: #f6e4d2;\n", 482 " --sklearn-color-unfitted-level-2: #ffe0b3;\n", 483 " --sklearn-color-unfitted-level-3: chocolate;\n", 484 " /* Definition of color scheme for fitted estimators */\n", 485 " --sklearn-color-fitted-level-0: #f0f8ff;\n", 486 " --sklearn-color-fitted-level-1: #d4ebff;\n", 487 " --sklearn-color-fitted-level-2: #b3dbfd;\n", 488 " --sklearn-color-fitted-level-3: cornflowerblue;\n", 489 "\n", 490 " /* Specific color for light theme */\n", 491 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 492 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", 493 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 494 " --sklearn-color-icon: #696969;\n", 495 "\n", 496 " @media (prefers-color-scheme: dark) {\n", 497 " /* Redefinition of color scheme for dark theme */\n", 498 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 499 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", 500 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 501 " --sklearn-color-icon: #878787;\n", 502 " }\n", 503 "}\n", 504 "\n", 505 "#sk-container-id-23 {\n", 506 " color: var(--sklearn-color-text);\n", 507 "}\n", 508 "\n", 509 "#sk-container-id-23 pre {\n", 510 " padding: 0;\n", 511 "}\n", 512 "\n", 513 "#sk-container-id-23 input.sk-hidden--visually {\n", 514 " border: 0;\n", 515 " clip: rect(1px 1px 1px 1px);\n", 516 " clip: rect(1px, 1px, 1px, 1px);\n", 517 " height: 1px;\n", 518 " margin: -1px;\n", 519 " overflow: hidden;\n", 520 " padding: 0;\n", 521 " position: absolute;\n", 522 " width: 1px;\n", 523 "}\n", 524 "\n", 525 "#sk-container-id-23 div.sk-dashed-wrapped {\n", 526 " border: 1px dashed var(--sklearn-color-line);\n", 527 " margin: 0 0.4em 0.5em 0.4em;\n", 528 " box-sizing: border-box;\n", 529 " padding-bottom: 0.4em;\n", 530 " background-color: var(--sklearn-color-background);\n", 531 "}\n", 532 "\n", 533 "#sk-container-id-23 div.sk-container {\n", 534 " /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n", 535 " but bootstrap.min.css set `[hidden] { display: none !important; }`\n", 536 " so we also need the `!important` here to be able to override the\n", 537 " default hidden behavior on the sphinx rendered scikit-learn.org.\n", 538 " See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n", 539 " display: inline-block !important;\n", 540 " position: relative;\n", 541 "}\n", 542 "\n", 543 "#sk-container-id-23 div.sk-text-repr-fallback {\n", 544 " display: none;\n", 545 "}\n", 546 "\n", 547 "div.sk-parallel-item,\n", 548 "div.sk-serial,\n", 549 "div.sk-item {\n", 550 " /* draw centered vertical line to link estimators */\n", 551 " background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n", 552 " background-size: 2px 100%;\n", 553 " background-repeat: no-repeat;\n", 554 " background-position: center center;\n", 555 "}\n", 556 "\n", 557 "/* Parallel-specific style estimator block */\n", 558 "\n", 559 "#sk-container-id-23 div.sk-parallel-item::after {\n", 560 " content: \"\";\n", 561 " width: 100%;\n", 562 " border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n", 563 " flex-grow: 1;\n", 564 "}\n", 565 "\n", 566 "#sk-container-id-23 div.sk-parallel {\n", 567 " display: flex;\n", 568 " align-items: stretch;\n", 569 " justify-content: center;\n", 570 " background-color: var(--sklearn-color-background);\n", 571 " position: relative;\n", 572 "}\n", 573 "\n", 574 "#sk-container-id-23 div.sk-parallel-item {\n", 575 " display: flex;\n", 576 " flex-direction: column;\n", 577 "}\n", 578 "\n", 579 "#sk-container-id-23 div.sk-parallel-item:first-child::after {\n", 580 " align-self: flex-end;\n", 581 " width: 50%;\n", 582 "}\n", 583 "\n", 584 "#sk-container-id-23 div.sk-parallel-item:last-child::after {\n", 585 " align-self: flex-start;\n", 586 " width: 50%;\n", 587 "}\n", 588 "\n", 589 "#sk-container-id-23 div.sk-parallel-item:only-child::after {\n", 590 " width: 0;\n", 591 "}\n", 592 "\n", 593 "/* Serial-specific style estimator block */\n", 594 "\n", 595 "#sk-container-id-23 div.sk-serial {\n", 596 " display: flex;\n", 597 " flex-direction: column;\n", 598 " align-items: center;\n", 599 " background-color: var(--sklearn-color-background);\n", 600 " padding-right: 1em;\n", 601 " padding-left: 1em;\n", 602 "}\n", 603 "\n", 604 "\n", 605 "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n", 606 "clickable and can be expanded/collapsed.\n", 607 "- Pipeline and ColumnTransformer use this feature and define the default style\n", 608 "- Estimators will overwrite some part of the style using the `sk-estimator` class\n", 609 "*/\n", 610 "\n", 611 "/* Pipeline and ColumnTransformer style (default) */\n", 612 "\n", 613 "#sk-container-id-23 div.sk-toggleable {\n", 614 " /* Default theme specific background. It is overwritten whether we have a\n", 615 " specific estimator or a Pipeline/ColumnTransformer */\n", 616 " background-color: var(--sklearn-color-background);\n", 617 "}\n", 618 "\n", 619 "/* Toggleable label */\n", 620 "#sk-container-id-23 label.sk-toggleable__label {\n", 621 " cursor: pointer;\n", 622 " display: block;\n", 623 " width: 100%;\n", 624 " margin-bottom: 0;\n", 625 " padding: 0.5em;\n", 626 " box-sizing: border-box;\n", 627 " text-align: center;\n", 628 "}\n", 629 "\n", 630 "#sk-container-id-23 label.sk-toggleable__label-arrow:before {\n", 631 " /* Arrow on the left of the label */\n", 632 " content: \"▸\";\n", 633 " float: left;\n", 634 " margin-right: 0.25em;\n", 635 " color: var(--sklearn-color-icon);\n", 636 "}\n", 637 "\n", 638 "#sk-container-id-23 label.sk-toggleable__label-arrow:hover:before {\n", 639 " color: var(--sklearn-color-text);\n", 640 "}\n", 641 "\n", 642 "/* Toggleable content - dropdown */\n", 643 "\n", 644 "#sk-container-id-23 div.sk-toggleable__content {\n", 645 " max-height: 0;\n", 646 " max-width: 0;\n", 647 " overflow: hidden;\n", 648 " text-align: left;\n", 649 " /* unfitted */\n", 650 " background-color: var(--sklearn-color-unfitted-level-0);\n", 651 "}\n", 652 "\n", 653 "#sk-container-id-23 div.sk-toggleable__content.fitted {\n", 654 " /* fitted */\n", 655 " background-color: var(--sklearn-color-fitted-level-0);\n", 656 "}\n", 657 "\n", 658 "#sk-container-id-23 div.sk-toggleable__content pre {\n", 659 " margin: 0.2em;\n", 660 " border-radius: 0.25em;\n", 661 " color: var(--sklearn-color-text);\n", 662 " /* unfitted */\n", 663 " background-color: var(--sklearn-color-unfitted-level-0);\n", 664 "}\n", 665 "\n", 666 "#sk-container-id-23 div.sk-toggleable__content.fitted pre {\n", 667 " /* unfitted */\n", 668 " background-color: var(--sklearn-color-fitted-level-0);\n", 669 "}\n", 670 "\n", 671 "#sk-container-id-23 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n", 672 " /* Expand drop-down */\n", 673 " max-height: 200px;\n", 674 " max-width: 100%;\n", 675 " overflow: auto;\n", 676 "}\n", 677 "\n", 678 "#sk-container-id-23 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n", 679 " content: \"▾\";\n", 680 "}\n", 681 "\n", 682 "/* Pipeline/ColumnTransformer-specific style */\n", 683 "\n", 684 "#sk-container-id-23 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 685 " color: var(--sklearn-color-text);\n", 686 " background-color: var(--sklearn-color-unfitted-level-2);\n", 687 "}\n", 688 "\n", 689 "#sk-container-id-23 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 690 " background-color: var(--sklearn-color-fitted-level-2);\n", 691 "}\n", 692 "\n", 693 "/* Estimator-specific style */\n", 694 "\n", 695 "/* Colorize estimator box */\n", 696 "#sk-container-id-23 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 697 " /* unfitted */\n", 698 " background-color: var(--sklearn-color-unfitted-level-2);\n", 699 "}\n", 700 "\n", 701 "#sk-container-id-23 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 702 " /* fitted */\n", 703 " background-color: var(--sklearn-color-fitted-level-2);\n", 704 "}\n", 705 "\n", 706 "#sk-container-id-23 div.sk-label label.sk-toggleable__label,\n", 707 "#sk-container-id-23 div.sk-label label {\n", 708 " /* The background is the default theme color */\n", 709 " color: var(--sklearn-color-text-on-default-background);\n", 710 "}\n", 711 "\n", 712 "/* On hover, darken the color of the background */\n", 713 "#sk-container-id-23 div.sk-label:hover label.sk-toggleable__label {\n", 714 " color: var(--sklearn-color-text);\n", 715 " background-color: var(--sklearn-color-unfitted-level-2);\n", 716 "}\n", 717 "\n", 718 "/* Label box, darken color on hover, fitted */\n", 719 "#sk-container-id-23 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n", 720 " color: var(--sklearn-color-text);\n", 721 " background-color: var(--sklearn-color-fitted-level-2);\n", 722 "}\n", 723 "\n", 724 "/* Estimator label */\n", 725 "\n", 726 "#sk-container-id-23 div.sk-label label {\n", 727 " font-family: monospace;\n", 728 " font-weight: bold;\n", 729 " display: inline-block;\n", 730 " line-height: 1.2em;\n", 731 "}\n", 732 "\n", 733 "#sk-container-id-23 div.sk-label-container {\n", 734 " text-align: center;\n", 735 "}\n", 736 "\n", 737 "/* Estimator-specific */\n", 738 "#sk-container-id-23 div.sk-estimator {\n", 739 " font-family: monospace;\n", 740 " border: 1px dotted var(--sklearn-color-border-box);\n", 741 " border-radius: 0.25em;\n", 742 " box-sizing: border-box;\n", 743 " margin-bottom: 0.5em;\n", 744 " /* unfitted */\n", 745 " background-color: var(--sklearn-color-unfitted-level-0);\n", 746 "}\n", 747 "\n", 748 "#sk-container-id-23 div.sk-estimator.fitted {\n", 749 " /* fitted */\n", 750 " background-color: var(--sklearn-color-fitted-level-0);\n", 751 "}\n", 752 "\n", 753 "/* on hover */\n", 754 "#sk-container-id-23 div.sk-estimator:hover {\n", 755 " /* unfitted */\n", 756 " background-color: var(--sklearn-color-unfitted-level-2);\n", 757 "}\n", 758 "\n", 759 "#sk-container-id-23 div.sk-estimator.fitted:hover {\n", 760 " /* fitted */\n", 761 " background-color: var(--sklearn-color-fitted-level-2);\n", 762 "}\n", 763 "\n", 764 "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n", 765 "\n", 766 "/* Common style for \"i\" and \"?\" */\n", 767 "\n", 768 ".sk-estimator-doc-link,\n", 769 "a:link.sk-estimator-doc-link,\n", 770 "a:visited.sk-estimator-doc-link {\n", 771 " float: right;\n", 772 " font-size: smaller;\n", 773 " line-height: 1em;\n", 774 " font-family: monospace;\n", 775 " background-color: var(--sklearn-color-background);\n", 776 " border-radius: 1em;\n", 777 " height: 1em;\n", 778 " width: 1em;\n", 779 " text-decoration: none !important;\n", 780 " margin-left: 1ex;\n", 781 " /* unfitted */\n", 782 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 783 " color: var(--sklearn-color-unfitted-level-1);\n", 784 "}\n", 785 "\n", 786 ".sk-estimator-doc-link.fitted,\n", 787 "a:link.sk-estimator-doc-link.fitted,\n", 788 "a:visited.sk-estimator-doc-link.fitted {\n", 789 " /* fitted */\n", 790 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 791 " color: var(--sklearn-color-fitted-level-1);\n", 792 "}\n", 793 "\n", 794 "/* On hover */\n", 795 "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n", 796 ".sk-estimator-doc-link:hover,\n", 797 "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n", 798 ".sk-estimator-doc-link:hover {\n", 799 " /* unfitted */\n", 800 " background-color: var(--sklearn-color-unfitted-level-3);\n", 801 " color: var(--sklearn-color-background);\n", 802 " text-decoration: none;\n", 803 "}\n", 804 "\n", 805 "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n", 806 ".sk-estimator-doc-link.fitted:hover,\n", 807 "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n", 808 ".sk-estimator-doc-link.fitted:hover {\n", 809 " /* fitted */\n", 810 " background-color: var(--sklearn-color-fitted-level-3);\n", 811 " color: var(--sklearn-color-background);\n", 812 " text-decoration: none;\n", 813 "}\n", 814 "\n", 815 "/* Span, style for the box shown on hovering the info icon */\n", 816 ".sk-estimator-doc-link span {\n", 817 " display: none;\n", 818 " z-index: 9999;\n", 819 " position: relative;\n", 820 " font-weight: normal;\n", 821 " right: .2ex;\n", 822 " padding: .5ex;\n", 823 " margin: .5ex;\n", 824 " width: min-content;\n", 825 " min-width: 20ex;\n", 826 " max-width: 50ex;\n", 827 " color: var(--sklearn-color-text);\n", 828 " box-shadow: 2pt 2pt 4pt #999;\n", 829 " /* unfitted */\n", 830 " background: var(--sklearn-color-unfitted-level-0);\n", 831 " border: .5pt solid var(--sklearn-color-unfitted-level-3);\n", 832 "}\n", 833 "\n", 834 ".sk-estimator-doc-link.fitted span {\n", 835 " /* fitted */\n", 836 " background: var(--sklearn-color-fitted-level-0);\n", 837 " border: var(--sklearn-color-fitted-level-3);\n", 838 "}\n", 839 "\n", 840 ".sk-estimator-doc-link:hover span {\n", 841 " display: block;\n", 842 "}\n", 843 "\n", 844 "/* \"?\"-specific style due to the `<a>` HTML tag */\n", 845 "\n", 846 "#sk-container-id-23 a.estimator_doc_link {\n", 847 " float: right;\n", 848 " font-size: 1rem;\n", 849 " line-height: 1em;\n", 850 " font-family: monospace;\n", 851 " background-color: var(--sklearn-color-background);\n", 852 " border-radius: 1rem;\n", 853 " height: 1rem;\n", 854 " width: 1rem;\n", 855 " text-decoration: none;\n", 856 " /* unfitted */\n", 857 " color: var(--sklearn-color-unfitted-level-1);\n", 858 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 859 "}\n", 860 "\n", 861 "#sk-container-id-23 a.estimator_doc_link.fitted {\n", 862 " /* fitted */\n", 863 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 864 " color: var(--sklearn-color-fitted-level-1);\n", 865 "}\n", 866 "\n", 867 "/* On hover */\n", 868 "#sk-container-id-23 a.estimator_doc_link:hover {\n", 869 " /* unfitted */\n", 870 " background-color: var(--sklearn-color-unfitted-level-3);\n", 871 " color: var(--sklearn-color-background);\n", 872 " text-decoration: none;\n", 873 "}\n", 874 "\n", 875 "#sk-container-id-23 a.estimator_doc_link.fitted:hover {\n", 876 " /* fitted */\n", 877 " background-color: var(--sklearn-color-fitted-level-3);\n", 878 "}\n", 879 "</style><div id=\"sk-container-id-23\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>DecisionTreeRegressor(max_depth=2, random_state=11)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-23\" type=\"checkbox\" checked><label for=\"sk-estimator-id-23\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\"> DecisionTreeRegressor<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.tree.DecisionTreeRegressor.html\">?<span>Documentation for DecisionTreeRegressor</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>DecisionTreeRegressor(max_depth=2, random_state=11)</pre></div> </div></div></div></div>" 880 ], 881 "text/plain": [ 882 "DecisionTreeRegressor(max_depth=2, random_state=11)" 883 ] 884 }, 885 "execution_count": 56, 886 "metadata": {}, 887 "output_type": "execute_result" 888 } 889 ], 890 "source": [ 891 "y2 = y - tree_reg1.predict(X)\n", 892 "tree_reg2 = DecisionTreeRegressor(max_depth=2,random_state=11)\n", 893 "tree_reg2.fit(X,y2)" 894 ] 895 }, 896 { 897 "cell_type": "code", 898 "execution_count": 57, 899 "metadata": {}, 900 "outputs": [ 901 { 902 "data": { 903 "text/html": [ 904 "<style>#sk-container-id-24 {\n", 905 " /* Definition of color scheme common for light and dark mode */\n", 906 " --sklearn-color-text: black;\n", 907 " --sklearn-color-line: gray;\n", 908 " /* Definition of color scheme for unfitted estimators */\n", 909 " --sklearn-color-unfitted-level-0: #fff5e6;\n", 910 " --sklearn-color-unfitted-level-1: #f6e4d2;\n", 911 " --sklearn-color-unfitted-level-2: #ffe0b3;\n", 912 " --sklearn-color-unfitted-level-3: chocolate;\n", 913 " /* Definition of color scheme for fitted estimators */\n", 914 " --sklearn-color-fitted-level-0: #f0f8ff;\n", 915 " --sklearn-color-fitted-level-1: #d4ebff;\n", 916 " --sklearn-color-fitted-level-2: #b3dbfd;\n", 917 " --sklearn-color-fitted-level-3: cornflowerblue;\n", 918 "\n", 919 " /* Specific color for light theme */\n", 920 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 921 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", 922 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 923 " --sklearn-color-icon: #696969;\n", 924 "\n", 925 " @media (prefers-color-scheme: dark) {\n", 926 " /* Redefinition of color scheme for dark theme */\n", 927 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 928 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", 929 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 930 " --sklearn-color-icon: #878787;\n", 931 " }\n", 932 "}\n", 933 "\n", 934 "#sk-container-id-24 {\n", 935 " color: var(--sklearn-color-text);\n", 936 "}\n", 937 "\n", 938 "#sk-container-id-24 pre {\n", 939 " padding: 0;\n", 940 "}\n", 941 "\n", 942 "#sk-container-id-24 input.sk-hidden--visually {\n", 943 " border: 0;\n", 944 " clip: rect(1px 1px 1px 1px);\n", 945 " clip: rect(1px, 1px, 1px, 1px);\n", 946 " height: 1px;\n", 947 " margin: -1px;\n", 948 " overflow: hidden;\n", 949 " padding: 0;\n", 950 " position: absolute;\n", 951 " width: 1px;\n", 952 "}\n", 953 "\n", 954 "#sk-container-id-24 div.sk-dashed-wrapped {\n", 955 " border: 1px dashed var(--sklearn-color-line);\n", 956 " margin: 0 0.4em 0.5em 0.4em;\n", 957 " box-sizing: border-box;\n", 958 " padding-bottom: 0.4em;\n", 959 " background-color: var(--sklearn-color-background);\n", 960 "}\n", 961 "\n", 962 "#sk-container-id-24 div.sk-container {\n", 963 " /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n", 964 " but bootstrap.min.css set `[hidden] { display: none !important; }`\n", 965 " so we also need the `!important` here to be able to override the\n", 966 " default hidden behavior on the sphinx rendered scikit-learn.org.\n", 967 " See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n", 968 " display: inline-block !important;\n", 969 " position: relative;\n", 970 "}\n", 971 "\n", 972 "#sk-container-id-24 div.sk-text-repr-fallback {\n", 973 " display: none;\n", 974 "}\n", 975 "\n", 976 "div.sk-parallel-item,\n", 977 "div.sk-serial,\n", 978 "div.sk-item {\n", 979 " /* draw centered vertical line to link estimators */\n", 980 " background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n", 981 " background-size: 2px 100%;\n", 982 " background-repeat: no-repeat;\n", 983 " background-position: center center;\n", 984 "}\n", 985 "\n", 986 "/* Parallel-specific style estimator block */\n", 987 "\n", 988 "#sk-container-id-24 div.sk-parallel-item::after {\n", 989 " content: \"\";\n", 990 " width: 100%;\n", 991 " border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n", 992 " flex-grow: 1;\n", 993 "}\n", 994 "\n", 995 "#sk-container-id-24 div.sk-parallel {\n", 996 " display: flex;\n", 997 " align-items: stretch;\n", 998 " justify-content: center;\n", 999 " background-color: var(--sklearn-color-background);\n", 1000 " position: relative;\n", 1001 "}\n", 1002 "\n", 1003 "#sk-container-id-24 div.sk-parallel-item {\n", 1004 " display: flex;\n", 1005 " flex-direction: column;\n", 1006 "}\n", 1007 "\n", 1008 "#sk-container-id-24 div.sk-parallel-item:first-child::after {\n", 1009 " align-self: flex-end;\n", 1010 " width: 50%;\n", 1011 "}\n", 1012 "\n", 1013 "#sk-container-id-24 div.sk-parallel-item:last-child::after {\n", 1014 " align-self: flex-start;\n", 1015 " width: 50%;\n", 1016 "}\n", 1017 "\n", 1018 "#sk-container-id-24 div.sk-parallel-item:only-child::after {\n", 1019 " width: 0;\n", 1020 "}\n", 1021 "\n", 1022 "/* Serial-specific style estimator block */\n", 1023 "\n", 1024 "#sk-container-id-24 div.sk-serial {\n", 1025 " display: flex;\n", 1026 " flex-direction: column;\n", 1027 " align-items: center;\n", 1028 " background-color: var(--sklearn-color-background);\n", 1029 " padding-right: 1em;\n", 1030 " padding-left: 1em;\n", 1031 "}\n", 1032 "\n", 1033 "\n", 1034 "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n", 1035 "clickable and can be expanded/collapsed.\n", 1036 "- Pipeline and ColumnTransformer use this feature and define the default style\n", 1037 "- Estimators will overwrite some part of the style using the `sk-estimator` class\n", 1038 "*/\n", 1039 "\n", 1040 "/* Pipeline and ColumnTransformer style (default) */\n", 1041 "\n", 1042 "#sk-container-id-24 div.sk-toggleable {\n", 1043 " /* Default theme specific background. It is overwritten whether we have a\n", 1044 " specific estimator or a Pipeline/ColumnTransformer */\n", 1045 " background-color: var(--sklearn-color-background);\n", 1046 "}\n", 1047 "\n", 1048 "/* Toggleable label */\n", 1049 "#sk-container-id-24 label.sk-toggleable__label {\n", 1050 " cursor: pointer;\n", 1051 " display: block;\n", 1052 " width: 100%;\n", 1053 " margin-bottom: 0;\n", 1054 " padding: 0.5em;\n", 1055 " box-sizing: border-box;\n", 1056 " text-align: center;\n", 1057 "}\n", 1058 "\n", 1059 "#sk-container-id-24 label.sk-toggleable__label-arrow:before {\n", 1060 " /* Arrow on the left of the label */\n", 1061 " content: \"▸\";\n", 1062 " float: left;\n", 1063 " margin-right: 0.25em;\n", 1064 " color: var(--sklearn-color-icon);\n", 1065 "}\n", 1066 "\n", 1067 "#sk-container-id-24 label.sk-toggleable__label-arrow:hover:before {\n", 1068 " color: var(--sklearn-color-text);\n", 1069 "}\n", 1070 "\n", 1071 "/* Toggleable content - dropdown */\n", 1072 "\n", 1073 "#sk-container-id-24 div.sk-toggleable__content {\n", 1074 " max-height: 0;\n", 1075 " max-width: 0;\n", 1076 " overflow: hidden;\n", 1077 " text-align: left;\n", 1078 " /* unfitted */\n", 1079 " background-color: var(--sklearn-color-unfitted-level-0);\n", 1080 "}\n", 1081 "\n", 1082 "#sk-container-id-24 div.sk-toggleable__content.fitted {\n", 1083 " /* fitted */\n", 1084 " background-color: var(--sklearn-color-fitted-level-0);\n", 1085 "}\n", 1086 "\n", 1087 "#sk-container-id-24 div.sk-toggleable__content pre {\n", 1088 " margin: 0.2em;\n", 1089 " border-radius: 0.25em;\n", 1090 " color: var(--sklearn-color-text);\n", 1091 " /* unfitted */\n", 1092 " background-color: var(--sklearn-color-unfitted-level-0);\n", 1093 "}\n", 1094 "\n", 1095 "#sk-container-id-24 div.sk-toggleable__content.fitted pre {\n", 1096 " /* unfitted */\n", 1097 " background-color: var(--sklearn-color-fitted-level-0);\n", 1098 "}\n", 1099 "\n", 1100 "#sk-container-id-24 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n", 1101 " /* Expand drop-down */\n", 1102 " max-height: 200px;\n", 1103 " max-width: 100%;\n", 1104 " overflow: auto;\n", 1105 "}\n", 1106 "\n", 1107 "#sk-container-id-24 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n", 1108 " content: \"▾\";\n", 1109 "}\n", 1110 "\n", 1111 "/* Pipeline/ColumnTransformer-specific style */\n", 1112 "\n", 1113 "#sk-container-id-24 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1114 " color: var(--sklearn-color-text);\n", 1115 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1116 "}\n", 1117 "\n", 1118 "#sk-container-id-24 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1119 " background-color: var(--sklearn-color-fitted-level-2);\n", 1120 "}\n", 1121 "\n", 1122 "/* Estimator-specific style */\n", 1123 "\n", 1124 "/* Colorize estimator box */\n", 1125 "#sk-container-id-24 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1126 " /* unfitted */\n", 1127 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1128 "}\n", 1129 "\n", 1130 "#sk-container-id-24 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1131 " /* fitted */\n", 1132 " background-color: var(--sklearn-color-fitted-level-2);\n", 1133 "}\n", 1134 "\n", 1135 "#sk-container-id-24 div.sk-label label.sk-toggleable__label,\n", 1136 "#sk-container-id-24 div.sk-label label {\n", 1137 " /* The background is the default theme color */\n", 1138 " color: var(--sklearn-color-text-on-default-background);\n", 1139 "}\n", 1140 "\n", 1141 "/* On hover, darken the color of the background */\n", 1142 "#sk-container-id-24 div.sk-label:hover label.sk-toggleable__label {\n", 1143 " color: var(--sklearn-color-text);\n", 1144 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1145 "}\n", 1146 "\n", 1147 "/* Label box, darken color on hover, fitted */\n", 1148 "#sk-container-id-24 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n", 1149 " color: var(--sklearn-color-text);\n", 1150 " background-color: var(--sklearn-color-fitted-level-2);\n", 1151 "}\n", 1152 "\n", 1153 "/* Estimator label */\n", 1154 "\n", 1155 "#sk-container-id-24 div.sk-label label {\n", 1156 " font-family: monospace;\n", 1157 " font-weight: bold;\n", 1158 " display: inline-block;\n", 1159 " line-height: 1.2em;\n", 1160 "}\n", 1161 "\n", 1162 "#sk-container-id-24 div.sk-label-container {\n", 1163 " text-align: center;\n", 1164 "}\n", 1165 "\n", 1166 "/* Estimator-specific */\n", 1167 "#sk-container-id-24 div.sk-estimator {\n", 1168 " font-family: monospace;\n", 1169 " border: 1px dotted var(--sklearn-color-border-box);\n", 1170 " border-radius: 0.25em;\n", 1171 " box-sizing: border-box;\n", 1172 " margin-bottom: 0.5em;\n", 1173 " /* unfitted */\n", 1174 " background-color: var(--sklearn-color-unfitted-level-0);\n", 1175 "}\n", 1176 "\n", 1177 "#sk-container-id-24 div.sk-estimator.fitted {\n", 1178 " /* fitted */\n", 1179 " background-color: var(--sklearn-color-fitted-level-0);\n", 1180 "}\n", 1181 "\n", 1182 "/* on hover */\n", 1183 "#sk-container-id-24 div.sk-estimator:hover {\n", 1184 " /* unfitted */\n", 1185 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1186 "}\n", 1187 "\n", 1188 "#sk-container-id-24 div.sk-estimator.fitted:hover {\n", 1189 " /* fitted */\n", 1190 " background-color: var(--sklearn-color-fitted-level-2);\n", 1191 "}\n", 1192 "\n", 1193 "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n", 1194 "\n", 1195 "/* Common style for \"i\" and \"?\" */\n", 1196 "\n", 1197 ".sk-estimator-doc-link,\n", 1198 "a:link.sk-estimator-doc-link,\n", 1199 "a:visited.sk-estimator-doc-link {\n", 1200 " float: right;\n", 1201 " font-size: smaller;\n", 1202 " line-height: 1em;\n", 1203 " font-family: monospace;\n", 1204 " background-color: var(--sklearn-color-background);\n", 1205 " border-radius: 1em;\n", 1206 " height: 1em;\n", 1207 " width: 1em;\n", 1208 " text-decoration: none !important;\n", 1209 " margin-left: 1ex;\n", 1210 " /* unfitted */\n", 1211 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 1212 " color: var(--sklearn-color-unfitted-level-1);\n", 1213 "}\n", 1214 "\n", 1215 ".sk-estimator-doc-link.fitted,\n", 1216 "a:link.sk-estimator-doc-link.fitted,\n", 1217 "a:visited.sk-estimator-doc-link.fitted {\n", 1218 " /* fitted */\n", 1219 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 1220 " color: var(--sklearn-color-fitted-level-1);\n", 1221 "}\n", 1222 "\n", 1223 "/* On hover */\n", 1224 "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n", 1225 ".sk-estimator-doc-link:hover,\n", 1226 "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n", 1227 ".sk-estimator-doc-link:hover {\n", 1228 " /* unfitted */\n", 1229 " background-color: var(--sklearn-color-unfitted-level-3);\n", 1230 " color: var(--sklearn-color-background);\n", 1231 " text-decoration: none;\n", 1232 "}\n", 1233 "\n", 1234 "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n", 1235 ".sk-estimator-doc-link.fitted:hover,\n", 1236 "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n", 1237 ".sk-estimator-doc-link.fitted:hover {\n", 1238 " /* fitted */\n", 1239 " background-color: var(--sklearn-color-fitted-level-3);\n", 1240 " color: var(--sklearn-color-background);\n", 1241 " text-decoration: none;\n", 1242 "}\n", 1243 "\n", 1244 "/* Span, style for the box shown on hovering the info icon */\n", 1245 ".sk-estimator-doc-link span {\n", 1246 " display: none;\n", 1247 " z-index: 9999;\n", 1248 " position: relative;\n", 1249 " font-weight: normal;\n", 1250 " right: .2ex;\n", 1251 " padding: .5ex;\n", 1252 " margin: .5ex;\n", 1253 " width: min-content;\n", 1254 " min-width: 20ex;\n", 1255 " max-width: 50ex;\n", 1256 " color: var(--sklearn-color-text);\n", 1257 " box-shadow: 2pt 2pt 4pt #999;\n", 1258 " /* unfitted */\n", 1259 " background: var(--sklearn-color-unfitted-level-0);\n", 1260 " border: .5pt solid var(--sklearn-color-unfitted-level-3);\n", 1261 "}\n", 1262 "\n", 1263 ".sk-estimator-doc-link.fitted span {\n", 1264 " /* fitted */\n", 1265 " background: var(--sklearn-color-fitted-level-0);\n", 1266 " border: var(--sklearn-color-fitted-level-3);\n", 1267 "}\n", 1268 "\n", 1269 ".sk-estimator-doc-link:hover span {\n", 1270 " display: block;\n", 1271 "}\n", 1272 "\n", 1273 "/* \"?\"-specific style due to the `<a>` HTML tag */\n", 1274 "\n", 1275 "#sk-container-id-24 a.estimator_doc_link {\n", 1276 " float: right;\n", 1277 " font-size: 1rem;\n", 1278 " line-height: 1em;\n", 1279 " font-family: monospace;\n", 1280 " background-color: var(--sklearn-color-background);\n", 1281 " border-radius: 1rem;\n", 1282 " height: 1rem;\n", 1283 " width: 1rem;\n", 1284 " text-decoration: none;\n", 1285 " /* unfitted */\n", 1286 " color: var(--sklearn-color-unfitted-level-1);\n", 1287 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 1288 "}\n", 1289 "\n", 1290 "#sk-container-id-24 a.estimator_doc_link.fitted {\n", 1291 " /* fitted */\n", 1292 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 1293 " color: var(--sklearn-color-fitted-level-1);\n", 1294 "}\n", 1295 "\n", 1296 "/* On hover */\n", 1297 "#sk-container-id-24 a.estimator_doc_link:hover {\n", 1298 " /* unfitted */\n", 1299 " background-color: var(--sklearn-color-unfitted-level-3);\n", 1300 " color: var(--sklearn-color-background);\n", 1301 " text-decoration: none;\n", 1302 "}\n", 1303 "\n", 1304 "#sk-container-id-24 a.estimator_doc_link.fitted:hover {\n", 1305 " /* fitted */\n", 1306 " background-color: var(--sklearn-color-fitted-level-3);\n", 1307 "}\n", 1308 "</style><div id=\"sk-container-id-24\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>DecisionTreeRegressor(max_depth=2, random_state=12)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-24\" type=\"checkbox\" checked><label for=\"sk-estimator-id-24\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\"> DecisionTreeRegressor<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.tree.DecisionTreeRegressor.html\">?<span>Documentation for DecisionTreeRegressor</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>DecisionTreeRegressor(max_depth=2, random_state=12)</pre></div> </div></div></div></div>" 1309 ], 1310 "text/plain": [ 1311 "DecisionTreeRegressor(max_depth=2, random_state=12)" 1312 ] 1313 }, 1314 "execution_count": 57, 1315 "metadata": {}, 1316 "output_type": "execute_result" 1317 } 1318 ], 1319 "source": [ 1320 "y3 = y2 - tree_reg2.predict(X)\n", 1321 "tree_reg3 = DecisionTreeRegressor(max_depth=2, random_state=12)\n", 1322 "tree_reg3.fit(X,y3)" 1323 ] 1324 }, 1325 { 1326 "cell_type": "code", 1327 "execution_count": 58, 1328 "metadata": {}, 1329 "outputs": [], 1330 "source": [ 1331 "X_new = np.array([[-.4], [0], [.5]])" 1332 ] 1333 }, 1334 { 1335 "cell_type": "code", 1336 "execution_count": 59, 1337 "metadata": {}, 1338 "outputs": [ 1339 { 1340 "data": { 1341 "text/plain": [ 1342 "array([0.47381305, 0.01428015, 0.66853101])" 1343 ] 1344 }, 1345 "execution_count": 59, 1346 "metadata": {}, 1347 "output_type": "execute_result" 1348 } 1349 ], 1350 "source": [ 1351 "# Sum the predicted outputs of each tree where each tree tries to correct\n", 1352 "# errors in the prior trees.\n", 1353 "\n", 1354 "sum(tree.predict(X_new) for tree in (tree_reg1, tree_reg2, tree_reg3))" 1355 ] 1356 }, 1357 { 1358 "cell_type": "code", 1359 "execution_count": 60, 1360 "metadata": {}, 1361 "outputs": [ 1362 { 1363 "data": { 1364 "text/plain": [ 1365 "<matplotlib.collections.PathCollection at 0x7fda6c102a50>" 1366 ] 1367 }, 1368 "execution_count": 60, 1369 "metadata": {}, 1370 "output_type": "execute_result" 1371 }, 1372 { 1373 "data": { 1374 "image/png": "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OKDKykpVV1erublZS5cu1apVq9TZ2RmxfUZGhr7//e+rsbFR//u//6uKigpVVFTohRdemHDxAAAg8Tksy7LsdCgpKdGKFSu0a9cuSVIoFFJeXp42b96sLVu2xLSPZcuW6aabbtJ9990XU/tAICCPxyO/36+0tDQ75QIAAENiPX/bujLS39+vQ4cOqays7PMdOJ0qKytTY2PjmP0ty1JDQ4OOHDmi66+/Pmq7vr4+BQKBIS8AADAz2QojXV1dCgaDys7OHrI9OztbPp8vaj+/36958+YpOTlZN910kx588EHdeOONUdvX1NTI4/GEX3l5eXbKBAAACWRKnqZJTU3Vm2++qddff13/+q//qsrKSr300ktR21dVVcnv94dfJ0+enIoyAQCAAXPsNM7MzFRSUpI6OjqGbO/o6JDX643az+l06oorrpAkFRYW6u2331ZNTY2++tWvRmzvcrnkcrnslAYAABKUrSsjycnJKioqUkNDQ3hbKBRSQ0ODSktLY95PKBRSX1+fnaEBAMAMZevKiCRVVlZq48aNWr58uYqLi1VbW6ve3l5VVFRIkjZs2KDc3FzV1NRIunD/x/Lly7Vo0SL19fXp+eef1+OPP649e/bE95MAAICEZDuMlJeX6/Tp09q6dat8Pp8KCwtVX18fvqn1xIkTcjo/v+DS29urv/u7v9P777+viy66SFdddZX27dun8vLy+H0KAACQsGzPM2IC84wAAJB4JmWeEQAAgHgjjAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKPGFUZ2796t/Px8ud1ulZSUqKmpKWrbvXv3auXKlZo/f77mz5+vsrKyUdsDAIDZxXYYOXDggCorK1VdXa3m5mYtXbpUq1atUmdnZ8T2L730ktatW6cXX3xRjY2NysvL09e+9jV98MEHEy4eAAAkPodlWZadDiUlJVqxYoV27dol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", 1375 "text/plain": [ 1376 "<Figure size 640x480 with 1 Axes>" 1377 ] 1378 }, 1379 "metadata": {}, 1380 "output_type": "display_data" 1381 } 1382 ], 1383 "source": [ 1384 "np.random.seed(10)\n", 1385 "X_test = np.random.rand(100,1) - .5\n", 1386 "y_test = sum(tree.predict(X_test) for tree in (tree_reg1, tree_reg2, tree_reg3))\n", 1387 "plt.scatter(X_test,y_test)" 1388 ] 1389 }, 1390 { 1391 "cell_type": "code", 1392 "execution_count": 67, 1393 "metadata": {}, 1394 "outputs": [ 1395 { 1396 "data": { 1397 "text/html": [ 1398 "<style>#sk-container-id-28 {\n", 1399 " /* Definition of color scheme common for light and dark mode */\n", 1400 " --sklearn-color-text: black;\n", 1401 " --sklearn-color-line: gray;\n", 1402 " /* Definition of color scheme for unfitted estimators */\n", 1403 " --sklearn-color-unfitted-level-0: #fff5e6;\n", 1404 " --sklearn-color-unfitted-level-1: #f6e4d2;\n", 1405 " --sklearn-color-unfitted-level-2: #ffe0b3;\n", 1406 " --sklearn-color-unfitted-level-3: chocolate;\n", 1407 " /* Definition of color scheme for fitted estimators */\n", 1408 " --sklearn-color-fitted-level-0: #f0f8ff;\n", 1409 " --sklearn-color-fitted-level-1: #d4ebff;\n", 1410 " --sklearn-color-fitted-level-2: #b3dbfd;\n", 1411 " --sklearn-color-fitted-level-3: cornflowerblue;\n", 1412 "\n", 1413 " /* Specific color for light theme */\n", 1414 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 1415 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", 1416 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 1417 " --sklearn-color-icon: #696969;\n", 1418 "\n", 1419 " @media (prefers-color-scheme: dark) {\n", 1420 " /* Redefinition of color scheme for dark theme */\n", 1421 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 1422 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", 1423 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 1424 " --sklearn-color-icon: #878787;\n", 1425 " }\n", 1426 "}\n", 1427 "\n", 1428 "#sk-container-id-28 {\n", 1429 " color: var(--sklearn-color-text);\n", 1430 "}\n", 1431 "\n", 1432 "#sk-container-id-28 pre {\n", 1433 " padding: 0;\n", 1434 "}\n", 1435 "\n", 1436 "#sk-container-id-28 input.sk-hidden--visually {\n", 1437 " border: 0;\n", 1438 " clip: rect(1px 1px 1px 1px);\n", 1439 " clip: rect(1px, 1px, 1px, 1px);\n", 1440 " height: 1px;\n", 1441 " margin: -1px;\n", 1442 " overflow: hidden;\n", 1443 " padding: 0;\n", 1444 " position: absolute;\n", 1445 " width: 1px;\n", 1446 "}\n", 1447 "\n", 1448 "#sk-container-id-28 div.sk-dashed-wrapped {\n", 1449 " border: 1px dashed var(--sklearn-color-line);\n", 1450 " margin: 0 0.4em 0.5em 0.4em;\n", 1451 " box-sizing: border-box;\n", 1452 " padding-bottom: 0.4em;\n", 1453 " background-color: var(--sklearn-color-background);\n", 1454 "}\n", 1455 "\n", 1456 "#sk-container-id-28 div.sk-container {\n", 1457 " /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n", 1458 " but bootstrap.min.css set `[hidden] { display: none !important; }`\n", 1459 " so we also need the `!important` here to be able to override the\n", 1460 " default hidden behavior on the sphinx rendered scikit-learn.org.\n", 1461 " See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n", 1462 " display: inline-block !important;\n", 1463 " position: relative;\n", 1464 "}\n", 1465 "\n", 1466 "#sk-container-id-28 div.sk-text-repr-fallback {\n", 1467 " display: none;\n", 1468 "}\n", 1469 "\n", 1470 "div.sk-parallel-item,\n", 1471 "div.sk-serial,\n", 1472 "div.sk-item {\n", 1473 " /* draw centered vertical line to link estimators */\n", 1474 " background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n", 1475 " background-size: 2px 100%;\n", 1476 " background-repeat: no-repeat;\n", 1477 " background-position: center center;\n", 1478 "}\n", 1479 "\n", 1480 "/* Parallel-specific style estimator block */\n", 1481 "\n", 1482 "#sk-container-id-28 div.sk-parallel-item::after {\n", 1483 " content: \"\";\n", 1484 " width: 100%;\n", 1485 " border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n", 1486 " flex-grow: 1;\n", 1487 "}\n", 1488 "\n", 1489 "#sk-container-id-28 div.sk-parallel {\n", 1490 " display: flex;\n", 1491 " align-items: stretch;\n", 1492 " justify-content: center;\n", 1493 " background-color: var(--sklearn-color-background);\n", 1494 " position: relative;\n", 1495 "}\n", 1496 "\n", 1497 "#sk-container-id-28 div.sk-parallel-item {\n", 1498 " display: flex;\n", 1499 " flex-direction: column;\n", 1500 "}\n", 1501 "\n", 1502 "#sk-container-id-28 div.sk-parallel-item:first-child::after {\n", 1503 " align-self: flex-end;\n", 1504 " width: 50%;\n", 1505 "}\n", 1506 "\n", 1507 "#sk-container-id-28 div.sk-parallel-item:last-child::after {\n", 1508 " align-self: flex-start;\n", 1509 " width: 50%;\n", 1510 "}\n", 1511 "\n", 1512 "#sk-container-id-28 div.sk-parallel-item:only-child::after {\n", 1513 " width: 0;\n", 1514 "}\n", 1515 "\n", 1516 "/* Serial-specific style estimator block */\n", 1517 "\n", 1518 "#sk-container-id-28 div.sk-serial {\n", 1519 " display: flex;\n", 1520 " flex-direction: column;\n", 1521 " align-items: center;\n", 1522 " background-color: var(--sklearn-color-background);\n", 1523 " padding-right: 1em;\n", 1524 " padding-left: 1em;\n", 1525 "}\n", 1526 "\n", 1527 "\n", 1528 "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n", 1529 "clickable and can be expanded/collapsed.\n", 1530 "- Pipeline and ColumnTransformer use this feature and define the default style\n", 1531 "- Estimators will overwrite some part of the style using the `sk-estimator` class\n", 1532 "*/\n", 1533 "\n", 1534 "/* Pipeline and ColumnTransformer style (default) */\n", 1535 "\n", 1536 "#sk-container-id-28 div.sk-toggleable {\n", 1537 " /* Default theme specific background. It is overwritten whether we have a\n", 1538 " specific estimator or a Pipeline/ColumnTransformer */\n", 1539 " background-color: var(--sklearn-color-background);\n", 1540 "}\n", 1541 "\n", 1542 "/* Toggleable label */\n", 1543 "#sk-container-id-28 label.sk-toggleable__label {\n", 1544 " cursor: pointer;\n", 1545 " display: block;\n", 1546 " width: 100%;\n", 1547 " margin-bottom: 0;\n", 1548 " padding: 0.5em;\n", 1549 " box-sizing: border-box;\n", 1550 " text-align: center;\n", 1551 "}\n", 1552 "\n", 1553 "#sk-container-id-28 label.sk-toggleable__label-arrow:before {\n", 1554 " /* Arrow on the left of the label */\n", 1555 " content: \"▸\";\n", 1556 " float: left;\n", 1557 " margin-right: 0.25em;\n", 1558 " color: var(--sklearn-color-icon);\n", 1559 "}\n", 1560 "\n", 1561 "#sk-container-id-28 label.sk-toggleable__label-arrow:hover:before {\n", 1562 " color: var(--sklearn-color-text);\n", 1563 "}\n", 1564 "\n", 1565 "/* Toggleable content - dropdown */\n", 1566 "\n", 1567 "#sk-container-id-28 div.sk-toggleable__content {\n", 1568 " max-height: 0;\n", 1569 " max-width: 0;\n", 1570 " overflow: hidden;\n", 1571 " text-align: left;\n", 1572 " /* unfitted */\n", 1573 " background-color: var(--sklearn-color-unfitted-level-0);\n", 1574 "}\n", 1575 "\n", 1576 "#sk-container-id-28 div.sk-toggleable__content.fitted {\n", 1577 " /* fitted */\n", 1578 " background-color: var(--sklearn-color-fitted-level-0);\n", 1579 "}\n", 1580 "\n", 1581 "#sk-container-id-28 div.sk-toggleable__content pre {\n", 1582 " margin: 0.2em;\n", 1583 " border-radius: 0.25em;\n", 1584 " color: var(--sklearn-color-text);\n", 1585 " /* unfitted */\n", 1586 " background-color: var(--sklearn-color-unfitted-level-0);\n", 1587 "}\n", 1588 "\n", 1589 "#sk-container-id-28 div.sk-toggleable__content.fitted pre {\n", 1590 " /* unfitted */\n", 1591 " background-color: var(--sklearn-color-fitted-level-0);\n", 1592 "}\n", 1593 "\n", 1594 "#sk-container-id-28 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n", 1595 " /* Expand drop-down */\n", 1596 " max-height: 200px;\n", 1597 " max-width: 100%;\n", 1598 " overflow: auto;\n", 1599 "}\n", 1600 "\n", 1601 "#sk-container-id-28 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n", 1602 " content: \"▾\";\n", 1603 "}\n", 1604 "\n", 1605 "/* Pipeline/ColumnTransformer-specific style */\n", 1606 "\n", 1607 "#sk-container-id-28 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1608 " color: var(--sklearn-color-text);\n", 1609 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1610 "}\n", 1611 "\n", 1612 "#sk-container-id-28 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1613 " background-color: var(--sklearn-color-fitted-level-2);\n", 1614 "}\n", 1615 "\n", 1616 "/* Estimator-specific style */\n", 1617 "\n", 1618 "/* Colorize estimator box */\n", 1619 "#sk-container-id-28 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1620 " /* unfitted */\n", 1621 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1622 "}\n", 1623 "\n", 1624 "#sk-container-id-28 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 1625 " /* fitted */\n", 1626 " background-color: var(--sklearn-color-fitted-level-2);\n", 1627 "}\n", 1628 "\n", 1629 "#sk-container-id-28 div.sk-label label.sk-toggleable__label,\n", 1630 "#sk-container-id-28 div.sk-label label {\n", 1631 " /* The background is the default theme color */\n", 1632 " color: var(--sklearn-color-text-on-default-background);\n", 1633 "}\n", 1634 "\n", 1635 "/* On hover, darken the color of the background */\n", 1636 "#sk-container-id-28 div.sk-label:hover label.sk-toggleable__label {\n", 1637 " color: var(--sklearn-color-text);\n", 1638 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1639 "}\n", 1640 "\n", 1641 "/* Label box, darken color on hover, fitted */\n", 1642 "#sk-container-id-28 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n", 1643 " color: var(--sklearn-color-text);\n", 1644 " background-color: var(--sklearn-color-fitted-level-2);\n", 1645 "}\n", 1646 "\n", 1647 "/* Estimator label */\n", 1648 "\n", 1649 "#sk-container-id-28 div.sk-label label {\n", 1650 " font-family: monospace;\n", 1651 " font-weight: bold;\n", 1652 " display: inline-block;\n", 1653 " line-height: 1.2em;\n", 1654 "}\n", 1655 "\n", 1656 "#sk-container-id-28 div.sk-label-container {\n", 1657 " text-align: center;\n", 1658 "}\n", 1659 "\n", 1660 "/* Estimator-specific */\n", 1661 "#sk-container-id-28 div.sk-estimator {\n", 1662 " font-family: monospace;\n", 1663 " border: 1px dotted var(--sklearn-color-border-box);\n", 1664 " border-radius: 0.25em;\n", 1665 " box-sizing: border-box;\n", 1666 " margin-bottom: 0.5em;\n", 1667 " /* unfitted */\n", 1668 " background-color: var(--sklearn-color-unfitted-level-0);\n", 1669 "}\n", 1670 "\n", 1671 "#sk-container-id-28 div.sk-estimator.fitted {\n", 1672 " /* fitted */\n", 1673 " background-color: var(--sklearn-color-fitted-level-0);\n", 1674 "}\n", 1675 "\n", 1676 "/* on hover */\n", 1677 "#sk-container-id-28 div.sk-estimator:hover {\n", 1678 " /* unfitted */\n", 1679 " background-color: var(--sklearn-color-unfitted-level-2);\n", 1680 "}\n", 1681 "\n", 1682 "#sk-container-id-28 div.sk-estimator.fitted:hover {\n", 1683 " /* fitted */\n", 1684 " background-color: var(--sklearn-color-fitted-level-2);\n", 1685 "}\n", 1686 "\n", 1687 "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n", 1688 "\n", 1689 "/* Common style for \"i\" and \"?\" */\n", 1690 "\n", 1691 ".sk-estimator-doc-link,\n", 1692 "a:link.sk-estimator-doc-link,\n", 1693 "a:visited.sk-estimator-doc-link {\n", 1694 " float: right;\n", 1695 " font-size: smaller;\n", 1696 " line-height: 1em;\n", 1697 " font-family: monospace;\n", 1698 " background-color: var(--sklearn-color-background);\n", 1699 " border-radius: 1em;\n", 1700 " height: 1em;\n", 1701 " width: 1em;\n", 1702 " text-decoration: none !important;\n", 1703 " margin-left: 1ex;\n", 1704 " /* unfitted */\n", 1705 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 1706 " color: var(--sklearn-color-unfitted-level-1);\n", 1707 "}\n", 1708 "\n", 1709 ".sk-estimator-doc-link.fitted,\n", 1710 "a:link.sk-estimator-doc-link.fitted,\n", 1711 "a:visited.sk-estimator-doc-link.fitted {\n", 1712 " /* fitted */\n", 1713 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 1714 " color: var(--sklearn-color-fitted-level-1);\n", 1715 "}\n", 1716 "\n", 1717 "/* On hover */\n", 1718 "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n", 1719 ".sk-estimator-doc-link:hover,\n", 1720 "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n", 1721 ".sk-estimator-doc-link:hover {\n", 1722 " /* unfitted */\n", 1723 " background-color: var(--sklearn-color-unfitted-level-3);\n", 1724 " color: var(--sklearn-color-background);\n", 1725 " text-decoration: none;\n", 1726 "}\n", 1727 "\n", 1728 "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n", 1729 ".sk-estimator-doc-link.fitted:hover,\n", 1730 "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n", 1731 ".sk-estimator-doc-link.fitted:hover {\n", 1732 " /* fitted */\n", 1733 " background-color: var(--sklearn-color-fitted-level-3);\n", 1734 " color: var(--sklearn-color-background);\n", 1735 " text-decoration: none;\n", 1736 "}\n", 1737 "\n", 1738 "/* Span, style for the box shown on hovering the info icon */\n", 1739 ".sk-estimator-doc-link span {\n", 1740 " display: none;\n", 1741 " z-index: 9999;\n", 1742 " position: relative;\n", 1743 " font-weight: normal;\n", 1744 " right: .2ex;\n", 1745 " padding: .5ex;\n", 1746 " margin: .5ex;\n", 1747 " width: min-content;\n", 1748 " min-width: 20ex;\n", 1749 " max-width: 50ex;\n", 1750 " color: var(--sklearn-color-text);\n", 1751 " box-shadow: 2pt 2pt 4pt #999;\n", 1752 " /* unfitted */\n", 1753 " background: var(--sklearn-color-unfitted-level-0);\n", 1754 " border: .5pt solid var(--sklearn-color-unfitted-level-3);\n", 1755 "}\n", 1756 "\n", 1757 ".sk-estimator-doc-link.fitted span {\n", 1758 " /* fitted */\n", 1759 " background: var(--sklearn-color-fitted-level-0);\n", 1760 " border: var(--sklearn-color-fitted-level-3);\n", 1761 "}\n", 1762 "\n", 1763 ".sk-estimator-doc-link:hover span {\n", 1764 " display: block;\n", 1765 "}\n", 1766 "\n", 1767 "/* \"?\"-specific style due to the `<a>` HTML tag */\n", 1768 "\n", 1769 "#sk-container-id-28 a.estimator_doc_link {\n", 1770 " float: right;\n", 1771 " font-size: 1rem;\n", 1772 " line-height: 1em;\n", 1773 " font-family: monospace;\n", 1774 " background-color: var(--sklearn-color-background);\n", 1775 " border-radius: 1rem;\n", 1776 " height: 1rem;\n", 1777 " width: 1rem;\n", 1778 " text-decoration: none;\n", 1779 " /* unfitted */\n", 1780 " color: var(--sklearn-color-unfitted-level-1);\n", 1781 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 1782 "}\n", 1783 "\n", 1784 "#sk-container-id-28 a.estimator_doc_link.fitted {\n", 1785 " /* fitted */\n", 1786 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 1787 " color: var(--sklearn-color-fitted-level-1);\n", 1788 "}\n", 1789 "\n", 1790 "/* On hover */\n", 1791 "#sk-container-id-28 a.estimator_doc_link:hover {\n", 1792 " /* unfitted */\n", 1793 " background-color: var(--sklearn-color-unfitted-level-3);\n", 1794 " color: var(--sklearn-color-background);\n", 1795 " text-decoration: none;\n", 1796 "}\n", 1797 "\n", 1798 "#sk-container-id-28 a.estimator_doc_link.fitted:hover {\n", 1799 " /* fitted */\n", 1800 " background-color: var(--sklearn-color-fitted-level-3);\n", 1801 "}\n", 1802 "</style><div id=\"sk-container-id-28\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>GradientBoostingRegressor(learning_rate=1, max_depth=2, n_estimators=3,\n", 1803 " random_state=10)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-28\" type=\"checkbox\" checked><label for=\"sk-estimator-id-28\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\"> GradientBoostingRegressor<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.ensemble.GradientBoostingRegressor.html\">?<span>Documentation for GradientBoostingRegressor</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>GradientBoostingRegressor(learning_rate=1, max_depth=2, n_estimators=3,\n", 1804 " random_state=10)</pre></div> </div></div></div></div>" 1805 ], 1806 "text/plain": [ 1807 "GradientBoostingRegressor(learning_rate=1, max_depth=2, n_estimators=3,\n", 1808 " random_state=10)" 1809 ] 1810 }, 1811 "execution_count": 67, 1812 "metadata": {}, 1813 "output_type": "execute_result" 1814 } 1815 ], 1816 "source": [ 1817 "# Using built in gradient boosting\n", 1818 "\n", 1819 "from sklearn.ensemble import GradientBoostingRegressor\n", 1820 "gbrt = GradientBoostingRegressor(max_depth=2, n_estimators=3, learning_rate=1,random_state=10)\n", 1821 "gbrt.fit(X,y)" 1822 ] 1823 }, 1824 { 1825 "cell_type": "code", 1826 "execution_count": 68, 1827 "metadata": {}, 1828 "outputs": [ 1829 { 1830 "data": { 1831 "text/plain": [ 1832 "<matplotlib.collections.PathCollection at 0x7fda67dcaa50>" 1833 ] 1834 }, 1835 "execution_count": 68, 1836 "metadata": {}, 1837 "output_type": "execute_result" 1838 }, 1839 { 1840 "data": { 1841 "image/png": "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OKDKykpVV1erublZS5cu1apVq9TZ2RmxfUZGhr7//e+rsbFR//u//6uKigpVVFTohRdemHDxAAAg8Tksy7LsdCgpKdGKFSu0a9cuSVIoFFJeXp42b96sLVu2xLSPZcuW6aabbtJ9990XU/tAICCPxyO/36+0tDQ75QIAAENiPX/bujLS39+vQ4cOqays7PMdOJ0qKytTY2PjmP0ty1JDQ4OOHDmi66+/Pmq7vr4+BQKBIS8AADAz2QojXV1dCgaDys7OHrI9OztbPp8vaj+/36958+YpOTlZN910kx588EHdeOONUdvX1NTI4/GEX3l5eXbKBAAACWRKnqZJTU3Vm2++qddff13/+q//qsrKSr300ktR21dVVcnv94dfJ0+enIoyAQCAAXPsNM7MzFRSUpI6OjqGbO/o6JDX643az+l06oorrpAkFRYW6u2331ZNTY2++tWvRmzvcrnkcrnslAYAABKUrSsjycnJKioqUkNDQ3hbKBRSQ0ODSktLY95PKBRSX1+fnaEBAMAMZevKiCRVVlZq48aNWr58uYqLi1VbW6ve3l5VVFRIkjZs2KDc3FzV1NRIunD/x/Lly7Vo0SL19fXp+eef1+OPP649e/bE95MAAICEZDuMlJeX6/Tp09q6dat8Pp8KCwtVX18fvqn1xIkTcjo/v+DS29urv/u7v9P777+viy66SFdddZX27dun8vLy+H0KAACQsGzPM2IC84wAAJB4JmWeEQAAgHgjjAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKPGFUZ2796t/Px8ud1ulZSUqKmpKWrbvXv3auXKlZo/f77mz5+vsrKyUdsDAIDZxXYYOXDggCorK1VdXa3m5mYtXbpUq1atUmdnZ8T2L730ktatW6cXX3xRjY2NysvL09e+9jV98MEHEy4eAAAkPodlWZadDiUlJVqxYoV27dol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", 1842 "text/plain": [ 1843 "<Figure size 640x480 with 1 Axes>" 1844 ] 1845 }, 1846 "metadata": {}, 1847 "output_type": "display_data" 1848 } 1849 ], 1850 "source": [ 1851 "np.random.seed(10)\n", 1852 "X_test = np.random.rand(100,1) - .5\n", 1853 "y_test = gbrt.predict(X_test)\n", 1854 "plt.scatter(X_test,y_test)" 1855 ] 1856 }, 1857 { 1858 "cell_type": "code", 1859 "execution_count": 77, 1860 "metadata": {}, 1861 "outputs": [ 1862 { 1863 "data": { 1864 "text/html": [ 1865 "<style>#sk-container-id-33 {\n", 1866 " /* Definition of color scheme common for light and dark mode */\n", 1867 " --sklearn-color-text: black;\n", 1868 " --sklearn-color-line: gray;\n", 1869 " /* Definition of color scheme for unfitted estimators */\n", 1870 " --sklearn-color-unfitted-level-0: #fff5e6;\n", 1871 " --sklearn-color-unfitted-level-1: #f6e4d2;\n", 1872 " --sklearn-color-unfitted-level-2: #ffe0b3;\n", 1873 " --sklearn-color-unfitted-level-3: chocolate;\n", 1874 " /* Definition of color scheme for fitted estimators */\n", 1875 " --sklearn-color-fitted-level-0: #f0f8ff;\n", 1876 " --sklearn-color-fitted-level-1: #d4ebff;\n", 1877 " --sklearn-color-fitted-level-2: #b3dbfd;\n", 1878 " --sklearn-color-fitted-level-3: cornflowerblue;\n", 1879 "\n", 1880 " /* Specific color for light theme */\n", 1881 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 1882 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", 1883 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", 1884 " --sklearn-color-icon: #696969;\n", 1885 "\n", 1886 " @media (prefers-color-scheme: dark) {\n", 1887 " /* Redefinition of color scheme for dark theme */\n", 1888 " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 1889 " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", 1890 " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", 1891 " --sklearn-color-icon: #878787;\n", 1892 " }\n", 1893 "}\n", 1894 "\n", 1895 "#sk-container-id-33 {\n", 1896 " color: var(--sklearn-color-text);\n", 1897 "}\n", 1898 "\n", 1899 "#sk-container-id-33 pre {\n", 1900 " padding: 0;\n", 1901 "}\n", 1902 "\n", 1903 "#sk-container-id-33 input.sk-hidden--visually {\n", 1904 " border: 0;\n", 1905 " clip: rect(1px 1px 1px 1px);\n", 1906 " clip: rect(1px, 1px, 1px, 1px);\n", 1907 " height: 1px;\n", 1908 " margin: -1px;\n", 1909 " overflow: hidden;\n", 1910 " padding: 0;\n", 1911 " position: absolute;\n", 1912 " width: 1px;\n", 1913 "}\n", 1914 "\n", 1915 "#sk-container-id-33 div.sk-dashed-wrapped {\n", 1916 " border: 1px dashed var(--sklearn-color-line);\n", 1917 " margin: 0 0.4em 0.5em 0.4em;\n", 1918 " box-sizing: border-box;\n", 1919 " padding-bottom: 0.4em;\n", 1920 " background-color: var(--sklearn-color-background);\n", 1921 "}\n", 1922 "\n", 1923 "#sk-container-id-33 div.sk-container {\n", 1924 " /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n", 1925 " but bootstrap.min.css set `[hidden] { display: none !important; }`\n", 1926 " so we also need the `!important` here to be able to override the\n", 1927 " default hidden behavior on the sphinx rendered scikit-learn.org.\n", 1928 " See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n", 1929 " display: inline-block !important;\n", 1930 " position: relative;\n", 1931 "}\n", 1932 "\n", 1933 "#sk-container-id-33 div.sk-text-repr-fallback {\n", 1934 " display: none;\n", 1935 "}\n", 1936 "\n", 1937 "div.sk-parallel-item,\n", 1938 "div.sk-serial,\n", 1939 "div.sk-item {\n", 1940 " /* draw centered vertical line to link estimators */\n", 1941 " background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n", 1942 " background-size: 2px 100%;\n", 1943 " background-repeat: no-repeat;\n", 1944 " background-position: center center;\n", 1945 "}\n", 1946 "\n", 1947 "/* Parallel-specific style estimator block */\n", 1948 "\n", 1949 "#sk-container-id-33 div.sk-parallel-item::after {\n", 1950 " content: \"\";\n", 1951 " width: 100%;\n", 1952 " border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n", 1953 " flex-grow: 1;\n", 1954 "}\n", 1955 "\n", 1956 "#sk-container-id-33 div.sk-parallel {\n", 1957 " display: flex;\n", 1958 " align-items: stretch;\n", 1959 " justify-content: center;\n", 1960 " background-color: var(--sklearn-color-background);\n", 1961 " position: relative;\n", 1962 "}\n", 1963 "\n", 1964 "#sk-container-id-33 div.sk-parallel-item {\n", 1965 " display: flex;\n", 1966 " flex-direction: column;\n", 1967 "}\n", 1968 "\n", 1969 "#sk-container-id-33 div.sk-parallel-item:first-child::after {\n", 1970 " align-self: flex-end;\n", 1971 " width: 50%;\n", 1972 "}\n", 1973 "\n", 1974 "#sk-container-id-33 div.sk-parallel-item:last-child::after {\n", 1975 " align-self: flex-start;\n", 1976 " width: 50%;\n", 1977 "}\n", 1978 "\n", 1979 "#sk-container-id-33 div.sk-parallel-item:only-child::after {\n", 1980 " width: 0;\n", 1981 "}\n", 1982 "\n", 1983 "/* Serial-specific style estimator block */\n", 1984 "\n", 1985 "#sk-container-id-33 div.sk-serial {\n", 1986 " display: flex;\n", 1987 " flex-direction: column;\n", 1988 " align-items: center;\n", 1989 " background-color: var(--sklearn-color-background);\n", 1990 " padding-right: 1em;\n", 1991 " padding-left: 1em;\n", 1992 "}\n", 1993 "\n", 1994 "\n", 1995 "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n", 1996 "clickable and can be expanded/collapsed.\n", 1997 "- Pipeline and ColumnTransformer use this feature and define the default style\n", 1998 "- Estimators will overwrite some part of the style using the `sk-estimator` class\n", 1999 "*/\n", 2000 "\n", 2001 "/* Pipeline and ColumnTransformer style (default) */\n", 2002 "\n", 2003 "#sk-container-id-33 div.sk-toggleable {\n", 2004 " /* Default theme specific background. It is overwritten whether we have a\n", 2005 " specific estimator or a Pipeline/ColumnTransformer */\n", 2006 " background-color: var(--sklearn-color-background);\n", 2007 "}\n", 2008 "\n", 2009 "/* Toggleable label */\n", 2010 "#sk-container-id-33 label.sk-toggleable__label {\n", 2011 " cursor: pointer;\n", 2012 " display: block;\n", 2013 " width: 100%;\n", 2014 " margin-bottom: 0;\n", 2015 " padding: 0.5em;\n", 2016 " box-sizing: border-box;\n", 2017 " text-align: center;\n", 2018 "}\n", 2019 "\n", 2020 "#sk-container-id-33 label.sk-toggleable__label-arrow:before {\n", 2021 " /* Arrow on the left of the label */\n", 2022 " content: \"▸\";\n", 2023 " float: left;\n", 2024 " margin-right: 0.25em;\n", 2025 " color: var(--sklearn-color-icon);\n", 2026 "}\n", 2027 "\n", 2028 "#sk-container-id-33 label.sk-toggleable__label-arrow:hover:before {\n", 2029 " color: var(--sklearn-color-text);\n", 2030 "}\n", 2031 "\n", 2032 "/* Toggleable content - dropdown */\n", 2033 "\n", 2034 "#sk-container-id-33 div.sk-toggleable__content {\n", 2035 " max-height: 0;\n", 2036 " max-width: 0;\n", 2037 " overflow: hidden;\n", 2038 " text-align: left;\n", 2039 " /* unfitted */\n", 2040 " background-color: var(--sklearn-color-unfitted-level-0);\n", 2041 "}\n", 2042 "\n", 2043 "#sk-container-id-33 div.sk-toggleable__content.fitted {\n", 2044 " /* fitted */\n", 2045 " background-color: var(--sklearn-color-fitted-level-0);\n", 2046 "}\n", 2047 "\n", 2048 "#sk-container-id-33 div.sk-toggleable__content pre {\n", 2049 " margin: 0.2em;\n", 2050 " border-radius: 0.25em;\n", 2051 " color: var(--sklearn-color-text);\n", 2052 " /* unfitted */\n", 2053 " background-color: var(--sklearn-color-unfitted-level-0);\n", 2054 "}\n", 2055 "\n", 2056 "#sk-container-id-33 div.sk-toggleable__content.fitted pre {\n", 2057 " /* unfitted */\n", 2058 " background-color: var(--sklearn-color-fitted-level-0);\n", 2059 "}\n", 2060 "\n", 2061 "#sk-container-id-33 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n", 2062 " /* Expand drop-down */\n", 2063 " max-height: 200px;\n", 2064 " max-width: 100%;\n", 2065 " overflow: auto;\n", 2066 "}\n", 2067 "\n", 2068 "#sk-container-id-33 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n", 2069 " content: \"▾\";\n", 2070 "}\n", 2071 "\n", 2072 "/* Pipeline/ColumnTransformer-specific style */\n", 2073 "\n", 2074 "#sk-container-id-33 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 2075 " color: var(--sklearn-color-text);\n", 2076 " background-color: var(--sklearn-color-unfitted-level-2);\n", 2077 "}\n", 2078 "\n", 2079 "#sk-container-id-33 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 2080 " background-color: var(--sklearn-color-fitted-level-2);\n", 2081 "}\n", 2082 "\n", 2083 "/* Estimator-specific style */\n", 2084 "\n", 2085 "/* Colorize estimator box */\n", 2086 "#sk-container-id-33 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 2087 " /* unfitted */\n", 2088 " background-color: var(--sklearn-color-unfitted-level-2);\n", 2089 "}\n", 2090 "\n", 2091 "#sk-container-id-33 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n", 2092 " /* fitted */\n", 2093 " background-color: var(--sklearn-color-fitted-level-2);\n", 2094 "}\n", 2095 "\n", 2096 "#sk-container-id-33 div.sk-label label.sk-toggleable__label,\n", 2097 "#sk-container-id-33 div.sk-label label {\n", 2098 " /* The background is the default theme color */\n", 2099 " color: var(--sklearn-color-text-on-default-background);\n", 2100 "}\n", 2101 "\n", 2102 "/* On hover, darken the color of the background */\n", 2103 "#sk-container-id-33 div.sk-label:hover label.sk-toggleable__label {\n", 2104 " color: var(--sklearn-color-text);\n", 2105 " background-color: var(--sklearn-color-unfitted-level-2);\n", 2106 "}\n", 2107 "\n", 2108 "/* Label box, darken color on hover, fitted */\n", 2109 "#sk-container-id-33 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n", 2110 " color: var(--sklearn-color-text);\n", 2111 " background-color: var(--sklearn-color-fitted-level-2);\n", 2112 "}\n", 2113 "\n", 2114 "/* Estimator label */\n", 2115 "\n", 2116 "#sk-container-id-33 div.sk-label label {\n", 2117 " font-family: monospace;\n", 2118 " font-weight: bold;\n", 2119 " display: inline-block;\n", 2120 " line-height: 1.2em;\n", 2121 "}\n", 2122 "\n", 2123 "#sk-container-id-33 div.sk-label-container {\n", 2124 " text-align: center;\n", 2125 "}\n", 2126 "\n", 2127 "/* Estimator-specific */\n", 2128 "#sk-container-id-33 div.sk-estimator {\n", 2129 " font-family: monospace;\n", 2130 " border: 1px dotted var(--sklearn-color-border-box);\n", 2131 " border-radius: 0.25em;\n", 2132 " box-sizing: border-box;\n", 2133 " margin-bottom: 0.5em;\n", 2134 " /* unfitted */\n", 2135 " background-color: var(--sklearn-color-unfitted-level-0);\n", 2136 "}\n", 2137 "\n", 2138 "#sk-container-id-33 div.sk-estimator.fitted {\n", 2139 " /* fitted */\n", 2140 " background-color: var(--sklearn-color-fitted-level-0);\n", 2141 "}\n", 2142 "\n", 2143 "/* on hover */\n", 2144 "#sk-container-id-33 div.sk-estimator:hover {\n", 2145 " /* unfitted */\n", 2146 " background-color: var(--sklearn-color-unfitted-level-2);\n", 2147 "}\n", 2148 "\n", 2149 "#sk-container-id-33 div.sk-estimator.fitted:hover {\n", 2150 " /* fitted */\n", 2151 " background-color: var(--sklearn-color-fitted-level-2);\n", 2152 "}\n", 2153 "\n", 2154 "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n", 2155 "\n", 2156 "/* Common style for \"i\" and \"?\" */\n", 2157 "\n", 2158 ".sk-estimator-doc-link,\n", 2159 "a:link.sk-estimator-doc-link,\n", 2160 "a:visited.sk-estimator-doc-link {\n", 2161 " float: right;\n", 2162 " font-size: smaller;\n", 2163 " line-height: 1em;\n", 2164 " font-family: monospace;\n", 2165 " background-color: var(--sklearn-color-background);\n", 2166 " border-radius: 1em;\n", 2167 " height: 1em;\n", 2168 " width: 1em;\n", 2169 " text-decoration: none !important;\n", 2170 " margin-left: 1ex;\n", 2171 " /* unfitted */\n", 2172 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 2173 " color: var(--sklearn-color-unfitted-level-1);\n", 2174 "}\n", 2175 "\n", 2176 ".sk-estimator-doc-link.fitted,\n", 2177 "a:link.sk-estimator-doc-link.fitted,\n", 2178 "a:visited.sk-estimator-doc-link.fitted {\n", 2179 " /* fitted */\n", 2180 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 2181 " color: var(--sklearn-color-fitted-level-1);\n", 2182 "}\n", 2183 "\n", 2184 "/* On hover */\n", 2185 "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n", 2186 ".sk-estimator-doc-link:hover,\n", 2187 "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n", 2188 ".sk-estimator-doc-link:hover {\n", 2189 " /* unfitted */\n", 2190 " background-color: var(--sklearn-color-unfitted-level-3);\n", 2191 " color: var(--sklearn-color-background);\n", 2192 " text-decoration: none;\n", 2193 "}\n", 2194 "\n", 2195 "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n", 2196 ".sk-estimator-doc-link.fitted:hover,\n", 2197 "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n", 2198 ".sk-estimator-doc-link.fitted:hover {\n", 2199 " /* fitted */\n", 2200 " background-color: var(--sklearn-color-fitted-level-3);\n", 2201 " color: var(--sklearn-color-background);\n", 2202 " text-decoration: none;\n", 2203 "}\n", 2204 "\n", 2205 "/* Span, style for the box shown on hovering the info icon */\n", 2206 ".sk-estimator-doc-link span {\n", 2207 " display: none;\n", 2208 " z-index: 9999;\n", 2209 " position: relative;\n", 2210 " font-weight: normal;\n", 2211 " right: .2ex;\n", 2212 " padding: .5ex;\n", 2213 " margin: .5ex;\n", 2214 " width: min-content;\n", 2215 " min-width: 20ex;\n", 2216 " max-width: 50ex;\n", 2217 " color: var(--sklearn-color-text);\n", 2218 " box-shadow: 2pt 2pt 4pt #999;\n", 2219 " /* unfitted */\n", 2220 " background: var(--sklearn-color-unfitted-level-0);\n", 2221 " border: .5pt solid var(--sklearn-color-unfitted-level-3);\n", 2222 "}\n", 2223 "\n", 2224 ".sk-estimator-doc-link.fitted span {\n", 2225 " /* fitted */\n", 2226 " background: var(--sklearn-color-fitted-level-0);\n", 2227 " border: var(--sklearn-color-fitted-level-3);\n", 2228 "}\n", 2229 "\n", 2230 ".sk-estimator-doc-link:hover span {\n", 2231 " display: block;\n", 2232 "}\n", 2233 "\n", 2234 "/* \"?\"-specific style due to the `<a>` HTML tag */\n", 2235 "\n", 2236 "#sk-container-id-33 a.estimator_doc_link {\n", 2237 " float: right;\n", 2238 " font-size: 1rem;\n", 2239 " line-height: 1em;\n", 2240 " font-family: monospace;\n", 2241 " background-color: var(--sklearn-color-background);\n", 2242 " border-radius: 1rem;\n", 2243 " height: 1rem;\n", 2244 " width: 1rem;\n", 2245 " text-decoration: none;\n", 2246 " /* unfitted */\n", 2247 " color: var(--sklearn-color-unfitted-level-1);\n", 2248 " border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n", 2249 "}\n", 2250 "\n", 2251 "#sk-container-id-33 a.estimator_doc_link.fitted {\n", 2252 " /* fitted */\n", 2253 " border: var(--sklearn-color-fitted-level-1) 1pt solid;\n", 2254 " color: var(--sklearn-color-fitted-level-1);\n", 2255 "}\n", 2256 "\n", 2257 "/* On hover */\n", 2258 "#sk-container-id-33 a.estimator_doc_link:hover {\n", 2259 " /* unfitted */\n", 2260 " background-color: var(--sklearn-color-unfitted-level-3);\n", 2261 " color: var(--sklearn-color-background);\n", 2262 " text-decoration: none;\n", 2263 "}\n", 2264 "\n", 2265 "#sk-container-id-33 a.estimator_doc_link.fitted:hover {\n", 2266 " /* fitted */\n", 2267 " background-color: var(--sklearn-color-fitted-level-3);\n", 2268 "}\n", 2269 "</style><div id=\"sk-container-id-33\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>GradientBoostingRegressor(learning_rate=0.05, max_depth=2, n_estimators=500,\n", 2270 " n_iter_no_change=10, random_state=10)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-33\" type=\"checkbox\" checked><label for=\"sk-estimator-id-33\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\"> GradientBoostingRegressor<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.ensemble.GradientBoostingRegressor.html\">?<span>Documentation for GradientBoostingRegressor</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>GradientBoostingRegressor(learning_rate=0.05, max_depth=2, n_estimators=500,\n", 2271 " n_iter_no_change=10, random_state=10)</pre></div> </div></div></div></div>" 2272 ], 2273 "text/plain": [ 2274 "GradientBoostingRegressor(learning_rate=0.05, max_depth=2, n_estimators=500,\n", 2275 " n_iter_no_change=10, random_state=10)" 2276 ] 2277 }, 2278 "execution_count": 77, 2279 "metadata": {}, 2280 "output_type": "execute_result" 2281 } 2282 ], 2283 "source": [ 2284 "# Using early stopping once it has gone 10 iterations with no changes\n", 2285 "\n", 2286 "from sklearn.ensemble import GradientBoostingRegressor\n", 2287 "gbrt = GradientBoostingRegressor(max_depth=2, n_estimators=500, n_iter_no_change=10, learning_rate=.05,random_state=10)\n", 2288 "gbrt.fit(X,y)" 2289 ] 2290 }, 2291 { 2292 "cell_type": "code", 2293 "execution_count": 78, 2294 "metadata": {}, 2295 "outputs": [ 2296 { 2297 "data": { 2298 "text/plain": [ 2299 "<matplotlib.collections.PathCollection at 0x7fda67a68f50>" 2300 ] 2301 }, 2302 "execution_count": 78, 2303 "metadata": {}, 2304 "output_type": "execute_result" 2305 }, 2306 { 2307 "data": { 2308 "image/png": "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97//fWDbiy++GHZCZXd3t3Hs2LExD0nGv/zLvxjvvfdeqrqekeI534ZhGG6321iyZIlx1113GQMDA6noakaqqakxvvWtbwW+9nq9xqxZs8JOYP2zP/uzMdvq6uqYwBqFWM+1YRjG448/bhQXFxttbW2p6GJWieV8f/zxxxP+Rt9zzz3GF7/4RePYsWPG0NBQKrueNggjaW7FihXG7bffbrzxxhvGq6++atx8883G2rVrA8+///77xi233GK88cYbIY8h7qaJWqzn2+12G7W1tcbcuXONd9991+ju7g48rly5Yta3kZYOHjxoFBQUGE899ZTR1dVlfP3rXzdKSkoMl8tlGIZh3HfffcamTZsC7X/7298aU6ZMMXbs2GH84Q9/MJqamoypU6cax44dM+tbyBixnuvt27cb+fn5xs9//vMxv8MXL14061vIKLGe7/G4m4YwkvbOnz9vrF271pg2bZpRXFxsNDQ0jPkDceLECUOS8fLLL4c8BmEkerGe75dfftmQFPRx4sQJc76JNPbDH/7QuP766438/HyjpqbGeP311wPP3XXXXcaGDRvGtP/pT39qfPrTnzby8/ONz372s8avfvWrFPc4c8Vyrm+44Yagv8NNTU2p73iGivV3ezTCiGFYDMMwUj00BAAA4MfdNAAAwFSEEQAAYCrCCAAAMBVhBAAAmIowAgAATEUYAQAApiKMAAAAUxFGAACAqQgjAADAVIQRAABgKsIIAAAw1f8PdU9HhYzzd/EAAAAASUVORK5CYII=", 2309 "text/plain": [ 2310 "<Figure size 640x480 with 1 Axes>" 2311 ] 2312 }, 2313 "metadata": {}, 2314 "output_type": "display_data" 2315 } 2316 ], 2317 "source": [ 2318 "np.random.seed(10)\n", 2319 "X_test = np.random.rand(100,1) - .5\n", 2320 "y_test = gbrt.predict(X_test)\n", 2321 "plt.scatter(X_test,y_test)" 2322 ] 2323 }, 2324 { 2325 "cell_type": "code", 2326 "execution_count": 79, 2327 "metadata": {}, 2328 "outputs": [ 2329 { 2330 "data": { 2331 "text/plain": [ 2332 "93" 2333 ] 2334 }, 2335 "execution_count": 79, 2336 "metadata": {}, 2337 "output_type": "execute_result" 2338 } 2339 ], 2340 "source": [ 2341 "gbrt.n_estimators_" 2342 ] 2343 } 2344 ], 2345 "metadata": { 2346 "kernelspec": { 2347 "display_name": "notebook", 2348 "language": "python", 2349 "name": "notebook" 2350 }, 2351 "language_info": { 2352 "codemirror_mode": { 2353 "name": "ipython", 2354 "version": 3 2355 }, 2356 "file_extension": ".py", 2357 "mimetype": "text/x-python", 2358 "name": "python", 2359 "nbconvert_exporter": "python", 2360 "pygments_lexer": "ipython3", 2361 "version": "3.11.2" 2362 } 2363 }, 2364 "nbformat": 4, 2365 "nbformat_minor": 2 2366 }