diff --git a/docs/tutorials/bivariate-branching.ipynb b/docs/tutorials/bivariate-branching.ipynb index 44924e3..dcc78e3 100644 --- a/docs/tutorials/bivariate-branching.ipynb +++ b/docs/tutorials/bivariate-branching.ipynb @@ -46,10 +46,10 @@ "id": "imports-data", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:43.644216Z", - "iopub.status.busy": "2026-10-02T20:36:43.644048Z", - "iopub.status.idle": "2026-10-02T20:36:44.496020Z", - "shell.execute_reply": "2026-10-02T20:36:44.495509Z" + "iopub.execute_input": "2026-10-16T18:45:50.063789Z", + "iopub.status.busy": "2026-10-16T18:45:50.063662Z", + "iopub.status.idle": "2026-10-16T18:45:50.680031Z", + "shell.execute_reply": "2026-10-16T18:45:50.679559Z" } }, "outputs": [], @@ -83,10 +83,10 @@ "id": "fit-models", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:44.497152Z", - "iopub.status.busy": "2026-10-02T20:36:44.497047Z", - "iopub.status.idle": "2026-10-02T20:36:44.557441Z", - "shell.execute_reply": "2026-10-02T20:36:44.557071Z" + "iopub.execute_input": "2026-10-16T18:45:50.681333Z", + "iopub.status.busy": "2026-10-16T18:45:50.681233Z", + "iopub.status.idle": "2026-10-16T18:45:50.729609Z", + "shell.execute_reply": "2026-10-16T18:45:50.729278Z" } }, "outputs": [ @@ -122,10 +122,10 @@ "id": "compare-regions", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:44.558513Z", - "iopub.status.busy": "2026-10-02T20:36:44.558459Z", - "iopub.status.idle": "2026-10-02T20:36:44.691550Z", - "shell.execute_reply": "2026-10-02T20:36:44.691205Z" + "iopub.execute_input": "2026-10-16T18:45:50.730759Z", + "iopub.status.busy": "2026-10-16T18:45:50.730701Z", + "iopub.status.idle": "2026-10-16T18:45:50.854559Z", + "shell.execute_reply": "2026-10-16T18:45:50.854204Z" } }, "outputs": [ @@ -176,10 +176,10 @@ "id": "plot-tree", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:44.692641Z", - "iopub.status.busy": "2026-10-02T20:36:44.692584Z", - "iopub.status.idle": "2026-10-02T20:36:44.749540Z", - "shell.execute_reply": "2026-10-02T20:36:44.749149Z" + "iopub.execute_input": "2026-10-16T18:45:50.855661Z", + "iopub.status.busy": "2026-10-16T18:45:50.855608Z", + "iopub.status.idle": "2026-10-16T18:45:50.913539Z", + "shell.execute_reply": "2026-10-16T18:45:50.913148Z" } }, "outputs": [ diff --git a/docs/tutorials/categorical-features.ipynb b/docs/tutorials/categorical-features.ipynb index 9404336..23a5806 100644 --- a/docs/tutorials/categorical-features.ipynb +++ b/docs/tutorials/categorical-features.ipynb @@ -48,10 +48,10 @@ "id": "c1a1b003", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:45.384524Z", - "iopub.status.busy": "2026-10-02T20:36:45.384301Z", - "iopub.status.idle": "2026-10-02T20:36:46.037073Z", - "shell.execute_reply": "2026-10-02T20:36:46.036780Z" + "iopub.execute_input": "2026-10-16T18:45:51.550965Z", + "iopub.status.busy": "2026-10-16T18:45:51.550799Z", + "iopub.status.idle": "2026-10-16T18:45:52.161963Z", + "shell.execute_reply": "2026-10-16T18:45:52.161624Z" } }, "outputs": [ @@ -138,10 +138,10 @@ "id": "c1a1b006", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:46.038353Z", - "iopub.status.busy": "2026-10-02T20:36:46.038265Z", - "iopub.status.idle": "2026-10-02T20:36:46.154974Z", - "shell.execute_reply": "2026-10-02T20:36:46.154577Z" + "iopub.execute_input": "2026-10-16T18:45:52.163082Z", + "iopub.status.busy": "2026-10-16T18:45:52.162994Z", + "iopub.status.idle": "2026-10-16T18:45:52.273657Z", + "shell.execute_reply": "2026-10-16T18:45:52.273315Z" } }, "outputs": [ @@ -150,7 +150,7 @@ "output_type": "stream", "text": [ "{'sex': ['sex_female', 'sex_male'], 'class': ['class_First', 'class_Second', 'class_Third'], 'who': ['who_child', 'who_man', 'who_woman'], 'embarked': ['embarked_C', 'embarked_Q', 'embarked_S']}\n", - "test accuracy: 0.798\n" + "test accuracy: 0.837\n" ] } ], @@ -192,10 +192,10 @@ "id": "c1a1b008", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:46.156026Z", - "iopub.status.busy": "2026-10-02T20:36:46.155968Z", - "iopub.status.idle": "2026-10-02T20:36:46.206712Z", - "shell.execute_reply": "2026-10-02T20:36:46.206406Z" + "iopub.execute_input": "2026-10-16T18:45:52.275055Z", + "iopub.status.busy": "2026-10-16T18:45:52.274968Z", + "iopub.status.idle": "2026-10-16T18:45:52.336773Z", + "shell.execute_reply": "2026-10-16T18:45:52.336357Z" } }, "outputs": [ diff --git a/docs/tutorials/feature-importance.ipynb b/docs/tutorials/feature-importance.ipynb index 9d6f3f0..42895c7 100644 --- a/docs/tutorials/feature-importance.ipynb +++ b/docs/tutorials/feature-importance.ipynb @@ -33,10 +33,10 @@ "id": "930c9644", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:49.231828Z", - "iopub.status.busy": "2026-10-02T20:36:49.231679Z", - "iopub.status.idle": "2026-10-02T20:36:49.881354Z", - "shell.execute_reply": "2026-10-02T20:36:49.881023Z" + "iopub.execute_input": "2026-10-16T18:45:55.358789Z", + "iopub.status.busy": "2026-10-16T18:45:55.358629Z", + "iopub.status.idle": "2026-10-16T18:45:56.010797Z", + "shell.execute_reply": "2026-10-16T18:45:56.010459Z" } }, "outputs": [ @@ -44,14 +44,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "test accuracy: 0.895\n", + "test accuracy: 0.901\n", "\n", "feature importance type\n", - "mean concave points 0.7819 continuous\n", - "worst perimeter 0.0952 continuous\n", - "worst radius 0.0820 continuous\n", + "mean concave points 0.7699 continuous\n", + "worst perimeter 0.1052 continuous\n", + "worst radius 0.0719 continuous\n", + "mean radius 0.0316 continuous\n", "mean texture 0.0213 continuous\n", - "mean radius 0.0195 continuous\n", "area error 0.0000 continuous\n", "mean perimeter 0.0000 continuous\n", "mean area 0.0000 continuous\n" @@ -98,10 +98,10 @@ "id": "1b900e07", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:49.882435Z", - "iopub.status.busy": "2026-10-02T20:36:49.882334Z", - "iopub.status.idle": "2026-10-02T20:36:49.909438Z", - "shell.execute_reply": "2026-10-02T20:36:49.909104Z" + "iopub.execute_input": "2026-10-16T18:45:56.012044Z", + "iopub.status.busy": "2026-10-16T18:45:56.011946Z", + "iopub.status.idle": "2026-10-16T18:45:56.042126Z", + "shell.execute_reply": "2026-10-16T18:45:56.041830Z" } }, "outputs": [ @@ -110,11 +110,11 @@ "output_type": "stream", "text": [ "feature mean std\n", - "mean concave points 0.1302 0.2563\n", - "worst perimeter 0.1385 0.2859\n", - "worst radius 0.0950 0.2395\n", - "mean texture 0.0000 0.0000\n", - "mean radius 0.1449 0.2898\n" + "mean concave points 0.1391 0.2633\n", + "worst perimeter 0.1462 0.3008\n", + "worst radius 0.0947 0.2456\n", + "mean radius 0.1532 0.2941\n", + "mean texture 0.0062 0.0200\n" ] } ], @@ -152,10 +152,10 @@ "id": "0939c04e", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:49.910488Z", - "iopub.status.busy": "2026-10-02T20:36:49.910429Z", - "iopub.status.idle": "2026-10-02T20:36:50.209529Z", - "shell.execute_reply": "2026-10-02T20:36:50.209091Z" + "iopub.execute_input": "2026-10-16T18:45:56.043296Z", + "iopub.status.busy": "2026-10-16T18:45:56.043223Z", + "iopub.status.idle": "2026-10-16T18:45:56.323920Z", + "shell.execute_reply": "2026-10-16T18:45:56.323508Z" } }, "outputs": [ @@ -163,7 +163,13 @@ "name": "stdout", "output_type": "stream", "text": [ - "test accuracy: 0.817\n", + "test accuracy: 0.817\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "\n", "feature mean std\n", "capital-gain 0.0482 0.0053\n", diff --git a/docs/tutorials/forests.ipynb b/docs/tutorials/forests.ipynb index 11208c4..6827e26 100644 --- a/docs/tutorials/forests.ipynb +++ b/docs/tutorials/forests.ipynb @@ -16,10 +16,10 @@ "id": "3005b6e4", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:50.787369Z", - "iopub.status.busy": "2026-10-02T20:36:50.787147Z", - "iopub.status.idle": "2026-10-02T20:36:51.555780Z", - "shell.execute_reply": "2026-10-02T20:36:51.555419Z" + "iopub.execute_input": "2026-10-16T18:45:56.900292Z", + "iopub.status.busy": "2026-10-16T18:45:56.900099Z", + "iopub.status.idle": "2026-10-16T18:45:57.773615Z", + "shell.execute_reply": "2026-10-16T18:45:57.773182Z" } }, "outputs": [ @@ -27,8 +27,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "single tree test=0.877\n", - "forest (50) test=0.953\n" + "single tree test=0.906\n", + "forest (50) test=0.930\n" ] } ], @@ -79,10 +79,10 @@ "id": "8589daec", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:51.557699Z", - "iopub.status.busy": "2026-10-02T20:36:51.557453Z", - "iopub.status.idle": "2026-10-02T20:36:51.745454Z", - "shell.execute_reply": "2026-10-02T20:36:51.745042Z" + "iopub.execute_input": "2026-10-16T18:45:57.775293Z", + "iopub.status.busy": "2026-10-16T18:45:57.775079Z", + "iopub.status.idle": "2026-10-16T18:45:57.996802Z", + "shell.execute_reply": "2026-10-16T18:45:57.996539Z" } }, "outputs": [ @@ -90,9 +90,15 @@ "name": "stdout", "output_type": "stream", "text": [ - "n_estimators= 5: test=0.912\n", + "n_estimators= 5: test=0.906\n", "n_estimators= 25: test=0.953\n", - "n_estimators=100: test=0.965\n", + "n_estimators=100: test=0.959\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "bootstrap 60% rows, log2 feats: test=0.959\n" ] } @@ -129,10 +135,10 @@ "id": "853d5a48", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:51.746475Z", - "iopub.status.busy": "2026-10-02T20:36:51.746408Z", - "iopub.status.idle": "2026-10-02T20:36:52.108129Z", - "shell.execute_reply": "2026-10-02T20:36:52.107816Z" + "iopub.execute_input": "2026-10-16T18:45:57.998097Z", + "iopub.status.busy": "2026-10-16T18:45:57.998032Z", + "iopub.status.idle": "2026-10-16T18:45:58.426051Z", + "shell.execute_reply": "2026-10-16T18:45:58.425633Z" } }, "outputs": [ @@ -140,8 +146,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "SGForest, no TAO test=0.811\n", - "SGForest, with TAO test=0.817\n", + "SGForest, no TAO test=0.814\n", + "SGForest, with TAO test=0.827\n", "sklearn RandomForest test=0.790\n" ] } diff --git a/docs/tutorials/inspecting-trees.ipynb b/docs/tutorials/inspecting-trees.ipynb index 9d840cd..4785a37 100644 --- a/docs/tutorials/inspecting-trees.ipynb +++ b/docs/tutorials/inspecting-trees.ipynb @@ -16,10 +16,10 @@ "id": "82dee33a", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:55.148755Z", - "iopub.status.busy": "2026-10-02T20:36:55.148634Z", - "iopub.status.idle": "2026-10-02T20:36:55.729204Z", - "shell.execute_reply": "2026-10-02T20:36:55.728839Z" + "iopub.execute_input": "2026-10-16T18:46:01.467349Z", + "iopub.status.busy": "2026-10-16T18:46:01.466988Z", + "iopub.status.idle": "2026-10-16T18:46:02.035919Z", + "shell.execute_reply": "2026-10-16T18:46:02.035535Z" } }, "outputs": [ @@ -50,10 +50,10 @@ "id": "340a2dc2", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:55.730315Z", - "iopub.status.busy": "2026-10-02T20:36:55.730218Z", - "iopub.status.idle": "2026-10-02T20:36:55.731902Z", - "shell.execute_reply": "2026-10-02T20:36:55.731623Z" + "iopub.execute_input": "2026-10-16T18:46:02.037083Z", + "iopub.status.busy": "2026-10-16T18:46:02.036974Z", + "iopub.status.idle": "2026-10-16T18:46:02.038799Z", + "shell.execute_reply": "2026-10-16T18:46:02.038518Z" } }, "outputs": [ @@ -141,10 +141,10 @@ "id": "80285e60", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:55.732728Z", - "iopub.status.busy": "2026-10-02T20:36:55.732674Z", - "iopub.status.idle": "2026-10-02T20:36:55.778362Z", - "shell.execute_reply": "2026-10-02T20:36:55.777990Z" + "iopub.execute_input": "2026-10-16T18:46:02.039663Z", + "iopub.status.busy": "2026-10-16T18:46:02.039612Z", + "iopub.status.idle": "2026-10-16T18:46:02.082959Z", + "shell.execute_reply": "2026-10-16T18:46:02.082577Z" } }, "outputs": [ @@ -182,10 +182,10 @@ "id": "fa1c106b", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:36:55.779370Z", - "iopub.status.busy": "2026-10-02T20:36:55.779319Z", - "iopub.status.idle": "2026-10-02T20:36:55.781608Z", - "shell.execute_reply": "2026-10-02T20:36:55.781260Z" + "iopub.execute_input": "2026-10-16T18:46:02.084165Z", + "iopub.status.busy": "2026-10-16T18:46:02.084107Z", + "iopub.status.idle": "2026-10-16T18:46:02.086387Z", + "shell.execute_reply": "2026-10-16T18:46:02.085988Z" } }, "outputs": [ diff --git a/docs/tutorials/regression.ipynb b/docs/tutorials/regression.ipynb index d76c1ee..0861c1a 100644 --- a/docs/tutorials/regression.ipynb +++ b/docs/tutorials/regression.ipynb @@ -16,10 +16,10 @@ "id": "f3faf212", "metadata": { "execution": { - "iopub.execute_input": "2026-10-03T02:30:25.203497Z", - "iopub.status.busy": "2026-10-03T02:30:25.203334Z", - "iopub.status.idle": "2026-10-03T02:30:27.093231Z", - "shell.execute_reply": "2026-10-03T02:30:27.092889Z" + "iopub.execute_input": "2026-10-16T18:46:02.667990Z", + "iopub.status.busy": "2026-10-16T18:46:02.667788Z", + "iopub.status.idle": "2026-10-16T18:46:03.342627Z", + "shell.execute_reply": "2026-10-16T18:46:03.342218Z" } }, "outputs": [ @@ -61,10 +61,10 @@ "id": "858de2af", "metadata": { "execution": { - "iopub.execute_input": "2026-10-03T02:30:27.094494Z", - "iopub.status.busy": "2026-10-03T02:30:27.094397Z", - "iopub.status.idle": "2026-10-03T02:30:27.199864Z", - "shell.execute_reply": "2026-10-03T02:30:27.199449Z" + "iopub.execute_input": "2026-10-16T18:46:03.343730Z", + "iopub.status.busy": "2026-10-16T18:46:03.343614Z", + "iopub.status.idle": "2026-10-16T18:46:03.451540Z", + "shell.execute_reply": "2026-10-16T18:46:03.451188Z" } }, "outputs": [ @@ -80,7 +80,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/var/folders/l5/dnbhhcmd4153b41c11_2v7p00000gn/T/ipykernel_80066/2183533904.py:2: UserWarning: Coordinate descent is disabled for the MAE objective. Set SGTLEARN_MAE_CD=1 to enable it.\n", + "/var/folders/l5/dnbhhcmd4153b41c11_2v7p00000gn/T/ipykernel_56424/2183533904.py:2: UserWarning: Coordinate descent is disabled for the MAE objective. Set SGTLEARN_MAE_CD=1 to enable it.\n", " r = SGTRegressor(max_depth=4, inner_max_depth=3, criterion=crit, random_state=0).fit(X_tr, y_tr)\n" ] } @@ -107,10 +107,10 @@ "id": "80e71be5", "metadata": { "execution": { - "iopub.execute_input": "2026-10-03T02:30:27.200848Z", - "iopub.status.busy": "2026-10-03T02:30:27.200796Z", - "iopub.status.idle": "2026-10-03T02:30:27.376623Z", - "shell.execute_reply": "2026-10-03T02:30:27.376243Z" + "iopub.execute_input": "2026-10-16T18:46:03.452631Z", + "iopub.status.busy": "2026-10-16T18:46:03.452570Z", + "iopub.status.idle": "2026-10-16T18:46:03.676064Z", + "shell.execute_reply": "2026-10-16T18:46:03.675713Z" } }, "outputs": [ @@ -118,7 +118,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "forest R^2 test=0.705\n" + "forest R^2 test=0.704\n" ] } ], diff --git a/docs/tutorials/sgt-k.ipynb b/docs/tutorials/sgt-k.ipynb index e040fd2..79e829b 100644 --- a/docs/tutorials/sgt-k.ipynb +++ b/docs/tutorials/sgt-k.ipynb @@ -28,10 +28,10 @@ "id": "80178c34", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:00.297610Z", - "iopub.status.busy": "2026-10-02T20:37:00.297407Z", - "iopub.status.idle": "2026-10-02T20:37:00.916027Z", - "shell.execute_reply": "2026-10-02T20:37:00.915624Z" + "iopub.execute_input": "2026-10-16T18:46:06.706699Z", + "iopub.status.busy": "2026-10-16T18:46:06.706531Z", + "iopub.status.idle": "2026-10-16T18:46:07.315769Z", + "shell.execute_reply": "2026-10-16T18:46:07.315425Z" } }, "outputs": [ @@ -65,10 +65,10 @@ "id": "fa0aff56", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:00.917099Z", - "iopub.status.busy": "2026-10-02T20:37:00.917009Z", - "iopub.status.idle": "2026-10-02T20:37:01.002828Z", - "shell.execute_reply": "2026-10-02T20:37:01.002447Z" + "iopub.execute_input": "2026-10-16T18:46:07.316917Z", + "iopub.status.busy": "2026-10-16T18:46:07.316818Z", + "iopub.status.idle": "2026-10-16T18:46:07.397555Z", + "shell.execute_reply": "2026-10-16T18:46:07.397154Z" } }, "outputs": [ @@ -112,10 +112,10 @@ "id": "c84fcaa0", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:01.003946Z", - "iopub.status.busy": "2026-10-02T20:37:01.003882Z", - "iopub.status.idle": "2026-10-02T20:37:01.011708Z", - "shell.execute_reply": "2026-10-02T20:37:01.011437Z" + "iopub.execute_input": "2026-10-16T18:46:07.398618Z", + "iopub.status.busy": "2026-10-16T18:46:07.398559Z", + "iopub.status.idle": "2026-10-16T18:46:07.406804Z", + "shell.execute_reply": "2026-10-16T18:46:07.406526Z" } }, "outputs": [ diff --git a/docs/tutorials/shape-functions.ipynb b/docs/tutorials/shape-functions.ipynb index d23a61f..ec82892 100644 --- a/docs/tutorials/shape-functions.ipynb +++ b/docs/tutorials/shape-functions.ipynb @@ -17,8 +17,8 @@ "source": [ "## The knobs\n", "\n", - "- `inner_max_depth` — depth of the inner tree. `1` = a single threshold (plain CART); higher = more bins, more non-linear.\n", - "- `inner_max_leaf_nodes` — hard cap on the number of bins the inner tree may form.\n", + "- `inner_max_depth` — depth limit of the inner tree. `1` = a single threshold (plain CART); higher = more bins, more non-linear. Defaults to `None` (no depth limit).\n", + "- `inner_max_leaf_nodes` — hard cap on the number of bins the inner tree may form (default `8`). The inner tree grows best-first up to this cap, so with the defaults it alone sets the shape function's size. A depth `d` allows at most `2**d` bins, so a small `inner_max_depth` can bind first.\n", "\n", "We use the built-in 2-D \"plus sign\" dataset, whose class boundary is non-monotone along each axis — exactly what a shape function captures and a single threshold cannot." ] @@ -29,10 +29,10 @@ "id": "2bf2fb54", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:01.625172Z", - "iopub.status.busy": "2026-10-02T20:37:01.625046Z", - "iopub.status.idle": "2026-10-02T20:37:02.304860Z", - "shell.execute_reply": "2026-10-02T20:37:02.304417Z" + "iopub.execute_input": "2026-10-16T18:46:08.023761Z", + "iopub.status.busy": "2026-10-16T18:46:08.023505Z", + "iopub.status.idle": "2026-10-16T18:46:08.722898Z", + "shell.execute_reply": "2026-10-16T18:46:08.722464Z" } }, "outputs": [ @@ -78,10 +78,10 @@ "id": "06d91910", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:02.306030Z", - "iopub.status.busy": "2026-10-02T20:37:02.305922Z", - "iopub.status.idle": "2026-10-02T20:37:02.311597Z", - "shell.execute_reply": "2026-10-02T20:37:02.311335Z" + "iopub.execute_input": "2026-10-16T18:46:08.723952Z", + "iopub.status.busy": "2026-10-16T18:46:08.723850Z", + "iopub.status.idle": "2026-10-16T18:46:08.730143Z", + "shell.execute_reply": "2026-10-16T18:46:08.729857Z" } }, "outputs": [ diff --git a/docs/tutorials/structure-and-accuracy.ipynb b/docs/tutorials/structure-and-accuracy.ipynb index c3d36fa..a0fc453 100644 --- a/docs/tutorials/structure-and-accuracy.ipynb +++ b/docs/tutorials/structure-and-accuracy.ipynb @@ -26,10 +26,10 @@ "id": "b4fa8666", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:02.931991Z", - "iopub.status.busy": "2026-10-02T20:37:02.931842Z", - "iopub.status.idle": "2026-10-02T20:37:03.570642Z", - "shell.execute_reply": "2026-10-02T20:37:03.570116Z" + "iopub.execute_input": "2026-10-16T18:46:09.351472Z", + "iopub.status.busy": "2026-10-16T18:46:09.351209Z", + "iopub.status.idle": "2026-10-16T18:46:09.967813Z", + "shell.execute_reply": "2026-10-16T18:46:09.967315Z" } }, "outputs": [], @@ -56,16 +56,16 @@ "id": "b248e1d7", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:03.571851Z", - "iopub.status.busy": "2026-10-02T20:37:03.571748Z", - "iopub.status.idle": "2026-10-02T20:37:03.672937Z", - "shell.execute_reply": "2026-10-02T20:37:03.672611Z" + "iopub.execute_input": "2026-10-16T18:46:09.968946Z", + "iopub.status.busy": "2026-10-16T18:46:09.968843Z", + "iopub.status.idle": "2026-10-16T18:46:10.070257Z", + "shell.execute_reply": "2026-10-16T18:46:10.069836Z" } }, "outputs": [ { "data": { - "image/png": "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6ArZZ/z48WqtVOnOlHptu3btQt26dY2PkWLAMslBvsrNQFrRpOAvERERkV3XcStuWMeNiIiIim0dNyIiIiIqfAxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrB4EZERESkEQxuRERERBrhbO0T+Ouvv7Bhwwa4u7vj0UcfRaNGjXLdPyEhAfPnz8exY8fg5+eHgQMHolq1avd9XCIiIiJbZ9UWt9dffx2DBw+Gh4cHoqOj0aJFCyxevDjH/W/evIn69evj+++/R1BQECIiItCkSRNs2rTpvo5LREREpAVWa3E7ceIEPvvsM6xYsQK9e/dW23x8fDBy5Ej069cPzs73ntr06dMRFxeHw4cPq1AmypQpg+HDh+P48eMFPi4RERGRFlitxe3PP/+Ev78/evToYdwmrWSRkZHYvXu3ycecPXsWNWvWNIY20bBhQxXWpOu0oMclIiIi0gKrBbdTp04hJCQETk5Oxm2VK1dWX0+fPm3yMdJNeuDAARXCDFavXm08XkGPm5SUhNjY2Cw3IiIiIltjteAmkwykCzMzLy8vFbji4+NNPka6OyW8NWjQAEOGDEHbtm1VK5zheAU97pQpU9REB8NNgh8RERGRrbHagC9fX181cSAzaelKS0tT95kiXaT//PMPduzYoVrWgoODUa5cOdSpUwcBAQEFPu7bb7+N0aNHZ9mf4Y2IiIhsjdVa3CRsnTt3DomJicZtYWFhxvty07p1azz55JPo2rWrmlHq5uaGpk2bFvi48ngJdZlvRERERLbGasGtb9++SE9Px+zZs43bZsyYgVq1aqmuUEO354svvoidO3eqn1NTU1Vrm4GUA/nkk0/UPtLFae5xiYiIiLTIal2lZcuWxcyZMzFixAhVLFdqtElJD/k+86SBWbNmoWXLlmjVqhUcHBwwfvx4uLi4qK5RmZjwwAMPqPCWn+MS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", + "image/png": "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", "text/plain": [ "
" ] @@ -77,13 +77,13 @@ "name": "stdout", "output_type": "stream", "text": [ - "max_depth=1: train=0.935 test=0.871\n", - "max_depth=2: train=0.975 test=0.889\n", - "max_depth=3: train=0.985 test=0.877\n", - "max_depth=4: train=0.995 test=0.889\n", - "max_depth=5: train=1.000 test=0.889\n", - "max_depth=6: train=1.000 test=0.889\n", - "max_depth=8: train=1.000 test=0.889\n" + "max_depth=1: train=0.942 test=0.865\n", + "max_depth=2: train=0.982 test=0.912\n", + "max_depth=3: train=0.992 test=0.906\n", + "max_depth=4: train=1.000 test=0.895\n", + "max_depth=5: train=1.000 test=0.895\n", + "max_depth=6: train=1.000 test=0.895\n", + "max_depth=8: train=1.000 test=0.895\n" ] } ], @@ -115,10 +115,10 @@ "id": "81a0cd41", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:03.674014Z", - "iopub.status.busy": "2026-10-02T20:37:03.673949Z", - "iopub.status.idle": "2026-10-02T20:37:03.700422Z", - "shell.execute_reply": "2026-10-02T20:37:03.700128Z" + "iopub.execute_input": "2026-10-16T18:46:10.071182Z", + "iopub.status.busy": "2026-10-16T18:46:10.071127Z", + "iopub.status.idle": "2026-10-16T18:46:10.098459Z", + "shell.execute_reply": "2026-10-16T18:46:10.098117Z" } }, "outputs": [ @@ -147,10 +147,10 @@ "id": "06903b36", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:03.701567Z", - "iopub.status.busy": "2026-10-02T20:37:03.701514Z", - "iopub.status.idle": "2026-10-02T20:37:03.758957Z", - "shell.execute_reply": "2026-10-02T20:37:03.758554Z" + "iopub.execute_input": "2026-10-16T18:46:10.099485Z", + "iopub.status.busy": "2026-10-16T18:46:10.099430Z", + "iopub.status.idle": "2026-10-16T18:46:10.160730Z", + "shell.execute_reply": "2026-10-16T18:46:10.160428Z" } }, "outputs": [ @@ -158,10 +158,10 @@ "name": "stdout", "output_type": "stream", "text": [ - "min_samples_leaf=1: train=1.000 test=0.889\n", - "min_samples_leaf=5: train=0.985 test=0.877\n", - "min_samples_leaf=20: train=0.950 test=0.930\n", - "min_samples_leaf=50: train=0.935 test=0.871\n" + "min_samples_leaf=1: train=1.000 test=0.895\n", + "min_samples_leaf=5: train=0.992 test=0.889\n", + "min_samples_leaf=20: train=0.952 test=0.877\n", + "min_samples_leaf=50: train=0.942 test=0.865\n" ] } ], diff --git a/docs/tutorials/tao.ipynb b/docs/tutorials/tao.ipynb index 72f3b9a..1db0883 100644 --- a/docs/tutorials/tao.ipynb +++ b/docs/tutorials/tao.ipynb @@ -29,10 +29,10 @@ "id": "dc4c7dc9", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:04.355963Z", - "iopub.status.busy": "2026-10-02T20:37:04.355755Z", - "iopub.status.idle": "2026-10-02T20:37:05.040225Z", - "shell.execute_reply": "2026-10-02T20:37:05.039845Z" + "iopub.execute_input": "2026-10-16T18:46:10.758125Z", + "iopub.status.busy": "2026-10-16T18:46:10.757923Z", + "iopub.status.idle": "2026-10-16T18:46:11.445714Z", + "shell.execute_reply": "2026-10-16T18:46:11.445269Z" } }, "outputs": [ @@ -40,8 +40,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "native only train=0.855 test=0.808\n", - "after TAO train=0.872 test=0.819\n" + "native only train=0.852 test=0.786\n", + "after TAO train=0.871 test=0.782\n" ] } ], @@ -73,7 +73,7 @@ "id": "85b5493d", "metadata": {}, "source": [ - "Train accuracy is **equal or higher** after refinement (guaranteed with `lambda_=0`) — here it rises from 0.855 to 0.871. Test accuracy improves too (0.808 → 0.813): TAO fixes greedy top-down routing mistakes, which tends to generalize. The structure is unchanged — same nodes, same depth — only the rules inside them." + "Train accuracy is **equal or higher** after refinement (guaranteed with `lambda_=0`) — here it rises from 0.852 to 0.871. Test accuracy is not guaranteed to follow: here it is essentially flat (0.786 → 0.782), since TAO optimizes the training loss. The structure is unchanged — same nodes, same depth — only the rules inside them." ] }, { @@ -94,10 +94,10 @@ "id": "53ae5924", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:05.041443Z", - "iopub.status.busy": "2026-10-02T20:37:05.041332Z", - "iopub.status.idle": "2026-10-02T20:37:05.286896Z", - "shell.execute_reply": "2026-10-02T20:37:05.286585Z" + "iopub.execute_input": "2026-10-16T18:46:11.446847Z", + "iopub.status.busy": "2026-10-16T18:46:11.446745Z", + "iopub.status.idle": "2026-10-16T18:46:11.726260Z", + "shell.execute_reply": "2026-10-16T18:46:11.725932Z" } }, "outputs": [ @@ -105,10 +105,22 @@ "name": "stdout", "output_type": "stream", "text": [ - "lambda= 0.000: train=0.863 test=0.697\n", - "lambda= 0.003: train=0.863 test=0.697\n", - "lambda= 0.010: train=0.856 test=0.700\n", - "lambda= 0.030: train=0.821 test=0.737\n", + "lambda= 0.000: train=0.876 test=0.677\n", + "lambda= 0.003: train=0.876 test=0.677\n", + "lambda= 0.010: train=0.879 test=0.663\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "lambda= 0.030: train=0.843 test=0.707\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "lambda= 0.100: train=0.700 test=0.700\n" ] } @@ -132,7 +144,7 @@ "id": "d2c3b2a0", "metadata": {}, "source": [ - "This is a textbook **bias–variance tradeoff**. At `lambda_=0` the tree overfits — train accuracy is 0.863 but test only 0.697. Raising `lambda_` collapses weak splits, so **train** accuracy falls steadily (0.863 → 0.700). **Test** accuracy first *rises* — up to 0.760 at `lambda_=0.01`, as pruning removes overfit splits and closes the train/test gap — then *falls* once `lambda_` is large enough to underfit (0.700, where train ≈ test). Pick the `lambda_` that maximizes validation accuracy, not the smallest or largest." + "This is a textbook **bias–variance tradeoff**. At `lambda_=0` the tree overfits — train accuracy is 0.876 but test only 0.677. Raising `lambda_` collapses weak splits, so **train** accuracy eventually falls (0.876 → 0.700). **Test** accuracy is noisy at small `lambda_`, then *rises* to 0.707 at `lambda_=0.03` as pruning removes overfit splits and closes the train/test gap, and finally stalls once `lambda_` is large enough to underfit (0.700, where train ≈ test). Pick the `lambda_` that maximizes validation accuracy, not the smallest or largest." ] }, { @@ -151,10 +163,10 @@ "id": "aad2b1b6", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:05.288198Z", - "iopub.status.busy": "2026-10-02T20:37:05.288126Z", - "iopub.status.idle": "2026-10-02T20:37:05.400902Z", - "shell.execute_reply": "2026-10-02T20:37:05.400571Z" + "iopub.execute_input": "2026-10-16T18:46:11.727396Z", + "iopub.status.busy": "2026-10-16T18:46:11.727340Z", + "iopub.status.idle": "2026-10-16T18:46:11.868489Z", + "shell.execute_reply": "2026-10-16T18:46:11.868016Z" } }, "outputs": [ @@ -162,7 +174,13 @@ "name": "stdout", "output_type": "stream", "text": [ - "forest before test=0.798\n", + "forest before test=0.811\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "forest after test=0.808\n" ] } @@ -197,10 +215,10 @@ "id": "b89dadaf", "metadata": { "execution": { - "iopub.execute_input": "2026-10-02T20:37:05.402250Z", - "iopub.status.busy": "2026-10-02T20:37:05.402186Z", - "iopub.status.idle": "2026-10-02T20:37:05.412732Z", - "shell.execute_reply": "2026-10-02T20:37:05.412432Z" + "iopub.execute_input": "2026-10-16T18:46:11.869578Z", + "iopub.status.busy": "2026-10-16T18:46:11.869515Z", + "iopub.status.idle": "2026-10-16T18:46:11.881642Z", + "shell.execute_reply": "2026-10-16T18:46:11.881297Z" } }, "outputs": [ @@ -208,7 +226,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "tao_n_runs=0 test=0.808\n" + "tao_n_runs=0 test=0.786\n" ] } ],