{ "cells": [ { "cell_type": "markdown", "id": "329c8c07", "metadata": {}, "source": [ "# More examples" ] }, { "cell_type": "markdown", "id": "bfbf8fa8-100f-4721-81f0-987702d48411", "metadata": {}, "source": [ "## Importing packages\n", "\n", "In the examples below, we will be using the three main classes `ConformalClassifier`, `ConformalRegressor`, and `ConformalPredictiveSystem` from the `crepes` package, as an alternative to using the classes `WrapClassifier` and `WrapRegressor` in the same package, which was illustrated [here](https://crepes.readthedocs.io/en/latest/crepes_nb_wrap.html). In the examples, we will be using a helper class and functions from `crepes.extras` as well as `NumPy`, `pandas`, `matplotlib` and `sklearn`. " ] }, { "cell_type": "code", "execution_count": 1, "id": "bcb4a887-d50a-4e6f-9476-a8c38dc27b40", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "crepes v. 0.9.0\n" ] } ], "source": [ "import numpy as np\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "\n", "from sklearn.ensemble import RandomForestClassifier, RandomForestRegressor\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.datasets import fetch_openml\n", "\n", "from scipy.stats import kstest\n", "\n", "from crepes import (ConformalClassifier, \n", " ConformalRegressor, \n", " ConformalPredictiveSystem, \n", " __version__)\n", "\n", "from crepes.extras import hinge, margin, binning, DifficultyEstimator\n", "\n", "print(f\"crepes v. {__version__}\")\n", "\n", "np.random.seed(602211023)\n", "np.set_printoptions(legacy='1.25')" ] }, { "cell_type": "markdown", "id": "fcece726-d056-4bef-9d7a-0c5660c18ad3", "metadata": {}, "source": [ "## Conformal classifiers (CC)" ] }, { "cell_type": "markdown", "id": "83facf0e-6b96-4278-984c-14ed9125247a", "metadata": { "tags": [] }, "source": [ "### Importing and splitting a classification dataset" ] }, { "cell_type": "markdown", "id": "84b745e3-6035-486b-9376-777ce3781216", "metadata": {}, "source": [ "Let us import a classification dataset from [www.openml.org](https://www.openml.org)." ] }, { "cell_type": "code", "execution_count": 2, "id": "c6e86963-6481-4da0-968f-1399ccebb705", "metadata": {}, "outputs": [], "source": [ "dataset = fetch_openml(name=\"gas-drift\", parser=\"auto\")\n", "\n", "X = dataset.data.values.astype(float)\n", "y = dataset.target.values" ] }, { "cell_type": "markdown", "id": "1f701e0c-e5f4-4c6e-8cc9-176a3bedc5f2", "metadata": {}, "source": [ "We now split the dataset into a training and a test set, and further split the training set into a proper training set and a calibration set." ] }, { "cell_type": "code", "execution_count": 3, "id": "085ecd58-bf24-49ad-bee5-b6e84ae19857", "metadata": {}, "outputs": [], "source": [ "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5)\n", "\n", "X_prop_train, X_cal, y_prop_train, y_cal = train_test_split(X_train, y_train,\n", " test_size=0.25)" ] }, { "cell_type": "markdown", "id": "a942f4e9-a5a9-449e-82af-493caa675698", "metadata": {}, "source": [ "### Standard conformal classifier" ] }, { "cell_type": "markdown", "id": "d34b9a3d-18b6-4a0d-bec7-1974c24badcd", "metadata": {}, "source": [ "Let us first create and fit a random forest in the usual way (using the proper training set only):" ] }, { "cell_type": "code", "execution_count": 4, "id": "6174c776-4299-4961-8180-d5b6c0aa17be", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
RandomForestClassifier(n_estimators=500, n_jobs=-1)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "RandomForestClassifier(n_estimators=500, n_jobs=-1)" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rf = RandomForestClassifier(n_jobs=-1, n_estimators=500)\n", "\n", "rf.fit(X_prop_train, y_prop_train)" ] }, { "cell_type": "markdown", "id": "d38c4bb1-4f5d-4254-ac11-7ed1ec06d850", "metadata": {}, "source": [ "Let us also calculate non-conformity scores for the calibration set using the `hinge` function imported from `crepes.extras`, which takes predicted probabilities, class names and labels as input:" ] }, { "cell_type": "code", "execution_count": 5, "id": "6e5fb971-e432-48c4-8aa3-e8cc344a5398", "metadata": {}, "outputs": [], "source": [ "alphas_cal = hinge(rf.predict_proba(X_cal), rf.classes_, y_cal)" ] }, { "cell_type": "markdown", "id": "19dc3baa-114e-4f72-8230-75f0dc656e76", "metadata": { "tags": [] }, "source": [ "Using the non-conformity scores, we create and fit a standard conformal classifier by:" ] }, { "cell_type": "code", "execution_count": 6, "id": "65835d5c-158e-4001-88b6-fc9238ab0f1e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalClassifier(fitted=True, mondrian=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cc_std = ConformalClassifier()\n", "\n", "cc_std.fit(alphas_cal)\n", "\n", "display(cc_std)" ] }, { "cell_type": "markdown", "id": "4241db63-9b5b-4e38-acc1-dc056eaac741", "metadata": { "tags": [] }, "source": [ "In order to make predictions for a test set, we need non-conformity scores for this too; note that class names and labels should not be provided in this case:" ] }, { "cell_type": "code", "execution_count": 7, "id": "c72b7daa-40c2-427b-b03c-76542ff8cc89", "metadata": {}, "outputs": [], "source": [ "alphas_test = hinge(rf.predict_proba(X_test))" ] }, { "cell_type": "markdown", "id": "63258945-bab1-4214-a476-590be02a8106", "metadata": { "tags": [] }, "source": [ "We obtain p-values for the test set from the non-conformity scores by:" ] }, { "cell_type": "code", "execution_count": 8, "id": "94ae0753-58d4-4639-b9a9-d2dc0c2ea076", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[7.11853998e-02, 6.81623163e-04, 7.51952414e-05, 7.22822111e-03,\n", " 1.83551541e-03, 1.25354912e-03],\n", " [7.69995483e-04, 4.02198309e-01, 3.28246348e-03, 8.46337362e-04,\n", " 1.03880711e-03, 1.29555038e-03],\n", " [1.65747617e-03, 1.16900791e-03, 2.02917868e-04, 5.02167131e-05,\n", " 7.65836044e-01, 1.70578620e-03],\n", " ...,\n", " [1.30852359e-03, 1.38763636e-03, 2.20624808e-03, 4.54321090e-03,\n", " 2.99559728e-03, 2.06218609e-01],\n", " [1.89321540e-03, 1.75937091e-03, 1.64400289e-03, 6.98791143e-03,\n", " 2.22087512e-03, 1.16866012e-01],\n", " [2.90605130e-03, 1.94900613e-03, 1.74838116e-03, 3.30855703e-03,\n", " 7.68918667e-02, 7.03350329e-03]])" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_std.predict_p(alphas_test)" ] }, { "cell_type": "markdown", "id": "1aecbf56-7e46-4fb9-bdec-18929ad56f35", "metadata": {}, "source": [ "If we want only the p-values for the correct labels, we need to provide the class names together with the labels and set `all_classes=False`:" ] }, { "cell_type": "code", "execution_count": 9, "id": "3edb33c9-3c62-4cef-8be0-580bccf06d04", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "array([0.06903153, 0.40886435, 0.74415504, ..., 0.20719285, 0.11680768,\n", " 0.07797522])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p_values = cc_std.predict_p(alphas_test, all_classes=False, classes=rf.classes_, y=y_test)\n", "display(p_values)" ] }, { "cell_type": "markdown", "id": "abe4feff-39e5-4fa3-9137-1d3c5a7d2ebc", "metadata": {}, "source": [ "Let us take a look at how the p-values are distributed. From the visual inspection they may appear be approximaly uniformly distributed; this is however not guaranteed, since the p-values are not independent (see further below for semi-online conformal classifiers, for which this indeed holds). It is hence not very surprising if the Kolmogorov-Smirnov test allows us to reject that the p-values are sampled from a uniform distribution. " ] }, { "cell_type": "code", "execution_count": 10, "id": "901f1bd3-4c79-45bf-9fa5-5d8cf0232096", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.0006403345328411814\n" ] } ], "source": [ "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "e6c7f868-3c37-4925-9c19-009bb21d5c6b", "metadata": { "tags": [] }, "source": [ "We can also obtain predictions sets, i.e., binary vectors indicating the presence (1) or absence (0) of each class label, for some specified confidence level (the default is 0.95):" ] }, { "cell_type": "code", "execution_count": 11, "id": "fc8a42aa-1ae4-40e1-a379-05793e98c0db", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1, 0, 0, 0, 0, 0],\n", " [0, 1, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 1, 0],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 1, 0]])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_std.predict_set(alphas_test, confidence=0.95)" ] }, { "cell_type": "markdown", "id": "e548dbc1-367a-41c5-b06a-bc3f952e0601", "metadata": { "tags": [] }, "source": [ "We may also evaluate the predictions; here using all available metrics, which is the default:" ] }, { "cell_type": "code", "execution_count": 12, "id": "83f3ffb9-323f-48ed-b561-5fd937f1a0e0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.0060388209920920755,\n", " 'avg_c': 1.0031631919482387,\n", " 'one_c': 0.9939611790079079,\n", " 'empty': 0.0014378145219266715,\n", " 'ks_test': 0.0010132423204891204,\n", " 'time_fit': 4.76837158203125e-07,\n", " 'time_evaluate': 0.23072171211242676}" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_std.evaluate(alphas_test, rf.classes_, y_test, confidence=0.99)" ] }, { "cell_type": "markdown", "id": "db096dcf-52b8-4f48-9baf-7757e7b81446", "metadata": {}, "source": [ "Alternatively, we could calculate non-conformity scores using the `margin` function, also imported from `crepes.extras`, which similar to `hinge`, takes predicted probabilities, class names and labels as input:" ] }, { "cell_type": "code", "execution_count": 13, "id": "b29132bb-2288-44c7-8902-d9a58ccb27bf", "metadata": {}, "outputs": [], "source": [ "alphas_margin_cal = margin(rf.predict_proba(X_cal), rf.classes_, y_cal)" ] }, { "cell_type": "markdown", "id": "23f93539-f1dc-44c9-83f6-ece978e006a2", "metadata": { "tags": [] }, "source": [ "Using the new non-conformity scores, we create and fit a standard conformal classifier by:" ] }, { "cell_type": "code", "execution_count": 14, "id": "8a3d95bc-bdc5-4ce6-84d0-667c6c6e033a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalClassifier(fitted=True, mondrian=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cc_margin_std = ConformalClassifier()\n", "\n", "cc_margin_std.fit(alphas_margin_cal)\n", "\n", "display(cc_margin_std)" ] }, { "cell_type": "markdown", "id": "876f9bf0-eb8f-426c-ad7c-4fac517bdfe0", "metadata": { "tags": [] }, "source": [ "In order to make predictions for the test set, we again need the non-conformity scores for this too:" ] }, { "cell_type": "code", "execution_count": 15, "id": "cda1a740-b58b-4070-b47e-6ceafd021b2c", "metadata": {}, "outputs": [], "source": [ "alphas_margin_test = margin(rf.predict_proba(X_test))" ] }, { "cell_type": "markdown", "id": "cfd53a96-8bdb-464e-a0b5-512ed5c40307", "metadata": { "tags": [] }, "source": [ "Let us again evaluate the predictions:" ] }, { "cell_type": "code", "execution_count": 16, "id": "8f56fb22-134f-45b3-bd5b-12c08e1e7c53", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.005032350826743359,\n", " 'avg_c': 1.004744787922358,\n", " 'one_c': 0.9959741193386054,\n", " 'empty': 0.0,\n", " 'ks_test': 0.0017738716077521192,\n", " 'time_fit': 7.152557373046875e-07,\n", " 'time_evaluate': 0.23145365715026855}" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_margin_std.evaluate(alphas_margin_test, rf.classes_, y_test, confidence=0.99)" ] }, { "cell_type": "markdown", "id": "821400bf-bbeb-45d6-81cc-09c6e5eee186", "metadata": {}, "source": [ "### Mondrian conformal classifiers" ] }, { "cell_type": "markdown", "id": "21b9f68d-22c0-4029-b200-e1effb434326", "metadata": {}, "source": [ "To control the error level across different groups of objects of interest, we may use so-called Mondrian conformal classifiers.\n", "A Mondrian conformal classifier is formed by providing the names of the categories\n", "as an additional argument, named `bins`, for the `calibrate` method.\n", "\n", "We can form the Mondrian categories in any way we like, as long as we only\n", "use information that is available for both calibration and test instances;\n", "this means that we may not use the target values for this purpose, since these will \n", "typically not be available for the test instances. \n", "\n", "For illustration, we will use the predicted labels as the categories:" ] }, { "cell_type": "code", "execution_count": 17, "id": "b3267179-9662-4dc0-8f06-2a6b6f62ff07", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalClassifier(fitted=True, mondrian=True)" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bins_cal = rf.predict(X_cal)\n", "\n", "cc_mond = ConformalClassifier()\n", "\n", "cc_mond.fit(alphas_cal, bins_cal)" ] }, { "cell_type": "markdown", "id": "9106e639-40bc-4fdb-9d2c-873dfececfef", "metadata": { "tags": [] }, "source": [ "To obtain p-values for the test objects, we need to provide bins for these too:" ] }, { "cell_type": "code", "execution_count": 18, "id": "0808e91a-6fb3-4a9e-a25c-87d5309aad0f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.67815127e-02, 1.69734886e-03, 2.50746844e-03, 1.63394165e-04,\n", " 2.46329483e-03, 5.04112905e-05],\n", " [4.83370625e-03, 2.46841752e-01, 3.45797934e-03, 4.22414243e-03,\n", " 2.12753306e-04, 4.09035343e-03],\n", " [2.27412549e-03, 5.09548038e-03, 7.51853959e-04, 9.92062719e-04,\n", " 6.74532915e-01, 4.36909349e-03],\n", " ...,\n", " [1.45080170e-03, 3.81770988e-03, 1.25495454e-03, 1.04800655e-02,\n", " 1.09056431e-02, 3.38221369e-01],\n", " [1.17457748e-03, 3.23834150e-04, 1.03677912e-03, 1.07129487e-02,\n", " 1.40005882e-03, 1.75214512e-01],\n", " [6.45127586e-03, 5.60947271e-03, 7.53524791e-03, 6.73571520e-03,\n", " 8.61769871e-02, 1.32702940e-02]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "bins_test = rf.predict(X_test)\n", "\n", "p_values = cc_mond.predict_p(alphas_test, bins_test)\n", "\n", "display(p_values)" ] }, { "cell_type": "markdown", "id": "f2b1a75e-2db5-4737-ab6b-5d095d324d8a", "metadata": { "tags": [] }, "source": [ "Similarly, prediction sets are obtained by:" ] }, { "cell_type": "code", "execution_count": 19, "id": "6525c3e5-0f33-449a-859b-ce5e2808da9e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0, 0, 0, 0, 0, 0],\n", " [0, 1, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 1, 0],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 0, 0]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "prediction_sets = cc_mond.predict_set(alphas_test, bins_test, confidence=0.8)\n", "\n", "display(prediction_sets)" ] }, { "cell_type": "markdown", "id": "05351cb3-bc63-4a65-a282-88428411f21f", "metadata": { "tags": [] }, "source": [ "Bins also have to be provided for the test objects when evaluating a Mondrian conformal classifier:" ] }, { "cell_type": "code", "execution_count": 20, "id": "f8b65993-fb96-4c17-af20-12efbad88c82", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.08828181164629767,\n", " 'avg_c': 0.9128684399712437,\n", " 'one_c': 0.9128684399712437,\n", " 'empty': 0.08713156002875629,\n", " 'ks_test': 0.00016153838740705104,\n", " 'time_fit': 1.6689300537109375e-06,\n", " 'time_evaluate': 0.1980743408203125}" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_mond.evaluate(alphas_test, rf.classes_, y_test, bins_test, 0.9)" ] }, { "cell_type": "markdown", "id": "4f29300c-3e07-4f00-a4db-cbf0d70682ae", "metadata": {}, "source": [ "### Class-conditional conformal classifiers" ] }, { "cell_type": "markdown", "id": "65e440ac-5d2d-44f4-ade7-2052d5cc4c61", "metadata": {}, "source": [ "Class-conditional conformal classifiers is a special type of Mondrian conformal classifiers where the categories simply are defined by the class labels.\n", "The fitting is hence straightforward:" ] }, { "cell_type": "code", "execution_count": 21, "id": "63456505-ed51-4357-9dbe-3c189a717d50", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalClassifier(fitted=True, mondrian=True)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cc_class_cond = ConformalClassifier()\n", "\n", "cc_class_cond.fit(alphas_cal, y_cal)\n", "\n", "display(cc_class_cond)" ] }, { "cell_type": "markdown", "id": "4bc47da2-0223-42bb-adeb-246851dc7676", "metadata": {}, "source": [ "However, the test objects need special treatment since we do not know to which categories they belong. Below we show how to obtain the prediction sets:" ] }, { "cell_type": "code", "execution_count": 22, "id": "9f8b3a8d-aaf0-4a79-bfce-bf9292b148d3", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "array([[0, 0, 0, 0, 0, 0],\n", " [0, 1, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 1, 0],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 0]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "prediction_set = np.array([\n", " cc_class_cond.predict_set(alphas_test,\n", " np.full(len(alphas_test),\n", " rf.classes_[c]),\n", " confidence=0.9)[:, c]\n", " for c in range(len(rf.classes_))]).T\n", "\n", "display(prediction_set)" ] }, { "cell_type": "markdown", "id": "961f94ef-5a10-4589-bb12-4a655818c903", "metadata": {}, "source": [ "For easy handling of class-conditional conformal classifiers, you are advised to consider using the class `WrapClassifier`, which is illustrated [here](https://crepes.readthedocs.io/en/latest/crepes_nb_wrap.html)." ] }, { "cell_type": "markdown", "id": "74c70ec2-a291-49e3-89f0-01a991c82f6b", "metadata": { "tags": [] }, "source": [ "### Semi-online conformal classifiers" ] }, { "cell_type": "markdown", "id": "74bc4545-3345-45f8-beb9-ae4238eab0a2", "metadata": { "tags": [] }, "source": [ "The above conformal classifiers are fitted once using the provided calibration set. In case we are receiving the correct label for each test object immediately after making a prediction, we may consider the option of employing *online calibration*, i.e., continuously updating the calibration set. This is achieved by using the methods `predict_p_online` and `predict_set_online`, and can also be employed for the method `evaluate`. " ] }, { "cell_type": "markdown", "id": "7fd43989-0a2b-4d8f-ab63-8a4a6b1ba0b2", "metadata": { "tags": [] }, "source": [ "#### Online calibration with a fitted conformal classifier" ] }, { "cell_type": "markdown", "id": "ae4894c3-e897-413f-8807-0ab31bc0aa86", "metadata": {}, "source": [ "Here we will obtain p-values computed in an online fashion for the above fitted standard conformal classifier. Note that in addition to the non-conformity scores for the test objects, we also need to provide the class names and correct labels." ] }, { "cell_type": "code", "execution_count": 23, "id": "4a4fe333-0058-46f6-a6f5-b4c449075a8a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[7.03496206e-02, 3.26291149e-04, 1.20839403e-03, 7.10008218e-03,\n", " 1.89501070e-03, 2.00591859e-03],\n", " [4.84015535e-04, 4.11804656e-01, 3.16568852e-03, 1.08488224e-03,\n", " 4.04066328e-04, 1.35227297e-03],\n", " [1.27639050e-03, 1.02906101e-03, 2.65614250e-04, 5.60501827e-04,\n", " 7.73156018e-01, 1.63236994e-03],\n", " ...,\n", " [3.88178234e-04, 4.15242064e-04, 5.32165064e-04, 2.12132015e-03,\n", " 9.71968577e-04, 1.95695446e-01],\n", " [5.14196991e-04, 5.24863027e-04, 4.00023514e-04, 2.92939004e-03,\n", " 5.20350239e-04, 1.09893314e-01],\n", " [1.01563077e-03, 4.97778204e-04, 4.86513714e-04, 1.00895998e-03,\n", " 6.64261107e-02, 3.23908096e-03]])" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_std.predict_p_online(alphas_test, rf.classes_, y_test)" ] }, { "cell_type": "code", "execution_count": 24, "id": "a80da34e-1753-4989-aa5f-91fec7468269", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[5.44635675e-02, 2.63759579e-03, 2.52506734e-03, 3.80470638e-03,\n", " 2.57716493e-03, 2.47015068e-03],\n", " [4.98036676e-04, 3.79600838e-01, 3.13976689e-04, 4.05794154e-04,\n", " 5.40015122e-04, 4.09819455e-04],\n", " [5.73602264e-04, 3.68361230e-04, 3.99284233e-04, 2.58216542e-04,\n", " 7.82910155e-01, 2.51742639e-04],\n", " ...,\n", " [2.86212177e-04, 2.96816199e-04, 2.50256022e-04, 1.10297473e-03,\n", " 4.10424600e-04, 1.87963683e-01],\n", " [1.14720370e-03, 1.11185054e-03, 1.14160528e-03, 1.49979666e-03,\n", " 1.07679511e-03, 9.27042232e-02],\n", " [1.29637172e-03, 1.31100052e-03, 1.37545421e-03, 1.44664456e-03,\n", " 5.93376897e-02, 1.78404656e-03]])" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_margin_std.predict_p_online(alphas_margin_test, rf.classes_, y_test)" ] }, { "cell_type": "code", "execution_count": 25, "id": "f98fa6ee-b561-4f84-b35b-184ed460c4a1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.48059805e-02, 6.71703952e-04, 2.48568236e-03, 6.84500399e-04,\n", " 2.67837470e-03, 5.33002239e-04],\n", " [2.31184317e-03, 2.40587298e-01, 3.29967430e-03, 5.09420132e-03,\n", " 3.61705759e-03, 2.74639805e-03],\n", " [3.92011815e-03, 3.52331145e-03, 5.10723260e-03, 2.91507800e-04,\n", " 7.34407027e-01, 4.78049603e-03],\n", " ...,\n", " [3.18338047e-04, 2.83669840e-04, 7.22558772e-04, 2.00569828e-03,\n", " 2.24302949e-03, 2.96396627e-01],\n", " [3.32280765e-04, 1.09261117e-04, 2.35754573e-04, 2.37650421e-03,\n", " 1.73951595e-04, 1.37069775e-01],\n", " [2.58686922e-03, 1.87851604e-03, 1.95985352e-03, 2.74904103e-03,\n", " 7.44906695e-02, 8.16679479e-03]])" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_mond.predict_p_online(alphas_test, rf.classes_, y_test, bins_test)" ] }, { "cell_type": "markdown", "id": "d6ba9824-4614-4173-bbde-b23331f41a95", "metadata": {}, "source": [ "If we want only the p-values for the correct labels, when can set `all_classes=False`: " ] }, { "cell_type": "code", "execution_count": 26, "id": "616ed027-7c37-4a47-b9cb-e4be95e4ee83", "metadata": { "scrolled": true }, "outputs": [], "source": [ "p_values = cc_std.predict_p_online(alphas_test, rf.classes_, y_test, all_classes=False)" ] }, { "cell_type": "markdown", "id": "b9746d7e-da54-48ef-a26f-c7036b5ce3ee", "metadata": {}, "source": [ "Let us take a look at how the p-values are distributed. In contrast to when using standard inductive conformal classifiers, we now expect the p-values to be distributed uniformly, since online calibration is employed. Hence, this should only rarely be rejected by the Kolmogorov-Smirnov test." ] }, { "cell_type": "code", "execution_count": 27, "id": "fc9788f7-97a4-4973-8919-a44505d73dcb", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.353471098223197\n" ] } ], "source": [ "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "code", "execution_count": 28, "id": "7b542bbf-8cb7-4689-836b-ca102a381d9f", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.554108159857639\n" ] } ], "source": [ "p_values = cc_margin_std.predict_p_online(alphas_margin_test, rf.classes_, y_test, all_classes=False)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "code", "execution_count": 29, "id": "88beaef5-1d20-4234-a3cf-0f1f7f88b4df", "metadata": {}, "outputs": [ { "data": { "image/png": "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1AcffHBLGQcPHqwtW7Zo8eLF+vnnn/Xwww/r3nvv1dGjR2/p5wIoWlytDgDA8VSrVk0ffPCBnJycVK9ePe3fv18ffPCBhg4dmmPb/v37KywsTFevXpWXl5eSkpL07bff6osvvjC3efnll83/XaNGDT3//PNasmSJXnzxxXzlO378uBYtWqQzZ86ocuXKkqRRo0Zp9erVmjt3rv7zn//k6+cCKHo4IgSg0LVu3VpOTk7mODg4WEePHtW///1vlSpVyvyKiYlRt27d5OrqqpUrV0qSvvjiC5UuXVqhoaHm65ctW6Y777xTFStWVKlSpfTKK68oJiYm3/l2794twzBUt27dbHk2bNig48eP5/+NAyhyOCIEoMgIDw9Xnz59zHHlypXl6uqqXr16aeHCherbt68WLlyoPn36yNX1+j9f27dvV9++fTVu3Dh17txZPj4+Wrx4sd5///0b/h5nZ+cc1yT9+ZqirKwsubi4KCoqSi4uLtm2++N0HAD7QBECUOi2b9+eY1ynTh35+vrK19c3x/b9+/dXaGioDh48qHXr1unNN980v7dlyxb5+/tr7Nix5typU6f+9veXL19esbGx5jgzM1MHDhxQhw4dJEnNmzdXZmam4uLi1LZt23y9RwDFA6fGABS606dPKyIiQr/88osWLVqkSZMm6bnnnrvh9u3atZOfn5/69++vGjVqqHXr1ub3ateurZiYGC1evFjHjx/XxIkTtWLFir/9/R07dtS3336rb7/9VocPH9awYcN06dIl8/t169Y1r01avny5Tp48qZ9++knvvPOOVq1adcvvH0DRQRECUOjCwsJ07do1tWzZUk8//bSeeeYZPfHEEzfc3snJSY888oj27dun/v37Z/tejx49NHLkSA0fPlzNmjXT1q1b9corr/zt73/sscc0cOBAhYWFqV27dgoICDCPBv1h7ty5CgsL0/PPP6969erp/vvv144dO1StWrX8v3EARY6TkdvDOwDARtq3b69mzZrpww8/tDoKAHBECAAAOC6KEAAAcFicGgMAAA6LI0IAAMBhUYQAAIDDoggBAACHRRECAAAOiyIEAAAcFkUIAAA4LIoQAABwWBQhAADgsChCAADAYf0/nwkmQLlLGy8AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.1155019010434083\n" ] } ], "source": [ "p_values = cc_mond.predict_p_online(alphas_test, rf.classes_, y_test, bins_test, all_classes=False)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "768010f7-b295-4c4d-8124-e350777faea9", "metadata": {}, "source": [ "Similarly, we can obtain prediction sets based on the p-values computed online, which are compared to the specified level of confidence:" ] }, { "cell_type": "code", "execution_count": 30, "id": "f47f4423-74c4-4dee-a9c9-1958759e1e7a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1, 0, 0, 0, 0, 0],\n", " [0, 1, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 1, 0],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 1, 0]])" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_std.predict_set_online(alphas_test, rf.classes_, y_test)" ] }, { "cell_type": "markdown", "id": "d30039f8-89e4-4ad3-8a26-e447885c66bd", "metadata": {}, "source": [ "By default, the test objects and labels are sequentially added to the existing calibration set, i.e., the one used when fitting the conformal classifier. If we would like the original calibration set to be ignored, we can set the `warm_start` option to `False`. Note that few (if any) class labels will be excluded from the initial prediction sets, before we have a sufficiently large calibration set to allow for excluding labels at the specified level of confidence." ] }, { "cell_type": "code", "execution_count": 31, "id": "1eba0b16-b3c3-4080-87c0-9334cac979af", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1, 1, 1, 1, 1, 1],\n", " [1, 1, 1, 1, 1, 1],\n", " [1, 1, 1, 1, 1, 1],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 1, 0]])" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_mond.predict_set_online(alphas_test, rf.classes_, y_test, bins_test, \n", " confidence=0.99, warm_start=False)" ] }, { "cell_type": "markdown", "id": "2363da50-6e6e-4554-ad5b-5a142b8b0eb8", "metadata": {}, "source": [ "We may also evaluate the conformal classifier using online calibration, by specifying `online=True` for the `evaluate` method:" ] }, { "cell_type": "code", "execution_count": 32, "id": "54a1d89d-eae1-4f78-9c9a-73d6fef603fe", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.00833932422717465,\n", " 'avg_c': 0.9962616822429906,\n", " 'one_c': 0.9962616822429906,\n", " 'empty': 0.003738317757009346,\n", " 'ks_test': 0.47482742902948305,\n", " 'time_fit': 7.152557373046875e-07,\n", " 'time_evaluate': 0.31452107429504395}" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_margin_std.evaluate(alphas_margin_test, rf.classes_, y_test, \n", " confidence=0.99, online=True)" ] }, { "cell_type": "markdown", "id": "29f2c466-ff2e-48bd-8b24-035d572a2bcf", "metadata": {}, "source": [ "Again, we may consider ignoring the original calibration set by setting `warm_start=False`:" ] }, { "cell_type": "code", "execution_count": 33, "id": "96f75ffe-4db5-4f4a-9cbf-d7d700c1924c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.009920920201293981,\n", " 'avg_c': 1.0294751976994967,\n", " 'one_c': 0.982314881380302,\n", " 'empty': 0.006326383896477355,\n", " 'ks_test': 0.9563547223369226,\n", " 'time_fit': 7.152557373046875e-07,\n", " 'time_evaluate': 0.28128695487976074}" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_margin_std.evaluate(alphas_margin_test, rf.classes_, y_test, \n", " confidence=0.99, online=True, warm_start=False)" ] }, { "cell_type": "markdown", "id": "4cae6e04-0d46-4031-9dc7-d829bf395cd5", "metadata": { "tags": [] }, "source": [ "#### Online calibration without an initial calibration set" ] }, { "cell_type": "markdown", "id": "d2d16b2f-33a3-4398-984b-62c25320a63a", "metadata": {}, "source": [ "Since the calibration set is incrementally extended during online calibration, we may consider starting with an empty calibration set; this allows us to use the full training set when fitting the conformal classifier. " ] }, { "cell_type": "code", "execution_count": 34, "id": "64bca44b-ef58-4a22-b51e-2bd940fceb2b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
RandomForestClassifier(n_estimators=500, n_jobs=-1)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "RandomForestClassifier(n_estimators=500, n_jobs=-1)" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rf_full = RandomForestClassifier(n_jobs=-1, n_estimators=500)\n", "\n", "rf_full.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "id": "f9705d99-71fe-453c-94e0-1f835b8d9ab4", "metadata": {}, "source": [ "Let us compute non-conformity scores for the test set using the model trained on the full training set:" ] }, { "cell_type": "code", "execution_count": 35, "id": "7c72d8f3-6d43-42f8-959c-ef619a507aa0", "metadata": {}, "outputs": [], "source": [ "alphas_test = hinge(rf_full.predict_proba(X_test), rf.classes_)" ] }, { "cell_type": "markdown", "id": "99547666-71ca-4a57-9014-79efdb25da79", "metadata": {}, "source": [ "We may now create a conformal classifier, but this time without fitting a calibration set:" ] }, { "cell_type": "code", "execution_count": 36, "id": "cad46f46-df73-4feb-8e72-239a06fea763", "metadata": {}, "outputs": [], "source": [ "cc_full = ConformalClassifier()" ] }, { "cell_type": "markdown", "id": "ddfcaba8-c77d-41e1-be3a-d97b072fbc7e", "metadata": {}, "source": [ "We may now obtain prediction sets while sequentially updating the calibration set:" ] }, { "cell_type": "code", "execution_count": 37, "id": "2c5f32a4-7047-4e70-b01b-5edd61d4ea66", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1, 1, 1, 1, 1, 1],\n", " [1, 1, 1, 1, 0, 1],\n", " [1, 0, 1, 1, 1, 0],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 0, 0]])" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_full.predict_set_online(alphas_test, rf.classes_, y_test, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "da708f6e-2097-47c3-87b9-83e2b9b0d6fe", "metadata": {}, "source": [ "Mondrian classification is conducted by also providing the categories for the test set:" ] }, { "cell_type": "code", "execution_count": 38, "id": "ddd4cf0f-d891-40a7-8447-a2343383e851", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1, 1, 1, 1, 1, 1],\n", " [1, 1, 1, 1, 1, 0],\n", " [1, 1, 1, 1, 1, 1],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 0, 0]])" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bins_test = rf_full.predict(X_test)\n", "\n", "cc_full.predict_set_online(alphas_test, rf.classes_, y_test, bins_test,\n", " confidence=0.9)" ] }, { "cell_type": "markdown", "id": "dbd7b3c7-a85f-4a9e-a33e-901548c8f790", "metadata": {}, "source": [ "Let us investigate the coverage and prediction set size for each class:" ] }, { "cell_type": "code", "execution_count": 39, "id": "946fb711-70c2-4f6d-9157-22d6d5780c6e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Class: 1 Coverage: 0.9027 Size: 0.9206\n", "Class: 2 Coverage: 0.9001 Size: 0.9164\n", "Class: 3 Coverage: 0.9021 Size: 0.9359\n", "Class: 4 Coverage: 0.9020 Size: 0.9195\n", "Class: 5 Coverage: 0.9062 Size: 0.9216\n", "Class: 6 Coverage: 0.9043 Size: 0.9285\n" ] } ], "source": [ "prediction_sets = cc_full.predict_set_online(alphas_test, rf.classes_, y_test,\n", " bins_test, confidence=0.9)\n", "\n", "for i, c in enumerate(rf.classes_):\n", " selection = y_test == c\n", " coverage = np.sum(prediction_sets[selection][:,i])/np.sum(selection)\n", " size = np.sum(prediction_sets[selection])/np.sum(selection)\n", " print(f\"Class: {c} Coverage: {coverage:.4f} Size: {size:.4f}\")" ] }, { "cell_type": "markdown", "id": "85193a5c-4a88-4a55-aafa-3db327056064", "metadata": {}, "source": [ "We can use `predict_p_online` to get the p-values:" ] }, { "cell_type": "code", "execution_count": 40, "id": "ab3096ce-2103-434a-9d03-a965e546d480", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.07870199, 0.09473235, 0.55178404, ..., 0.32500334, 0.09549978,\n", " 0.09122852])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.7179206900620947\n" ] } ], "source": [ "p_values = cc_full.predict_p_online(alphas_test, rf.classes_, y_test, \n", " bins=bins_test, all_classes=False)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "bb935548-c8b3-4377-9ae7-9dca25b03114", "metadata": {}, "source": [ "We may also evaluate the conformal classifier using online calibration, by specifying `online=True` for the `evaluate` method:" ] }, { "cell_type": "code", "execution_count": 41, "id": "eeb95010-101a-44ae-bfdb-5c1937b1f918", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.09877785765636238,\n", " 'avg_c': 0.904529115744069,\n", " 'one_c': 0.901078360891445,\n", " 'empty': 0.09791516894320633,\n", " 'ks_test': 0.9125050366201575,\n", " 'time_fit': None,\n", " 'time_evaluate': 0.2867584228515625}" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_full.evaluate(alphas_test, rf.classes_, y_test, confidence=0.9, online=True)" ] }, { "cell_type": "markdown", "id": "e97e0ea6-927f-40a5-ab1d-62a5858a7398", "metadata": {}, "source": [ "Similar for Mondrian classification, where we provide the categories:" ] }, { "cell_type": "code", "execution_count": 42, "id": "59c6609f-850f-4cb2-9c8a-d5a28db5487c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.09805895039539902,\n", " 'avg_c': 0.9216391085549964,\n", " 'one_c': 0.8970524802300504,\n", " 'empty': 0.09676491732566499,\n", " 'ks_test': 0.4291756869646982,\n", " 'time_fit': None,\n", " 'time_evaluate': 0.22908687591552734}" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cc_full.evaluate(alphas_test, rf.classes_, y_test, bins_test, confidence=0.9, \n", " online=True)" ] }, { "cell_type": "markdown", "id": "3fa11c93-186a-4f00-93a0-ff7824cd86b9", "metadata": { "tags": [] }, "source": [ "### Out-of-bag calibration" ] }, { "cell_type": "markdown", "id": "960d94fd-0bcd-4119-9cb3-eaf8675bab50", "metadata": { "tags": [] }, "source": [ "For conformal classifiers that employ learners that use bagging, like random forests, we may consider an alternative strategy to dividing the original training set into a proper training and calibration set; we may use the out-of-bag (OOB) predictions, which allow us to use the full training set for both model building and calibration. It should be noted that this strategy does not come with the theoretical validity guarantee of the above (inductive) conformal classifiers, due to that calibration and test instances are not handled in exactly the same way. In practice, however, conformal classifiers based on out-of-bag predictions rarely fail to meet the coverage requirements." ] }, { "cell_type": "markdown", "id": "72c4b096-36c0-4efd-8f52-8d201c74a5f5", "metadata": { "tags": [] }, "source": [ "#### Standard conformal classifiers with out-of-bag calibration" ] }, { "cell_type": "markdown", "id": "ec0ecb66-c588-4875-93bd-503a44e2693b", "metadata": { "tags": [] }, "source": [ "Let us first generate a model from the full training set, making sure the learner has an attribute `oob_decision_function_`, which e.g. is the case for a `RandomForestClassifier` if `oob_score` is set to `True` when created." ] }, { "cell_type": "code", "execution_count": 43, "id": "c88a4d32-c7f2-4778-b067-3fc283bd4688", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
RandomForestClassifier(n_estimators=500, n_jobs=-1, oob_score=True)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "RandomForestClassifier(n_estimators=500, n_jobs=-1, oob_score=True)" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rf = RandomForestClassifier(n_jobs=-1, n_estimators=500, oob_score=True)\n", "\n", "rf.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "id": "2c9f2f1d-d09e-4c19-9486-f6e0baa88e25", "metadata": {}, "source": [ "We may now obtain a standard conformal regressor using OOB predictions:" ] }, { "cell_type": "code", "execution_count": 44, "id": "f37ae25f-0f48-414e-82ff-8238e5ed5b8c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalClassifier(fitted=True, mondrian=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "alphas_oob = hinge(rf.oob_decision_function_, rf.classes_, y_train)\n", "\n", "cc_std_oob = ConformalClassifier()\n", "\n", "cc_std_oob.fit(alphas_oob)\n", "\n", "display(cc_std_oob)" ] }, { "cell_type": "markdown", "id": "27a109c4-bd2a-47f2-a82e-698c11d48505", "metadata": {}, "source": [ "... and use it to get prediction sets for the test set:" ] }, { "cell_type": "code", "execution_count": 45, "id": "e04dec43-0ca5-4433-8b12-fd151a4110d4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1, 0, 0, 0, 0, 0],\n", " [0, 1, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 1, 0],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 1, 0]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "alphas_test = hinge(rf.predict_proba(X_test))\n", "\n", "prediction_sets_oob = cc_std_oob.predict_set(alphas_test)\n", "\n", "display(prediction_sets_oob)" ] }, { "cell_type": "markdown", "id": "700fb351-bb1a-47d7-bc66-f07692fceedc", "metadata": {}, "source": [ "#### Mondrian conformal classifiers with out-of-bag calibration" ] }, { "cell_type": "markdown", "id": "ab8a6825-a918-4267-b703-dad7bc11f6a2", "metadata": {}, "source": [ "Using out-of-bag calibration works equally well for Mondrian conformal classifiers. Here we form two categories by binning the values of the first feature using a certain threshold:" ] }, { "cell_type": "code", "execution_count": 46, "id": "63a0ecdf-f905-402f-9e7a-5ac1d4577243", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalClassifier(fitted=True, mondrian=True)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "bins_oob = X_train[:,0] > 50000\n", "\n", "cc_mond_oob = ConformalClassifier()\n", "\n", "cc_mond_oob.fit(alphas_oob, bins_oob)\n", "\n", "display(cc_mond_oob)" ] }, { "cell_type": "markdown", "id": "25aef2d0-713a-4944-abcc-1a2cbdb3e6cb", "metadata": {}, "source": [ "Prediction sets for the test objects are obtained in the following way:" ] }, { "cell_type": "code", "execution_count": 47, "id": "c2df9d29-83f6-44ab-b871-eb0b6e08a1e3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1, 0, 0, 0, 0, 0],\n", " [0, 1, 0, 0, 0, 0],\n", " [0, 0, 0, 0, 1, 0],\n", " ...,\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 0, 1],\n", " [0, 0, 0, 0, 1, 0]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "bins_test = X_test[:,0] > 50000\n", "\n", "prediction_sets_mond_oob = cc_mond_oob.predict_set(alphas_test, bins=bins_test)\n", "\n", "display(prediction_sets_oob)" ] }, { "cell_type": "markdown", "id": "db312591-7098-4f01-a939-4e41be4cf4da", "metadata": {}, "source": [ "We may of course evaluate the Mondrian conformal classifier using out-of-bag predictions too:" ] }, { "cell_type": "code", "execution_count": 48, "id": "bf15b071-673a-48dc-8790-beed23c3d1e9", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.04543493889288286,\n", " 'avg_c': 0.9557153127246585,\n", " 'one_c': 0.9557153127246585,\n", " 'empty': 0.04428468727534148,\n", " 'ks_test': 2.229814212480889e-26,\n", " 'time_fit': 2.384185791015625e-07,\n", " 'time_evaluate': 0.2678487300872803}" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "results = cc_mond_oob.evaluate(alphas_test, rf.classes_, y_test, bins=bins_test)\n", "\n", "display(results)" ] }, { "cell_type": "markdown", "id": "2bc21f90", "metadata": {}, "source": [ "## Conformal regressors (CR)" ] }, { "cell_type": "markdown", "id": "ae6f6511-5479-4728-af6a-d1faaf1564f4", "metadata": { "tags": [] }, "source": [ "### Importing and splitting a regression dataset" ] }, { "cell_type": "markdown", "id": "f5718c5b-ff4f-45ec-821e-94052d91f092", "metadata": {}, "source": [ "Let us import a regression dataset from [www.openml.org](https://www.openml.org) and min-max normalize the targets; the latter is not really necessary, but useful, allowing to directly compare the size of a prediction interval to the whole target range, which becomes 1.0 in this case." ] }, { "cell_type": "code", "execution_count": 49, "id": "32685e4b-408c-4e94-b3c6-a55d120fe21e", "metadata": {}, "outputs": [], "source": [ "dataset = fetch_openml(name=\"house_sales\", version=3, parser=\"auto\")\n", "\n", "X = dataset.data.values.astype(float)\n", "y = dataset.target.values.astype(float)\n", "\n", "y = np.array([(y[i]-y.min())/(y.max()-y.min()) for i in range(len(y))])" ] }, { "cell_type": "markdown", "id": "d4aaf3fc-2ec8-436b-a1a4-93c89e88c2a7", "metadata": {}, "source": [ "We now split the dataset into a training and a test set, and further split the training set into a proper training set and a calibration set. Let us fit a random forest to the proper training set." ] }, { "cell_type": "code", "execution_count": 50, "id": "72a9bdb3-9a98-486d-9407-8e9e47eafd6b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
RandomForestRegressor(n_estimators=500, n_jobs=-1, oob_score=True)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "RandomForestRegressor(n_estimators=500, n_jobs=-1, oob_score=True)" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5)\n", "\n", "X_prop_train, X_cal, y_prop_train, y_cal = train_test_split(X_train, y_train,\n", " test_size=0.25)\n", "\n", "learner_prop = RandomForestRegressor(n_jobs=-1, n_estimators=500, oob_score=True) \n", "\n", "learner_prop.fit(X_prop_train, y_prop_train)" ] }, { "cell_type": "markdown", "id": "11169c37", "metadata": {}, "source": [ "### Standard conformal regressors" ] }, { "cell_type": "markdown", "id": "aa14a8fc-87e5-4bd3-9189-d4a3e587ce7a", "metadata": {}, "source": [ "Let us create a conformal regressor." ] }, { "cell_type": "code", "execution_count": 51, "id": "af331cb9-25fb-474d-9555-26cbfc2377e4", "metadata": {}, "outputs": [], "source": [ "cr_std = ConformalRegressor()" ] }, { "cell_type": "markdown", "id": "d93743da-4a58-49fe-882d-240c2deecb45", "metadata": {}, "source": [ "We may display the object, e.g., to see whether it has been fitted or not." ] }, { "cell_type": "code", "execution_count": 52, "id": "b6558046-d948-470f-9ace-68d205899f13", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalRegressor(fitted=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "display(cr_std)" ] }, { "cell_type": "markdown", "id": "bfa740e9-b730-4fc4-92d2-f690b00272cd", "metadata": {}, "source": [ "We will use the residuals from the calibration set to fit the conformal regressor. " ] }, { "cell_type": "code", "execution_count": 53, "id": "a3fa09d0-68ec-4831-8d99-fdddddf51b1f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=False, mondrian=False)" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_hat_cal = learner_prop.predict(X_cal)\n", "\n", "residuals_cal = y_cal - y_hat_cal\n", "\n", "cr_std.fit(residuals_cal)" ] }, { "cell_type": "markdown", "id": "c1fc47d2-dfb2-4d1f-b700-ff38cd6ee93f", "metadata": {}, "source": [ "We may now obtain prediction intervals from the point predictions for the test set; \n", "here using a confidence level of 99%." ] }, { "cell_type": "code", "execution_count": 54, "id": "d82a747f-ec61-4693-b7bd-cbe11feec2dc", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[-0.03419644, 0.09024183],\n", " [-0.00378046, 0.12065781],\n", " [ 0.10960205, 0.23404032],\n", " ...,\n", " [-0.01875442, 0.10568385],\n", " [-0.01854756, 0.10589071],\n", " [-0.03395386, 0.09048441]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "y_hat_test = learner_prop.predict(X_test)\n", "\n", "intervals = cr_std.predict_int(y_hat_test, confidence=0.99)\n", "\n", "display(intervals)" ] }, { "cell_type": "markdown", "id": "3eb51bc1-50a1-4212-a417-a20f659b941c", "metadata": {}, "source": [ "We may request that the intervals are cut to exclude impossible values, in this case below 0 and above 1; below we also use the default \n", "confidence level (95%), which further tightens the intervals." ] }, { "cell_type": "code", "execution_count": 55, "id": "297e612d-0f83-4e3f-a7da-ad0260d4bb8d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 0.05877615],\n", " [0.02768522, 0.08919213],\n", " [0.14106773, 0.20257464],\n", " ...,\n", " [0.01271126, 0.07421817],\n", " [0.01291812, 0.07442503],\n", " [0. , 0.05901873]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "intervals_std = cr_std.predict_int(y_hat_test, y_min=0, y_max=1)\n", "\n", "display(intervals_std)" ] }, { "cell_type": "markdown", "id": "ae0bed66-6b3e-4d98-9d51-42ff9d9837c3", "metadata": {}, "source": [ "If we want to obtain the p-values for the correct labels, we can use `predict_p`, and in addition to the point predictions also provide the correct labels:" ] }, { "cell_type": "code", "execution_count": 56, "id": "6c8d7d11-d2b0-4516-b2d2-54423cc308e1", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "array([0.56223961, 0.1011105 , 0.84661324, ..., 0.36592385, 0.65350816,\n", " 0.48107359])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p_values = cr_std.predict_p(y_hat_test, y_test)\n", "display(p_values)" ] }, { "cell_type": "markdown", "id": "bd537f04-34e0-4b95-8609-8398f883a8f1", "metadata": {}, "source": [ "Let us take a look at how the p-values are distributed. From the visual inspection they may appear be approximaly uniformly distributed; this is however not guaranteed, since the p-values are not independent (see further below for semi-online conformal regressors, for which this indeed holds). It is hence not very surprising if the Kolmogorov-Smirnov test allows us to reject that the p-values are sampled from a uniform distribution. " ] }, { "cell_type": "code", "execution_count": 57, "id": "e23cf3a1-5e68-4c75-9906-984bb7b1c9a5", "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.004320704598942889\n" ] } ], "source": [ "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "9be9c70c-5b36-40f9-acd6-3731a42bead0", "metadata": {}, "source": [ "### Normalized conformal regressors" ] }, { "cell_type": "markdown", "id": "a3c02d09-5450-41af-bd7a-4cc67f21bacc", "metadata": {}, "source": [ "The above intervals are not normalized, i.e., they are all of the same size (at least before they are cut). We could make the intervals more informative through normalization using difficulty estimates; \n", "more difficult instances will be assigned wider intervals. We can use a `DifficultyEstimator`, as imported from `crepes.extras`, for this purpose. It can be used to estimate the difficulty by using k-nearest neighbors in three different ways: i) by the (Euclidean) distances to the nearest neighbors, ii) by the standard deviation of the targets of the nearest neighbors, and iii) by the absolute errors of the k nearest neighbors. \n", "\n", "A small value (beta) is added to the estimates, which may be given through a (named) argument to the `fit` method; we will just use the default for this, i.e., `beta=0.01`. In order to make the beta value have the same effect across different estimators, we may opt for normalizing the difficulty estimates (using min-max scaling) by setting `scaler=True`. It should be noted that this comes with a computational cost; for estimators based on the k-nearest neighbor, a leave-one-out protocol is employed to find the minimum and maximum distances that are used by the scaler.\n", "\n", "We will first consider just using the first option (distances to the k-nearest neighbors) to produce normalized conformal regressors, using the default number of nearest neighbors, i.e., `k=25`." ] }, { "cell_type": "code", "execution_count": 58, "id": "147abc38-c44c-4078-b98c-a3c697b5c0d3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=knn, k=25, target=none, scaler=True, beta=0.01, oob=False)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=True, mondrian=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "de_knn = DifficultyEstimator()\n", "\n", "de_knn.fit(X=X_prop_train, scaler=True)\n", "\n", "display(de_knn)\n", "\n", "sigmas_cal_knn_dist = de_knn.apply(X_cal)\n", "\n", "cr_norm_knn_dist = ConformalRegressor()\n", "\n", "cr_norm_knn_dist.fit(residuals_cal, sigmas=sigmas_cal_knn_dist)\n", "\n", "display(cr_norm_knn_dist)" ] }, { "cell_type": "markdown", "id": "0d860d47-f7a2-4883-a554-c8cf88f57b7c", "metadata": {}, "source": [ "To generate prediction intervals for the test set, we need difficulty estimates for the latter too, which we get in the same way as for the calibration objects. " ] }, { "cell_type": "code", "execution_count": 59, "id": "895e3436-f717-4adb-80a8-de023fa6e1f8", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.00798752, 0.04805786],\n", " [0.00923534, 0.10764201],\n", " [0.14551656, 0.19812581],\n", " ...,\n", " [0.00674954, 0.08017989],\n", " [0.02848742, 0.05885573],\n", " [0.00361369, 0.05291686]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sigmas_test_knn_dist = de_knn.apply(X_test)\n", "\n", "intervals_norm_knn_dist = cr_norm_knn_dist.predict_int(y_hat_test, \n", " sigmas=sigmas_test_knn_dist,\n", " y_min=0, y_max=1)\n", "\n", "display(intervals_norm_knn_dist)" ] }, { "cell_type": "markdown", "id": "4fa9fb35-1646-422c-a8d1-6b27f8960685", "metadata": {}, "source": [ "Alternatively, we could estimate the difficulty using the standard deviation of the targets of the nearest neighbors; we specify this by providing the targets too:" ] }, { "cell_type": "code", "execution_count": 60, "id": "2393bc9e-80eb-4579-a4b9-df1a065fdc64", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=knn, k=25, target=labels, scaler=True, beta=0.01, oob=False)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=True, mondrian=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "de_knn_std = DifficultyEstimator()\n", "\n", "de_knn_std.fit(X=X_prop_train, y=y_prop_train, scaler=True)\n", "\n", "display(de_knn_std)\n", "\n", "sigmas_cal_knn_std = de_knn_std.apply(X_cal)\n", "\n", "cr_norm_knn_std = ConformalRegressor()\n", "\n", "cr_norm_knn_std.fit(residuals_cal, sigmas=sigmas_cal_knn_std)\n", "\n", "display(cr_norm_knn_std)" ] }, { "cell_type": "markdown", "id": "b84e9f1b-1a18-460d-82bc-7107391505c5", "metadata": {}, "source": [ "... and similarly for the test objects:" ] }, { "cell_type": "code", "execution_count": 61, "id": "e173e02c-3359-4c82-b627-bce6d46fb449", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.00997554, 0.04606985],\n", " [0.0083622 , 0.10851515],\n", " [0.11428189, 0.22936048],\n", " ...,\n", " [0.02492224, 0.06200719],\n", " [0.03373492, 0.05360823],\n", " [0.01768953, 0.03884102]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sigmas_test_knn_std = de_knn_std.apply(X_test)\n", "\n", "intervals_norm_knn_std = cr_norm_knn_std.predict_int(y_hat_test, \n", " sigmas=sigmas_test_knn_std,\n", " y_min=0, y_max=1)\n", "\n", "display(intervals_norm_knn_std)" ] }, { "cell_type": "markdown", "id": "0915f18f-fb0a-41c1-8eb0-ca21c18db4e2", "metadata": {}, "source": [ "A third option is to use (absolute) residuals for the reference objects. For a model that overfits the training data, it can be a good idea to use a separate set of (reference) objects and labels from which the residuals could be calculated, rather than using the original training data. Since we in this case have trained a random forest, we opt for estimating the residuals by using the out-of-bag predictions for the training instances. (This was made possible by setting `oob_score=True` for the `RandomForestRegressor` above.)\n", "\n", "To inform the `fit` method that this is what we want to do, we provide a value for `residuals`, instead of `y` as we did above for the option to use the (standard deviation of) the targets." ] }, { "cell_type": "code", "execution_count": 62, "id": "0b35fac9-a4a7-4c22-b379-dd9080c55337", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=knn, k=25, target=residuals, scaler=True, beta=0.01, oob=False)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=True, mondrian=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "oob_predictions = learner_prop.oob_prediction_\n", "\n", "residuals_oob = y_prop_train - oob_predictions\n", "\n", "de_knn_res = DifficultyEstimator()\n", "\n", "de_knn_res.fit(X=X_prop_train, residuals=residuals_oob, scaler=True)\n", "\n", "display(de_knn_res)\n", "\n", "sigmas_cal_knn_res = de_knn_res.apply(X_cal)\n", "\n", "cr_norm_knn_res = ConformalRegressor()\n", "\n", "cr_norm_knn_res.fit(residuals_cal, sigmas=sigmas_cal_knn_res)\n", "\n", "display(cr_norm_knn_res)" ] }, { "cell_type": "markdown", "id": "8ac8b3c2-9aed-4836-9d35-8055c5b270c0", "metadata": {}, "source": [ "... and again, the difficulty estimates are formed in the same way for the test objects:" ] }, { "cell_type": "code", "execution_count": 63, "id": "c7111fb4-0cb4-447f-8114-68f88412c202", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01392781, 0.04211757],\n", " [0.03329068, 0.08358667],\n", " [0.12801564, 0.21562673],\n", " ...,\n", " [0.03254232, 0.05438711],\n", " [0.0249979 , 0.06234526],\n", " [0.01982459, 0.03670596]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sigmas_test_knn_res = de_knn_res.apply(X_test)\n", "\n", "intervals_norm_knn_res = cr_norm_knn_res.predict_int(y_hat_test, \n", " sigmas=sigmas_test_knn_res,\n", " y_min=0, y_max=1)\n", "\n", "display(intervals_norm_knn_res)" ] }, { "cell_type": "markdown", "id": "17302b23-a35c-4a23-bee5-5f6a171f4793", "metadata": {}, "source": [ "In case we have trained an ensemble model, like a `RandomForestRegressor`, we could alternatively request `DifficultyEstimator` to estimate the difficulty by the variance of the predictions of the constituent models. This requires us to provide the trained model `learner` as input to `fit`, assuming that `learner.estimators_` is a collection of base models, each implementing the `predict` method; this holds e.g., for `RandomForestRegressor`. A set of objects (`X`) has to be provided only if we employ scaling (`scaler=True`)." ] }, { "cell_type": "code", "execution_count": 64, "id": "8f8b1536-e94b-4e37-84e1-6f6a51707a5a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=variance, scaler=True, beta=0.01, oob=False)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=True, mondrian=False)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "de_var = DifficultyEstimator()\n", "\n", "de_var.fit(X=X_prop_train, learner=learner_prop, scaler=True)\n", "\n", "display(de_var)\n", "\n", "sigmas_cal_var = de_var.apply(X_cal)\n", "\n", "cr_norm_var = ConformalRegressor()\n", "\n", "cr_norm_var.fit(residuals_cal, sigmas=sigmas_cal_var)\n", "\n", "display(cr_norm_var)" ] }, { "cell_type": "markdown", "id": "b920a7f7-0da3-4ae9-a751-b0955d9c6a6f", "metadata": {}, "source": [ "The difficulty estimates for the test set are generated in the same way:" ] }, { "cell_type": "code", "execution_count": 65, "id": "e2771706-1143-437c-9588-aa65b52124ef", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01066626, 0.04537912],\n", " [0.03792043, 0.07895692],\n", " [0.12897819, 0.21466418],\n", " ...,\n", " [0.02409464, 0.06283479],\n", " [0.025898 , 0.06144515],\n", " [0.01104499, 0.04548555]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sigmas_test_var = de_var.apply(X_test)\n", "\n", "intervals_norm_var = cr_norm_var.predict_int(y_hat_test, \n", " sigmas=sigmas_test_var, \n", " y_min=0, y_max=1)\n", "\n", "display(intervals_norm_var)" ] }, { "cell_type": "markdown", "id": "450db28c-7329-4d73-b99b-4670d72504ec", "metadata": {}, "source": [ "We can use `predict_p` to get the p-values also for normalized conformal regressors:" ] }, { "cell_type": "code", "execution_count": 66, "id": "67bffb3f-c5e9-42d0-9fbd-1517225d723f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.50992568, 0.04797715, 0.92383003, ..., 0.33211523, 0.61919979,\n", " 0.40766003])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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bdu2TZMnT9b777+vmTNn5lrP29tbXbp00bx583KMz58/X/fff7/Kli0rSSpXrpzmzp2r6Ohoffjhh5oxY4bef//9m8o4cOBAbdq0SQsXLtTPP/+sRx55RPfee68OHTp0Uz8XQPHianUAAI7Hz89P77//vpycnFSvXj3t27dP77//vp544olc6/bp00f9+vXTpUuX5OnpqZSUFK1YsUJLly4113n55ZfN/65Vq5aee+45LVq0SC+88EKB8h05ckQLFizQyZMn5evrK0kaNWqUVq1apTlz5uitt94q0M8FUPxwRAhAkWvdurWcnJzM5TZt2ujQoUP697//rbJly5pfsbGx6tKli1xdXfXNN99IkpYuXapy5copPDzc3H7JkiW6/fbbVbVqVZUtW1bjxo1TbGxsgfPt2rVLhmEoKCgoR55169bpyJEjBX/jAIodjggBKDYiIiLUs2dPc9nX11eurq56+OGHNX/+fPXq1Uvz589Xz5495ep69Z+vrVu3qlevXho/frw6duwob29vLVy4UBMnTrzm6zg7O+e6Jumv1xRlZ2fLxcVFUVFRcnFxybHeH6fjANgHihCAIrd169Zcy3Xr1lXFihVVsWLFXOv36dNH4eHh+vXXX7VmzRq98cYb5vc2bdokf39/jR071hw7ceLEdV+/cuXKio+PN5ezsrL0yy+/6K677pIkNW/eXFlZWTpz5ozCwsIK9B4BlAycGgNQ5OLi4jRy5EgdOHBACxYs0JQpUzRs2LBrrt+uXTv5+PioT58+qlWrllq3bm1+r06dOoqNjdXChQt15MgRTZ48WcuXL7/u67dv314rVqzQihUrtH//fj399NM6f/68+f2goCDz2qRly5bp2LFj2rFjh9555x2tXLnypt8/gOKDIgSgyPXr10+XL19Wy5Yt9cwzz+jZZ5/Vk08+ec31nZyc9Oijj2rv3r3q06dPju/df//9GjFihIYMGaJmzZpp8+bNGjdu3HVf//HHH1f//v3Vr18/tWvXTgEBAebRoD/MmTNH/fr103PPPad69erpvvvu07Zt2+Tn51fwNw6g2HEy8pq8AwAKyZ133qlmzZrpgw8+sDoKAHBECAAAOC6KEAAAcFicGgMAAA6LI0IAAMBhUYQAAIDDoggBAACHRRECAAAOiyIEAAAcFkUIAAA4LIoQAABwWBQhAADgsChCAADAYf0/jHpJwBoEA34AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.0019274177455422124\n" ] } ], "source": [ "p_values = cr_norm_var.predict_p(y_hat_test, y_test, sigmas=sigmas_test_var)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "dee70797-6a01-478a-b86e-6bd9d6f97287", "metadata": {}, "source": [ "### Mondrian conformal regressors" ] }, { "cell_type": "markdown", "id": "618d477f-0efb-4fea-be8d-98cdcd7f9adf", "metadata": {}, "source": [ "An alternative way of generating prediction intervals of varying size\n", "is to divide the object space into non-overlapping so-called Mondrian categories.\n", "A Mondrian conformal regressor is formed by providing the names of the categories\n", "as an additional argument, named `bins`, for the `fit` method.\n", "\n", "Here we employ the helper function `binning`, imported from `crepes.extras`, which given a list/array of values\n", "returns an array of the same length with the assigned bins. \n", "If the optional argument `bins` is an integer, the function will divide the values \n", "into equal-sized bins and return both the assigned bins and the bin boundaries. \n", "If `bins` instead is a set of bin boundaries, the function will just return the assigned bins.\n", "\n", "We can form the Mondrian categories in any way we like, as long as we only\n", "use information that is available for both calibration and test instances;\n", "this means that we may not use the target values for this purpose, since these will \n", "typically not be available for the test instances. \n", "We will form categories by binning of the difficulty estimates, here using the\n", "ones previously produced using the standard deviations of the nearest neighbor targets. " ] }, { "cell_type": "code", "execution_count": 67, "id": "496c99ba-fc3b-4679-8210-b5fa965472a5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=False, mondrian=True)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "bins_cal, bin_thresholds = binning(sigmas_cal_var, bins=20)\n", "\n", "cr_mond = ConformalRegressor()\n", "\n", "cr_mond.fit(residuals_cal, bins=bins_cal)\n", "\n", "display(cr_mond)" ] }, { "cell_type": "markdown", "id": "d82697a1-bf6e-46df-afe9-d749b0099d20", "metadata": {}, "source": [ "Let us now obtain the categories for the test instances using the\n", "same Mondrian categorization, i.e., bin borders." ] }, { "cell_type": "code", "execution_count": 68, "id": "54012c36-ab14-4c31-9846-8d5490f9d7b1", "metadata": {}, "outputs": [], "source": [ "bins_test = binning(sigmas_test_var, bins=bin_thresholds)" ] }, { "cell_type": "markdown", "id": "58a1fc9a-4b2e-420f-963d-4d007b7d38e2", "metadata": {}, "source": [ "... and now we can form prediction intervals for the test instances." ] }, { "cell_type": "code", "execution_count": 69, "id": "1ae5ec66-7920-4041-9b79-46fabd76fe96", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "array([[0.01601938, 0.040026 ],\n", " [0.0285827 , 0.08829464],\n", " [0.12361308, 0.22002929],\n", " ...,\n", " [0.02078541, 0.06614402],\n", " [0.03188371, 0.05545944],\n", " [0.01771245, 0.03881809]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "intervals_mond = cr_mond.predict_int(y_hat_test, bins=bins_test, y_min=0, y_max=1)\n", "\n", "display(intervals_mond)" ] }, { "cell_type": "markdown", "id": "9337db76-983b-4e9b-bf0c-26fc048b43b4", "metadata": {}, "source": [ "We can use `predict_p` to get the p-values also for Mondrian conformal regressors:" ] }, { "cell_type": "code", "execution_count": 70, "id": "b0046e20-44c4-439c-b689-0879b177b84d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.36024852, 0.13932973, 0.95785768, ..., 0.37115954, 0.52617715,\n", " 0.24863185])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.008251446500208679\n" ] } ], "source": [ "p_values = cr_mond.predict_p(y_hat_test, y_test, bins=bins_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "91e0394c-3a37-45d6-903d-7b17e2527a78", "metadata": { "tags": [] }, "source": [ "### Investigating the prediction intervals" ] }, { "cell_type": "markdown", "id": "c091d83d-2f25-41c6-b7ae-783fb853e317", "metadata": {}, "source": [ "Let us first put all the intervals in a dictionary." ] }, { "cell_type": "code", "execution_count": 71, "id": "c93efef7-6510-40e3-bab5-e43591c1130a", "metadata": {}, "outputs": [], "source": [ "prediction_intervals = {\n", " \"Std CR\":intervals_std,\n", " \"Norm CR knn dist\":intervals_norm_knn_dist,\n", " \"Norm CR knn std\":intervals_norm_knn_std,\n", " \"Norm CR knn res\":intervals_norm_knn_res,\n", " \"Norm CR var\":intervals_norm_var,\n", " \"Mond CR\":intervals_mond,\n", "}" ] }, { "cell_type": "markdown", "id": "427e3f54-ece8-47ac-9acc-557ed056c679", "metadata": {}, "source": [ "Let us see what fraction of the intervals that contain the true targets and how large the intervals are." ] }, { "cell_type": "code", "execution_count": 72, "id": "fac1300f-ef37-49ab-bb4c-5674339c48fd", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CoverageMean sizeMedian size
Std CR0.95100.06000.0615
Norm CR knn dist0.94970.05720.0469
Norm CR knn std0.94720.05530.0440
Norm CR knn res0.95590.05500.0435
Norm CR var0.95110.05070.0379
Mond CR0.95310.05250.0369
Mean0.95130.05510.0451
\n", "
" ], "text/plain": [ " Coverage Mean size Median size\n", "Std CR 0.9510 0.0600 0.0615\n", "Norm CR knn dist 0.9497 0.0572 0.0469\n", "Norm CR knn std 0.9472 0.0553 0.0440\n", "Norm CR knn res 0.9559 0.0550 0.0435\n", "Norm CR var 0.9511 0.0507 0.0379\n", "Mond CR 0.9531 0.0525 0.0369\n", "Mean 0.9513 0.0551 0.0451" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "coverages = []\n", "mean_sizes = []\n", "median_sizes = []\n", "\n", "for name in prediction_intervals.keys():\n", " intervals = prediction_intervals[name]\n", " coverages.append(np.sum([1 if (y_test[i]>=intervals[i,0] and \n", " y_test[i]<=intervals[i,1]) else 0 \n", " for i in range(len(y_test))])/len(y_test))\n", " mean_sizes.append((intervals[:,1]-intervals[:,0]).mean())\n", " median_sizes.append(np.median((intervals[:,1]-intervals[:,0])))\n", "\n", "pred_int_df = pd.DataFrame({\"Coverage\":coverages, \n", " \"Mean size\":mean_sizes, \n", " \"Median size\":median_sizes}, \n", " index=list(prediction_intervals.keys()))\n", "\n", "pred_int_df.loc[\"Mean\"] = [pred_int_df[\"Coverage\"].mean(), \n", " pred_int_df[\"Mean size\"].mean(),\n", " pred_int_df[\"Median size\"].mean()]\n", "\n", "display(pred_int_df.round(4))" ] }, { "cell_type": "markdown", "id": "8da6c765-b746-4ac0-ace2-12c35b8d59ee", "metadata": {}, "source": [ "Let us look at the distribution of the interval sizes." ] }, { "cell_type": "code", "execution_count": 73, "id": "6cc02637-bd5b-4d8a-be42-64f3b77d9ac7", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "interval_sizes = {}\n", "for name in prediction_intervals.keys():\n", " interval_sizes[name] = prediction_intervals[name][:,1] \\\n", " - prediction_intervals[name][:,0]\n", "\n", "plt.figure(figsize=(6,6))\n", "plt.ylabel(\"ECDF\")\n", "plt.xlabel(\"Interval sizes\")\n", "plt.xlim(0,interval_sizes[\"Mond CR\"].max()*1.25)\n", "\n", "colors = [\"b\",\"r\",\"g\",\"y\",\"k\",\"m\",\"c\",\"orange\"]\n", "\n", "for i, name in enumerate(interval_sizes.keys()):\n", " if \"Std\" in name:\n", " style = \"dotted\"\n", " else:\n", " style = \"solid\"\n", " plt.plot(np.sort(interval_sizes[name]),\n", " [i/len(interval_sizes[name])\n", " for i in range(1,len(interval_sizes[name])+1)],\n", " linestyle=style, c=colors[i], label=name)\n", "\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "d65702de-437f-4a78-b273-c8b402ea2581", "metadata": { "tags": [] }, "source": [ "### Evaluating the conformal regressors" ] }, { "cell_type": "markdown", "id": "15b75494-9572-42d9-ba90-c8e8bdad36bc", "metadata": {}, "source": [ "Let us put the six above conformal regressors in a dictionary, together with the corresponding difficulty estimates for the test instances (if any)." ] }, { "cell_type": "code", "execution_count": 74, "id": "abcd8956-24ab-4bda-ab6e-aeb63e9b1c38", "metadata": {}, "outputs": [], "source": [ "all_cr = {\n", " \"Std CR\": (cr_std, []),\n", " \"Norm CR knn dist\": (cr_norm_knn_dist, sigmas_test_knn_dist),\n", " \"Norm CR knn std\": (cr_norm_knn_std, sigmas_test_knn_std),\n", " \"Norm CR knn res\": (cr_norm_knn_res, sigmas_test_knn_res),\n", " \"Norm CR var\" : (cr_norm_var, sigmas_test_var),\n", " \"Mond CR\": (cr_mond, sigmas_test_var),\n", "}" ] }, { "cell_type": "markdown", "id": "aa72dd9c-6b88-4b2a-b4d9-9e14f89c593c", "metadata": {}, "source": [ "Let us evaluate them using three confidence levels on the test set.\n", "We could specify a subset of the metrics to use by the named\n", "`metrics` argument of the `evaluate` method; here we use all, \n", "which is the default.\n", "\n", "Note that the arguments `sigmas` and `bins` can always be provided,\n", "but they will be ignored by conformal regressors not using them,\n", "e.g., both arguments will be ignored by the standard conformal regressors." ] }, { "cell_type": "code", "execution_count": 75, "id": "e29b7e5f-5d8d-40a5-808e-974883f75b60", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Std CRNorm CR knn distNorm CR knn stdNorm CR knn resNorm CR varMond CR
0.900.950.990.900.950.990.900.950.990.900.950.990.900.950.990.900.950.99
error0.09300.04900.01180.09760.05030.01300.09680.05280.00970.09400.04410.00860.09730.04890.01100.10130.04690.0081
eff_mean0.04230.06000.10930.04380.05720.08520.04370.05530.08870.04230.05500.08910.03970.05070.07700.04140.05250.0865
eff_med0.04260.06150.11310.03570.04690.07020.03470.04400.07180.03340.04350.07150.02950.03790.05910.02980.03690.0577
ks_test0.00440.00430.00440.39290.39170.38820.00090.00080.00080.04370.04330.03960.00200.00200.00190.00860.00730.0078
time_fit0.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00010.00010.0001
time_evaluate0.07970.08010.08080.07350.07320.07380.08050.08020.08050.07310.07280.07270.08050.08020.08030.04930.04860.0486
\n", "
" ], "text/plain": [ " Std CR Norm CR knn dist \\\n", " 0.90 0.95 0.99 0.90 0.95 0.99 \n", "error 0.0930 0.0490 0.0118 0.0976 0.0503 0.0130 \n", "eff_mean 0.0423 0.0600 0.1093 0.0438 0.0572 0.0852 \n", "eff_med 0.0426 0.0615 0.1131 0.0357 0.0469 0.0702 \n", "ks_test 0.0044 0.0043 0.0044 0.3929 0.3917 0.3882 \n", "time_fit 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 \n", "time_evaluate 0.0797 0.0801 0.0808 0.0735 0.0732 0.0738 \n", "\n", " Norm CR knn std Norm CR knn res \\\n", " 0.90 0.95 0.99 0.90 0.95 0.99 \n", "error 0.0968 0.0528 0.0097 0.0940 0.0441 0.0086 \n", "eff_mean 0.0437 0.0553 0.0887 0.0423 0.0550 0.0891 \n", "eff_med 0.0347 0.0440 0.0718 0.0334 0.0435 0.0715 \n", "ks_test 0.0009 0.0008 0.0008 0.0437 0.0433 0.0396 \n", "time_fit 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 \n", "time_evaluate 0.0805 0.0802 0.0805 0.0731 0.0728 0.0727 \n", "\n", " Norm CR var Mond CR \n", " 0.90 0.95 0.99 0.90 0.95 0.99 \n", "error 0.0973 0.0489 0.0110 0.1013 0.0469 0.0081 \n", "eff_mean 0.0397 0.0507 0.0770 0.0414 0.0525 0.0865 \n", "eff_med 0.0295 0.0379 0.0591 0.0298 0.0369 0.0577 \n", "ks_test 0.0020 0.0020 0.0019 0.0086 0.0073 0.0078 \n", "time_fit 0.0000 0.0000 0.0000 0.0001 0.0001 0.0001 \n", "time_evaluate 0.0805 0.0802 0.0803 0.0493 0.0486 0.0486 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "confidence_levels = [0.9,0.95,0.99]\n", "\n", "names = list(all_cr.keys())\n", "\n", "all_results = {}\n", "\n", "for confidence in confidence_levels:\n", " for name in names:\n", " all_results[(name,confidence)] = all_cr[name][0].evaluate(\n", " y_hat_test, y_test, sigmas=all_cr[name][1],\n", " bins=bins_test, confidence=confidence, \n", " y_min=0, y_max=1)\n", "\n", "results_df = pd.DataFrame(columns=pd.MultiIndex.from_product(\n", " [names,confidence_levels]), index=list(list(\n", " all_results.values())[0].keys()))\n", "\n", "for key in all_results.keys():\n", " results_df[key] = all_results[key].values()\n", "\n", "display(results_df.round(4))" ] }, { "cell_type": "markdown", "id": "82ffde74-c12d-4388-883f-3c3c9caef21a", "metadata": { "tags": [] }, "source": [ "### Semi-online conformal regressors" ] }, { "cell_type": "markdown", "id": "2e530d7a-c4cd-4070-bb93-50f10ddd0250", "metadata": { "tags": [] }, "source": [ "Similar to semi-online conformal classifiers, we may consider employing *online calibration* also for conformal regressors, i.e., continuously updating the calibration set after making each prediction. This is achieved by the methods `predict_int_online` and `predict_p_online`, and also (optionally) through the `evaluate` method. " ] }, { "cell_type": "markdown", "id": "1dba80ed-d020-451d-bda5-aa0fc6270235", "metadata": { "tags": [] }, "source": [ "#### Online calibration with a fitted conformal regressor" ] }, { "cell_type": "markdown", "id": "1ff1b851-d59f-457c-9c60-62cb72908dfa", "metadata": {}, "source": [ "Here we will compute p-values for the correct targets in an online fashion for some of the above fitted conformal regressors. Let us start with the standard (non-normalized) conformal regressor." ] }, { "cell_type": "code", "execution_count": 76, "id": "d71911fd-d1ce-4a70-9d23-1a74d1d10731", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.56217858, 0.10111546, 0.84690133, ..., 0.36653669, 0.654559 ,\n", " 0.4732863 ])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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UtLj8Vc8NVZ2SnosMjMzjQYNGhgPPvigsWfPHmP16tVGs2bNjBEjRpj1I9iMkh6LmJgYw9nZ2Zg6dapx+PBh47fffjNCQ0ONLl26mPUj2IzMzEwjLi7OiIuLMyQZ7733nhEXF2edyqC8Pr9trggZhmF8/PHHRmBgoOHq6moEBwcbq1evtn5v8ODBxo033lhk/19//dXo1KmT4erqajRq1MiYNm1aBSe2XSU5FjfeeKMhqdjX4MGDKz64jSrpn43/RREqWyU9Fnv37jVuu+02w8PDw2jQoIExbtw4Iysrq4JT26aSHospU6YYrVu3Njw8PAx/f39j4MCBxvHjxys4te355ZdfrvgZUF6f3w6Gwbk8AABgn2zqHiEAAICSoAgBAAC7RRECAAB2iyIEAADsFkUIAADYLYoQAACwWxQhAABgtyhCAGzeK6+8oo4dO5odA0AlRBECAAB2iyIEAADsFkUIQIW66aabNGrUKI0aNUo1atSQr6+vXnjhhUuu3J2eni4PDw+tWLGiyPjSpUvl5eVlXY39ueeeU/PmzeXp6anGjRvrxRdfVF5e3hUzjBkzpshYnz59NGTIEOt2bm6unn32WdWvX19eXl4KCwvTr7/+WuqfG0DlRBECUOE+++wzOTs7a9OmTZoyZYref/99ffrpp8X28/Hx0Z133qm5c+cWGZ83b57uvfdeVatWTZJUvXp1zZkzR/Hx8frggw80c+ZMvf/++9eUcejQoVq3bp0WLFignTt3qm/fvrrjjjt08ODBa/p1AVQuzmYHAGB/AgIC9P7778vBwUEtWrTQrl279P777+uRRx4ptu/AgQMVFRWlrKwseXp6KiMjQz/88IOWLFli3eeFF16w/nejRo301FNPaeHChXr22WdLle/w4cOaP3++jh8/rnr16kmSnn76aa1YsUIxMTH65z//WapfF0DlwxkhABWua9eucnBwsG6Hh4fr4MGDeuONN1StWjXrV2Jiou688045Ozvr22+/lSQtWbJE1atXV0REhPX1ixcv1vXXX6+6deuqWrVqevHFF5WYmFjqfNu2bZNhGGrevHmRPKtXr9bhw4dL/4MDqHQ4IwSg0oiOjlZkZKR1u169enJ2dtaDDz6oefPmqX///po3b54iIyPl7Fz419fGjRvVv39/TZo0ST179pSPj48WLFigd99997Lv4+joWOyepP+9p6igoEBOTk6KjY2Vk5NTkf3+vBwHwDZQhABUuI0bNxbbbtasmXx9feXr61ts/4EDByoiIkJ79uzRL7/8otdee836vXXr1ikwMFATJ060jh07duyK71+7dm0lJydbty0Wi3bv3q2bb75ZktSpUydZLBadPn1aPXr0KNXPCKBq4NIYgAqXlJSkcePGaf/+/Zo/f74+/PBDjR49+rL733jjjfLz89PAgQPVqFEjde3a1fq9pk2bKjExUQsWLNDhw4c1ZcoULVu27Irvf8stt+iHH37QDz/8oH379mnkyJE6d+6c9fvNmze33pu0dOlSJSQkaMuWLXrzzTe1fPnya/75AVQeFCEAFS4qKkoXL15Uly5d9Pjjj+uJJ57Qo48+etn9HRwc9NBDD2nHjh0aOHBgke/de++9Gjt2rEaNGqWOHTtq/fr1evHFF6/4/sOGDdPgwYMVFRWlG2+8UUFBQdazQX+KiYlRVFSUnnrqKbVo0UL33HOPNm3apICAgNL/4AAqHQfjUpN3AEA5uemmm9SxY0f9+9//NjsKAHBGCAAA2C+KEAAAsFtcGgMAAHaLM0IAAMBuUYQAAIDdoggBAAC7RRECAAB2iyIEAADsFkUIAADYLYoQAACwWxQhAABgtyhCAADAbv0fYJ8kVucP9SgAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.31653950301047484\n" ] } ], "source": [ "p_values = cr_std.predict_p_online(y_hat_test, y_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "1158a953-5494-4355-bfc8-78a4924526d4", "metadata": {}, "source": [ "For the normalized conformal regressor, the non-conformity scores for the test set also involves the difficulty estimates (sigmas)." ] }, { "cell_type": "code", "execution_count": 77, "id": "2c997ba7-0c4e-4887-8434-14732ff2de2a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.51007057, 0.04776858, 0.92387496, ..., 0.32413254, 0.61571567,\n", " 0.39566451])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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pFBFaPDgwUpLS7Nv16xZU4cPHy7uTABgur0n0tVj8nr79rN3NNZXQ29USGAlE1MBKG6FujRmGEa+7YyMDNlstmINBABmiz1yRv1nbFZmtlXXebtr5sAb1KbudWbHAlACuEcIAP6Qa7Xp4zUH9W7MPllthkICK2rOo+Gq7udldjQAJaRQRchischisVx2GwDKq8TU83rok406dvaCJCk8uIqmDwhTJS/WCgMcWaEvjYWEhNjLz7lz59SmTRu5uOS/1ejMmTPFlxAASti2pLN6ZNZm/X4+Rx5uLurTrq5evqsZS2UATqBQRWjWrFkllQMASp3NZmjArM1auz9FklSnSgXNGniDGlbjhmjAWRSqCA0YMKCkcgBAqTr6+3nd+OZP9u1KXm76fFC4gvx9TEwFoLQV6WZpwzAUGxurw4cPy2KxKDg4WG3atOF+IQDlwg/xJxX9eax9u1dYHf3f/S34bxjghApdhH766ScNGjRIR44csT9O/2cZmjlzpm666aZiDwkAxWXhliQ9t3iHJKlqJU99PihcjatzKQxwVoWaUPHAgQO66667VK9ePS1dulR79uxRfHy8Fi1apNq1a6tbt246ePBgSWUFgCI7nZGlZxdtt5egjg39tfa5WylBgJOzGH+fJfEKhg4dqj179ujHH3+85HuGYahLly5q1qyZJk2aVKwhi1N6err8/PyUlpYmX19fs+MAKAXrDqSo34xNsv3xX7sO9f0197FwufBUGFBulNTnd6HOCP38888aMWJEgd+zWCwaMWKEfvrppwK/DwBm+GzDYfWd/r8SNK1fqOY/3p4SBEBSIe8RSkxMVIsWLS77/ebNm+vIkSPXHAoArlXahRyN+yZeS7YelSR1blJN7/duLV8mSATwF4UqQufOnZO3t/dlv+/t7a3z589fcygAuBZJZ86r58cblJx2UZLUN7yuxkc156kwAJco9FNj8fHxOnHiRIHfS0lJueZAAHAtdh9P092TfrFfCpveP0xdmgWaGwpAmVXoInTbbbddsgq9lHePkGEY/IsLgCmycq16Y/kezd2UKJshebm7aMWwTqpftaLZ0QCUYYUqQocOHSqpHABQJCnnsvTa17v17Y5k+1iQv7fmD26vmpUrmJgMQHlQqCIUFBRUUjkAoFBsNkMz1x3S+OV78o2P6NJIwzo34qkwAFelUI/P79+/Xw899JDS09Mv+V5aWpr69OnDhIoASlzGxRxFTVlnL0GVvNwUfXMDbX7xNo3oEkIJAnDVClWE3n77bdWpU6fAiYz8/PxUp04dvf3228UWDgD+Ljntgnp+vFE7jqZJkh5qV0dbXuqiF7o2UTVfL5PTAShvCnVpbM2aNfrss88u+/2ePXuqT58+1xwKAAqyPemsBszarLPncyRJU/u2VdcWNUxOBaA8K1QROnLkiKpVq3bZ7wcEBCgpKemaQwHAX2XlWjV6yU4tjTsmSfLxcNXrUc0pQQCuWaGKkJ+fnxISEi570/SBAwdYvwtAsdp1LE3D5sfpYEqmpLx1wv7v/hYK8vcxORkAR1CoInTTTTdp0qRJ6ty5c4Hfnzhxojp16lQswQA4N5vN0Ps/7NPE/x6QJPl6uenpyMbq3yGI+coAFJtCFaHRo0erQ4cOeuCBB/Tcc8+pcePGkqS9e/fqrbfe0vfff6/169eXSFAAziMzK1d9p2/StqSzkqQm1Stp1iM3qIYf8wIBKF6FKkJt2rTR4sWL9eijj2rZsmX5vufv76+FCxeqbdu2xRoQgHM5lJKppxdu07aks7JYpEcigvVityZycy3UQ64AcFUKvcTGXXfdpSNHjmjlypU6cOCADMNQSEiIIiMjr7ggKwD8k49XJ2jCd3slSW4uFn3+WLja1/c3ORUAR1aof2J169ZNaWlpqlChgnr06KHs7Gw9/vjjioqKkre3t1JTU9WsWbOSygrAQe0+nqZb3v7JXoIk6auhHSlBAEqcxShoBdXLcHV1VXJysv0Rel9fX23btk3169eXJJ08eVI1a9aU1WotmbTFID09XX5+fkpLS+MJN8BkVpuhV7/epc83JtrHHu0YrDHdm8qV2aEB/EVJfX4X6tLY3ztTIToUAORzPjtXj8z6VZsOnZEkBVT01Mf9QhUadJ3JyQA4k0LfIwQA12r5jmS98tUupWZmy2KRBneqr+fvbMJZIAClrlBFyGKxXDJ/B/N5ALhapzIuauzX8Vq+M1lS3gzRnwwIU0SDAJOTAXBWhb40NnDgQHl6ekqSLl68qOjoaPn45M3wmpWVVfwJATiE/+49qSFz43QhJ+8ewg71/fXRw6Hy83Y3ORkAZ1aoIjRgwIB82w8//PAl+/Tv3//aEgFwONPWJOiNFXlPhPl6uemdnq11e7NAk1MBQCGL0KxZs0oqBwAH9UP8Sb258jdJUqNqFbUouoMqe3uYnAoA8nCzNIASYRiGXvpyl774NUlWm6FbGlfVzAE3yIUbogGUIRQhACXi1a93a+6mvPmBwoKu09S+oZQgAGUORQhAsUo6c153vr9Gmdl5N0X37xCksfdczxOmAMokihCAYhN75HdFfx5rL0H/uqWBnr+zicmpAODyKEIArpnNZmjKzwf0n1X7JEnBAT76oHdrtaxd2dxgAPAPKEIArsmZzGyFjo/Rnyvu3FDvOn30cKj8K3qaGwwArgJFCECRpV3I0f1T19tLUPcWNfRhnzbcDwSg3KAIASiSXcfS1Hf6JqVdyFElTzfNfrQdC6YCKHcoQgAK7attxzRq4XZZbXmngihBAMorihCAq2YYhqauTtBbf8wU7eHqoqVPRqh5LT+TkwFA0VCEAFyV1HNZGrFgm9buT5EktapTWZ8PaqdKXiyaCqD8oggB+EdJZ87r3snrdCYzW1Le/EDPRjZmpmgA5Z6L2QGmTJmi4OBgeXl5KTQ0VGvXrr2q161bt05ubm5q3bp1yQYEnNzpjCwNmLnZXoI+fbSdnr+zCSUIgEMwtQgtWLBAI0aM0JgxYxQXF6dOnTqpa9euSkxMvOLr0tLS1L9/f912222llBRwTgmnz+mBj9brYEqmrvN21+LoDro5pKrZsQCg2FgM488ZQEpfeHi42rZtq6lTp9rHmjZtqqioKE2YMOGyr+vdu7caNWokV1dXffnll9q2bdtVv2d6err8/PyUlpYmX1/fa4kPOLRfD5/Rgx9tkJR3U/SSf0WoRW1uigZgjpL6/DbtjFB2drZiY2MVGRmZbzwyMlLr16+/7OtmzZqlhIQEvfrqq1f1PllZWUpPT8/3BeDycqw2vbFij70E+Xi4asET7SlBABySaTdLp6SkyGq1KjAwMN94YGCgTpw4UeBr9u/frxdeeEFr166Vm9vVRZ8wYYLGjh17zXkBZ3AkNVP3T92glHNZkqSwoOs0pW9bVfP1MjkZAJQM02+W/vtU/IZhFDg9v9VqVZ8+fTR27FiFhIRc9c8fPXq00tLS7F9JSUnXnBlwRBN/3K+b3/7ZXoKGdW6ohU90oAQBcGimnREKCAiQq6vrJWd/Tp06dclZIknKyMjQli1bFBcXp6FDh0qSbDabDMOQm5ubVq1apc6dO1/yOk9PT3l6svgjcDk5VpvGfxuvTzccsY/FjLxJjQIrmZgKAEqHaUXIw8NDoaGhiomJUY8ePezjMTExuvfeey/Z39fXVzt37sw3NmXKFP33v//V4sWLFRwcXOKZAUdzJDVT0Z9v1Z7kvHvn+ncI0qt3Xy9XHo0H4CRMnVBx1KhR6tevn8LCwtShQwdNmzZNiYmJio6OlpR3WevYsWOaM2eOXFxc1Lx583yvr1atmry8vC4ZB/DPdh1L04MfbdCFHKsk6a0HWqpnWB2TUwFA6TK1CPXq1UupqakaN26ckpOT1bx5c61YsUJBQUGSpOTk5H+cUwhA4W1POquHZ2zShRyrqlby1GeD2qlJdaaTAOB8TJ1HyAzMIwRnZhiG5mw4onHfxstqM1SrcgUtezKCG6IBlHkl9fnNWmOAkziVcVG9p23UwdOZkqRmNXw1+9EbVK0SJQiA86IIAU5g4a9J+r+Ve+3rhQ2MqKdX7mrGemEAnB5FCHBgmVm56jdjk7YmnpUkBVT01OQ+bRRe39/cYABQRlCEAAf17Y7jeunLXTp7PkeSdHNIVU3q00a+Xu4mJwOAsoMiBDiY3zOz1Wf6JvvcQJU83fTaPdfr/tDaJicDgLKHIgQ4kKO/n9c9H66z3wvUvWUNvRHVQn7enAUCgIJQhAAHYLMZmrs5Ua9/G6/sXJsk6fNB4bqxUYDJyQCgbKMIAeXc4ZRM9Z62USfSL0qSqvt6afqAMDWv5WdyMgAo+yhCQDk2a90hjf0m3r7dr32QxnRvKi93VxNTAUD5QRECyiHDMDT2m3jNXn9YkhRQ0UPv9WqtTo2qmhsMAMoZihBQzmxISNVLX+5Uwh8zRD/SsZ5e6NpEnm6cBQKAwqIIAeXEoZRMDZ23VbuPp9vHXureVI91qm9iKgAo3yhCQDkQE39Sg+dssW/X9PPS5L5t1abudSamAoDyjyIElGG/Z2brzZV79cWvSfax93q1Uo82TI4IAMWBIgSUUesTUjRs/jalnMuSJLULrqIZA8JUiSUyAKDYUISAMuZijlXPLt6h5TuOy2bkPRE2umtT3de2liwWVosHgOJEEQLKkPjj6Rr+RZz2nzonSbq+pq++eLw9Z4EAoIRQhIAy4su4Y3p+yQ5l/bFExv/d10I9w+rIxYWzQABQUihCgMkMw9D45Xs045dDkqSG1Srqo4fbqmG1SiYnAwDHRxECTJRrtenxz2L1372nJEn3ta2lN3q0YIkMACglFCHAJNuSzuqp+VuVdOaCJOnFbk30+E0NTE4FAM6FIgSUshyrTaOX7tTi2KP2sbfub6meN9QxMRUAOCeKEFCKLmRb1X3SWh38Y52wkMCKmtI3VA2rVTQ5GQA4J4oQUEqOn72g+6euV3LaRUnSU50bakSXELnyVBgAmIYiBJSChVuSNGbZTuVYDUnS61HN1a99kMmpAAAUIaAEnUi7qI9WJ2j2+sP2sUXRHXRDvSrmhQIA2FGEgBJgtRl6c+VeTVtz0D7Wtm5lzX+8vTzdeDQeAMoKihBQzE6mX1Tn//yszGyrJKmSp5uGdG6oQTcGy93VxeR0AIC/oggBxWhx7FE9v2SHrLa8e4EealdXo7s1kS9rhQFAmUQRAorJV9uO5StBXw3pqFZ1KpsbCgBwRRQhoBi8/8M+vf/DfknSrY2raurDoSyTAQDlAEUIuEafrj9sL0Gdm1TTJ/3DmBsIAMoJihBQRIZhaMYvhzR++R5J0i2Nq2rGgDBZLJQgACgvKEJAEZzJzNaQuVu14WCqJKlL00BNfbgtJQgAyhmKEFBIX207pucW71BWrk2SNKBDkF6753pKEACUQxQh4Cr9/NspPfbpFuX+8VRYQEUPPRPZWL3b1TU5GQCgqChCwD/Itdr01ve/5ZslulVtPy14ogNPhgFAOUcRAq5gy+EzGjY/Tsf/WDG+flUfTenbVk2q+5qcDABQHChCQAEMw9DLX+3SvE2JshmSh5uLnr49RI/fVJ97gQDAgVCEgL85mX5RUZPXKfmPs0C1r6ugxdERqu7nZXIyAEBxowgBf7F8R7KGzNtq3x7cKVjP39lEbiyWCgAOiSIESMrOten9H/Zpys8J9jHWCgMAx0cRgtNbFndUzy3eoRxr3mPxd15fXW8/2FKVWDEeABweRQhO62KOVdGfx+rn307bx16/93o93D6IG6IBwElQhOCULuZY1X/GZm0+fEaSdF+bWnqxe1MFVPQ0ORkAoDRRhOB01h9I0ehlO3Uk9bw83Vz0bs/W6t6yhtmxAAAmoAjBaZw9n63hX2zT6n15l8Iqerrpo4dDdWOjAJOTAQDMQhGCw7PZDE1be1CfbTiiY2cvSJLuallDY++5Xv5cCgMAp0YRgkPbkJCqV7/epX0nz0mSvNzzLoV1a8GlMAAARQgO7PONR/TSl7vs2/e2rqlx9zSXnzePxQMA8lCE4HBsNkOvfbNbczYckSS1C66isfdcr6Y1WCgVAJAfRQgOJeNijh78aIP2nsiQJPUMq603erRgiQwAQIEoQnAYu46lafCcLfbFUsd0a6rBN9U3ORUAoCyjCMEhbEhI1WOf/qrMbKsk6dNH2+nmkKompwIAlHUUIZR7mw+d0YCZm5VttSmgoocWR0eoXoCP2bEAAOUARQjlVtKZ83p09q/afyrv0fj6VX207MmO8qvAU2EAgKtDEUK5FJf4u/rN2KxzWbmSpMaBlfTZoHaUIABAoVCEUK6knc/RuG/jtWTrUUmSi0V6v3cb3dOqpsnJAADlEUUI5cauY2mK/jxWR3/PWyajTd3KmtynrWpWrmByMgBAeUURQrkw+acDevv73yRJ7q4Wjbu3uR5qV9fkVACA8o4ihDLtVPpF9Z+52T5BYgV3V60aeZPqVPE2ORkAwBFQhFBm7T+ZoX4zNutEet4Eid1aVNfkPm1lsVhMTgYAcBQUIZQ5hmHo802JGv9tvLJybXKxSK9HNVff8CCzowEAHIzpCzBNmTJFwcHB8vLyUmhoqNauXXvZfZcuXarbb79dVatWla+vrzp06KDvv/++FNOipBmGoRELtunlL3cpK9emRtUq6r9P30IJAgCUCFOL0IIFCzRixAiNGTNGcXFx6tSpk7p27arExMQC91+zZo1uv/12rVixQrGxsbr11lt19913Ky4urpSToyQYhqEXl+3UV9uOS5IimwXqm6duZJZoAECJsRiGYZj15uHh4Wrbtq2mTp1qH2vatKmioqI0YcKEq/oZ119/vXr16qVXXnnlqvZPT0+Xn5+f0tLS5OvrW6TcKH6GYeilL3dp7qa8EjzstkYa2aUR9wMBACSV3Oe3aWeEsrOzFRsbq8jIyHzjkZGRWr9+/VX9DJvNpoyMDFWpUuWy+2RlZSk9PT3fF8qWU+kX9dT8OHsJeiYyRKNuD6EEAQBKnGlFKCUlRVarVYGBgfnGAwMDdeLEiav6Ge+8844yMzPVs2fPy+4zYcIE+fn52b/q1KlzTblRfAzD0JwNh9XujR/17Y5kSdILXZtoaOdGJicDADgL02+W/vu/+g3DuKozAfPnz9drr72mBQsWqFq1apfdb/To0UpLS7N/JSUlXXNmXLuLOVYN+nSLXvlqt31s3uBwRd/cwMRUAABnY9rj8wEBAXJ1db3k7M+pU6cuOUv0dwsWLNCgQYO0aNEidenS5Yr7enp6ytPT85rzovgkpp7XkHlbtfNYmiTpiZvr65nIxnJ3Nb2XAwCcjGmfPB4eHgoNDVVMTEy+8ZiYGEVERFz2dfPnz9fAgQM1b948de/evaRjoph9v/uEbnr7J3sJej2quUZ3bUoJAgCYwtQJFUeNGqV+/fopLCxMHTp00LRp05SYmKjo6GhJeZe1jh07pjlz5kjKK0H9+/fXBx98oPbt29vPJlWoUEF+fn6m/R74Z4ZhaMJ3ezVtzUFJko+Hqyb3batbGl/+siYAACXN1CLUq1cvpaamaty4cUpOTlbz5s21YsUKBQXlTZ6XnJycb06hjz/+WLm5uRoyZIiGDBliHx8wYIBmz55d2vFxlQ6nZGrEgm3alnRWktSpUYDeebCVqvl6mRsMAOD0TJ1HyAzMI1R6rDZDr3z1v7mBJOmRjvX0yl3NeDQeAFAoJfX5zVpjKBG/Z2brsTlbFHvkd0mSp5uLPu4XyqUwAECZQhFCsbLZDM3dnKh3Vv2ms+dzJElDbm2gp29vLBcXzgIBAMoWihCKTXauTQ9P36TNh89Ikip7u+v/7muhO5vXMDkZAAAFowihWGxPOqtRC7cp4XSmJKlL00B92KeNvNxdTU4GAMDlUYRwzT5Zc1D/XrFHklTB3VUT7muhqDa1TE4FAMA/owjhmnzww36998M+SVKLWn76uF+oalauYHIqAACuDkUIRfL3ZTLua1tL7/ZsbW4oAAAKiSKEQrmQbdU7q37T9F8O2cd631BHb/RoYWIqAACKhiKEqxZ/PF13f/iLrLa8OTiv83bXpIfa6sZGASYnAwCgaChCuCo/xJ/Uk/O22kvQyC4hGnJrA7mxWCoAoByjCOGKMrNy9cpXu7Vk61FJkreHq1YM66R6AT4mJwMA4NpRhHBZ09ce1Pjle+zbUa1r6tW7r9d1Ph4mpgIAoPhQhFCgl77cqc83/m+x1A96t9a9rZkbCADgWChCuMSbK/faS1Cr2n6a/3h7eXvwRwUA4Hj4dIOdzWZo/PI9mrku79H4Hm1q6d2erWSxsFgqAMAxUYQgSdqWdFZP/2WtsIfa1dWE+5gbCADg2ChCTu5CtlXjvo3Xwi1JstoMWSzSiNtCNLxLI7OjAQBQ4ihCTmx9Qor6fLLJvt2qTmV9+FAb1anibWIqAABKD0XISX23M1n/mrvVvj3k1gZ6JrIx9wMBAJwKRcjJGIah92L2aeJ/D0iS/H089POzt6iSl7vJyQAAKH0UISeSdiFHvT7eoL0nMiRJwQE+WvKvCEoQAMBpUYScxNKtR/VuzD4d/f2CJOmFrk0UfXMDk1MBAGAuipCD25CQqte/jVd8crokyWKRZg68Qbc2rmZyMgAAzEcRcmCLtiTp2cU77NvdW9TQy3c1U3U/LxNTAQBQdlCEHFDGxRy9/m28Fm45ah+bMSBMtzUNNDEVAABlD0XIwazZd1oDZm2WYeRtd2kaqAn3tVDVSp7mBgMAoAyiCDkIwzA09pt4fbbxiAxDquDuqv4RQXrhzibMDQQAwGVQhBzAuaxcvbBkh77dkSxJahxYScuGRLBiPAAA/4BPynJux9GzGrngf4uldm1eXR/0biMPNxeTkwEAUPZRhMqxNftO64nPYnUhxypJmtYvVJHXVzc5FQAA5QdFqByy2gxNW3NQb32/V4YhNapWUVP6tlWjwEpmRwMAoFyhCJUzv53I0ICZm3Ui/aIk6caGAZrWP5T7gQAAKAI+PcuR2CO/q+/0jbqYY5MkvditiQZ3qs9TYQAAFBFFqBy4mGPVjF8O6YMf9ivbapOXu4sWPRGhFrX9zI4GAEC5RhEq4xJOn9Njn27RoZS8p8Ka1fDV7EduUDVflskAAOBaUYTKsC/jjumVr3Yp/WKuXF0seu6Oxhrcqb5cXLgUBgBAcaAIlUEXsq16c+VezV5/WJJUydNN34+8STUrVzA3GAAADoYiVIYYhqGXvtyluZsS7WM3hVTVB71a6zofDxOTAQDgmChCZcTxsxf0/JIdWrs/xT42oksjDb+tEU+FAQBQQihCJsux2vTmd3s1f3OiMrPzZoju0jRQ7zzYSn7e7ianAwDAsVGETJR2IUf9Z2zS9qNpkiS/Cu6a+nBbRTQIMDkZAADOgSJkkoOnz2nIvDjtSU6XJPVrH6QXujaRjyeHBACA0sKnrgmW70jWkHlbJUkV3F01c+AN6tDA3+RUAAA4H4pQKcq12jRk3lZ9v/ukJMlikT5/LFyhQdeZnAwAAOdEESolKeey9PTC7Vq977Qkyd/HQ6ufu1UVuRQGAIBp+BQuBbFHflefTzYqKzdvsdShtzbUU7c1lKebq8nJAABwbhShEmQYhiZ8t1fT1hyUlDdD9PgezXVv61omJwMAABJFqMSs2n1CQ+fHKfuPs0DtgqtoSt+2CqjoaXIyAADwJ4pQCRj3Tbxmrjtk3x7cKVjP3NGYS2EAAJQxFKFidDHHqiFzt+rHvackSWFB1+ntB1spOMDH5GQAAKAgFKFiknouSz2mrFfimfOSpIER9fTq3c1YJwwAgDKMInSNcqw2zV53WO/9sE/ns61yd7VoWv8w3dq4mtnRAADAP6AIXYNdx9I0dN5WHU7NOwtUtZKnPh8UrsbVK5mcDAAAXA2KUBHkWG2atuag3ln1m2yG5OHmouG3NdITN9WXm6uL2fEAAMBVoggV0nc7k/WvuVvt240DK+mT/mGq6+9tYioAAFAUFKGrlJVr1aiF27V8R7J97O5WNfVez1acBQIAoJyiCF2F7Uln9fSi7Tpw6pwkqV29Khrfo7lCArkXCACA8owidAUZF3P0wQ/7Nf2X/02O+HpUc/VrH2RiKgAAUFwoQpex61iaHvt0i06kX5Qktajlp9FdmyiiYYDJyQAAQHGhCBXgp99O6al5cTqXlStJeuv+lnowrDaTIwIA4GAoQn9xOiNLo5fu1A97TkqSGlWrqI/6hapB1YomJwMAACWBIiTJMAzNXHdY7676TZnZVknSva1r6vWo5vL1cjc5HQAAKClOX4SSzpzXa1/vti+UWsnLTZP7tNVNIVVNTgYAAEqa6RPgTJkyRcHBwfLy8lJoaKjWrl17xf1Xr16t0NBQeXl5qX79+vroo4+K9L6GYeiLzYnq9NZP9hIUHlxF61/oTAkCAMBJmFqEFixYoBEjRmjMmDGKi4tTp06d1LVrVyUmJha4/6FDh9StWzd16tRJcXFxevHFFzVs2DAtWbKk0O/9Tsw+vbB0pySpfoCPlvwrQgue6KBKXAoDAMBpWAzDMMx68/DwcLVt21ZTp061jzVt2lRRUVGaMGHCJfs///zz+vrrr7Vnzx77WHR0tLZv364NGzZc1Xump6fLz89PdUYslIunt564ub6evr2xPNxMPzkGAAAu48/P77S0NPn6+hbbzzXtHqHs7GzFxsbqhRdeyDceGRmp9evXF/iaDRs2KDIyMt/YHXfcoRkzZignJ0fu7peezcnKylJWVpZ9Oy0tTZJkyzqv4V0aanDHWrp4/pwuXusvBAAASkx6erqkvFtbipNpRSglJUVWq1WBgYH5xgMDA3XixIkCX3PixIkC98/NzVVKSopq1KhxyWsmTJigsWPHXjJ+bOpAPTNVeuYafgcAAFC6UlNT5efnV2w/z/Snxv4+SaFhGFecuLCg/Qsa/9Po0aM1atQo+/bZs2cVFBSkxMTEYv0/EkWTnp6uOnXqKCkpqVhPdaLwOBZlB8ei7OBYlB1paWmqW7euqlSpUqw/17QiFBAQIFdX10vO/pw6deqSsz5/ql69eoH7u7m5yd/fv8DXeHp6ytPT85JxPz8//lCXIb6+vhyPMoJjUXZwLMoOjkXZ4eJSvPf0mnaHsIeHh0JDQxUTE5NvPCYmRhEREQW+pkOHDpfsv2rVKoWFhRV4fxAAAMCVmPqo1KhRozR9+nTNnDlTe/bs0ciRI5WYmKjo6GhJeZe1+vfvb98/OjpaR44c0ahRo7Rnzx7NnDlTM2bM0DPPcKcPAAAoPFPvEerVq5dSU1M1btw4JScnq3nz5lqxYoWCgoIkScnJyfnmFAoODtaKFSs0cuRITZ48WTVr1tTEiRN1//33X/V7enp66tVXXy3wchlKH8ej7OBYlB0ci7KDY1F2lNSxMHUeIQAAADMxiyAAAHBaFCEAAOC0KEIAAMBpUYQAAIDTcsgiNGXKFAUHB8vLy0uhoaFau3btFfdfvXq1QkND5eXlpfr16+ujjz4qpaSOrzDHYunSpbr99ttVtWpV+fr6qkOHDvr+++9LMa3jK+zfjT+tW7dObm5uat26dckGdCKFPRZZWVkaM2aMgoKC5OnpqQYNGmjmzJmllNaxFfZYzJ07V61atZK3t7dq1KihRx55RKmpqaWU1nGtWbNGd999t2rWrCmLxaIvv/zyH19TLJ/fhoP54osvDHd3d+OTTz4x4uPjjeHDhxs+Pj7GkSNHCtz/4MGDhre3tzF8+HAjPj7e+OSTTwx3d3dj8eLFpZzc8RT2WAwfPtx48803jc2bNxv79u0zRo8ebbi7uxtbt24t5eSOqbDH409nz5416tevb0RGRhqtWrUqnbAOrijH4p577jHCw8ONmJgY49ChQ8amTZuMdevWlWJqx1TYY7F27VrDxcXF+OCDD4yDBw8aa9euNa6//nojKiqqlJM7nhUrVhhjxowxlixZYkgyli1bdsX9i+vz2+GKULt27Yzo6Oh8Y02aNDFeeOGFAvd/7rnnjCZNmuQbe+KJJ4z27duXWEZnUdhjUZBmzZoZY8eOLe5oTqmox6NXr17GSy+9ZLz66qsUoWJS2GPx3XffGX5+fkZqamppxHMqhT0Wb7/9tlG/fv18YxMnTjRq165dYhmd0dUUoeL6/HaoS2PZ2dmKjY1VZGRkvvHIyEitX7++wNds2LDhkv3vuOMObdmyRTk5OSWW1dEV5Vj8nc1mU0ZGRrEvsOeMino8Zs2apYSEBL366qslHdFpFOVYfP311woLC9Nbb72lWrVqKSQkRM8884wuXLhQGpEdVlGORUREhI4ePaoVK1bIMAydPHlSixcvVvfu3UsjMv6iuD6/TV99vjilpKTIarVesmhrYGDgJYu1/unEiRMF7p+bm6uUlBTVqFGjxPI6sqIci7975513lJmZqZ49e5ZERKdSlOOxf/9+vfDCC1q7dq3c3BzqPxWmKsqxOHjwoH755Rd5eXlp2bJlSklJ0ZNPPqkzZ85wn9A1KMqxiIiI0Ny5c9WrVy9dvHhRubm5uueeezRp0qTSiIy/KK7Pb4c6I/Qni8WSb9swjEvG/mn/gsZReIU9Fn+aP3++XnvtNS1YsEDVqlUrqXhO52qPh9VqVZ8+fTR27FiFhISUVjynUpi/GzabTRaLRXPnzlW7du3UrVs3vfvuu5o9ezZnhYpBYY5FfHy8hg0bpldeeUWxsbFauXKlDh06ZF8jE6WrOD6/HeqfeQEBAXJ1db2kyZ86deqS1vin6tWrF7i/m5ub/P39SyyroyvKsfjTggULNGjQIC1atEhdunQpyZhOo7DHIyMjQ1u2bFFcXJyGDh0qKe/D2DAMubm5adWqVercuXOpZHc0Rfm7UaNGDdWqVUt+fn72saZNm8owDB09elSNGjUq0cyOqijHYsKECerYsaOeffZZSVLLli3l4+OjTp06afz48VxFKEXF9fntUGeEPDw8FBoaqpiYmHzjMTExioiIKPA1HTp0uGT/VatWKSwsTO7u7iWW1dEV5VhIeWeCBg4cqHnz5nHNvRgV9nj4+vpq586d2rZtm/0rOjpajRs31rZt2xQeHl5a0R1OUf5udOzYUcePH9e5c+fsY/v27ZOLi4tq165donkdWVGOxfnz5+Xikv+j09XVVdL/zkagdBTb53ehbq0uB/58FHLGjBlGfHy8MWLECMPHx8c4fPiwYRiG8cILLxj9+vWz7//n43cjR4404uPjjRkzZvD4fDEp7LGYN2+e4ebmZkyePNlITk62f509e9asX8GhFPZ4/B1PjRWfwh6LjIwMo3bt2sYDDzxg7N6921i9erXRqFEj47HHHjPrV3AYhT0Ws2bNMtzc3IwpU6YYCQkJxi+//GKEhYUZ7dq1M+tXcBgZGRlGXFycERcXZ0gy3n33XSMuLs4+lUFJfX47XBEyDMOYPHmyERQUZHh4eBht27Y1Vq9ebf/egAEDjJtvvjnf/j///LPRpk0bw8PDw6hXr54xderUUk7suApzLG6++WZD0iVfAwYMKP3gDqqwfzf+iiJUvAp7LPbs2WN06dLFqFChglG7dm1j1KhRxvnz50s5tWMq7LGYOHGi0axZM6NChQpGjRo1jL59+xpHjx4t5dSO56effrriZ0BJfX5bDINzeQAAwDk51D1CAAAAhUERAgAATosiBAAAnBZFCAAAOC2KEAAAcFoUIQAA4LQoQgAAwGlRhAA4vNdee02tW7c2OwaAMogiBAAAnBZFCAAAOC2KEIBSdcstt2jo0KEaOnSoKleuLH9/f7300ksFrtydlpamChUqaOXKlfnGly5dKh8fH/tq7M8//7xCQkLk7e2t+vXr6+WXX1ZOTs4VM4wYMSLfWFRUlAYOHGjfzs7O1nPPPadatWrJx8dH4eHh+vnnn4v8ewMomyhCAErdp59+Kjc3N23atEkTJ07Ue++9p+nTp1+yn5+fn7p37665c+fmG583b57uvfdeVaxYUZJUqVIlzZ49W/Hx8frggw/0ySef6L333rumjI888ojWrVunL774Qjt27NCDDz6oO++8U/v377+mnwugbHEzOwAA51OnTh299957slgsaty4sXbu3Kn33ntPgwcPvmTfvn37qn///jp//ry8vb2Vnp6u5cuXa8mSJfZ9XnrpJfv/rlevnp5++mktWLBAzz33XJHyJSQkaP78+Tp69Khq1qwpSXrmmWe0cuVKzZo1S2+88UaRfi6AsoczQgBKXfv27WWxWOzbHTp00P79+/Xvf/9bFStWtH8lJiaqe/fucnNz09dffy1JWrJkiSpVqqTIyEj76xcvXqwbb7xR1atXV8WKFfXyyy8rMTGxyPm2bt0qwzAUEhKSL8/q1auVkJBQ9F8cQJnDGSEAZUZ0dLR69epl365Zs6bc3Nz0wAMPaN68eerdu7fmzZunXr16yc0t7z9fGzduVO/evTV27Fjdcccd8vPz0xdffKF33nnnsu/j4uJyyT1Jf72nyGazydXVVbGxsXJ1dc2335+X4wA4BooQgFK3cePGS7YbNWokf39/+fv7X7J/3759FRkZqd27d+unn37S66+/bv/eunXrFBQUpDFjxtjHjhw5csX3r1q1qpKTk+3bVqtVu3bt0q233ipJatOmjaxWq06dOqVOnToV6XcEUD5waQxAqUtKStKoUaP022+/af78+Zo0aZKGDx9+2f1vvvlmBQYGqm/fvqpXr57at29v/17Dhg2VmJioL774QgkJCZo4caKWLVt2xffv3Lmzli9fruXLl2vv3r168skndfbsWfv3Q0JC7PcmLV26VIcOHdKvv/6qN998UytWrLjm3x9A2UERAlDq+vfvrwsXLqhdu3YaMmSInnrqKT3++OOX3d9iseihhx7S9u3b1bdv33zfu/feezVy5EgNHTpUrVu31vr16/Xyyy9f8f0fffRRDRgwQP3799fNN9+s4OBg+9mgP82aNUv9+/fX008/rcaNG+uee+7Rpk2bVKdOnaL/4gDKHItR0OQdAFBCbrnlFrVu3Vrvv/++2VEAgDNCAADAeVGEAACA0+LSGAAAcFqcEQIAAE6LIgQAAJwWRQgAADgtihAAAHBaFCEAAOC0KEIAAMBpUYQAAIDToggBAACnRRECAABO6/8BI8ZPQD/xO28AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.29650809034053094\n" ] } ], "source": [ "p_values = cr_norm_var.predict_p_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "8ab12cd7-9b98-4f83-bc70-96493452636b", "metadata": {}, "source": [ "For the Mondrian conformal regressor, we need to provide the categories for the test objects:" ] }, { "cell_type": "code", "execution_count": 78, "id": "3862f453-39f7-48ad-aff4-4d3febccb3b9", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.35539022, 0.13602428, 0.96197703, ..., 0.36807299, 0.5606659 ,\n", " 0.21427931])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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wsfHhxUrVvDBBx/c8H2cnJxy3ZP0v/cUWa1WnJ2dCQsLw9nZOcd+f16OExH7oCIkIkVu165dubbr1q2Lr68vvr6+ufbv168fISEhHD58mE2bNvHPf/7T9r3t27dTs2ZNJk6caBs7d+7cTd+/QoUKREdH27azsrL49ddfuffeewFo2bIlWVlZxMbG0rFjx3z9jiJSMujSmIgUuaioKMaOHcuxY8dYvnw506dPZ9SoUTfc/+6778bPz49+/fpRq1Yt2rVrZ/tenTp1iIyMZMWKFZw6dYpp06axbt26m77/fffdxzfffMM333zD0aNHefbZZ7ly5Yrt+/Xq1bPdm7R27VrOnDnDnj17ePfdd9mwYcNt//4iUnyoCIlIkRswYADXrl2jTZs2PPfcczz//PM89dRTN9zfYrHwxBNPcODAAfr165fje927d2fMmDGMHDmSFi1asGPHDl5//fWbvv+QIUMYOHAgAwYM4O6778bf3992NuhPCxcuZMCAAYwbN4769evzyCOP8Msvv1C9evX8/+IiUuxYjOtN3iEiUkjuueceWrRowUcffWR2FBERnRESERERx6UiJCIiIg5Ll8ZERETEYemMkIiIiDgsFSERERFxWCpCIiIi4rBUhERERMRhqQiJiIiIw1IREhEREYelIiQiIiIOS0VIREREHJaKkIiIiDis/we9qToQQN4QGAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.6477592899469131\n" ] } ], "source": [ "p_values = cr_mond.predict_p_online(y_hat_test, y_test, bins=bins_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "88b701e3-7b68-4ab3-b234-45c232294451", "metadata": {}, "source": [ "Similarly, we can obtain prediction intervals using online calibration:" ] }, { "cell_type": "code", "execution_count": 79, "id": "4292a8dc-2c3c-4b6e-a0d0-249ad0b35ed5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.00674634, 0.04929905],\n", " [0.03716232, 0.07971503],\n", " [0.15054483, 0.19309754],\n", " ...,\n", " [0.02297872, 0.06395071],\n", " [0.02318558, 0.06415757],\n", " [0.00777928, 0.04875127]])" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_std.predict_int_online(y_hat_test, y_test, y_min=0, y_max=1, confidence=0.9)" ] }, { "cell_type": "code", "execution_count": 80, "id": "002daeca-9a72-4287-a0f4-81338420ef72", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01453758, 0.0415078 ],\n", " [0.04249699, 0.07438036],\n", " [0.13843426, 0.20520811],\n", " ...,\n", " [0.02851292, 0.05841651],\n", " [0.02995213, 0.05739103],\n", " [0.01497291, 0.04155764]])" ] }, "execution_count": 80, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_norm_var.predict_int_online(y_hat_test, y_test, sigmas=sigmas_test_var, \n", " y_min=0, y_max=1, confidence=0.9)" ] }, { "cell_type": "code", "execution_count": 81, "id": "201965ee-6995-4565-952b-65cb0b78ce26", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01895246, 0.03709292],\n", " [0.03577035, 0.08110699],\n", " [0.13105432, 0.21258805],\n", " ...,\n", " [0.02834457, 0.05858486],\n", " [0.03299241, 0.05435074],\n", " [0.02022964, 0.0363009 ]])" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_mond.predict_int_online(y_hat_test, y_test, bins=bins_test, \n", " y_min=0, y_max=1, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "8fc4b843-1ec9-4c22-9ee1-72d8857ce5d8", "metadata": {}, "source": [ "By default, the test objects and labels are sequentially added to the existing calibration set, i.e., the one used when fitting the conformal regressor. We may set the `warm_start` option to `False`, if we would like to ignore the original calibration set. Note that the initial predictions tend to be very (maximally) wide, before we have a sufficiently large calibration set to allow for providing tighter intervals at the specified level of confidence." ] }, { "cell_type": "code", "execution_count": 82, "id": "3fc2578b-c9b1-4547-a728-a2603509e059", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 1. ],\n", " [0. , 1. ],\n", " [0. , 1. ],\n", " ...,\n", " [0.02309016, 0.06383927],\n", " [0.02329702, 0.06404613],\n", " [0.00789072, 0.04863983]])" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_std.predict_int_online(y_hat_test, y_test, y_min=0, y_max=1, confidence=0.9,\n", " warm_start=False)" ] }, { "cell_type": "code", "execution_count": 83, "id": "f4123d55-f097-43da-9fa0-86c47d0088f7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 1. ],\n", " [0. , 1. ],\n", " [0. , 1. ],\n", " ...,\n", " [0.02853271, 0.05839672],\n", " [0.02997029, 0.05737287],\n", " [0.0149905 , 0.04154004]])" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_norm_var.predict_int_online(y_hat_test, y_test, sigmas=sigmas_test_var, \n", " y_min=0, y_max=1, confidence=0.9, warm_start=False)" ] }, { "cell_type": "code", "execution_count": 84, "id": "cc7ce4f5-e774-42d2-9d80-f726bbb01136", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 1. ],\n", " [0. , 1. ],\n", " [0. , 1. ],\n", " ...,\n", " [0.02817262, 0.05875681],\n", " [0.03283112, 0.05451204],\n", " [0.02025481, 0.03627573]])" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_mond.predict_int_online(y_hat_test, y_test, bins=bins_test, y_min=0, y_max=1, \n", " confidence=0.9, warm_start=False)" ] }, { "cell_type": "markdown", "id": "22657fe6-7be0-4f93-8819-5f6fd75e5b8e", "metadata": {}, "source": [ "We may also evaluate the conformal regressors using online calibration, by specifying `online=True` for the `evaluate` method:" ] }, { "cell_type": "code", "execution_count": 85, "id": "eea76e17-a525-4e1e-9d23-39240ead0db9", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.010363653187748678,\n", " 'eff_mean': 0.11601639159439764,\n", " 'eff_med': 0.11820961599999993,\n", " 'ks_test': 0.32219030227154966,\n", " 'time_fit': 4.3392181396484375e-05,\n", " 'time_evaluate': 0.1031489372253418}" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_std.evaluate(y_hat_test, y_test, confidence=0.99, y_min=0, y_max=1, \n", " online=True)" ] }, { "cell_type": "code", "execution_count": 86, "id": "b40f65b9-369c-449b-8471-f18445706885", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.00990099009900991,\n", " 'eff_mean': 0.07911406750028108,\n", " 'eff_med': 0.06094932682270948,\n", " 'ks_test': 0.30670935229608176,\n", " 'time_fit': 3.552436828613281e-05,\n", " 'time_evaluate': 0.1047983169555664}" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_norm_var.evaluate(y_hat_test, y_test, sigmas=sigmas_test_var, \n", " confidence=0.99, y_min=0, y_max=1, online=True)" ] }, { "cell_type": "code", "execution_count": 87, "id": "7a8a0560-4625-4117-a14d-e773bd7d7728", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.008883131303784597,\n", " 'eff_mean': 0.08176349040308119,\n", " 'eff_med': 0.058694358557377174,\n", " 'ks_test': 0.6773461391089949,\n", " 'time_fit': 0.00013184547424316406,\n", " 'time_evaluate': 0.06158638000488281}" ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_mond.evaluate(y_hat_test, y_test, bins=bins_test, confidence=0.99, \n", " y_min=0, y_max=1, online=True)" ] }, { "cell_type": "markdown", "id": "d8d38135-dce0-4b1c-96bb-5ba23ad273db", "metadata": {}, "source": [ "Again, we may consider ignoring the original calibration set by setting `warm_start=False`:" ] }, { "cell_type": "code", "execution_count": 88, "id": "21726215-7162-41f0-976c-7d7f3aafbf00", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.00925326177477559,\n", " 'eff_mean': 0.13094088632287204,\n", " 'eff_med': 0.12355990268852475,\n", " 'ks_test': 0.320111395693632,\n", " 'time_fit': 4.3392181396484375e-05,\n", " 'time_evaluate': 0.10146617889404297}" ] }, "execution_count": 88, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_std.evaluate(y_hat_test, y_test, confidence=0.99, y_min=0, y_max=1, \n", " online=True, warm_start=False)" ] }, { "cell_type": "code", "execution_count": 89, "id": "606144f2-b9ba-4bf6-bbaa-9b084e091e9f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.008698066068289045,\n", " 'eff_mean': 0.08954859736991397,\n", " 'eff_med': 0.06255268206715489,\n", " 'ks_test': 0.3056788025210102,\n", " 'time_fit': 3.552436828613281e-05,\n", " 'time_evaluate': 0.10386228561401367}" ] }, "execution_count": 89, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_norm_var.evaluate(y_hat_test, y_test, sigmas=sigmas_test_var, confidence=0.99,\n", " y_min=0, y_max=1, online=True, warm_start=False)" ] }, { "cell_type": "code", "execution_count": 90, "id": "e72d8b6c-d5a2-4d25-8b06-76084a01d044", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.006847413713333972,\n", " 'eff_mean': 0.25423864642541644,\n", " 'eff_med': 0.07076372354098351,\n", " 'ks_test': 0.7000860320809943,\n", " 'time_fit': 0.00013184547424316406,\n", " 'time_evaluate': 0.06085014343261719}" ] }, "execution_count": 90, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_mond.evaluate(y_hat_test, y_test, bins=bins_test, confidence=0.99, \n", " y_min=0, y_max=1, online=True, warm_start=False)" ] }, { "cell_type": "markdown", "id": "ac0a3703-1156-4ede-bfd9-7bddc9eca8f0", "metadata": { "tags": [] }, "source": [ "#### Online calibration without an initial calibration set" ] }, { "cell_type": "markdown", "id": "6b396283-464f-4189-aeb2-b8f3de079eeb", "metadata": {}, "source": [ "Since the calibration set is incrementally extended during online calibration, we may consider starting with an empty calibration set; this allows us to use the full training set when fitting the underlying model. " ] }, { "cell_type": "code", "execution_count": 91, "id": "ca263e6f-7159-4472-aadd-054409e4660e", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
RandomForestRegressor(n_estimators=500, n_jobs=-1)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "RandomForestRegressor(n_estimators=500, n_jobs=-1)" ] }, "execution_count": 91, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rf_full = RandomForestRegressor(n_jobs=-1, n_estimators=500)\n", "\n", "rf_full.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "id": "b0695cf1-5f23-455d-ba94-8514312d8554", "metadata": {}, "source": [ "Let us compute non-conformity scores for the test set using the model trained on the full training set:" ] }, { "cell_type": "code", "execution_count": 92, "id": "23d46e9e-3193-4580-9fd2-677645e12db8", "metadata": {}, "outputs": [], "source": [ "y_hat_full = rf_full.predict(X_test)" ] }, { "cell_type": "markdown", "id": "1927df5d-783d-43e0-930a-edac40ba1b79", "metadata": {}, "source": [ "We may now create a conformal regressor, but this time without fitting a calibration set:" ] }, { "cell_type": "code", "execution_count": 93, "id": "f19db4d5-dc0a-4b71-9e65-bf859c2e028c", "metadata": {}, "outputs": [], "source": [ "cr_full = ConformalRegressor()" ] }, { "cell_type": "markdown", "id": "8dede9f2-5b7f-4de0-b7d4-2b16460f0635", "metadata": {}, "source": [ "We may now obtain prediction intervals while sequentially updating the calibration set:" ] }, { "cell_type": "code", "execution_count": 94, "id": "bc176742-46cc-413b-8f7a-595174668713", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ -inf, inf],\n", " [ -inf, inf],\n", " [ -inf, inf],\n", " ...,\n", " [0.02467109, 0.06406953],\n", " [0.02319163, 0.06259008],\n", " [0.00751889, 0.04691734]])" ] }, "execution_count": 94, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_full.predict_int_online(y_hat_full, y_test, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "9a5f0d6c-f042-4667-84ed-f5e565718c06", "metadata": {}, "source": [ "If we provide also difficulty estimates (`sigmas`), we will obtain a normalized conformal regressor:" ] }, { "cell_type": "code", "execution_count": 95, "id": "8d637948-7b4a-4fc0-b06c-9e99f5cb72cb", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ -inf, inf],\n", " [ -inf, inf],\n", " [ -inf, inf],\n", " ...,\n", " [0.02953552, 0.05920511],\n", " [0.02927876, 0.05650295],\n", " [0.01402977, 0.04040646]])" ] }, "execution_count": 95, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_full.predict_int_online(y_hat_full, y_test, sigmas=sigmas_test_var, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "5726d976-d4b2-4115-8328-f70eac6ee18e", "metadata": {}, "source": [ "We get a Mondrian regressor by providing the categories for the test set, here by dividing the predictions into seven intervals:" ] }, { "cell_type": "code", "execution_count": 96, "id": "a9566f6c-f4cb-4faf-9340-29741a086c9a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ -inf, inf],\n", " [ -inf, inf],\n", " [ -inf, inf],\n", " ...,\n", " [0.02951927, 0.05922135],\n", " [0.02803982, 0.05774189],\n", " [0.01642939, 0.03800684]])" ] }, "execution_count": 96, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bin_thresholds = [0.0, 0.02, 0.04, 0.06, 0.08, 0.1, 0.5, 1.0]\n", "bins_test = binning(rf_full.predict(X_test), bin_thresholds)\n", "\n", "cr_full.predict_int_online(y_hat_full, y_test, bins=bins_test, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "285faf1d-af0d-43c6-b69b-47cafa5356fc", "metadata": {}, "source": [ "Let us investigate the coverage and prediction interval size for each category:" ] }, { "cell_type": "code", "execution_count": 97, "id": "897b7b9d-898d-4207-a6e9-a5918bd0f6b7", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
NumberCoverageSize
05730.91100.0360
132350.90230.0248
228250.91540.0351
319290.89630.0439
410230.91500.0617
512170.91210.1363
651.00001.0000
\n", "
" ], "text/plain": [ " Number Coverage Size\n", "0 573 0.9110 0.0360\n", "1 3235 0.9023 0.0248\n", "2 2825 0.9154 0.0351\n", "3 1929 0.8963 0.0439\n", "4 1023 0.9150 0.0617\n", "5 1217 0.9121 0.1363\n", "6 5 1.0000 1.0000" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" } ], "source": [ "intervals = cr_full.predict_int_online(y_hat_full, y_test,\n", " bins=bins_test, y_min=0, y_max=1, \n", " confidence=0.9)\n", "number = []\n", "coverage = []\n", "size = []\n", "\n", "for c in range(len(bin_thresholds)-1):\n", " selection = bins_test == c\n", " number.append(np.sum(selection))\n", " coverage.append(np.sum(\n", " (intervals[selection,0] <= y_test[selection])& \\\n", " (y_test[selection] <= intervals[selection,1]))/np.sum(selection))\n", " size.append(np.sum(intervals[selection,1]-\\\n", " intervals[selection,0])/np.sum(selection))\n", "\n", "df = pd.DataFrame({\"Number\":number, \"Coverage\":coverage, \"Size\":size})\n", "df.round(4)" ] }, { "cell_type": "markdown", "id": "8b286a9c-8253-41c2-b1ea-222f1380ab1c", "metadata": {}, "source": [ "We can use `predict_p_online` to get the p-values:" ] }, { "cell_type": "code", "execution_count": 98, "id": "4788df88-db08-4245-a1c8-888655c037bb", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.04433503, 0.55168219, 0.99147872, ..., 0.32671194, 0.65758918,\n", " 0.2918815 ])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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zZg6daqRlJRk+zp//rxZP4JDKenx+F88NVZ2SnosMjIyjHr16hl9+vQx9u/fb6xdu9Zo0qSJ8eSTT5r1IziMkh6L2bNnG25ubsa0adOMI0eOGBs2bDDCwsKMjh07mvUjOIyMjAwjNjbWiI2NNSQZH374oREbG2ubyqC8Pr8drggZhmFMnTrVCA4ONjw8PIwOHToYa9eutX1v8ODBxm233VZk/19//dVo37694eHhYTRs2NCYPn16BSd2XCU5FrfddpshqdjX4MGDKz64gyrpn43/RhEqWyU9FvHx8Ub37t2NKlWqGPXq1TPGjh1rZGVlVXBqx1TSYzFlyhSjZcuWRpUqVYzAwEBj4MCBxokTJyo4teP55ZdfrvoZUF6f3xbD4FweAABwTg51jxAAAEBJUIQAAIDToggBAACnRRECAABOiyIEAACcFkUIAAA4LYoQAABwWhQhAA7vzTffVLt27cyOAaASoggBAACnRRECAABOiyIEoELdfvvtGjlypEaOHKnq1avL399fr7766mVX7k5LS1OVKlW0Zs2aIuPLly+Xj4+PbTX2l19+WU2bNpW3t7caNWqk1157TXl5eVfNMHr06CJjvXv31pAhQ2zbubm5eumll1S3bl35+PioU6dO+vXXX0v9cwOonChCACrc3Llz5ebmpq1bt2rKlCmaPHmyvvzyy2L7+fn56d5779WCBQuKjC9cuFAPPvigqlatKkmqVq2a5syZo7i4OH388ceaMWOGJk+efF0Zn3jiCW3cuFGLFy/Wnj179Oijj+qee+7RoUOHruvXBVC5uJkdAIDzqV+/viZPniyLxaJmzZpp7969mjx5soYPH15s34EDByoyMlJZWVny9vZWenq6vvvuOy1btsy2z6uvvmr774YNG+r555/XkiVL9NJLL5Uq35EjR7Ro0SKdOHFCQUFBkqQXXnhBa9as0ezZs/XOO++U6tcFUPlwRghAhevcubMsFottOzw8XIcOHdLf/vY3Va1a1faVkJCge++9V25ublq1apUkadmyZapWrZoiIiJsr1+6dKluueUW1alTR1WrVtVrr72mhISEUufbuXOnDMNQ06ZNi+RZu3atjhw5UvofHEClwxkhAJVGVFSU+vXrZ9sOCgqSm5ub+vTpo4ULF6p///5auHCh+vXrJze3wr++tmzZov79+2vixInq0aOH/Pz8tHjxYn3wwQdXfB8XF5di9yT99z1FVqtVrq6uiomJkaura5H9Ll2OA+AYKEIAKtyWLVuKbTdp0kT+/v7y9/cvtv/AgQMVERGh/fv365dfftFf//pX2/c2btyo4OBgTZgwwTZ2/Pjxq75/rVq1lJSUZNsuKCjQvn37dMcdd0iS2rdvr4KCAp05c0bdunUr1c8IwD5waQxAhUtMTNTYsWP122+/adGiRfrkk080atSoK+5/2223KSAgQAMHDlTDhg3VuXNn2/caN26shIQELV68WEeOHNGUKVO0YsWKq77/nXfeqe+++07fffedDhw4oBEjRuj8+fO27zdt2tR2b9Ly5ct17Ngxbd++Xe+++65Wr1593T8/gMqDIgSgwkVGRurixYvq2LGjnnnmGT377LN66qmnrri/xWLRY489pt27d2vgwIFFvvfggw9qzJgxGjlypNq1a6dNmzbptddeu+r7Dx06VIMHD1ZkZKRuu+02hYSE2M4GXTJ79mxFRkbq+eefV7NmzfTAAw9o69atql+/ful/cACVjsW43OQdAFBObr/9drVr104fffSR2VEAgDNCAADAeVGEAACA0+LSGAAAcFqcEQIAAE6LIgQAAJwWRQgAADgtihAAAHBaFCEAAOC0KEIAAMBpUYQAAIDToggBAACnRRECAABO6/8B2WdhvFTtqbEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.36230508215180257\n" ] } ], "source": [ "p_values = cr_full.predict_p_online(y_hat_test, y_test, bins=bins_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "cded4bc3-f42b-4f22-b165-9ba262cfb939", "metadata": {}, "source": [ "We may also evaluate the conformal regressor using online calibration, by specifying `online=True` for the `evaluate` method:" ] }, { "cell_type": "code", "execution_count": 99, "id": "665a7882-b3b0-46b5-9b02-1242f2c06a25", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.09290274821874711,\n", " 'eff_mean': 0.04190774164827582,\n", " 'eff_med': 0.0405975485901634,\n", " 'ks_test': 0.0736480025501508,\n", " 'time_fit': None,\n", " 'time_evaluate': 0.0900564193725586}" ] }, "execution_count": 99, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_full.evaluate(y_hat_full, y_test, y_min=0, y_max=1, confidence=0.9, \n", " online=True)" ] }, { "cell_type": "markdown", "id": "5017bb3f-237b-499c-90e1-26d9c1751743", "metadata": {}, "source": [ "For Mondrian conformal regression, we just have to provide the categories:" ] }, { "cell_type": "code", "execution_count": 100, "id": "6fc28c2a-2fa0-45ef-a19a-eb143e8fc702", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.09253261774775612,\n", " 'eff_mean': 0.04799839739221846,\n", " 'eff_med': 0.03149373114754073,\n", " 'ks_test': 0.15630288236588008,\n", " 'time_fit': None,\n", " 'time_evaluate': 0.0658876895904541}" ] }, "execution_count": 100, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_full.evaluate(y_hat_full, y_test, bins=bins_test, y_min=0, y_max=1, \n", " confidence=0.9, online=True)" ] }, { "cell_type": "markdown", "id": "63733c6a-d586-49f9-8e01-c02e386ddd99", "metadata": { "tags": [] }, "source": [ "### Out-of-bag calibration" ] }, { "cell_type": "markdown", "id": "cb701612-705e-446e-a96e-dacb20fd8366", "metadata": { "tags": [] }, "source": [ "For conformal regressors that employ learners that use bagging, like random forests, we may consider an alternative strategy to dividing the original training set into a proper training and calibration set; we may use the out-of-bag (OOB) predictions, which allow us to use the full training set for both model building and calibration. It should be noted that this strategy does not come with the theoretical validity guarantee of the above (inductive) conformal regressors, due to that calibration and test instances are not handled in exactly the same way. In practice, however, conformal regressors based on out-of-bag predictions rarely do not meet the coverage requirements." ] }, { "cell_type": "markdown", "id": "ea422ac1-dbdc-47e9-bf00-8b2def1825c9", "metadata": { "tags": [] }, "source": [ "#### Standard conformal regressors with out-of-bag calibration" ] }, { "cell_type": "markdown", "id": "c0263047-86e8-425d-92c4-f148e5db6913", "metadata": { "tags": [] }, "source": [ "Let us first generate a model from the full training set and then get the residuals using the OOB predictions; we rely on that the learner has an attribute `oob_prediction_`, which e.g. is the case for a `RandomForestRegressor` if `oob_score` is set to `True` when created." ] }, { "cell_type": "code", "execution_count": 101, "id": "772644f0-ce59-49a6-847d-c43fd9bb0374", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
RandomForestRegressor(n_estimators=500, n_jobs=-1, oob_score=True)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "RandomForestRegressor(n_estimators=500, n_jobs=-1, oob_score=True)" ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learner_full = RandomForestRegressor(n_jobs=-1, n_estimators=500, \n", " oob_score=True)\n", "\n", "learner_full.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "id": "a18461b2-09e0-47b0-8138-02b452d0ff88", "metadata": {}, "source": [ "Now we can obtain the residuals." ] }, { "cell_type": "code", "execution_count": 102, "id": "be432940-af35-478e-b49f-26746056b2cc", "metadata": {}, "outputs": [], "source": [ "oob_predictions = learner_full.oob_prediction_\n", "\n", "residuals_oob = y_train - oob_predictions" ] }, { "cell_type": "markdown", "id": "91abe570-276e-4a2f-8e2e-08b1da212e5d", "metadata": {}, "source": [ "We may now obtain a standard conformal regressor from these OOB residuals" ] }, { "cell_type": "code", "execution_count": 103, "id": "de8818b7-91b5-4516-a74b-7076b725d141", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=False, mondrian=False)" ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cr_std_oob = ConformalRegressor()\n", "\n", "cr_std_oob.fit(residuals_oob)" ] }, { "cell_type": "markdown", "id": "ab40dda6-0d81-4768-9a84-5893d09eb1be", "metadata": {}, "source": [ "... and apply it using the point predictions of the full model." ] }, { "cell_type": "code", "execution_count": 104, "id": "ff0c3105-3141-4dfa-9377-65d24763156c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 0.05936269],\n", " [0.0294215 , 0.09067374],\n", " [0.13355532, 0.19480756],\n", " ...,\n", " [0.01365878, 0.07491102],\n", " [0.01310291, 0.07435515],\n", " [0. , 0.05830365]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "y_hat_full = learner_full.predict(X_test)\n", "\n", "intervals_std_oob = cr_std_oob.predict_int(y_hat_full, y_min=0, y_max=1)\n", "\n", "display(intervals_std_oob)" ] }, { "cell_type": "markdown", "id": "c35965ec-0543-49d6-afef-c6d23cfc9d5e", "metadata": {}, "source": [ "#### Normalized conformal regressors with out-of-bag calibration" ] }, { "cell_type": "markdown", "id": "d87c0492-dea7-435d-b4b4-f9937182b91d", "metadata": {}, "source": [ "We may also generate normalized conformal regressors from the OOB predictions. The `DifficultyEstimator` can be used also for this purpose; for the k-nearest neighbor approaches, the difficulty of each object in the training set will be computed using a leave-one-out procedure, while for the variance-based approach the out-of-bag predictions will be employed. \n", "\n", "By setting `oob=True`, we inform the `fit` method that we may request difficulty estimates for the provided set of objects; these will be retrieved by not providing any objects when calling the `apply` method.\n", "\n", "Let us start with the k-nearest neighbor approach using distances only." ] }, { "cell_type": "code", "execution_count": 105, "id": "d5ea97f8-1d9a-4025-b8d5-99ef2ec9433f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=knn, k=25, target=none, scaler=True, beta=0.01, oob=True)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=True, mondrian=False)" ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "de_knn_dist_oob = DifficultyEstimator()\n", "\n", "de_knn_dist_oob.fit(X=X_train, scaler=True, oob=True)\n", "\n", "display(de_knn_dist_oob)\n", "\n", "sigmas_knn_dist_oob = de_knn_dist_oob.apply()\n", "\n", "cr_norm_knn_dist_oob = ConformalRegressor()\n", "\n", "cr_norm_knn_dist_oob.fit(residuals_oob, sigmas=sigmas_knn_dist_oob)" ] }, { "cell_type": "markdown", "id": "e6920423-279d-4ddc-982d-6fa422eea71f", "metadata": {}, "source": [ "In order to apply the normalized OOB regressors to the test set, we\n", "need to generate difficulty estimates for the latter too." ] }, { "cell_type": "code", "execution_count": 106, "id": "0ecff050-2e20-450e-aa27-8df9a16886bd", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01116466, 0.04630847],\n", " [0.01125494, 0.10884029],\n", " [0.13664377, 0.19171911],\n", " ...,\n", " [0.0071363 , 0.08143349],\n", " [0.0277659 , 0.05969216],\n", " [0.00597985, 0.04937521]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sigmas_test_knn_dist_oob = de_knn_dist_oob.apply(X_test)\n", "\n", "intervals_norm_knn_dist_oob = cr_norm_knn_dist_oob.predict_int(\n", " y_hat_full, sigmas=sigmas_test_knn_dist_oob, y_min=0, y_max=1)\n", "\n", "display(intervals_norm_knn_dist_oob)" ] }, { "cell_type": "markdown", "id": "7aa3cb65-e631-4245-8993-f053eb7c02cf", "metadata": {}, "source": [ "For completeness, we will illustrate the use of out-of-bag calibration for the remaining approaches too. For k-nearest neighbors with labels, we do the following:" ] }, { "cell_type": "code", "execution_count": 107, "id": "681e81b5-f626-4879-bcaa-3b405646d849", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=knn, k=25, target=labels, scaler=True, beta=0.01, oob=True)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "array([[0.01040222, 0.04707091],\n", " [0.01751339, 0.10258184],\n", " [0.12133658, 0.2070263 ],\n", " ...,\n", " [0.02582716, 0.06274264],\n", " [0.03392409, 0.05353396],\n", " [0.01796022, 0.03739484]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "de_knn_std_oob = DifficultyEstimator()\n", "\n", "de_knn_std_oob.fit(X=X_train, y=y_train, scaler=True, oob=True)\n", "\n", "display(de_knn_std_oob)\n", "\n", "sigmas_knn_std_oob = de_knn_std_oob.apply()\n", "\n", "cr_norm_knn_std_oob = ConformalRegressor()\n", "\n", "cr_norm_knn_std_oob.fit(residuals=residuals_oob, sigmas=sigmas_knn_std_oob)\n", "\n", "sigmas_test_knn_std_oob = de_knn_std_oob.apply(X_test)\n", "\n", "intervals_norm_knn_std_oob = cr_norm_knn_std_oob.predict_int(\n", " y_hat_full, sigmas=sigmas_test_knn_std_oob, y_min=0, y_max=1)\n", "\n", "display(intervals_norm_knn_std_oob)" ] }, { "cell_type": "markdown", "id": "bb3f08dc-5173-4043-91c5-c5bbda8de75e", "metadata": {}, "source": [ "A third option is to use k-nearest neighbors with (OOB) residuals:" ] }, { "cell_type": "code", "execution_count": 108, "id": "81bd366b-64de-40e3-b0ec-904d9367be15", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=knn, k=25, target=residuals, scaler=True, beta=0.01, oob=True)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "array([[0.01476125, 0.04271188],\n", " [0.03525929, 0.08483595],\n", " [0.11120957, 0.21715331],\n", " ...,\n", " [0.03526134, 0.05330845],\n", " [0.02774373, 0.05971432],\n", " [0.01962453, 0.03573053]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "de_knn_res_oob = DifficultyEstimator()\n", "\n", "de_knn_res_oob.fit(X=X_train, residuals=residuals_oob, scaler=True, oob=True)\n", "\n", "display(de_knn_res_oob)\n", "\n", "sigmas_knn_res_oob = de_knn_res_oob.apply()\n", "\n", "cr_norm_knn_res_oob = ConformalRegressor()\n", "\n", "cr_norm_knn_res_oob.fit(residuals_oob, sigmas=sigmas_knn_res_oob)\n", "\n", "sigmas_test_knn_res_oob = de_knn_res_oob.apply(X_test)\n", "\n", "intervals_norm_knn_res_oob = cr_norm_knn_res_oob.predict_int(\n", " y_hat_full, sigmas=sigmas_test_knn_res_oob, y_min=0, y_max=1)\n", "\n", "display(intervals_norm_knn_res_oob)" ] }, { "cell_type": "markdown", "id": "7667bd56-8b45-4b0f-8586-935659e6b1f5", "metadata": {}, "source": [ "A fourth and final option for the normalized conformal regressors is to use variance as a difficulty estimate. We then leave labels and residuals out, but provide an (ensemble) learner. In contrast to when `oob=False`, we are here required to provide the (full) training set, from which the variance of the out-of-bag predictions will be computed. When applied to the test set, the full ensemble model will not be used to obtain the difficulty estimates, but instead a subset of the constituent models is used, following what could be seen as post hoc assignment of each test instance to a bag. " ] }, { "cell_type": "code", "execution_count": 109, "id": "9344f245-7ed7-446d-b462-5b52a43d5795", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DifficultyEstimator(fitted=True, type=variance, scaler=True, beta=0.01, oob=True)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "array([[0.01105193, 0.0464212 ],\n", " [0.03974938, 0.08034585],\n", " [0.12282223, 0.20554065],\n", " ...,\n", " [0.02345883, 0.06511097],\n", " [0.0256265 , 0.06183156],\n", " [0.01017128, 0.04518377]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "de_var_oob = DifficultyEstimator()\n", "\n", "de_var_oob.fit(X=X_train, learner=learner_full, scaler=True, oob=True)\n", "\n", "display(de_var_oob)\n", "\n", "sigmas_var_oob = de_var_oob.apply()\n", "\n", "cr_norm_var_oob = ConformalRegressor()\n", "\n", "cr_norm_var_oob.fit(residuals_oob, sigmas=sigmas_var_oob)\n", "\n", "sigmas_test_var_oob = de_var_oob.apply(X_test)\n", "\n", "intervals_norm_var_oob = cr_norm_var_oob.predict_int(y_hat_full, \n", " sigmas=sigmas_test_var_oob, \n", " y_min=0, y_max=1)\n", "\n", "display(intervals_norm_var_oob)" ] }, { "cell_type": "markdown", "id": "943b41e1-ef45-4041-8042-791434fa7bf6", "metadata": {}, "source": [ "#### Mondrian conformal regressors with out-of-bag calibration" ] }, { "cell_type": "markdown", "id": "224d4917-cd8b-433a-abc3-49fb96b3561d", "metadata": {}, "source": [ "We may form the categories using the difficulty estimates obtained from the OOB predictions. We here consider the difficulty estimates produced by the fourth above option (using variance) only. " ] }, { "cell_type": "code", "execution_count": 110, "id": "7dde227d-112a-48ff-9d6b-76367b4f956e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ConformalRegressor(fitted=True, normalized=False, mondrian=True)" ] }, "execution_count": 110, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bins_oob, bin_thresholds_oob = binning(sigmas_var_oob, bins=20)\n", "\n", "cr_mond_oob = ConformalRegressor()\n", "\n", "cr_mond_oob.fit(residuals=residuals_oob, bins=bins_oob)" ] }, { "cell_type": "markdown", "id": "139631b1-2f60-4fb2-8e27-5466628c8a9c", "metadata": {}, "source": [ "... and assign the categories for the test instances, ..." ] }, { "cell_type": "code", "execution_count": 111, "id": "c91acfb0-abdc-4633-939c-92f28b71666c", "metadata": {}, "outputs": [], "source": [ "bins_test_oob = binning(sigmas_test_var_oob, bins=bin_thresholds_oob)" ] }, { "cell_type": "markdown", "id": "8aaf927a-dd60-485e-a850-e6aca91da270", "metadata": {}, "source": [ "... and finally generate the prediction intervals." ] }, { "cell_type": "code", "execution_count": 112, "id": "224d067f-4db3-4903-9f1b-5dd9f8d75cbf", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.0184766 , 0.03899653],\n", " [0.03784055, 0.08225468],\n", " [0.11179549, 0.21656739],\n", " ...,\n", " [0.02166709, 0.0669027 ],\n", " [0.03048874, 0.05696931],\n", " [0.01912813, 0.03622693]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "intervals_mond_oob = cr_mond_oob.predict_int(y_hat_full,\n", " bins=bins_test_oob,\n", " y_min=0, y_max=1)\n", "\n", "display(intervals_mond_oob)" ] }, { "cell_type": "markdown", "id": "de107bca-8a71-427b-96f3-fe79f1887d3d", "metadata": {}, "source": [ "### Investigating the OOB prediction intervals" ] }, { "cell_type": "code", "execution_count": 113, "id": "47c85f2d-edf7-441c-9372-c5ff0011f265", "metadata": {}, "outputs": [], "source": [ "prediction_intervals = {\n", " \"Std CR OOB\":intervals_std_oob,\n", " \"Norm CR knn dist OOB\":intervals_norm_knn_dist_oob,\n", " \"Norm CR knn std OOB\":intervals_norm_knn_std_oob,\n", " \"Norm CR knn res OOB\":intervals_norm_knn_res_oob,\n", " \"Norm CR var OOB\":intervals_norm_var_oob,\n", " \"Mond CR OOB\":intervals_mond_oob,\n", "}" ] }, { "cell_type": "markdown", "id": "0704cfac-b4a3-417a-bc94-72f6b4a1525f", "metadata": {}, "source": [ "Let us see what fraction of the intervals that contain the true targets and how large the intervals are." ] }, { "cell_type": "code", "execution_count": 114, "id": "342f0d39-d50e-466d-a944-469f55d3ecbf", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CoverageMean sizeMedian size
Std CR OOB0.95120.05980.0613
Norm CR knn dist OOB0.94930.05610.0461
Norm CR knn std OOB0.95310.05750.0452
Norm CR knn res OOB0.95430.05350.0419
Norm CR var OOB0.95060.04900.0380
Mond CR OOB0.94980.05000.0366
Mean0.95140.05430.0448
\n", "
" ], "text/plain": [ " Coverage Mean size Median size\n", "Std CR OOB 0.9512 0.0598 0.0613\n", "Norm CR knn dist OOB 0.9493 0.0561 0.0461\n", "Norm CR knn std OOB 0.9531 0.0575 0.0452\n", "Norm CR knn res OOB 0.9543 0.0535 0.0419\n", "Norm CR var OOB 0.9506 0.0490 0.0380\n", "Mond CR OOB 0.9498 0.0500 0.0366\n", "Mean 0.9514 0.0543 0.0448" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "coverages = []\n", "mean_sizes = []\n", "median_sizes = []\n", "\n", "for name in prediction_intervals.keys():\n", " intervals = prediction_intervals[name]\n", " coverages.append(np.sum([1 if (y_test[i]>=intervals[i,0] and \n", " y_test[i]<=intervals[i,1]) else 0 \n", " for i in range(len(y_test))])/len(y_test))\n", " mean_sizes.append((intervals[:,1]-intervals[:,0]).mean())\n", " median_sizes.append(np.median((intervals[:,1]-intervals[:,0])))\n", "\n", "pred_int_df = pd.DataFrame({\"Coverage\":coverages, \n", " \"Mean size\":mean_sizes, \n", " \"Median size\":median_sizes}, \n", " index=list(prediction_intervals.keys()))\n", "\n", "pred_int_df.loc[\"Mean\"] = [pred_int_df[\"Coverage\"].mean(), \n", " pred_int_df[\"Mean size\"].mean(),\n", " pred_int_df[\"Median size\"].mean()]\n", "\n", "display(pred_int_df.round(4))" ] }, { "cell_type": "markdown", "id": "48ad1398-2cde-46a0-8c39-35b94c80c5d1", "metadata": {}, "source": [ "Let us look at the distribution of the interval sizes." ] }, { "cell_type": "code", "execution_count": 115, "id": "1e20a1a1-c8ec-4268-9ff9-60cafed650af", "metadata": {}, "outputs": [ { "data": { "image/png": "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sXTpUh566CGefPJJdu7cyfDhwxk/fjyJiYkVll+3bh1jx45lxYoVbN++nUsuuYSJEyeyc+fOeo685iobMuvuz5GlLs08qeukMwddS1SfNVwWGnZNx3vvwfLl0LOnpyMRovHw9vbm5ZdfrvUvZtcfKLV1rcsuu4yXXnqJf/zjH2zYsIEtW7Zw//338/bbb5dZ4fbyyy8nOTmZ48ePM3/+fH766Sfuu+++WoulvgUHB+Pn51er19y0aRODBg3CarXy888/c/jwYV588UUWL17M2LFjy/zbff/994wcOZJWrVqxZs0aDh48yIMPPsgLL7zADTfcUO47ZuHChSQnJ3Ps2DHee+89Pv30U55//vlajb9KarAQXY0NHDhQueeee8rs69Kli/L4449X+RrdunVTnnnmmSqXbyirzO6bsk9ZwxrlxFsnyuzftWuMsmYNyoQPUDRPa5Sk3CT1QHa2omi16uqyJ06Uu94VV1yhAMr8+fPrI3whGrzGusqsoijKrbfeqlx55ZVKly5dlEcffdS9//vvv1fO/rX9zTffKN26dVOMRqMSExOjvPbaa2WOx8TEKM8995xy6623Kv7+/sr06dPdK8b+9NNPSqdOnRSTyaRMmjRJyc/PVxYtWqTExMQogYGByv/93/8pdru90jhffvllRavVKjt27Ch3zGq1Kvn5+e73c/XVV5c5PmvWLCU4OPi8n0Pp87Zt26a0aNFCef755xVFUVea7d27t/LJJ58oMTExir+/vzJ16lQlNzfXfc7IkSOVBx54QHn00UeVoKAgJTw8XJkzZ84572u325WHH35YCQgIUIKDg5VHH31UmT59eplYRo4cqTz44IPu1++++67SoUMHxcvLSwkLC1MmTZrkfg+UWg0XUI4dO1bunk6nU+nWrZsyYMAAxeFwlDm2a9cuRaPRKC+99JKiKIqSn5+vhISEKNddd1256/z4448KoHz55ZfufYDy/ffflyl3++23KxMmTKjw/dflKrMeq+mwWq1s376dcePGldk/btw4NmzYUKVrOJ1O8vLyCA4OrrSMxWIhNze3zNZQKYpCXp5a03EkHwa1GkSkX6R6cMcOcDqhbVto1arcuQ25eUWIBkNRoKDAM1s1F/TW6XS8+OKLvP3225w8ebLCMtu3b2fKlCnccMMN7N27l6effpqnnnqKRYsWlSn36quv0qNHD7Zv385TTz0FQGFhIW+99RZffvklv/76K3/++SfXXXcdK1asYMWKFXz66ad89NFHfPPNN5XG+PnnnzNmzBj6njWaDsBgMODj41PhefHx8fz6668YDIYqfhrw559/cumll/LMM8/w5JNPuvcfPXqUZcuWsXz5cpYvX87atWvLNUstXrwYHx8fNm/ezCuvvMKzzz57ztW4X3/9dRYsWMDHH3/M+vXryczM5Pvvv6+0/LZt25g5cybPPvsshw4d4tdff2XECHXU4X//+1+GDBnCXXfdRXJyMsnJyURHR5e7xq5du4iNjWXWrFlotWW/mnv37s2YMWNYsmQJAL///jsZGRk88sgj5a4zceJEOnXq5C5bkcOHD7NmzRoGnTXfU33w2Dwd6enpOBwOwsPDy+wPDw8nJSWlStd4/fXXKSgoYMqUKZWWmTt3Ls8880yNYq0TFQyZtVhOYLdn4FA0HCtQmNpv7JmDsepaLHTrVuHlXG2n1fkhrg8FBfDZZzB4MPTqBQ2sOVo0N4WF4OvrmXvn50MlX8KVufbaa+nTpw9z5szh448/Lnf8jTfe4NJLL3UnEp06dSI2NpZXX32VGTNmuMuNHj26zBfU+vXrsdlsvP/++7Rv3x6AyZMn8+mnn3L69Gl8fX3p1q0bl1xyCWvWrGHq1KkVxhcXF8eoUaOq9F6WL1+Or68vDoeD4uJid/xV8cMPP3DLLbfw4YcfcuONN5Y55nQ6WbRokbup45ZbbmHVqlW88MIL7jK9evVizpw5AHTs2JF33nmHVatWMXbsWCoyb948Zs+ezaRJavP2Bx98cM7+g4mJifj4+HDllVfi5+dHTEyMOxELCAjAaDRiNpuJiIio9BqHDx8GoGvXrhUe79q1K+vXr69S2S5durjLuNx4443odDrsdjsWi4Urr7yS2bNnVxpPXfF4R9KzO0UpilKljlJLlizh6aefZunSpYSVWoPkbLNnzyYnJ8e9nThxosYx1xVXf46EQrApcE2Xa84c3KFOGFbZ+vANNenYtg3uuQeuvFISDiEuxMsvv8zixYuJdf3hUcqBAwcYNmxYmX3Dhg0jLi6uTGfCAQMGlDvXbDa7Ew5Q/+Br06YNvqWSsvDwcFJTUyuNraq/rwEuueQSdu3axebNm3nggQe47LLLeOCBB8573ubNm5k0aRKLFy8ul3AAtGnTpkzfisjIyHIx9+rVq8zrisq45OTkkJyczJBSEzDq9foKP0OXsWPHEhMTQ7t27bjlllv4/PPPK+z4WRMVfdZKJbVnFZV988032bVrF7t372b58uUcPnyYW265pVZjrAqPJR2hoaHodLpytRqpqanlaj/OtnTpUu644w6++uorxowZc86yXl5e+Pv7l9kahAqGzLrm5zicp9CtRTf6RpSqsnSNN62gEyk03KRDq4UxY+CsVjQhPMNsVmscPLGZzRcU8ogRI7jssst44oknyh2r6hdRRc0cZ/+u0Gg0Fe5zOp2VxtapUycOHDhwzvhLx9ChQwd69erFW2+9hcViqVItdPv27enSpQsLFiyosBNsVWKu7vuqLj8/P3bs2MGSJUuIjIzkP//5D7179yY7O7vK1+jUqRNAhcklwMGDB+nYsWOZspV99qXLukRERNChQwc6d+7MFVdcwTPPPMPSpUs5cuRIlWOsDR5LOoxGI/379y/XrrZy5UqGDh1a6XlLlixhxowZfPHFF1xxxRV1HWadcf9iKPX7IjdXXcztSD48NeKpM79MiovPzNHRyJKO4cNh5UqooGZYiPqn0ahNHJ7YalDV99JLL/HTTz+V6+/WrVs3d5W7y4YNG+jUqRM6ne6C71dV06ZN448//qhwBKHdbqegoKDSc+fMmcNrr71GUlLSOe8RGhrK6tWrOXr0KFOnTnX/rqsrAQEBREZGssk1WhD1vWw/z0RDer2eMWPG8Morr7Bnzx6OHz/O6tWrAfX77uxhrGfr06cPXbp04c033yyXEO3evZs//vjDXdMzbtw4goODef3118td58cffyQuLq7CWqHSXP9/FBUVnbNcbfNo88qsWbOYP38+CxYs4MCBAzz88MMkJiZyzz33AGrTyPTp093llyxZwvTp03n99dcZPHgwKSkppKSkkJOT46m3UGsURSEtax0AqbagskNl9+4Fux1CQtTZSCtgt9uBhpd0CCFqrmfPntx00028/fbbZfb/85//ZNWqVTz33HMcPnyYxYsX884771TYwbAuPPTQQwwbNoxLL72Ud999l927dxMfH89XX33FoEGDiIuLq/TcUaNG0b17d1588cXz3icsLIzVq1dz8OBBbrzxRvfvu7ry4IMP8tJLL/H9999z8OBB7rvvvnPWWixfvpy33nqLXbt2kZCQwCeffILT6aRz586A2gS0efNmjh8/Tnp6eoW1LBqNhvnz5xMbG8ukSZPYsmULiYmJfP3110ycOJEhQ4a45/rw8fHhww8/5IcffuAf//iHO8n5+OOPmTFjBpMnTy7X1zE7O5uUlBSSkpJYu3Ytzz77LJ06daq0X0hd8WjSMXXqVObNm8ezzz5Lnz59WLduHStWrCAmJgaA5OTkMnN2fPjhh9jtdu6//34iIyPd24MPPuipt3DhzupIarUmo1NycShwaZd7MOhKJQ+u/hz9+1f611JDrOmwWuE8yb0Qooqee+65ck0n/fr146uvvuLLL7+kR48e/Oc//+HZZ58t04m0Lnl5ebFy5Uoee+wxPvzwQwYPHsxFF13EW2+9xcyZM+lRwezJpc2aNYv//e9/VeprFxERwerVq9m7dy833XTTeWsOauKf//wn06dPZ8aMGQwZMgQ/Pz+uvfbaSssHBgby3XffMXr0aLp27coHH3zAkiVL6F4ykeMjjzyCTqejW7dutGjRotK5qIYNG8amTZvQ6XRMmDCBDh06MHv2bG699VZWrlxZZh6myZMns2bNGk6cOMGIESPo3Lkzb7zxBk8++SRffvlluWa32267jcjISFq1asWNN95I9+7d+eWXX9Dr63c8iUaprCdKE5Wbm0tAQAA5OTke7d+xb9I+0r9Lp+N7HWl5b0uOJS0l4fANJBbC4EGH6BTS6Uzh++6D99+Hf/0LzhoK5tKhQweOHj3K33//fc7mqfo0fz7MnAkzZqgThAlRn4qLizl27Jh7xmMhRNWc62enpt+hHh+90mydVdOx/bg6pjrdHlQ24QBwVVGWVNVVpCHWdOzaBUVFEBDg6UiEEEI0BB6bp6PZO6t+KSVrC6E+EBJwUfmyrqTjrN7IpTXEpOPtt+H++6s9NYEQQogmSpIOD9NoNKQXpuOvSQagb+vryhZIS4OEBLUvRwULvbk0xKRDo4F67qMkhBCiAZPmFQ8pPWT2053v0rpkCH/XVteXLbhrl/rYoQMEBVV6vYaYdAghhBClSdLRAGw9/jkAVk0LDIaz1pFxLWd/1ox6Z2toSccDD8Ajj0B8vKcjEUII0VBI84qnlFR0pBamojeofTZCgy4uX+7vv9XHSqY/d2lISYfFoo5cKS6G227zdDRCCCEaCkk6PKUk6TiQdoCOJYvGtqgo6di4UX08x6JKiqI0qKRDUdSkY+fOStenE0II0QxJ84qHbU3eSseS9ZV8fc9aHjopCZKT1QVMKlg62qX0JDkNIenw9oabboLXXpNF3oQQQpwhSYenlNR0JGQdIqJk7hVf3z5ly+zbpz527HjOcael1yJoCEmHEEIIURFJOjzENXolrCTh8PZui8Fw1ugU1/TnVexECp5POux2WLQITp70aBhCiCZgxowZXHPNNZ4O44JpNBqWLVvm6TAaFEk6PCzMW00+yjWtAGzZoj4OHHjOazSkpGPnTrXzaM+esu6KEBdqxowZaDQaXjpr2YNly5aVW1PD06xWK6+88gq9e/fGbDYTGhrKsGHDWLhwoft3k+v9aDQa9Ho9rVu35t577yUrK8vD0Vff008/TZ/zdOyvjhMnTnDHHXcQFRWF0WgkJiaGBx98kIyMjHJl9+/fz5QpU2jRogVeXl507NiRp556isLCwjLl2rRp4/68dTodUVFR3HHHHQ3i85akw0OKbcUARJvU1/7+g8sX2rxZfbyogllKS3H9YLv+B/MkqxUGDYIRI8DDoQjRqHl7e/Pyyy/X+heF1Wqt1WtddtllvPTSS/zjH/9gw4YNbNmyhfvvv5+3336b/fv3u8tefvnlJCcnc/z4cebPn89PP/3EfffdV2uxNEbx8fEMGDCAw4cPs2TJEo4cOcIHH3zAqlWrGDJkCJmZme6ymzZtYtCgQVitVn7++WcOHz7Miy++yOLFixk7dmy5f9dnn33WvWjq559/zrp165g5c2Z9v8VyJOmoR06Lk9NfnCb+yXgKf1cz0wiz+s3s7z+obOHsbLUjKUC/fue8bkMauTJsGGzaBN995+lIhGjcxowZQ0REBHPnzj1nuW+//Zbu3bvj5eVFmzZteP3118scb9OmDc8//zwzZswgICCAu+66i0WLFhEYGMjy5cvp3LkzZrOZyZMnU1BQwOLFi2nTpg1BQUE88MAD51zNdd68eaxbt45Vq1Zx//3306dPH9q1a8e0adPYvHkzHUst3eDl5UVERAStWrVi3LhxTJ06ld9//71an8n27dsJCwvjhRdeAM7UOnz66ae0adOGgIAAbrjhBvLy8tznjBo1ipkzZ/LYY48RHBxMREQETz/99Dnv8+effzJw4EB8fHwIDAxk2LBhJCQksGjRIp555hl2797trklYtGgRAHFxcYwYMQJvb2+6devGypUrz/t+7r//foxGI7///jsjR46kdevWjB8/nj/++INTp07x5JNPAmpz/B133EHXrl357rvvGDhwIDExMVx//fX89NNPbNy4kTfffLPMtf38/IiIiKBly5ZccsklTJ8+nR2uJnsPkiGz9ejkvJPEP152tizfFqkA+PicNcX5X3+pj+3agZ/fOa/bkJIOF6nlEA2RoigU2grPX7AOmA3majWN6HQ6XnzxRaZNm8bMmTNp1apVuTLbt29nypQpPP3000ydOpUNGzZw3333ERISUmZ5+1dffZWnnnqKf//73wCsX7+ewsJC3nrrLb788kvy8vK47rrruO666wgMDGTFihXEx8czadIkLr74YqZOnVphjJ9//jljxoyhbwWj6wwGQ6W/k+Lj4/n111+r9Tvrzz//5JprrmHu3Lnce++97v1Hjx5l2bJlLF++nKysLKZMmcJLL73kTkwAFi9ezKxZs9i8eTMbN25kxowZDBs2jLFjx5a7j91u55prruGuu+5iyZIlWK1WtmzZgkajYerUqezbt49ff/2VP/74A4CAgACcTifXXXcdoaGhbNq0idzcXB566KFzvp/MzEx+++03XnjhBUwmU5ljERER3HTTTSxdupT33nuPXbt2ERsbyxdffIFWW7auoHfv3owZM4YlS5bwr3/9q8J7nTp1iuXLlzNo0KAKj9cnSTrqkTVNrf4y9zfzZtib6Nod5s6BOzCbu2IwhJQtvGGD+njppee9bkNJOux2NdloYE3OQrgV2grxnevrkXvnz87Hx1i91Q+vvfZa+vTpw5w5c/j444/LHX/jjTe49NJLeeqppwDo1KkTsbGxvPrqq2WSjtGjR/PII4+4X69fvx6bzcb7779P+/btAZg8eTKffvopp0+fxtfXl27dunHJJZewZs2aSpOOuLg4Rp1jDqHSli9fjq+vLw6Hg+LiYnf8VfHDDz9wyy238OGHH3LjjTeWOeZ0Olm0aBF+JX+c3XLLLaxatapM0tGrVy/mzJkDQMeOHXnnnXdYtWpVhUlHbm4uOTk5XHnlle7PpmupRaR8fX3R6/VERES49/3+++8cOHCA48ePu5PDF198kfHjx1f6nuLi4lAUpcy1S+vatStZWVmkpaVx+PDhcnGcXXb9+vVl9v3rX//i3//+t/vzHjRoUJU/77okzSsekNU3iy8HfUn48KOgAX//IeULuYbLVqHDUkNJOj77DMLCoJJkWwhxAV5++WUW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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "interval_sizes = {}\n", "for name in prediction_intervals.keys():\n", " interval_sizes[name] = prediction_intervals[name][:,1] \\\n", " - prediction_intervals[name][:,0]\n", "\n", "plt.figure(figsize=(6,6))\n", "plt.ylabel(\"ECDF\")\n", "plt.xlabel(\"Interval sizes\")\n", "plt.xlim(0,interval_sizes[\"Mond CR OOB\"].max()*1.25)\n", "\n", "colors = [\"b\",\"r\",\"g\",\"y\",\"k\",\"m\",\"c\",\"orange\"]\n", "\n", "for i, name in enumerate(interval_sizes.keys()):\n", " if \"Std\" in name:\n", " style = \"dotted\"\n", " else:\n", " style = \"solid\"\n", " plt.plot(np.sort(interval_sizes[name]),\n", " [i/len(interval_sizes[name])\n", " for i in range(1,len(interval_sizes[name])+1)],\n", " linestyle=style, c=colors[i], label=name)\n", "\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "97bb33f0", "metadata": {}, "source": [ "## Conformal Predictive Systems (CPS)" ] }, { "cell_type": "markdown", "id": "e208caf6", "metadata": {}, "source": [ "### Creating and fitting CPS" ] }, { "cell_type": "markdown", "id": "17b5131e-e544-4945-876b-2dc5cbe370de", "metadata": {}, "source": [ "Let us create and fit standard and normalized conformal predictive systems, using the residuals from the calibration set (as obtained in the previous section), as well two conformal predictive systems using out-of-bag residuals; with and without normalization. As can be seen, the input for fitting conformal predictive systems is on the same format as for the conformal regressors." ] }, { "cell_type": "code", "execution_count": 116, "id": "9286190d-1f9b-41a2-a1d1-1cba42f1ab0d", "metadata": {}, "outputs": [], "source": [ "cps_std = ConformalPredictiveSystem().fit(residuals_cal)\n", "\n", "cps_norm = ConformalPredictiveSystem().fit(residuals_cal,\n", " sigmas=sigmas_cal_var)\n", "\n", "cps_std_oob = ConformalPredictiveSystem().fit(residuals_oob)\n", "\n", "cps_norm_oob = ConformalPredictiveSystem().fit(residuals_oob, \n", " sigmas=sigmas_var_oob)" ] }, { "cell_type": "markdown", "id": "158f850a-b7e6-4c7e-a701-b7a6c22d03ed", "metadata": {}, "source": [ "Let us also create some Mondrian CPS, but in contrast to the Mondrian conformal regressors above, we here form the categories through binning of the predictions rather than binning of the difficulty estimates. We may use the latter, i.e., the sigmas, to obtain a normalized CPS for each category (bin)." ] }, { "cell_type": "code", "execution_count": 117, "id": "a89db840-c6b8-47aa-8c18-b00eb199c5a9", "metadata": {}, "outputs": [], "source": [ "bins_cal, bin_thresholds = binning(y_hat_cal, bins=5)\n", "\n", "cps_mond_std = ConformalPredictiveSystem().fit(residuals_cal,\n", " bins=bins_cal)\n", "\n", "cps_mond_norm = ConformalPredictiveSystem().fit(residuals_cal,\n", " sigmas=sigmas_cal_var,\n", " bins=bins_cal)\n", "\n", "\n", "bins_oob, bin_thresholds_oob = binning(oob_predictions, bins=5)\n", "\n", "cps_mond_std_oob = ConformalPredictiveSystem().fit(residuals_oob,\n", " bins=bins_oob)\n", "\n", "cps_mond_norm_oob = ConformalPredictiveSystem().fit(residuals_oob,\n", " sigmas=sigmas_var_oob,\n", " bins=bins_oob)" ] }, { "cell_type": "markdown", "id": "e541e40f-3085-4bdc-847f-11089c66a090", "metadata": {}, "source": [ "### Making predictions" ] }, { "cell_type": "markdown", "id": "3d142f5b-8b79-4962-881d-66005cc6ec8c", "metadata": {}, "source": [ "For the normalized approaches, we already have the difficulty estimates which are needed for the test instances. \n", "For the Mondrian approaches, we also need to assign the new categories to the test instances." ] }, { "cell_type": "code", "execution_count": 118, "id": "85d7f64d-9214-4908-8295-74f25bd9fbad", "metadata": {}, "outputs": [], "source": [ "bins_test = binning(y_hat_test, bins=bin_thresholds)\n", "\n", "bins_test_oob = binning(y_hat_full, bins=bin_thresholds_oob)" ] }, { "cell_type": "markdown", "id": "00406bed-b471-459a-9741-2a6fd111bff1", "metadata": {}, "source": [ "The `predict_p` and `predict_int` methods work as for conformal regressors, i.e., to get p-values and prediction intervals. There are also some methods that are specific to conformal predictive systems; `predict_percentiles` and `predict_cpds` that are used for obtaining percentiles and conformal predictive distributions, respectively. In addition, we may employ the `predict` method, for which the output will depend on how we specify the input and which can be used for getting all of the above by just one call.\n", "\n", "Here we will obtain the p-values from `cps_mond_norm` for the true targets of the test set:" ] }, { "cell_type": "code", "execution_count": 119, "id": "f805c034-895f-44b9-91f9-8df0ca3c2cfd", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.17840677, 0.03564906, 0.47458829, ..., 0.85454026, 0.35707334,\n", " 0.87674664])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p_values = cps_mond_norm.predict_p(y_hat_test, y_test, sigmas=sigmas_test_var,\n", " bins=bins_test, seed=123)\n", "\n", "display(p_values)" ] }, { "cell_type": "markdown", "id": "39d25468-2679-414e-b2ee-d8b20d4c4e90", "metadata": {}, "source": [ "Let us take a look at how the p-values are distributed. From the visual inspection they may appear be approximaly uniformly distributed; this is however not guaranteed, since the p-values are not independent (see further below for semi-online conformal predictive systems, for which this indeed holds). It is hence not very surprising if the Kolmogorov-Smirnov test allows us to reject that the p-values are sampled from a uniform distribution. " ] }, { "cell_type": "code", "execution_count": 120, "id": "678e8b92-f5ef-4167-983e-34ec499aca18", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.04849129053712553\n" ] } ], "source": [ "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "7c11dc46-ee03-4fd5-8ec7-986d6ee93044", "metadata": {}, "source": [ "We can get the same result through `predict` in the following way (since `smoothing` is enabled by default, we need to set the `seed` to get identical results): " ] }, { "cell_type": "code", "execution_count": 121, "id": "072d72f7-6c0e-46d7-b447-906863f56c70", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.17840677, 0.03564906, 0.47458829, ..., 0.85454026, 0.35707334,\n", " 0.87674664])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p_values = cps_mond_norm.predict(y_hat_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test,\n", " y=y_test, seed=123)\n", "\n", "display(p_values)" ] }, { "cell_type": "markdown", "id": "4ccfb06e-62eb-4786-b85e-9c786958b231", "metadata": {}, "source": [ "We can also request non-smoothed p-values, which are computed deterministically (a `seed` is hence not required to replicate the output): " ] }, { "cell_type": "code", "execution_count": 122, "id": "e7be4979-0bb8-4e4d-9373-e8b0b0d9bee3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.17896679, 0.03696858, 0.47601476, ..., 0.85582255, 0.35859519,\n", " 0.87822878])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p_values = cps_mond_norm.predict_p(y_hat_test, y_test, sigmas_test_var,\n", " bins_test, smoothing=False)\n", "\n", "display(p_values)" ] }, { "cell_type": "markdown", "id": "f052ffd1-f3f7-4fc1-8250-34d558e35ad6", "metadata": {}, "source": [ "We can get the same result through `predict` in the following way: " ] }, { "cell_type": "code", "execution_count": 123, "id": "0d2d2f7b-700e-4618-8c33-cd30b0884697", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.17896679, 0.03696858, 0.47601476, ..., 0.85582255, 0.35859519,\n", " 0.87822878])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p_values = cps_mond_norm.predict(y_hat_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test,\n", " y=y_test, smoothing=False)\n", "\n", "display(p_values)" ] }, { "cell_type": "markdown", "id": "1f85fddd-64d9-45e6-8e59-dffafbe91872", "metadata": {}, "source": [ "If we instead would like to get threshold values, such that the probability for the true target is less than the threshold for each test instance, we may request these through `predict_percentiles` or by providing `lower_percentiles` and/or `upper_percentiles` as input to the `predict` method. These denote (one or more) percentiles for which a lower (upper) value will be selected in case a percentile lies between two values (similar to `interpolation=\"lower\"` and `interpolation=\"higher\"` in `numpy.percentile`).\n", "\n", "Here we will obtain the lowest values from `cps_mond_norm`, such that the probability for the target values being less than these is at least 50%, first using `predict_percentiles`:" ] }, { "cell_type": "code", "execution_count": 124, "id": "63581c84-26c5-40bc-a4af-3f269875e8e6", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.02829887, 0.05789694, 0.17152393, ..., 0.04279352, 0.04305571,\n", " 0.02853928])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "thresholds = cps_mond_norm.predict_percentiles(y_hat_test, sigmas_test_var,\n", " bins_test, higher_percentiles=50)\n", "\n", "display(thresholds)" ] }, { "cell_type": "markdown", "id": "c739fe47-e718-4347-9f94-2b67677411e9", "metadata": {}, "source": [ "Again, the same result can be obtained using the `predict` method: " ] }, { "cell_type": "code", "execution_count": 125, "id": "0440b9f7-6847-4637-bfcf-ecbce5de7cc9", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.02829887, 0.05789694, 0.17152393, ..., 0.04279352, 0.04305571,\n", " 0.02853928])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "thresholds = cps_mond_norm.predict(y_hat_test, sigmas_test_var,\n", " bins_test, higher_percentiles=50)\n", "\n", "display(thresholds)" ] }, { "cell_type": "markdown", "id": "c85f5ff8-7c5d-444d-979c-b01404965fe9", "metadata": {}, "source": [ "We can also specify both target values and percentiles for the `predict` method; the resulting p-values will be returned in the first column, while any values corresponding to the lower percentiles will be included in the subsequent columns, followed by columns containing the values corresponding to the higher percentiles. The following call hence results in an array with five columns:" ] }, { "cell_type": "code", "execution_count": 126, "id": "1cda8888-2c35-45a5-9286-53ab3761483d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.17783429, 0.0164767 , 0.0186728 , 0.03708165, 0.04041966],\n", " [0.03690463, 0.03569243, 0.0388287 , 0.07749237, 0.08472576],\n", " [0.47481815, 0.12688174, 0.13695332, 0.2199475 , 0.2326246 ],\n", " ...,\n", " [0.85546363, 0.02568507, 0.02853342, 0.05647774, 0.0597404 ],\n", " [0.35737255, 0.02735735, 0.02997094, 0.05561205, 0.0586058 ],\n", " [0.87750888, 0.01680985, 0.01898872, 0.03725317, 0.04056499]])" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "results = cps_mond_norm.predict(y_hat_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test,\n", " y=y_test,\n", " lower_percentiles=[2.5, 5],\n", " higher_percentiles=[95, 97.5])\n", "\n", "display(results)" ] }, { "cell_type": "markdown", "id": "8e4aeeef-ad00-4825-b61a-27a826e46e91", "metadata": {}, "source": [ "In addition to p-values and threshold values, we can request that the conformal predictive system returns the full conformal predictive distribution (CPD) for each test instance, as defined by the threshold values, either by the `predict_cpds` method or by setting `return_cpds=True` for the `predict` method . The format of the distributions vary with the type of conformal predictive system; for a standard and normalized CPS, the output is an array with a row for each test instance and a column for each calibration instance (residual), while for a Mondrian CPS, the default output is a vector containing one CPD per test instance (since the number of values may vary between categories). If the desired output instead is an array of distributions per category, where all distributions in a category have the same number of columns, which in turn depends on the number of calibration instances in the corresponding category, then `cpds_by_bins=True` may be specified (for both methods). In case `return_cpds=True` is specified together with `y`, `lower_percentiles` or `higher_percentiles`, the output of `predict` will be a pair, with the first element holding the results of the above type and the second element will contain the CPDs. \n", "\n", "For the above Mondrian CPS, the following call to `predict_cpds` will result in a vector of distributions, with one element for each test instance." ] }, { "cell_type": "code", "execution_count": 127, "id": "18a96b56-79cd-4ad6-b2ed-61b89ad93bef", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "No. of test instances: 10807\n", "Shape of cpds: (10807,)\n" ] } ], "source": [ "cpds = cps_mond_norm.predict_cpds(y_hat_test, sigmas_test_var, bins_test)\n", "\n", "print(f\"No. of test instances: {len(y_hat_test)}\")\n", "print(f\"Shape of cpds: {cpds.shape}\")" ] }, { "cell_type": "markdown", "id": "15cccd1f-1d0a-4fb8-9132-4b2cbb20a133", "metadata": {}, "source": [ "The same result can be obtained with the following call to `predict`:" ] }, { "cell_type": "code", "execution_count": 128, "id": "2a272cec", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "No. of test instances: 10807\n", "Shape of cpds: (10807,)\n" ] } ], "source": [ "cpds = cps_mond_norm.predict(y_hat_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test,\n", " return_cpds=True)\n", "\n", "print(f\"No. of test instances: {len(y_hat_test)}\")\n", "print(f\"Shape of cpds: {cpds.shape}\")" ] }, { "cell_type": "markdown", "id": "9fb5de07-6199-4ba8-b2bb-e8d6cdf6ec7b", "metadata": {}, "source": [ "If we instead would prefer to represent these distributions by one array per category, we set `cpds_by_bins=True`, noting that it will be a bit trickier to associate a test instance to a specific distribution. " ] }, { "cell_type": "code", "execution_count": 129, "id": "cb029611-b2e8-4061-92bd-f4951e3c0f2b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "bin 0: 2117 test instances, 541 threshold values\n", "bin 1: 2140 test instances, 540 threshold values\n", "bin 2: 2104 test instances, 540 threshold values\n", "bin 3: 2240 test instances, 540 threshold values\n", "bin 4: 2206 test instances, 541 threshold values\n", "No. of test instances: 10807\n" ] } ], "source": [ "cpds = cps_mond_norm.predict_cpds(y_hat_test, sigmas_test_var, bins_test,\n", " cpds_by_bins=True)\n", "\n", "for i, cpd in enumerate(cpds):\n", " print(f\"bin {i}: {cpd.shape[0]} test instances, {cpd.shape[1]} threshold values\")\n", "\n", "print(f\"No. of test instances: {sum([c.shape[0] for c in cpds])}\")" ] }, { "cell_type": "markdown", "id": "3f3a119a-689a-4afc-be70-5d626900fb32", "metadata": {}, "source": [ "The same result can be obtained with the following call to predict:" ] }, { "cell_type": "code", "execution_count": 130, "id": "3852d758", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "bin 0: 2117 test instances, 541 threshold values\n", "bin 1: 2140 test instances, 540 threshold values\n", "bin 2: 2104 test instances, 540 threshold values\n", "bin 3: 2240 test instances, 540 threshold values\n", "bin 4: 2206 test instances, 541 threshold values\n", "No. of test instances: 10807\n" ] } ], "source": [ "cpds = cps_mond_norm.predict(y_hat_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test,\n", " return_cpds=True, \n", " cpds_by_bins=True)\n", "\n", "for i, cpd in enumerate(cpds):\n", " print(f\"bin {i}: {cpd.shape[0]} test instances, {cpd.shape[1]} threshold values\")\n", "\n", "print(f\"No. of test instances: {sum([c.shape[0] for c in cpds])}\")" ] }, { "cell_type": "markdown", "id": "2217d879-b8f4-4b2a-9507-be5fb0edd8c0", "metadata": {}, "source": [ "We may also plot the conformal predictive distribution for some test object. In case the calibration set is very large, you may consider plotting an approximation of the full distribution by using a grid of values for `lower_percentiles` or `higher_percentiles`, instead of setting `return_cpds=True`. For the Mondrian CPS, the size of the calibration set for each bin is reasonable in this case, so we may just use the distributions directly." ] }, { "cell_type": "code", "execution_count": 131, "id": "2c9200fb-2cbc-4d6a-a047-032509606b37", "metadata": { "tags": [] }, "outputs": [ { "data": { "image/png": "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223ioosuqnf+d999J4YMGSIsFovo0aOHePXVVxs85wcffCD69esnzGaz6N+/v/joo4/0fhvt5u3rcOTIEQGgwdcvn8eXePsapKSkNHoNHnvssQ54N23n7evw6KOPit69ewubzSa6dOkiRo8eLd57772OeCttpsfvhbP5Q4IhhPevw+zZs0X37t2FxWIRXbt2FRMnThQbN27siLfSZnq0hY0bN4qRI0cKq9UqevbsKf75z38Kl8vl1bi5XTsRERF5HedgEBERkdcxwSAiIiKvY4JBREREXscEg4iIiLyOCQYRERF5HRMMIiIi8jomGEREROR1TDCIiIjI65hgEBERkdcxwSAiIiKvY4JBREREXscEg4gMt3TpUkRHRzfYPv2aa67BtGnTDIqKiNqDCQYRGe66666Dqqr47LPPPMeKiorwxRdf4I477jAwMiJqKyYYRGS4kJAQ3HzzzVi8eLHn2LJly5CUlITx48cbFxgRtRkTDCLyCXfddRdWr16NvLw8AMDixYtx++23Q5IkgyMjoraQhBDC6CCIiABg2LBhuPbaazFp0iQMHz4cOTk5SE5ONjosImoDk9EBEBHVmTFjBv71r38hLy8Pl156KZMLIj/GHgwi8hllZWVISEiAy+XC0qVLccMNNxgdEhG1EedgEJHPiIiIwDXXXIPw8HBcffXVRodDRO3ABIOIfEp+fj5uueUWWK1Wo0MhonbgEAkR+YTTp09j9erVuOWWW5CVlYV+/foZHRIRtQMneRKRTxg6dChKSkrw9NNPM7kgCgDswSAiIiKv4xwMIiIi8jomGEREROR1TDCIiIjI65hgEBERkdcxwSAiIiKvY4JBREREXscEg4iIiLyOCQYRERF53f8DYhJFd+WvX/MAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cpds = cps_mond_norm_oob.predict(y_hat_full,\n", " bins=bins_test_oob,\n", " sigmas=sigmas_test_var_oob,\n", " return_cpds=True)\n", "\n", "test_index = np.random.randint(len(y_hat_full)) # A test object is randomly selected\n", "cpd = cpds[test_index]\n", "\n", "p = np.array([i/len(cpd) for i in range(len(cpd))])\n", "\n", "lower_index = np.where(p<=0.025)[0][-1]\n", "mid_index = np.where(p>=0.50)[0][0]\n", "upper_index = np.where(p>=0.975)[0][0]\n", "\n", "low_percentile = cpd[lower_index]\n", "median = cpd[mid_index]\n", "high_percentile = cpd[upper_index]\n", "\n", "plt.figure(figsize=(6,6))\n", "plt.plot([y_hat_full[test_index],y_hat_full[test_index]],[0,1], color=\"tab:orange\")\n", "plt.plot([y_test[test_index],y_test[test_index]],[0,1], color=\"tab:red\")\n", "plt.xlabel(\"y\")\n", "plt.ylabel(\"Q(y)\")\n", "plt.ylim(0,1)\n", "\n", "plt.plot([median,median],[0,1],\"g--\")\n", "plt.plot([low_percentile,low_percentile],[0,1],\"y--\")\n", "plt.legend([\"ŷ\",\"target\",\"$y_{0.5}$\",\"[$y_{0.025}$,$y_{0.975}$]\"])\n", "plt.plot([high_percentile,high_percentile],[0,1],\"y--\")\n", "plt.plot(cpd,p, color=\"tab:blue\")\n", "rectangle = plt.Rectangle((low_percentile,0),\n", " abs(high_percentile-low_percentile),1, color=\"y\", \n", " alpha=0.05)\n", "plt.gca().add_patch(rectangle)\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "836d7327-4377-4177-8866-b0bac60202a0", "metadata": {}, "source": [ "### Investigating the coverage and size of extracted prediction intervals" ] }, { "cell_type": "markdown", "id": "f2504a57-4a33-4c7f-9dff-e993392ad05d", "metadata": {}, "source": [ "Let us investigate the extracted prediction intervals at the 95% confidence level. \n", "This is done by a specifying percentiles corresponding to the interval endpoints." ] }, { "cell_type": "code", "execution_count": 132, "id": "937eee95-9ae8-4072-873a-fa2f5f0cec5e", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CoverageMean sizeMedian size
Std CPS0.95410.06230.0635
Std OOB CPS0.95280.06150.0626
Norm CPS0.95310.05230.0391
Norm OOB CPS0.94970.04970.0385
Mond CPS0.95280.06150.0359
Mond OOB CPS0.94990.05610.0398
Mond norm CPS0.94900.05320.0351
Mond norm OOB CPS0.95220.05170.0374
Mean0.95170.05600.0440
\n", "
" ], "text/plain": [ " Coverage Mean size Median size\n", "Std CPS 0.9541 0.0623 0.0635\n", "Std OOB CPS 0.9528 0.0615 0.0626\n", "Norm CPS 0.9531 0.0523 0.0391\n", "Norm OOB CPS 0.9497 0.0497 0.0385\n", "Mond CPS 0.9528 0.0615 0.0359\n", "Mond OOB CPS 0.9499 0.0561 0.0398\n", "Mond norm CPS 0.9490 0.0532 0.0351\n", "Mond norm OOB CPS 0.9522 0.0517 0.0374\n", "Mean 0.9517 0.0560 0.0440" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "all_cps = {\"Std CPS\":cps_std,\n", " \"Std OOB CPS\":cps_std_oob,\n", " \"Norm CPS\":cps_norm,\n", " \"Norm OOB CPS\":cps_norm_oob,\n", " \"Mond CPS\":cps_mond_std,\n", " \"Mond OOB CPS\":cps_mond_std_oob,\n", " \"Mond norm CPS\":cps_mond_norm,\n", " \"Mond norm OOB CPS\":cps_mond_norm_oob\n", " }\n", "\n", "all_cps_intervals = {}\n", "\n", "coverages = []\n", "mean_sizes = []\n", "median_sizes = []\n", "\n", "for name in all_cps.keys():\n", " if \"OOB\" in name:\n", " intervals = all_cps[name].predict(y_hat_full, \n", " sigmas=sigmas_test_var_oob, \n", " bins=bins_test_oob,\n", " lower_percentiles=2.5, \n", " higher_percentiles=97.5,\n", " y_min=0, y_max=1)\n", " else:\n", " intervals = all_cps[name].predict(y_hat_test, \n", " sigmas=sigmas_test_var, \n", " bins=bins_test,\n", " lower_percentiles=2.5, \n", " higher_percentiles=97.5,\n", " y_min=0, y_max=1)\n", " all_cps_intervals[name] = intervals\n", " coverages.append(np.sum([1 if (y_test[i]>=intervals[i,0] and \n", " y_test[i]<=intervals[i,1]) else 0\n", " for i in range(len(y_test))])/len(y_test))\n", " mean_sizes.append((intervals[:,1]-intervals[:,0]).mean())\n", " median_sizes.append(np.median((intervals[:,1]-intervals[:,0])))\n", "\n", "pred_int_df = pd.DataFrame({\"Coverage\":coverages, \n", " \"Mean size\":mean_sizes, \n", " \"Median size\":median_sizes}, \n", " index=list(all_cps_intervals.keys()))\n", "\n", "pred_int_df.loc[\"Mean\"] = [pred_int_df[\"Coverage\"].mean(), \n", " pred_int_df[\"Mean size\"].mean(),\n", " pred_int_df[\"Median size\"].mean()]\n", "\n", "display(pred_int_df.round(4))" ] }, { "cell_type": "markdown", "id": "04c31348-ba38-4b68-9bde-bb8882127522", "metadata": {}, "source": [ "### Investigating the distributions of extracted prediction intervals" ] }, { "cell_type": "markdown", "id": "47719178-2dde-43fa-b837-175ce8cb105b", "metadata": {}, "source": [ "Let us take a look at the distribution of the interval sizes." ] }, { "cell_type": "code", "execution_count": 133, "id": "ad58bd5a-13d3-4ba6-9968-9c045c83b422", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cps_interval_sizes = {}\n", "\n", "for name in all_cps_intervals.keys():\n", " cps_interval_sizes[name] = \\\n", " all_cps_intervals[name][:,1] - all_cps_intervals[name][:,0]\n", "\n", "plt.figure(figsize=(6,6))\n", "plt.ylabel(\"ECDF\")\n", "plt.xlabel(\"Interval sizes\")\n", "plt.xlim(0,cps_interval_sizes[\"Mond OOB CPS\"].max()*1.25)\n", "\n", "colors = [\"b\",\"r\",\"g\",\"y\",\"k\",\"m\", \"gray\", \"orange\"]\n", "\n", "for i, name in enumerate(cps_interval_sizes.keys()):\n", " if \"Std\" in name:\n", " style = \"dotted\"\n", " else:\n", " style = \"solid\"\n", " plt.plot(np.sort(cps_interval_sizes[name]),\n", " [i/len(cps_interval_sizes[name])\n", " for i in range(1,len(cps_interval_sizes[name])+1)],\n", " linestyle=style, c=colors[i], label=name)\n", "\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "965d1c97-25da-4c9e-aaf8-bf8089501cd1", "metadata": {}, "source": [ "### Extracting medians" ] }, { "cell_type": "markdown", "id": "c8df1ea3-4ea8-40cf-ae37-798d0c343229", "metadata": {}, "source": [ "Let us take a look at the medians; they can be derived using either lower or higher interpolation,\n", "but ideally the differences should be small." ] }, { "cell_type": "code", "execution_count": 134, "id": "ebea7b27-a9a1-4473-a20d-3b2b7fcaea79", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Std CPS\n", "\tMean difference of the medians: 0.000001\n", "\tLargest difference of the medians: 0.000001\n", "Std OOB CPS\n", "\tMean difference of the medians: 0.000000\n", "\tLargest difference of the medians: 0.000000\n", "Norm CPS\n", "\tMean difference of the medians: 0.000006\n", "\tLargest difference of the medians: 0.000393\n", "Norm OOB CPS\n", "\tMean difference of the medians: 0.000003\n", "\tLargest difference of the medians: 0.000203\n", "Mond CPS\n", "\tMean difference of the medians: 0.000074\n", "\tLargest difference of the medians: 0.000230\n", "Mond OOB CPS\n", "\tMean difference of the medians: 0.000001\n", "\tLargest difference of the medians: 0.000007\n", "Mond norm CPS\n", "\tMean difference of the medians: 0.000092\n", "\tLargest difference of the medians: 0.001047\n", "Mond norm OOB CPS\n", "\tMean difference of the medians: 0.000002\n", "\tLargest difference of the medians: 0.000011\n" ] } ], "source": [ "all_cps_medians = {}\n", "\n", "for name in all_cps.keys():\n", " if \"OOB\" in name:\n", " medians = all_cps[name].predict(y_hat_full, \n", " sigmas=sigmas_test_var_oob, \n", " bins=bins_test_oob,\n", " lower_percentiles=50, \n", " higher_percentiles=50)\n", " else:\n", " medians = all_cps[name].predict(y_hat_test, \n", " sigmas=sigmas_test_var, \n", " bins=bins_test,\n", " lower_percentiles=50, \n", " higher_percentiles=50)\n", " all_cps_medians[name] = medians\n", " print(name)\n", " print(\"\\tMean difference of the medians: {:.6f}\".format((medians[:,1]-medians[:,0]).mean()))\n", " print(\"\\tLargest difference of the medians: {:.6f}\".format((medians[:,1]-medians[:,0]).max()))" ] }, { "cell_type": "markdown", "id": "0ca4f7b8-bdc2-4094-84a2-878bba4f8362", "metadata": {}, "source": [ "### Another view of the medians and prediction intervals" ] }, { "cell_type": "code", "execution_count": 135, "id": "0c4e0a72-7f09-4590-bc5e-8d597ea1fbae", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+kAAAeLCAYAAADYTuY9AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4ZGd5N/7vzJzpVb23Ld7mvgt4XXAMxGBKEgjg4AQDwXkpIWBq8JtfyBtCYuIQcN4QFwI2gVCcNwSSgDE4YLCNjfGuG97iXe9qV9KqjqTp9cw5vz/uPRqVkTQajaasvp/r0uU9oylnZr1zn/t57ud+TLqu6yAiIiIiIiKiqjNX+wSIiIiIiIiISDBJJyIiIiIiIqoRTNKJiIiIiIiIagSTdCIiIiIiIqIawSSdiIiIiIiIqEYwSSciIiIiIiKqEUzSiYiIiIiIiGoEk3QiIiIiIiKiGsEknYiIiIiIiKhGMEknOgc88cQTeOMb34je3l7Y7Xa0tbVh//79+OhHP7rgfnfccQe++tWvFv28P/vZz2AymfCzn/2sqPs/99xzeNe73oWBgQE4HA54PB5ceumluO222zAzMzN3v9/4jd+AyWSa+3E6nbjoootw++23Q9O0ufvpuo5vf/vbuOqqq9Da2gqHw4Hu7m68+tWvxpe//OWi3wcREVEl1Upc/uUvf4m3vOUt6OjogM1mQ3t7O9785jfj8ccfL8tjvvrVry6I5yaTCS0tLfiN3/gNfP/73y/6fWmahq9//et41atehebmZlitVrS2tuL1r389/vu//3vu2uDUqVMLXstsNqOpqQmvfe1rl5zf9PQ0brnlFuzevRtutxt+vx87d+7E29/+djz33HNFnxtRNTBJJ6pzP/jBD3D55ZcjEongtttuw49//GP8wz/8A6644grcd999C+671ouBtfjnf/5n7N27F08++SQ+/vGP44EHHsB3v/tdvOUtb8Fdd92Fd7/73Qvuv2XLFjz++ON4/PHHcd9996Grqwsf/vCHccstt8zd55ZbbsHb3vY27Nq1C1/+8pfxwx/+EJ/5zGfQ1taG//zP/9yQ90FERLQetRKX//Ef/xFXXHEFRkZGcNttt+F//ud/8LnPfQ5nzpzBlVdeiS9+8YtleQwA3HvvvXj88cfx2GOP4Utf+hIsFgve8IY34L//+79XPc9UKoXXvva1eMc73oHW1lbceeed+OlPf4q77roLnZ2deMtb3rLkef7kT/4Ejz/+OB555BHceuutePbZZ3HNNdfg6aefBgDEYjFcdtll+OpXv4qbbroJ//Vf/4VvfOMb+F//639hcHAQzzzzzNo/UKJK0omorr385S/Xt27dqmez2SW/y+VyC4737NmjX3311UU/90MPPaQD0B966KEV7/fYY4/pFotFf81rXqOnUqklv0+n0/p//ud/zh1fffXV+p49exbcJ5PJ6Fu2bNFdLpeeyWT0RCKh2+12/cYbbyz4movfGxERUS2ohbj86KOP6mazWX/961+/5Dyy2az++te/Xjebzfqjjz66rsfce++9OgD9ySefXHB/I4a/7W1vW/U9ve9979MB6P/yL/9S8PfHjh3Tn332WV3XdX1wcFAHoP/d3/3dgvv85Cc/0QHoN910k67run7PPffoAPSf/vSnBZ+T1xBU6ziTTlTnpqen0dzcDEVRlvzObM7/E+/v78ehQ4fw85//fK5MrL+/f+73R48exWte8xq4XC40Nzfjve99L6LRaFHn8Dd/8zcwmUz40pe+BLvdvuT3NpsNv/Vbv7Xic1itVuzduxeJRAJTU1OIx+NIp9Po6OgoeP/5742IiKhW1EJcvvXWW2EymXDnnXcuOQ9FUXDHHXfAZDLhs5/97LoesxyHwwGbzQar1bri/cbHx/HlL38Zr371q3HjjTcWvM/27dtx4YUXrvg8l112GQDg9OnTAOTvAACvIahu8f9Qojq3f/9+PPHEE/jgBz+IJ554AtlstuD9vvvd72LLli245JJL5srMv/vd7wIAJiYmcPXVV+P555/HHXfcga9//euIxWL4wAc+sOrr53I5/PSnP8XevXvR09Ozrvdy4sQJKIqChoYGNDc3Y9u2bbjjjjvw+c9/HkePHoWu6+t6fiIioo1WC3H5oYcewr59+9Dd3V3wPj09Pdi7dy9++tOfIpfLlfSYxa+pqiqy2SxGRkZw8803Ix6P44YbbljxXB966CFks1n8zu/8zqrvayUvvvgiAKClpQWA/B0AwI033ojvfe97c0k7Ub1gkk5U5z772c/iyiuvxD/+4z/isssug9vtxhVXXIHPfvaziMVic/e75JJL4HQ64fP5cNlll+Gyyy7DJZdcAgD4whe+gKmpKfzgBz/AO9/5Tlx33XX413/9V+zYsWPV1w8Gg0gkEhgYGFjzuauqClVVMTY2hltuuQVPPfUU3vjGN8LpdAIAvvnNb6KhoQEf/ehHsWvXLvj9frzhDW/A17/+dSbsRERUk+olLg8MDCCRSGB6erqkx8x32WWXwWq1wmazoaenB3fffTe++MUv4tWvfvWKzzc0NDT3vGuhaRpUVUU6ncZTTz2Fm266CQDw+7//+wCAK664Ap/+9Kfx7LPP4o1vfCOam5uxZcsWvO9972PTOKoLTNKJ6lxTUxMeeeQRPPnkk/jsZz+L3/7t38axY8dwyy234IILLkAwGFz1OR566CHs2bMHF1100YLbVxsBX49Dhw7BarXCarWis7MTf//3f4/f//3fxz//8z/P3eclL3kJXnzxRTzwwAP43//7f2P//v34yU9+ghtvvBG/9Vu/xUSdiIhqTr3EZSOGmkymdT/ma1/7Gp588kk8+eST+OEPf4h3vOMd+OM//uNlG82t15/+6Z/CarXC4XBg7969GBoawt13343Xvva1c/f58z//cwwNDeGee+7Be97zHng8Htx1113Yu3cvvvWtb23IeRGVy9LFMkRUl/bt24d9+/YBALLZLP70T/8UX/jCF3DbbbfhtttuW/Gx09PTBUex29vbV33d5uZmuFwuDA4Orul8t27dim9/+9swmUxwOBwYGBiAy+Vacj+r1YpXv/rVc6Px09PTePOb34zvf//7+OEPf7ggIBMREdWKWo/Lp06dgsvlQmNjIwCU9BjDrl275t4rALzmNa/B6dOn8YlPfAJ/8Ad/gEAgUPD5ent7AWDN1xAf+tCH8Ad/8Acwm80IBAIYGBgoONjQ1taGd73rXXjXu94FAHj44Ydx3XXX4UMf+hDe9ra3rek1iSqJM+lE5yCr1Yq/+Iu/AAA8//zzq96/qakJ4+PjS24vdNtiFosFr3zlK3Hw4EGMjIwUfY4OhwP79u3D3r17sWfPnoIJ+nLnevPNNwMo7r0RERFVW6Xj8jXXXIMDBw4sG5dHRkZw8OBBvOIVr4DFYinpMau58MILkUwmcezYsWXvc80118BqteJ73/veqs83X3d3N/bt24dLL70UW7ZsKboa4OUvfzmuvfZaTE1NYXJyck2vSVRJTNKJ6tzY2FjB248cOQIA6OzsnLvNbrcjmUwuue8111yDQ4cO4dlnn11w+ze/+c2izuGWW26Bruv4oz/6I2QymSW/z2azRe2VuvgxyzV6KfTeiIiIakEtxeX3v//9BZu8ve9974Ou67jlllvW9ZiVGHuRG83cCmlvb8dNN92EH/3oR/ja175W8D4nTpxY8zryiYkJaJq25PZcLofjx4/D5XItO7tPVAtY7k5U51796leju7sbb3jDG7Bz505omoZnnnkGf//3fw+Px4MPfehDc/e94IIL8O1vfxv33XcftmzZAofDgQsuuAA333wz7rnnHrzuda/DZz7zGbS1teEb3/gGjh49WtQ57N+/H3feeSfe//73Y+/evXjf+96HPXv2IJvN4umnn8aXvvQlnH/++XjDG95Q9PsKh8Po7+/HW97yFrzqVa9CT08PYrEYfvazn+Ef/uEfsGvXLrzpTW9a8+dFRES0kWohLl9xxRW4/fbbcfPNN+PKK6/EBz7wAfT29mJoaAj/9E//hCeeeAK33347Lr/88nU9xvD8889DVVUAUqr/H//xH3jwwQfxxje+cdWmcJ///Odx8uRJvPOd78SPfvQjvPGNb0RbWxuCwSAefPBB3Hvvvfj2t7+96jZs833961/H3XffjRtuuAEveclL4Pf7MTIygi9/+cs4dOgQPvWpT8FmsxX9fEQVV60N2omoPO677z79hhtu0Ldv3657PB7darXqvb29+tvf/nb98OHDC+576tQp/dprr9W9Xq8OQO/r65v73eHDh/Xf/M3f1B0Oh97Y2Ki/+93v1v/zP/9TB6A/9NBDRZ3LM888o7/jHe/Qe3t7dZvNprvdbv2SSy7RP/WpT+mTk5Nz97v66qv1PXv2rPhc6XRa/9znPqdfd911em9vr26323WHw6Hv2rVL/8QnPqFPT08X/RkRERFVSi3F5ccff1x/85vfrLe1temKouitra36m970Jv2xxx4ry2PuvfdeHcCCH7/fr1988cX65z//eT2VShV1nqqq6v/yL/+iv+IVr9AbGxt1RVH0lpYW/brrrtO/+c1v6rlcTtd1XR8cHNQB6H/3d3+34vMdPnxY/+hHP6rv27dPb2lp0RVF0RsaGvSrr75a//rXv17UORFVk0nX2R6ZiIiIiIiIqBZwTToRERERERFRjWCSTkRERERERFQjmKQTERERERER1Qgm6UREREREREQ1gkk6ERERERERUY1gkk5ERERERERUI5Rqn0ClaZqG0dFReL1emEymap8OERERdF1HNBpFZ2cnzGaOn5cD4z0REdWStcT6TZekj46Ooqenp9qnQUREtMTw8DC6u7urfRrnBMZ7IiKqRcXE+k2XpHu9XgDy4fh8viqfDRERERCJRNDT0zMXo2j9GO+JiKiWrCXWb7ok3Sh58/l8DNpERFRTWJZdPoz3RERUi4qJ9Vz4RkRERERERFQjmKQTERERERER1Qgm6UREREREREQ1gkk6ERERERERUY1gkk5ERERERERUI5ikExEREREREdUIJulERERERERENYJJOhEREREREVGNYJJOREREREREVCOYpBMRERERERHVCKXaJ0BERFRvdB2IxYBsFrBaAY8HMJmqfVZERERULtWM9VWdSX/44Yfxhje8AZ2dnTCZTPje97636mN+/vOfY+/evXA4HNiyZQvuuuuujT9RIiKis0Ih4KmngEcfzf889ZTcTksx1hMRUb2pdqyvapIej8dx0UUX4Ytf/GJR9x8cHMRrX/taXHXVVXj66afxv//3/8YHP/hBfOc739ngMyUiIpLgfPAgMDICeL1AR4f8d2REbmeivhRjPRER1ZNaiPVVLXe/7rrrcN111xV9/7vuugu9vb24/fbbAQC7du3CgQMH8LnPfQ6/+7u/u0FnSUREJGVvJ05I6Vt3d/52p1OOR0aAkyeBSy5h6ft8jPVERFQvaiXW11XjuMcffxzXXnvtgtte/epX48CBA8hmswUfk06nEYlEFvwQERGtVSwGTE4CTU2Ff9/UBExMyP2odKXEeoDxnoiI1q9WYn1dJenj4+Noa2tbcFtbWxtUVUUwGCz4mFtvvRV+v3/up6enpxKnSkRE55hsVn7s9sK/t9ny96HSlRLrAcZ7IiJav1qJ9XWVpAOAaVFdga7rBW833HLLLQiHw3M/w8PDG36ORER07rFa5SedLvz7TCZ/H1qftcZ6gPGeiIjWr1ZifV1twdbe3o7x8fEFt01OTkJRFDQtU5Ngt9thX24ohIiIqEgeD9DaKuvR5q9TM0xPAz09cj8qXSmxHmC8JyKi9auVWF9XM+n79+/Hgw8+uOC2H//4x9i3bx+snLogIqINZDIBW7dKYB4ZAZJJIJeT/46MyO1btrBp3Hox1hMRUbXUSqyvapIei8XwzDPP4JlnngEg264888wzGBoaAiClazfeeOPc/d/73vfi9OnT+MhHPoIjR47gnnvuwVe+8hV87GMfq8bpExHRJhMIAHv3yuh6NAqMj8t/e3rk9kCg2mdYexjriYiontRCrK9qufuBAwdwzTXXzB1/5CMfAQC84x3vwFe/+lWMjY3NBXEAGBgYwP33348Pf/jD+Kd/+id0dnbi//7f/8stWYiIqGICAeDSS6WzazYr69I8Hs6gL4exnoiI6k21Y71JN7qxbBKRSAR+vx/hcBg+n6/ap0NERMTYtAH4mRIRUS1ZS1yqqzXpREREREREROcyJulERERERERENYJJOhEREREREVGNYJJOREREREREVCOYpBMRERERERHVCCbpRERERERERDWCSToRERERERFRjWCSTkRERERERFQjmKQTERERERER1Qgm6UREREREREQ1gkk6ERERERERUY1gkk5ERERERERUI5ikExEREREREdUIJulERERERERENYJJOhEREREREVGNYJJOREREREREVCOYpBMRERERERHVCCbpRERERERERDWCSToRERERERFRjWCSTkRERERERFQjmKQTERERERER1Qgm6UREREREREQ1gkk6ERERERERUY1gkk5ERERERERUI5ikExEREREREdUIJulERERERERENYJJOhEREREREVGNYJJOREREREREVCOYpBMRERERERHVCCbpRERERERERDWCSToRERERERFRjWCSTkRERERERFQjmKQTERERERER1Qgm6UREREREREQ1gkk6ERERERERUY1gkk5ERERERERUI5ikExEREREREdUIJulERERERERENYJJOhEREREREVGNYJJOREREREREVCOYpBMRERERERHVCCbpRERERERERDWCSToRERERERFRjWCSTkRERERERFQjmKQTERERERER1Qgm6UREREREREQ1gkk6ERERERERUY1gkk5ERERERERUI5ikExEREREREdUIJulERERERERENYJJOhEREREREVGNYJJOREREREREVCOYpBMRERERERHVCCbpRERERERERDWCSToRERERERFRjWCSTkRERERERFQjmKQTERERERER1Qgm6UREREREREQ1gkk6ERERERERUY1gkk5ERERERERUI5ikExEREREREdUIJulERERERERENaLqSfodd9yBgYEBOBwO7N27F4888siK9//GN76Biy66CC6XCx0dHXjXu96F6enpCp0tERERlYLxnoiI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Xl8vVdZTU2W72sEHywz5smUyK26zycC83y/HDUzAleFiPsC4T0S0P5vWJP38889He3s7fvCDH6CxsRFLly7FCy+8gLK9w8yNjY2oqanpPb6iogIvvPACrr/+etx///0oLCzEfffdN2Xt1/pKT5dR7gULgDPPBDo65HG/Xy/okpkpgZqj30REtD+bqfG+b6w/4wyJ9UajxPZAQL5cLkncTabBr09Lm9LTJSKiWcKgqUos+wmv14u0tDR0dXXB7XZP9+kQERExNk0CfqZERJRMxhKXjCM+S0RERERERERThkk6ERERERERUZJgkk5ERERERESUJJikExERERERESUJJulERERERERESYJJOhEREREREVGSYJJORERERERElCSYpBMRERERERElCSbpREREREREREmCSToRERERERFRkjBP9wlMNU3TAABer3eaz4SIiEiomKRiFI0f4z0RESWTscT6/S5J9/l8AICSkpJpPhMiIqL+fD4f0tLSpvs0ZgXGeyIiSkaJxHqDtp8N28fjcTQ0NMDlcsFgMIz59V6vFyUlJaitrYXb7Z6EM5w6s+laAF5PMptN1wLwepLZTL0WTdPg8/lQWFgIo5E70SbCeOL9TP3vaDi8nuTG60luvJ7kNpOuZyyxfr+bSTcajSguLh73+7jd7qT/DyFRs+laAF5PMptN1wLwepLZTLwWzqBPrImI9zPxv6OR8HqSG68nufF6kttMuZ5EYz2H64mIiIiIiIiSBJN0IiIiIiIioiTBJH2MbDYbbrvtNthstuk+lXGbTdcC8HqS2Wy6FoDXk8xm07XQ9Jlt/x3xepIbrye58XqS22y7HmW/KxxHRERERERElKw4k05ERERERESUJJikExERERERESUJJulERERERERESYJJOhEREREREVGSYJJORERERERElCSYpA/wwAMPoKKiAna7HStWrMAbb7wx4vFr1qzBihUrYLfbMWfOHDz44INTdKaJGcv1NDY24vOf/zwWLlwIo9GI6667bupONEFjuZ6///3vOPnkk5GTkwO3241Vq1bhpZdemsKzHdlYruXNN9/EUUcdhaysLDgcDixatAj33nvvFJ7t6Mb6/47y1ltvwWw2Y9myZZN7gmM0lut5/fXXYTAYBn1t27ZtCs94eGP9uwmFQvjud7+LsrIy2Gw2zJ07F48++ugUne3oxnI9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4YcfPtWnS0mK8Z7xfiox5vfHmD+5GPfFTI/7TNIHuP/++7WysjLNarVqhxxyiLZmzZre5y699FLtuOOO63f866+/ri1fvlyzWq1aeXm59pvf/GaKz3hkY70eAIO+ysrKpvakRzCW6znuuOOGvJ5LL7106k98CGO5lvvuu09bsmSJlpKSorndbm358uXaAw88oMVisWk486GN9b+1vpItYGva2K7n7rvv1ubOnavZ7XYtIyNDO/roo7V//etf03DWQxvr383WrVu1k046SXM4HFpxcbF2ww03aN3d3VN81sMb6/V4PB7N4XBoDz/88BSfKSUzxnvG+6nEmK9jzJ98jPszP+4bNG1v5RMiIiIiIiIimlbck05ERERERESUJJikExERERERESUJJulERERERERESYJJOhEREREREVGSYJJORERERERElCSYpBMRERERERElCSbpREREREREREmCSToRJay8vBy//OUve382GAx49tlnp/w8br/9dixbtmzKfy8REdFsx1hPNP2YpBPRPmtsbMRpp52W0LEMtkRERDMPYz3R1DNP9wkQ0dQKh8OwWq0T8l75+fkT8j5EREQ0cRjriWY2zqQTzXDHH388vv71r+PrX/860tPTkZWVhVtvvRWapgGQZWs/+tGPcNlllyEtLQ1XXnklAODtt9/GscceC4fDgZKSElxzzTUIBAK979vS0oIzzzwTDocDFRUV+NOf/jTodw9cAldXV4cLLrgAmZmZSE1NxcqVK/Huu+/i8ccfxx133IEPPvgABoMBBoMBjz/+OACgq6sLX/7yl5Gbmwu3240TTjgBH3zwQb/f85Of/AR5eXlwuVz40pe+hGAwOMGfIhERUfJirCfavzBJJ5oFfv/738NsNuPdd9/Ffffdh3vvvRe/+93vep//2c9+hqVLl2L9+vX43ve+h48++ginnnoqPvOZz+DDDz/EU089hTfffBNf//rXe19z2WWXoaqqCq+++ir+9re/4YEHHkBLS8uw5+D3+3HcccehoaEBzz33HD744APceOONiMfjOP/88/HNb34TS5YsQWNjIxobG3H++edD0zScfvrpaGpqwgsvvID169fjkEMOwYknnoiOjg4AwF/+8hfcdtttuPPOO7Fu3ToUFBTggQcemLwPk4iIKAkx1hPtRzQimtGOO+44bfHixVo8Hu997KabbtIWL16saZqmlZWVaWeffXa/11x88cXal7/85X6PvfHGG5rRaNR6enq07du3awC0d955p/f5rVu3agC0e++9t/cxANozzzyjaZqmPfTQQ5rL5dLa29uHPM/bbrtNO/jgg/s99t///ldzu91aMBjs9/jcuXO1hx56SNM0TVu1apV21VVX9Xv+8MMPH/ReREREsxVjPdH+hTPpRLPAEUccAYPB0PvzqlWrsHPnTsRiMQDAypUr+x2/fv16PP7443A6nb1fp556KuLxOCorK7F161aYzeZ+r1u0aBHS09OHPYdNmzZh+fLlyMzMTPi8169fD7/fj6ysrH7nUllZid27dwMAtm7dilWrVvV73cCfiYiIZjvGeqL9BwvHEe0HUlNT+/0cj8fxla98Bddcc82gY0tLS7F9+3YA6HczMBqHwzHm84rH4ygoKMDrr78+6LmRbhKIiIioP8Z6otmDSTrRLPDOO+8M+nn+/PkwmUxDHn/IIYfg448/xrx584Z8fvHixYhGo1i3bh0OO+wwAMD27dvh8XiGPYeDDjoIv/vd79DR0THkCLvVau0d7e97Hk1NTTCbzSgvLx/2XN555x1ccskl/a6PiIhof8JYT7T/4HJ3olmgtrYWN9xwA7Zv347Vq1fj//7v/3DttdcOe/xNN92EtWvX4uqrr8amTZuwc+dOPPfcc/jGN74BAFi4cCE++clP4sorr8S7776L9evX44orrhhxBP3CCy9Efn4+zj77bLz11lvYs2cPnn76aaxduxaAVJ6trKzEpk2b0NbWhlAohJNOOgmrVq3C2WefjZdeeglVVVV4++23ceutt2LdunUAgGuvvRaPPvooHn30UezYsQO33XYbPv744wn89IiIiJIfYz3R/oNJOtEscMkll6CnpweHHXYYrr76anzjG9/Al7/85WGPP+igg7BmzRrs3LkTxxxzDJYvX47vfe97KCgo6D3mscceQ0lJCY477jh85jOf6W2dMhyr1YqXX34Zubm5+NSnPoUDDzwQP/nJT3pH+D/72c/ik5/8JD7xiU8gJycHq1evhsFgwAsvvIBjjz0Wl19+ORYsWIALLrgAVVVVyMvLAwCcf/75+P73v4+bbroJK1asQHV1Nb761a9O0CdHREQ0MzDWE+0/DJq2t8EiEc1Ixx9/PJYtW4Zf/vKX030qRERENAkY64n2L5xJJyIiIiIiIkoSTNKJiIiIiIiIkgSXuxMRERERERElCc6kExERERERESUJJulERERERERESYJJOhEREREREVGSYJJORERERERElCSYpBMRERERERElCSbpREREREREREmCSToRERERERFRkmCSTkRERERERJQkmKQTERERERERJQkm6URERERERERJgkk6ERERERERUZJgkk5ERERERESUJJikExERERERESUJJulERERERERESYJJOhEREREREVGSYJJORERERERElCSYpBMlsccffxwGgwF2ux3V1dWDnj/++OOxdOnSaTizfff888/jzDPPRF5eHqxWKzIzM3HiiSfiT3/6EyKRSO9xBoOh31daWhqOP/54/Otf/+r3foFAAHfffTcOPvhguN1uuFwuzJ07F+eddx7WrFkz1ZdHRESz2GyLy5qm4cknn8QJJ5yAjIwM2Gw2zJkzB1dffTVqa2sn5DWXXXZZv3huMplQXFyM8847D5s3b074XL1eL+68806sXLkSbrcbNpsN5eXluPzyy7Fhw4be49Tfkfoym80oLi7GF7/4RdTX1/d7z61bt+Liiy/GnDlzYLfbkZ2djUMOOQRf//rX4fV6Ez43oonGJJ1oBgiFQrj11lun+zTGRdM0fPGLX8SnP/1pxONx/OIXv8B//vMf/P73v8fBBx+Mr33ta3jggQf6vebcc8/F2rVr8dZbb+H+++9HU1MTzjzzzN5EPRaL4ZRTTsGdd96Jc889F3/961/xt7/9Dddffz26urrwxhtvTMelEhHRLDcb4nI8HseFF16Iiy66CPn5+Xj88cfx0ksv4brrrsNzzz2Hgw46CG+99da4XwMADocDa9euxdq1a7FmzRr86Ec/woYNG3DkkUcOSpyHsnv3bixfvhw/+clP8IlPfAKrV6/Gyy+/jDvuuAPNzc1YsWIFurq6+r3msccew9q1a/HKK6/gyiuvxOrVq3HMMccgEAgAADZu3IgVK1Zgy5Yt+P73v48XX3wRDz74IE4//XS89NJL6OjoGMenSzROGhElrccee0wDoH3yk5/UjEajtmnTpn7PH3fccdqSJUsm7Pd1d3dP2HsNdPfdd2sAtDvuuGPI5xsbG7U33nij92cA2tVXX93vmF27dmkAtJNOOknTNE179dVXNQDao48+OuR7xmKxCTp7IiKi2RWXf/zjH2sAtJ/85CeDnmtqatLKysq0vLw8rbOzc1yvufTSS7XU1NRBx//3v//VAGgPPfTQiOcZjUa1Aw88UHO73dpHH3005DEvvPCCFggENE3T/47ef//9fsd873vf0wBoTzzxhKZpmnbJJZdoqampmtfrHfI94/H4iOdFNJk4k040A9x4443IysrCTTfdNOqxwWAQt9xyCyoqKmC1WlFUVISrr74aHo+n33Hl5eU444wz8Pe//x3Lly+H3W7HHXfcgddffx0GgwFPPvkkbrrpJhQUFMDpdOLMM89Ec3MzfD4fvvzlLyM7OxvZ2dn44he/CL/fP+I5RSIR3H333Vi0aBG+973vDXlMfn4+jj766BHfZ+7cucjJyeldYtje3g4AKCgoGPJ4o5H/xBER0cSb6XE5HA7jZz/7GRYvXowbb7xx0PN5eXm466670NzcjEceeWSfXzOStLQ0AIDFYhnxuGeffRYfffQRbrnllmG3Epx22mlISUkZ8X2OOOIIAOh3D+F2u+F0Ooc83mAwjPh+RJOJd7BEM4DL5cKtt96Kl156Ca+++uqwx2mahrPPPhv33HMPLr74YvzrX//CDTfcgN///vc44YQTEAqF+h2/YcMGfPvb38Y111yDF198EZ/97Gd7n/vOd76DlpYWPP744/j5z3+O119/HRdeeCE++9nPIi0tDatXr8aNN96IP/7xj/jOd74z4vmvW7cOHR0dOOuss8YV9Do7O9He3o6cnBwAwMqVK2GxWHDttdfiT3/6ExobG/f5vYmIiBI10+Py+vXr0dnZiU9/+tPDxuUzzzwTRqMRr7zyyj6/pq9oNIpoNIpgMIjNmzfj29/+NjIyMnD66aePeK4vv/wyAODss88e8bjR7Nq1CwB67yFWrVqFxsZGXHTRRVizZg16enrG9f5EE2q6p/KJaHh9l2yFQiFtzpw52sqVK3uXYA1cVvfiiy9qALSf/vSn/d7nqaee0gBoDz/8cO9jZWVlmslk0rZv397v2Ndee00DoJ155pn9Hr/uuus0ANo111zT7/Gzzz5by8zMHPE6/vznP2sAtAcffDDhawegfe1rX9MikYgWDoe1rVu3aqeddpoGQLv//vt7j3vkkUc0p9OpAdAAaAUFBdoll1yi/e9//0v4dxERESVif4vLeXl52uLFi/f5NZomy91VjO77VVBQoL355psjvpemadonP/lJDYAWDAZHPVbT9L+jd955R4tEIprP59P++c9/ajk5OZrL5dKampo0TdO0YDConX322b3nYzKZtOXLl2vf/e53tZaWloR+F9Fk4Uw60QxhtVrxox/9COvWrcNf/vKXIY9Ro/mXXXZZv8c/97nPITU1Ff/973/7PX7QQQdhwYIFQ77XGWec0e/nxYsXA8CgEe/Fixejo6Nj1KV1++KBBx6AxWKB1WrF4sWL8fbbb+MHP/gBvva1r/Uec/nll6Ourg5PPvkkrrnmGpSUlOCJJ57Acccdh5/97GcTfk5ERETA/hGXNU0b8wq4oV7jcDjw/vvv4/3338e7776Lv//971iwYAE+9alPYe3ateM+z6EcccQRsFgscLlcOOOMM5Cfn49///vfyMvLAwDYbDY888wz2LJlC+69915ccMEFaG1txZ133onFixdj+/btk3JeRIlgkk40g1xwwQU45JBD8N3vfrdfuzKlvb0dZrO5dymXYjAYkJ+f37uHWxluLzcAZGZm9vvZarWO+HgwGBz2vUpLSwEAlZWVwx4zlPPOOw/vv/8+1q1bh+3bt6O9vX3IPe1paWm48MIL8atf/QrvvvsuPvzwQ+Tl5eG73/3uoD1/REREE2U2x+VAIIC2tjaUlJTs82sUo9GIlStXYuXKlTjssMNwzjnn4IUXXoDZbMYNN9ww7Psl+nuH8oc//AHvv/8+Nm7ciIaGBnz44Yc46qijBh23ePFiXHfddXjiiSdQU1ODX/ziF8PebxBNFSbpRDOIwWDA3Xffjd27d+Phhx8e9HxWVhai0ShaW1v7Pa5pGpqampCdnT3o/abCypUrkZmZiX/84x/QNC3h1+Xk5GDlypVYsWIFFixYAJPJlNDrlixZggsuuACRSAQ7duzY19MmIiIa0UyNyytWrEBGRgaee+65YePyc889h3g8jpNPPnmfXzOSlJQUzJ07Fx988MGIx5166qkApIDcWCxevBgrV67EsmXLRhz86MtgMOD6669Henr6mHq4E000JulEM8xJJ52Ek08+GT/4wQ8GLWU78cQTAQBPPPFEv8effvppBAKB3uenmsViwU033YRt27bhhz/84ZDHtLS0DNlbdSTt7e0Ih8NDPrdt2zYAQGFh4dhOloiIaAxmYly2Wq349re/ja1btw65NaylpQW33HIL8vLycMUVV+zza0bi9/uxa9cu5ObmjnjcWWedhQMP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+j7m7e0SpOfMYckbERElv+kU761W2Te8qgp46/Uj8Ku6AjjSOtHdkwN3bzZ64Yi4Wi41Fdh/f+CwwyQBz8oCzjwTeOUVieUlJVI119MD1NfLWvR584CGBn0/c8Z9IqLZJWFJek5ODoxG44hR9JaWlhGj55qCgoKwx5tMJmSHG3IGYLVaYR11E/PopaZKN9WaGsDjsWPXrmL090f+fKtVZs8XLQK+9CUJ2itWyKj5wQcDb78N7NkjAdlikd8dcIAk79zXlIiIppvpGO9TUyX29vcDra1GbNu2ENXNkT/fYJB4X1wszd8OOEDidW+vdGs/4ACZPR8e85cskS7u6encz5yIaDZLWJJusViwYsUKvPbaazjttNMGH3/ttdfwla98JexzVq1ahRdffHHIY6+++ipWrlwZdn3aVFAUGeE+9FB9RLyhQb56e0ceb7HISHhOjgRsg0G6sy5bBhx5pPypBdzycgnCTU3y2na7zKprJXDc15SIiKab6RjvFUW6qrtcMuv98stAa6vMZu/dKzE5lMkksXy//STe9/VJzE9Lk6Vsln2T7kuXStxXlLFjPsD9zImIZrOElruvW7cO55xzDlauXIlVq1bhN7/5DWpra3HppZcCkNK1vXv34sknnwQAXHrppXjwwQexbt06XHLJJXj//ffx6KOPYv369XE974wMKVNPT5evLVvksY4OGQ03GmWtWWUlUFSkB1W7XRL2RYukjK6kZGTANRjkOcNp+5oSERFNN9Mx3mdk6JVuVqvMejc3y/Kz5mZpLpeWJkvWli4FVq2Sn10u6cDe1ib3BBkZMqBfUSGJf+hM+GgxH2DcJyKazRKapK9duxbt7e24/fbb0djYiP333x8vv/wyysvLAQCNjY2ora0dPL6yshIvv/wyrrnmGjz00EMoKirCAw88ELft10JpifpBB8nIemurjKSrqh5Us7Jk9FxVJWgDkrynpXE0nIiIZo/pGu8zMiTOL1gAnHEGUFcnybm200pfn8T0uXNlgD606s207w7L7+dMOBERRUdR1eFFWzOb2+1Geno6urq64HQ6E306REREjE1TgJ8pERElk2jikiFO50RERERERERE42CSTkRERERERJQkmKQTERERERERJQkm6URERERERERJgkk6ERERERERUZJgkk5ERERERESUJJikExERERERESUJJulERERERERESYJJOhEREREREVGSYJJORERERERElCSYpBMRERERERElCVOiTyDeVFUFALjd7gSfCRERkdBikhajaPIY74mIKJlEE+tnXZLe3d0NACgtLU3wmRAREQ3V3d2N9PT0RJ/GjMB4T0REySiSWK+os2zYPhgMoqGhAWlpaVAUJernu91ulJaWoq6uDk6ncwrOMH5m0rUAvJ5kNpOuBeD1JLPpei2qqqK7uxtFRUUwGLgSLRYmE++n639Ho+H1JDdeT3Lj9SS36XQ90cT6WTeTbjAYUFJSMunXcTqdSf8fQqRm0rUAvJ5kNpOuBeD1JLPpeC2cQY+tWMT76fjf0Vh4PcmN15PceD3JbbpcT6SxnsP1REREREREREmCSToRERERERFRkmCSHiWr1YpbbrkFVqs10acyaTPpWgBeTzKbSdcC8HqS2Uy6FkqcmfbfEa8nufF6khuvJ7nNtOvRzLrGcURERERERETJijPpREREREREREmCSToRERERERFRkmCSTkRERERERJQkmKQTERERERERJQkm6cM8/PDDqKyshM1mw4oVK/D222+Pefxbb72FFStWwGazYc6cOXjkkUfidKaRieZ6GhsbcdZZZ2HhwoUwGAz4zne+E78TjVA01/OXv/wFxx9/PHJzc+F0OrFq1Sq88sorcTzbsUVzLe+88w4OP/xwZGdnw263Y9GiRbjvvvvieLbji/b/Hc27774Lk8mEZcuWTe0JRima63nzzTehKMqIr88//zyOZzy6aP9uPB4PbrzxRpSXl8NqtWLu3Ll47LHH4nS244vmes4///ywfzdLliyJ4xlTMmK8Z7yPJ8Z8wZgfH4z7MyDuqzToz3/+s2o2m9Xf/va36tatW9Wrr75adTgcak1NTdjj9+zZo6akpKhXX321unXrVvW3v/2tajab1WeffTbOZx5etNdTVVWlXnXVVervfvc7ddmyZerVV18d3xMeR7TXc/XVV6t33XWX+p///EfdsWOHesMNN6hms1n9+OOP43zmI0V7LR9//LH6pz/9Sf3000/Vqqoq9fe//72akpKi/vrXv47zmYcX7fVoXC6XOmfOHPWEE05Qly5dGp+TjUC01/PGG2+oANTt27erjY2Ng19+vz/OZz7SRP5u/t//+3/qIYccor722mtqVVWV+uGHH6rvvvtuHM96dNFej8vlGvJ3UldXp2ZlZam33HJLfE+ckgrjPeN9PDHmC8b8+GDcnxlxn0l6iIMPPli99NJLhzy2aNEi9frrrw97/Pe+9z110aJFQx771re+pR566KFTdo7RiPZ6Qq1evTrpgvZkrkez3377qbfddlusTy1qsbiW0047TT377LNjfWoTMtHrWbt2rXrTTTept9xyS1IF7GivRwvYnZ2dcTi76ER7Lf/4xz/U9PR0tb29PR6nF7XJ/r/z/PPPq4qiqNXV1VNxejRNMN7rGO+nHmO+YMyPD8b9oaZr3Ge5+z5erxcbN27ECSecMOTxE044Ae+9917Y57z//vsjjj/xxBOxYcMG+Hy+KTvXSEzkepJZLK4nGAyiu7sbWVlZU3GKEYvFtWzatAnvvfceVq9ePRWnGJWJXs/jjz+O3bt345ZbbpnqU4zKZP5+li9fjsLCQhx77LF44403pvI0IzKRa3nhhRewcuVK3H333SguLsaCBQtw7bXXor+/Px6nPKZY/L/z6KOP4rjjjkN5eflUnCJNA4z3yW0mxXuAMV/DmB8fjPsjTde4b0r0CSSLtrY2BAIB5OfnD3k8Pz8fTU1NYZ/T1NQU9ni/34+2tjYUFhZO2fmOZyLXk8xicT333nsvent7ceaZZ07FKUZsMtdSUlKC1tZW+P1+3Hrrrbj44oun8lQjMpHr2blzJ66//nq8/fbbMJmS65+hiVxPYWEhfvOb32DFihXweDz4/e9/j2OPPRZvvvkmjjrqqHicdlgTuZY9e/bgnXfegc1mw/PPP4+2tjZcdtll6OjoSPj6tMn+O9DY2Ih//OMf+NOf/jRVp0jTAON9cptJ8R5gzAcY8+OJcX+o6Rz3k+v/lCSgKMqQn1VVHfHYeMeHezxRor2eZDfR61m/fj1uvfVW/O1vf0NeXt5UnV5UJnItb7/9Nnp6evDBBx/g+uuvx7x58/CNb3xjKk8zYpFeTyAQwFlnnYXbbrsNCxYsiNfpRS2av5+FCxdi4cKFgz+vWrUKdXV1uOeeexIesIHoriUYDEJRFPzxj39Eeno6AODnP/85vva1r+Ghhx6C3W6f8vMdz0T/HXjiiSeQkZGBU089dYrOjKYTxvvkNpPiPcCYz5gfX4z7YjrHfSbp++Tk5MBoNI4YlWlpaRkxeqMpKCgIe7zJZEJ2dvaUnWskJnI9yWwy1/PUU0/hoosuwjPPPIPjjjtuKk8zIpO5lsrKSgDAAQccgObmZtx6660JD9jRXk93dzc2bNiATZs24YorrgAgAUJVVZhMJrz66qs45phj4nLu4cTq/51DDz0Uf/jDH2J9elGZyLUUFhaiuLh4MFADwOLFi6GqKurr6zF//vwpPeexTObvRlVVPPbYYzjnnHNgsVim8jQpyTHeJ7eZFO8BxnzG/Phi3NdN97jPNen7WCwWrFixAq+99tqQx1977TUcdthhYZ+zatWqEce/+uqrWLlyJcxm85SdayQmcj3JbKLXs379epx//vn405/+hJNPPnmqTzMisfq7UVUVHo8n1qcXtWivx+l04pNPPsHmzZsHvy699FIsXLgQmzdvxiGHHBKvUw8rVn8/mzZtSmgJLDCxazn88MPR0NCAnp6ewcd27NgBg8GAkpKSKT3f8Uzm7+att97Crl27cNFFF03lKdI0wHif3GZSvAcY8xnz44txXzft4368OtRNB1qL/0cffVTdunWr+p3vfEd1OByD3QCvv/569Zxzzhk8XtuS5ZprrlG3bt2qPvroo0m5JUuk16Oqqrpp0yZ106ZN6ooVK9SzzjpL3bRpk/rZZ58l4vRHiPZ6/vSnP6kmk0l96KGHhmzF4HK5EnUJg6K9lgcffFB94YUX1B07dqg7duxQH3vsMdXpdKo33nhjoi5hiIn8txYq2Tq9Rns99913n/r888+rO3bsUD/99FP1+uuvVwGozz33XKIuYVC019Ld3a2WlJSoX/va19TPPvtMfeutt9T58+erF198caIuYYiJ/rd29tlnq4cccki8T5eSFOM94308MeYPxZg/tRj3xXSP+0zSh3nooYfU8vJy1WKxqAcddJD61ltvDf7uvPPOU1evXj3k+DfffFNdvny5arFY1IqKCvVXv/pVnM94bNFeD4ARX+Xl5fE96TFEcz2rV68Oez3nnXde/E88jGiu5YEHHlCXLFmipqSkqE6nU12+fLn68MMPq4FAIAFnHl60/62FSraArarRXc9dd92lzp07V7XZbGpmZqZ6xBFHqC+99FICzjq8aP9utm3bph533HGq3W5XS0pK1HXr1ql9fX1xPuvRRXs9LpdLtdvt6m9+85s4nyklM8Z7xvt4YszXMeZPPcb96R/3FVXd1/mEiIiIiIiIiBKKa9KJiIiIiIiIkgSTdCIiIiIiIqIkwSSdiIiIiIiIKEkwSSciIiIi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OACXXHIJ6urq4n2JREQ0Csbl5NPb24s777wTy5cvR2pqKhwOB5YtW4af/vSn6O3tjclzKioqhsR0m82GefPmYd26dWhra4v4XPfs2YMrrrhiMN6npKRgyZIluOmmm7B3797B484///wh72e1WrFw4ULccsstGBgYGPKar7zyCk444QQUFRXBarWiqKgIX/ziF3HnnXdGfF40+5gSfQJEM0FaWhoeffTREQH/rbfewu7du5GWlpaYE5tl2tracNJJJ+G///0vLrzwQlx33XXIysrC3r178be//Q3HHnssNm7ciKVLlw4+56c//SmOPvpoeL1ebNiwAbfffjv+9a9/4ZNPPkFxcTHq6+tx0EEHISMjA9/97nexcOFCdHV1YevWrXj66aexZ88elJaWJvCqiYhoOMbl5NDc3IzjjjsOu3fvxlVXXYW7774bAPD666/jxz/+MdavX49//vOfyM/Pn9RzAODwww/HPffcAwDo7+/Hhg0bcOutt+Lf//43NmzYMO65/v3vf8fXv/515OTk4IorrsDy5cuhKAo++eQTPPbYY3jppZewadOmwePtdjtef/11AEBnZyfWr1+P22+/HZ9//jmeeuopAMAjjzyCb3/72/jqV7+KBx98EFlZWairq8N7772HZ599Ftdff/0kPl2a0VQimrDHH39cBaBefPHFqt1uV7u6uob8/uyzz1ZXrVqlLlmyRF29enVCzvGWW25Rk+V/db/frw4MDEzZ669Zs0Y1mUzqv/71r7C//89//qPW1NSoqqqqb7zxhgpAfeaZZ4Yc8+ijj6oA1B//+MeqqqrqD3/4QxWAumfPnrCvGQgEYngFREQ0GYzL0ZnquHzCCSeoJpNJffvtt0f87u2331ZNJpN64oknTvo55eXl6sknnzzi+JtvvlkFoG7fvn3M89yzZ4/qcDjU5cuXqy6Xa8Tvg8Gg+txzzw3+fN5556kOh2PEcUceeaQKQK2vr1dVVVXLysrUo446Kux78v6BxsJyd6IY+MY3vgEAWL9+/eBjXV1deO6553DhhReGfU5HRwcuu+wyFBcXw2KxYM6cObjxxhvh8XiGHKcoCq644gr8/ve/x+LFi5GSkoKlS5fi73//+4jXfOmll7Bs2TJYrVZUVlYOjihH4otf/CL2339/fPTRRzjyyCORkpKCOXPm4M4770QwGBxybG1tLc4++2zk5eXBarVi8eLFuPfee4ccV11dDUVRcPfdd+PHP/4xKisrYbVa8cYbbwyW+v33v//FGWecgfT0dGRlZWHdunXw+/3Yvn07TjrpJKSlpaGiomJwFH0sGzduxD/+8Q9cdNFFOOaYY8Ie84UvfAFlZWVjvs6hhx4KAKipqQEAtLe3w2AwIC8vL+zxBgP/GSUiSjaMy4mPyxs2bMCrr76Kiy66CEccccSI3x9xxBG48MIL8corr2Djxo0Tfs5Y0tPTAQBms3nM437+85+jt7cXDz/88OBzQimKgtNPP33c9wt3D1FYWBj2WN4/0Fj4XwdRDDidTnzta1/DY489NvjY+vXrYTAYsHbt2hHHDwwM4Oijj8aTTz6JdevW4aWXXsLZZ5+Nu+++O2wQeOmll/Dggw/i9ttvx3PPPYesrCycdtpp2LNnz+Ax//rXv/CVr3wFaWlp+POf/4yf/exnePrpp/H4449HfB1NTU34n//5H5x99tl44YUXsGbNGtxwww34wx/+MHhMa2srDjvsMLz66qv40Y9+hBdeeAHHHXccrr32WlxxxRUjXvOBBx7A66+/jnvuuQf/+Mc/sGjRosHfnXnmmVi6dCmee+45XHLJJbjvvvtwzTXX4NRTT8XJJ5+M559/Hscccwy+//3v4y9/+cuY5/7qq68CAE499dSIrzecXbt2AQByc3MBAKtWrUIwGMTpp5+OV155BW63e1KvT0REU49xOfFx+bXXXgMwdlzWfqcdO5HnaFRVhd/vh9/vR09PD9544w3cf//9OPzww1FZWTnmub766qvIz88fTLInKtw9xHPPPYdbb70VW7ZsQSAQmNTr0yyS6Kl8oulMK6v76KOPBsunP/30U1VVVfULX/iCev7556uqqo4oq3vkkUdUAOrTTz895PXuuusuFYD66quvDj4GQM3Pz1fdbvfgY01NTarBYFDvuOOOwccOOeQQtaioSO3v7x98zO12q1lZWRGV1a1evVoFoH744YdDHt9vv/2GlJVdf/31YY/79re/rSqKMlhSVlVVpQJQ586dq3q93iHHaqV+995775DHly1bpgJQ//KXvww+5vP51NzcXPX0008f8/wvvfRSFYD6+eefj3utqqqXuz/11FOqz+dT+/r61H//+9/qvHnzVKPRqG7ZskVVVSlx+9a3vqUaDAYVgKooirp48WL1mmuuUauqqiJ6LyIiig/GZd10iMvbtm1TAajf/va3J/wcVZVydwAjvg4++GC1sbFxzPNUVVW12WzqoYceOu5xGq3c3efzqT6fT21tbVV/8YtfqIqiqF/4whcGj9u1a5e6//77D56P3W5Xjz32WPXBBx8c8XdAFIoz6UQxsnr1asydOxePPfYYPvnkE3z00UejltS9/vrrcDgc+NrXvjbk8fPPPx+AjL6HOvroo4c0ucnPz0deXt5gOVVvby8++ugjnH766bDZbIPHpaWl4ZRTTon4GgoKCnDwwQcPeezAAw8cfB/t3Pfbb78Rx51//vlQVXWwiYrm//2//zdqmdmXv/zlIT8vXrwYiqJgzZo1g4+ZTCbMmzdvyDnE0tq1a2E2m5GSkoKjjjoKgUAAzz77LA488EAAUuL2yCOPYM+ePXj44YdxwQUXwOfz4b777sOSJUuGdIwnIqLkwbic/HFZVVUAiKrb/WjPOeKII/DRRx/ho48+wrvvvotHH30Ura2tOOaYY6Lq8B6p3t5emM1mmM1m5Obm4jvf+Q7WrFmD559/fvCYuXPnYsuWLXjrrbdw22234bjjjsNHH32EK664AqtWrRrRCZ5Iw+7uRDGiKAouuOACPPDAAxgYGMCCBQtw5JFHhj22vb0dBQUFIwJMXl4eTCYT2tvbhzyenZ094jWsViv6+/sBSFfRYDCIgoKCEceFe2w0472Pdu4VFRUjjisqKhr8fajR1mIBQFZW1pCfLRYLUlJShtzQaI+PV2aurTWvqqrCwoULxzw21F133YVjjjkGRqMROTk5o3ZqLy8vx7e//e3Bn59++ml84xvfwHXXXYf//Oc/Eb8fERHFB+Ny8sfl6upqABiMvRN5jiY9PR0rV64c/Pmwww7Dfvvth1WrVuHee+/FHXfcMea5VlVVjXk9w9ntdvz73/8GIH8n5eXlcDqdI44zGAw46qijcNRRRwGQ5P6iiy7CU089hcceewyXXXZZVO9LswNn0oli6Pzzz0dbWxseeeQRXHDBBaMel52djebm5sHRYE1LSwv8fj9ycnKiet/MzEwoioKmpqYRvwv32GRkZ2ejsbFxxOMNDQ0AMOLc47UX7IknnggA+Otf/xrV8+bMmYOVK1di+fLlUW2lduaZZ+LAAw/Ep59+GtX7ERFR/DAuJy4uH3/88QDGjsva77RjJ/KcsWhVcVu2bBnzuBNPPBHNzc344IMPxn1NjcFgwMqVK7Fy5UoccMABYRP0cBwOB2644QYA4D0EjYpJOlEMFRcX47rrrsMpp5yC8847b9Tjjj32WPT09IwIQk8++eTg76PhcDhw8MEH4y9/+cuQ0qnu7m68+OKLUb3WeI499lhs3boVH3/88ZDHn3zySSiKgqOPPjqm7xepgw46CGvWrMGjjz46orRPs2HDBtTW1kb1uuFufACgp6cHdXV1gzMVRESUfBiXExeXV65ciRNOOAGPPvoo3n333RG/f+edd/DYY4/hpJNOwooVKyb8nLFs3rwZAEbdoUVzzTXXwOFw4LLLLkNXV9eI36uqOqSMPVKj3UNs27YNAHgPQaNiuTtRjN15553jHnPuuefioYcewnnnnYfq6moccMABeOedd/DTn/4UX/rSl3DcccdF/b4/+tGPcNJJJ+H444/Hd7/7XQQCAdx1111wOBzo6OiYyKWEdc011+DJJ5/EySefjNtvvx3l5eV46aWX8PDDD+Pb3/42FixYELP3itaTTz6Jk046CWvWrMGFF16INWvWIDMzE42NjXjxxRexfv16bNy4cdxt2EL95Cc/wbvvvou1a9di2bJlsNvtqKqqwoMPPoj29nb87Gc/m8IrIiKiyWJcTmxcPu6443DCCSfgqquuGhzseP311/GLX/wCixYtwhNPPDHp5wCAy+UanAn3+XzYtm0bfvrTn8JqteLyyy8f8zwrKyvx5z//eTDWX3HFFVi+fDkAYOvWrXjsscegqipOO+20qK5/yZIlOPbYY7FmzRrMnTsXAwMD+PDDD3HvvfciPz8fF110UVSvR7MHk3SiBLDZbHjjjTdw44034mc/+xlaW1tRXFyMa6+9FrfccsuEXvP444/HX//6V9x0001Yu3YtCgoKcNlll6G/vx+33XZbzM49NzcX7733Hm644QbccMMNcLvdmDNnDu6++26sW7cuZu8zETk5OXjnnXfw29/+FuvXr8ef/vQn9PX1IS8vD4ceeiheeOEFLF26NKrXPOeccwBgcPucrq4uZGVlYcWKFXj55ZeHNNMhIqLpiXF5auTn5+ODDz7AAw88gKeffhoPPPAAAGDevHn4wQ9+gO985ztwOByTfg4AvPvuu1i1ahUAwGg0ori4GAcffDBuvPFGLFu2bNxz/fKXv4xPPvkE9957Lx555BHU1dXBYDCgsrISJ510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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.subplots(len(all_cps_intervals.keys())//2,2,figsize=(12,24))\n", "\n", "sorted_prop_indexes = np.argsort(y_hat_test) \n", "\n", "sorted_full_indexes = np.argsort(y_hat_full) \n", "\n", "alpha=0.2\n", "\n", "for i, name in enumerate(all_cps_intervals.keys()):\n", "\n", " plt.subplot(len(all_cps_intervals.keys())//2,2,i+1)\n", " if \"OOB\" in name:\n", " indexes = sorted_full_indexes\n", " y_hat_ = y_hat_full\n", " else:\n", " indexes = sorted_prop_indexes\n", " y_hat_ = y_hat_test\n", "\n", " plt.title(name)\n", " plt.plot(y_hat_[indexes], all_cps_intervals[name][indexes,0], \n", " color=\"r\", alpha=alpha)\n", " plt.plot(y_hat_[indexes], all_cps_intervals[name][indexes,1], \n", " color=\"r\", alpha=alpha)\n", " plt.scatter(y_hat_[indexes],y_test[indexes],\n", " color=\"b\", marker=\"o\", alpha=alpha)\n", " plt.scatter(y_hat_[indexes],y_hat_[indexes],\n", " color=\"y\", marker=\".\", alpha=alpha)\n", " plt.xlabel(\"predicted\")\n", " plt.ylabel(\"endpoints\")\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "ef7766c8-5f32-46a2-9c73-83ce799bcd06", "metadata": {}, "source": [ "### Evaluating the CPS using a test set" ] }, { "cell_type": "markdown", "id": "bbf00f7e-6eea-41cd-84d6-d4de4fe7277f", "metadata": {}, "source": [ "Let us evaluate the generated CPS using three confidence levels on the test set.\n", "We could specify a subset of the metrics to use by the\n", "`metrics` parameter of the `evaluate` method; here we use all metrics, \n", "which is the default\n", "\n", "Note that values for the parameters `sigmas` and `bins` can always be provided,\n", "but they will be ignored by CPS that have not been fitted with such values,\n", "e.g., both arguments will be ignored by the standard CPS.\n", "\n", "Note that CRPS takes some time to compute, in particular when the CPS have been fitted with \n", "larger calibration sets." ] }, { "cell_type": "code", "execution_count": 136, "id": "2775d1e6-86e2-4421-8531-dc97eb3d51ba", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Std CPSNorm CPSMond CPSMond norm CPS
0.900.950.990.900.950.990.900.950.990.900.950.99
error0.09290.04590.00900.09680.04690.00860.09590.04720.00840.09780.05100.0058
eff_mean0.04260.06230.14390.04010.05230.07990.04280.06150.10000.04190.05320.0892
eff_med0.04280.06350.15150.02980.03910.06080.02890.03590.07430.02790.03510.0683
time_fit0.00010.00010.00010.00010.00010.00010.00010.00010.00010.00010.00010.0001
CRPS0.00730.00730.00730.00680.00680.00680.00700.00700.00700.00670.00670.0067
ks_test0.05930.06320.06000.05940.05840.05900.04040.05130.04820.04940.04970.0435
time_evaluate0.24050.24400.24250.25770.28120.28360.16680.16700.16610.18950.18950.1901
\n", "
" ], "text/plain": [ " Std CPS Norm CPS Mond CPS \\\n", " 0.90 0.95 0.99 0.90 0.95 0.99 0.90 \n", "error 0.0929 0.0459 0.0090 0.0968 0.0469 0.0086 0.0959 \n", "eff_mean 0.0426 0.0623 0.1439 0.0401 0.0523 0.0799 0.0428 \n", "eff_med 0.0428 0.0635 0.1515 0.0298 0.0391 0.0608 0.0289 \n", "time_fit 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 \n", "CRPS 0.0073 0.0073 0.0073 0.0068 0.0068 0.0068 0.0070 \n", "ks_test 0.0593 0.0632 0.0600 0.0594 0.0584 0.0590 0.0404 \n", "time_evaluate 0.2405 0.2440 0.2425 0.2577 0.2812 0.2836 0.1668 \n", "\n", " Mond norm CPS \n", " 0.95 0.99 0.90 0.95 0.99 \n", "error 0.0472 0.0084 0.0978 0.0510 0.0058 \n", "eff_mean 0.0615 0.1000 0.0419 0.0532 0.0892 \n", "eff_med 0.0359 0.0743 0.0279 0.0351 0.0683 \n", "time_fit 0.0001 0.0001 0.0001 0.0001 0.0001 \n", "CRPS 0.0070 0.0070 0.0067 0.0067 0.0067 \n", "ks_test 0.0513 0.0482 0.0494 0.0497 0.0435 \n", "time_evaluate 0.1670 0.1661 0.1895 0.1895 0.1901 " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Std OOB CPSNorm OOB CPSMond OOB CPSMond norm OOB CPS
0.900.950.990.900.950.990.900.950.990.900.950.99
error0.09240.04720.00990.10020.05030.00980.09910.05010.01020.09540.04780.0094
eff_mean0.04170.06150.12970.03830.04970.07870.04150.05610.09920.04100.05170.0818
eff_med0.04190.06260.13630.02960.03850.06170.02970.03980.07280.02900.03740.0628
time_fit0.00010.00010.00010.00010.00010.00010.00020.00020.00020.00030.00030.0003
CRPS0.00720.00720.00720.00670.00670.00670.00690.00690.00690.00660.00660.0066
ks_test0.01670.01700.01730.03240.03200.03200.14320.13640.14130.30290.30140.3097
time_evaluate0.56640.49650.49800.53930.54150.53840.21230.21680.21650.25180.25250.2516
\n", "
" ], "text/plain": [ " Std OOB CPS Norm OOB CPS \\\n", " 0.90 0.95 0.99 0.90 0.95 0.99 \n", "error 0.0924 0.0472 0.0099 0.1002 0.0503 0.0098 \n", "eff_mean 0.0417 0.0615 0.1297 0.0383 0.0497 0.0787 \n", "eff_med 0.0419 0.0626 0.1363 0.0296 0.0385 0.0617 \n", "time_fit 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 \n", "CRPS 0.0072 0.0072 0.0072 0.0067 0.0067 0.0067 \n", "ks_test 0.0167 0.0170 0.0173 0.0324 0.0320 0.0320 \n", "time_evaluate 0.5664 0.4965 0.4980 0.5393 0.5415 0.5384 \n", "\n", " Mond OOB CPS Mond norm OOB CPS \n", " 0.90 0.95 0.99 0.90 0.95 0.99 \n", "error 0.0991 0.0501 0.0102 0.0954 0.0478 0.0094 \n", "eff_mean 0.0415 0.0561 0.0992 0.0410 0.0517 0.0818 \n", "eff_med 0.0297 0.0398 0.0728 0.0290 0.0374 0.0628 \n", "time_fit 0.0002 0.0002 0.0002 0.0003 0.0003 0.0003 \n", "CRPS 0.0069 0.0069 0.0069 0.0066 0.0066 0.0066 \n", "ks_test 0.1432 0.1364 0.1413 0.3029 0.3014 0.3097 \n", "time_evaluate 0.2123 0.2168 0.2165 0.2518 0.2525 0.2516 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "confidence_levels = [0.9,0.95,0.99]\n", "\n", "names = np.array(list(all_cps.keys()))\n", "\n", "first_set = names[[\"OOB\" not in name for name in names]]\n", "second_set = names[[\"OOB\" in name for name in names]]\n", "\n", "for methods in [first_set, second_set]:\n", " all_cps_results = {}\n", " for confidence in confidence_levels:\n", " for name in methods:\n", " if \"OOB\" in name:\n", " all_cps_results[(name,confidence)] = all_cps[name].evaluate(\n", " y_hat_full, y_test, sigmas=sigmas_test_var_oob, \n", " bins=bins_test_oob, confidence=confidence, \n", " y_min=0, y_max=1)\n", " else:\n", " all_cps_results[(name,confidence)] = all_cps[name].evaluate(\n", " y_hat_test, y_test, sigmas=sigmas_test_var, \n", " bins=bins_test, confidence=confidence, y_min=0, y_max=1)\n", "\n", " cps_results_df = pd.DataFrame(columns=pd.MultiIndex.from_product(\n", " [methods,confidence_levels]), index=list(list(\n", " all_cps_results.values())[0].keys()))\n", "\n", " for key in all_cps_results.keys():\n", " cps_results_df[key] = all_cps_results[key].values()\n", "\n", " display(cps_results_df.round(4))" ] }, { "cell_type": "markdown", "id": "950519ce-5ede-439e-bd4b-7bd7a462246c", "metadata": { "tags": [] }, "source": [ "### Semi-online conformal predictive systems" ] }, { "cell_type": "markdown", "id": "97701c4f-af8e-4897-88c5-e61d6bd8d4bc", "metadata": { "tags": [] }, "source": [ "Similar to semi-online conformal classifiers and regressors, we may consider employing *online calibration* also for conformal predictive systems, i.e., continuously updating the calibration set after making each prediction. This is achieved by the methods `predict_p_online`, `predict_int_online`, `predict_percentiles_online` and `predict_cpds_online`, and also (optionally) through the `evaluate` method." ] }, { "cell_type": "markdown", "id": "0ceba664-b2ac-4a5e-8220-727feeb6c2cd", "metadata": { "tags": [] }, "source": [ "#### Online calibration with a fitted conformal predictive system" ] }, { "cell_type": "markdown", "id": "acb47481-a7ff-4fb3-b109-f84bd6a226d5", "metadata": {}, "source": [ "Here we will compute p-values for the correct targets in an online fashion for some of the above fitted conformal predictive systems. Let us start with the standard (non-normalized) conformal predictive system." ] }, { "cell_type": "code", "execution_count": 137, "id": "520a83fc-0d8a-4b84-9038-3bf0cf5fddd6", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.69534626, 0.95037766, 0.55444929, ..., 0.17077673, 0.64859631,\n", " 0.21884237])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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37/fWLdundGoUSPjscceM+tHsBsFPRbz5s0zXFxcjJkzZxrHjh0zNm7caAQFBRkdO3Y060ewGykpKUZERIQRERFhSDLeeecdIyIiwjaVQXF9fttdETIMw5gxY4bh7+9vuLq6Gu3btzfWrVtn+9rgwYONbt265dn/999/N9q1a2e4uroa9erVM2bNmlXCie1XQY5Ft27dDEn5/gwePLjkg9upgv7d+F8UoaJV0GNx4MAB44477jDKly9v1K5d2xg3bpyRlpZWwqntU0GPxfTp043mzZsb5cuXN2rWrGkMGDDAOH36dAmntj+//fbbNT8Diuvz22IYnMsDAACOya7uEQIAACgIihAAAHBYFCEAAOCwKEIAAMBhUYQAAIDDoggBAACHRRECAAAOiyIEwO698soratu2rdkxAJRCFCEAAOCwKEIAAMBhUYQAlKhbbrlFI0eO1MiRI1W5cmV5e3vrX//61xVX7k5KSlL58uW1evXqPOPLly+Xh4eHbTX2559/Xo0bN1aFChVUv359vfjii8rKyrpmhjFjxuQZ6927t4YMGWLbzszM1IQJE1SrVi15eHgoODhYv//+e6F/bgClE0UIQIn77LPP5OLiom3btmn69Ol699139emnn+bbz8vLSz169NCCBQvyjC9cuFC9evVSxYoVJUmVKlXS/PnzFRUVpffff1+zZ8/Wu+++e0MZhw4dqk2bNmnx4sXas2ePHnroId199906cuTIDX1fAKWLi9kBADieOnXq6N1335XFYlGTJk20d+9evfvuuxoxYkS+fQcMGKBBgwYpLS1NFSpUUHJysn744QctW7bMts+//vUv2/+uV6+enn32WS1ZskQTJkwoVL5jx45p0aJFOn36tPz8/CRJ48eP1+rVqzVv3jz9+9//LtT3BVD6cEYIQInr1KmTLBaLbTskJERHjhzR66+/rooVK9r+REdHq0ePHnJxcdHKlSslScuWLVOlSpUUGhpqe/3SpUt10003qUaNGqpYsaJefPFFRUdHFzrfrl27ZBiGGjdunCfPunXrdOzYscL/4ABKHc4IASg1wsLC1K9fP9u2n5+fXFxc1KdPHy1cuFAPP/ywFi5cqH79+snFJffX19atW/Xwww9rypQpuuuuu+Tl5aXFixfr7bffvur7ODk55bsn6X/vKbJarXJ2dlZ4eLicnZ3z7PfX5TgA9oEiBKDEbd26Nd92o0aN5O3tLW9v73z7DxgwQKGhodq/f79+++03vfrqq7avbdq0Sf7+/po8ebJt7NSpU9d8/2rVqik2Nta2nZOTo3379unWW2+VJLVr1045OTmKj49X165dC/UzAigbuDQGoMTFxMRo3LhxOnTokBYtWqQPPvhAo0ePvur+3bp1k6+vrwYMGKB69eqpU6dOtq81bNhQ0dHRWrx4sY4dO6bp06drxYoV13z/2267TT/88IN++OEHHTx4UE899ZQuXrxo+3rjxo1t9yYtX75cJ06c0I4dO/TGG29o1apVN/zzAyg9KEIAStygQYN0+fJldezYUU8//bSeeeYZPf7441fd32Kx6JFHHtHu3bs1YMCAPF/r1auXxo4dq5EjR6pt27bavHmzXnzxxWu+/7BhwzR48GANGjRI3bp1U0BAgO1s0F/mzZunQYMG6dlnn1WTJk3Us2dPbdu2TXXq1Cn8Dw6g1LEYV5q8AwCKyS233KK2bdvqvffeMzsKAHBGCAAAOC6KEAAAcFhcGgMAAA6LM0IAAMBhUYQAAIDDoggBAACHRRECAAAOiyIEAAAcFkUIAAA4LIoQAABwWBQhAADgsChCAADAYf0fk94LXinSRmUAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.5776079428081664\n" ] } ], "source": [ "p_values = cps_std.predict_p_online(y_hat_test, y_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "6a32193f-b1f4-49bf-afa2-f99ca6a91bf0", "metadata": {}, "source": [ "For the normalized conformal predictive system, the non-conformity scores for the test set also involves the difficulty estimates (sigmas)." ] }, { "cell_type": "code", "execution_count": 138, "id": "13a6b59d-bf6d-4d55-afdc-ac4ab5ba26b7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.72709781, 0.98226554, 0.51683416, ..., 0.15432702, 0.67074357,\n", " 0.18625108])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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OeWZk/T3OUXZ2dlydnZWZGSknJ2dc+331+U4APaBIgSgyG3evDnPdu3ateXr6ytfX988+/fp00fh4eHau3evfv/9d73++uvW323YsEEBAQEaO3asdezEiRPXff8KFSooNjbWup2VlaU//vhDd955pySpWbNmysrKUnx8vNq2bVugzwigZODSGIAid/LkSY0aNUoHDhzQ/PnzNXnyZD311FPX3L9du3by8/NTnz59VKNGDbVo0cL6u1q1aikmJkYLFizQkSNHNGnSJC1btuy679++fXv9+OOP+vHHH7V//34NHz5cFy5csP6+Tp061rlJS5cu1bFjx7Rt2za9/fbbWr58+U1/fgDFB0UIQJHr16+frly5orCwMD3++ON64oknNHTo0Gvub7FY1KtXL+3atUt9+vTJ9bsHHnhATz/9tEaMGKGmTZtq48aNevnll6/7/oMGDVL//v3Vr18/tWvXToGBgdazQX+ZNWuW+vXrp2eeeUZ169bV/fffry1btqhatWoF/+AAih2LcbXFOwCgkNxxxx1q2rSpPvzwQ7OjAABnhAAAgOOiCAEAAIfFpTEAAOCwOCMEAAAcFkUIAAA4LIoQAABwWBQhAADgsChCAADAYVGEAACAw6IIAQAAh0URAgAADosiBAAAHNb/ARM3Bc06AgbhAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.5376685400683153\n" ] } ], "source": [ "p_values = cps_norm.predict_p_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "c03a48e6-5969-4d77-b4ba-97990ff583dd", "metadata": {}, "source": [ "For the (non-normalized) Mondrian conformal predictive system, we need to provide the categories for the test objects:" ] }, { "cell_type": "code", "execution_count": 139, "id": "94196387-5dc7-4f66-a749-4a51b633d2c7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.81699635, 0.94144376, 0.52768858, ..., 0.14964119, 0.64844946,\n", " 0.10773542])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.5667301018659305\n" ] } ], "source": [ "p_values = cps_mond_std.predict_p_online(y_hat_test, y_test, \n", " bins=bins_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "2c166e16-04ec-469d-b46e-087c24c17e97", "metadata": {}, "source": [ "For the normalized Mondrian conformal predictive system, we need to provide both difficulty estimates and Mondrian categories for the test objects:" ] }, { "cell_type": "code", "execution_count": 140, "id": "acd539da-c9eb-4f55-981f-ec701d164493", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.82148739, 0.96426672, 0.52556784, ..., 0.15105822, 0.66145534,\n", " 0.10293294])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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xhqSjPfee8+IjY21T2VQUp/fTleEDMMwPvroI6Nu3bqGl5eXERISYqxevdr+vSFDhhhdu3bNt/+vv/5qtG3b1vDy8jLq1atnTJs2rZQTO6+CHIuuXbsaki75GjJkSOkHd1IF/bPxvyhCxaugx2Lfvn1Gt27djHLlyhlBQUHGmDFjjAsXLpRyaudU0GMxefJko1mzZka5cuWMGjVqGAMHDjROnDhRyqmdzy+//HLVz4CS+vy2GAbn8gAAgGtyqnuEAAAACoIiBAAAXBZFCAAAuCyKEAAAcFkUIQAA4LIoQgAAwGVRhAAAgMuiCAFweq+++qratGljdgwAZRBFCAAAuCyKEAAAcFkUIQCl6qabbtLIkSM1cuRIVaxYUZUrV9aLL7542ZW709LSVK5cOa1atSrf+NKlS+Xn52dfjf35559Xo0aN5Ovrq/r16+ull15STk7OVTOMHj0631jPnj01dOhQ+3Z2draee+451apVS35+furQoYN+/fXXQr9vAGUTRQhAqfviiy/k4eGhzZs3a/LkyZo0aZI+//zzS/YLCAjQHXfcoblz5+Ybnzdvnu655x6VL19eklShQgXNmjVLcXFx+uCDD/TZZ59p0qRJRco4bNgwrV+/XgsWLNCuXbt0//3361//+pcOHjxYpJ8LoGzxMDsAANdTu3ZtTZo0SRaLRY0bN9bu3bs1adIkjRgx4pJ9Bw4cqMGDB+vChQvy9fVVenq6vvvuOy1ZssS+z4svvmj/3/Xq1dPTTz+thQsX6rnnnitUvsOHD2v+/Pk6ceKEatasKUl65plntGrVKs2cOVNvvPFGoX4ugLKHM0IASl3Hjh1lsVjs2+Hh4Tp48KD+/e9/q3z58vavhIQE3XHHHfLw8NCKFSskSUuWLFGFChUUERFhf/3ixYt1ww03qHr16ipfvrxeeuklJSQkFDrf9u3bZRiGGjVqlC/P6tWrdfjw4cK/cQBlDmeEAJQZkZGR6tu3r327Zs2a8vDwUO/evTVv3jz169dP8+bNU9++feXhkffX16ZNm9SvXz9NmDBBt99+uwICArRgwQK9++67V/w9bm5ul9yT9L/3FNlsNrm7uysmJkbu7u759vvrchwA50ARAlDqNm3adMl2w4YNVblyZVWuXPmS/QcOHKiIiAjt3btXv/zyi1577TX799avX6+6detq/Pjx9rH4+Pir/v6qVasqMTHRvm21WrVnzx7dfPPNkqS2bdvKarUqOTlZXbp0KdR7BOAYuDQGoNQdP35cY8aM0W+//ab58+drypQpevLJJ6+4f9euXRUYGKiBAweqXr166tixo/17119/vRISErRgwQIdPnxYkydP1rJly676+2+55RZ99913+u6777R//3499thjOnv2rP37jRo1st+btHTpUh09elRbt27Vm2++qZUrVxb5/QMoOyhCAErd4MGDdfHiRbVv316PP/64nnjiCT388MNX3N9isah///7auXOnBg4cmO9799xzj5566imNHDlSbdq00YYNG/TSSy9d9fc/+OCDGjJkiAYPHqyuXbsqODjYfjboLzNnztTgwYP19NNPq3Hjxrr77ru1efNm1a5du/BvHECZYzEuN3kHAJSQm266SW3atNH7779vdhQA4IwQAABwXRQhAADgsrg0BgAAXBZnhAAAgMuiCAEAAJdFEQIAAC6LIgQAAFwWRQgAALgsihAAAHBZFCEAAOCyKEIAAMBlUYQAAIDL+n+BThzLWltE8wAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.5927671590495831\n" ] } ], "source": [ "p_values = cps_mond_norm.predict_p_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " bins=bins_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "c2d02162-42ad-4938-b1a9-46c0cadbc361", "metadata": {}, "source": [ "Similarly, we can obtain prediction intervals using online calibration:" ] }, { "cell_type": "code", "execution_count": 141, "id": "5ec895d6-2660-4f7f-aac0-3bb78b5b04c7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.00701302, 0.04982439],\n", " [0.037429 , 0.08024037],\n", " [0.15075956, 0.19362289],\n", " ...,\n", " [0.02376279, 0.06525427],\n", " [0.02396965, 0.06546113],\n", " [0.00856334, 0.05005483]])" ] }, "execution_count": 141, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_std.predict_int_online(y_hat_test, y_test, \n", " y_min=0, y_max=1, confidence=0.9)" ] }, { "cell_type": "code", "execution_count": 142, "id": "b44414ce-f90e-48ee-8fc3-c290bc6500b1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01508315, 0.04232715],\n", " [0.04314194, 0.07534897],\n", " [0.13977239, 0.20713064],\n", " ...,\n", " [0.02894676, 0.05897662],\n", " [0.03035021, 0.05790497],\n", " [0.0153586 , 0.04205558]])" ] }, "execution_count": 142, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_norm.predict_int_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " y_min=0, y_max=1, confidence=0.9)" ] }, { "cell_type": "code", "execution_count": 143, "id": "1ae85f7e-4e30-4bb4-a0f3-17f9878cd24f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01844149, 0.03703253],\n", " [0.03612738, 0.07865149],\n", " [0.12866898, 0.22484594],\n", " ...,\n", " [0.02839071, 0.05798011],\n", " [0.02859757, 0.05818698],\n", " [0.01780104, 0.03653765]])" ] }, "execution_count": 143, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_std.predict_int_online(y_hat_test, y_test, \n", " bins=bins_test, \n", " y_min=0, y_max=1, confidence=0.9)" ] }, { "cell_type": "code", "execution_count": 144, "id": "5bd76e80-28ad-4305-a928-fb841879a975", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.0186728 , 0.03708165],\n", " [0.0388287 , 0.07749237],\n", " [0.13695332, 0.2199475 ],\n", " ...,\n", " [0.02922392, 0.05698347],\n", " [0.03060453, 0.0560761 ],\n", " [0.01817478, 0.03617991]])" ] }, "execution_count": 144, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_norm.predict_int_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, bins=bins_test, \n", " y_min=0, y_max=1, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "9962979e-7497-4b1c-9006-1814d8aecaad", "metadata": {}, "source": [ "We can also get (lower and higher) percentiles using online calibration:" ] }, { "cell_type": "code", "execution_count": 145, "id": "7fabccb6-ff3d-4103-8da0-0feb7a0f0a16", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 0.02211605, 0.02766377, 0.03273211, 0.06238662],\n", " [0.02930072, 0.05253486, 0.05807882, 0.06313249, 0.0928026 ],\n", " [0.14268324, 0.16591454, 0.17146133, 0.17651501, 0.20618511],\n", " ...,\n", " [0.01572193, 0.03763537, 0.04297897, 0.04813352, 0.07752746],\n", " [0.01592879, 0.03784473, 0.04318583, 0.04834039, 0.07773432],\n", " [0.00052249, 0.02243842, 0.02777952, 0.03293408, 0.06232802]])" ] }, "execution_count": 145, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_std.predict_percentiles_online(y_hat_test, y_test, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1)" ] }, { "cell_type": "code", "execution_count": 146, "id": "8e3cd64a-0614-4909-afa1-101690bacb8c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01164158, 0.02317819, 0.02769849, 0.0321323 , 0.04740387],\n", " [0.03907342, 0.05272599, 0.05805036, 0.06328477, 0.08135051],\n", " [0.13119081, 0.1598629 , 0.17101036, 0.18194006, 0.21966212],\n", " ...,\n", " [0.02559919, 0.03809131, 0.0429934 , 0.04795689, 0.06491383],\n", " [0.02727855, 0.03874152, 0.04323911, 0.0477935 , 0.06335283],\n", " [0.01238256, 0.02348869, 0.02784626, 0.03225889, 0.04733385]])" ] }, "execution_count": 146, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_norm.predict_percentiles_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1)" ] }, { "cell_type": "code", "execution_count": 147, "id": "70cfd95e-5c5b-46bf-bfe7-5c245e0be492", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.01601938, 0.02468636, 0.0282985 , 0.03136821, 0.04158456],\n", " [0.03188702, 0.05138772, 0.05785784, 0.06505169, 0.08583971],\n", " [0.11863259, 0.1582804 , 0.17157851, 0.18441603, 0.27241047],\n", " ...,\n", " [0.0247801 , 0.0378353 , 0.04284991, 0.04804024, 0.06189022],\n", " [0.02498696, 0.03804706, 0.04305677, 0.0482471 , 0.06209708],\n", " [0.01524904, 0.02475298, 0.028164 , 0.03097318, 0.03959056]])" ] }, "execution_count": 147, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_std.predict_percentiles_online(y_hat_test, y_test, \n", " bins=bins_test, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1)" ] }, { "cell_type": "code", "execution_count": 148, "id": "5a2abfc3-0626-46bd-8e2d-9ec8885796b9", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.0164767 , 0.02496492, 0.02829887, 0.0313584 , 0.04041966],\n", " [0.03569243, 0.05160989, 0.05789694, 0.06518336, 0.08472576],\n", " [0.12688174, 0.15605151, 0.17152393, 0.18843204, 0.2326246 ],\n", " ...,\n", " [0.02542674, 0.03795118, 0.04281897, 0.04804363, 0.06137347],\n", " [0.02712032, 0.03862607, 0.04307906, 0.04787309, 0.06010428],\n", " [0.01591144, 0.02479049, 0.02816462, 0.03097464, 0.03910273]])" ] }, "execution_count": 148, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_norm.predict_percentiles_online(y_hat_test, y_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1)" ] }, { "cell_type": "markdown", "id": "76432430-05df-4d8f-991f-505ff9cd1e69", "metadata": {}, "source": [ "We can also obtain the full conformal predictive distributions (cpds) using online calibration. For standard and normalized conformal predictive systems, each cpd will contain one more value than the preceding, since the calibration set is growing by one element for each prediction." ] }, { "cell_type": "code", "execution_count": 149, "id": "9cc1e705-0eef-433f-9026-a807b68b56b4", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cpds = cps_norm.predict_cpds_online(y_hat_test, y_test, sigmas=sigmas_test_var)\n", "plt.plot(np.arange(len(cpds)), [len(cpds[i]) for i in range(len(cpds))])\n", "plt.xlabel(\"#test objects\")\n", "plt.ylabel(\"calibration set size\")\n", "plt.ylim(0)\n", "plt.xlim(0)\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "7ff9465b-43a8-4b45-9eb1-db98a3ee96e5", "metadata": {}, "source": [ "For Mondrian conformal predictive systems, the calibration set for one of the categories will be extended with one element for each prediction; the size of the predicted cpd is dependent on which category the test object falls in." ] }, { "cell_type": "code", "execution_count": 150, "id": "835f2976-f0a1-4dbd-b6fe-062c5a13c47d", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkQAAAGwCAYAAABIC3rIAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAATFBJREFUeJzt3XlYlOX+P/D3sA37KCJbIqBoLriCIe67IkqmX/fITh2tVBTRzCUTTYU6J7XyaKamZZm2qFkiiRtqghhK4m4KogmCCoML63D//vDn1IgLA/PMDMz7dV1cl/PMPffnM09e8fZZ7kcmhBAgIiIiMmFmhm6AiIiIyNAYiIiIiMjkMRARERGRyWMgIiIiIpPHQEREREQmj4GIiIiITB4DEREREZk8C0M3UFOUl5fj+vXrcHBwgEwmM3Q7REREVAlCCNy5cwceHh4wM3vycSAGokq6fv06PD09Dd0GERERVcHVq1fRoEGDJ77PQFRJDg4OAB7sUEdHRwN3Q0RERJVRUFAAT09P9e/xJ2EgqqSHp8kcHR0ZiIiIiGqYZ13uwouqiYiIyOQxEBEREZHJYyAiIiIik8dARERERCaPgYiIiIhMHgMRERERmTwGIiIiIjJ5DERERERk8hiIiIiIyOQxEBEREZHJYyAiIiIig/gh5RqazI3F3rM3DN0Kn2VGRERE+jXl2xPY8cd19evXv/wdGTEhBuyIgYiIiIj0JP9+CdoujDd0G4/FU2ZEREQkud8zbhttGAJ4hIiIiIgkpCoXaDwn1tBtPBOPEBEREZEk7hWX1YgwBDAQERERkQQyb91Hy/m/GrqNSuMpMyIiItKZUlU5mszdpfXnhBCQyWQSdFQ5PEJEREREOvHdsatVCkMAIISOm9ESjxARERFRtQgh4DO7etcKqYSAGQx3hIiBiIiIiLSWf78EUzenIuFCrk7mKzfwISIGIiIiIqqUS7l3EfrpYdwrUel87vJynU+pFQYiIiIieqbWUb+ioKhMsvl5hIiIiIiMmvesnZLXUBk4EPEuMyIiInqsolKVXsIQAAieMiMiIiJjE/LJIZy+XqC3ejxCREREREbFe9ZOvYYhADh+JU+v9R7FQEREREQAgDPXC/R2iuxR5uaGW4MI4CkzIiIikyeEwLQtqdieet1gPViaGfYYDQMRERGRCZuzLQ2bjmYaug0EeNc1aH0GIiIiIhNUUFSK1lG7Dd0Gdk/rhqauDoZug4GIiIjIlBy6mIvFO8/iXPYdg/ZxakF/2MuNJ4YYTydEREQkmS+PZGD+jtOGbgMAkBETYugWKmAgIiIiquUMdefYo775dyA6+zobuo3HYiAiIiKqhVTlAgM/PoTzNwx7agwALiwKhpWFca/0w0BERERUy4z+PAmJl28Zug38NqsXnqtjY+g2KoWBiIiIqBZJuJBr8DCU8HYPeNWzM2gP2mIgIiIiqiVu3yvBuC+SDVb/14hueN7N8LfQVwUDERERUS1wNqsAwR8fMlj9mnCd0NPU3M6JiIgIAJBzp8igYeiP+f1qdBgCeISIiIioxiovF2g0J9Zg9VPf64s6tlYGq69LDEREREQ10P/2/4n//HreILU/HNYaIzp4GqS2VBiIiIiIahhDLrRojKtM64JBT/hFR0ejQ4cOcHBwgIuLC4YMGYLz5zXT7quvvgqZTKbx07FjR40xxcXFCA8Ph7OzM+zs7BAaGopr165pjMnLy0NYWBgUCgUUCgXCwsKQn58v9VckIiLSmZKycoOEIbmFGdKjB9baMAQYOBAlJCRg0qRJSEpKQnx8PMrKytCvXz/cu3dPY9yAAQOQlZWl/omN1TxfGhERgW3btmHz5s04fPgw7t69i0GDBkGlUqnHjBkzBqmpqYiLi0NcXBxSU1MRFhaml+9JRERUXb9n3EbTd3fptWbXJs5Ijx6I84uCIZPJ9Fpb32RCCGHoJh7Kzc2Fi4sLEhIS0K1bNwAPjhDl5+dj+/btj/2MUqlE/fr1sXHjRowcORIAcP36dXh6eiI2Nhb9+/fH2bNn0aJFCyQlJSEwMBAAkJSUhKCgIJw7dw7PP//8M3srKCiAQqGAUqmEo6Ojbr4wERHRM4R/ewI//3Fd73XPLxoAuYW53uvqWmV/fxvVPXJKpRIA4OTkpLH9wIEDcHFxQdOmTTF+/Hjk5OSo30tJSUFpaSn69eun3ubh4QE/Pz8cOXIEAJCYmAiFQqEOQwDQsWNHKBQK9ZhHFRcXo6CgQOOHiIhIX05fV8J71k69h6GJPRojPXpgrQhD2jCai6qFEIiMjESXLl3g5+en3h4cHIzhw4fDy8sL6enpmDdvHnr16oWUlBTI5XJkZ2fDysoKdevW1ZjP1dUV2dnZAIDs7Gy4uLhUqOni4qIe86jo6GgsWLBAh9+QiIjo2XLvFKPD4j0Gqb17Wjc0da2ZK01Xl9EEosmTJ+PkyZM4fPiwxvaHp8EAwM/PDwEBAfDy8sLOnTsxdOjQJ84nhNA43/m4c5+Pjvmn2bNnIzIyUv26oKAAnp616xZDIiIyHoUlKjR/L85g9Y/N7YP6DnKD1Tc0owhE4eHh2LFjBw4ePIgGDRo8day7uzu8vLxw8eJFAICbmxtKSkqQl5encZQoJycHnTp1Uo+5ceNGhblyc3Ph6ur62DpyuRxyuen+xSAiIv05c70AAz8xzErTq8a2R3Ard4PUNiYGvYZICIHJkydj69at2LdvH3x8fJ75mVu3buHq1atwd3/wH8/f3x+WlpaIj49Xj8nKysKpU6fUgSgoKAhKpRLJyX8/8O7o0aNQKpXqMURERIYQdyrbIGHoo+FtkBETwjD0/xn0LrOJEydi06ZN+OmnnzTu9FIoFLCxscHdu3cRFRWFYcOGwd3dHRkZGZgzZw4yMzNx9uxZODg8OM/51ltv4ZdffsGGDRvg5OSEGTNm4NatW0hJSYG5+YOLwoKDg3H9+nWsXr0aADBhwgR4eXnh559/rlSvvMuMiIh0acyaJBy5dMsgtf9cHAwLc6O6r0oylf39bdBA9KTrd9avX49XX30VhYWFGDJkCE6cOIH8/Hy4u7ujZ8+eeP/99zWu5ykqKsLbb7+NTZs2obCwEL1798bKlSs1xty+fRtTpkzBjh07AAChoaFYsWIF6tSpU6leGYiIiEgXhBDwmW2Y54/FDG2FUS80NEhtQ6kRgagmYSAiIqLqupx7F70+StBrzQEt3fBZmL9eaxqTyv7+NoqLqomIiGqzCzfuoN+yg3qvOyu4Gd7s3ljvdWsiBiIiIiIJlKrK0WSufh+18dD+GT3gXc+21j9uQ5cYiIiIiHSsqFSFZvP0v6ZQbX74qtQYiIiIiHTo5t1iBCzS70rTS0e0wdD2T1/Hj56OgYiIiEhHJn6Tgti0xz8SSgpvdm+MWcHN9FavNmMgIiIiqqZLuXfRW493j+2a2hXN3XnHsy4xEBEREVXDzbvFegtDb3RrhNkDm+ullqlhICIiIqqinv89gPSb9ySvs+nfgejk6yx5HVPGQERERKSl2/dK0P79+GcP1IFz7w+AtaW5XmqZMgYiIiIiLUR+l4qtx/+SvM5Hw9tgaPvnuJaQnjAQERERVcK+czfw2obfJa3hbG+FvZE9oLC1lLQOVcRARERE9AzPv7sLxWXlktZIjx7Io0EGxEBERET0BAVFpWgdtVvSGgdm9IC3s52kNejZGIiIiIge49DFXIStS5Zs/tnBzfAGH7xqNBiIiIiI/iE69ixWH7wsaY09kd3h62IvaQ3SDgMRERERACEEfGbHSlqjfcM6+ObfHWFjxdvojQ0DERERmbzdp7MxYWOKpDVORvWDozXvHjNWDERERGSyLty4g37LDkpa44NhrTCyQ0NJa1D1MRAREZFJup5fKGkYau7uiF1Tu0o2P+kWAxEREZmcT/dexEfxFySbPyMmRLK5SRoMREREZDI+iDuHVQcuSTL3+K4+mBvSQpK5SXoMREREVGuVlJUjNi0LnyVcwrnsO5LU4DVCtQMDERER1TpFpSq8uj4ZSZdvS1bj6JzecHW0lmx+0i8GIiIiqlXy7pWg3fvxks3/6eh2GNzGQ7L5yTAYiIiIqFYoVZWjydxdks3PI0K1GwMRERHVaOXlAo3mSLfC9P4ZPeDDh6/WegxERERUI926W4ydaVl476fTktVIi+oHB64ubRIYiIiIqEa5cuseuv/ngKQ1dkzujNYN6khag4wLAxEREdUYI1YnIjldujvHAODswgF8+KoJYiAiIiKjdyn3Lnp/lCBpDa4nZNoYiIiIyKi9uz0NXydlSlrjz8XBsDA3k7QGGTcGIiIiMjqFJSq88sVRHMvIk7QOH7dBDzEQERGRUTly6SbGrDkqeZ09kd3g6+IgeR2qGRiIiIjI4IQQeO+n09iYdEXyWr+Ed4HfcwrJ61DNwkBEREQGpa8jQgCQEROilzpU8zAQERGRwaw88Cc+jDsveZ3Pw/zRr6Wb5HWo5mIgIiIivRFC4Pa9Eqw9nI5VBy5JXo9rClFlMRAREZHkikpVWBp/AZ8fvKyXegxCpC0GIiIiklT8mRsY/9XveqmVPLc3XBz4RHrSHgMRERFJZvbWNHybLO2iigCwa2pXNHd3lLwO1V4MREREpHMZN++hx38PSF5n7sDmGN+tkeR1qPZjICIiIp1RFpaizYLdeqmVHj0QMplML7Wo9mMgIiIinXhtwzHsO5cjeZ2Et3vAq56d5HXItDAQERFRtfyU+hembk6VtEZbzzrYPqmzpDXItDEQERFRlSReuoXRa5IkrdHMzQFxEd0krUEEMBAREZGW7hWXoeX8XyWvc3FxMCzNzSSvQwQwEBERUSWUlJWj77IEXLl1X/JaDEJkCAxERET0VNO2pGLbib/0UosPXyVDYSAiIqLHEkJg2KojOJ6ZL3ktrjBNhsZAREREFejjzjEA+GR0O4S28ZC8DtGzMBAREZFaTkERXliyV/I6r3X2wXuDW0heh6iyGIiIiAgAUF4u9BKGUt/rizq2VpLXIdIGAxEREWHDb+mI+vmMpDXW/6sDej7vImkNoqoy6H2N0dHR6NChAxwcHODi4oIhQ4bg/PnzGmOEEIiKioKHhwdsbGzQo0cPnD59WmNMcXExwsPD4ezsDDs7O4SGhuLatWsaY/Ly8hAWFgaFQgGFQoGwsDDk5+dL/RWJiIyaqlzAe9ZOycLQyrHtkRETgoyYEIYhMmoGDUQJCQmYNGkSkpKSEB8fj7KyMvTr1w/37t1Tj/nwww+xdOlSrFixAseOHYObmxv69u2LO3fuqMdERERg27Zt2Lx5Mw4fPoy7d+9i0KBBUKlU6jFjxoxBamoq4uLiEBcXh9TUVISFhen1+xIRGYu/8gvhPWsnGs+JlazG3undMbCVu2TzE+mSTAghDN3EQ7m5uXBxcUFCQgK6desGIQQ8PDwQERGBd955B8CDo0Gurq744IMP8MYbb0CpVKJ+/frYuHEjRo4cCQC4fv06PD09ERsbi/79++Ps2bNo0aIFkpKSEBgYCABISkpCUFAQzp07h+eff/6ZvRUUFEChUECpVMLR0VG6nUBEJCEhBHxmSxeCHuLiimQsKvv726j+tiqVSgCAk5MTACA9PR3Z2dno16+feoxcLkf37t1x5MgRAEBKSgpKS0s1xnh4eMDPz089JjExEQqFQh2GAKBjx45QKBTqMY8qLi5GQUGBxg8RUU11r7gMTd/dJXkYOvf+AGTEhDAMUY1jNBdVCyEQGRmJLl26wM/PDwCQnZ0NAHB1ddUY6+rqiitXrqjHWFlZoW7duhXGPPx8dnY2XFwqnrt2cXFRj3lUdHQ0FixYUL0vRURkQEWlKqw7nI7//Hr+2YOr6ZfwLvB7TiF5HSKpGE0gmjx5Mk6ePInDhw9XeE8mk2m8FkJU2PaoR8c8bvzT5pk9ezYiIyPVrwsKCuDp6fnUmkRExuLghVy88kWy5HW+fO0FdG9aX/I6RFIzikAUHh6OHTt24ODBg2jQoIF6u5ubG4AHR3jc3f++MC8nJ0d91MjNzQ0lJSXIy8vTOEqUk5ODTp06qcfcuHGjQt3c3NwKR58eksvlkMvl1f9yRER6NmD5QZzLvvPsgdV0eclAmJk9/R+nRDWFQU/yCiEwefJkbN26Ffv27YOPj4/G+z4+PnBzc0N8fLx6W0lJCRISEtRhx9/fH5aWlhpjsrKycOrUKfWYoKAgKJVKJCf//a+lo0ePQqlUqscQEdV0Qjy4hV7qMNSnuQsyYkIYhqhWMegRokmTJmHTpk346aef4ODgoL6eR6FQwMbGBjKZDBEREViyZAmaNGmCJk2aYMmSJbC1tcWYMWPUY19//XVMnz4d9erVg5OTE2bMmIFWrVqhT58+AIDmzZtjwIABGD9+PFavXg0AmDBhAgYNGlSpO8yIiIzdicw8vLTy8TeJ6BKPClFtZdBAtGrVKgBAjx49NLavX78er776KgBg5syZKCwsxMSJE5GXl4fAwEDs3r0bDg4O6vHLli2DhYUFRowYgcLCQvTu3RsbNmyAubm5esw333yDKVOmqO9GCw0NxYoVK6T9gkREEitTleONjSnYey5Hshq2Vub4aVJnNHF1ePZgohrKqNYhMmZch4iIjM33v1/F2z+clLTGjsmd0bpBHUlrEEmpsr+/jeKiaiIiqrwyVTl85+6SvE5GTIjkNYiMRZUuqt64cSM6d+4MDw8P9XpAy5cvx08//aTT5oiISNOtu8WSh6E9kd0ZhsjkaB2IVq1ahcjISAwcOBD5+fnq54XVqVMHy5cv13V/REQE4ObdYnjP2gn/RXskq/HbrF7IiAmBr4u9ZDWIjJXWgejTTz/FmjVrMHfuXI2LlgMCApCWlqbT5oiITN2dolJ4z9qJAAmDEACcXtAfz9WxkbQGkTHT+hqi9PR0tGvXrsJ2uVyu8ZR6IiKqujJVOfovP4hLudL+fzVqcAu82tnn2QOJajmtA5GPjw9SU1Ph5eWlsX3Xrl1o0aKFzhojIjJV//7yd+w5W3F1fV07NLMnPJ1sJa9DVBNoHYjefvttTJo0CUVFRRBCIDk5Gd9++y2io6Oxdu1aKXokIjIJ+8/l4F8bjkle543ujTA7uLnkdYhqEq0D0b/+9S+UlZVh5syZuH//PsaMGYPnnnsOH3/8MUaNGiVFj0REtV779+Nx+16JpDXSowc+88HYRKaqWgsz3rx5E+Xl5XBxcdFlT0aJCzMSkRRU5QKN58RKWmPNKwHo2+LxD7Imqu0q+/tb67vMFi5ciH379gEAnJ2d1WHo3r17WLhwYRXbJSIyLUIIRG5JlTQM/RLeBRkxIQxDRJWg9REiMzMzWFpaIjo6GpGRkertN27cgIeHh3pdotqGR4iISFcyb91Ht//sl2z+Dt518f2bnSSbn6gmkfTRHV999RUmT56MkydP4vPPP4eVlVWVGyUiMiVh647i0MWbks1/duEA2FiZP3sgEWmoUiDq2bMnkpKSMHjwYPTo0QPbtm3TdV9ERLVGQVEpfvkjC3O2Sbd4LR+1QVQ9Wgeih3coNG7cGElJSRgxYgQCAgLw2Wef6bw5IqKaznvWTknn//K1F9C9aX1JaxCZAq0D0T8vOXJ0dERsbCwiIiIwZMgQXfZFRFSj3S8pQ4v3fpVs/j2R3fnMMSId0joQrV+/HgqFQv3azMwMn3zyCdq1a4eDBw/qtDkiopoo8rtUbD3+lyRz//BmEAK8nSSZm8iUVWsdIlPCu8yI6Glu3yvB4E8P46/8Qslq8DohIu3p9C6zTz75BBMmTIC1tTU++eSTJ46TyWQIDw/Xvlsiohrq5LV8vP39SZy/cUfSOufeHyDp/ESmrlJHiHx8fPD777+jXr168PF58lORZTIZLl++rNMGjQWPEBHRo85lF2DA8kOS1kh5tw/q2cslrUFUm+n0CFF6evpj/0xEZKo2JmZg3k+nJa0RF9GVYYhIT6q0DtE/qVQqpKWlwcvLC3Xr1tVFT0RERqtUVY4mc3dJXufSkoEwN+ODWIn0RetAFBERgVatWuH111+HSqVCt27dkJiYCFtbW/zyyy/o0aOHBG0SERnWqb+UGPTpYcnrpL7XF3Vsufo/kb5p/XDXH374AW3atAEA/Pzzz8jIyMC5c+cQERGBuXPn6rxBIiJDyrh5D96zdkoehro2cUZGTAjDEJGBaH2E6ObNm3BzcwMAxMbGYvjw4WjatClef/31p96BRkRU00i9yvRD2yd1RlvPOnqpRUSPp3UgcnV1xZkzZ+Du7o64uDisXLkSAHD//n2Ym/OBgkRU8605eBmLY89KXoerTRMZD60D0b/+9S+MGDEC7u7ukMlk6Nu3LwDg6NGjaNasmc4bJCLSByEEfGbH6qXW8Xl94WTHU2NExkTrQBQVFQU/Pz9cvXoVw4cPh1z+4JZQc3NzzJo1S+cNEhFJSQiBX09n482vj0tey8rcDBcWB0teh4i0x0d3VBIXZiSqfcpU5fDVwy30ALBiTDsMau2hl1pE9DedLsxIRFSbCCEQdyobb30j/VEhAPjjvX5Q2FrqpRYRVQ0DERGZlNlb0/Btcqbe6l1eMhBmXGCRyOgxEBGRyVh76LLewlDM0FYY9UJDvdQioupjICKiWu/q7fvo+uF+vdWLn9YNTVwd9FaPiKpP60Bkbm6OrKwsuLi4aGy/desWXFxcoFKpdNYcEVF1pF7Nx5D//aa3ehkxIXqrRUS6pXUgetJNacXFxbCy4roaRGRYRaUqrDucjv/8el5vNTt418X3b3bSWz0i0r1KB6KHj+WQyWRYu3Yt7O3/Xl1VpVLh4MGDXJiRiAxKXw9g/adz7w+AtSVX6Seq6SodiJYtWwbgwRGizz77TOMxHVZWVvD29sZnn32m+w6JiCph37kbeG3D75LXmdijMWb0e553jhHVMpUOROnp6QCAnj17YuvWrahbt65kTRERVVZ5uUCjOfp55EbynN5wcbTWSy0i0i8zbT+wf/9+1K1bFyUlJTh//jzKysqk6IuI6Jku597VWxg6s7A/wxBRLab1RdWFhYWYPHkyvvzySwDAhQsX0KhRI0yZMgUeHh58nhkRSe72vRK0fz9e8jp7IruhcX17yGQ8PUZU22l9hGjWrFn4448/cODAAVhb//2vpT59+mDLli06bY6I6FFnswokD0NvdG+EjJgQ+Lo4MAwRmQitjxBt374dW7ZsQceOHTX+R9GiRQtcunRJp80RET1UXi7Q/b/7cfV2oWQ1Arzq4oe3ePs8kSnSOhDl5uZWWJQRAO7du8d/SRGRJH5MuYbp3/8haY0T8/qirh3XUiMyVVoHog4dOmDnzp0IDw8HAHUIWrNmDYKCgnTbHRGZtF9PZ+ONjSmS1vjsZX8M8HOTtAYRGT+tA1F0dDQGDBiAM2fOoKysDB9//DFOnz6NxMREJCQkSNEjEZmgLw6nY+EvZySb/8P/a43h/g14ZJuIAFQhEHXq1Am//fYb/vvf/6Jx48bYvXs32rdvj8TERLRq1UqKHonIhJSpyuE7d5dk83/xagB6NXOVbH4iqplk4kkPJyMNBQUFUCgUUCqVcHR0NHQ7RLVSYYkKzd+Lk2TuVWPbI7iVuyRzE5Hxquzvb61vuz9+/DjS0tLUr3/66ScMGTIEc+bMQUlJSdW6JSKTdzn3rmRh6PKSgQxDRPRUWgeiN954AxcuXAAAXL58GSNHjoStrS2+//57zJw5U+cNElHtJoTAW1+noNdHur8G8fyiAciICeFzx4jombS+hujChQto27YtAOD7779H9+7dsWnTJvz2228YNWoUli9fruMWiag2ijuVjTe/luYOsvBevpje73lJ5iai2knrQCSEQHl5OQBgz549GDRoEADA09MTN2/e1G13RFQrzd2Whm+OZup83g+GtcLIDg11Pi8R1X5aB6KAgAAsWrQIffr0QUJCAlatWgUASE9Ph6sr79wgoieT6sn0oW088OH/tYa1pbnO5yYi06B1IFq+fDnGjh2L7du3Y+7cufD19QUA/PDDD+jUiUveE1FFJWXlaLdwN+6VqHQ+90fD22CYfwOdz0tEpkVnt90XFRXB3NwclpaWupjO6PC2e6Kq+df6ZOw/n6vzebmeEBFVhmS33T+JtbW11mHo4MGDGDx4MDw8PCCTybB9+3aN91999VXIZDKNn44dO2qMKS4uRnh4OJydnWFnZ4fQ0FBcu3ZNY0xeXh7CwsKgUCigUCgQFhaG/Pz8qnxNIqqE5PTb8J61E96zduo0DDVytsPROb2RERPCMEREOqWzQFQV9+7dQ5s2bbBixYonjhkwYACysrLUP7GxmtcfREREYNu2bdi8eTMOHz6Mu3fvYtCgQVCp/j40P2bMGKSmpiIuLg5xcXFITU1FWFiYZN+LyJS9uz0NI1Yn6nROKwszZMSEYN+MHnB1tNbp3EREQBWuIdKl4OBgBAcHP3WMXC6Hm9vjH7yoVCqxbt06bNy4EX369AEAfP311/D09MSePXvQv39/nD17FnFxcUhKSkJgYCCAvx9Ee/78eTz/PG/NJaqub5MzMXtr2rMHaunjUW3xYtvndD4vEdGjDBqIKuPAgQNwcXFBnTp10L17dyxevBguLi4AgJSUFJSWlqJfv37q8R4eHvDz88ORI0fQv39/JCYmQqFQqMMQAHTs2BEKhQJHjhx5YiAqLi5GcXGx+nVBQYFE35Co5tqYdAXztp/S+bxfvfYCujWtr/N5iYiexKgDUXBwMIYPHw4vLy+kp6dj3rx56NWrF1JSUiCXy5GdnQ0rKyvUrVtX43Ourq7Izs4GAGRnZ6sD1D+5uLioxzxOdHQ0FixYoNsvRFSLTPrmOHamZel83oyYEJ3PSUT0LFoHIpVKhQ0bNmDv3r3IyclRL9L40L59+3TW3MiRI9V/9vPzQ0BAALy8vLBz504MHTr0iZ8TQkAm+3up/n/++UljHjV79mxERkaqXxcUFMDT01Pbr0BU60j5AFaGISIyFK0D0dSpU7FhwwaEhITAz8/vqaFC19zd3eHl5YWLFy8CANzc3FBSUoK8vDyNo0Q5OTnqNZHc3Nxw48aNCnPl5uY+dSFJuVwOuVyu429AVLNtP/EXIrak6nzeLr7O+Prfgc8eSEQkEa0D0ebNm/Hdd99h4MCBUvTzVLdu3cLVq1fh7v7gqdX+/v6wtLREfHw8RowYAQDIysrCqVOn8OGHHwIAgoKCoFQqkZycjBdeeAEAcPToUSiVSi4kSVRJZapy+M7dpfN5ez5fH2vHdYA5H75KRAamdSCysrJSr05dXXfv3sWff/6pfp2eno7U1FQ4OTnByckJUVFRGDZsGNzd3ZGRkYE5c+bA2dkZL730EgBAoVDg9ddfx/Tp01GvXj04OTlhxowZaNWqlfqus+bNm2PAgAEYP348Vq9eDQCYMGECBg0axDvMiJ6iTFWO5IzbGLPmqM7n/u/wNvg/ri5NREZE65WqP/roI1y+fBkrVqyo9umyAwcOoGfPnhW2jxs3DqtWrcKQIUNw4sQJ5Ofnw93dHT179sT777+vcS1PUVER3n77bWzatAmFhYXo3bs3Vq5cqTHm9u3bmDJlCnbs2AEACA0NxYoVK1CnTp1K98qVqslUSHU06KH06IF6PdVORKatsr+/tQ5EL730Evbv3w8nJye0bNmywurUW7durVrHRo6BiGq7tGtKDF5xWLL5vevZYv+MHgxDRKRXlf39rfUpszp16qhPWRFRzVdQVIrWUbslrZHwdg941bOTtAYRUXVoHYjWr18vRR9EZACdY/bhr/xCSWtcXBwMS3ODPiWIiOiZqrwwY25uLs6fPw+ZTIamTZuifn2uKktUU3jP2il5jRbujoid2lXyOkREuqB1ILp37x7Cw8Px1VdfqRdlNDc3xyuvvIJPP/0Utra2Om+SiHRjxvd/4IeUa5LX+XNxMCx4VIiIahCt/48VGRmJhIQE/Pzzz8jPz0d+fj5++uknJCQkYPr06VL0SETVIITA//b/Ce9ZO/UShtKjBzIMEVGNo/VdZs7Ozvjhhx/Qo0cPje379+/HiBEjkJubq8v+jAbvMqOaqLxcoNGcWL3Uerv/85jUUzdrlBER6Ypkd5ndv3//sY+8cHFxwf3797Wdjogk8ld+ITrH6O7Zgk8S0acJIvo0lbwOEZGUtD6uHRQUhPnz56OoqEi9rbCwEAsWLEBQUJBOmyOiqrlfUqaXMHRgRg+GISKqFbQ+QvTxxx9jwIABaNCgAdq0aQOZTIbU1FRYW1vj119/laJHItLC/J9O4cvEK5LXSXm3D+rZ8wHIRFQ7aH0NEfDgiNDXX3+Nc+fOQQiBFi1aYOzYsbCxsZGiR6PAa4jI2O07dwOvbfhd8jp9mrti7bgAyesQEemCZNcQAYCNjQ3Gjx9f5eaISHeKSlVoNi9O8jq/hHeB33MKyesQERlCpQLRjh07EBwcDEtLS/UDUp8kNDRUJ40R0dOVqsrxxsYU7DuXI3mtS0sGwtyMzyAjotqrUqfMzMzMkJ2dDRcXF5iZPfk6bJlMBpVKpdMGjQVPmZEx0cfzxwAgIyZE8hpERFLS6SmzhytSP/pnItIfVbnAj8evYeYPJ/VSj2GIiEyJ1rfdf/XVVyguLq6wvaSkBF999ZVOmiIiTSev5aPxnFi9hKFdU7syDBGRydH6LjNzc3NkZWXBxcVFY/utW7fg4uLCU2ZEOpJ+8x7e+joF57Lv6KXewhdb4pUgb73UIiLSF8nuMhNCQCareHHltWvXoFDwDhQiXXhh8R7k3Kl4JFYq0/o0ZRgiIpNW6UDUrl07yGQyyGQy9O7dGxYWf39UpVIhPT0dAwYMkKRJIlNRpiqH79xdeqvn42yHXVO7wtrSXG81iYiMUaUD0ZAhQwAAqamp6N+/P+zt7dXvWVlZwdvbG8OGDdN5g0SmQAiBbv/Zj6u3C/VW8+LiYFjyqfRERAC0CETz588HAHh7e2PkyJGwtraWrCkiU3LwQi5e+SJZb/X2RHaHr4v9swcSEZkQra8hGjdunBR9EJmcwhIVmr8n/QrTABDSyh3T+jaBr4uDXuoREdU0WgcilUqFZcuW4bvvvkNmZiZKSko03r99+7bOmiOqrbxn7dRLndT3+qKOrZVeahER1WRaX0CwYMECLF26FCNGjIBSqURkZCSGDh0KMzMzREVFSdAiUe0xb/spvYShGf2aIiMmhGGIiKiStF6HqHHjxvjkk08QEhICBwcHpKamqrclJSVh06ZNUvVqUFyHiKrjTlEpWunhURtdmzjjf2Pbw9HaUvJaREQ1gWTrEGVnZ6NVq1YAAHt7eyiVSgDAoEGDMG/evCq2S1R7JVzIxTiJL5o2N5Ph7MIBsLLgXWNERFWhdSBq0KABsrKy0LBhQ/j6+mL37t1o3749jh07BrlcLkWPRDVScvptjFidKHmdmKGtMOqFhpLXISKqzbQORC+99BL27t2LwMBATJ06FaNHj8a6deuQmZmJadOmSdEjUY3zy8nrmLzphKQ1+KgNIiLd0foaokcdPXoUv/32G3x9fREaGqqrvowOryGiyhBCwGd2rOR1+PBVIqLKkeQaotLSUkyYMAHz5s1Do0aNAACBgYEIDAysXrdEtUDjObFQlVfr3xfP1NazDjZP6ChpDSIiU6TVFZiWlpbYtm2bVL0Q1Uj7z+fAe9ZOycNQXERXbJ/Umc8dIyKSgNa3pLz00kvYvn27BK0Q1SwlZeXwnrUT/1p/TPJa6dED0cyNp2qJiKSi9UXVvr6+eP/993HkyBH4+/vDzs5O4/0pU6borDkiY6WvlaaBB2FIJpPprR4RkSnS+qJqHx+fJ08mk+Hy5cvVbsoY8aJqAoDycoFGc6S/aBoAPh7VFi+2fU4vtYiIaivJFmZMT0+vVmNENZk+wtCaVwLQt4Wr5HWIiOhvWgeif3p4cImH86m2O5ZxG8M/k36RxUMze8LTyVbyOkREpKlK6/yvW7cOfn5+sLa2hrW1Nfz8/LB27Vpd90ZkFLxn7ZQ8DHnVs0VGTAjDEBGRgWh9hGjevHlYtmwZwsPDERQUBABITEzEtGnTkJGRgUWLFum8SSJ9E0Kg23/24+rtQslrXVwcDEtzPoOMiMiQtL6o2tnZGZ9++ilGjx6tsf3bb79FeHg4bt68qdMGjQUvqjYdO09mYdKm45LWWD6yLYa04wXTRERSk+yiapVKhYCAgArb/f39UVZWpu10REajTFUO37m7JK3xSpAX3g1pwafSExEZGa0D0csvv4xVq1Zh6dKlGts///xzjB07VmeNEenT/vM5ki6weGRWL7grrHkDAhGRkapUIIqMjFT/WSaTYe3atdi9ezc6dnzwTKWkpCRcvXoVr7zyijRdEknglS+ScfBCrqQ1tk3shHYN60pag4iIqq9SgejEiRMar/39/QEAly5dAgDUr18f9evXx+nTp3XcHpHu3bxbjIBFeyStsWxkG7zUroGkNYiISHcqFYj2798vdR9EkisqVaHZvDjJ62TEhEheg4iIdKtaCzMS1QRCCBzPzMOwVdKuJbRpfCA6NXaWtAYREUmjUoFo6NCh2LBhAxwdHTF06NCnjt26datOGiPShT+u5uPF//0maY2fJ3dBqwYKSWsQEZG0KhWIFAqF+u4YhYL/4yfj91PqX5i6OVXSGpsndETHRvUkrUFERPqh9cKMpooLM9YMt++VoP378ZLW2D2tG5q6Okhag4iIdEOyhRmJjNXLa4/i8J/SrZT+5+JgWPARG0REtVKlAlG7du0qvaDc8ePSPvKA6FFSP4n+BW8nfPdmkGTzExGR4VUqEA0ZMkTiNoi0V6oqRxOJHrWxdEQbvNj2OQgheFSIiMgE8BqiSuI1RMYhp6AInWL2oaxcmr+2b3RrhNkDm0syNxER6R+vIaJaI6egCEEx+6CSKAQBwE+TOqONZx3J5iciIuNWpafdL1u2DN999x0yMzNRUlKi8f7t27d11hxR5Hep2Hr8L8nmT48eyAeuEhERtL44YsGCBVi6dClGjBgBpVKJyMhIDB06FGZmZoiKitJqroMHD2Lw4MHw8PCATCbD9u3bNd4XQiAqKgoeHh6wsbFBjx49Kjwvrbi4GOHh4XB2doadnR1CQ0Nx7do1jTF5eXkICwuDQqGAQqFAWFgY8vPztf3qpEfKwlJ4z9opSRgKalQPaVH9kBETwjBEREQAqhCIvvnmG6xZswYzZsyAhYUFRo8ejbVr1+K9995DUlKSVnPdu3cPbdq0wYoVKx77/ocffoilS5dixYoVOHbsGNzc3NC3b1/cuXNHPSYiIgLbtm3D5s2bcfjwYdy9exeDBg2CSqVSjxkzZgxSU1MRFxeHuLg4pKamIiwsTNuvTnrw7vY0eM/aiTYLdut0XpkM2BPZHRcWBePbCR3hYG2p0/mJiKhm0/qiajs7O5w9exYNGzaEu7s7du7cifbt2+Py5cto164dlEpl1RqRybBt2zb1HW1CCHh4eCAiIgLvvPMOgAdHg1xdXfHBBx/gjTfegFKpRP369bFx40aMHDkSAHD9+nV4enoiNjYW/fv3x9mzZ9GiRQskJSUhMDAQAJCUlISgoCCcO3cOzz//fKX640XV0vOetVOSebmQIhGR6ars72+tjxA1aNAAWVlZAABfX1/s3v3gX/LHjh2DXC6vYrsVpaenIzs7G/369VNvk8vl6N69O44cOQIASElJQWlpqcYYDw8P+Pn5qcckJiZCoVCowxAAdOzYEQqFQj3mcYqLi1FQUKDxQ7onhEDMrnM6D0Mvd2yIjJgQZMSEMAwREdEzaX1R9UsvvYS9e/ciMDAQU6dOxejRo7Fu3TpkZmZi2rRpOmssOzsbAODq6qqx3dXVFVeuXFGPsbKyQt26dSuMefj57OxsuLi4VJjfxcVFPeZxoqOjsWDBgmp9B3q6e8VlaDn/V53Pe3pBf9jJeQMlERFVnta/NWJiYtR//r//+z94enrit99+g6+vL0JDQ3XaHIAKF70KIZ55IeyjYx43/lnzzJ49G5GRkerXBQUF8PT0rGzb9BTFZSqErUtGcrpu70ic1LMx3u7fTKdzEhGRaaj2P6MDAwM1TkfpipubG4AHR3jc3d3V23NyctRHjdzc3FBSUoK8vDyNo0Q5OTno1KmTesyNGzcqzJ+bm1vh6NM/yeVynZ4CpAch1Gd2rCRz8zohIiKqDq2vIYqOjsYXX3xRYfsXX3yBDz74QCdNAYCPjw/c3NwQH//3k8tLSkqQkJCgDjv+/v6wtLTUGJOVlYVTp06pxwQFBUGpVCI5OVk95ujRo1AqleoxJL0fUq5JEoaOze3D64SIiKjatD5CtHr1amzatKnC9pYtW2LUqFHqO8Iq4+7du/jzzz/Vr9PT05GamgonJyc0bNgQERERWLJkCZo0aYImTZpgyZIlsLW1xZgxYwAACoUCr7/+OqZPn4569erByckJM2bMQKtWrdCnTx8AQPPmzTFgwACMHz8eq1evBgBMmDABgwYNqvQdZlR1Uh4VurRkIMzNuI4QERFVn9aB6NFTWA/Vr19fffdZZf3+++/o2bOn+vXDa3bGjRuHDRs2YObMmSgsLMTEiRORl5eHwMBA7N69Gw4Ofx8NWLZsGSwsLDBixAgUFhaid+/e2LBhA8zNzdVjvvnmG0yZMkV9N1poaOgT1z4i3ZHq4auTe/piRn+GWSIi0h2t1yFq0qQJ5s+fj5dffllj+8aNGzF//nxcvnxZpw0aC65DVHlCCIz8PEnnF00nvN0DXvXsdDonERHVbpI93PXf//43IiIiUFpail69egEA9u7di5kzZ2L69OlV75hqhfJygUZzdHuKbGi757B0ZFudzklERPRPWgeimTNn4vbt25g4caL6wa7W1tZ45513MHv2bJ03SDWLrsNQRkyITucjIiJ6HK1PmT109+5dnD17FjY2NmjSpEmtv0Wdp8yeTgiBDov34ubdYp3MtyeyO3xd7HUyFxERmS7JTpk9ZG9vjw4dOlT141SL6PJOsndDmuPfXRvpZC4iIqLK4vMNqFry75eg7cL4Zw98Bmd7OY7N7f3MVciJiIikwEBEVZZTUIQXluyt1hzjgrwQFdqSQYiIiAyKgYiqJGDRnmpdL2Qme7CwIoMQEREZAwYi0trI1YnVCkOHZvaEp5OtDjsiIiKqHgYiqpTycoHJ3x5HbFp2ledYNrINXmrXQIddERER6QYDET1T+s176PnfA1X+PJ85RkRExo6BiJ7ol5PXseXYVRy6eLNKn/9kdDuEtvHQcVdERES6x0BEFVy9fR9dP9xf5c+HdfTCwhd55xgREdUcDESkdq+4DC3n/1qtOQ6/0xMN6vKCaSIiqlkYiAgAUKYqr1YYmtzTFzP6P6/DjoiIiPSHgYgwYnUiktNva/25N7o1wtv9n4eFuZkEXREREekPA5EJu1FQhMAqrDTd1NUeu6d1l6AjIiIiw2AgMkFlqnL0WZqAjFv3tf5sejRXlyYiotqHgcjEHLqYi7B1yVp/7rOX/THAz02CjoiIiAyPgciEbDqaiTnb0rT+HI8KERFRbcdAZCLGrk3Cb3/e0uozs4Ob4Y3ujSXqiIiIyHgwEJkA71k7tf7MH/P7QWFjKUE3RERExoeBqBbbduIapm35Q6vP7InsBl8XB4k6IiIiMk4MRLVQ1I7T2HAkQ+vPxU7pyjBEREQmiYGoFrl44w76Ljuo9eci+zbFlN5NJOiIiIioZmAgqiWW77mA5XsuavWZaX2aYmofBiEiIiIGohquvFyg0ZzYSo+f3rcpwnk0iIiISAMDUQ2WejUfQ/73W6XHb53YCe0b1pWwIyIiopqJgagGyikowgtaPIPsyKxe8KhjI2FHRERENRsDUQ1zLrsAA5YfqtTYenZWSJnXV+KOiIiIaj4Gohoi5Uoehq06UunxS15qhTGBDSXsiIiIqPZgIDJyyem3MWJ1YqXHN3W1R9zUbjAz47PHiIiIKouByEj9b/+f+M+v57X6zMmofnC05uM2iIiItMVAZIRaR/2KgqIyrT6TERMiUTdERES1HwORkbhRUIRALe4ce+iVIC8sfNFPgo6IiIhMBwOREfCb/yvuFmt3RAgALiwKhpWFmQQdERERmRYGIgM69ZcSgz49rPXntkzoiMBG9SToiIiIyDQxEBmI//vxuHWvRKvPdPF1xtf/DpSoIyIiItPFQGQA3rN2ajXeQW6BtAX9JeqGiIiIeAGKHhWVqrQOQ4E+TgxDREREEuMRIj2ZtiUV2078pfXntrwRJEE3RERE9E8MRBJLuJCLcV8ka/25E/P6oq6dlQQdERER0aMYiCSk7ekxAPhjfj8obLjaNBERkT4xEEng0MVchK3T7qjQ2/2fx6SevhJ1RERERE/DQKRj2hwVGtzGA7OCm+G5OjYSdkRERETPwkCkI/dLytDivV+fOe7DYa0xsLU77OXc9URERMaCv5V1IOdOEV5Y/PTnkO2J7IbG9e0hk8n01BURERFVFgNRNZSpyuE7d9czx+2J7AZfFwc9dERERERVwUBURcrCUrRZsPupY7567QV0a1pfTx0RERFRVTEQaUlZWIrWS5584fTZhQNgY2Wux46IiIiouhiItNQ5Zh/M5LYVtp9fNAByCwYhIiKimoiBqBr6NHfB2nEdDN0GERERVRMDURV98WoAejVzNXQbREREpAMMRFp6N6QZJvRpZeg2iIiISIfMDN3A00RFRUEmk2n8uLm5qd8XQiAqKgoeHh6wsbFBjx49cPr0aY05iouLER4eDmdnZ9jZ2SE0NBTXrl2rck+jXvCq8meJiIjIOBl1IAKAli1bIisrS/2Tlpamfu/DDz/E0qVLsWLFChw7dgxubm7o27cv7ty5ox4TERGBbdu2YfPmzTh8+DDu3r2LQYMGQaVSGeLrEBERkREy+lNmFhYWGkeFHhJCYPny5Zg7dy6GDh0KAPjyyy/h6uqKTZs24Y033oBSqcS6deuwceNG9OnTBwDw9ddfw9PTE3v27EH//v31+l2IiIjIOBn9EaKLFy/Cw8MDPj4+GDVqFC5fvgwASE9PR3Z2Nvr166ceK5fL0b17dxw5cgQAkJKSgtLSUo0xHh4e8PPzU495kuLiYhQUFGj8EBERUe1k1IEoMDAQX331FX799VesWbMG2dnZ6NSpE27duoXs7GwAgKur5p1erq6u6veys7NhZWWFunXrPnHMk0RHR0OhUKh/PD09dfjNiIiIyJgYdSAKDg7GsGHD0KpVK/Tp0wc7dz5YIfrLL79Uj3n0YalCiGc+QLUyY2bPng2lUqn+uXr1ahW/BRERERk7ow5Ej7Kzs0OrVq1w8eJF9XVFjx7pycnJUR81cnNzQ0lJCfLy8p445knkcjkcHR01foiIiKh2qlGBqLi4GGfPnoW7uzt8fHzg5uaG+Ph49fslJSVISEhAp06dAAD+/v6wtLTUGJOVlYVTp06pxxAREREZ9V1mM2bMwODBg9GwYUPk5ORg0aJFKCgowLhx4yCTyRAREYElS5agSZMmaNKkCZYsWQJbW1uMGTMGAKBQKPD6669j+vTpqFevHpycnDBjxgz1KTgiIiIiwMgD0bVr1zB69GjcvHkT9evXR8eOHZGUlAQvrweLI86cOROFhYWYOHEi8vLyEBgYiN27d8PBwUE9x7Jly2BhYYERI0agsLAQvXv3xoYNG2BuzgexEhER0QMyIYQwdBM1QUFBARQKBZRKJa8nIiIiqiEq+/u7Rl1DRERERCQFBiIiIiIyeQxEREREZPIYiIiIiMjkMRARERGRyWMgIiIiIpPHQEREREQmj4GIiIiITB4DEREREZk8BiIiIiIyeQxEREREZPIYiIiIiMjkMRARERGRyWMgIiIiIpPHQEREREQmj4GIiIiITB4DEREREZk8BiIiIiIyeQxEREREZPIYiIiIiMjkMRARERGRyWMgIiIiIpPHQEREREQmj4GIiIiITB4DEREREZk8BiIiIiIyeQxEREREZPIYiIiIiMjkMRARERGRyWMgIiIiIpPHQEREREQmj4GIiIiITB4DEREREZk8BiIiIiIyeQxEREREZPIYiIiIiMjkMRARERGRyWMgIiIiIpPHQEREREQmj4GIiIiITB4DEREREZk8BiIiIiIyeQxEREREZPIYiIiIiMjkMRARERGRyWMgIiIiIpPHQEREREQmj4GIiIiITB4DEREREZk8BiIiIiIyeQxEREREZPIYiIiIiMjkMRARERGRyTOpQLRy5Ur4+PjA2toa/v7+OHTokKFbIiIiIiNgMoFoy5YtiIiIwNy5c3HixAl07doVwcHByMzMNHRrREREZGAyIYQwdBP6EBgYiPbt22PVqlXqbc2bN8eQIUMQHR39zM8XFBRAoVBAqVTC0dFRylaJiIhIRyr7+9tCjz0ZTElJCVJSUjBr1iyN7f369cORI0ce+5ni4mIUFxerXyuVSgAPdiwRERHVDA9/bz/r+I9JBKKbN29CpVLB1dVVY7urqyuys7Mf+5no6GgsWLCgwnZPT09JeiQiIiLp3LlzBwqF4onvm0Qgekgmk2m8FkJU2PbQ7NmzERkZqX6dn58PLy8vZGZmPnWHkvYKCgrg6emJq1ev8nSkBLh/pcN9Kx3uW2mZ0v4VQuDOnTvw8PB46jiTCETOzs4wNzevcDQoJyenwlGjh+RyOeRyeYXtCoWi1v/lMRRHR0fuWwlx/0qH+1Y63LfSMpX9W5kDGSZxl5mVlRX8/f0RHx+vsT0+Ph6dOnUyUFdERERkLEziCBEAREZGIiwsDAEBAQgKCsLnn3+OzMxMvPnmm4ZujYiIiAzMZALRyJEjcevWLSxcuBBZWVnw8/NDbGwsvLy8KvV5uVyO+fPnP/Y0GlUP9620uH+lw30rHe5baXH/VmQy6xARERERPYlJXENERERE9DQMRERERGTyGIiIiIjI5DEQERERkcljIKqElStXwsfHB9bW1vD398ehQ4cM3ZJRiY6ORocOHeDg4AAXFxcMGTIE58+f1xgjhEBUVBQ8PDxgY2ODHj164PTp0xpjiouLER4eDmdnZ9jZ2SE0NBTXrl3TGJOXl4ewsDAoFAooFAqEhYUhPz9f6q9oVKKjoyGTyRAREaHexv1bdX/99Rdefvll1KtXD7a2tmjbti1SUlLU73PfVl1ZWRneffdd+Pj4wMbGBo0aNcLChQtRXl6uHsP9WzkHDx7E4MGD4eHhAZlMhu3bt2u8r8/9mJmZicGDB8POzg7Ozs6YMmUKSkpKpPja+iXoqTZv3iwsLS3FmjVrxJkzZ8TUqVOFnZ2duHLliqFbMxr9+/cX69evF6dOnRKpqakiJCRENGzYUNy9e1c9JiYmRjg4OIgff/xRpKWliZEjRwp3d3dRUFCgHvPmm2+K5557TsTHx4vjx4+Lnj17ijZt2oiysjL1mAEDBgg/Pz9x5MgRceTIEeHn5ycGDRqk1+9rSMnJycLb21u0bt1aTJ06Vb2d+7dqbt++Lby8vMSrr74qjh49KtLT08WePXvEn3/+qR7DfVt1ixYtEvXq1RO//PKLSE9PF99//72wt7cXy5cvV4/h/q2c2NhYMXfuXPHjjz8KAGLbtm0a7+trP5aVlQk/Pz/Rs2dPcfz4cREfHy88PDzE5MmTJd8HUmMgeoYXXnhBvPnmmxrbmjVrJmbNmmWgjoxfTk6OACASEhKEEEKUl5cLNzc3ERMTox5TVFQkFAqF+Oyzz4QQQuTn5wtLS0uxefNm9Zi//vpLmJmZibi4OCGEEGfOnBEARFJSknpMYmKiACDOnTunj69mUHfu3BFNmjQR8fHxonv37upAxP1bde+8847o0qXLE9/nvq2ekJAQ8dprr2lsGzp0qHj55ZeFENy/VfVoINLnfoyNjRVmZmbir7/+Uo/59ttvhVwuF0qlUpLvqy88ZfYUJSUlSElJQb9+/TS29+vXD0eOHDFQV8ZPqVQCAJycnAAA6enpyM7O1tiPcrkc3bt3V+/HlJQUlJaWaozx8PCAn5+fekxiYiIUCgUCAwPVYzp27AiFQmES/z0mTZqEkJAQ9OnTR2M792/V7dixAwEBARg+fDhcXFzQrl07rFmzRv0+9231dOnSBXv37sWFCxcAAH/88QcOHz6MgQMHAuD+1RV97sfExET4+flpPCi1f//+KC4u1jjVXBOZzErVVXHz5k2oVKoKD4B1dXWt8KBYekAIgcjISHTp0gV+fn4AoN5Xj9uPV65cUY+xsrJC3bp1K4x5+Pns7Gy4uLhUqOni4lLr/3ts3rwZx48fx7Fjxyq8x/1bdZcvX8aqVasQGRmJOXPmIDk5GVOmTIFcLscrr7zCfVtN77zzDpRKJZo1awZzc3OoVCosXrwYo0ePBsC/u7qiz/2YnZ1doU7dunVhZWVV4/c1A1ElyGQyjddCiArb6IHJkyfj5MmTOHz4cIX3qrIfHx3zuPG1/b/H1atXMXXqVOzevRvW1tZPHMf9q73y8nIEBARgyZIlAIB27drh9OnTWLVqFV555RX1OO7bqtmyZQu+/vprbNq0CS1btkRqaioiIiLg4eGBcePGqcdx/+qGvvZjbd3XPGX2FM7OzjA3N6+QenNyciokZALCw8OxY8cO7N+/Hw0aNFBvd3NzA4Cn7kc3NzeUlJQgLy/vqWNu3LhRoW5ubm6t/u+RkpKCnJwc+Pv7w8LCAhYWFkhISMAnn3wCCwsL9Xfn/tWeu7s7WrRoobGtefPmyMzMBMC/u9X19ttvY9asWRg1ahRatWqFsLAwTJs2DdHR0QC4f3VFn/vRzc2tQp28vDyUlpbW+H3NQPQUVlZW8Pf3R3x8vMb2+Ph4dOrUyUBdGR8hBCZPnoytW7di37598PHx0Xjfx8cHbm5uGvuxpKQECQkJ6v3o7+8PS0tLjTFZWVk4deqUekxQUBCUSiWSk5PVY44ePQqlUlmr/3v07t0baWlpSE1NVf8EBARg7NixSE1NRaNGjbh/q6hz584Vloi4cOGC+qHP/LtbPffv34eZmeavGXNzc/Vt99y/uqHP/RgUFIRTp04hKytLPWb37t2Qy+Xw9/eX9HtKTs8Xcdc4D2+7X7dunThz5oyIiIgQdnZ2IiMjw9CtGY233npLKBQKceDAAZGVlaX+uX//vnpMTEyMUCgUYuvWrSItLU2MHj36sbeENmjQQOzZs0ccP35c9OrV67G3hLZu3VokJiaKxMRE0apVq1p1a21l/fMuMyG4f6sqOTlZWFhYiMWLF4uLFy+Kb775Rtja2oqvv/5aPYb7turGjRsnnnvuOfVt91u3bhXOzs5i5syZ6jHcv5Vz584dceLECXHixAkBQCxdulScOHFCvQSMvvbjw9vue/fuLY4fPy727NkjGjRowNvuTcX//vc/4eXlJaysrET79u3Vt5PTAwAe+7N+/Xr1mPLycjF//nzh5uYm5HK56Natm0hLS9OYp7CwUEyePFk4OTkJGxsbMWjQIJGZmakx5tatW2Ls2LHCwcFBODg4iLFjx4q8vDw9fEvj8mgg4v6tup9//ln4+fkJuVwumjVrJj7//HON97lvq66goEBMnTpVNGzYUFhbW4tGjRqJuXPniuLiYvUY7t/K2b9//2P/Pztu3DghhH7345UrV0RISIiwsbERTk5OYvLkyaKoqEjKr68XMiGEMMyxKSIiIiLjwGuIiIiIyOQxEBEREZHJYyAiIiIik8dARERERCaPgYiIiIhMHgMRERERmTwGIiIiIjJ5DERERERk8hiIiIieICoqCm3btq32GCIyfgxERCSZ3NxcWFpa4v79+ygrK4OdnZ36SfIPyWQybN++Xad1vb29sXz5cp3O+SQzZszA3r17dTYfAxaRYVgYugEiqr0SExPRtm1b2Nra4ujRo3ByckLDhg0N3ZZO2dvbw97e3tBtEFE18QgREUnmyJEj6Ny5MwDg8OHD6j8/5O3tDQB46aWXIJPJ1K8B4Oeff4a/vz+sra3RqFEjLFiwAGVlZer3o6Ki0LBhQ8jlcnh4eGDKlCkAgB49euDKlSuYNm0aZDIZZDLZE/vLzMzEiy++CHt7ezg6OmLEiBG4ceNGhXGrV6+Gp6cnbG1tMXz4cOTn52v08egRnfXr16N58+awtrZGs2bNsHLlSo33r127hlGjRsHJyQl2dnYICAjA0aNHsWHDBixYsAB//PGHuvcNGzY89fsSkY4Y+umyRFS7XLlyRSgUCqFQKISlpaWwtrYWCoVCWFlZCblcLhQKhXjrrbeEEELk5OQIAGL9+vUiKytL5OTkCCGEiIuLE46OjmLDhg3i0qVLYvfu3cLb21tERUUJIYT4/vvvhaOjo4iNjRVXrlwRR48eVT+l/tatW6JBgwZi4cKFIisrS2RlZT22z/LyctGuXTvRpUsX8fvvv4ukpCTRvn170b17d/WY+fPnCzs7O9GrVy9x4sQJkZCQIHx9fcWYMWM0xrRp00b9+vPPPxfu7u7ixx9/FJcvXxY//vijcHJyEhs2bBBCCHHnzh3RqFEj0bVrV3Ho0CFx8eJFsWXLFnHkyBFx//59MX36dNGyZUt17/fv33/q9yUi3WAgIiKdKi0tFenp6eKPP/4QlpaWIjU1Vfz555/C3t5eJCQkiPT0dJGbm6seD0Bs27ZNY46uXbuKJUuWaGzbuHGjcHd3F0II8dFHH4mmTZuKkpKSx/bg5eUlli1b9tQ+d+/eLczNzUVmZqZ62+nTpwUAkZycLIR4EHbMzc3F1atX1WN27dolzMzM1EHr0UDk6ekpNm3apFHr/fffF0FBQUIIIVavXi0cHBzErVu3HtvXo/NV5vsSUfXxlBkR6ZSFhQW8vb1x7tw5dOjQAW3atEF2djZcXV3RrVs3eHt7w9nZ+alzpKSkYOHCherrc+zt7TF+/HhkZWXh/v37GD58OAoLC9GoUSOMHz8e27Zt0zidVhlnz56Fp6cnPD091dtatGiBOnXq4OzZs+ptDRs2RIMGDdSvg4KCUF5ejvPnz1eYMzc3F1evXsXrr7+u0fuiRYtw6dIlAEBqairatWsHJyenSveqi+9LRE/Hi6qJSKdatmyJK1euoLS0FOXl5bC3t0dZWRnKyspgb28PLy8vnD59+qlzlJeXY8GCBRg6dGiF96ytreHp6Ynz588jPj4ee/bswcSJE/Gf//wHCQkJsLS0rFSfQojHXl/0pO0PPXzvcWPKy8sBAGvWrEFgYKDGe+bm5gAAGxubSvX3T7r4vkT0dAxERKRTsbGxKC0tRe/evfHhhx/C398fo0aNwquvvooBAwZU+AVuaWkJlUqlsa19+/Y4f/48fH19n1jHxsYGoaGhCA0NxaRJk9CsWTOkpaWhffv2sLKyqjDno1q0aIHMzExcvXpVfZTozJkzUCqVaN68uXpcZmYmrl+/Dg8PDwAP7pwzMzND06ZNK8zp6uqK5557DpcvX8bYsWMfW7d169ZYu3Ytbt++/dijRE/q/Wnfl4iqj4GIiHTKy8sL2dnZuHHjBl588UWYmZnhzJkzGDp0qDpU/JO3tzf27t2Lzp07Qy6Xo27dunjvvfcwaNAgeHp6Yvjw4TAzM8PJkyeRlpaGRYsWYcOGDVCpVAgMDIStrS02btwIGxsbeHl5qec8ePAgRo0aBblc/thTdH369EHr1q0xduxYLF++HGVlZZg4cSK6d++OgIAA9Thra2uMGzcO//3vf1FQUIApU6ZgxIgRcHNze+z3j4qKwpQpU+Do6Ijg4GAUFxfj999/R15eHiIjIzF69GgsWbIEQ4YMQXR0NNzd3XHixAl4eHggKCgI3t7eSE9PR2pqKho0aAAHBwd8++23T/2+RKQDhr6IiYhqn2+//VZ06dJFCCHEwYMHha+v7xPH7tixQ/j6+goLCwvh5eWl3h4XFyc6deokbGxshKOjo3jhhRfUd1Zt27ZNBAYGCkdHR2FnZyc6duwo9uzZo/5sYmKiaN26tZDL5eJp/5u7cuWKCA0NFXZ2dsLBwUEMHz5cZGdnq99/eIHzypUrhYeHh7C2thZDhw4Vt2/frjDmn7755hvRtm1bYWVlJerWrSu6desmtm7dqn4/IyNDDBs2TDg6OgpbW1sREBAgjh49KoQQoqioSAwbNkzUqVNHfQfes74vEVWfTAghDB3KiIhqqtmzZ+PQoUM4fPiwoVshomrgXWZERFUghMClS5ewd+9etGzZ0tDtEFE1MRAREVWBUqlEixYtYGVlhTlz5hi6HSKqJp4yIyIiIpPHI0RERERk8hiIiIiIyOQxEBEREZHJYyAiIiIik8dARERERCaPgYiIiIhMHgMRERERmTwGIiIiIjJ5/w+wrlRcxGfW9wAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cpds = cps_mond_norm.predict_cpds_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " bins=bins_test)\n", "plt.plot(np.arange(len(cpds)), [len(cpds[i]) for i in range(len(cpds))])\n", "plt.xlabel(\"#test objects\")\n", "plt.ylabel(\"calibration set size\")\n", "plt.ylim(0)\n", "plt.xlim(0)\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "db5214da-e301-4e9b-aac2-235734ff3284", "metadata": {}, "source": [ "By default, the test objects and labels are sequentially added to the existing calibration set, i.e., the one used when fitting the conformal predictive system. We may set the `warm_start` option to `False`, if we would like to ignore the original calibration set. Note that the initial predictions tend to be very (maximally) wide, before we have a sufficiently large calibration set to allow for providing tighter intervals at the specified level of confidence." ] }, { "cell_type": "code", "execution_count": 151, "id": "e64d32e0-ebbe-4ace-97d7-c9e3b04640d3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 1. ],\n", " [0. , 1. ],\n", " [0. , 1. ],\n", " ...,\n", " [0.024138 , 0.06525427],\n", " [0.02434486, 0.06546113],\n", " [0.00893856, 0.05005483]])" ] }, "execution_count": 151, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_std.predict_int_online(y_hat_test, y_test, \n", " y_min=0, y_max=1, confidence=0.9,\n", " warm_start=False)" ] }, { "cell_type": "code", "execution_count": 152, "id": "5fc1d1dd-020e-4681-9a17-41dd2a124e45", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 1. ],\n", " [0. , 1. ],\n", " [0. , 1. ],\n", " ...,\n", " [0.02893135, 0.0589354 ],\n", " [0.03033607, 0.05786715],\n", " [0.01534491, 0.04201894]])" ] }, "execution_count": 152, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_norm.predict_int_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " y_min=0, y_max=1, confidence=0.9,\n", " warm_start=False)" ] }, { "cell_type": "code", "execution_count": 153, "id": "c23e69f3-fac9-4d21-8c38-c2586cc364a2", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 1. ],\n", " [0. , 1. ],\n", " [0. , 1. ],\n", " ...,\n", " [0.02850349, 0.05804063],\n", " [0.02871036, 0.05824749],\n", " [0.01747966, 0.03630942]])" ] }, "execution_count": 153, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_std.predict_int_online(y_hat_test, y_test, \n", " bins=bins_test, \n", " y_min=0, y_max=1, confidence=0.9,\n", " warm_start=False)" ] }, { "cell_type": "code", "execution_count": 154, "id": "df300227-88de-4411-8d13-191cde3401ee", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 1. ],\n", " [0. , 1. ],\n", " [0. , 1. ],\n", " ...,\n", " [0.02924075, 0.05726356],\n", " [0.03061997, 0.05633311],\n", " [0.01785218, 0.03615382]])" ] }, "execution_count": 154, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_norm.predict_int_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, bins=bins_test, \n", " y_min=0, y_max=1, confidence=0.9,\n", " warm_start=False)" ] }, { "cell_type": "markdown", "id": "f638d5ff-a0e8-477e-b7d4-5bf7c46cb18a", "metadata": {}, "source": [ "Similarly, we may disable `warm_start` also when requesting percentiles using online calibration:" ] }, { "cell_type": "code", "execution_count": 155, "id": "03852b5a-7e2f-464c-9d2b-376f77c3ce50", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.00000000e+00, 0.00000000e+00, 1.00000000e+00, 1.00000000e+00,\n", " 1.00000000e+00],\n", " [0.00000000e+00, 0.00000000e+00, 5.40123079e-02, 1.00000000e+00,\n", " 1.00000000e+00],\n", " [0.00000000e+00, 0.00000000e+00, 1.67394821e-01, 1.00000000e+00,\n", " 1.00000000e+00],\n", " ...,\n", " [1.61430348e-02, 3.76623132e-02, 4.29354938e-02, 4.81306096e-02,\n", " 7.75198623e-02],\n", " [1.63498974e-02, 3.78691759e-02, 4.31423565e-02, 4.83388165e-02,\n", " 7.77267250e-02],\n", " [9.43593967e-04, 2.24628724e-02, 2.77360530e-02, 3.29325130e-02,\n", " 6.23204215e-02]])" ] }, "execution_count": 155, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_std.predict_percentiles_online(y_hat_test, y_test, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1, \n", " warm_start=False)" ] }, { "cell_type": "code", "execution_count": 156, "id": "017ef07c-914c-4bfb-9278-aa1445119f61", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 0. , 1. , 1. , 1. ],\n", " [0. , 0. , 0.05320596, 1. , 1. ],\n", " [0. , 0. , 0.16089505, 1. , 1. ],\n", " ...,\n", " [0.02561059, 0.03810189, 0.04295594, 0.04793196, 0.06482842],\n", " [0.02728902, 0.03875076, 0.04320474, 0.04777216, 0.06327446],\n", " [0.0123927 , 0.02349764, 0.02781296, 0.03223821, 0.04725792]])" ] }, "execution_count": 156, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_norm.predict_percentiles_online(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1, \n", " warm_start=False)" ] }, { "cell_type": "code", "execution_count": 157, "id": "b4732cfa-6605-4fd1-8953-af80a8963d64", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 0. , 1. , 1. , 1. ],\n", " [0. , 0. , 1. , 1. , 1. ],\n", " [0. , 0. , 1. , 1. , 1. ],\n", " ...,\n", " [0.0247801 , 0.03797198, 0.04285818, 0.04815669, 0.06226766],\n", " [0.02498696, 0.03818508, 0.04306504, 0.04836355, 0.06247452],\n", " [0.01475657, 0.024672 , 0.02805354, 0.03086875, 0.03927496]])" ] }, "execution_count": 157, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_std.predict_percentiles_online(y_hat_test, y_test, \n", " bins=bins_test, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1, \n", " warm_start=False)" ] }, { "cell_type": "code", "execution_count": 158, "id": "67631d66-8d24-4a43-a4d1-4ea5a89ef641", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 0. , 1. , 1. , 1. ],\n", " [0. , 0. , 1. , 1. , 1. ],\n", " [0. , 0. , 1. , 1. , 1. ],\n", " ...,\n", " [0.02534627, 0.03814261, 0.04284592, 0.0482686 , 0.06153439],\n", " [0.02704648, 0.03879056, 0.04310378, 0.04807952, 0.06025192],\n", " [0.01547773, 0.02474128, 0.0280569 , 0.03082291, 0.03876334]])" ] }, "execution_count": 158, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_norm.predict_percentiles_online(y_hat_test, y_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1, \n", " warm_start=False)" ] }, { "cell_type": "markdown", "id": "48d2cd56-187c-4c09-ae1f-bdb9104e897c", "metadata": {}, "source": [ "We may set the `warm_start` option to `False` also when obtaining the conformal predictive distributions; this means that the size of the cpds will equal the number of already seen test objects for standard and normalized conformal predictive systems. " ] }, { "cell_type": "code", "execution_count": 159, "id": "7051935e-8767-41ab-b47d-135c2aa6d4b0", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cpds = cps_std.predict_cpds_online(y_hat_test, y_test, \n", " warm_start=False)\n", "plt.plot(np.arange(len(cpds)), [len(cpds[i]) for i in range(len(cpds))])\n", "plt.xlabel(\"#test objects\")\n", "plt.ylabel(\"calibration set size\")\n", "plt.ylim(0)\n", "plt.xlim(0)\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "6d6e1695-a79e-46f7-93e1-36c2e1c5cef4", "metadata": {}, "source": [ "For Mondrian conformal predictive systems, the calibration set for each category will be initially empty when `warm_start` is disabled." ] }, { "cell_type": "code", "execution_count": 160, "id": "df8c5070-a750-42a9-8db0-56909f6acb30", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cpds = cps_mond_std.predict_cpds_online(y_hat_test, y_test, \n", " bins=bins_test,\n", " warm_start=False)\n", "\n", "plt.plot(np.arange(len(cpds)), [len(cpds[i]) for i in range(len(cpds))])\n", "plt.xlabel(\"#test objects\")\n", "plt.ylabel(\"calibration set size\")\n", "plt.ylim(0)\n", "plt.xlim(0)\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "766e335c-6e06-4ab7-9336-307546fc4d3f", "metadata": {}, "source": [ "We may also evaluate the conformal predictive sytems using online calibration, by specifying `online=True` for the `evaluate` method (note that the metric \"CRPS\" is not available for semi-online conformal predictive systems):" ] }, { "cell_type": "code", "execution_count": 161, "id": "cf198ed1-f4a7-485e-8988-f182cc8e2c13", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.00925326177477559,\n", " 'eff_mean': 0.13448955886386924,\n", " 'eff_med': 0.1372840996721315,\n", " 'time_fit': 7.700920104980469e-05,\n", " 'ks_test': 0.5916687621381072,\n", " 'time_evaluate': 0.0979318618774414}" ] }, "execution_count": 161, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_std.evaluate(y_hat_test, y_test, \n", " confidence=0.99, y_min=0, y_max=1,\n", " online=True)" ] }, { "cell_type": "code", "execution_count": 162, "id": "b2173e91-be44-4d3d-aff1-8c2fb6fa2b16", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.009345794392523366,\n", " 'eff_mean': 0.0790979861269161,\n", " 'eff_med': 0.06009874136210289,\n", " 'time_fit': 9.012222290039062e-05,\n", " 'ks_test': 0.5444312633520502,\n", " 'time_evaluate': 0.09922456741333008}" ] }, "execution_count": 162, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_norm.evaluate(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " confidence=0.99, y_min=0, y_max=1, \n", " online=True)" ] }, { "cell_type": "code", "execution_count": 163, "id": "ec5a5e33-b110-404a-a734-3745a7c80aeb", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.009808457481262134,\n", " 'eff_mean': 0.09741711380709833,\n", " 'eff_med': 0.06305689154098373,\n", " 'time_fit': 7.271766662597656e-05,\n", " 'ks_test': 0.5446003431291417,\n", " 'time_evaluate': 0.06578302383422852}" ] }, "execution_count": 163, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_std.evaluate(y_hat_test, y_test, \n", " bins=bins_test, \n", " confidence=0.99, y_min=0, y_max=1, \n", " online=True)" ] }, { "cell_type": "code", "execution_count": 164, "id": "f58267f1-5fd3-4faf-bfd6-09f7d6546462", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.007865272508559285,\n", " 'eff_mean': 0.08363176946520014,\n", " 'eff_med': 0.05911412793010453,\n", " 'time_fit': 7.534027099609375e-05,\n", " 'ks_test': 0.5889786037265361,\n", " 'time_evaluate': 0.06945395469665527}" ] }, "execution_count": 164, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_norm.evaluate(y_hat_test, y_test,\n", " sigmas=sigmas_test_var,\n", " bins=bins_test, \n", " confidence=0.99, y_min=0, y_max=1, \n", " online=True)" ] }, { "cell_type": "markdown", "id": "b0a68cfd-eb73-49a8-a304-57841dfaf7d0", "metadata": {}, "source": [ "Again, we may consider ignoring the original calibration set by setting `warm_start=False`:" ] }, { "cell_type": "code", "execution_count": 165, "id": "c5f3045d-21a1-480f-b3a4-47bc84469222", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.009345794392523366,\n", " 'eff_mean': 0.14993983339973632,\n", " 'eff_med': 0.13578516065573804,\n", " 'time_fit': 7.700920104980469e-05,\n", " 'ks_test': 0.5831142591489074,\n", " 'time_evaluate': 0.0956578254699707}" ] }, "execution_count": 165, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_std.evaluate(y_hat_test, y_test, \n", " confidence=0.99, y_min=0, y_max=1, \n", " online=True, warm_start=False)" ] }, { "cell_type": "code", "execution_count": 166, "id": "8ca5b168-3228-4aa7-9ece-328d5091c542", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.008975663921532373,\n", " 'eff_mean': 0.09700046832436568,\n", " 'eff_med': 0.060887903348054134,\n", " 'time_fit': 9.012222290039062e-05,\n", " 'ks_test': 0.5347263113356433,\n", " 'time_evaluate': 0.09919381141662598}" ] }, "execution_count": 166, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_norm.evaluate(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " confidence=0.99, y_min=0, y_max=1, \n", " online=True, warm_start=False)" ] }, { "cell_type": "code", "execution_count": 167, "id": "d127242f-bce6-4513-91a7-1ec5480656ae", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.00731007680207274,\n", " 'eff_mean': 0.18751414317258247,\n", " 'eff_med': 0.06875509849180339,\n", " 'time_fit': 7.271766662597656e-05,\n", " 'ks_test': 0.5508493406042637,\n", " 'time_evaluate': 0.06671309471130371}" ] }, "execution_count": 167, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_std.evaluate(y_hat_test, y_test, \n", " bins=bins_test, \n", " confidence=0.99, y_min=0, y_max=1, \n", " online=True, warm_start=False)" ] }, { "cell_type": "code", "execution_count": 168, "id": "a45b7629-a1ec-4fe3-9e72-e8430408e6da", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.007032478948829413,\n", " 'eff_mean': 0.16887624253333153,\n", " 'eff_med': 0.06258798487910243,\n", " 'time_fit': 7.534027099609375e-05,\n", " 'ks_test': 0.5866258011785099,\n", " 'time_evaluate': 0.06875014305114746}" ] }, "execution_count": 168, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_mond_norm.evaluate(y_hat_test, y_test, \n", " sigmas=sigmas_test_var, \n", " bins=bins_test,\n", " confidence=0.99, y_min=0, y_max=1, \n", " online=True, warm_start=False)" ] }, { "cell_type": "markdown", "id": "f753cc47-b0f2-48db-a16f-4449f36a84b3", "metadata": { "tags": [] }, "source": [ "#### Online calibration without an initial calibration set" ] }, { "cell_type": "markdown", "id": "29288fb4-f370-4626-9d32-a41d4572e0f6", "metadata": {}, "source": [ "Since the calibration set is incrementally extended during online calibration, we may consider starting with an empty calibration set; this allows us to use the full training set when fitting the underlying model. " ] }, { "cell_type": "code", "execution_count": 169, "id": "271f16c0-2514-425f-b7b7-63c7277ed66e", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
RandomForestRegressor(n_estimators=500, n_jobs=-1)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "RandomForestRegressor(n_estimators=500, n_jobs=-1)" ] }, "execution_count": 169, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rf_full = RandomForestRegressor(n_jobs=-1, n_estimators=500)\n", "\n", "rf_full.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "id": "4be4594b-f910-427b-9fc7-2f6f5c682925", "metadata": {}, "source": [ "Let us compute non-conformity scores for the test set using the model trained on the full training set:" ] }, { "cell_type": "code", "execution_count": 170, "id": "9c6757dd-b78e-456a-a405-0e66547a01ce", "metadata": {}, "outputs": [], "source": [ "y_hat_full = rf_full.predict(X_test)" ] }, { "cell_type": "markdown", "id": "80945341-12ee-4c63-b28c-45287db4b4b7", "metadata": {}, "source": [ "We may now create a conformal predictive system, but this time without fitting a calibration set:" ] }, { "cell_type": "code", "execution_count": 171, "id": "78cdfca0-850f-4cd8-88ee-c612774dfc7f", "metadata": {}, "outputs": [], "source": [ "cps_full = ConformalPredictiveSystem()" ] }, { "cell_type": "markdown", "id": "ebdd47ce-a1e3-4ed2-a705-2fbdcbbd91d4", "metadata": {}, "source": [ "We may now obtain prediction intervals while sequentially updating the calibration set:" ] }, { "cell_type": "code", "execution_count": 172, "id": "a01c70e7-a047-48b5-af61-0dd9a41e1a87", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ -inf, inf],\n", " [ -inf, inf],\n", " [ -inf, inf],\n", " ...,\n", " [0.02496865, 0.06507602],\n", " [0.02493484, 0.06504221],\n", " [0.00825071, 0.04835807]])" ] }, "execution_count": 172, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_full.predict_int_online(y_hat_full, y_test, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "81ef8add-e09f-47aa-8243-cf281c9d8022", "metadata": {}, "source": [ "If we provide also difficulty estimates (`sigmas`), we will obtain a normalized conformal predictive system:" ] }, { "cell_type": "code", "execution_count": 173, "id": "f70fe3d4-27f0-467d-91c2-4eedf5ef4984", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ -inf, inf],\n", " [ -inf, inf],\n", " [ -inf, inf],\n", " ...,\n", " [0.0294355 , 0.0590041 ],\n", " [0.03059888, 0.0577304 ],\n", " [0.01432965, 0.04061657]])" ] }, "execution_count": 173, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_full.predict_int_online(y_hat_full, y_test, sigmas=sigmas_test_var, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "ddc45926-853b-4a3c-ad33-dd1e068b154d", "metadata": {}, "source": [ "We get a Mondrian conformal predictive system by providing the categories for the test set, here by dividing the predictions into seven intervals:" ] }, { "cell_type": "code", "execution_count": 174, "id": "c4177c89-a936-409a-96df-1a38af8f97f1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ -inf, inf],\n", " [ -inf, inf],\n", " [ -inf, inf],\n", " ...,\n", " [0.02904611, 0.0586453 ],\n", " [0.0290123 , 0.05861149],\n", " [0.0158161 , 0.03672153]])" ] }, "execution_count": 174, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bin_thresholds = [0.0, 0.02, 0.04, 0.06, 0.08, 0.1, 0.5, 1.0]\n", "bins_test = binning(rf_full.predict(X_test), bin_thresholds)\n", "\n", "cps_full.predict_int_online(y_hat_full, y_test, bins=bins_test, confidence=0.9)" ] }, { "cell_type": "markdown", "id": "3ea468fd-63da-47f2-bec6-8573bf5d4996", "metadata": {}, "source": [ "Let us investigate the coverage and prediction interval size for each category:" ] }, { "cell_type": "code", "execution_count": 175, "id": "5ed7f06f-f2b6-4689-99a8-97b943a781da", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
NumberCoverageSize
05760.90800.0527
132230.90660.0277
228360.91290.0382
319370.89730.0496
410130.91610.0711
512170.90630.1460
651.00001.0000
\n", "
" ], "text/plain": [ " Number Coverage Size\n", "0 576 0.9080 0.0527\n", "1 3223 0.9066 0.0277\n", "2 2836 0.9129 0.0382\n", "3 1937 0.8973 0.0496\n", "4 1013 0.9161 0.0711\n", "5 1217 0.9063 0.1460\n", "6 5 1.0000 1.0000" ] }, "execution_count": 175, "metadata": {}, "output_type": "execute_result" } ], "source": [ "intervals = cps_full.predict_int_online(y_hat_full, y_test,\n", " bins=bins_test, y_min=0, y_max=1, \n", " confidence=0.9)\n", "number = []\n", "coverage = []\n", "size = []\n", "\n", "for c in range(len(bin_thresholds)-1):\n", " selection = bins_test == c\n", " number.append(np.sum(selection))\n", " coverage.append(np.sum(\n", " (intervals[selection,0] <= y_test[selection])& \\\n", " (y_test[selection] <= intervals[selection,1]))/np.sum(selection))\n", " size.append(np.sum(intervals[selection,1]-\\\n", " intervals[selection,0])/np.sum(selection))\n", "\n", "df = pd.DataFrame({\"Number\":number, \"Coverage\":coverage, \"Size\":size})\n", "df.round(4)" ] }, { "cell_type": "markdown", "id": "f7aaa954-fc5d-4bcc-a50d-bfbb17f156e0", "metadata": {}, "source": [ "We can use `predict_p_online` to get the p-values:" ] }, { "cell_type": "code", "execution_count": 176, "id": "5304b992-4052-4fe8-bf00-6cf513c59b0e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.78895203, 0.80095738, 0.48688663, ..., 0.15023919, 0.65529523,\n", " 0.11913314])" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkIAAAG2CAYAAACTTOmSAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAR85JREFUeJzt3XlUVeXixvGHeVIwUXFGUHHIGVLRaDRMy7TJMYcylcxMbdLMSm/30mhlqZVjllM5Zb9Mpcl5RDQVzVkcQAMTUJTp7N8f5LmXxBI8sOGc72ct1rr7ZR/Pw93JedzD+zoZhmEIAADAATmbHQAAAMAsFCEAAOCwKEIAAMBhUYQAAIDDoggBAACHRRECAAAOiyIEAAAcFkUIAAA4LIoQAABwWBQhAADgsEwtQmvXrlWXLl1UvXp1OTk5admyZf/4mjVr1ig0NFSenp4KDg7WJ598UvxBAQCAXTK1CF28eFHNmzfXxx9/fF37Hz16VJ07d1ZERITi4uL08ssva/jw4Vq8eHExJwUAAPbIqbQsuurk5KSlS5eqW7du19znpZde0vLly7Vv3z7rWFRUlHbt2qVNmzaVQEoAAGBPXM0OUBibNm1SZGRkvrGOHTtqxowZys7Olpub21WvyczMVGZmpnXbYrHo3Llz8vf3l5OTU7FnBgAAN84wDKWnp6t69epydrbdBa0yVYSSkpIUEBCQbywgIEA5OTlKTk5WtWrVrnpNdHS0xo8fX1IRAQBAMTpx4oRq1qxpsz+vTBUhSVedxblyZe9aZ3fGjBmjUaNGWbdTU1NVu3ZtnThxQr6+vsUXFAAAFJlhGHp39W/6fONxSZIlM0Onpg5Q+fLlbfo+ZaoIVa1aVUlJSfnGzp49K1dXV/n7+xf4Gg8PD3l4eFw17uvrSxECAKAUOncxS8/M36ENh1Lk7OEtSfq4d0t1nXrtEx9FVaaKUHh4uL799tt8Y6tXr1ZYWFiB9wcBAICyZdeJ8+o6eYN1O6J+Jc0acIsyLl4olvcztQhduHBBhw4dsm4fPXpUO3fuVMWKFVW7dm2NGTNGp06d0pw5cyTlPSH28ccfa9SoURo0aJA2bdqkGTNmaP78+Wb9CAAAwAYysnI0ZslufbPztCTJy81F4+5vrN5tahfr+5pahLZv364777zTun3lXp7+/ftr9uzZSkxMVEJCgvX7QUFBWrFihUaOHKnJkyerevXqmjRpkh5++OESzw4AAGxj/tYEjVmy27pdwdtNP4y6XZXKXX1ri62VmnmESkpaWpr8/PyUmprKPUIAAJgoKfWyXlu+R6v2nrGOPXVHXb3YscFV9wIV1+d3mbpHCAAA2Id9iWnq+dlmpV7KlrOT1KdNoJ6+s56q+nmWaA6KEAAAKDGGYWjBthOa8G28LmXnqlI5d03vf4ta1KpgSh6KEAAAKBG/JaWr4wdrrdthgTdpymOtVKV8yZ4F+l8UIQAAUOzmbjmuf3/337VCHwmtqeiHmsrNxdT13ylCAACg+FzOztWweTv0w76zkqQq5T30ad9Qtax9k8nJ8lCEAABAsTj5R4ae/Hy79ielS5IaV/PVl0+2UUUfd5OT/RdFCAAA2Ny2Y+f0xKxtSs/Mkburs8bd31h92waaHesqFCEAAGAzhmFo/tYTenlp3gSJdSv7aEqfUDWoatvFUm2FIgQAAGxi54nzemnRr/rtTN6lMB93Fy0Z2l5+XqV3PVCKEAAAuCHnM7I04dt4LYk7ZR3r2zZQY+9rJE83FxOT/TOKEAAAKLKLmTl6eOpGHf79oqS8G6I/7t1SwZXLmZzs+lCEAABAkZxNu6xHPtmkhHMZ8nZ30Uv3NlS/8MCr1gkrzShCAACg0L77NVGjl/yq9Ms5cndx1qwBt6hNsL/ZsQqNIgQAAK6bYRh6Zdkezd2SIEnycHXW4qfaqUkNP5OTFQ1FCAAAXJfMnFyN+mqXvvs1UZJUqZyHvn82QpXLe5icrOgoQgAA4B+t3pukp+ftUHauIUnqHx6o17rcLGfnsnM/UEEoQgAA4G/N2XRMr36z17r9epfGGtA+yMREtkMRAgAA1zT550N6Z9VvkqSKPu76YmBr3Vy9bN4PVBCKEAAAuEpOrkUjv9qlb3edliR1aV5d7zzSrNRPkFhYFCEAAJDPiXMZenZBnHYknJckDb+rnkbeE1Km5ge6XhQhAABgtWpvkoZ8EStJ8nRz1ruPNtf9zaqbnKr4UIQAAIAsFkNjl+3R/K158wP5uLvo075hurV+JZOTFS+KEAAADu7EuQy9uOhXbTqSIklqVM1XS4e2s7v7gQpCEQIAwEFZLIYm/XRQk348KEve9EAa2SFEw++uZ5f3AxWEIgQAgAM6dzFLg+ds1/bjf0iSmtTw1av336zWQRVNTlayKEIAADgQi8XQmyv367O1RyRJrs5Oei6ygaJuD3aYs0D/iyIEAICD2H0yVV0+Xp9vbNnT7cvsgqm2QBECAMABzN1yXGOX7rFu392wiib2aCE/LzcTU5mPIgQAgB0zDEMf/nhQH/xwUJIUElBO7/doYVfLZNwIihAAAHbqj4tZGvJlrLYePSdJ6t2mtt7o2qTMrxhvSxQhAADs0LHki+o3c6sSzmVIkl7u3FCDb6trcqrShyIEAICd2X7snIZ8EauUi1ny83LTtH5hDvdY/PWiCAEAYCcMw9A3O09rxMKdkqRqfp76aki4alX0NjdYKUYRAgDADpzPyNKAWdu088R5SVLb4Iqa2idUN/m4mxuslKMIAQBQxq3ck6SxS3cr5WKWJKlri+p655Hmcnd1NjlZ6UcRAgCgjEq7nK0nZ2/X1mN5T4VVKuehyb1bqk2wv8nJyg6KEAAAZYzFYmju1gS9t/o3nc/IliR1a1Fdrz9wsyp4cymsMChCAACUIXtOperZBXE6/PtFSZKLs5Om9QvVXQ0DTE5WNlGEAAAoA3IthuZtTdC4ZfmXyXj7kWbyL+dhYrKyjSIEAEApl3Y5W10/3qCjyXlngYIr+WjGgFsUVMnH5GRlH0UIAIBSLOVCpnp8ttlagjo1qar3ujeXtzsf4bbA/4sAAJRSn609rP+s2G/dnjXgFt3ZsIqJiewPRQgAgFImJ9eil5fu1lfbT0qSPFydNfWxVpSgYkARAgCgFMnKsWjArK3aeDhFknRf02r6oGcLubkwOWJxoAgBAFBKnDiXoaFzd2j3qVRJ0iv3NdKTEcEmp7JvFCEAAEqBb3ae0gtf/6qsXIucnKSPerXU/c2qmx3L7lGEAAAw2f/eFF3dz1Of9QtTkxp+JqdyDBQhAABMkpR6WcMXxGnr0by1wm4Lqaxp/ULl4epicjLHQRECAKCEZedaNPnnQ5qx7qjSM3MkST3CaumtR5qZnMzxUIQAAChBu0+mqsvH663bVX099V735mpfr5KJqRwXRQgAgBKy7uDvGjh7u3V7UESQRndqJBdnJxNTOTaKEAAAJWD2hqP6z4r9ysq1qGHV8po54BZVr+BldiyHRxECAKAYGYahcd/s0ZebEyRJ7ev5a3q/W+Tlzg3RpQFFCACAYpJrMTT+273WEtQvPFDj7m/MLNGlCEUIAIBicCEzR099Gat1B5MlSWM6NdSQ2+uanAp/RRECAMDGNh9J0WPTtyjHYkiiBJVmFCEAAGzEMAzN2nBME/4v3jr25kNN1bN1bRNT4e9QhAAAsAGLxdDgL2L1w74zkqSGVctr/qC2usnH3eRk+DsUIQAAblDa5Ww9My9Oaw78Lkl6rG1tvdy5kbzd+Zgt7ThCAADcgM1HUjRsXpySL2TK2Ul6r3tzPdiyptmxcJ0oQgAAFMGx5It6YvY2HUm+KEnycnPRZ/1CFVG/ssnJUBgUIQAACunAmXT1nrZFyRcy5eLspEbVymvOE21UkfuByhyKEAAAhbDhULKe/Hy7LmXnqnJ5D817so3qB5Q3OxaKyPSpLadMmaKgoCB5enoqNDRU69at+9v9586dq+bNm8vb21vVqlXT448/rpSUlBJKCwBwVIZhaOovh9Vn+hZdys6Vl5uLlj3dnhJUxplahBYuXKgRI0Zo7NixiouLU0REhDp16qSEhIQC91+/fr369eungQMHau/evfr666+1bds2PfnkkyWcHADgSHIthvrN3Kq3Vu6XJDWq5qufn79DNVg0tcwztQhNnDhRAwcO1JNPPqlGjRrpgw8+UK1atTR16tQC99+8ebPq1Kmj4cOHKygoSLfeequGDBmi7du3l3ByAICjyMm1qP/MrdalMgbeGqRvh7VXVT9Pk5PBFkwrQllZWYqNjVVkZGS+8cjISG3cuLHA17Rr104nT57UihUrZBiGzpw5o0WLFum+++675vtkZmYqLS0t3xcAANfDMAy98d0+rT+UV4Im9Wqpcfc3liuLptoN045kcnKycnNzFRAQkG88ICBASUlJBb6mXbt2mjt3rnr06CF3d3dVrVpVFSpU0EcffXTN94mOjpafn5/1q1atWjb9OQAA9inXYujlpbs1e+MxSdK/ut6sB5pXNzcUbM70Suvk5JRv2zCMq8auiI+P1/Dhw/Xqq68qNjZWK1eu1NGjRxUVFXXNP3/MmDFKTU21fp04ccKm+QEA9icx9ZJ6frZJ87fmfWaM6FBffcPrmBsKxcK0x+crVaokFxeXq87+nD179qqzRFdER0erffv2euGFFyRJzZo1k4+PjyIiIvTGG2+oWrVqV73Gw8NDHh4etv8BAAB26fT5S7rz3V+UmWORlHcmiBJkv0w7I+Tu7q7Q0FDFxMTkG4+JiVG7du0KfE1GRoacnfNHdnFxkZR3JgkAgKLKyrFo6i+HrSXI38ddXwxsTQmyc6ZOqDhq1Cj17dtXYWFhCg8P12effaaEhATrpa4xY8bo1KlTmjNnjiSpS5cuGjRokKZOnaqOHTsqMTFRI0aMUOvWrVW9OtdtAQBFs+7g7xq5cJeSL2RKkqr5eeqLga1VrwpzBNk7U4tQjx49lJKSogkTJigxMVFNmjTRihUrFBgYKElKTEzMN6fQgAEDlJ6ero8//ljPPfecKlSooLvuuktvvfWWWT8CAKAMs1gMjftmj+Zu+e9nzXP3hOjJiGB5ubuYmAwlxclwsGtKaWlp8vPzU2pqqnx9fc2OAwAwScqFTPWftVV7TuVNqxLg66GvhoQr0N/H5GQoSHF9frPWGADA4aw7+LsGzdmuy9l5N0QPuS1YYzo3MjkVzEARAgA4lM83HtNry/dKkpydpHmD2qptsL/JqWAWihAAwCH89X6gFrUq6PMnWsvPy83kZDATRQgAYPeSL2Qq6otYbT/+hyRpyO3BeqljQzk7FzyBLxwHRQgAYNfOpl9Wt4836HTqZUlS9ENN1at1bZNTobSgCAEA7Nb6g8ka/MV2ZWTlytfTVe/3aKG7GxW8egEcE0UIAGCX5mzKuyn6yiQxC4eEq1E1pk1BfhQhAIBdSc3I1vhv92pJ3ClJUtvginqvewvVqOBlcjKURhQhAIDdWLknSS8t/lWpl7IlSd3Dauqth5vJyYmbolEwihAAoMz7LSldHT9Ya9329XTVv7o1UdcWNUxMhbKAIgQAKNOmrzui/6zYZ91uVbuCZg64RRW83U1MhbKCIgQAKJMOnEnX03N36ODZC5Kk5jX99M6jzRUSwIrxuH4UIQBAmfP97kQ9PW+HLH8+ETbw1iC93LmRXJggEYVEEQIAlBm5FkMTY37T5J8PS5JqVfTShz1bqlXtm0xOhrKKIgQAKBPOpl3W0/N2aNuxvGUy2tX117R+YfLx4KMMRcd/PQCAUm/PqVT1mrZZ6ZdzJEnj7m+sJ9rX4bF43DCKEACg1DqbdllPztmuX0+mSsp7LP7dR5sr8uaqJieDvaAIAQBKpSU7TmrC/8XrfEbe5IgR9SvpnUeaq6qfp8nJYE8oQgCAUuXI7xc08qtd2nXivCTJyUma1jdMHRqzWCpsjyIEACgVjqdc1LR1R/Tl5gTrWJMavprR/xYF+HIWCMWDIgQAMFVGVo4m/XhIn6w5bB2rVM5Drz/QWPc3q25iMjgCihAAwDRrDvyuQZ9vV1auRZJ0k7ebereprREdQuTm4mxyOjgCihAAoMRl5uRq7NI9WhR70jo2+LZgjbonRJ5uLiYmg6OhCAEAStQP8Wc06qudSvtzTiBnJ2nzmLtVhfuAYAKKEACgRGTlWPTe6t/06doj1rEJXW9W37aBTIwI01CEAADF7sS5DA35IlbxiWmSpPuaVlP0w03l6+lmcjI4OooQAKDYWCyGJsYc0CdrDivHYsjNxUnj7m/MWSCUGhQhAECxOPlHhp6YvU0HzlyQJNWvUk7v92ihJjX8TE4G/BdFCABgc7tOnNfgL7brTFqmXJyd9NTtdfVcZAhngVDqUIQAADb1fswBffjjQUlSlfIemjeorepVKWdyKqBgFCEAgE3k5Fr0/Ne7tGznaUlSVV9PLR7aTjUqeJmcDLg2ihAA4Ib9EH9GT87Zbt2Our2uXuzYQM7OXApD6UYRAgAUWa7F0Lurf9PUX/67Tti/ujVR37aBJqYCrh9FCABQJEmplzV8fpy2HjsnSbqlzk16+5HmCqrkY3Iy4PpRhAAAhbb2wO+K+jJWGVm5kqTXujTW4+2DTE4FFB5FCABQKN/vTtRTc3dIkmpX9NaHPVuoZe2bTE4FFA1FCABw3T7feEyvLd8rSaro467lw9qrgre7yamAoqMIAQD+0eXsXL28dLeW7DglSbq7YRVN6tVSPh58jKBs479gAMDfslgMPbsgTqv2npEkDbuzHrNEw25QhAAA15R6KVvPfbVLP+w7IycnaWqfVrq3STWzYwE2QxECABQoK8eiHp9u0v6kdEnSq/c3pgTB7lCEAABXOZ+Rpe6fbtKBMxfk5CR92LOlHmhe3exYgM1RhAAA+ew+maohX2zX6dTLkrgcBvtGEQIAWE1fd0RvfLfPuv3JY5Qg2DeKEABAWTkWvbZ8j+ZvPSFJ8vNy02d9Q9Um2N/kZEDxoggBgIM7k3ZZT8zepr2n0yRJD7asoXceaSZXF2eTkwHFjyIEAA5s98lUPT57q5IvZEmSXujYQE/fWc/kVEDJoQgBgAM6dzFL87Yc10c/HVJmjkVVfT31zqPNFFG/stnRgBJFEQIAB3Lo7AVFr9inH/eftY41reGnmQNuUeXyHiYmA8xBEQIAB2AYhj7feEyvfxtvHfNyc1GX5tX0RremcnflfiA4JooQANi5hJQMRX0Zq/jEvJuh/X3c9dK9DfVoWE3WC4PDowgBgB07nnJRPT7drKS0vMkR+7SprVe7NJaHq4vJyYDSgSIEAHZq0JztionPWzHe291Fn/YN5WZo4C8oQgBgZ06cy9DLS3dr3cFk69iyp9srJKC8iamA0okiBAB24soN0f9esU/ZuYYk6dHQmnr7kWbcCwRcA0UIAOyAYRh67utdWrLjlCSpdkVvvf1IM7VliQzgb1GEAKCMu5SVq+e+3qkVu5MkSR1vDtCHPVvK040booF/QhECgDIs5UKm7nj3F6VfzpEk/atbE/VtG2hyKqDsoAgBQBl1LPmiBn6+zVqCoh9qql6ta5ucCihbKEIAUAat3JOk4fPjlJVrkSR9O+xWNa3pZ3IqoOyhCAFAGbNga4JGL9ktSXJzcdL3z0aoXhUejQeKgiIEAGVErsXQG9/Fa9aGY9axNS/cqeoVvMwLBZRxFCEAKANW7knS2yv360jyRUlS1xbV9fYjzVgqA7hBpi83PGXKFAUFBcnT01OhoaFat27d3+6fmZmpsWPHKjAwUB4eHqpbt65mzpxZQmkBoGRl51r08tLdivoy1lqC/vNgU33YsyUlCLABU88ILVy4UCNGjNCUKVPUvn17ffrpp+rUqZPi4+NVu3bBTz50795dZ86c0YwZM1SvXj2dPXtWOTk5JZwcAIpf6qVs9Zm+WXtO5a0a/1CrGhrdqaGqlPc0ORlgP5wMwzDMevM2bdqoVatWmjp1qnWsUaNG6tatm6Kjo6/af+XKlerZs6eOHDmiihUrFuk909LS5Ofnp9TUVPn6+hY5OwAUp0Nn09Vh4lrr9phODTXk9romJgLMVVyf36ZdGsvKylJsbKwiIyPzjUdGRmrjxo0Fvmb58uUKCwvT22+/rRo1aigkJETPP/+8Ll26dM33yczMVFpaWr4vACjNft5/Vg9Ozvs96OLspOn9wihBQDEx7dJYcnKycnNzFRAQkG88ICBASUlJBb7myJEjWr9+vTw9PbV06VIlJydr6NChOnfu3DXvE4qOjtb48eNtnh8AbM0wDH3440F98MNBSVKNCl5a/FQ7VfXjUhhQXEy/WfqvKyIbhnHNVZItFoucnJw0d+5ctW7dWp07d9bEiRM1e/bsa54VGjNmjFJTU61fJ06csPnPAAC28Paq36wlqJqfp1aOiKAEAcXMtDNClSpVkouLy1Vnf86ePXvVWaIrqlWrpho1asjP77+zpzZq1EiGYejkyZOqX7/+Va/x8PCQh4eHbcMDgI19s/OUpv5yWJLU85Za+veDTeXiXPA/CgHYjmlnhNzd3RUaGqqYmJh84zExMWrXrl2Br2nfvr1Onz6tCxcuWMcOHDggZ2dn1axZs1jzAkBx+WztYT27YKekvPmB3ny4GSUIKCGmXhobNWqUpk+frpkzZ2rfvn0aOXKkEhISFBUVJSnvsla/fv2s+/fu3Vv+/v56/PHHFR8fr7Vr1+qFF17QE088IS8vZlYFULbk5Fo0cfVviv5+vySp480BevfR5ianAhyLqfMI9ejRQykpKZowYYISExPVpEkTrVixQoGBgZKkxMREJSQkWPcvV66cYmJi9MwzzygsLEz+/v7q3r273njjDbN+BAAoksvZueozfYtij/8hSbqjQWV98ljoNe+RBFA8TJ1HyAzMIwTAbFuOpGjY/Dj9np4pSfpX15vVp02gnLkcBlxTcX1+s9YYAJSg6euO6I3v9kmS3F2d9cljrXRXw4IfEAFQ/ChCAFACElIyNGbpr9pwKEWS1Da4oj7u3UqVyvFUK2AmihAAFLNvdp6yPhUm5T0eH/1QU+4HAkoBihAAFKNxy/boi83HJUlOTtL8QW3VNtjf5FQArqAIAUAxSLmQqRcW/aqf9p+VJPl5uWntC3fKz9vN5GQA/hdFCABs7OCZdA2YtU2nzuct/fPSvQ311B0smgqURhQhALCR7FyLXlu+V19vP6HsXEPlPVw1qVdL3dmwitnRAFwDRQgAbOB4ykU9PHWjki9kSZJa16mo6Iebqm7lciYnA/B3KEIAcINW703S6CW7de5iXgka2SFEw++ux1NhQBlAEQKAIopL+EOjF+/Wb2fSJUmB/t6a0T9M9aqUNzkZgOtFEQKAIli1N0lRX8bqyiJFN1f31dwn26iCt7u5wQAUCkUIAArpkzWH9eafK8bX8ffWvx9sqvb1KpmcCkBRUIQA4Dpl5Vj0zPwdWrX3jCSpfpVy+mZYe3m786sUKKv42wsA1+HcxSwN+WK7th37Q5L0RPsgjbu/ETdEA2UcRQgA/sHKPYmK+nKHdfvV+xvriVuDTEwEwFacC7PzzJkzlZmZWVxZAKBUSc3I1qvf7LGWIC83Fy1+KpwSBNiRQhWhQYMGKTU11bpdvXp1HTt2zNaZAMB0Gw8nK/zNHzVnU96CqW2DK+qXF+5QaGBFk5MBsKVCXRozrjwn+qf09HRZLBabBgIAs329/YReWPSrJMnD1VlD76inZzvUNzkVgOLAPUIA8CfDMDRj/VG98d0+SVLtit5aMrSdKpXzMDkZgOJSqCLk5OSU7wmJv24DQFn1x8UsDZ27Q5uOpEiS7mxQWdP73yIXZ37HAfas0JfGQkJCrOXnwoULatmypZyd899qdO7cOdslBIBitvtkqnp8tkkZWbmSpEERQXq5M4/GA46gUEVo1qxZxZUDAEyxam+SnpkXp6xciyqX99CbDzXV3Y0CzI4FoIQUqgj179+/uHIAQImbvu6I9X6g8GB/TenTSjf5sFYY4EiKdLO0YRiKjY3VsWPH5OTkpKCgILVs2ZLTyADKhAuZOXpi9jZtPZp3Gb9Doyr6uHcrebq5mJwMQEkrdBH6+eefNXDgQB0/ftz6OP2VMjRz5kzddtttNg8JALaQmZOr6BX7NXvjMetYy9oV9MljoXJ1KdS0agDsRKH+5h86dEj333+/6tSpoyVLlmjfvn2Kj4/X119/rZo1a6pz5846cuRIcWUFgCI7cS5Dd7+3xlqCfNxdNPi2YC0d2p4SBDgwJ+OvsyT+jWHDhmnfvn368ccfr/qeYRjq0KGDGjdurI8++simIW0pLS1Nfn5+Sk1Nla+vr9lxAJSA5AuZum/SOp1Jy5S3u4t63lJbz3cMYdV4oAwprs/vQv0W+OWXXxQdHV3g95ycnDRixAiNGTPGJsEAwBbOpl9W/5nbdCYtU1V9PfV1VLhqVfQ2OxaAUqJQRSghIUFNmza95vebNGmi48eP33AoALCFDYeSFfVFrNIzc+Tl5qIZA8IoQQDyKVQRunDhgry9r/1LxNvbWxkZGTccCgBu1Oq9SXp63g5l5+Zd/f86Klw3V/czORWA0qbQF8jj4+OVlJRU4PeSk5NvOBAA3Igf951R9Pf7dejsBUlSoL+3Fgxuq2p+XiYnA1AaFboI3X333VetQi/l3SNkGAZzCQEwzTur9mvyz4et2xH1K+mzvmHycmd+IAAFK1QROnr0aHHlAIAiu5ydq7FL92jxjpOSpCrlPTS5TyvdUqeiyckAlHaFKkKBgYHFlQMAiiT2+B/qP3OrLmTmSJJ6hNXSmw835ew0gOtSqFnEDh48qF69eiktLe2q76Wmpqp3795MqAigRORaDL3xf/F6eOpGawn6sGcLvfVIM0oQgOtWqCL0zjvvqFatWgVOZOTn56datWrpnXfesVk4ACjIobMXVPflFZq+Pu9y/Z0NKmv9S3eqa4saJicDUNYUqgitXbtWjz766DW/3717d/300083HAoACmIYhr7ddVqdPlxrHRtye7BmPd5aNW9ifiAAhVeoe4SOHz+uKlWqXPP7lSpV0okTJ244FAD8Va7F0MiFO7V812lJUoCvh+Y+2Ub1qpQ3ORmAsqxQZ4T8/Px0+PDha37/0KFDrN8FwOZOnMtQ72mbrSXokdCa+um5OyhBAG5YoYrQbbfd9rcLqk6aNEkRERE3HAoApLxLYQu2JqjzpHXacvScJCn6oaZ699Hm8vFgwVQAN65Qv0nGjBmj8PBwPfLII3rxxRfVoEEDSdL+/fv19ttva9WqVdq4cWOxBAXgWCwWQwNmb9PaA79LkupVKadJPVuqcXXOOgOwnUIVoZYtW2rRokV64okntHTp0nzf8/f311dffaVWrVrZNCAAx/PHxSwN/HybdiSclyQ93Kqm3ujWhBmiAdhcoc8t33///Tp+/LhWrlypQ4cOyTAMhYSEKDIy8m8XZAWAf2IYhib/fEizNx5T8oUsSdLrXRprQPsgk5MBsFeFukeoc+fOSk1NlZeXlx588EFlZWVp8ODB6tatm7y9vZWSkqLGjRsXV1YAdswwDA3+Ilbvrj6g5AtZcnNx0tdR4ZQgAMWqUEVo1apVyszMtG6/9dZbOnfunHU7JydHv/32m+3SAXAIv6dn6rmvdikm/owkqW5lH2146S7WCgNQ7Ap1aeyvq84XtAo9AFyvY8kX9cz8OO0+lWodG353fY26J8TEVAAcCc+fAjBF/Ok0dZ60Lt/YkNuCNbJDfZMSAXBEhSpCTk5OVy1myOKGAApry5EU9Zq22br9QY8W6tqiOr9PAJS4Ql8aGzBggDw8PCRJly9fVlRUlHx8fCQp3/1DAPBXmTm5mrb2iN5dfUCSVKW8h2Y9foturu5ncjIAjqpQRah///75th977LGr9unXr9+NJQJgl36IP6PBX2yX5c9bC2tV9NLip9qpSnlPc4MBcGiFKkKzZs0qrhwA7JRhGJqx/qje+G6fdWx0p4Z68tYguboU6sFVALA5bpYGUGyyciwaNGe71vy5TEatil6aP6itat7E5KsASgeKEIBisWBrgt5cuV/nM7IlSSM7hGjYXfXk4swN0QBKD4oQAJvKzMnVsHlx1skRJemjXi3VpXl1E1MBQMEoQgBs5kJmjh6bvkU7T5yXJDWp4asPerRUvSrlzA0GANdAEQJgE2fSLuvxWdsUn5gmSZrUq6Ue4CwQgFKOIgTghhiGoc83HtPbq35TRlauvNxcNL1/mNrXq2R2NAD4RxQhAEWWkZWjgbO3a9ORFElSOQ9XLR3aTvUDypucDACuD0UIQJGcOn9J/Wdu1aGzFyRJQZV8tOzp9vLzcjM5GQBcP4oQgEKbvzVB45btUY7FkKebsz7u1UodGgeYHQsACo0iBOC6pV3O1qiFu/TDvrxH473cXPTNsPYK4VIYgDKKIgTguiSlXlaf6Zt1+PeLkqTbQirrs76h8nRzMTkZABQdRQjAP9p69JwGfr5N6Zdz5OvpqrH3NVKPW2qbHQsAbpjpKx5OmTJFQUFB8vT0VGhoqNatW3ddr9uwYYNcXV3VokWL4g0IOLivtp1Q72mblX45R24uTloytD0lCIDdMLUILVy4UCNGjNDYsWMVFxeniIgIderUSQkJCX/7utTUVPXr10933313CSUFHE9qRrZGfbVTLy7+VTkWQw0Cyuv7Z29jlmgAdsXJMAzDrDdv06aNWrVqpalTp1rHGjVqpG7duik6Ovqar+vZs6fq168vFxcXLVu2TDt37rzu90xLS5Ofn59SU1Pl6+t7I/EBu7VyT5JGLtypS9m5kqT7mlbTBz1byM3F9JPIABxUcX1+m/ZbLSsrS7GxsYqMjMw3HhkZqY0bN17zdbNmzdLhw4f12muvXdf7ZGZmKi0tLd8XgILlWgw9Mz9OUV/G6lJ2rnzcXfRhzxaa3KcVJQiAXTLtZunk5GTl5uYqICD/3CMBAQFKSkoq8DUHDx7U6NGjtW7dOrm6Xl/06OhojR8//obzAvYuMfWSbn/nF2XlWCRJretU1Cd9Q1XRx93kZABQfEz/J56Tk1O+bcMwrhqTpNzcXPXu3Vvjx49XSEjIdf/5Y8aMUWpqqvXrxIkTN5wZsDff7DylW9/62VqCBt8WrK+iwilBAOyeaWeEKlWqJBcXl6vO/pw9e/aqs0SSlJ6eru3btysuLk7Dhg2TJFksFhmGIVdXV61evVp33XXXVa/z8PCQh4dH8fwQgB2YveGoXv82XlLeMhn/ebCpwuv6m5wKAEqGaUXI3d1doaGhiomJ0YMPPmgdj4mJUdeuXa/a39fXV7t37843NmXKFP30009atGiRgoKCij0zYE9+T8/UK8t2a9XevFmigyv7aOWzt8nd1fQTxQBQYkydUHHUqFHq27evwsLCFB4ers8++0wJCQmKioqSlHdZ69SpU5ozZ46cnZ3VpEmTfK+vUqWKPD09rxoHcG2GYWjg59v10/6z1rFHQ2sq+qGmcuWGaAAOxtQi1KNHD6WkpGjChAlKTExUkyZNtGLFCgUGBkqSEhMT/3FOIQDX72zaZQ3+IlY7T5y3jr39cDN1v6WWeaEAwESmziNkBuYRgiMyDENfbj6ucd/stY4NaFdHr3VpXODDCQBQ2hTX5zdrjQF2bsuRFL22fK/2J6Vbx2YOCNNdDa9+KAEAHA1FCLBjH/5wUO//cECS5O7irCcjgjT87vqsGA8Af6IIAXZo69Fz+mztEf2wL++JMC83F60cEaFAfx+TkwFA6UIRAuxIZk6uBs2J1doDv1vHeoTV0psPN+VeIAAoAEUIsBMHz6RrxMKd2ns6bz29upV99GREsHq1rm1yMgAovShCQBlnGIbGfbNHX27+71QT7z3aXA+H1jQxFQCUDRQhoAyLP52mUV/ttD4RVqmcuxYOCVfdyuVMTgYAZQNFCCiDcnItmvTTIU35+ZByLIZcnZ00ulNDDbw1iHuBAKAQKEJAGXPq/CUNnrPdei9QeLC/3nq4mWr7e5ucDADKHooQUEYYhqFP1x7RxNUHlJVrkZS3PMajYTU5CwQARUQRAsqAU+cvacgX27XnVN5ZIH8fd816/BY1q1nB3GAAUMZRhIBSbu/pVPX8bLPSL+dIkgbfFqznIxvI3ZWV4gHgRlGEgFIq9VK23o85oHlbE5SVY1E1P0+9+2hzta9XyexoAGA3KEJAKbRyT6Kivtxh3W5Sw1cz+t+iAF9PE1MBgP2hCAGliMVi6IMfDmjST4esY93Dair6oWZyceaGaACwNYoQUEqcTbusfjO3WidHrF+lnOYMbK1qfl4mJwMA+0URAkxmGIaWxp3ShP+L1/mMbElS37aBmtD1Zh6LB4BiRhECTJSZk6th8+IUE39GUt4SGR/1aqXwuv4mJwMAx0ARAkxy8Ey6npkfZ70U9vSddTX0jnry8eCvJQCUFH7jAiXMYjH07urfNOWXw5IkV2cnffJYqDo0DjA5GQA4HooQUILmbUnQ68v3WpfIKOfhqiVD2ykkoLzJyQDAMVGEgBJgGIbe/H6/Pl17xDrWI6yWxnVprHJcCgMA0/AbGChmZ9MuK+rLWO1IOC9JuqdxgF65r5EC/X3MDQYAoAgBxSkm/oxGLIjTxaxcSdLLnRtq8G11TU4FALiCIgQUk0WxJzV68a/KsRiqVM5dU/qEqnVQRbNjAQD+B0UIsLGTf2To7ZW/afmu05KkiPqVNK1fmDzdXExOBgD4K4oQYEN7TqXq/o/WW7d7ta6lf3VtIlcXZxNTAQCuhSIE2MjaA79r+II4SVKlch4a06mhHg6taXIqAMDfoQgBNvDT/jN6YvZ2SVKNCl769plbVdHH3eRUAIB/QhECbkBGVo7eXXVAMzcclSQ1r1VBc55oLT8vN5OTAQCuB0UIKKJlcac0YuFO6/adDSrr075hcnflfiAAKCsoQkAhpWZk698r4vXV9pPWsde7NFb/dnXk5ORkYjIAQGFRhIBCWBZ3SuO+2aP0yzmSpPuaVdPE7s3l4cqj8QBQFlGEgOuQeilbT8zeptjjf0iSKvq46+XOjfRwqxqcBQKAMowiBPyD3SdT1X/WVp27mCVJuqXOTZre7xb5eXNDNACUdRQh4BoMw9CkHw/p/R8OSJKcnKQPerRQ1xY1TE4GALAVihBQgN/TM/XUl7Ha/uelsGY1/fRxr1aq7e9tcjIAgC1RhIC/WHPgdz0+a6ssRt7285EhevrOetwLBAB2iCIE/I9vdp7SyIU7rSVo8VPhCg1kxXgAsFcUIUBSrsXQi4t+1eIdeXMDhQXepEm9Wqp6BS+TkwEAihNFCA7vm52n9OyCndbte2+uqo96t5QbK8YDgN2jCMGhLdiaoNFLdlu3X+jYQE/fWc/ERACAkkQRgkNafzBZ76zar10nUyVJt9arpPe6N1eAr6fJyQAAJYkiBIcz6ceDmhhzwLrdqUlVTe7dSs7OPBUGAI6GIgSHYbEYGrtst+ZvPSFJqlHBS/9+sInuaFDF5GQAALNQhOAQjiZf1GPTt+jU+UuS8p4KWzC4rVy5IRoAHBpFCHbv5B8Z6jfzvyWod5va+s+DTU1OBQAoDShCsGtJqZfV49PN1hL05cA2urV+JZNTAQBKC4oQ7NaZtMt6eOpGnTp/SQG+HvrksVC1rH2T2bEAAKUIRQh2Ke1ytnp+lncmqHJ5D80b1FZ1K5czOxYAoJThTlHYHYvF0Atf79LR5IvydnfRvCfbUIIAAAWiCMGuWCyGxizZrVV7z0iSJnZvrvoB5U1OBQAorbg0BrtxNPminvoyVvuT0iVJYzo11L1NqpmcCgBQmlGEUOalXMjUxz8f0qwNx6xjz95dX0Nur2teKABAmUARQpmWkJKhrpPX64+MbEmSv4+7/tWtiTo35UwQAOCfUYRQZn2767ReWvyrMrJy5e3uosG3BWvoHfXk7sqtbwCA60MRQpmTnWvRv7/bp9kbj0mSQgLKaXLvVtwUDQAoNIoQypRvdp7SK8v2KP1yjiTproZV9GnfULmxZhgAoAgoQigTDMPQG9/t04z1R61jL93bUFG3B8vJycnEZACAsowihFLvl9/O6pVle3Tyj7z1wprXqqBJPVso0N/H5GQAgLKOIoRSyzAMfbklQeOW7bGODb+7vkbdE2JiKgCAPaEIoVTacypVry3fq9jjf0iSGlYtr2n9wlSrorfJyQAA9oQihFJncexJvbj4V+VaDLm7OGvwbcF6tkN9bogGANic6Z8sU6ZMUVBQkDw9PRUaGqp169Zdc98lS5bonnvuUeXKleXr66vw8HCtWrWqBNOiuC2OPannvt6lXIuh4Mo+WjkiQs93bEAJAgAUC1M/XRYuXKgRI0Zo7NixiouLU0REhDp16qSEhIQC91+7dq3uuecerVixQrGxsbrzzjvVpUsXxcXFlXByFIdlcaf03Ne7JEkdGlXRiuERCmbVeABAMXIyDMMw683btGmjVq1aaerUqdaxRo0aqVu3boqOjr6uP+Pmm29Wjx499Oqrr17X/mlpafLz81Nqaqp8fX2LlBu2ZbEYmrrmsCbGHFCuxVCTGr5aNrS9XDkLBAD4U3F9fpt2j1BWVpZiY2M1evTofOORkZHauHHjdf0ZFotF6enpqlix4jX3yczMVGZmpnU7LS2taIFRLDJzcvX4rG3aeDhFktS6TkV90jeUEgQAKBGmfdokJycrNzdXAQEB+cYDAgKUlJR0XX/Ge++9p4sXL6p79+7X3Cc6Olp+fn7Wr1q1at1QbthO2uVs9Z62xVqCht9dX3MHtVFFH3eTkwEAHIXp/+z+66zAhmFc10zB8+fP1+uvv66FCxeqSpUq19xvzJgxSk1NtX6dOHHihjPjxi3YmqA2//5Rscf/kLOT9GHPFhp1Twg3RQMASpRpl8YqVaokFxeXq87+nD179qqzRH+1cOFCDRw4UF9//bU6dOjwt/t6eHjIw8PjhvPCNrJyLJoYc0CfrDlsHfv8idaKqF/ZxFQAAEdl2j+/3d3dFRoaqpiYmHzjMTExateu3TVfN3/+fA0YMEDz5s3TfffdV9wxYUMHz6Trrvd+sZag1kEVFftKB0oQAMA0pk6oOGrUKPXt21dhYWEKDw/XZ599poSEBEVFRUnKu6x16tQpzZkzR1JeCerXr58+/PBDtW3b1no2ycvLS35+fqb9HPhnP+8/q0FztivHYsjJSfrPg03Vq3Vts2MBABycqUWoR48eSklJ0YQJE5SYmKgmTZpoxYoVCgwMlCQlJibmm1Po008/VU5Ojp5++mk9/fTT1vH+/ftr9uzZJR0f12nJjpN6cdGvyvlzksSpfULVoGp5s2MBAGDuPEJmYB6hkvPHxSy9unyvvt11WpIUFniT5gxsLW93VnYBABSO3c0jBPu2NO6kXvtmr9Iu50iSerWupQldm/BUGACgVKEIwaaycy168/v9mrH+qHVs/qC2Cq/rb2IqAAAKRhGCzWw5kqKhc3co5WKWJKlelXKa2qeV6gdwPxAAoHSiCMEmvt+dqKfm7rBuv3RvQ0XdHnxdk2MCAGAWihBu2KwNRzX+23hJUoCvh74ddquq+HqanAoAgH9GEUKRWSyGxn2zR3O35E1xEFG/kqb1C5Onm4vJyQAAuD4UIRTJ6fOXNGzeDu1IOC9JGnxbsF66t6FcnLkUBgAoOyhCKLQf953RiAU7lZ6ZI2cnaULXJnqsbaDZsQAAKDSKEApl0o8HNTHmgCSpbmUfTe7TSg2rMjElAKBsogjhulgshib8X7xmbzwmSbqlzk36YmAb7gcCAJRpFCH8I8Mw9Pq3ezVn03FJ0lN31NWLHRvwaDwAoMyjCOFvXc7O1ZAvYrXmwO+SpFfvb6wnbg0yORUAALZBEcI1/ZaUri4frVdWrkWS9Nw9IZQgAIBdoQihQJsOp6jXtM3W7ecjQzTsrvomJgIAwPYoQsjHYjH05sr9+mztEUlSHX9vTe7TSjdX9zM5GQAAtkcRgtWZtMsa/EWsdp04L0lqXaeipvUPk5+Xm7nBAAAoJhQh6HJ2rt78fr++3HxcORZDkvRCxwYaekddngwDANg1ipCDS7mQqYGfb9fOP88C1atSTu93b6GmNbkUBgCwfxQhB/bNzlN6bflenc/IlrOT9FqXm9WnTW25ujibHQ0AgBJBEXJAl7NzNeqrnVqxO0mSFFzZR+892lwta99kcjIAAEoWRcjBnLuYpb4ztmjv6TRJeSVoyVPtVMHb3eRkAACUPIqQA/l6+wm9tnyvMrJyJUkf9myhri1qmJwKAADzUIQcxAc/HNAHPxy0bi8Y3FZtg/1NTAQAgPkoQg5g8s+HrCUoLPAmzR3URh6urBoPAABFyI6du5iloXNjtfnIOUnS/c2qaVLPlnJ2Zm4gAAAkipDd+vXkefWfuVV/ZGRLylswddhd9ZggEQCA/0ERsjOGYeiVZXs0f2uCLIbk4eqsWY/fonZ1K5kdDQCAUociZEd++e2sxizZrcTUy5IkX09XfTc8QrUqepucDACA0okiZAfOXcxS1Jex2nr0nHXs+cgQDb2jHvcDAQDwNyhCZdzZ9Mu6/e1fdCk7b26gWhW99PWQdqrq52lyMgAASj+KUBl26OwFPfn5Nl3KzpWLs5MG3hqkMZ0ackM0AADXiSJUBmVk5Wj2xmN6e+VvkiR3V2d9NSRcLWpVMDcYAABlDEWojNl4OFkDZ2+3Xgrz83LT0qHtFFy5nMnJAAAoeyhCZciHPxzU+z8ckJT3WPyA9nU0skOIPN2YJRoAgKKgCJUBiamXNHTuDsUlnJckhQbepI96tVT1Cl7mBgMAoIyjCJVy24+d05AvYpVyMUuS1C88UBO6NjE5FQAA9oEiVIot2XFSLy76VTkWQ9X8PPVx75YKDaxodiwAAOwGRagUSr+crbdW7teXmxMkSeHB/vqwVwtVKc/cQAAA2BJFqJRZtTdJY5bs1rk/L4V1a1Fd7zzaXG4uziYnAwDA/lCESonzGVkasXCnfvntd+vY1D6t1KlpNRNTAQBg3yhCpcC3u07rmflx1u2mNfz0xcDWquDtbmIqAADsH0XIRJeycjXh//Zq/tYT1rGXOzfU4NvqmpgKAADHQREygWEYmrXhmCbGHNCFzBxJ0l0Nq+ith5upcnkPk9MBAOA4KEIlLCvHohcW7dI3O09bx95+pJm6h9UyMRUAAI6JIlSCpq87oje+22fd7tW6tkbf21B+3m4mpgIAwHFRhErAmbTLemjKRp06f8k6Nu7+xhp4a5CJqQAAAEWoGB04k655WxI0e+Mx69hdDaso+qGmCvBlckQAAMxGESoG5y5m6Y3/i9eSuFPWsWp+nhp6R131Da9jXjAAAJAPRcjGth49p+6fbso3Fv1QUz0aWlOuzA4NAECpQhGyocWxJ/XCol2SJA9XZz0XGaJBEcFycnIyORkAACgIRcgGDv9+QdEr9umHfWclSZXKeWjViAj5l2NOIAAASjOK0A1ad/B39Z2x1bp9T+MATerZUl7uLiamAgAA14MidAMm/XhQE2MOSJJu8nbTS/c2VM/WtU1OBQAArhdFqAiSL2Rq3LI9+n5PkiSpQ6MqmtijhXw9mRgRAICyhCJUCBaLoS82H9dbK/crIytXktQ/PFCvP3AzN0QDAFAGUYSu0+nzl9T90006+Ufe7NA1b/LS85EN1K1lDZOTAQCAoqIIXYf9SWm6b9J65VoMSVKPsFoa3/VmebpxQzQAAGUZRegf/LT/jJ6YvV2S5ObipAWDwxUaeJPJqQAAgC1QhK7BMAxN/vmQ3l2d91SYp5uz/u+ZW1WvSnmTkwEAAFuhCBUgMydXz321S//3a6KkvKfC3nq4GRMkAgBgZyhC/8MwDC3beUrT1x3V3tNpkqSRHUI0/O56PBUGAIAdogj9afuxc3pmfpwSUy9LktxdnTW1Tyvd3SjA5GQAAKC4UIQkRX+/T5+uOWLdjqhfSRO6NlFQJR8TUwEAgOLmbHaAKVOmKCgoSJ6engoNDdW6dev+dv81a9YoNDRUnp6eCg4O1ieffFLk907NyNbLS3dbS1D9KuX08/N36IuBbShBAAA4AFOL0MKFCzVixAiNHTtWcXFxioiIUKdOnZSQkFDg/kePHlXnzp0VERGhuLg4vfzyyxo+fLgWL15c6PdeuuOkwt/8UfO25L1X97Caihl1OwUIAAAH4mQYhmHWm7dp00atWrXS1KlTrWONGjVSt27dFB0dfdX+L730kpYvX659+/ZZx6KiorRr1y5t2rTput4zLS1Nfn5+qjXiKzl7eMvNxUnvPtpcXVswQzQAAKXVlc/v1NRU+fr62uzPNe0eoaysLMXGxmr06NH5xiMjI7Vx48YCX7Np0yZFRkbmG+vYsaNmzJih7OxsubldvehpZmamMjMzrdupqamSJEtmhro0r6bR9zaSn7eb0tLSbvRHAgAAxeTK57Stz9+YVoSSk5OVm5urgID8T2UFBAQoKSmpwNckJSUVuH9OTo6Sk5NVrVq1q14THR2t8ePHXzV+auoATZkqTbmBnwEAAJSslJQU+fn52ezPM/2psb/Oz2MYxt/O2VPQ/gWNXzFmzBiNGjXKun3+/HkFBgYqISHBpv9HomjS0tJUq1YtnThxwqanOlF4HIvSg2NRenAsSo/U1FTVrl1bFStWtOmfa1oRqlSpklxcXK46+3P27NmrzvpcUbVq1QL3d3V1lb+/f4Gv8fDwkIfH1TNC+/n58R91KeLr68vxKCU4FqUHx6L04FiUHs7Otn3Oy7Snxtzd3RUaGqqYmJh84zExMWrXrl2BrwkPD79q/9WrVyssLKzA+4MAAAD+jqmPz48aNUrTp0/XzJkztW/fPo0cOVIJCQmKioqSlHdZq1+/ftb9o6KidPz4cY0aNUr79u3TzJkzNWPGDD3//PNm/QgAAKAMM/UeoR49eiglJUUTJkxQYmKimjRpohUrVigwMFCSlJiYmG9OoaCgIK1YsUIjR47U5MmTVb16dU2aNEkPP/zwdb+nh4eHXnvttQIvl6HkcTxKD45F6cGxKD04FqVHcR0LU+cRAgAAMJPpS2wAAACYhSIEAAAcFkUIAAA4LIoQAABwWHZZhKZMmaKgoCB5enoqNDRU69at+9v916xZo9DQUHl6eio4OFiffPJJCSW1f4U5FkuWLNE999yjypUry9fXV+Hh4Vq1alUJprV/hf27ccWGDRvk6uqqFi1aFG9AB1LYY5GZmamxY8cqMDBQHh4eqlu3rmbOnFlCae1bYY/F3Llz1bx5c3l7e6tatWp6/PHHlZKSUkJp7dfatWvVpUsXVa9eXU5OTlq2bNk/vsYmn9+GnVmwYIHh5uZmTJs2zYiPjzeeffZZw8fHxzh+/HiB+x85csTw9vY2nn32WSM+Pt6YNm2a4ebmZixatKiEk9ufwh6LZ5991njrrbeMrVu3GgcOHDDGjBljuLm5GTt27Cjh5PapsMfjivPnzxvBwcFGZGSk0bx585IJa+eKciweeOABo02bNkZMTIxx9OhRY8uWLcaGDRtKMLV9KuyxWLduneHs7Gx8+OGHxpEjR4x169YZN998s9GtW7cSTm5/VqxYYYwdO9ZYvHixIclYunTp3+5vq89vuytCrVu3NqKiovKNNWzY0Bg9enSB+7/44otGw4YN840NGTLEaNu2bbFldBSFPRYFady4sTF+/HhbR3NIRT0ePXr0MF555RXjtddeowjZSGGPxffff2/4+fkZKSkpJRHPoRT2WLzzzjtGcHBwvrFJkyYZNWvWLLaMjuh6ipCtPr/t6tJYVlaWYmNjFRkZmW88MjJSGzduLPA1mzZtumr/jh07avv27crOzi62rPauKMfirywWi9LT022+wJ4jKurxmDVrlg4fPqzXXnutuCM6jKIci+XLlyssLExvv/22atSooZCQED3//PO6dOlSSUS2W0U5Fu3atdPJkye1YsUKGYahM2fOaNGiRbrvvvtKIjL+h60+v01ffd6WkpOTlZube9WirQEBAVct1npFUlJSgfvn5OQoOTlZ1apVK7a89qwox+Kv3nvvPV28eFHdu3cvjogOpSjH4+DBgxo9erTWrVsnV1e7+lVhqqIciyNHjmj9+vXy9PTU0qVLlZycrKFDh+rcuXPcJ3QDinIs2rVrp7lz56pHjx66fPmycnJy9MADD+ijjz4qicj4H7b6/LarM0JXODk55ds2DOOqsX/av6BxFF5hj8UV8+fP1+uvv66FCxeqSpUqxRXP4Vzv8cjNzVXv3r01fvx4hYSElFQ8h1KYvxsWi0VOTk6aO3euWrdurc6dO2vixImaPXs2Z4VsoDDHIj4+XsOHD9err76q2NhYrVy5UkePHrWukYmSZYvPb7v6Z16lSpXk4uJyVZM/e/bsVa3xiqpVqxa4v6urq/z9/Ystq70ryrG4YuHChRo4cKC+/vprdejQoThjOozCHo/09HRt375dcXFxGjZsmKS8D2PDMOTq6qrVq1frrrvuKpHs9qYofzeqVaumGjVqyM/PzzrWqFEjGYahkydPqn79+sWa2V4V5VhER0erffv2euGFFyRJzZo1k4+PjyIiIvTGG29wFaEE2erz267OCLm7uys0NFQxMTH5xmNiYtSuXbsCXxMeHn7V/qtXr1ZYWJjc3NyKLau9K8qxkPLOBA0YMEDz5s3jmrsNFfZ4+Pr6avfu3dq5c6f1KyoqSg0aNNDOnTvVpk2bkopud4ryd6N9+/Y6ffq0Lly4YB07cOCAnJ2dVbNmzWLNa8+KciwyMjLk7Jz/o9PFxUXSf89GoGTY7PO7ULdWlwFXHoWcMWOGER8fb4wYMcLw8fExjh07ZhiGYYwePdro27evdf8rj9+NHDnSiI+PN2bMmMHj8zZS2GMxb948w9XV1Zg8ebKRmJho/Tp//rxZP4JdKezx+CueGrOdwh6L9PR0o2bNmsYjjzxi7N2711izZo1Rv35948knnzTrR7AbhT0Ws2bNMlxdXY0pU6YYhw8fNtavX2+EhYUZrVu3NutHsBvp6elGXFycERcXZ0gyJk6caMTFxVmnMiiuz2+7K0KGYRiTJ082AgMDDXd3d6NVq1bGmjVrrN/r37+/cfvtt+fb/5dffjFatmxpuLu7G3Xq1DGmTp1awontV2GOxe23325Iuuqrf//+JR/cThX278b/ogjZVmGPxb59+4wOHToYXl5eRs2aNY1Ro0YZGRkZJZzaPhX2WEyaNMlo3Lix4eXlZVSrVs3o06ePcfLkyRJObX9+/vnnv/0MKK7PbyfD4FweAABwTHZ1jxAAAEBhUIQAAIDDoggBAACHRRECAAAOiyIEAAAcFkUIAAA4LIoQAABwWBQhAHbv9ddfV4sWLcyOAaAUoggBAACHRRECAAAOiyIEoETdcccdGjZsmIYNG6YKFSrI399fr7zySoErd6empsrLy0srV67MN75kyRL5+PhYV2N/6aWXFBISIm9vbwUHB2vcuHHKzs7+2wwjRozIN9atWzcNGDDAup2VlaUXX3xRNWrUkI+Pj9q0aaNffvmlyD83gNKJIgSgxH3++edydXXVli1bNGnSJL3//vuaPn36Vfv5+fnpvvvu09y5c/ONz5s3T127dlW5cuUkSeXLl9fs2bMVHx+vDz/8UNOmTdP7779/Qxkff/xxbdiwQQsWLNCvv/6qRx99VPfee68OHjx4Q38ugNLF1ewAABxPrVq19P7778vJyUkNGjTQ7t279f7772vQoEFX7dunTx/169dPGRkZ8vb2Vlpamr777jstXrzYus8rr7xi/d916tTRc889p4ULF+rFF18sUr7Dhw9r/vz5OnnypKpXry5Jev7557Vy5UrNmjVL//nPf4r05wIofTgjBKDEtW3bVk5OTtbt8PBwHTx4UP/+979Vrlw561dCQoLuu+8+ubq6avny5ZKkxYsXq3z58oqMjLS+ftGiRbr11ltVtWpVlStXTuPGjVNCQkKR8+3YsUOGYSgkJCRfnjVr1ujw4cNF/8EBlDqcEQJQakRFRalHjx7W7erVq8vV1VWPPPKI5s2bp549e2revHnq0aOHXF3zfn1t3rxZPXv21Pjx49WxY0f5+flpwYIFeu+99675Ps7Ozlfdk/S/9xRZLBa5uLgoNjZWLi4u+fa7cjkOgH2gCAEocZs3b75qu379+vL395e/v/9V+/fp00eRkZHau3evfv75Z/3rX/+yfm/Dhg0KDAzU2LFjrWPHjx//2/evXLmyEhMTrdu5ubnas2eP7rzzTklSy5YtlZubq7NnzyoiIqJIPyOAsoFLYwBK3IkTJzRq1Cj99ttvmj9/vj766CM9++yz19z/9ttvV0BAgPr06aM6deqobdu21u/Vq1dPCQkJWrBggQ4fPqxJkyZp6dKlf/v+d911l7777jt999132r9/v4YOHarz589bvx8SEmK9N2nJkiU6evSotm3bprfeeksrVqy44Z8fQOlBEQJQ4vr166dLly6pdevWevrpp/XMM89o8ODB19zfyclJvXr10q5du9SnT5983+vatatGjhypYcOGqUWLFtq4caPGjRv3t+//xBNPqH///urXr59uv/12BQUFWc8GXTFr1iz169dPzz33nBo0aKAHHnhAW7ZsUa1atYr+gwModZyMgibvAIBicscdd6hFixb64IMPzI4CAJwRAgAAjosiBAAAHBaXxgAAgMPijBAAAHBYFCEAAOCwKEIAAMBhUYQAAIDDoggBAACHRRECAAAOiyIEAAAcFkUIAAA4LIoQAABwWP8Pa7QBJAovkjAAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "KS-test: 0.42158196806714776\n" ] } ], "source": [ "p_values = cps_full.predict_p_online(y_hat_test, y_test, bins=bins_test)\n", "\n", "display(p_values)\n", "\n", "plt.ecdf(p_values)\n", "plt.xlim(0,1)\n", "plt.xlabel(\"p-value\")\n", "plt.ylabel(\"ECDF\")\n", "plt.show()\n", "\n", "print(f\"KS-test: {kstest(p_values, \"uniform\").pvalue}\")" ] }, { "cell_type": "markdown", "id": "64e33678-9b27-47ed-991d-4732ccff9a25", "metadata": {}, "source": [ "We may get percentiles from the Mondrian conformal predictive system:" ] }, { "cell_type": "code", "execution_count": 177, "id": "84c6c6c1-bc29-404e-b9b8-8c0ab73f8210", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0. , 0. , 1. , 1. , 1. ],\n", " [0. , 0. , 1. , 1. , 1. ],\n", " [0. , 0. , 1. , 1. , 1. ],\n", " ...,\n", " [0.02439475, 0.03803148, 0.04302118, 0.04810387, 0.0629956 ],\n", " [0.02460161, 0.03825469, 0.04322805, 0.04831073, 0.06320246],\n", " [0.01320772, 0.02431748, 0.02777921, 0.03088502, 0.04100022]])" ] }, "execution_count": 177, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_full.predict_percentiles_online(y_hat_test, y_test, \n", " bins=bins_test, \n", " lower_percentiles = [2.5, 25],\n", " higher_percentiles = [50, 75, 97.5],\n", " y_min=0, y_max=1)" ] }, { "cell_type": "markdown", "id": "bc37416f-706e-455d-b71c-3212ea23342b", "metadata": {}, "source": [ "We can of course also request the cpds; here we take a close look at those belonging to category 5:" ] }, { "cell_type": "code", "execution_count": 178, "id": "0215475a-167f-41d2-968d-df9348ab0870", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([array([], dtype=float64), array([0.19868549]),\n", " array([0.20822479, 0.21150652]), ...,\n", " array([-0.02734483, 0.010169 , 0.01350467, ..., 0.33994047,\n", " 0.34142273, 0.38479078]) ,\n", " array([-0.03523275, 0.00228108, 0.00561675, ..., 0.33205255,\n", " 0.33353481, 0.37690286]) ,\n", " array([-0.05966609, -0.02215226, -0.01881659, ..., 0.30761922,\n", " 0.30910148, 0.35246952]) ],\n", " dtype=object)" ] }, "execution_count": 178, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cpds = cps_full.predict_cpds_online(y_hat_test, y_test, bins=bins_test)\n", "\n", "cpds[bins_test == 5]" ] }, { "cell_type": "markdown", "id": "b4b4de9d-5b3a-4388-b334-fef22472786c", "metadata": {}, "source": [ "We may also evaluate the conformal predictive system using online calibration, by specifying `online=True` for the `evaluate` method:" ] }, { "cell_type": "code", "execution_count": 179, "id": "59787e4b-b97a-4250-bfd4-bcdaa694a2cd", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.09142222633478303,\n", " 'eff_mean': 0.044345805857248,\n", " 'eff_med': 0.04141641154098347,\n", " 'time_fit': None,\n", " 'ks_test': 0.5595363340963319,\n", " 'time_evaluate': 0.09321451187133789}" ] }, "execution_count": 179, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_full.evaluate(y_hat_full, y_test, y_min=0, y_max=1, confidence=0.9, \n", " online=True)" ] }, { "cell_type": "markdown", "id": "1d3087bd-728d-4570-8624-90b4e8391d84", "metadata": {}, "source": [ "For Mondrian conformal predictive systems, we just have to provide the categories:" ] }, { "cell_type": "code", "execution_count": 180, "id": "caa6dfac-470a-497b-a5af-72a126680ca8", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'error': 0.09244008513000834,\n", " 'eff_mean': 0.053552572601571244,\n", " 'eff_med': 0.0308474213770494,\n", " 'time_fit': None,\n", " 'ks_test': 0.2762921983585108,\n", " 'time_evaluate': 0.06351017951965332}" ] }, "execution_count": 180, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cps_full.evaluate(y_hat_full, y_test, bins=bins_test, y_min=0, y_max=1, \n", " confidence=0.9, online=True)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.5" } }, "nbformat": 4, "nbformat_minor": 5 }