{ "cells": [ { "attachments": { "image-3.png": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAgAElEQVR4AeydB3iUVdqG74Tea+i9d6QXFQuKWBAR7L2uurru+quAimJZxbKLfVld69pWAUHALgp2BUtC6L1DaKEkIfW/3o+ZOBlmkkkyk0x5znWF+c75Tr3PQB7eU15QEAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREIHIInAxsAg4CGwDPgKOAyYDb/gYSh7QwZVuebJcZa28/ezzKGN5dwAVPdLseSdg79zhKyDDVT4VWAj0dL8spC9VgJeADcAB4FfgdI9y9jgcWA6kAV8CrT3e++p/O4/3ehQBEShDAvFl2JaaEgERCH8CtwFPAg8DjYFWwPPA6GJ0/X9ATY+ful5lTbR4CoczgL1eeSx6s6uOBoCJlv/6yOOdZIJnE3ACUAeYBLwLtHFlbAjMdKXXd4kx669n8O7/Ws+XehYBESg7AhIpZcdaLYlAuBOwX+oPAH92/SI/5LKKzAHuCGLnTWxc7lGfPb/uEfd+zAbeAbp5v/ARtz6bNWQ9kAvMBdYB/Vx5zwWSgfdclhrL2xvo4qMuJYmACJQzAYmUcp4ANS8CYURgCFAVeD/EfZoFDAPMwmI/xwOzC2mzMnAJ8EMhefy9MmtQJ5cwsTzdgd89MpuoWeNKdyePAva4ytzoTtSnCIhA2RPwXBcu+9bVogiIQDgRsGWVXYBZLvyF84Gz/L10pXvnsX0hJ3mUsb0mZp25AIgDPnBZNTyyOI9PA08A1YF0wKwgxQmVgDeB11x7UKysLUOleFVie15qudJsaegF176ZQcAM156at73KKCoCIlAGBGRJKQPIakIEIoTAbsD2bBT2nxf7Je62gLg/vYfnncdToLjz2vKOLfMUttTzF1dbZt0xYTQd6OWuoIhP+7fNlpUyXXtb3NltI29td8T1aXHbZGthKbAVyAG+A54Cxrne6UMERKCMCUiklDFwNScCYUzge5dF45wy6OPXQFPX5txvimjP9pZY/tXAiCLy2muzztgJH1vqGevaV+MuZvtRbA+KO9QA2nssB7nT3Z924sjqUxABESgHAhIp5QBdTYpAmBKwZY97gecAEyq2zGJLJnYS57Eg99l++dvej7O9jh77a8b2y9jGWRMZ7mD/fpmVxf1jx48t/Avo6qrflok8g+236eESL1bOxpvosRxkp5jquYTJQMCsOYXtl/GsW88iIAIiIAIiIAIhJmCbVO2eFNtUuh2YBwwt5G4SExyF3ZNiSyyNXH32zOs5DCtv79zB854UK29WlL+5X7r6Yvk9fza77jyxNPcdK1bWfmxM7nCKS5SYgLF23MeT7b3tPbFlLytjd6mYSFEQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQgRgjEHGXFDVo0CCvTRvPE4MxNmMargiIgAiIgAhEEYHFixebO44EX0Mq7PprX/nLPc0EyqJFdoWDggiIgAiIgAiIQKQTiIuL2+BvDLpx1h8ZpYuACIiACIiACJQrAYmUcsWvxkVABERABERABPwRkEjxR0bpIiACIiACIiAC5Uog4vak+KKVlZXF5s2bycgwdx0KsUigatWqtGjRgkqVzB+eggiIgAiIQDQQiAqRYgKlVq1a2KbauLiIO7AUDd+jch1DXl4eu3fvdoRq27Zty7UvalwEREAERCB4BKJiuccsKA0aNJBACd73IqJqMmFq8y9LWkRNmzorAiIgAkUSiAqRYqOUBaXIuY7qDJr/qJ5eDU4ERCBGCUSNSCnv+Vu/fj09evQo726ofREQAREQARGIGgISKVEzlRqICIiACIiACEQXgVCKlJeBncASP8hsh+vTwGogEejrJ1/Qk2f9uoVjp8yn7YR5zqfFgxnWrl1Lnz59+PHHHxk6dKjzbJ8rVqxwmnn11VcZPXo0I0eOpHPnztx///1OulljunTpwhVXXEGvXr0YN24caWlpzrsHHniAAQMGONaa66+/HtssqiACIiACIiAC0UwglCLlVWBkIfBOBzq6fq4H/lVI3qC9MkEycWYSW/alY7/m7dPiwRIqJkTGjh3LK6+8QteuXVm4cCG//vorJjLuuuuu/HH89NNPvPnmm/z222+89957+Vf9W3kTIYmJidSuXZvnn3/eKXPzzTfz888/s2TJEtLT05k7d25+XXoQAREQAREQgWgkEEqRshDYUwi00cDr4GiFH4C6QNNC8gfl1eOfrCA9K6dAXRa39NKGlJQUx0LyxhtvcMwxx5Camsp5553nWD/+9re/kZycnN/Eqaee6pxIqVatGueeey7ffPON865ly5Yce+yxzvOll16an/7ll18yaNAgevbsyfz58wvUlV+pHkRABERABEQgyATMcj83cSuZ2blBrrno6kIpUopqvTmwySPTZsDSfAWztJhXwUUmBEoTtu5L91ncX7rPzH4S69Spg4mMb7/91skxadIkTjrpJMf6MWfOnAJHZL1Po7jj7k93Exa3o7U33XQT06dPJykpieuuu65AXe68+hQBERABERCBYBLYtCeNy176iZvf+jVoKw7F6V95ihRft67522jxAtDffhISfHpzDnjMzepW85nXX7rPzH4SK1euzKxZs3j99dd56623HEtK8+ZHdJftQ/EMn332GXv27HGWbqyM23qyceNGvv/+eyfr22+/zXHHHZcvSBo2bMjBgwcdseJZl55FQAREQAREIJgEcnLzePmbdYyYupDfNu3joXN6MK5fi2A2EVBd5SlSzHLS0qOXNvqtHvGQPN5xWmeqVapQoG6LW3owQo0aNZz9IlOnTnWWfCZOnOgIkJycgktMJj4uu+wyJ4/tYenf3zQYzj6W1157zdk4ayLmxhtvpG7duo71xJZ6zjnnHGcDbTD6qjpEQAREQAREwJvAqh0HGDftOx6Yu5TB7erz6d+Gceng1sTH+7IteJcObjzULbYBbIenrwtEzgRuBs4ABrlO+gwsanj9+vXLW7TIVn7+CMuWLXN+uf+RUviTbZK1PSi2xGMWFBMo5/Txt9JUeF0leWtWFRvDs88+W6C4ne4566yznOWhAi8UCYhAcb8HAVWqTCIgAiIQIwRsz8m0BWt4dv5qalSpwH2jujP6mGYhvyw1Li5usWu15CjSofTd8zZwItAQMKvJfYDb+9s04EOXQLEjyHbO9qqjeheiBBMkZSlKQjQMVSsCIiACIiACQSGQuHkfd05PZPn2A4zq3Yz7RnWjYc0qQam7NJWE2pJSmr75LBsMS4rPipUY8QRkSYn4KdQAREAEyphARlYOUz9byYtfryWhVhUeOqcnp3ZrXKa9KC9LSpkOUo2JgAiIgAiIgAgETuCHtbuZMCOR9bvTuGhgSyae0ZXaVd0LHoHXE8qcoVzuCWW/VbcIiIAIiIAIiEAJCBzIyGLKR8t588eN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" }, "image-4.png": { "image/png": "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" } }, "cell_type": "markdown", "metadata": {}, "source": [ "# Intro\n", "\n", "When we published the [GHOST paper](https://doi.org/10.1021/acs.jcim.1c00160) on shifting the decision boundary to improve the predictive performance of classification models built on imbalanced datasets, we only considered binary classifiers (e.g. active/inactive, soluble/insoluble, etc.). I was recently asked if the method could be extended to ternary (three-class) classifiers. This post is about doing that.\n", "\n", "The code here isn't set up for easy re-use at the moment. It will eventually find its way into the [open-source ghostml package](https://github.com/rinikerlab/GHOST) once we've had a chance to review and test it more thoroughly. \n", "\n", "> *Aside*: the ghostml package is now pip installable: `python -m pip install ghostml` to install it in your environment\n", "\n", "In order for this to make sense, I think I should start with some explanation of the way I've approached the problem:\n", "\n", "## Using thresholds in ternary problems\n", "\n", "Things are a bit more complicated here than with binary classifiers. For the binary case we just have a single threshold which determines whether an instance is predicted to be in class 0 or 1. So, assuming that we optimized based on the probability of class 1, we can formulate the decision as:\n", "```\n", "if probabilities[1] >= threshold:\n", " prediction = 1\n", "else:\n", " prediction = 0\n", "```\n", "Before doing any optimization `threshold` is equal to 0.5.\n", "\n", "For ternary predictions we have two different decision boundaries and there's no longer a simple threshold; instead the default decision rule can be expressed as:\n", "```\n", "prediction = argmax(probabilities)\n", "```\n", "i.e., the prediction is the class which has the highest predicted probability.\n", " \n", "> *Aside*: the same decision rule can be used for a binary classifier with the default threshold. It's just easier to explain using the threshold of 0.5.\n", " \n", "If we want to introduce two thresholds for the ternary classifier, and assuming that we optimize the thresholds for classes 0 and 2, we have to use a more complex decision rule:\n", "```\n", " if probabilities[0]>=thresholds[0]:\n", " # we might still be in class 2 if the relative probability of that\n", " # is larger than the probability of class 0\n", " if (probabilities[2]-thresholds[1])>(probabilities[0]-thresholds[0]):\n", " prediction = 2\n", " else:\n", " prediction = 0\n", " elif probabilities[2]>=thresholds[1]:\n", " prediction = 0\n", " else:\n", " prediction = 1\n", "```\n", "\n", "## Optimizing thresholds for ternary problems\n", "\n", "For the sake of this post let's assume that we're optimizing the thresholds for classes 0 and 2; we could also do 0 and 1, or 1 and 2, the results should still be the same.\n", "\n", "In this post I explore two different approaches for optimizing these thresholds.\n", "\n", "### Greedy optimization\n", "\n", "Here I optimize the two thresholds independently of each other by constructing two binary classification problems and optimizing the thresholds for those problems. Here's the process:\n", "\n", "1. Create a binary classification set by setting the training-set `y` values to 1 if the original value is 0 and to 0 otherwise. \n", "2. Use the original `ghostml` approach with that binary classification data and the predicted probabilities of each training point to be 0 in order to set `threshold0`, the threshold for the predicted probability of being 0.\n", "3. Create a binary classification set by setting the training-set `y` values to 1 if the original value is 2 and to 0 otherwise. \n", "4. Use the original `ghostml` approach with that binary classification data and the predicted probabilities of each training point to be 2 in order to set `threshold2`, the threshold for the predicted probability of being 2.\n", "\n", "Since the current `ghostml` code doesn't support using balanced accuracy for optimization, I just use kappa for the greedy optimization.\n", "\n", "### Grid search\n", "\n", "Explore the full grid of possible `(threshold0, threshold2)` pairs and pick the one which produces the optimal Cohen's kappa value. I also try a variant of this which optimizes balanced accuracy instead of Cohen's kappa.\n", "\n", "## TL;DR Results summary\n", "\n", "Both approaches work well with both simulated data and a couple of datasets from ChEMBL. There doesn't seem to be a large or consistent difference in the quality of the results generated with the two different methods. The greedy optimization approach is, however, quite a bit faster.\n", "\n", "Here's the improvement in three scoring metrics (kappa, balanced accuracy, and overall accuracy) when using the greedy optimization procedure on 50 simulated datasets with a 10-80-10 class split; the threshold shift improves both kappa and balanced accuracy on all datasets:\n", "![image-4.png](attachment:image-4.png)\n", "\n", "And here's the same plot for 20 different random stratified train/tests splits with target CHEMBL205 (carbonic anhydrase II) with activity thresholds chosen to give a 19-72-9 class split. Once again, the threshold shift improves predictive performance:\n", "![image-3.png](attachment:image-3.png)\n", "\n", "\n", "Note: the original version of this [notebook](https://github.com/greglandrum/rdkit_blog/blob/master/notebooks/ghost_multiclass.ipynb) and the two CHEMBL data files ([file1](https://github.com/greglandrum/rdkit_blog/blob/master/data/target_CHEMBL205.csv.gz), [file2](https://github.com/greglandrum/rdkit_blog/blob/master/data/target_CHEMBL217.csv.gz)), are both in github in the [older rdkit blog repo](https://github.com/greglandrum/rdkit_blog).\n", "\n", "\n", "## Beyond ternary problems\n", "\n", "I put some thought into figuring out how to extend this to the general multi-class prediction case, but that turned out to be more difficult than I'd anticipated. If you have suggestions, ideally suggestions accompanied by code, please let me know in the comments!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And now onto the code and more detailed exploration" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "from rdkit import Chem\n", "from rdkit.Chem import rdMolDescriptors\n", "from rdkit.Chem import rdFingerprintGenerator\n", "from rdkit.Chem import PandasTools\n", "# note that you can install ghost using pip: python -m pip install ghostml\n", "import ghostml\n", "import pandas as pd\n", "from sklearn import metrics\n", "import numpy as np\n", "\n", "\n", "%pylab inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Code we'll use" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def ternary_rebin(probs,thresholds):\n", " ''' returns a list of classifications based on the provided predicted probabilities and thresholds '''\n", " res = []\n", " for prob in probs:\n", " if prob[0]>=thresholds[0]:\n", " # we might still be in class 2 if the relative probability of that\n", " # is larger than the probability of class 0\n", " if (prob[2]-thresholds[1])>(prob[0]-thresholds[0]):\n", " res.append(2)\n", " else:\n", " res.append(0)\n", " elif prob[2]>=thresholds[1]:\n", " res.append(2)\n", " else:\n", " res.append(1)\n", " return res\n", "\n", "def run_ternary_oob_optimization(oob_probs, labels_train, thresholds, ThOpt_metrics = 'Kappa'):\n", " ''' does a grid search to optimize the decision thresholds for a ternary problem '''\n", " res = []\n", " tscores = []\n", " for t1 in thresholds:\n", " for t2 in thresholds:\n", " preds = ternary_rebin(oob_probs,(t1,t2))\n", " if ThOpt_metrics == 'Kappa':\n", " tgt = metrics.cohen_kappa_score(labels_train,preds)\n", " elif ThOpt_metrics == 'BalancedAccuracy':\n", " tgt = metrics.balanced_accuracy_score(labels_train,preds)\n", " elif ThOpt_metrics == 'F1':\n", " tgt = metrics.f1_score(labels_train,preds)\n", " tscores.append((np.round(tgt,3),(t1,t2)))\n", " tscores.sort(reverse=True)\n", " thresh = tscores[0][-1]\n", " return thresh\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.model_selection import train_test_split\n", "\n", "def run_ternary_experiment(X,y,accum,random_state=0):\n", " ''' experiment wrapper for the ternary bounds optimization '''\n", " n_classes = max(y)+1\n", " local = {}\n", " \n", " # --------------------\n", " # Train - test split\n", " X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, stratify = y, \n", " random_state=random_state)\n", "\n", " # --------------------\n", " # Train a RF classifier\n", " cls = RandomForestClassifier(n_estimators=500,max_depth=10,oob_score=True,n_jobs=8)\n", " cls.fit(X_train, y_train)\n", "\n", "\n", " # --------------------\n", " # Calculate the baseline accuracy values\n", " test_preds = cls.predict(X_test)\n", " test_probs = cls.predict_proba(X_test)\n", " kappa = metrics.cohen_kappa_score(y_test,test_preds)\n", " balanced = metrics.balanced_accuracy_score(y_test,test_preds)\n", " accuracy = metrics.accuracy_score(y_test,test_preds)\n", " confusion = metrics.confusion_matrix(y_test,test_preds,labels=list(set(y_test)))\n", " print('original')\n", " print(f'accuracy: {accuracy:.3f} balanced accuracy: {balanced:.3f} kappa: {kappa:.3f}')\n", " print(confusion)\n", " local['orig-accuracy'] = accuracy\n", " local['orig-balanced'] = balanced\n", " local['orig-kappa'] = kappa\n", " local['orig-confusion'] = confusion\n", " \n", " # --------------------\n", " # optimize the two thresholds individually\n", " thresholds = [0]*(n_classes-1)\n", " for i,clsv in enumerate((0,2)):\n", " d_tform = [1 if y==clsv else 0 for y in y_train]\n", " d_probs = [x[clsv] for x in cls.oob_decision_function_]\n", " thresholds[i] = ghostml.optimize_threshold_from_oob_predictions(d_tform,d_probs,thresholds=np.arange(0.05,1.0,0.05))\n", " local['thresholds'] = thresholds\n", " \n", " # calculate the accuracy values for those thresholds:\n", " test_preds = ternary_rebin(test_probs,thresholds)\n", " kappa = metrics.cohen_kappa_score(y_test,test_preds)\n", " balanced = metrics.balanced_accuracy_score(y_test,test_preds)\n", " accuracy = metrics.accuracy_score(y_test,test_preds)\n", " confusion = metrics.confusion_matrix(y_test,test_preds,labels=list(set(y_test)))\n", " print('rebalanced')\n", " print(f'thresholds: {thresholds}')\n", " print(f'accuracy: {accuracy:.3f} balanced accuracy: {balanced:.3f} kappa: {kappa:.3f}')\n", " print(confusion)\n", " local['shift-accuracy'] = accuracy\n", " local['shift-balanced'] = balanced\n", " local['shift-kappa'] = kappa\n", " local['shift-confusion'] = confusion\n", " \n", " \n", " # --------------------\n", " # grid-search optimization of the threshold values based on kappa\n", " thresholds = run_ternary_oob_optimization(cls.oob_decision_function_,y_train,\n", " thresholds=np.arange(0.05,1.00,0.05),\n", " ThOpt_metrics = 'Kappa')\n", " test_preds = ternary_rebin(test_probs,thresholds)\n", " kappa = metrics.cohen_kappa_score(y_test,test_preds)\n", " balanced = metrics.balanced_accuracy_score(y_test,test_preds)\n", " accuracy = metrics.accuracy_score(y_test,test_preds)\n", " confusion = metrics.confusion_matrix(y_test,test_preds,labels=list(set(y_test)))\n", " print('global kappa rebalanced')\n", " print(f'thresholds: {thresholds}')\n", " print(f'accuracy: {accuracy:.3f} balanced accuracy: {balanced:.3f} kappa: {kappa:.3f}')\n", " print(confusion)\n", " local['global-k-shift-accuracy'] = accuracy\n", " local['global-k-shift-balanced'] = balanced\n", " local['global-k-shift-kappa'] = kappa\n", " local['global-k-shift-confusion'] = confusion\n", " \n", " # --------------------\n", " # grid-search optimization of the threshold values based on the balanced accuracy\n", " thresholds = run_ternary_oob_optimization(cls.oob_decision_function_,y_train,\n", " thresholds=np.arange(0.05,1.00,0.05),\n", " ThOpt_metrics = 'BalancedAccuracy')\n", " test_preds = ternary_rebin(test_probs,thresholds)\n", " kappa = metrics.cohen_kappa_score(y_test,test_preds)\n", " balanced = metrics.balanced_accuracy_score(y_test,test_preds)\n", " accuracy = metrics.accuracy_score(y_test,test_preds)\n", " confusion = metrics.confusion_matrix(y_test,test_preds,labels=list(set(y_test)))\n", " print('global balanced_accuracy rebalanced')\n", " print(f'thresholds: {thresholds}')\n", " print(f'accuracy: {accuracy:.3f} balanced accuracy: {balanced:.3f} kappa: {kappa:.3f}')\n", " print(confusion)\n", " local['global-ba-shift-accuracy'] = accuracy\n", " local['global-ba-shift-balanced'] = balanced\n", " local['global-ba-shift-kappa'] = kappa\n", " local['global-ba-shift-confusion'] = confusion\n", " \n", " accum.append(local)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Synthetic datasets\n", "\n", "\n", "I will try out a couple of real datasets below, but I want to start by verifying that the process works with some synthetic datasest. Scikit-learn's [make_classification() function](https://scikit-learn.org/stable/modules/generated/sklearn.datasets.make_classification.html) makes this really easy.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Try a 10-80-10 split\n", "\n", "I will test this with multiple different forms of imbalance, just to be sure that it generalizes. Let's start with an example where the majority class is in the middle:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--------------\n", "original\n", "accuracy: 0.865 balanced accuracy: 0.569 kappa: 0.483\n", "[[ 54 69 1]\n", " [ 1 950 1]\n", " [ 4 86 34]]\n", "rebalanced\n", "thresholds: [0.25, 0.2]\n", "accuracy: 0.893 balanced accuracy: 0.763 kappa: 0.682\n", "[[ 77 42 5]\n", " [ 14 906 32]\n", " [ 7 28 89]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.893 balanced accuracy: 0.763 kappa: 0.682\n", "[[ 77 42 5]\n", " [ 14 906 32]\n", " [ 7 28 89]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.844 balanced accuracy: 0.820 kappa: 0.619\n", "[[100 19 5]\n", " [ 66 814 72]\n", " [ 10 15 99]]\n", "--------------\n", "original\n", "accuracy: 0.885 balanced accuracy: 0.628 kappa: 0.584\n", "[[ 49 67 7]\n", " [ 1 953 0]\n", " [ 7 56 60]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.920 balanced accuracy: 0.775 kappa: 0.750\n", "[[ 93 26 4]\n", " [ 11 939 4]\n", " [ 16 35 72]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.918 balanced accuracy: 0.798 kappa: 0.756\n", "[[101 18 4]\n", " [ 22 927 5]\n", " [ 19 30 74]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.15000000000000002)\n", "accuracy: 0.913 balanced accuracy: 0.827 kappa: 0.753\n", "[[ 94 18 11]\n", " [ 21 908 25]\n", " [ 9 20 94]]\n", "--------------\n", "original\n", "accuracy: 0.866 balanced accuracy: 0.565 kappa: 0.476\n", "[[ 61 61 0]\n", " [ 2 954 0]\n", " [ 4 94 24]]\n", "rebalanced\n", "thresholds: [0.25, 0.2]\n", "accuracy: 0.899 balanced accuracy: 0.753 kappa: 0.690\n", "[[ 81 29 12]\n", " [ 19 921 16]\n", " [ 5 40 77]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.899 balanced accuracy: 0.753 kappa: 0.690\n", "[[ 81 29 12]\n", " [ 19 921 16]\n", " [ 5 40 77]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.821 balanced accuracy: 0.792 kappa: 0.571\n", "[[102 9 11]\n", " [126 797 33]\n", " [ 12 24 86]]\n", "--------------\n", "original\n", "accuracy: 0.878 balanced accuracy: 0.603 kappa: 0.542\n", "[[ 67 51 4]\n", " [ 1 955 0]\n", " [ 4 86 32]]\n", "rebalanced\n", "thresholds: [0.25, 0.2]\n", "accuracy: 0.893 balanced accuracy: 0.803 kappa: 0.700\n", "[[ 95 14 13]\n", " [ 13 892 51]\n", " [ 6 31 85]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.893 balanced accuracy: 0.803 kappa: 0.700\n", "[[ 95 14 13]\n", " [ 13 892 51]\n", " [ 6 31 85]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.845 balanced accuracy: 0.823 kappa: 0.624\n", "[[109 2 11]\n", " [ 55 817 84]\n", " [ 14 20 88]]\n", "--------------\n", "original\n", "accuracy: 0.868 balanced accuracy: 0.570 kappa: 0.484\n", "[[ 65 57 0]\n", " [ 1 954 1]\n", " [ 3 97 22]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.910 balanced accuracy: 0.765 kappa: 0.715\n", "[[ 95 23 4]\n", " [ 17 931 8]\n", " [ 5 51 66]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.910 balanced accuracy: 0.765 kappa: 0.715\n", "[[ 95 23 4]\n", " [ 17 931 8]\n", " [ 5 51 66]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.858 balanced accuracy: 0.833 kappa: 0.645\n", "[[106 8 8]\n", " [ 54 831 71]\n", " [ 5 24 93]]\n", "--------------\n", "original\n", "accuracy: 0.868 balanced accuracy: 0.574 kappa: 0.503\n", "[[ 24 87 12]\n", " [ 0 953 1]\n", " [ 2 56 65]]\n", "rebalanced\n", "thresholds: [0.2, 0.3]\n", "accuracy: 0.885 balanced accuracy: 0.699 kappa: 0.637\n", "[[ 64 49 10]\n", " [ 26 923 5]\n", " [ 13 35 75]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.886 balanced accuracy: 0.718 kappa: 0.649\n", "[[ 60 47 16]\n", " [ 26 916 12]\n", " [ 8 28 87]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.775 balanced accuracy: 0.785 kappa: 0.515\n", "[[ 93 11 19]\n", " [168 735 51]\n", " [ 15 6 102]]\n", "--------------\n", "original\n", "accuracy: 0.874 balanced accuracy: 0.601 kappa: 0.533\n", "[[ 57 67 0]\n", " [ 1 949 2]\n", " [ 6 75 43]]\n", "rebalanced\n", "thresholds: [0.3, 0.2]\n", "accuracy: 0.897 balanced accuracy: 0.751 kappa: 0.686\n", "[[ 74 43 7]\n", " [ 14 917 21]\n", " [ 7 31 86]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.2)\n", "accuracy: 0.897 balanced accuracy: 0.751 kappa: 0.686\n", "[[ 74 43 7]\n", " [ 14 917 21]\n", " [ 7 31 86]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.864 balanced accuracy: 0.798 kappa: 0.647\n", "[[ 96 23 5]\n", " [ 63 851 38]\n", " [ 17 17 90]]\n", "--------------\n", "original\n", "accuracy: 0.851 balanced accuracy: 0.530 kappa: 0.423\n", "[[ 32 81 10]\n", " [ 1 948 7]\n", " [ 4 76 41]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.877 balanced accuracy: 0.694 kappa: 0.613\n", "[[ 61 48 14]\n", " [ 7 916 33]\n", " [ 4 41 76]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.877 balanced accuracy: 0.722 kappa: 0.630\n", "[[ 74 37 12]\n", " [ 19 904 33]\n", " [ 8 38 75]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.844 balanced accuracy: 0.744 kappa: 0.583\n", "[[ 79 28 16]\n", " [ 37 849 70]\n", " [ 7 29 85]]\n", "--------------\n", "original\n", "accuracy: 0.885 balanced accuracy: 0.632 kappa: 0.582\n", "[[ 64 58 2]\n", " [ 2 951 0]\n", " [ 5 71 47]]\n", "rebalanced\n", "thresholds: [0.3, 0.25]\n", "accuracy: 0.909 balanced accuracy: 0.758 kappa: 0.715\n", "[[ 77 40 7]\n", " [ 4 931 18]\n", " [ 7 33 83]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.906 balanced accuracy: 0.758 kappa: 0.709\n", "[[ 81 36 7]\n", " [ 9 926 18]\n", " [ 10 33 80]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.848 balanced accuracy: 0.807 kappa: 0.623\n", "[[ 92 19 13]\n", " [ 43 825 85]\n", " [ 12 11 100]]\n", "--------------\n", "original\n", "accuracy: 0.895 balanced accuracy: 0.671 kappa: 0.628\n", "[[ 67 54 1]\n", " [ 6 949 0]\n", " [ 3 62 58]]\n", "rebalanced\n", "thresholds: [0.3, 0.3]\n", "accuracy: 0.924 balanced accuracy: 0.812 kappa: 0.767\n", "[[ 96 24 2]\n", " [ 20 930 5]\n", " [ 4 36 83]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.3)\n", "accuracy: 0.924 balanced accuracy: 0.812 kappa: 0.767\n", "[[ 96 24 2]\n", " [ 20 930 5]\n", " [ 4 36 83]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.885 balanced accuracy: 0.900 kappa: 0.715\n", "[[112 7 3]\n", " [ 62 839 54]\n", " [ 4 8 111]]\n", "--------------\n", "original\n", "accuracy: 0.867 balanced accuracy: 0.570 kappa: 0.488\n", "[[ 52 71 1]\n", " [ 1 952 0]\n", " [ 5 82 36]]\n", "rebalanced\n", "thresholds: [0.25, 0.2]\n", "accuracy: 0.887 balanced accuracy: 0.739 kappa: 0.656\n", "[[ 81 39 4]\n", " [ 20 909 24]\n", " [ 6 42 75]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.887 balanced accuracy: 0.739 kappa: 0.656\n", "[[ 81 39 4]\n", " [ 20 909 24]\n", " [ 6 42 75]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.728 balanced accuracy: 0.780 kappa: 0.452\n", "[[106 12 6]\n", " [137 672 144]\n", " [ 15 12 96]]\n", "--------------\n", "original\n", "accuracy: 0.884 balanced accuracy: 0.629 kappa: 0.577\n", "[[ 57 64 3]\n", " [ 1 951 1]\n", " [ 3 67 53]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.907 balanced accuracy: 0.778 kappa: 0.715\n", "[[ 86 37 1]\n", " [ 18 919 16]\n", " [ 8 32 83]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.889 balanced accuracy: 0.780 kappa: 0.680\n", "[[ 83 36 5]\n", " [ 18 894 41]\n", " [ 6 27 90]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.809 balanced accuracy: 0.800 kappa: 0.554\n", "[[ 94 25 5]\n", " [ 72 775 106]\n", " [ 7 14 102]]\n", "--------------\n", "original\n", "accuracy: 0.866 balanced accuracy: 0.573 kappa: 0.489\n", "[[ 50 70 3]\n", " [ 2 950 2]\n", " [ 4 80 39]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.888 balanced accuracy: 0.724 kappa: 0.655\n", "[[ 82 33 8]\n", " [ 23 917 14]\n", " [ 11 45 67]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.2)\n", "accuracy: 0.882 balanced accuracy: 0.724 kappa: 0.642\n", "[[ 68 41 14]\n", " [ 9 909 36]\n", " [ 4 37 82]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.831 balanced accuracy: 0.780 kappa: 0.583\n", "[[ 99 15 9]\n", " [ 70 814 70]\n", " [ 15 24 84]]\n", "--------------\n", "original\n", "accuracy: 0.881 balanced accuracy: 0.621 kappa: 0.558\n", "[[ 61 60 2]\n", " [ 1 951 4]\n", " [ 1 75 45]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.907 balanced accuracy: 0.796 kappa: 0.720\n", "[[ 88 31 4]\n", " [ 25 913 18]\n", " [ 3 31 87]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.907 balanced accuracy: 0.796 kappa: 0.720\n", "[[ 88 31 4]\n", " [ 25 913 18]\n", " [ 3 31 87]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.847 balanced accuracy: 0.819 kappa: 0.621\n", "[[ 96 14 13]\n", " [ 73 821 62]\n", " [ 5 17 99]]\n", "--------------\n", "original\n", "accuracy: 0.877 balanced accuracy: 0.606 kappa: 0.546\n", "[[ 52 67 4]\n", " [ 0 952 2]\n", " [ 5 69 49]]\n", "rebalanced\n", "thresholds: [0.3, 0.25]\n", "accuracy: 0.898 balanced accuracy: 0.773 kappa: 0.695\n", "[[ 76 40 7]\n", " [ 18 910 26]\n", " [ 4 27 92]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.25)\n", "accuracy: 0.898 balanced accuracy: 0.773 kappa: 0.695\n", "[[ 76 40 7]\n", " [ 18 910 26]\n", " [ 4 27 92]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.828 balanced accuracy: 0.821 kappa: 0.595\n", "[[ 98 14 11]\n", " [ 73 792 89]\n", " [ 8 12 103]]\n", "--------------\n", "original\n", "accuracy: 0.858 balanced accuracy: 0.542 kappa: 0.440\n", "[[ 36 83 4]\n", " [ 1 953 0]\n", " [ 1 81 41]]\n", "rebalanced\n", "thresholds: [0.2, 0.25]\n", "accuracy: 0.885 balanced accuracy: 0.730 kappa: 0.649\n", "[[ 80 38 5]\n", " [ 38 910 6]\n", " [ 12 39 72]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.2)\n", "accuracy: 0.888 balanced accuracy: 0.753 kappa: 0.669\n", "[[ 78 37 8]\n", " [ 37 905 12]\n", " [ 11 29 83]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.730 balanced accuracy: 0.790 kappa: 0.459\n", "[[106 8 9]\n", " [191 671 92]\n", " [ 13 11 99]]\n", "--------------\n", "original\n", "accuracy: 0.892 balanced accuracy: 0.657 kappa: 0.622\n", "[[ 74 43 6]\n", " [ 2 951 0]\n", " [ 9 69 46]]\n", "rebalanced\n", "thresholds: [0.3, 0.25]\n", "accuracy: 0.917 balanced accuracy: 0.787 kappa: 0.749\n", "[[ 92 22 9]\n", " [ 6 929 18]\n", " [ 15 30 79]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.916 balanced accuracy: 0.796 kappa: 0.751\n", "[[ 98 18 7]\n", " [ 11 924 18]\n", " [ 18 29 77]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.873 balanced accuracy: 0.825 kappa: 0.677\n", "[[109 3 11]\n", " [ 32 852 69]\n", " [ 21 17 86]]\n", "--------------\n", "original\n", "accuracy: 0.879 balanced accuracy: 0.609 kappa: 0.544\n", "[[ 42 79 1]\n", " [ 1 953 0]\n", " [ 0 64 60]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.925 balanced accuracy: 0.787 kappa: 0.761\n", "[[ 80 37 5]\n", " [ 7 941 6]\n", " [ 2 33 89]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.2)\n", "accuracy: 0.932 balanced accuracy: 0.835 kappa: 0.796\n", "[[ 90 26 6]\n", " [ 12 931 11]\n", " [ 2 24 98]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.895 balanced accuracy: 0.850 kappa: 0.720\n", "[[ 96 19 7]\n", " [ 37 873 44]\n", " [ 5 14 105]]\n", "--------------\n", "original\n", "accuracy: 0.874 balanced accuracy: 0.601 kappa: 0.531\n", "[[ 50 67 5]\n", " [ 2 950 3]\n", " [ 2 72 49]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.900 balanced accuracy: 0.787 kappa: 0.706\n", "[[ 86 28 8]\n", " [ 14 907 34]\n", " [ 6 30 87]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.900 balanced accuracy: 0.787 kappa: 0.706\n", "[[ 86 28 8]\n", " [ 14 907 34]\n", " [ 6 30 87]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.858 balanced accuracy: 0.843 kappa: 0.649\n", "[[ 98 15 9]\n", " [ 50 825 80]\n", " [ 6 11 106]]\n", "--------------\n", "original\n", "accuracy: 0.902 balanced accuracy: 0.692 kappa: 0.661\n", "[[ 75 45 3]\n", " [ 3 951 2]\n", " [ 5 59 57]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.931 balanced accuracy: 0.813 kappa: 0.786\n", "[[103 17 3]\n", " [ 12 939 5]\n", " [ 8 38 75]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.928 balanced accuracy: 0.831 kappa: 0.785\n", "[[103 17 3]\n", " [ 12 928 16]\n", " [ 7 31 83]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.890 balanced accuracy: 0.875 kappa: 0.718\n", "[[115 3 5]\n", " [ 50 857 49]\n", " [ 8 17 96]]\n", "--------------\n", "original\n", "accuracy: 0.865 balanced accuracy: 0.574 kappa: 0.497\n", "[[ 59 57 8]\n", " [ 2 948 2]\n", " [ 5 88 31]]\n", "rebalanced\n", "thresholds: [0.3, 0.25]\n", "accuracy: 0.889 balanced accuracy: 0.715 kappa: 0.653\n", "[[ 81 31 12]\n", " [ 8 921 23]\n", " [ 7 52 65]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.889 balanced accuracy: 0.727 kappa: 0.663\n", "[[ 88 24 12]\n", " [ 14 916 22]\n", " [ 13 48 63]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.829 balanced accuracy: 0.769 kappa: 0.580\n", "[[ 95 13 16]\n", " [ 52 815 85]\n", " [ 15 24 85]]\n", "--------------\n", "original\n", "accuracy: 0.886 balanced accuracy: 0.632 kappa: 0.583\n", "[[ 35 79 8]\n", " [ 1 953 1]\n", " [ 1 47 75]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.920 balanced accuracy: 0.796 kappa: 0.756\n", "[[ 79 33 10]\n", " [ 13 931 11]\n", " [ 6 23 94]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.912 balanced accuracy: 0.826 kappa: 0.749\n", "[[ 87 25 10]\n", " [ 24 908 23]\n", " [ 7 16 100]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.2)\n", "accuracy: 0.873 balanced accuracy: 0.842 kappa: 0.677\n", "[[ 98 14 10]\n", " [ 62 846 47]\n", " [ 10 10 103]]\n", "--------------\n", "original\n", "accuracy: 0.855 balanced accuracy: 0.531 kappa: 0.416\n", "[[ 21 103 1]\n", " [ 0 953 0]\n", " [ 0 70 52]]\n", "rebalanced\n", "thresholds: [0.2, 0.25]\n", "accuracy: 0.893 balanced accuracy: 0.746 kappa: 0.676\n", "[[ 81 39 5]\n", " [ 26 914 13]\n", " [ 13 32 77]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.893 balanced accuracy: 0.746 kappa: 0.676\n", "[[ 81 39 5]\n", " [ 26 914 13]\n", " [ 13 32 77]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.764 balanced accuracy: 0.791 kappa: 0.500\n", "[[ 99 14 12]\n", " [124 717 112]\n", " [ 14 7 101]]\n", "--------------\n", "original\n", "accuracy: 0.906 balanced accuracy: 0.691 kappa: 0.673\n", "[[ 75 43 5]\n", " [ 0 956 0]\n", " [ 10 55 56]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.929 balanced accuracy: 0.818 kappa: 0.787\n", "[[ 96 17 10]\n", " [ 5 935 16]\n", " [ 13 24 84]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.929 balanced accuracy: 0.818 kappa: 0.787\n", "[[ 96 17 10]\n", " [ 5 935 16]\n", " [ 13 24 84]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.888 balanced accuracy: 0.824 kappa: 0.703\n", "[[101 8 14]\n", " [ 26 876 54]\n", " [ 14 18 89]]\n", "--------------\n", "original\n", "accuracy: 0.866 balanced accuracy: 0.569 kappa: 0.485\n", "[[ 39 79 6]\n", " [ 0 952 2]\n", " [ 1 73 48]]\n", "rebalanced\n", "thresholds: [0.3, 0.25]\n", "accuracy: 0.892 balanced accuracy: 0.698 kappa: 0.645\n", "[[ 56 55 13]\n", " [ 6 933 15]\n", " [ 3 38 81]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.887 balanced accuracy: 0.745 kappa: 0.662\n", "[[ 81 35 8]\n", " [ 33 906 15]\n", " [ 11 34 77]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.853 balanced accuracy: 0.802 kappa: 0.627\n", "[[ 89 22 13]\n", " [ 57 836 61]\n", " [ 7 16 99]]\n", "--------------\n", "original\n", "accuracy: 0.906 balanced accuracy: 0.700 kappa: 0.676\n", "[[ 67 45 9]\n", " [ 1 952 2]\n", " [ 3 53 68]]\n", "rebalanced\n", "thresholds: [0.3, 0.25]\n", "accuracy: 0.925 balanced accuracy: 0.807 kappa: 0.773\n", "[[ 79 26 16]\n", " [ 4 933 18]\n", " [ 4 22 98]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.926 balanced accuracy: 0.814 kappa: 0.778\n", "[[ 83 23 15]\n", " [ 8 931 16]\n", " [ 5 22 97]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.849 balanced accuracy: 0.825 kappa: 0.632\n", "[[ 95 13 13]\n", " [ 74 821 60]\n", " [ 11 10 103]]\n", "--------------\n", "original\n", "accuracy: 0.928 balanced accuracy: 0.767 kappa: 0.763\n", "[[ 81 38 4]\n", " [ 0 954 0]\n", " [ 4 40 79]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.939 balanced accuracy: 0.847 kappa: 0.818\n", "[[ 93 22 8]\n", " [ 12 935 7]\n", " [ 6 18 99]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.939 balanced accuracy: 0.847 kappa: 0.818\n", "[[ 93 22 8]\n", " [ 12 935 7]\n", " [ 6 18 99]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.900 balanced accuracy: 0.871 kappa: 0.740\n", "[[102 10 11]\n", " [ 39 871 44]\n", " [ 7 9 107]]\n", "--------------\n", "original\n", "accuracy: 0.862 balanced accuracy: 0.556 kappa: 0.468\n", "[[ 59 63 2]\n", " [ 3 951 0]\n", " [ 7 91 24]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.891 balanced accuracy: 0.710 kappa: 0.650\n", "[[ 91 29 4]\n", " [ 21 926 7]\n", " [ 11 59 52]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.893 balanced accuracy: 0.738 kappa: 0.671\n", "[[ 89 28 7]\n", " [ 20 918 16]\n", " [ 9 48 65]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.1)\n", "accuracy: 0.782 balanced accuracy: 0.791 kappa: 0.521\n", "[[ 96 10 18]\n", " [ 54 742 158]\n", " [ 9 13 100]]\n", "--------------\n", "original\n", "accuracy: 0.866 balanced accuracy: 0.570 kappa: 0.488\n", "[[ 41 76 5]\n", " [ 2 952 2]\n", " [ 5 71 46]]\n", "rebalanced\n", "thresholds: [0.2, 0.25]\n", "accuracy: 0.906 balanced accuracy: 0.794 kappa: 0.723\n", "[[ 92 22 8]\n", " [ 12 913 31]\n", " [ 11 29 82]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.906 balanced accuracy: 0.794 kappa: 0.723\n", "[[ 92 22 8]\n", " [ 12 913 31]\n", " [ 11 29 82]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.863 balanced accuracy: 0.824 kappa: 0.654\n", "[[ 95 14 13]\n", " [ 27 842 87]\n", " [ 10 13 99]]\n", "--------------\n", "original\n", "accuracy: 0.887 balanced accuracy: 0.632 kappa: 0.582\n", "[[ 38 80 3]\n", " [ 0 954 2]\n", " [ 2 49 72]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.899 balanced accuracy: 0.805 kappa: 0.708\n", "[[ 82 35 4]\n", " [ 38 899 19]\n", " [ 4 21 98]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.899 balanced accuracy: 0.805 kappa: 0.708\n", "[[ 82 35 4]\n", " [ 38 899 19]\n", " [ 4 21 98]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.833 balanced accuracy: 0.840 kappa: 0.605\n", "[[ 98 17 6]\n", " [104 794 58]\n", " [ 4 11 108]]\n", "--------------\n", "original\n", "accuracy: 0.898 balanced accuracy: 0.686 kappa: 0.657\n", "[[ 56 53 14]\n", " [ 2 947 5]\n", " [ 6 42 75]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.917 balanced accuracy: 0.795 kappa: 0.754\n", "[[ 84 25 14]\n", " [ 10 927 17]\n", " [ 11 22 90]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.917 balanced accuracy: 0.802 kappa: 0.757\n", "[[ 79 23 21]\n", " [ 10 923 21]\n", " [ 9 16 98]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.874 balanced accuracy: 0.808 kappa: 0.675\n", "[[ 84 13 26]\n", " [ 33 862 59]\n", " [ 11 9 103]]\n", "--------------\n", "original\n", "accuracy: 0.893 balanced accuracy: 0.660 kappa: 0.619\n", "[[ 72 48 2]\n", " [ 3 952 1]\n", " [ 6 68 48]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.924 balanced accuracy: 0.820 kappa: 0.773\n", "[[110 9 3]\n", " [ 19 927 10]\n", " [ 13 37 72]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.924 balanced accuracy: 0.842 kappa: 0.781\n", "[[107 8 7]\n", " [ 19 918 19]\n", " [ 10 28 84]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.874 balanced accuracy: 0.869 kappa: 0.689\n", "[[113 1 8]\n", " [ 58 838 60]\n", " [ 11 13 98]]\n", "--------------\n", "original\n", "accuracy: 0.884 balanced accuracy: 0.630 kappa: 0.574\n", "[[ 60 61 2]\n", " [ 1 951 2]\n", " [ 1 72 50]]\n", "rebalanced\n", "thresholds: [0.25, 0.2]\n", "accuracy: 0.908 balanced accuracy: 0.761 kappa: 0.714\n", "[[ 84 27 12]\n", " [ 14 929 11]\n", " [ 3 43 77]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.908 balanced accuracy: 0.761 kappa: 0.714\n", "[[ 84 27 12]\n", " [ 14 929 11]\n", " [ 3 43 77]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.1)\n", "accuracy: 0.825 balanced accuracy: 0.820 kappa: 0.590\n", "[[ 96 13 14]\n", " [ 54 789 111]\n", " [ 4 14 105]]\n", "--------------\n", "original\n", "accuracy: 0.914 balanced accuracy: 0.729 kappa: 0.713\n", "[[ 79 31 12]\n", " [ 0 951 4]\n", " [ 2 54 67]]\n", "rebalanced\n", "thresholds: [0.3, 0.3]\n", "accuracy: 0.936 balanced accuracy: 0.807 kappa: 0.799\n", "[[ 90 19 13]\n", " [ 2 948 5]\n", " [ 4 34 85]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.939 balanced accuracy: 0.839 kappa: 0.817\n", "[[ 94 15 13]\n", " [ 3 939 13]\n", " [ 4 25 94]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.908 balanced accuracy: 0.855 kappa: 0.751\n", "[[100 8 14]\n", " [ 30 890 35]\n", " [ 5 18 100]]\n", "--------------\n", "original\n", "accuracy: 0.867 balanced accuracy: 0.568 kappa: 0.487\n", "[[ 53 62 7]\n", " [ 2 954 0]\n", " [ 3 86 33]]\n", "rebalanced\n", "thresholds: [0.25, 0.2]\n", "accuracy: 0.897 balanced accuracy: 0.730 kappa: 0.676\n", "[[ 80 28 14]\n", " [ 16 927 13]\n", " [ 8 45 69]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.897 balanced accuracy: 0.730 kappa: 0.676\n", "[[ 80 28 14]\n", " [ 16 927 13]\n", " [ 8 45 69]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.859 balanced accuracy: 0.800 kappa: 0.638\n", "[[ 98 10 14]\n", " [ 72 846 38]\n", " [ 12 23 87]]\n", "--------------\n", "original\n", "accuracy: 0.882 balanced accuracy: 0.620 kappa: 0.560\n", "[[ 36 86 1]\n", " [ 0 953 1]\n", " [ 0 53 70]]\n", "rebalanced\n", "thresholds: [0.2, 0.3]\n", "accuracy: 0.892 balanced accuracy: 0.750 kappa: 0.671\n", "[[ 76 44 3]\n", " [ 26 912 16]\n", " [ 7 33 83]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.3)\n", "accuracy: 0.892 balanced accuracy: 0.750 kappa: 0.671\n", "[[ 76 44 3]\n", " [ 26 912 16]\n", " [ 7 33 83]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.835 balanced accuracy: 0.810 kappa: 0.595\n", "[[ 88 28 7]\n", " [ 72 807 75]\n", " [ 2 14 107]]\n", "--------------\n", "original\n", "accuracy: 0.899 balanced accuracy: 0.674 kappa: 0.644\n", "[[ 72 48 3]\n", " [ 1 953 0]\n", " [ 5 64 54]]\n", "rebalanced\n", "thresholds: [0.3, 0.3]\n", "accuracy: 0.925 balanced accuracy: 0.803 kappa: 0.769\n", "[[ 97 21 5]\n", " [ 12 934 8]\n", " [ 7 37 79]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.919 balanced accuracy: 0.846 kappa: 0.770\n", "[[107 11 5]\n", " [ 22 908 24]\n", " [ 7 28 88]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.15000000000000002)\n", "accuracy: 0.875 balanced accuracy: 0.877 kappa: 0.693\n", "[[109 4 10]\n", " [ 31 834 89]\n", " [ 5 11 107]]\n", "--------------\n", "original\n", "accuracy: 0.895 balanced accuracy: 0.666 kappa: 0.629\n", "[[ 61 61 2]\n", " [ 2 951 1]\n", " [ 7 53 62]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.933 balanced accuracy: 0.819 kappa: 0.796\n", "[[ 92 29 3]\n", " [ 11 939 4]\n", " [ 13 20 89]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.923 balanced accuracy: 0.831 kappa: 0.776\n", "[[ 91 28 5]\n", " [ 10 920 24]\n", " [ 11 14 97]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.15000000000000002)\n", "accuracy: 0.894 balanced accuracy: 0.826 kappa: 0.712\n", "[[ 92 25 7]\n", " [ 23 882 49]\n", " [ 12 11 99]]\n", "--------------\n", "original\n", "accuracy: 0.858 balanced accuracy: 0.542 kappa: 0.435\n", "[[ 50 72 0]\n", " [ 0 953 1]\n", " [ 1 96 27]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.902 balanced accuracy: 0.758 kappa: 0.697\n", "[[ 88 30 4]\n", " [ 19 921 14]\n", " [ 9 42 73]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.889 balanced accuracy: 0.763 kappa: 0.675\n", "[[ 98 20 4]\n", " [ 38 902 14]\n", " [ 15 42 67]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.15000000000000002)\n", "accuracy: 0.847 balanced accuracy: 0.832 kappa: 0.627\n", "[[ 94 15 13]\n", " [ 37 814 103]\n", " [ 3 13 108]]\n", "--------------\n", "original\n", "accuracy: 0.863 balanced accuracy: 0.554 kappa: 0.458\n", "[[ 35 86 2]\n", " [ 1 954 0]\n", " [ 2 74 46]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.895 balanced accuracy: 0.776 kappa: 0.689\n", "[[ 87 34 2]\n", " [ 30 905 20]\n", " [ 9 31 82]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.895 balanced accuracy: 0.776 kappa: 0.689\n", "[[ 87 34 2]\n", " [ 30 905 20]\n", " [ 9 31 82]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.814 balanced accuracy: 0.818 kappa: 0.570\n", "[[106 13 4]\n", " [121 776 58]\n", " [ 10 17 95]]\n", "--------------\n", "original\n", "accuracy: 0.906 balanced accuracy: 0.703 kappa: 0.670\n", "[[ 89 33 0]\n", " [ 3 951 2]\n", " [ 0 75 47]]\n", "rebalanced\n", "thresholds: [0.3, 0.25]\n", "accuracy: 0.927 balanced accuracy: 0.810 kappa: 0.773\n", "[[101 18 3]\n", " [ 8 935 13]\n", " [ 6 40 76]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.921 balanced accuracy: 0.810 kappa: 0.760\n", "[[103 16 3]\n", " [ 16 927 13]\n", " [ 9 38 75]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.874 balanced accuracy: 0.838 kappa: 0.676\n", "[[107 10 5]\n", " [ 47 851 58]\n", " [ 11 20 91]]\n", "--------------\n", "original\n", "accuracy: 0.855 balanced accuracy: 0.538 kappa: 0.429\n", "[[ 51 70 2]\n", " [ 4 950 0]\n", " [ 3 95 25]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.892 balanced accuracy: 0.730 kappa: 0.660\n", "[[ 86 34 3]\n", " [ 20 919 15]\n", " [ 8 50 65]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.890 balanced accuracy: 0.756 kappa: 0.670\n", "[[ 84 33 6]\n", " [ 20 906 28]\n", " [ 6 39 78]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.861 balanced accuracy: 0.828 kappa: 0.649\n", "[[109 10 4]\n", " [ 57 835 62]\n", " [ 11 23 89]]\n", "--------------\n", "original\n", "accuracy: 0.882 balanced accuracy: 0.618 kappa: 0.564\n", "[[ 48 70 5]\n", " [ 2 953 0]\n", " [ 4 61 57]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.900 balanced accuracy: 0.735 kappa: 0.684\n", "[[ 81 36 6]\n", " [ 22 929 4]\n", " [ 11 41 70]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.25)\n", "accuracy: 0.902 balanced accuracy: 0.750 kappa: 0.695\n", "[[ 77 35 11]\n", " [ 22 925 8]\n", " [ 7 35 80]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.784 balanced accuracy: 0.789 kappa: 0.524\n", "[[ 98 9 16]\n", " [125 747 83]\n", " [ 13 13 96]]\n", "--------------\n", "original\n", "accuracy: 0.888 balanced accuracy: 0.638 kappa: 0.588\n", "[[ 53 67 3]\n", " [ 0 954 1]\n", " [ 0 63 59]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.919 balanced accuracy: 0.769 kappa: 0.740\n", "[[ 83 37 3]\n", " [ 10 941 4]\n", " [ 5 38 79]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.3)\n", "accuracy: 0.919 balanced accuracy: 0.769 kappa: 0.740\n", "[[ 83 37 3]\n", " [ 10 941 4]\n", " [ 5 38 79]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.867 balanced accuracy: 0.833 kappa: 0.660\n", "[[103 11 9]\n", " [ 56 842 57]\n", " [ 6 21 95]]\n", "--------------\n", "original\n", "accuracy: 0.848 balanced accuracy: 0.509 kappa: 0.385\n", "[[ 35 86 1]\n", " [ 1 953 0]\n", " [ 5 89 30]]\n", "rebalanced\n", "thresholds: [0.2, 0.2]\n", "accuracy: 0.883 balanced accuracy: 0.729 kappa: 0.642\n", "[[ 80 39 3]\n", " [ 27 908 19]\n", " [ 9 43 72]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.2)\n", "accuracy: 0.883 balanced accuracy: 0.729 kappa: 0.642\n", "[[ 80 39 3]\n", " [ 27 908 19]\n", " [ 9 43 72]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.835 balanced accuracy: 0.775 kappa: 0.580\n", "[[ 94 24 4]\n", " [ 87 822 45]\n", " [ 9 29 86]]\n", "--------------\n", "original\n", "accuracy: 0.868 balanced accuracy: 0.579 kappa: 0.500\n", "[[ 36 84 3]\n", " [ 1 951 2]\n", " [ 4 64 55]]\n", "rebalanced\n", "thresholds: [0.2, 0.25]\n", "accuracy: 0.897 balanced accuracy: 0.763 kappa: 0.687\n", "[[ 74 48 1]\n", " [ 23 912 19]\n", " [ 9 24 90]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.897 balanced accuracy: 0.763 kappa: 0.687\n", "[[ 74 48 1]\n", " [ 23 912 19]\n", " [ 9 24 90]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.860 balanced accuracy: 0.802 kappa: 0.635\n", "[[ 79 38 6]\n", " [ 42 845 67]\n", " [ 8 7 108]]\n", "--------------\n", "original\n", "accuracy: 0.856 balanced accuracy: 0.530 kappa: 0.417\n", "[[ 24 95 3]\n", " [ 1 955 0]\n", " [ 0 74 48]]\n", "rebalanced\n", "thresholds: [0.25, 0.25]\n", "accuracy: 0.901 balanced accuracy: 0.725 kappa: 0.678\n", "[[ 66 48 8]\n", " [ 9 935 12]\n", " [ 6 36 80]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.902 balanced accuracy: 0.761 kappa: 0.697\n", "[[ 81 37 4]\n", " [ 25 921 10]\n", " [ 10 32 80]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.857 balanced accuracy: 0.802 kappa: 0.634\n", "[[ 89 19 14]\n", " [ 47 842 67]\n", " [ 11 14 97]]\n", "--------------\n", "original\n", "accuracy: 0.866 balanced accuracy: 0.564 kappa: 0.482\n", "[[ 24 92 6]\n", " [ 0 954 1]\n", " [ 3 59 61]]\n", "rebalanced\n", "thresholds: [0.2, 0.25]\n", "accuracy: 0.907 balanced accuracy: 0.760 kappa: 0.715\n", "[[ 76 36 10]\n", " [ 14 929 12]\n", " [ 12 27 84]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.25)\n", "accuracy: 0.907 balanced accuracy: 0.760 kappa: 0.715\n", "[[ 76 36 10]\n", " [ 14 929 12]\n", " [ 12 27 84]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.1)\n", "accuracy: 0.827 balanced accuracy: 0.806 kappa: 0.590\n", "[[ 87 13 22]\n", " [ 44 798 113]\n", " [ 6 10 107]]\n", "--------------\n", "original\n", "accuracy: 0.888 balanced accuracy: 0.639 kappa: 0.592\n", "[[ 42 78 3]\n", " [ 1 953 0]\n", " [ 2 50 71]]\n", "rebalanced\n", "thresholds: [0.25, 0.3]\n", "accuracy: 0.910 balanced accuracy: 0.747 kappa: 0.709\n", "[[ 73 47 3]\n", " [ 11 937 6]\n", " [ 6 35 82]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.2)\n", "accuracy: 0.905 balanced accuracy: 0.769 kappa: 0.708\n", "[[ 69 46 8]\n", " [ 11 921 22]\n", " [ 3 24 96]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.811 balanced accuracy: 0.812 kappa: 0.565\n", "[[105 15 3]\n", " [147 773 34]\n", " [ 14 14 95]]\n", "--------------\n", "original\n", "accuracy: 0.913 balanced accuracy: 0.722 kappa: 0.704\n", "[[ 74 43 6]\n", " [ 1 953 1]\n", " [ 3 50 69]]\n", "rebalanced\n", "thresholds: [0.3, 0.3]\n", "accuracy: 0.927 balanced accuracy: 0.792 kappa: 0.771\n", "[[ 89 28 6]\n", " [ 6 943 6]\n", " [ 7 34 81]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.25)\n", "accuracy: 0.927 balanced accuracy: 0.804 kappa: 0.776\n", "[[ 87 27 9]\n", " [ 6 938 11]\n", " [ 5 29 88]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.15000000000000002)\n", "accuracy: 0.915 balanced accuracy: 0.855 kappa: 0.766\n", "[[ 97 14 12]\n", " [ 16 899 40]\n", " [ 7 13 102]]\n" ] } ], "source": [ "from sklearn.datasets import make_classification\n", "\n", "accum_10_80_10 = []\n", "\n", "for rep in range(50):\n", " print('--------------')\n", " # Generate a ternary imbalanced classification problem\n", " X, y = make_classification(n_samples=6000, n_features=20,\n", " n_informative=10, n_redundant=0, n_classes=3, \n", " random_state=0xf00d+rep, shuffle=False, weights = [0.1, 0.8, 0.1])\n", " run_ternary_experiment(X,y,accum_10_80_10)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Start by comparing the model-performance metrics kappa, balanced accuracy, and accuracy between the model with the greedy threshold shift based on kappa and the model with \"default thresholds\"." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "accum = accum_10_80_10\n", "figsize(9,6)\n", "scatter([x['orig-kappa'] for x in accum],[x['shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['orig-balanced'] for x in accum],[x['shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['orig-accuracy'] for x in accum],[x['shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('orig')\n", "ylabel('greedy shift');\n", "title('10-80-10');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The shift improves all three metrics for every dataset." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now compare the results for using a grid search based on Cohen's kappa to the greedy shift results:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABRzUlEQVR4nO3dd3hUZf7+8fcnk4SEFnoHAUV6aEEUUFQUUUGKva1iYdV1f66uCiIqYkNx18W2LroWvvYFRAQVRVDECgiGrggICR1MaAkp8/z+mEkIIWUCmcwkuV/XlSuZc86c+cwhJHee8xRzziEiIiISbiJCXYCIiIhIQRRSREREJCwppIiIiEhYUkgRERGRsKSQIiIiImFJIUVERETCkkKKiIiIhCWFFBEpETO73cwWm9khM3s9377+ZrbGzA6a2XwzO6GYc11mZqvNbJ+ZrTKzoXn2mZk9aWa7/R9PmZkVca6z/K+ZamYbC9jf0r//oL/Gc0r85kWkTCmkiEhJbQEeBV7Nu9HM6gHTgQeAOsBi4L3CTmJmTYE3gbuAmsA9wNtm1sB/yEhgKNAFiAcGAX8uoq4D/pruKWT/O8BSoC5wPzDVzOoXcT4RCTGFFBEpEefcdOfcDGB3vl3DgZXOuf8559KBcUAXM2tXyKmaASnOuU+cz2x8QeNE//7rgH8455Kcc8nAP4Dri6jrR+fc/wHr8+8zs5OB7sBDzrk059w0YDlwcUBvWkRCQiFFREpLR+DnnAfOuQPAb/7tBVkMrDazi8zM47/VcwhILOh8/q8LO1cgta13zu0rpfOJSBmIDHUBIlJhVAd25tuWCtQo6GDnXLaZTQHeBmKADOBSf7jJOV9qvnNVNzNzJV90LP+5cs7XtITnEZEypJYUESkt+/H1LcmrJrDPzFqY2f6cDwB/x9WngDOBaKAf8IqZdS3kfDWB/c45Z2Zj8pzvpeOpLfC3JyJlTSFFRErLSnydXAEws2r4+pesdM5tcs5Vz/nwH9IVWOCcW+yc8zrnFgE/AOcUdD7/1ysBnHOP5znfLQHW1trM8rbq5J5PRMKTQoqIlIiZRZpZDOABPGYWY2aRwAdAJzO72L//QSDRObemkFMtAk7PaTkxs27A6RzukzIFuMvMmppZE+DvwOtF1BXhf90o30OLMbNoAOfcL8Ay4CH/9mH4RgxNO+YLISJBZyW/tSsilZmZjQMeyrf5YefcOP8tnOeBE/C1ilzvnNtYxLluB/4GNMTXn+UF59w//PsMeBK4yX/4K8CowvqjmNmZwPx8m79yzp3p398SX8jpBWwC/uKcm1v0uxWRUFJIERERkbCk2z0iIiISlhRSREREJCwppIiIiEhYUkgRERGRsKSQIiIiImGp3E2LX69ePdeyZctQlyEiIiKlYMmSJbuccwWuSF7uQkrLli1ZvHhxqMsQERGRUmBmvxe2T7d7REREJCwppIiIiEhYUkgRERGRsFTu+qQUJDMzk6SkJNLT00NdioRITEwMzZo1IyoqKtSliIhIKakQISUpKYkaNWrQsmVLfGuSSWXinGP37t0kJSXRqlWrUJcjIiKlpELc7klPT6du3boKKJWUmVG3bl21pImIVDAVIqQACiiVnP79RUQqngoTUkJt48aNdOrUKdRliIiIVBgKKSIiIhKWghZSzOxVM9thZisK2W9m9qyZrTOzRDPrHqxa8puxNJk+E+bRavRs+kyYx4ylyaV6/vXr19OtWzd++OEHevfuTbdu3ejduzdr164F4PXXX2fIkCEMHDiQtm3b8vDDDwO+1ph27dpx3XXXER8fzyWXXMLBgwcBGD9+PD179qRTp06MHDkS51yp1iwiIhJugtmS8jowsIj95wNt/B8jgX8HsZZcM5Ymc9/05SSnpOGA5JQ07pu+vNSCytq1a7n44ot57bXXaN++PQsWLGDp0qWMHz+eMWPG5B73448/8tZbb7Fs2TL+97//5U71v3btWkaOHEliYiI1a9bkxRdfBOD2229n0aJFrFixgrS0NGbNmlUq9YqIiISroIUU59wCYE8RhwwBpjif74FaZtY4WPXkmDhnLWmZ2UdsS8vMZuKctcd97p07dzJkyBDefPNNunbtSmpqKpdeeimdOnXizjvvZOXKlbnHnnvuudStW5fY2FiGDx/OwoULAWjevDl9+vQB4JprrsndPn/+fHr16kXnzp2ZN2/eEecSEREJFuccsxK3kJHlLfPXDmWflKbA5jyPk/zbjmJmI81ssZkt3rlz53G96JaUtBJtL4m4uDiaN2/ON998A8ADDzzAWWedxYoVK/joo4+OGCKbfzRKzuOCtqenp3PbbbcxdepUli9fzs0336zhtiIiEnSb9xzk2v/+yO1vLy31rhGBCGVIKWjMaIEdLZxzk51zCc65hPr1C1zNOWBNasWWaHtJREdHM2PGDKZMmcLbb79NamoqTZv6ctfrr79+xLGff/45e/bsIS0tjRkzZuS2nmzatInvvvsOgHfeeYe+ffvmBpJ69eqxf/9+pk6dety1ioiIFCbb63h14QYGPLOAZZtTeHRoJy7p0azM6whlSEkCmud53AzYEuwXvee8tsRGeY7YFhvl4Z7z2pbK+atVq8asWbN45pln6Nq1K/fddx99+vQhO/vIW0x9+/bl2muvpWvXrlx88cUkJCQA0L59e9544w3i4+PZs2cPt956K7Vq1eLmm2+mc+fODB06lJ49e5ZKrSIiIvn9un0fl7z0LeNnreLU1nX47M4zuObUE4iIKPv5qCyYo0TMrCUwyzl31AQiZnYhcDtwAdALeNY5d0px50xISHA5nUxzrF69mvbt2wdc14ylyUycs5YtKWk0qRXLPee1ZWi3Au80BcXrr7/O4sWLef7554/YvnHjRgYNGsSKFQUOiJJilPT7QEREDsvI8vLSV7/x/Lx1VKvi4aHBHRnStUnQJ8s0syXOuYSC9gVt7R4zewc4E6hnZknAQ0AUgHPuJeBjfAFlHXAQGBGsWvIb2q1pmYYSERGRcJaYlMK9UxNZs20fg7s04aHBHahXvUqoywpuS0owlEZLilRM+j4QESmZ9Mxsnvn8F17+ej31a1Th0aGdObdDwzKtISQtKSIiIhK+vl+/m9HTEtm4+yBXntKc+y5oT82YqFCXdQSFFBERkUpkX3omEz5Zw1s/bKJFnaq8fVMvep9UL9RlFUghRUREpJKYt2Y793+wgu1707mpbyv+PqAtsdGe4p8YIgopIiIiFdyeAxmM/2glM5Zt4eSG1Xnx6t50a1E71GUVS6sgl4KNGzfSqdNRo6yLdP3114dkUrZjqVVERMon5xwzf97COf/8itnLt3JH/zbM+uvp5SKggFpSJASysrKIjNS3nohIMG1LTWfsjBXMXb2dLs3iePKSXrRrVDPUZZVI5WxJSXwfnukE42r5Pie+f9ynzMrK4rrrriM+Pp5LLrmEgwcPAjB+/Hh69uxJp06dGDlyJAUN+S7smDPPPJNRo0ZxyimncPLJJ/P1118DkJ2dzd13303nzp2Jj4/nueeeA2DJkiX069ePHj16cN5557F169bc7V26dOG0007jhRdeKLD+/fv3079/f7p3707nzp358MMPc/dNmTKF+Ph4unTpwrXXXgvA9u3bGTZsGF26dKFLly58++23R7XSPP3004wbNy73vYwZM4Z+/foxadIkPvroI3r16kW3bt0455xz2L59e24dI0aMyH1v06ZN47///S933nln7nlffvll7rrrrpL/I4mIVALOOd75cRPn/vMrFq7bydgL2zP9tj7lLqAAvjdTnj569Ojh8lu1atVR2wr183vOPdrQuYdqHv54tKFv+zHasGGDA9zChQudc86NGDHCTZw40Tnn3O7du3OPu+aaa9zMmTOdc85dd9117n//+1+Rx/Tr18/dddddzjnnZs+e7fr37++cc+7FF190w4cPd5mZmbnPz8jIcKeddprbsWOHc865d999140YMcI551znzp3dl19+6Zxz7u6773YdO3Y86j1kZma61NRU55xzO3fudCeeeKLzer1uxYoV7uSTT3Y7d+48otbLLrvMPfPMM84557KyslxKSorbsGHDEeeeOHGie+ihh3Lfy6233pq7b8+ePc7r9TrnnHv55Zdz3+e9997r7rjjjiOO279/v2vdurXLyMhwzjl32mmnucTExKPeQ4m+D0REKqCNu/a7K/7znTth1Cx3xX++cxt37Q91ScUCFrtCfudXvjb3L8ZDZr4VjzPTfNvjLzvm0zZv3jx3kcBrrrmGZ599lrvvvpv58+fz1FNPcfDgQfbs2UPHjh0ZPHjwEc8t6pjhw4cD0KNHDzZu3AjA3LlzueWWW3JvmdSpU4cVK1awYsUKzj33XMDX2tK4cWNSU1NJSUmhX79+AFx77bV88sknR9XvnGPMmDEsWLCAiIgIkpOT2b59O/PmzeOSSy6hXr16ua8FMG/ePKZMmQKAx+MhLi6OP/74o8hrdPnll+d+nZSUxOWXX87WrVvJyMigVatWue/t3XffzT2udm3ffdOzzz6bWbNm0b59ezIzM+ncuXORryUiUplkex2vfbOBpz9bS1REBE8M78wVPZsHfUr7YKt8ISU1qWTbA5T/G8HMSE9P57bbbmPx4sU0b96ccePG5a5onKO4Y6pU8U1L7PF4yMrKAnyBIv/rOefo2LFj7grKOVJSUgL6Jn3rrbfYuXMnS5YsISoqipYtW5Kenl7gaxUmMjISr9d7xHvLq1q1arlf//Wvf+Wuu+7ioosu4ssvv8y9LVTY69100008/vjjtGvXjhEjymwF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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-k-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-k-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-k-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-kappa');\n", "title('10-80-10');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here the changes are reasonably small, but they do tend to slightly favor the results of the grid search." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, do the equivalent plot comparing the result from using balanced accuracy in the grid search to the results from the greedy shift:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "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0KFD6dWrF927d+fTTz/NO/f2228TERFBZGQkN998MwCHDh1i7NixREZGEhkZyZo1a84bpfnHP/5BdHR03vfy0EMPMWTIEGbPns3ixYvp168fPXv25PLLL+fQoUN5cUyaNCnve5s/fz7/+9//uPfee/Pu+9prr3HfffeV/D+SiEgAsNby/k97ueKFlazedYRHRnZmwV0DK1yCAji+mYr01bt3b1vYli1bzjvm0qYPrX26kbWP1/7t6+lGjuOltHv3bgvY1atXW2utnTRpkp05c6a11tpjx47lXXfTTTfZRYsWWWutveWWW+zHH39c5DVDhgyx9913n7XW2piYGDt06FBrrbWvvvqqHTdunM3IyMh7f3p6uu3fv789fPiwtdbaDz74wE6aNMlaa2337t3tN998Y6219v7777ddu3Y973vIyMiwKSkp1lprjxw5Ytu1a2ezs7Pt5s2bbYcOHeyRI0cKxHrttdfaWbNmWWutzczMtMnJyXb37t0F7j1z5kz7+OOP530vd955Z96548eP2+zsbGutta+99lre9/nAAw/YKVOmFLju9OnTtm3btjY9Pd1aa23//v1tbGzsed9DiX4OREQqoT1HT9vr/vO9bTVtib3uP9/bPUdP+zqkYgHrrIt/8wNvzP2rJyGjUMfjjFTH8YhrS33bFi1a5DUJvOmmm3jxxRe5//77+frrr3n++ec5e/Ysx48fp2vXrowaNarAe4u6Zty4cQD07t2bPXv2ALB8+XLuuOOOvCmTunXrsnnzZjZv3swVV1wBOEZbmjRpQkpKCsnJyQwZMgSAm2++mc8+++y8+K21PPTQQ6xatYoqVaqQlJTEoUOHWLFiBRMmTKB+/fp5nwWwYsUK3n77bQCCgoIICwvjxIkTRT6jiRMn5v0+MTGRiRMncuDAAdLT02nTpk3e9/bBBx/kXVenjmPe9LLLLmPJkiV07tyZjIwMunfvXuRniYgEkqxsyxvf7eYfX2wnuEoVnh3Xnev6tPB6SXtvC7wkJSWxZMfdVPgHwRhDWload911F+vWraNFixZER0fndTTOVdw1F1zgKEscFBREZmYm4EgoCn+etZauXbvmdVDOlZyc7NYP6bvvvsuRI0dYv349wcHBtG7dmrS0NKef5UrVqlXJzs4u8L3lV6NGjbzf//nPf+a+++7j6quv5ptvvsmbFnL1ebfddhvPPPMMnTp1YtKkcuugICLi97YfPMUD82PZtC+Zyzs35Okx3WkcFuLrsDwi8NakhLloNe3quJv27t2blyC8//77DBo0KO8f6fr163P69Gmnu3ncuaawYcOGMWfOnLyk5fjx43Ts2JEjR47kxZCRkUF8fDzh4eGEhYWxevVqwJGMOJOSkkLDhg0JDg7m66+/5tdffwVg6NChfPTRRxw7dizvs3KP//vf/wYcozYnT56kUaNGHD58mGPHjnHu3DmWLFni8ntISUmhWTNH/6S33nqrwPeWv/Fi7uhMv3792LdvH++99x7XX399sc9IRKSyS8/M5l/Ld3DVS9+y7/hZXry+J6/9PqrSJCgQiEnK0McgOLTgseBQx/Ey6Ny5M2+99RYREREcP36cO++8k/DwcG6//Xa6d+/OmDFj6NOnz3nvc+eawm677TZatmyZt5j1vffeo1q1asybN49p06YRGRlJjx49WLNmDQBvvPEGd999N/379yc0NNTpPW+88UbWrVtHVFQU7777Lp06dQKga9euPPzwwwwZMoTIyMi8BauzZ8/m66+/pnv37vTu3Zv4+HiCg4N57LHH6NevH1dddVXePZyJjo7mmmuu4eKLL86bSgJ45JFHOHHiBN26dSMyMpKvv/4679y1117LwIED86aAREQC1cZ9yYx6aTX/Wr6Tkd2bsPy+IVwd6f2OxeUtMBsMxn7kWIOSkugYQRn6WJnWo0j5uOqqq7j33nsZOnSo0/NqMCgilV1qehb//GI7r3+3m0a1Q/j72G5c1ql8GwJ6mhoMFhZxrZKSCiQ5OZm+ffsSGRnpMkEREans1vxylOnz49h7/Cw39mvJ9N91opafNQT0tMBMUqRCCQ8PZ8eOHb4OQ0TEJ06mZfDs0q28/9M+WterzgeTL+KitvV8HVa5UJIiIiLip5ZvOcTDC+M4cuocfxrclr9e3sGvGwJ6mpIUERERP3Ps9DmiF29h8ab9dGpci9d+H0VE83Bfh1XulKSIiIj4CWstn27czxOL4zl9LpP7rujAHUPaUa1q4G3GBSUpIiIifmF/ciqPLNzMim2H6dkynOfHR9C+US1fh+VTSlJERER8KDvb8t5Pe5nx2Taysi2PXdWFWwa0JqhK5ap5UhpKUiqYzMzMvJ49IiJSse0+eobp82P5cfdxBl5Yj2fHRtCyXnVfh+U3AnKSKyYhhmHzhhHxVgTD5g0jJiHGI/cdM2YMvXv3pmvXrsydOxeAzz//nF69ehWo8XH69GkmTZpE9+7diYiIYP78+QDUrFkz717z5s3j1ltvBeDWW2/lvvvu49JLL2XatGn89NNPDBgwgJ49ezJgwAC2b98OOMrT33///Xn3femll/jqq68YO3Zs3n2//PLLvKaFIiLiG5lZ2fxn5S+M+Ncqthw4yfPjI3jnj/2UoBQScP9LHpMQQ/SaaNKyHD1zDpw5QPSaaABGth1Zpnu//vrr1K1bl9TUVPr06cPo0aO5/fbbWbVqFW3atMnre/PUU08RFhZGXFwcQLHdgwF27NjB8uXLCQoK4uTJk6xatYqqVauyfPlyHnroIebPn8/cuXPZvXs3GzZsoGrVqhw/fpw6depw9913c+TIERo0aMAbb7yhBn0iIj609cBJps2PJTYxhWFdGvHUmG40ql15+u14UsAlKbN/np2XoORKy0pj9s+zy5ykvPjii3zyyScA7Nu3j7lz5zJ48GDatGkDQN26dQFYvnw5H3zwQd773OlFc8011xAU5Ngbn5KSwi233MLOnTsxxpCRkZF33zvuuCNvOij3826++WbeeecdJk2axPfff8/bb79dpu9TRERK7lxmFq+s2MWr3/xCePVgXrmhF1d2b1zp+u14UsAlKQfPHCzRcXd98803LF++nO+//57q1atzySWXEBkZmTcVk5+11ukPZf5jud2Rc9WoUSPv948++iiXXnopn3zyCXv27OGSSy4p8r6TJk1i1KhRhISEcM0112hNi4hIOVv/6wmmzY9l1+HTjOvVjEdHdqFOjWq+DsvvBdyalMY1GpfouLtSUlKoU6cO1atXZ9u2bfzwww+cO3eOlStXsnv3boC86Z5hw4bx8ssv5703d7qnUaNGbN26lezs7LwRGVef1axZMwDefPPNvOPDhg1jzpw5ZGZmFvi8pk2b0rRpU55++um8dS4iIuJ9Z9MzeWJxPBPmrOHsuUzemNSHF67toQTFTQGXpEzpNYWQoIJzfyFBIUzpNaVM9x0xYgSZmZlERETw6KOPctFFF9GgQQPmzp3LuHHjiIyMZOLEiQA88sgjnDhxgm7duhEZGcnXX38NwIwZM7jqqqu47LLLaNKkicvPeuCBB3jwwQcZOHAgWVlZecdvu+02WrZsSUREBJGRkbz33nt552688UZatGhB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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-ba-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-ba-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-ba-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-balanced');\n", "title('10-80-10');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That plot makes it look like doing the threshold shifts using balanced accuracy doesn't improve kappa, but it's important to remember that this comparing the balanced accuracy shift vs the kappa shift.\n", "\n", "Using balanced accuracy to do the shift instead of kappa does actually help kappa too, as this plot shows:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABVW0lEQVR4nO3deXxU5fXH8c9hk4BKVFAhgIALICQRCKCiuKDgWhBx1yqtUrdK9ScK1oVaKyi2FqvWUqto3aqAqOCuKO4KIrsoAkICsgWCQAJZnt8fk8QkzExmkrmzft+vFy8yd27uPHMNzsl5znkec84hIiIiEm8axHoAIiIiIv4oSBEREZG4pCBFRERE4pKCFBEREYlLClJEREQkLilIERERkbikIEVERETikoIUEQmLmV1vZnPMbJeZTa7x3AAz+9bMdprZLDM7pJZrnW9mS83sZzNbYmZDqjxnZnafmW0u/3O/mVmQa51U/poFZrbKz/Mdyp/fWT7GU8J+8yISVQpSRCRca4F7gCeqHjSzlsA04A5gf2AO8L9AFzGzDOAZ4CZgX2AU8JyZHVh+yghgCJANZAFnAb8LMq4d5WMaFeD554F5wAHAH4EpZtYqyPVEJMYUpIhIWJxz05xz04HNNZ4aCix2zr3knCsCxgLZZtYlwKXaAludc284n5n4Ao1Dy5+/HPircy7XOZcH/BW4Isi4vnTO/RdYUfM5MzsC6Anc5ZwrdM5NBRYC54b0pkUkJhSkiEikdAPmVzxwzu0Afig/7s8cYKmZ/crMGpZP9ewCFvi7XvnXga4VythWOOd+jtD1RCQKGsV6ACKSNPYGNtY4VgDs4+9k51ypmT0NPAc0BXYD55UHNxXXK6hxrb3NzFz4m47VvFbF9TLCvI6IRJEyKSISKdvx1ZZUtS/ws5m1N7PtFX8AygtX7wdOBJoAJwCPm9lRAa63L7DdOefM7LYq13usPmML/e2JSLQpSBGRSFmMr8gVADNrjq++ZLFzbrVzbu+KP+WnHAXMds7Ncc6VOee+Ar4ATvF3vfKvFwM45+6tcr2rQxxbJzOrmtWpvJ6IxCcFKSISFjNrZGZNgYZAQzNramaNgJeB7mZ2bvnzdwILnHPfBrjUV8DxFZkTM+sBHM8vNSlPAzeZWYaZtQH+D5gcZFwNyl+3se+hNTWzJgDOue+Ab4C7yo+fg69jaGqdb4SIeM7Cn9oVkVRmZmOBu2oc/pNzbmz5FM7DwCH4siJXOOdWBbnW9cAfgIPw1bM84pz7a/lzBtwHXFl++uPArYHqUczsRGBWjcMfOudOLH++A74gpy+wGrjOOfdu8HcrIrGkIEVERETikqZ7REREJC4pSBEREZG4pCBFRERE4pKCFBEREYlLClJEREQkLiXcsvgtW7Z0HTp0iPUwREREJALmzp27yTnnd0fyhAtSOnTowJw5c2I9DBEREYkAM/sx0HOa7hEREZG4pCBFRERE4pKCFBEREYlLCVeT4k9xcTG5ubkUFRXFeigSI02bNqVt27Y0btw41kMREZEISYogJTc3l3322YcOHTrg25NMUolzjs2bN5Obm0vHjh1jPRwREYmQpJjuKSoq4oADDlCAkqLMjAMOOECZNBGRJJMUQQqgACXF6b+/iEjySZogJdZWrVpF9+7dYz0MERGRpKEgRUREROKSZ0GKmT1hZhvMbFGA583MHjKz5Wa2wMx6ejWWmqbPy6Pf+PfpOHom/ca/z/R5eRG9/ooVK+jRowdffPEFxx57LD169ODYY49l2bJlAEyePJnBgwdz2mmn0blzZ/70pz8BvmxMly5duPzyy8nKymLYsGHs3LkTgLvvvpvevXvTvXt3RowYgXMuomMWERGJN15mUiYDpwV5/nTg8PI/I4B/ejiWStPn5TFm2kLythbigLythYyZtjBigcqyZcs499xzefLJJ+natSuzZ89m3rx53H333dx2222V53355Zc8++yzfPPNN7z00kuVS/0vW7aMESNGsGDBAvbdd18effRRAK6//nq++uorFi1aRGFhITNmzIjIeEVEROKVZ0GKc242kB/klMHA087ncyDdzFp7NZ4KE95aRmFxabVjhcWlTHhrWb2vvXHjRgYPHswzzzzDUUcdRUFBAeeddx7du3fnxhtvZPHixZXnnnrqqRxwwAGkpaUxdOhQPv74YwDatWtHv379ALj00ksrj8+aNYu+ffuSmZnJ+++/X+1aIiIiXnHOMWPBWnaXlEX9tWNZk5IBrKnyOLf82B7MbISZzTGzORs3bqzXi67dWhjW8XC0aNGCdu3a8cknnwBwxx13cNJJJ7Fo0SJee+21ai2yNbtRKh77O15UVMS1117LlClTWLhwIVdddZXabUVExHN5Wwv59RNfcv1z8yJeGhGKWAYp/npG/RZaOOcmOedynHM5rVr53c05ZG3S08I6Ho4mTZowffp0nn76aZ577jkKCgrIyPDFXZMnT6527jvvvEN+fj6FhYVMnz69MnuyevVqPvvsMwCef/55jjvuuMqApGXLlmzfvp0pU6bUe6wiIiKBOOd4/svVDHpwNnN/3MKfB3djWK+2UR9HLIOUXKBdlcdtgbVev+ioQZ1Ja9yw2rG0xg0ZNahzRK7fvHlzZsyYwYMPPshRRx3FmDFj6NevH6Wl1aeYjjvuOC677DKOOuoozj33XHJycgDo2rUrTz31FFlZWeTn53PNNdeQnp7OVVddRWZmJkOGDKF3794RGauIiEhNFdmTMdMW0j1jX976Q38uO6YDDRpEfz0q87JLxMw6ADOcc3ssIGJmZwLXA2cAfYGHnHN9artmTk6OqygyrbB06VK6du0a8rimz8tjwlvLWLu1kDbpaYwa1JkhPfzONHli8uTJzJkzh4cffrja8VWrVnHWWWexaJHfhiipRbg/ByIi8gvnHC98tYa/zFxKmXOMOaMrl/Rp73lwYmZznXM5/p7zbO8eM3seOBFoaWa5wF1AYwDn3GPA6/gClOXATmC4V2OpaUiPjKgGJSIiIvEsd8tOxkxbyEffb+KYTgdw/7As2u3fLNbD8jaT4oVIZFIkOennQEQkPL7akzXc+3p0sydVxSSTIiIiIvErd8tORk9dyMfLN3HsoQdw37nxkT2pSkGKiIhICnHO8dyXq7l35lIc8Och3aOePQmVghQREZEUkQjZk6oUpIiIiCS5qtkTgHuGdOeSvu33WEA03mgX5AhYtWoV3bvv0WUd1BVXXBGTRdnqMlYREUlcuVt2cul/vuCPLy/iqPbpvPmH/lx69CFxH6CAMikSAyUlJTRqpB89EREvOed49ovVjHvdlz35yzndubhP/GdPqkrNTMqCF+HB7jA23ff3ghfrfcmSkhIuv/xysrKyGDZsGDt37gTg7rvvpnfv3nTv3p0RI0bgr+U70Dknnngit956K3369OGII47go48+AqC0tJSbb76ZzMxMsrKy+Mc//gHA3LlzOeGEE+jVqxeDBg1i3bp1lcezs7M55phjeOSRR/yOf/v27QwYMICePXuSmZnJK6+8Uvnc008/TVZWFtnZ2Vx22WUArF+/nnPOOYfs7Gyys7P59NNP98jSPPDAA4wdO7byvdx2222ccMIJTJw4kddee42+ffvSo0cPTjnlFNavX185juHDh1e+t6lTp/Kf//yHG2+8sfK6//73v7npppvC/48kIpIi1uTv5JLHv+D26b9kTy7pmxjZk2qccwn1p1evXq6mJUuW7HEsoPn/c+6eg5y7a99f/txzkO94Ha1cudIB7uOPP3bOOTd8+HA3YcIE55xzmzdvrjzv0ksvda+++qpzzrnLL7/cvfTSS0HPOeGEE9xNN93knHNu5syZbsCAAc455x599FE3dOhQV1xcXPn9u3fvdsccc4zbsGGDc865F154wQ0fPtw551xmZqb74IMPnHPO3Xzzza5bt257vIfi4mJXUFDgnHNu48aN7tBDD3VlZWVu0aJF7ogjjnAbN26sNtbzzz/fPfjgg84550pKStzWrVvdypUrq117woQJ7q677qp8L9dcc03lc/n5+a6srMw559y///3vyvd5yy23uJEjR1Y7b/v27a5Tp05u9+7dzjnnjjnmGLdgwYI93kNYPwciIkmotLTM/fezVe7IO95wR97xhnvm81WV/6+NV8AcF+AzP/Vy7u/dDcU1djwuLvQdzzq/zpdt165d5SaBl156KQ899BA333wzs2bN4v7772fnzp3k5+fTrVs3zj777GrfG+ycoUOHAtCrVy9WrVoFwLvvvsvVV19dOWWy//77s2jRIhYtWsSpp54K+LItrVu3pqCggK1bt3LCCScAcNlll/HGG2/sMX7nHLfddhuzZ8+mQYMG5OXlsX79et5//32GDRtGy5YtK18L4P333+fpp58GoGHDhrRo0YItW7YEvUcXXHBB5de5ublccMEFrFu3jt27d9OxY8fK9/bCCy9UnrfffvsBcPLJJzNjxgy6du1KcXExmZmZQV9LRCTVrMnfya1TF/DpD5s57rCWjD83k7b7xW/nTihSL0gpyA3veIhqptDMjKKiIq699lrmzJlDu3btGDt2bOWOxhVqO2evvfYCfIFASUkJ4Asoar6ec45u3bpV7qBcYevWrSGl95599lk2btzI3Llzady4MR06dKCoqMjvawXSqFEjysrKqr23qpo3b1759e9//3tuuukmfvWrX/HBBx9UTgsFer0rr7ySe++9ly5dujB8eNR2UBARiXtlZY5nv/TVnhhw7zmZXNSnXeJN7fiRejUpLQJsNR3oeIhWr15dGSA8//zzHHfccZUf0i1btmT79u1+u3lCOaemgQMH8thjj1UGLfn5+XTu3JmNGzdWjqG4uJjFixeTnp5OixYt+PjjjwFfMOJPQUEBBx54II0bN2bWrFn8+OOPAAwYMIAXX3yRzZs3V75WxfF//vOfgC9rs23bNg466CA2bNjA5s2b2bVrFzNmzAj4HgoKCsjI8O2f9NRTT1V7b1U3XqzIzvTt25c1a9bw3HPPcdFFF9V6j0REUkFF7ckd0xfR65D9eOvG/lycAK3FoUq9IGXAndA4rfqxxmm+4/XQtWtXnnrqKbKyssjPz+eaa64hPT2dq666iszMTIYMGULv3r33+L5QzqnpyiuvpH379pXFrM899xxNmjRhypQp3HrrrWRnZ3PUUUfx6aefAvDkk09y3XXXccwxx5CWlub3mpdccglz5swhJyeHZ599li5dugDQrVs3/vjHP3LCCSeQnZ1dWbA6ceJEZs2aRWZmJr169WLx4sU0btyYO++8k759+3LWWWdVXsOfsWPHct5553H88cdXTiUB3H777WzZsoXu3buTnZ3NrFmzKp87//zz6devX+UUkIhIqiorc/z3s1UM+vtsFuYVMG5oJk//pk/CT+/UlJobDC540VeDUpDry6AMuLNe9SgSHWeddRY33ngjAwYM8Pu8NhgUkVSwJn8nt0xZwGcrNnP84S0Zf24WGen+fwFNBNpgsKas8xWUJJCtW7fSp08fsrOzAwYoIiLJrqzM8ewXPzLujW9pYMa4oZlc2Ds5ak8CSc0gRRJKeno63333XayHISISM2vydzJqynw+X5GfFNmTUClIERERiVNlZY5nvviR8eXZk/FDM7kgybMnVSlIERERiUOrN+/klqm+7En/I1oxbmhmSmRPqlKQIiIiEkfKyhz//dyXPWnUwLjv3EzOz0md7ElVClJERETixOrNvtqTL1b6sifjh2bSJsWyJ1UpSBEREYkxZU/8U5CSYEpKSir37BERkcT34+Yd3DJlgbInfqTeirPAzBUzGThlIFlPZTFwykBmrpgZkesOGTKEXr160a1bNyZNmgTAm2++Sc+ePaut8bF9+3aGDx9OZmYmWVlZTJ06FYC999678lpTpkzhiiuuAOCKK67gpptu4qSTTuLWW2/lyy+/5Nhjj6VHjx4ce+yxLFu2DPAtT3/zzTdXXvcf//gH7733Huecc07ldd95553KTQtF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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['orig-kappa'] for x in accum],[x['global-ba-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['orig-balanced'] for x in accum],[x['global-ba-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['orig-accuracy'] for x in accum],[x['global-ba-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('orig')\n", "ylabel('grid-balanced');\n", "title('10-80-10');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Still, with these datasets it looks like optimizing the threshold with kappa instead of balanced accuracy is a better idea." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 0 is the majority class\n", "\n", "Now let's make sure that the code doesn't have some \"feature\" which causes it to only work with the middle class is the majority:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--------------\n", "original\n", "accuracy: 0.883 balanced accuracy: 0.623 kappa: 0.571\n", "[[953 0 1]\n", " [ 64 54 4]\n", " [ 67 4 53]]\n", "rebalanced\n", "thresholds: [0.6000000000000001, 0.3]\n", "accuracy: 0.911 balanced accuracy: 0.745 kappa: 0.723\n", "[[939 10 5]\n", " [ 30 76 16]\n", " [ 29 17 78]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.3)\n", "accuracy: 0.911 balanced accuracy: 0.745 kappa: 0.723\n", "[[939 10 5]\n", " [ 30 76 16]\n", " [ 29 17 78]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.3)\n", "accuracy: 0.812 balanced accuracy: 0.756 kappa: 0.556\n", "[[798 151 5]\n", " [ 9 97 16]\n", " [ 13 32 79]]\n", "--------------\n", "original\n", "accuracy: 0.875 balanced accuracy: 0.596 kappa: 0.526\n", "[[953 1 0]\n", " [ 71 51 1]\n", " [ 74 3 46]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.904 balanced accuracy: 0.778 kappa: 0.714\n", "[[916 30 8]\n", " [ 21 94 8]\n", " [ 37 11 75]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.25)\n", "accuracy: 0.904 balanced accuracy: 0.778 kappa: 0.714\n", "[[916 30 8]\n", " [ 21 94 8]\n", " [ 37 11 75]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.891 balanced accuracy: 0.796 kappa: 0.698\n", "[[890 55 9]\n", " [ 12 103 8]\n", " [ 26 21 76]]\n", "--------------\n", "original\n", "accuracy: 0.879 balanced accuracy: 0.607 kappa: 0.549\n", "[[954 0 0]\n", " [ 69 52 2]\n", " [ 68 6 49]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.905 balanced accuracy: 0.762 kappa: 0.710\n", "[[924 23 7]\n", " [ 32 79 12]\n", " [ 32 8 83]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.25)\n", "accuracy: 0.906 balanced accuracy: 0.736 kappa: 0.699\n", "[[936 13 5]\n", " [ 41 71 11]\n", " [ 37 6 80]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.868 balanced accuracy: 0.772 kappa: 0.645\n", "[[869 78 7]\n", " [ 23 88 12]\n", " [ 20 18 85]]\n", "--------------\n", "original\n", "accuracy: 0.892 balanced accuracy: 0.646 kappa: 0.608\n", "[[956 1 0]\n", " [ 51 64 7]\n", " [ 66 5 50]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.900 balanced accuracy: 0.760 kappa: 0.708\n", "[[920 29 8]\n", " [ 17 76 29]\n", " [ 22 15 84]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.905 balanced accuracy: 0.747 kappa: 0.711\n", "[[932 17 8]\n", " [ 22 71 29]\n", " [ 29 9 83]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.3)\n", "accuracy: 0.841 balanced accuracy: 0.746 kappa: 0.597\n", "[[844 108 5]\n", " [ 11 93 18]\n", " [ 14 35 72]]\n", "--------------\n", "original\n", "accuracy: 0.895 balanced accuracy: 0.674 kappa: 0.635\n", "[[948 4 3]\n", " [ 52 66 5]\n", " [ 55 7 60]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.906 balanced accuracy: 0.799 kappa: 0.731\n", "[[910 26 19]\n", " [ 18 88 17]\n", " [ 19 14 89]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.906 balanced accuracy: 0.799 kappa: 0.731\n", "[[910 26 19]\n", " [ 18 88 17]\n", " [ 19 14 89]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.873 balanced accuracy: 0.807 kappa: 0.672\n", "[[861 74 20]\n", " [ 11 95 17]\n", " [ 8 23 91]]\n", "--------------\n", "original\n", "accuracy: 0.832 balanced accuracy: 0.453 kappa: 0.271\n", "[[954 1 0]\n", " [100 21 1]\n", " [100 0 23]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.856 balanced accuracy: 0.664 kappa: 0.554\n", "[[898 33 24]\n", " [ 55 57 10]\n", " [ 41 10 72]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.25)\n", "accuracy: 0.856 balanced accuracy: 0.664 kappa: 0.554\n", "[[898 33 24]\n", " [ 55 57 10]\n", " [ 41 10 72]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.15000000000000002)\n", "accuracy: 0.749 balanced accuracy: 0.736 kappa: 0.450\n", "[[721 138 96]\n", " [ 28 74 20]\n", " [ 15 4 104]]\n", "--------------\n", "original\n", "accuracy: 0.868 balanced accuracy: 0.589 kappa: 0.513\n", "[[945 5 2]\n", " [ 71 51 3]\n", " [ 70 8 45]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.875 balanced accuracy: 0.693 kappa: 0.617\n", "[[911 24 17]\n", " [ 43 63 19]\n", " [ 38 9 76]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.875 balanced accuracy: 0.693 kappa: 0.617\n", "[[911 24 17]\n", " [ 43 63 19]\n", " [ 38 9 76]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.843 balanced accuracy: 0.714 kappa: 0.577\n", "[[857 77 18]\n", " [ 28 78 19]\n", " [ 27 20 76]]\n", "--------------\n", "original\n", "accuracy: 0.876 balanced accuracy: 0.596 kappa: 0.528\n", "[[955 1 0]\n", " [ 78 42 3]\n", " [ 64 3 54]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.912 balanced accuracy: 0.782 kappa: 0.732\n", "[[926 23 7]\n", " [ 35 76 12]\n", " [ 22 7 92]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.912 balanced accuracy: 0.782 kappa: 0.732\n", "[[926 23 7]\n", " [ 35 76 12]\n", " [ 22 7 92]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.875 balanced accuracy: 0.805 kappa: 0.670\n", "[[866 81 9]\n", " [ 20 91 12]\n", " [ 11 17 93]]\n", "--------------\n", "original\n", "accuracy: 0.874 balanced accuracy: 0.596 kappa: 0.531\n", "[[952 2 0]\n", " [ 79 36 8]\n", " [ 59 3 61]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.899 balanced accuracy: 0.771 kappa: 0.701\n", "[[912 28 14]\n", " [ 27 77 19]\n", " [ 32 1 90]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.25)\n", "accuracy: 0.902 balanced accuracy: 0.740 kappa: 0.694\n", "[[930 12 12]\n", " [ 39 65 19]\n", " [ 34 1 88]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.863 balanced accuracy: 0.794 kappa: 0.647\n", "[[852 86 16]\n", " [ 13 91 19]\n", " [ 16 15 92]]\n", "--------------\n", "original\n", "accuracy: 0.930 balanced accuracy: 0.792 kappa: 0.775\n", "[[947 2 7]\n", " [ 35 81 5]\n", " [ 31 4 88]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.3]\n", "accuracy: 0.918 balanced accuracy: 0.830 kappa: 0.765\n", "[[915 32 9]\n", " [ 22 84 15]\n", " [ 14 6 103]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.3)\n", "accuracy: 0.923 balanced accuracy: 0.820 kappa: 0.773\n", "[[926 21 9]\n", " [ 27 79 15]\n", " [ 16 4 103]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7000000000000001, 0.3)\n", "accuracy: 0.902 balanced accuracy: 0.828 kappa: 0.731\n", "[[894 53 9]\n", " [ 20 86 15]\n", " [ 11 9 103]]\n", "--------------\n", "original\n", "accuracy: 0.882 balanced accuracy: 0.627 kappa: 0.583\n", "[[950 3 1]\n", " [ 64 54 5]\n", " [ 53 15 55]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.894 balanced accuracy: 0.738 kappa: 0.687\n", "[[919 27 8]\n", " [ 28 66 29]\n", " [ 23 12 88]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.3)\n", "accuracy: 0.899 balanced accuracy: 0.755 kappa: 0.701\n", "[[919 29 6]\n", " [ 28 80 15]\n", " [ 23 20 80]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.35000000000000003)\n", "accuracy: 0.869 balanced accuracy: 0.747 kappa: 0.646\n", "[[881 70 3]\n", " [ 20 93 10]\n", " [ 14 40 69]]\n", "--------------\n", "original\n", "accuracy: 0.877 balanced accuracy: 0.609 kappa: 0.547\n", "[[951 2 2]\n", " [ 76 42 4]\n", " [ 58 5 60]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.898 balanced accuracy: 0.753 kappa: 0.692\n", "[[919 25 11]\n", " [ 35 70 17]\n", " [ 29 5 89]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.898 balanced accuracy: 0.753 kappa: 0.692\n", "[[919 25 11]\n", " [ 35 70 17]\n", " [ 29 5 89]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.875 balanced accuracy: 0.786 kappa: 0.661\n", "[[873 53 29]\n", " [ 22 80 20]\n", " [ 21 5 97]]\n", "--------------\n", "original\n", "accuracy: 0.868 balanced accuracy: 0.581 kappa: 0.504\n", "[[950 2 2]\n", " [ 72 48 3]\n", " [ 73 6 44]]\n", "rebalanced\n", "thresholds: [0.6000000000000001, 0.3]\n", "accuracy: 0.891 balanced accuracy: 0.704 kappa: 0.653\n", "[[929 15 10]\n", " [ 39 74 10]\n", " [ 42 15 66]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.3)\n", "accuracy: 0.891 balanced accuracy: 0.704 kappa: 0.653\n", "[[929 15 10]\n", " [ 39 74 10]\n", " [ 42 15 66]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.3)\n", "accuracy: 0.862 balanced accuracy: 0.741 kappa: 0.626\n", "[[873 71 10]\n", " [ 19 94 10]\n", " [ 22 34 67]]\n", "--------------\n", "original\n", "accuracy: 0.876 balanced accuracy: 0.595 kappa: 0.532\n", "[[955 1 0]\n", " [ 63 53 7]\n", " [ 75 3 43]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.914 balanced accuracy: 0.828 kappa: 0.757\n", "[[910 35 11]\n", " [ 11 95 17]\n", " [ 20 9 92]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.930 balanced accuracy: 0.825 kappa: 0.792\n", "[[933 13 10]\n", " [ 15 91 17]\n", " [ 23 6 92]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.897 balanced accuracy: 0.836 kappa: 0.725\n", "[[883 44 29]\n", " [ 9 89 25]\n", " [ 10 7 104]]\n", "--------------\n", "original\n", "accuracy: 0.875 balanced accuracy: 0.613 kappa: 0.542\n", "[[946 8 1]\n", " [ 69 52 1]\n", " [ 66 5 52]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.882 balanced accuracy: 0.739 kappa: 0.647\n", "[[902 36 17]\n", " [ 41 70 11]\n", " [ 31 6 86]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.882 balanced accuracy: 0.739 kappa: 0.647\n", "[[902 36 17]\n", " [ 41 70 11]\n", " [ 31 6 86]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.847 balanced accuracy: 0.767 kappa: 0.605\n", "[[842 74 39]\n", " [ 25 77 20]\n", " [ 14 12 97]]\n", "--------------\n", "original\n", "accuracy: 0.858 balanced accuracy: 0.537 kappa: 0.430\n", "[[955 0 0]\n", " [ 83 38 1]\n", " [ 85 1 37]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.2]\n", "accuracy: 0.887 balanced accuracy: 0.742 kappa: 0.667\n", "[[909 35 11]\n", " [ 30 75 17]\n", " [ 30 12 81]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.2)\n", "accuracy: 0.894 balanced accuracy: 0.716 kappa: 0.665\n", "[[929 16 10]\n", " [ 38 67 17]\n", " [ 39 7 77]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.873 balanced accuracy: 0.759 kappa: 0.649\n", "[[881 61 13]\n", " [ 23 82 17]\n", " [ 21 18 84]]\n", "--------------\n", "original\n", "accuracy: 0.893 balanced accuracy: 0.663 kappa: 0.626\n", "[[950 1 3]\n", " [ 36 80 6]\n", " [ 75 7 42]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.3]\n", "accuracy: 0.903 balanced accuracy: 0.760 kappa: 0.708\n", "[[923 16 15]\n", " [ 8 104 10]\n", " [ 51 16 57]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.3)\n", "accuracy: 0.907 balanced accuracy: 0.742 kappa: 0.703\n", "[[935 5 14]\n", " [ 16 96 10]\n", " [ 59 8 57]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.6500000000000001, 0.3)\n", "accuracy: 0.903 balanced accuracy: 0.760 kappa: 0.708\n", "[[923 16 15]\n", " [ 8 104 10]\n", " [ 51 16 57]]\n", "--------------\n", "original\n", "accuracy: 0.873 balanced accuracy: 0.592 kappa: 0.529\n", "[[951 1 2]\n", " [ 75 38 9]\n", " [ 60 6 58]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.909 balanced accuracy: 0.796 kappa: 0.738\n", "[[915 20 19]\n", " [ 26 75 21]\n", " [ 13 10 101]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.909 balanced accuracy: 0.796 kappa: 0.738\n", "[[915 20 19]\n", " [ 26 75 21]\n", " [ 13 10 101]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.864 balanced accuracy: 0.820 kappa: 0.662\n", "[[843 89 22]\n", " [ 9 92 21]\n", " [ 7 15 102]]\n", "--------------\n", "original\n", "accuracy: 0.890 balanced accuracy: 0.646 kappa: 0.603\n", "[[953 0 3]\n", " [ 73 42 6]\n", " [ 47 3 73]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.3]\n", "accuracy: 0.905 balanced accuracy: 0.776 kappa: 0.715\n", "[[919 22 15]\n", " [ 34 75 12]\n", " [ 23 8 92]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.902 balanced accuracy: 0.768 kappa: 0.705\n", "[[918 18 20]\n", " [ 34 68 19]\n", " [ 23 4 96]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.2)\n", "accuracy: 0.838 balanced accuracy: 0.777 kappa: 0.600\n", "[[827 94 35]\n", " [ 16 77 28]\n", " [ 11 10 102]]\n", "--------------\n", "original\n", "accuracy: 0.914 balanced accuracy: 0.721 kappa: 0.709\n", "[[955 0 1]\n", " [ 42 76 5]\n", " [ 45 10 66]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.3]\n", "accuracy: 0.937 balanced accuracy: 0.830 kappa: 0.810\n", "[[940 12 4]\n", " [ 13 100 10]\n", " [ 24 13 84]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.3)\n", "accuracy: 0.937 balanced accuracy: 0.830 kappa: 0.810\n", "[[940 12 4]\n", " [ 13 100 10]\n", " [ 24 13 84]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7000000000000001, 0.3)\n", "accuracy: 0.931 balanced accuracy: 0.840 kappa: 0.799\n", "[[928 24 4]\n", " [ 8 105 10]\n", " [ 21 16 84]]\n", "--------------\n", "original\n", "accuracy: 0.887 balanced accuracy: 0.650 kappa: 0.607\n", "[[946 5 3]\n", " [ 53 59 10]\n", " [ 56 9 59]]\n", "rebalanced\n", "thresholds: [0.6000000000000001, 0.3]\n", "accuracy: 0.902 balanced accuracy: 0.742 kappa: 0.699\n", "[[929 17 8]\n", " [ 31 70 21]\n", " [ 33 7 84]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.35000000000000003)\n", "accuracy: 0.900 balanced accuracy: 0.734 kappa: 0.691\n", "[[929 18 7]\n", " [ 31 78 13]\n", " [ 34 17 73]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.3)\n", "accuracy: 0.812 balanced accuracy: 0.758 kappa: 0.557\n", "[[797 148 9]\n", " [ 10 91 21]\n", " [ 11 27 86]]\n", "--------------\n", "original\n", "accuracy: 0.852 balanced accuracy: 0.518 kappa: 0.395\n", "[[954 1 0]\n", " [ 93 27 2]\n", " [ 82 0 41]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.901 balanced accuracy: 0.768 kappa: 0.701\n", "[[916 27 12]\n", " [ 40 73 9]\n", " [ 23 8 92]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.25)\n", "accuracy: 0.901 balanced accuracy: 0.768 kappa: 0.701\n", "[[916 27 12]\n", " [ 40 73 9]\n", " [ 23 8 92]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.888 balanced accuracy: 0.803 kappa: 0.692\n", "[[884 42 29]\n", " [ 29 77 16]\n", " [ 12 6 105]]\n", "--------------\n", "original\n", "accuracy: 0.855 balanced accuracy: 0.525 kappa: 0.408\n", "[[956 0 0]\n", " [ 91 30 1]\n", " [ 81 1 40]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.2]\n", "accuracy: 0.886 balanced accuracy: 0.711 kappa: 0.645\n", "[[920 17 19]\n", " [ 42 61 19]\n", " [ 34 6 82]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.25)\n", "accuracy: 0.892 balanced accuracy: 0.731 kappa: 0.664\n", "[[921 23 12]\n", " [ 42 72 8]\n", " [ 36 8 78]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.15000000000000002)\n", "accuracy: 0.822 balanced accuracy: 0.744 kappa: 0.564\n", "[[818 93 45]\n", " [ 14 76 32]\n", " [ 13 17 92]]\n", "--------------\n", "original\n", "accuracy: 0.912 balanced accuracy: 0.720 kappa: 0.701\n", "[[953 2 1]\n", " [ 45 75 3]\n", " [ 48 6 67]]\n", "rebalanced\n", "thresholds: [0.6000000000000001, 0.3]\n", "accuracy: 0.924 balanced accuracy: 0.804 kappa: 0.768\n", "[[934 15 7]\n", " [ 23 92 8]\n", " [ 30 8 83]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.3)\n", "accuracy: 0.924 balanced accuracy: 0.804 kappa: 0.768\n", "[[934 15 7]\n", " [ 23 92 8]\n", " [ 30 8 83]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.3)\n", "accuracy: 0.893 balanced accuracy: 0.824 kappa: 0.714\n", "[[883 66 7]\n", " [ 10 105 8]\n", " [ 15 22 84]]\n", "--------------\n", "original\n", "accuracy: 0.863 balanced accuracy: 0.552 kappa: 0.456\n", "[[954 0 0]\n", " [ 67 57 0]\n", " [ 96 2 24]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.904 balanced accuracy: 0.740 kappa: 0.695\n", "[[932 19 3]\n", " [ 32 87 5]\n", " [ 47 9 66]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.904 balanced accuracy: 0.740 kappa: 0.695\n", "[[932 19 3]\n", " [ 32 87 5]\n", " [ 47 9 66]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.881 balanced accuracy: 0.787 kappa: 0.672\n", "[[880 57 17]\n", " [ 16 94 14]\n", " [ 30 9 83]]\n", "--------------\n", "original\n", "accuracy: 0.859 balanced accuracy: 0.557 kappa: 0.468\n", "[[947 3 2]\n", " [ 61 55 8]\n", " [ 91 4 29]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.874 balanced accuracy: 0.720 kappa: 0.635\n", "[[898 35 19]\n", " [ 27 67 30]\n", " [ 35 5 84]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.874 balanced accuracy: 0.720 kappa: 0.635\n", "[[898 35 19]\n", " [ 27 67 30]\n", " [ 35 5 84]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.823 balanced accuracy: 0.745 kappa: 0.566\n", "[[816 89 47]\n", " [ 16 72 36]\n", " [ 16 9 99]]\n", "--------------\n", "original\n", "accuracy: 0.899 balanced accuracy: 0.683 kappa: 0.647\n", "[[950 4 1]\n", " [ 36 83 3]\n", " [ 73 4 46]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.917 balanced accuracy: 0.835 kappa: 0.765\n", "[[911 20 24]\n", " [ 8 103 11]\n", " [ 26 10 87]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.25)\n", "accuracy: 0.922 balanced accuracy: 0.823 kappa: 0.770\n", "[[922 12 21]\n", " [ 12 99 11]\n", " [ 29 9 85]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7000000000000001, 0.25)\n", "accuracy: 0.904 balanced accuracy: 0.837 kappa: 0.739\n", "[[892 36 27]\n", " [ 7 104 11]\n", " [ 19 15 89]]\n", "--------------\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "original\n", "accuracy: 0.877 balanced accuracy: 0.597 kappa: 0.543\n", "[[955 0 0]\n", " [ 67 51 5]\n", " [ 64 12 46]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.907 balanced accuracy: 0.765 kappa: 0.722\n", "[[927 27 1]\n", " [ 25 74 24]\n", " [ 25 9 88]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.3)\n", "accuracy: 0.910 balanced accuracy: 0.754 kappa: 0.722\n", "[[935 19 1]\n", " [ 30 76 17]\n", " [ 29 12 81]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.25)\n", "accuracy: 0.861 balanced accuracy: 0.783 kappa: 0.643\n", "[[855 99 1]\n", " [ 9 90 24]\n", " [ 14 20 88]]\n", "--------------\n", "original\n", "accuracy: 0.869 balanced accuracy: 0.578 kappa: 0.493\n", "[[953 0 2]\n", " [ 79 43 1]\n", " [ 75 0 47]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.894 balanced accuracy: 0.775 kappa: 0.691\n", "[[904 36 15]\n", " [ 22 94 7]\n", " [ 35 12 75]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.2)\n", "accuracy: 0.893 balanced accuracy: 0.775 kappa: 0.690\n", "[[903 25 27]\n", " [ 22 87 14]\n", " [ 33 7 82]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.874 balanced accuracy: 0.788 kappa: 0.661\n", "[[871 56 28]\n", " [ 12 96 15]\n", " [ 29 11 82]]\n", "--------------\n", "original\n", "accuracy: 0.900 balanced accuracy: 0.677 kappa: 0.649\n", "[[953 1 0]\n", " [ 73 40 10]\n", " [ 35 1 87]]\n", "rebalanced\n", "thresholds: [0.6000000000000001, 0.35000000000000003]\n", "accuracy: 0.910 balanced accuracy: 0.747 kappa: 0.719\n", "[[937 15 2]\n", " [ 45 62 16]\n", " [ 19 11 93]]\n", "global kappa rebalanced\n", "thresholds: (0.55, 0.3)\n", "accuracy: 0.906 balanced accuracy: 0.724 kappa: 0.698\n", "[[941 6 7]\n", " [ 52 49 22]\n", " [ 22 4 97]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.3)\n", "accuracy: 0.849 balanced accuracy: 0.793 kappa: 0.627\n", "[[834 111 9]\n", " [ 17 84 22]\n", " [ 4 18 101]]\n", "--------------\n", "original\n", "accuracy: 0.866 balanced accuracy: 0.571 kappa: 0.481\n", "[[951 2 1]\n", " [ 71 50 2]\n", " [ 85 0 38]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.911 balanced accuracy: 0.783 kappa: 0.730\n", "[[923 24 7]\n", " [ 21 94 8]\n", " [ 39 8 76]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.2)\n", "accuracy: 0.913 balanced accuracy: 0.761 kappa: 0.726\n", "[[936 10 8]\n", " [ 30 81 12]\n", " [ 42 2 79]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.889 balanced accuracy: 0.812 kappa: 0.698\n", "[[881 51 22]\n", " [ 10 101 12]\n", " [ 29 9 85]]\n", "--------------\n", "original\n", "accuracy: 0.873 balanced accuracy: 0.588 kappa: 0.518\n", "[[954 0 0]\n", " [ 67 56 1]\n", " [ 79 5 38]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.2]\n", "accuracy: 0.915 balanced accuracy: 0.799 kappa: 0.750\n", "[[922 21 11]\n", " [ 16 82 26]\n", " [ 27 1 94]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.2)\n", "accuracy: 0.915 balanced accuracy: 0.799 kappa: 0.750\n", "[[922 21 11]\n", " [ 16 82 26]\n", " [ 27 1 94]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.882 balanced accuracy: 0.795 kappa: 0.683\n", "[[879 60 15]\n", " [ 12 86 26]\n", " [ 22 6 94]]\n", "--------------\n", "original\n", "accuracy: 0.879 balanced accuracy: 0.611 kappa: 0.549\n", "[[953 0 3]\n", " [ 65 56 1]\n", " [ 70 6 46]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.3]\n", "accuracy: 0.899 balanced accuracy: 0.753 kappa: 0.700\n", "[[921 26 9]\n", " [ 23 91 8]\n", " [ 27 28 67]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.906 balanced accuracy: 0.775 kappa: 0.720\n", "[[921 20 15]\n", " [ 23 86 13]\n", " [ 26 16 80]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.863 balanced accuracy: 0.790 kappa: 0.648\n", "[[855 86 15]\n", " [ 10 99 13]\n", " [ 11 30 81]]\n", "--------------\n", "original\n", "accuracy: 0.887 balanced accuracy: 0.638 kappa: 0.590\n", "[[952 2 1]\n", " [ 43 79 0]\n", " [ 80 10 33]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.912 balanced accuracy: 0.766 kappa: 0.726\n", "[[932 16 7]\n", " [ 19 90 13]\n", " [ 44 7 72]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.3)\n", "accuracy: 0.901 balanced accuracy: 0.712 kappa: 0.678\n", "[[940 12 3]\n", " [ 26 89 7]\n", " [ 55 16 52]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.882 balanced accuracy: 0.782 kappa: 0.675\n", "[[884 61 10]\n", " [ 13 96 13]\n", " [ 27 18 78]]\n", "--------------\n", "original\n", "accuracy: 0.872 balanced accuracy: 0.583 kappa: 0.511\n", "[[954 0 1]\n", " [ 77 43 3]\n", " [ 68 5 49]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.887 balanced accuracy: 0.725 kappa: 0.660\n", "[[916 31 8]\n", " [ 30 70 23]\n", " [ 34 9 79]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.887 balanced accuracy: 0.725 kappa: 0.660\n", "[[916 31 8]\n", " [ 30 70 23]\n", " [ 34 9 79]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.25)\n", "accuracy: 0.807 balanced accuracy: 0.746 kappa: 0.541\n", "[[797 150 8]\n", " [ 9 91 23]\n", " [ 21 20 81]]\n", "--------------\n", "original\n", "accuracy: 0.853 balanced accuracy: 0.528 kappa: 0.410\n", "[[952 1 2]\n", " [114 6 2]\n", " [ 57 0 66]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.869 balanced accuracy: 0.703 kappa: 0.597\n", "[[900 39 16]\n", " [ 64 54 4]\n", " [ 27 7 89]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.2)\n", "accuracy: 0.870 balanced accuracy: 0.715 kappa: 0.605\n", "[[896 34 25]\n", " [ 64 52 6]\n", " [ 24 3 96]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.2)\n", "accuracy: 0.812 balanced accuracy: 0.803 kappa: 0.562\n", "[[780 146 29]\n", " [ 20 96 6]\n", " [ 13 11 99]]\n", "--------------\n", "original\n", "accuracy: 0.903 balanced accuracy: 0.684 kappa: 0.661\n", "[[955 0 0]\n", " [ 50 67 5]\n", " [ 55 6 62]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.922 balanced accuracy: 0.789 kappa: 0.764\n", "[[937 8 10]\n", " [ 28 72 22]\n", " [ 20 5 98]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.921 balanced accuracy: 0.770 kappa: 0.753\n", "[[943 3 9]\n", " [ 33 67 22]\n", " [ 23 5 95]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.906 balanced accuracy: 0.794 kappa: 0.731\n", "[[912 31 12]\n", " [ 23 77 22]\n", " [ 13 12 98]]\n", "--------------\n", "original\n", "accuracy: 0.879 balanced accuracy: 0.612 kappa: 0.550\n", "[[952 3 0]\n", " [ 60 59 4]\n", " [ 77 1 44]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.898 balanced accuracy: 0.744 kappa: 0.687\n", "[[923 20 12]\n", " [ 24 86 13]\n", " [ 44 9 69]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.898 balanced accuracy: 0.744 kappa: 0.687\n", "[[923 20 12]\n", " [ 24 86 13]\n", " [ 44 9 69]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.871 balanced accuracy: 0.775 kappa: 0.648\n", "[[872 63 20]\n", " [ 14 88 21]\n", " [ 32 5 85]]\n", "--------------\n", "original\n", "accuracy: 0.877 balanced accuracy: 0.604 kappa: 0.542\n", "[[953 0 0]\n", " [ 57 62 4]\n", " [ 83 3 38]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.908 balanced accuracy: 0.741 kappa: 0.716\n", "[[937 9 7]\n", " [ 25 74 24]\n", " [ 35 10 79]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.908 balanced accuracy: 0.741 kappa: 0.716\n", "[[937 9 7]\n", " [ 25 74 24]\n", " [ 35 10 79]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7000000000000001, 0.25)\n", "accuracy: 0.897 balanced accuracy: 0.753 kappa: 0.700\n", "[[917 29 7]\n", " [ 19 80 24]\n", " [ 28 16 80]]\n", "--------------\n", "original\n", "accuracy: 0.887 balanced accuracy: 0.636 kappa: 0.590\n", "[[953 1 0]\n", " [ 62 59 3]\n", " [ 65 4 53]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.3]\n", "accuracy: 0.916 balanced accuracy: 0.774 kappa: 0.740\n", "[[934 17 3]\n", " [ 33 81 10]\n", " [ 28 10 84]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.3)\n", "accuracy: 0.916 balanced accuracy: 0.774 kappa: 0.740\n", "[[934 17 3]\n", " [ 33 81 10]\n", " [ 28 10 84]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.25)\n", "accuracy: 0.860 balanced accuracy: 0.781 kappa: 0.637\n", "[[854 92 8]\n", " [ 20 88 16]\n", " [ 13 19 90]]\n", "--------------\n", "original\n", "accuracy: 0.906 balanced accuracy: 0.703 kappa: 0.679\n", "[[951 3 2]\n", " [ 41 78 3]\n", " [ 52 12 58]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.901 balanced accuracy: 0.765 kappa: 0.706\n", "[[918 31 7]\n", " [ 20 84 18]\n", " [ 30 13 79]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.25)\n", "accuracy: 0.912 balanced accuracy: 0.763 kappa: 0.728\n", "[[934 15 7]\n", " [ 22 82 18]\n", " [ 34 10 78]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.25)\n", "accuracy: 0.873 balanced accuracy: 0.775 kappa: 0.661\n", "[[876 73 7]\n", " [ 12 92 18]\n", " [ 17 25 80]]\n", "--------------\n", "original\n", "accuracy: 0.908 balanced accuracy: 0.707 kappa: 0.686\n", "[[952 0 2]\n", " [ 55 64 4]\n", " [ 43 6 74]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.3]\n", "accuracy: 0.922 balanced accuracy: 0.811 kappa: 0.770\n", "[[926 24 4]\n", " [ 19 94 10]\n", " [ 21 16 86]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.3)\n", "accuracy: 0.931 balanced accuracy: 0.796 kappa: 0.785\n", "[[945 5 4]\n", " [ 27 86 10]\n", " [ 26 11 86]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.3)\n", "accuracy: 0.902 balanced accuracy: 0.812 kappa: 0.727\n", "[[898 52 4]\n", " [ 15 98 10]\n", " [ 18 19 86]]\n", "--------------\n", "original\n", "accuracy: 0.864 balanced accuracy: 0.567 kappa: 0.475\n", "[[951 5 0]\n", " [ 64 56 2]\n", " [ 89 3 30]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.890 balanced accuracy: 0.716 kappa: 0.652\n", "[[924 28 4]\n", " [ 34 80 8]\n", " [ 48 10 64]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.890 balanced accuracy: 0.716 kappa: 0.652\n", "[[924 28 4]\n", " [ 34 80 8]\n", " [ 48 10 64]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.839 balanced accuracy: 0.718 kappa: 0.565\n", "[[853 75 28]\n", " [ 26 78 18]\n", " [ 33 13 76]]\n", "--------------\n", "original\n", "accuracy: 0.894 balanced accuracy: 0.659 kappa: 0.622\n", "[[953 0 2]\n", " [ 59 60 3]\n", " [ 57 6 60]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.907 balanced accuracy: 0.788 kappa: 0.725\n", "[[917 23 15]\n", " [ 33 77 12]\n", " [ 22 6 95]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.907 balanced accuracy: 0.788 kappa: 0.725\n", "[[917 23 15]\n", " [ 33 77 12]\n", " [ 22 6 95]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.25)\n", "accuracy: 0.845 balanced accuracy: 0.814 kappa: 0.625\n", "[[820 119 16]\n", " [ 12 98 12]\n", " [ 7 20 96]]\n", "--------------\n", "original\n", "accuracy: 0.859 balanced accuracy: 0.542 kappa: 0.444\n", "[[954 0 0]\n", " [ 70 47 5]\n", " [ 92 2 30]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.2]\n", "accuracy: 0.884 balanced accuracy: 0.710 kappa: 0.645\n", "[[917 21 16]\n", " [ 31 66 25]\n", " [ 41 5 78]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.25)\n", "accuracy: 0.882 balanced accuracy: 0.700 kappa: 0.637\n", "[[918 29 7]\n", " [ 31 74 17]\n", " [ 41 17 66]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.2)\n", "accuracy: 0.808 balanced accuracy: 0.717 kappa: 0.530\n", "[[810 125 19]\n", " [ 18 79 25]\n", " [ 20 23 81]]\n", "--------------\n", "original\n", "accuracy: 0.848 balanced accuracy: 0.502 kappa: 0.369\n", "[[955 0 0]\n", " [105 14 3]\n", " [ 75 0 48]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.895 balanced accuracy: 0.738 kappa: 0.676\n", "[[921 27 7]\n", " [ 38 74 10]\n", " [ 33 11 79]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.2)\n", "accuracy: 0.896 balanced accuracy: 0.745 kappa: 0.681\n", "[[919 20 16]\n", " [ 38 68 16]\n", " [ 31 4 88]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.872 balanced accuracy: 0.775 kappa: 0.650\n", "[[873 61 21]\n", " [ 23 83 16]\n", " [ 23 10 90]]\n", "--------------\n", "original\n", "accuracy: 0.856 balanced accuracy: 0.532 kappa: 0.420\n", "[[954 1 0]\n", " [ 83 37 3]\n", " [ 86 0 36]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.891 balanced accuracy: 0.717 kappa: 0.657\n", "[[924 17 14]\n", " [ 47 66 10]\n", " [ 31 12 79]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.25)\n", "accuracy: 0.891 balanced accuracy: 0.717 kappa: 0.657\n", "[[924 17 14]\n", " [ 47 66 10]\n", " [ 31 12 79]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.848 balanced accuracy: 0.749 kappa: 0.595\n", "[[851 73 31]\n", " [ 33 74 16]\n", " [ 18 12 92]]\n", "--------------\n", "original\n", "accuracy: 0.846 balanced accuracy: 0.508 kappa: 0.390\n", "[[950 0 2]\n", " [ 96 22 7]\n", " [ 74 6 43]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.25]\n", "accuracy: 0.863 balanced accuracy: 0.707 kappa: 0.599\n", "[[888 44 20]\n", " [ 46 62 17]\n", " [ 29 9 85]]\n", "global kappa rebalanced\n", "thresholds: (0.7000000000000001, 0.2)\n", "accuracy: 0.861 balanced accuracy: 0.711 kappa: 0.597\n", "[[884 38 30]\n", " [ 46 58 21]\n", " [ 29 3 91]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.8, 0.2)\n", "accuracy: 0.795 balanced accuracy: 0.734 kappa: 0.513\n", "[[783 135 34]\n", " [ 24 80 21]\n", " [ 20 12 91]]\n", "--------------\n", "original\n", "accuracy: 0.858 balanced accuracy: 0.558 kappa: 0.454\n", "[[946 2 5]\n", " [ 88 36 0]\n", " [ 73 2 48]]\n", "rebalanced\n", "thresholds: [0.7000000000000001, 0.3]\n", "accuracy: 0.895 balanced accuracy: 0.749 kappa: 0.688\n", "[[915 29 9]\n", " [ 36 83 5]\n", " [ 22 25 76]]\n", "global kappa rebalanced\n", "thresholds: (0.6500000000000001, 0.3)\n", "accuracy: 0.902 balanced accuracy: 0.738 kappa: 0.695\n", "[[930 14 9]\n", " [ 42 77 5]\n", " [ 31 16 76]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.887 balanced accuracy: 0.781 kappa: 0.683\n", "[[890 39 24]\n", " [ 29 81 14]\n", " [ 18 12 93]]\n", "--------------\n", "original\n", "accuracy: 0.887 balanced accuracy: 0.644 kappa: 0.588\n", "[[949 4 2]\n", " [ 56 67 0]\n", " [ 72 2 48]]\n", "rebalanced\n", "thresholds: [0.6500000000000001, 0.25]\n", "accuracy: 0.912 balanced accuracy: 0.800 kappa: 0.737\n", "[[919 21 15]\n", " [ 28 87 8]\n", " [ 31 2 89]]\n", "global kappa rebalanced\n", "thresholds: (0.6000000000000001, 0.25)\n", "accuracy: 0.909 balanced accuracy: 0.768 kappa: 0.716\n", "[[928 13 14]\n", " [ 39 76 8]\n", " [ 33 2 87]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.7500000000000001, 0.2)\n", "accuracy: 0.890 balanced accuracy: 0.828 kappa: 0.704\n", "[[876 47 32]\n", " [ 13 97 13]\n", " [ 21 6 95]]\n" ] } ], "source": [ "accum_80_10_10 = []\n", "\n", "for rep in range(50):\n", " print('--------------')\n", " # Generate a ternary imbalanced classification problem\n", " X, y = make_classification(n_samples=6000, n_features=20,\n", " n_informative=10, n_redundant=0, n_classes=3, \n", " random_state=0xf00d+rep, shuffle=False, weights = [0.8, 0.1, 0.1])\n", " run_ternary_experiment(X,y,accum_80_10_10)\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABXwElEQVR4nO3dd3hUZfr/8fedEEhAOohUwUZPKKEIWFFx1wKiYsNVVqUoLqu71rWg7ndF2f25KCqyrg2kLSiCqOwqWMBK6CgoAkIoElpogbTn98ckIYSZZJLMZCYzn9d15Qpzzpkz95lJOHeecj/mnENEREQk3MSEOgARERERb5SkiIiISFhSkiIiIiJhSUmKiIiIhCUlKSIiIhKWlKSIiIhIWFKSIiIiImFJSYqIlJqZtTSzD8xsr5ntMLPxZlYlb19fM1trZofNbKGZnVrMeaqa2Uwz22RmzszOL7LfzOwZM9ud9/WsmVkx57sg7zXTzWyTj7gX5sW21swuKvObICJBpyRFRMriJWAn0BjoBJwH3GlmDYB3gEeBesASYHoJ51oEDAZ2eNk3FBgAJAGJwOXAsGLOdQh4DbjPx/6pwDKgPvAXYKaZNSwhPhEJEVPFWREpLTP7AfiTc+6DvMdjgVpACnCrc65X3vYawC6gs3NubQnnTAUGO+c+LbTtS+AN59zEvMe3AXc453qWcK6LgFedcy0LbTsLWAU0cM4dyNv2BfC2c25CKS5fRCqIWlJEpCzGAdebWXUzawr8BvgIaA+syD/IOXcI+Dlve1kcd768f5fnXBvyE5QAnE9EgkxJioiUxWd4bu77gVQ83TqzgZOA9CLHpgM1y/g6Rc+XDpxU3LiUUpyrvLGJSJApSRGRUjGzGGA+nrEnNYAGQF3gGeAgnm6fwmoBB8yshZkdzP/y8+WKnq8WcNA558zs4ULn86e7xmdsfsYiIhVMSYqIlFY9oDkw3jl31Dm3G3gd+C2wBs8gV6BgTMrpwBrn3Gbn3En5X36+1nHny/v3GgDn3N8KnW+4n+c6zcwKt5wUnE9Ewo+SFBEpFefcLmAjMMLMqphZHeAWPOM73gU6mNnVZhYPPAasLG7QrJlVyzsWoKqZxRfqznkLuNfMmppZE+BPwBvFnCsm71xxnocWb2ZV8+L+EVgOPJ63/So8M4Zmle2dEJFgU5IiImUxELgUSAPWA9nAPc65NOBq4P+AvUAP4PoSzrUOyACa4ulGygDya6u8AszFMytnNTAvb5sv5+Y9/wOgRd6//1to//VAcl5sY4Br8mIWkTCkKcgiIiISltSSIiIiImFJSYqIiIiEJSUpIiIiEpaUpIiIiEhYUpIiIiIiYalKqAMorQYNGriWLVuGOgwREREJgJSUlF3OOa+rkVe6JKVly5YsWbIk1GGIiIhIAJjZL772qbtHREREwpKSFBEREQlLSlJEREQkLFW6MSneZGVlkZqaypEjR0IdioRIfHw8zZo1Iy4uLtShiIhIgEREkpKamkrNmjVp2bIlxxZPlWjhnGP37t2kpqbSqlWrUIcjIiIBEhHdPUeOHKF+/fpKUKKUmVG/fn21pImIRJiISFIAJShRTp+/iEjkiZgkJdQ2bdpEhw4dQh2GiIhIxFCSIiIiImEpaEmKmb1mZjvNbLWP/WZmz5vZejNbaWZdghVLUbOXbaX3mAW0enAevccsYPayrQE9/4YNG+jcuTPffPMNvXr1onPnzvTq1Yt169YB8MYbb9C/f38uvfRSWrduzRNPPAF4WmPatGnDLbfcQmJiItdccw2HDx8G4Mknn6Rbt2506NCBoUOH4pwLaMwiIiLhJpgtKW8Alxaz/zfAmXlfQ4GXgxhLgdnLtvLQO6vYui8DB2zdl8FD76wKWKKybt06rr76al5//XXatm3L559/zrJly3jyySd5+OGHC4779ttvefvtt1m+fDn/+c9/Ckr9r1u3jqFDh7Jy5Upq1arFSy+9BMDIkSP57rvvWL16NRkZGbz//vsBiVdERCRcBS1Jcc59Duwp5pD+wFvO42ugjpk1DlY8+cbOX0dGVs5x2zKychg7f125z52Wlkb//v2ZPHkynTp1Ij09nWuvvZYOHTpwzz33sGbNmoJjL774YurXr09CQgIDBw5k0aJFADRv3pzevXsDMHjw4ILtCxcupEePHnTs2JEFCxYcdy4REZFgcc4xZ8U2snJyK/y1QzkmpSmwpdDj1LxtJzCzoWa2xMyWpKWlletFt+3LKNX20qhduzbNmzdn8eLFADz66KNccMEFrF69mrlz5x43RbbobJT8x962HzlyhDvvvJOZM2eyatUq7rjjDk23FRGRoDucmc2oacv5w9RlvLs0sEMj/BHKJMXbnFGvAy2ccxOdc8nOueSGDb2u5uy3JnUSSrW9NKpWrcrs2bN56623mDJlCunp6TRt6sm73njjjeOO/d///seePXvIyMhg9uzZBa0nmzdv5quvvgJg6tSp9OnTpyAhadCgAQcPHmTmzJnljlVERKQ4v+w+xMCXvmTuym3c168113RtVuExhDJJSQWaF3rcDNgW7Be9r19rEuJij9uWEBfLff1aB+T8NWrU4P333+e5556jU6dOPPTQQ/Tu3ZucnOO7mPr06cPNN99Mp06duPrqq0lOTgagbdu2vPnmmyQmJrJnzx5GjBhBnTp1uOOOO+jYsSMDBgygW7duAYlVRETEm4Vrd3LFC4vYnn6EN4Z0564LziAmpuLrUVkwZ4mYWUvgfefcCQVEzOwyYCTwW6AH8LxzrntJ50xOTnb5g0zz/fDDD7Rt29bvuGYv28rY+evYti+DJnUSuK9fawZ09trTFBRvvPEGS5YsYfz48cdt37RpE5dffjmrV3udECUlKO3PgYiIHC831/HCgvX885MfaXtKLV65uSvN61UP6muaWYpzLtnbvqCt3WNmU4HzgQZmlgo8DsQBOOcmAB/gSVDWA4eBIcGKpagBnZtWaFIiIiIS7tIzsrh3+nI+WbuTqzo35W9XdSShamzJTwyioLakBEMgWlIkMunnQESkbNbtOMDwySls2XOYRy9vx+/OPrXClhsJSUuKiIiIhL/3V27j/pkrqVGtClOH9qRby3qhDqmAkhQREZEolJ2Ty7Pz1zHx8w10PbUuL93UhUa14kMd1nGUpIiIiESZ3QePMnLKMr7asJube57Ko5e3o2qV8FvOT0mKiIhIFFmxZR8jJqew61AmY69J5Nrk5iU/KUTCL22qhDZt2kSHDifMsi7WrbfeGpKibGWJVUREIsP07zZz7YSvMDNmDe8V1gkKqCVFQiA7O5sqVfSjJyJSUY5m5/DE3O+Z8s1m+pzRgOdv6Ey9GlVDHVaJorMlZeUMeK4DjK7j+b5yRrlPmZ2dzS233EJiYiLXXHMNhw8fBuDJJ5+kW7dudOjQgaFDh+JtyrevY84//3weeOABunfvzllnncUXX3wBQE5ODn/+85/p2LEjiYmJvPDCCwCkpKRw3nnn0bVrV/r168f27dsLticlJXH22Wfz4osveo3/4MGD9O3bly5dutCxY0fee++9gn1vvfUWiYmJJCUlcfPNNwPw66+/ctVVV5GUlERSUhJffvnlCa00f//73xk9enTBtTz88MOcd955jBs3jrlz59KjRw86d+7MRRddxK+//loQx5AhQwqubdasWfz73//mnnvuKTjvv/71L+69997Sf0giIlFoe3oG173yNVO+2czw807nzd93rxQJCuBZ3bAyfXXt2tUV9f3335+wzacV0537ayPnHq917OuvjTzby2jjxo0OcIsWLXLOOTdkyBA3duxY55xzu3fvLjhu8ODBbs6cOc4552655Rb3n//8p9hjzjvvPHfvvfc655ybN2+e69u3r3POuZdeeskNHDjQZWVlFTw/MzPTnX322W7nzp3OOeemTZvmhgwZ4pxzrmPHju7TTz91zjn35z//2bVv3/6Ea8jKynLp6enOOefS0tLc6aef7nJzc93q1avdWWed5dLS0o6LddCgQe65555zzjmXnZ3t9u3b5zZu3HjcuceOHesef/zxgmsZMWJEwb49e/a43Nxc55xz//rXvwqu8/7773ejRo067riDBw+60047zWVmZjrnnDv77LPdypUrT7iGUv0ciIhEga9+3uW6PvVf1+7RD90HK7eFOhyvgCXOxz0/+lpSPnkSsoqseJyV4dleDs2bNy9YJHDw4MEsWrQIgIULF9KjRw86duzIggULWLNmzQnPLe6YgQMHAtC1a1c2bdoEwMcff8zw4cMLukzq1avHunXrWL16NRdffDGdOnXir3/9K6mpqaSnp7Nv3z7OO+88gIKWkKKcczz88MMkJiZy0UUXsXXrVn799VcWLFjANddcQ4MGDQpeC2DBggWMGDECgNjYWGrXrl3ie3TdddcV/Ds1NZV+/frRsWNHxo4dW3DNH3/8MXfddVfBcXXr1qVGjRpceOGFvP/++6xdu5asrCw6duxY4uuJiEQr5xz/XrSRm179hlrxccy+qze/6dg41GGVWvQNDEhPLd12PxWtzGdmHDlyhDvvvJMlS5bQvHlzRo8eXbCicb6SjqlWrRrgSQSys7MBzw9f0ddzztG+ffuCFZTz7du3z6+qgW+//TZpaWmkpKQQFxdHy5YtOXLkiNfX8qVKlSrk5uYed22F1ahRo+Dfd999N/feey9XXnkln376aUG3kK/Xu/322/nb3/5GmzZtGDKkwlZQEBGpdA5nZvPQO6t4b/k2Lm7XiH8MSqJWfFyowyqT6GtJqe1jqWlf2/20efPmggRh6tSp9OnTp+Am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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "accum = accum_80_10_10\n", "figsize(9,6)\n", "scatter([x['orig-kappa'] for x in accum],[x['shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['orig-balanced'] for x in accum],[x['shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['orig-accuracy'] for x in accum],[x['shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('orig')\n", "ylabel('greedy shift');\n", "title('80-10-10');" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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uzNjxgwA/ve//9GnT59ia3zs37+fsWPHkpSURHJyMrNmzQKgfv36hdeaOXMmV155JQBXXnklN998M6eddhoTJkzgq6++YsCAAfTu3ZsBAwawZs0aILA8/S233FJ43UcffZQPPviAkSNHFl73vffeK9y0UEREwiM3z88TH/3E2f/8mNVb9vLQ6GReuKq/AkoJte6f5PPXzWfSZ5PIzgvsmbPlwBYmfTYJgHOPO/eYrv3000/TuHFjsrKy6NevH8OHD+eaa67h448/pmPHjoX73tx3333Ex8ezYsUKgCPuHgzwww8/8P777+PxeNi7dy8ff/wx0dHRvP/++9x+++3MmjWLGTNmsH79epYvX050dDS7d++mUaNG/PGPf2THjh00bdqUZ555Rhv0iYiE0Xdb9jJhViqpaZmc1a05943oQfOGNWe/ncpU60LKtK+nFQaUAtl52Uz7etoxh5RHHnmEN954A4BNmzYxY8YMTjnlFDp27AhA48aNAXj//fd55ZVXCt8XzF40F1xwAR5PYG58ZmYmV1xxBT/++CNmhs/nK7zuddddV/g4qODzLr/8cl544QXGjh3L559/zvPPP39M36eIiARn/rr5TPt6GlsPbKVZXGs6cQPvfWMk1PXy2CV9OCepRY3bb6cy1bqQsvXA1godD9aHH37I+++/z+eff07dunU59dRT6dmzZ+GjmKKcc2X+UBY9VrA7coF69eoVfn3XXXdx2mmn8cYbb7BhwwZOPfXUw1537NixnHfeecTGxnLBBRdoTIuISBUo2nOfd7Ad634azdoc6N/JMf3iwTSqFxPuEiNerRuT0qJeiwodD1ZmZiaNGjWibt26fP/993zxxRccOnSIjz76iPXr1wMUPu4566yz+Ne//lX43oLHPc2bN+e7777D7/cX9siU91mtW7cG4Nlnny08ftZZZzF9+nRyc3OLfV6rVq1o1aoV999/f+E4FxERCa1pX08jy5dH9tZhHPz5Opy/DnFtn2ZP/DQFlCDVupByY58bifUUf/YX64nlxj43HtN1zz77bHJzc0lOTuauu+7ipJNOomnTpsyYMYNRo0bRs2dPLrroIgDuvPNO9uzZQ48ePejZsyeLFi0CYMqUKQwbNozTTz+dli1blvtZ48eP57bbbmPgwIHk5eUVHr/66qtp164dycnJ9OzZk5deeqnw3KWXXkrbtm3p1q3bMX2fIiK1RXmTLIKdfJG2vR4H1t2Eb88gvI2+oN5x/yC6/g/H3HNfm5hzLtw1VEhKSopbunRpsWPfffcdXbt2DfoaRZ8RtqjXghv73HjM41Ei3Q033EDv3r256qqrwl1KyFT050BEpDwlJ1lA4B+0w381nDfXvlnq+KQBkwr/HsnM8vGX+at5bWkaFrOD2JaziK67obB9y3oteXfMu1X2vUQ6M1vmnEsp61ytHJxw7nHn1vhQUlTfvn2pV68ef//738NdiohItVDeJIvXf3gdv/OXOl4w+WLBqq3cNWcluw7kcFYv+DrnCQ65/YVtK6PnvjaplSGltlm2bFm4SxARqVbKeyRTMqAUSM/cx8gZ81m+Drq1bMjTV/ajR+t45q+j1vXcVyaFFBERkRJa1GvBlgNbjtjOOcjN7EP2tmEsd7mc1y+af4wYiNcTGPJZ23ruK1uNGThb3cbWSOXSf38RqUxlTbIoye+LJ2vTWLK3XEhUne3U7TiNNW5aYUCRY1cjelJiY2PZtWsXTZo00aI4tZBzjl27dhEbqxUbRaRyFPR+TPt6WqkeFecM357+HNrxG3BQp/lcvI0+x8yx9YD+DqpMNSKktGnThrS0NHbs2BHuUiRMYmNjadOmTbjLEJEapCCoTPxkYuEx/6FEsreMJi+rI556PxDb4g2iYn7Z2uRY19yS4mpESPF6vYVLz4uIiByLgmUqivagOBdFzq5fk7PzDDAfsS1fIzr+a0p23mvmTuWqESFFREQkWIdbK2v+uvnc9eld+Py+wvZ52a3I3jwa/6HWRDdYQZ0WbxIVvb/UdRPqJGiQbCVTSBERkVqj5CJtWw5sYdJnk1i+fTkLNiwg41BGYVvnjyZn5+nk7BqMeQ4S2/oFvA1XlnndWE8sE0+cWOY5OXoKKSIiUmuUt0jbq2teLXYs92B7Dm0ZjT+nGdHxS4ltPh/zZBWeT6iTQFx0nNY/CTGFFBERqTWOtPaJ88dwaPtQfHtOxryZxLX9D9H1fyzWxhvlZeKJExVKqoBCioiI1Ar3f3H/Yc/n7u9E9tZROF883kafU6fZAiwqp1ibhDoJCihVKKQhxczOBqYBHuAp59yUEucbAU8DxwPZwO+dc2U/8BMRETkKZc3WKcrlxZG97VxyM1OIitlObPsniK77c6l22hiw6oUspJiZB3gMOBNIA5aY2Vzn3OoizW4HvnHOjTSzLvnth4SqJhERqV3u/+L+UuNNivLt7cGhrcNxeXWJabKQmMSFWFRuqXYe82h6cRiEsiflRGCtc24dgJm9AgwHioaUbsADAM65782sg5k1d85tC2FdIiJSC8xfN7/cgOL3NeDQtuHk7utBVJ104to9jSe2/PEq9b319YgnDEIZUloDm4q8TgP6l2jzLTAKWGxmJwLtgTaAQoqIiByTaV9PK3UssCFgX7K3DQMXTUzTd4hp8glmZe9uXGBvzt5QlSmHEcqQUtYGBiV3gZsCTDOzb4AVwHKgVD+bmY0DxgG0a9eucqsUEZEaoeQibSXHoPhzGpG9dSR5B07AE7ee2JaziKqzM6hra7n78AhlSEkD2hZ53QbYXLSBc24vMBbAAjsDrs//RYl2M4AZACkpKdruVkREiik59qT4kvaGb8/JHNo+FAzqNJ+Dt9GXmJX914k3yltsxdlYT6zGo4RJKEPKEqCTmXUE0oGLgUuKNjCzBOCgcy4HuBr4OD+4iIiIBOVwY0/yDjUle8to/Fkd8NRbQ2zL2UR5M8tsGx8Tz239bwMod9l8qVohCynOuVwzuwFYQGAK8tPOuVVmdl3++elAV+B5M8sjMKD2qlDVIyIiNVPZY0+iyNk1mJydQyDqELGtXiW64fJSGwJCYGpxySCiUBIZQrpOinPubeDtEsemF/n6c6BTKGsQEZGabeuBrcVe52W1InvLGPyHWhHd4FvqtHirzA0BL+p8EXeedGdVlSlHQSvOiohItVYwSDawIeAZ5Oz6NeY5QGyb5/E2WF2qvcJJ9aGQIiIi1dL8dfN54MsHyMzJJPdgB7K3jMblNMUbv4Q6zd8utiEgQJwnjnsG3KNHOdWIQoqIiFQ789fN587Fd+LLjeLQjuH5GwLuIq7dU0TXW1uq/UktTuLJoU+GoVI5FgopIiJS7Uz7ehrZ+44je8soXG5DvI0XU6fpAizKV6ydNgSs3hRSREQkopVcpO2qbjey/sdf48vsQ1TMNuI6/BtP3KZi7ylrxo5UPwopIiISsQoe6+S6XJyDjVsSmbh8Py6vJzGJHxDTZCEWlVfsPdqtuOZQSBERkYj1wJcPkOtyAxsCbh1B7v7uRMWm0ajjf3Ex6eS64gHFG+XV6rA1iEKKiIhElKKPd/zO4ctM4dC2c8FFU6fZ23gbL8ZnfqYMmlI4uwc0/qQmUkgREZGIMX/dfCZ9NonsvGz8OY3J3jKSvIOd8NRdF9gQMGZXYdtzjztXgaSGU0gREZGIMe3raWTlHsK3Z2D+hoB+6rSYjTdhSbENARPqJISvSKkyCikiIhIx0nf7ydp8Pf7sdnjqf0dsizeI8hbfd9Yb5WXiiRPDVKFUJYUUEREJm4LxJ1v27yBm77kc2PJnLCqb2FYvE93w28INAaMsCuecdiWuZRRSREQkLArGnxzYn0j2lj+y71BLYhqmEtdiHn7PL70nsZ5YJg2YpGBSCymkiIhIWDy85DEyNp+Gb/evseh9xLV5jugG39GwTgJx0S0LF29Tz0ntpZAiIiJVoujU4oZ5fUlffxHOl4g34UvqNHsb8xwCIPNQJp9c/EmYq5VIoJAiIiIhV/BoJyvHcWj7cPZmnIR5dxLXbgbR9dYVa9uiXoswVSmRRiFFRERCbtrX09if0Z7sraNwuQ3wNv6YOk3fK7UhYKwnVivGSiGFFBERCald+w+x7ofB5O7tRVSdrcS1+S+euLTC8y3rafyJlE0hRUREQsI5x1upW5g0dxW5B5OISXyPmMQPMftlvx1tBiiHExXuAkREpObZmpnNNc8v5c8vL6dt47rcMdpDfItPiwUUPdqRI1FPioiIVBq/3/HKkk088PZ3+Px+7jy3K2MHdsQTZbRqTOHsHj3akWAopIiISKXYsPMAE2en8sW63Zx8XBOmjE6ifZN6hee1IaBUlEKKiIgckzy/4+nF6/n7e2vwRkUxZVQSF/VrixWsaS9ylBRSRETkqK3Zuo/xM7/l27RMzujajPtHJNEiPjbcZUkNoZAiIiIVlpPr57FFa3n8w7U0jPXy6G97Myy5pXpPpFIppIiISIUs37iHCbNS+WHbfkb0asXd53Wncb2YcJclNZBCioiIlC31NfhgMmSmQXwbDg6+m79v7sHTn66nRcNYnr4yhdO7NA93lVKDKaSIiEhpqa/BW38GXxYAn+1uwMTXD7DRreeyk9ox4ewuNIj1hrlIqekUUkREpLQPJoMvi0xXlwdyL+GVvNPpYFt5pdF0ThrxVrirk1pCIUVERErL3MR7eX240/d7dpDAtZ653BQ9i9is3HBXJrWIQoqIiBSz86vXmJTzJ+b5T6aLbeRJ799JjlofOGkemJQA8W1gyN2QfGFYa5WaTSFFRESAwIaAb36zmXvfgAMuhf+Lfo1rPW8RU2S/HVz+15mbAmNWQEFFQkYhRURE2JyRxR1vrGDRmh30ts08FDODTlHph3+TLyswdkUhRUJEIUVEpBbz+x0vfrWRB9/5njy/4+5h3bjiq4l49h4hoBTITAttgVKrKaSIiNRS63ceYMKsVL5av5tBv0rkgVFJtG1cFxreBbPHAe7IF4lvE/I6pfZSSBERqWVy8/w8tXg9D7/3AzHRUTw0OpkLUtr8sqR98oUw+5ojX8gbFxg8KxIiCikiIrXI6s17mTArlRXpmZzVrTn3jehB84ZlbAgY3zYwOLYk84Dza3aPVAmFFBGRGmzO8nSmLlhDekYWDepEcyAnl8b1Ynj80j78pkeL8jcEHHJ3sRVngUDPyXmPKJhIlVFIERGpoeYsT+e22SvI8gWmDe87lIvHjJvOOIFzkloe/s0FQaTI3j3qOZGqppAiIlJDPfi/7wsDSoE853j8w5+49KT2R75A8oUKJRJWCikiIjVFkV2LP4k9jczMy4DS4002Z2SVfq9IBIoK5cXN7GwzW2Nma81sYhnn483sLTP71sxWmdnYUNYjIlJj5e9anJmxm/G+q7k842qa2R4GWmqppq0S4sJQoEjFhawnxcw8wGPAmUAasMTM5jrnVhdp9kdgtXPuPDNrCqwxsxedczmhqktEpEaZdzMsexZcHv/LS+Eu31h205DrPW9yY/RsdhHPwEOPFDaP83q4dWjn8NUrUgGhfNxzIrDWObcOwMxeAYYDRUOKAxpYYHh5fWA3oC02RUQOp/CxTmCK8HYXzyTflbzt708328Az3qn0iNoAQCt2cWX9r7g65wVaRe0iO64FdT2TAY01kcgXypDSGig6yT4N6F+izb+AucBmoAFwkXPOX/JCZjYOGAfQrl27kBQrIlIt5D/WwZeFczDb/2sm+y4nixhujX6FcZ75eItsCGhxjZiU+wREBcah1M3aoo0BpdoIZUgpa/J9yTWWhwLfAKcDxwPvmdknzrm9xd7k3AxgBkBKSkoQ6zSLiFSNgnVINmdk0SohjluHdmZE79ah+8APJoMvizSXyO2+q/jY35O+toYHvU/yq6jNxdt688ee+EoMlNXGgFJNhHLgbBrQtsjrNgR6TIoaC8x2AWuB9UCXENYkIlJpCtYhSc/IwgHpGVncNnsFc5YHuTnfUfBnpPN87pkMPfQgS/2duTf6WV6PmVw6oMS3DSy8lrWn7AtpY0CpBkIZUpYAncyso5nFABcTeLRT1EZgCICZNQc6A+tCWJOISKWZumBNqXVIsnx5TF2wpnI+IPU1eLgHTEqAh3vw0+LXuch/H3fnjqVP1I8siBnPFdHvEmUlOphTroKbVgZ6SsrbAFAbA0o1ELLHPc65XDO7AVgAeICnnXOrzOy6/PPTgfuAZ81sBYHHQxOccztDVZOISGUqb72RSlmHpMjYE5/z8OSuXvxznpe46Db8LfY/jHYfUGpFe/NA3yth2D9+OVbe8vbaGFCqgZAu5uacext4u8Sx6UW+3gycFcoaRERCpVVCHOllBJKS65Ac1biV/LEnK/3tmeAbxyrXkXOivmRSwrs0O+tm+OCH4Jar1/L2Uo1pxVkRkaN069DOxfbGgdLrkJTcP6dg3ApQOqgUWTE220XzSO5FPJE3jEbsY7r3Yc72LIH9VvHl6rW8vVRTCikiIkepIGQcrpfkcONWioWUIo93lvpPYLxvHOtcKy7wfMid0S8SbwcC7TSWRGoRhRQRkWMwonfrwz66OeK4lSILs+13sUzNvYLn886kFbt43vsAp3hW/PImjSWRWkYhRUQkhA47bqVI78lHecnc7ruKzTThCs+73Br9KvXsUH5r01gSqZUUUkREKqLIuJFggkPJcSvnRy1mgvc1WmXvhNmQ4epxn+9aZvkHc7yl87p3MilRP/xygfi2genEIrWQQoqISLCK9HwAgb1zyllivuiMnvg4L7HeKE7JXsSUmP8QR6CH5O28E7nbN5YM6nGD5w1uiJ5DrPl+uYge70gtp5AiIhKs/GnBxZSxxPyc5enc+vq3+PyBRdYysnx4o4wH4t8gLusQ210Cd/uu5H/+E+lh63nOO4XuUT8Xv258218CysM9NH1YaiWFFBGRYJW3lHyJ45PmrioMKOdHLWZ89Gu0sp1wAF7zD+b+3MvIxsuE6Je5xjOfaCuyr6o3LrCcffKFwfXcVPDxk0h1opAiIhKs+DaBoFDW8SIysgKPbM6PWswU71PUtRw2+RO5PfdqPvEnc6J9xxTvkxwXtbX4dSzql4ACR+65qcDjJ5HqKJR794iI1CxD7v5lZ+EChxk3Mj76Nerg45ncoQzNeYiv/Z24L/ppXom5v3RAAYhNKB4ujtRzc7gQI1IDqCdFRCRYQS4x36iul19nLyLLxXCB7x6+didwatQ3/MX7H1rbLpwr49pQesfiI/XcBPn4SaS6UkgREamIIJaYfzx5PZ8v2ca5vgeoSzYPex9jRNSnhRsC5lkU0fhLvzG+TfExJnGNwBMDeTm/tCnacxPk4yeR6kqPe0REKtGKtEzuXRrFI3mjOTNqKe/XuZWRnl8CSpaL4ef2F5b92KjTWYExJZmbAAdZu8E5iGtMYEG3tsXHrFTw8ZNIdaOeFBGRSpDty+Of7//Ik5+so4k/jie8/2CoZ2mxNg5Y2fd++p1/LaQOKf3YqKwxJn4fxNSDCetLf6h2OJYazly5D0cjU0pKilu6dOmRG4qIVERFpvKWaPtl0iQmfpPI+p0HuCilLbf/eDHxh9JLv+9Iq8dOSiAQZUoymJRR8e9JpBows2XOuZSyzqknRUSkIlN5i7Td5+J4cOcZvPB+HG3r7ePFq09m4MGF5K3aVvozPDFHfgyjMSYixWhMiohIkFN55yxPZ+vs28GXxaK8Xgw99CAv5g3hKs/bLKh3NwN/lcjBd+7G43JLfcShqLgjP4bRGBORYtSTIiISxFTeOcvTuW32Cj6xbG7KvZ43/L+mk6UxyzuJPlFrYS/wcA/israUeSmvb++R69AYE5FiFFJEROIaBWbSlHU8f9+c/i6RbrnXc4b7G/uJ48+eWfwx+k3qWEGviUHmJqycj9jsb0JQD22CmOIsUlvocY+I1G6pr0HO/jJOWCC4ZG5im4vnbt/lLHNdqEs2r3sncbN3VvGAUuaA14CDLoanYi4LRfUiNVpQPSlm1gl4AOgGxBYcd84dF6K6RESqxgeTiy+WVsjhHLyWdyr3515KDl5uj36Rs2wJ/8gbQ1N7jVa2i+2WSAt2lHlp5yDdJfJPLmbQueNC+32I1EDBPu55BrgHeBg4DRgL5fZqiohUH+WMR9nob8bE3Kv5zN+D/raaB71P0iFqG35nzPUNYm7OIOK8Hh4YlcSIdweV+bhot6vPRXWf5NahnRnRu7V2LBapoGBDSpxz7gMzM+fcz8AkM/uEQHAREam+Skz7zXPGM3ln87fcC4kmj79EP8VvPYuIssDjHDPH4pg/81TMZfQ6d1wgfLxb9qWb1Ivh0wmnB15ox2KRCgt2TEq2mUUBP5rZDWY2EmgWwrpERKrEkuP/hD9/OMkP/taMzpnE/bmXMyBqFe/VGc+l0QsLAwoEupDbRO1kkj3BCM+ngYMlNwYsULR3RTsWi1RYsCHl/wF1gT8DfYHLgStCVJOISJX5f6s7keM8TMsdybk5D7DRNWea91H+4/0bLa2MGT8FigaMchdbs0APCmjHYpGjENTjHufcEoD83pQ/O+f2hbQqEZHDOYaxHXfOWcHLX24izzk8ZuQ5x7k2hZ9ca86P+pR7vM/TxIL8I64gYAy5G2aPo/QMHxeoM/lCrSYrchSC6kkxsxQzWwGkAivM7Fsz6xva0kREylAwtqNgp+CCsR0FPRaHceecFbzwxUby8vcsK/g93SUyPfpvPBLzWNkBxTxlX7AgYCRfSLlTkIsGGa0mK1IhwT7ueRr4g3Oug3OuA/BHAjN+RERCbs7ydAZOWUjHifMLl6UvJsixHS9/WUZPBpBNHd72n0S5+626vCMHjPi2Zb+3aJA575H8dhb4/bxHNGhW5DCCDSn7nHOfFLxwzi0G9MhHREKuYDn69IwsHNDMlb0mSbljO1JfC6waOymB+dG30p6yl61f1vBM0l1i2dcoCBSHCxjB9JQkXxjYBXlSRuB3BRSRwwp2CvJXZvYE8DKBPs2LgA/NrA+Ac+7rENUnIrXc1AVryPLlFb7e7BJpYztLNywxtmPO8nS+fHM6d7np1LUcPsjrzR2+37OdRhxPGj8VWaTeY8anE0+H1AeKTxMGiPJCzoHAmJP4NjBqRtnhQvvuiFS6YENKr/zfS66LMoBAaDm9sgoSESlqc0bxRzsP5V7IFO9T1LUiq8SW6LEoGHuyOOYlsqwOE3OuYa5/IJ1tI9O9/ySRTAblPFLY/rf98x/VlAwacY0CS+YXTCU+0tom2ndHpFKZK/chbGRKSUlxS5cuDXcZIhIic5anM3XBGjZnZNEqIY6DObnsOegr1ub8qMXcHvM6LdhZqsdiydwnaLn0IVqyk3n+k7k39wr2UZcbot/ges9cYiwPvzOOO/Ri4fU2TDm37GIe7lHOjJy2gcc1InLMzGyZcy6lrHPB7t3ThEAvyiACPSeLgcnOuV2VVqWI1HoF408KHu+kZ2ThjTK8HsOX98s/qN7zDOb04TcEVnuFX8adZG6iL7DNGjPOdwsf+PvQ09bykHcGnaN+GbOy2TUp/Lp1QolxJEVpbRORsAr2cc8rwMfA6PzXlwKvAmeEoigRqZ2Kjj85P2ox46Nfo5XtZKslMiPuMp7bfyKtEuJ+2QsH+OmZa+n48ytEAX5nvJx3Gg/kXkIuHu6M/i9jPf/DU2TF2IMuhodyA70ucV4Pp3VpysApCwt7bv7Z7Uf6/fRoIIhYVGBmT0la20SkSgQbUho75+4r8vp+MxsRgnpEpBYrGH9yftTiYuNOWhFYhn7SJd0h+ZdHM689/XfG/PwKUQYb/M2ZmHs1X/i7MyBqJQ9EP0X7qO1AYDdih7GFJvzLLuEt/0m0TojjtC5NmbUsvTAY9d37Hj2WPQUF413KCiha20SkygQbUhaZ2cVAwWpJY4D5oSlJRGqrVglxpGdkMT76teIDYwF8WbjZ15A+8zaeirmM3B5juG7D4/gtiqdyf8Pfcy8ghlymRM/gIs+HWJF92tNdIkN5jL+MTOKB3q15IP/4wCkLi80cGh/9GnElPxcCi7k5f8Vn7GjXY5FjEmxIuRa4GXgh/3UUcMDMbgacc65hKIoTkdrl1qGduW32ClqVNcWYXzb3G+97nNu+ymGvJ44/+u7lW3c8Z0Qt5X7vM7Sw4pv9ZVGHLSnjWXX+2aWuV3LmUHmfi/MH1japCO16LHLMgt27p0GoCxERKRhnsv3NprSgnEXbAA9+GrOP83x/JYH9POp9hGFRXxT2njgCgYb4tsQNuZt+5YSCgp6bAsGuwRKUw+16rJAiEpRgV5zFzBqZ2YlmdkrBr1AWJiK104jerWkx6q+lV2/Nt9x/POfl/IVn/L+hJbuYG3MH53l+CSh+B+vaXwyTMo+4quutQzsT5/1lX56Hci8ky8UUb3S0Y1A0M0jkmAW7weDVBGb3LADuzf99UujKEpFarWCfm7jGhYcOujrc57uMUTn3ss/VZWr0dNJoxoO5F5PmT8TvjDR/Ijfn/oEVvYILFSN6t+aBUUm0TojDCCyNv7Lv/ZWzv055vS+aGSQStGDHpNwI9AO+cM6dZmZdCISVwzKzs4FpgAd4yjk3pcT5WwlMZy6opSvQ1Dm3O8i6RKSaKLlIW9FpxGW1/Wb+Ksb79lPX4NO87kzMvYZNrhmXed7jz55Z3J97GXWio5ibO4i5OYOKvX/JgjXlXrukEb1bl2h7OoFheMdoyN2ll9jXzCCRCgn2cU+2cy4bwMzqOOe+Bzof7g1m5gEeA34DdAN+a2bdirZxzk11zvVyzvUCbgM+UkARqXlKbhKYnpHFbbNXMGd5erltr855AR/RTPRdzaW+O4gmj1djJnNv9LN48PNP7+N8EHUD50ctLnWNkgNiw0K7Hoscs2B7UtLMLAGYA7xnZnuAzUd4z4nAWufcOgAzewUYDqwup/1vCWxgKCI1TMlNAgGyfHlMLaPHo6Dtquj23JX7e3YSz7WeudwUPYtY8+EcNInaD0Ab28kU71Pgg7n+X3pTosyYszw96N6UkNFePiLHJNjZPSPzv5xkZouAeOCdI7ytNVB004s0oH9ZDc2sLnA2cEMw9YhI9VJez0Z6Rlapx0AFs22uzf0/utjPPOX9G8lR6wvfU3T9E4C6lsP46NeKPfLJc47bZq8ACH9QEZGjFuzA2ckFXzvnPiKwkNuzR3pbGcfK283wPODT8h71mNk4M1tqZkt37Ch/WqKIRKZW5eyPc37UYvrNOYVPskbysffPNMv8pvBcF/uZV72TiwWU8vZDbWWltxEr6KkRkeor2DEp7czsNgiMSQHeAH48wnvSgLZFXreh/EdEF3OYRz3OuRnOuRTnXErTpk2DLFlEIsWtQzuX+ldLwdL3rW0nW2jCXXm/Z7nrTCP2AvC9a89duWMLZ+7s8DRjD/XLvH7RDQOLHY+EsSkictSCDSljgaT8oPIWsMg5N+kI71kCdDKzjmYWQyCIzC3ZyMzigcHAm0FXLSLVyojerUt1o46Pfo1YfPw39wzOOvQQX/q7cE/0c8zx3lXYZq5/EINyHuG4Qy8ywvsEP/W9u9Q6JlkuhseiLinzc8vrwRGR6uGwY1LMrE+Rl9OAJ4BPgY/MrI9z7uvy3uucyzWzGwisqeIBnnbOrTKz6/LPT89vOhJ41zl34Bi+DxGJcK1LrO6a7aK52HcnX7muDIpawQPRT9E2agd+V9aT4kCvSL/zr2UJ0PbrqTRzO9luiWzqeyv92w5jzuwVxQbnxnk93Dr0sJMQRSTCmSvvIS+QP0i2PM45d3rll3R4KSkpbunSpVX9sSJyjO6cs4IXvthY+DqGHGLxcWf0C1zg+ahwQGyaP5FBOY+Uen/rhDg+nVj+HzkVWYdFRCKHmS1zzqWUde6wPSnOudNCU5KI1DaLvi8+6L0xe3k15j7aR/1y/KCL4aHc0lN2DY7YK1J6UTYRqe6C3rungJnNC0UhIlK9zVmezsApC+k4cT4DpywstlBbti+v2KMegK0k8vfcC4otaT+v/UTe8wwu1s6AS09qpwAiUgsFu5hbUfqTQkSKKVgltmBMSMGKsgBtG8cxfmZqme+b6w8saV8QRO4fkUSMHtuISL6jCSnLK70KEanWyltR9o43VnDQl0er+DiuPeU4nv/851LtEuK8TDq/e2EQqezHNhqrIlJ9VTikOOd+H4pCRKT6Km89kgM5eVxxcntuPbsL9etE07VlwyoNDIfr4VFQEYl8R5qCvILyV4nFOZdc6RWJSLXTqsT04gKJ9WO4d3iPwtdVPbi1InsGiUjkOVJPyrD83/+Y//t/83+/FDgYkopEpNq5dWhnxs9MJSfPX3gsNjqKO8/tdph3hV55PTxaiVakejjSFOSfAcxsoHNuYJFTE83sU2By2e8Ukdpi+75sFqzaSk6eH6/H8OU5WkfI2I/yeni0Eq1I9RDsmJR6ZjbIObcYwMwGAPVCV5aIRDrnHLO+Tue+eavJ8uVx69DOjDvlOLyeCq9sEDK3Du1cbEwKaCVakeok2JByFfB0/j47ABmABtCK1Bapr8EHk3GZaWwjkbsOXcbHnv4cyvWT0r4RU0Yn86tmZW/+F04FPTma3SNSPQUVUpxzy4CeZtaQwFL6maEtS0Qq21FPxU19Dd76M/iycM5YkNebxS6J3Fwf3qhoLunfLiIDSgGtRCtSfR1pds9lzrkXzOzmEscBcM79I4S1iUglOZqpuAWh5tWDt9EmKouf/C2Z4BvHUteZU6K+5c+e2Yzx3cvf3/2BUX3aVNn3IiK1x5F6UgrGnTQIdSEiEjoVnYpbNNQ0jdnDY7nnMy13FHHk8Dfvvxkd9QmOwD9WNFNGRELlSLN7njAzD7DXOfdwFdUkIpWsIlNx5yxP5/9e+5a8/B3Sh/ke4EfXhnOivmSS91maWeBpb7q/CaCZMiISOkcchu+cywPOr4JaRCREygsSJY8X9KAUBBSAja4Z06If5fGYaYUBpWC3Ys2UEZFQCnZ2z2dm9i/gVeBAwUHn3NchqUpEKtWRpuIWjD8pa02RQ8Twgb83ff0/0ipqF9tJ5AHfBSxreCYPaKaMiISQOVfuqve/NDJblP9lQWMDnHPu9FAVVp6UlBS3dOnSqv5YkWqvrNk9APe+tYo9B31HfH+c18MDo5IUSkSkUpnZMudcSlnngu1JmUcgoFj+awfsNbNezrlvjr1EEQm1klNxS874ORyPmQKKiFS5YENKXyAFmEsgqJwLLAGuNbPXnXMPhag+Ealkh3u0Uxb1oIhIuAQbUpoAfZxz+wHM7B5gJnAKsAxQSBGpBirSewJEzB48IlI7BRtS2gE5RV77gPbOuSwzO1T5ZYlIKJS1XkpZ1HsiIpEg2JDyEvCFmb2Z//o84GUzqwesDkllIlKpnHNBPeJJiPMy6fzuCigiEnbB7t1zn5m9DQwiMCblOudcwRSbS0NVnIhUjk27DxYug18ePdoRkUgTbE9KwSaDy0JYi4hUsjy/47nPNjB1wRqiDE7s0IivNuwp1kaPdkQkUgUdUkQk8hVdC6VpgzrUjfGwYddBTu3clMGdmvLQgjXF2hswuq92CRaRyKSQIlJDlJy5s31fYEz7Zf3bcd+IHgx6cFGpQbMOWPT9jqouVUQkKEfcu0dEqofyZu4sWrMDM6vQJoMiIpFAIUWkBsj25ZU7c6cghAS7yaCISKRQSBGp5r5ct4vfTPuk3PMFIeTWoZ2J83qKndMuxiISyRRSRKqpfdk+7pyzgotmfEGu388fTj3+sCFkRO/WPDAqidYJcRiBKcea1SMikUwDZ0WqoUXfb+f2N1awdW82Vw3qyP+ddQJ1Y6I5oXmDUjsdFw0hJTcZFBGJZAopItXI7gM5TH5rFXO+2UynZvWZdf0A+rRrVHheIUREahKFFJFqwDnHvNQtTJq7iswsHzcO6cQfTjueOtGeI79ZRKSaUkgRiUBFF2Vr3jCWxPoxrNy8l+Q28bx4TX+6tGgY7hJFREJOIUUkwpRclG3r3my27s1meM9W/P3CnkR7NN5dRGoH/WknEmHKW5Rt6c97FFBEpFbRn3giESTP7464KJuISG2hkCISIdZs3ceof39W7nmtDCsitY1CikiY5eT6+ef7PzDs0U/YtPsgl5/Untjo4v9ramVYEamNNHBWJESKztApa2E1gG83ZTB+Ziprtu1jeK9W3D2sG03q16Fv+0ZHfK+ISE2nkCISAiVn6KRnZHHb7BVAYMG1rJw8/vHeGv6zeD3NGsTy1O9SOKNb88L3a1E2EZEQhxQzOxuYBniAp5xzU8pocyrwT8AL7HTODQ5lTSJVoawZOlm+PKYuWEOzhnWYOGsFG3cf5JL+7Zj4my40jPWGqVIRkcgVspBiZh7gMeBMIA1YYmZznXOri7RJAB4HznbObTSzZqGqR6QqlTcTJz0ji0ue/JL2Tery0jX9GXB8YhVXJiJSfYSyJ+VEYK1zbh2Amb0CDAdWF2lzCTDbObcRwDm3PYT1iFSZVglx5U4lHnfKcdx0xgnExWhJexGRwwnl7J7WwKYir9PyjxV1AtDIzD40s2Vm9ruyLmRm48xsqZkt3bFjR4jKFak8tw7tjDfKSh33REG3lg0VUEREghDKkFL6T2hwJV5HA32Bc4GhwF1mdkKpNzk3wzmX4pxLadq0aeVXKlLJhvdqRUx06f+98vyB8SoiInJkoXzckwa0LfK6DbC5jDY7nXMHgANm9jHQE/ghhHWJhNSWzCzufGMlB3JKL20PWjlWRCRYoexJWQJ0MrOOZhYDXAzMLdHmTeDXZhZtZnWB/sB3IaxJJGT8fseLX/7Mmf/4mE9/2kl8OTN2tHKsiEhwQtaT4pzLNbMbgAUEpiA/7ZxbZWbX5Z+f7pz7zsz+B6QCfgLTlFeGqiaRUFm/8wATZ6Xy5frdDDi+CVNGJfP1xj3F1koBrRwrIlIRIV0nxTn3NvB2iWPTS7yeCkwNZR0ioZKb5+fpT9fz93d/ICY6igdHJ3FhSlvMjHZN6gJo5VgRkaOkFWdFjtJ3W/YyYVYqqWmZnNmtOfeP6EHzhrHF2mjlWBGRo6eQIlJBh3LzeGzhWh7/8Cfi47z865LenJvUErOyJrSJiMjRUkgRqYCvN+5hwsxUfty+n5G9W3P3sG40qhcT7rJERGokhRSRIBzMyeVvC37gmc/W06JhLM9c2Y/TumgXBxGRUFJIETmCT9fuZOLsVDbtzuLyk9oz/uzONNCGgCIiIaeQIlKOzCwff53/Ha8u3UTHxHq8Ou4k+h/XJNxliYjUGgopImV4d9VW7pyzkl0Hcrhu8PH8vzM6EevVfjsiIlVJIUWkiB37DjHprVXMT91C15YN+c8V/UhqEx/uskREaiWFFBHAOccby9OZPG81Bw/lcctZJ3Dt4OPxekK5c4SIiByOQorUeukZWdzxxgo+XLODPu0SeGhMMr9q1iDcZYmI1HoKKVJrFWwIOOWd7/E7uOe8bvzu5A54orQom4hIJFBIkVpp3Y79TJy1gq827ObXnRL568gk2jauG+6yRESkCIUUqVVy8/w8+cl6Hn7/B2Kjo5g6JpkxfdtoSXsRkQikkCK1xqrNmUyYlcrK9L0M7d6c+4b3oFmJDQFFRCRyKKRIjTRneTpTF6xhc0YWLeNj6d4qnoVrttOobgz/vrQPv0lqGe4SRUTkCBRSpMaZszyd22avIMuXB8DmzGw2Z2bTr0MjnvxdCgl1tSGgiEh1oEUgpMaZumBNYUApanNGtgKKiEg1opAiNU56RlaZxzeXc1xERCKTHvdIjZF50Md981eXe75VQlwVViMiIsdKIUVqhP+t3MJdb65i94EczujajMU/7iQ71194Ps7r4dahncNYoYiIVJRCilRr2/dlc8+bq3hn5Va6tWzIM1f2o0fr+GKze1olxHHr0M6M6N063OWKiEgFKKRIteScY+ayNO6f/x1ZvjxuHdqZcaccV7gh4IjerRVKRESqOYUUqXY27T7I7W+s4JMfd5LSvhFTRifzq2b1w12WiIhUMoUUqTb8fsfzn2/goQVrMGDy8O5c1r89UdoQUESkRlJIkWph7fb9TJyVytKf93DKCU3568getGmkDQFFRGoyhRSJaL48PzM+Xse0938kLsbD3y/oyag+rbUhoIhILaCQIhFrZXom42emsnrLXs5JasG95/egaYM64S5LRESqiEKKRJxsXx7TPviRGR+vo3G9GKZf1peze7QId1kiIlLFFFIkoizZsJsJM1NZt/MAF6a04Y5zuhFf1xvuskREJAwUUiQi7D+Uy0P/+57nP/+ZNo3ieOGq/gzqlBjuskREJIwUUiTsFq3Zzh2zV7BlbzZjB3bglrM6U6+OfjRFRGo7/U0gYbPnQA73zVvN7OXp/KpZfWZeN4C+7RuFuywREYkQCilS5ZxzvL1iK/fMXUnGQR9/Ov1X3HD6r6gT7Ql3aSIiEkEUUqRKbd+bzZ1zVvLu6m0ktY7n+d/3p1urhuEuS0REIpBCilQJ5xyvL03jvvmrycn1c9tvunDVoI5E528IKCIiUpJCioTcpt0HuW32Chav3cmJHRszZVQSxzXVhoAiInJ4CikSMnl+x3OfbWDqgjV4ooz7R/TgkhPbaUNAEREJikKKhMSP2/YxflYqyzdmcGrnpvx1ZBKtEuLCXZaIiFQjCilSqXJy/Uz/6Cf+tXAt9ep4+OdFvRjeq5U2BBQRkQpTSJFKk5qWwfiZqXy/dR/n9WzFPed1I7G+NgQUEZGjE9KQYmZnA9MAD/CUc25KifOnAm8C6/MPzXbOTQ5lTVL5sn15PPzeDzz5yTqaNqjDk79L4cxuzcNdloiIVHMhCylm5gEeA84E0oAlZjbXObe6RNNPnHPDQlWHhNYX63YxcVYqG3Yd5LcntmXib7oSH6cNAUVE5NiFsiflRGCtc24dgJm9AgwHSoYUqYb2ZfuY8s73vPjlRto1rstLV/dnwK+0IaCIiFSeUIaU1sCmIq/TgP5ltDvZzL4FNgO3OOdWhbAmqQQLv9/GHW+sZNvebK4e1JGbzzqBujEa3iQiIpUrlH+zlDWdw5V4/TXQ3jm338zOAeYAnUpdyGwcMA6gXbt2lVymBGv3gRwmv7WKOd9splOz+jx+/QB6t9OGgCIiEhqhDClpQNsir9sQ6C0p5JzbW+Trt83scTNLdM7tLNFuBjADICUlpWTQkRBzzvFW6hYmzV3FvmwfNw7pxB9OO14bAoqISEiFMqQsATqZWUcgHbgYuKRoAzNrAWxzzjkzOxGIAnaFsCapoK2ZgQ0B3/9uGz3bxPPgmP50aaENAUVEJPRCFlKcc7lmdgOwgMAU5Kedc6vM7Lr889OBMcD1ZpYLZAEXO+fUUxIBnHO8smQTf53/HT6/nzvO6crvB3XEoyXtRUSkilh1ywQpKSlu6dKl4S6jRvt51wEmzlrB5+t2cdJxjZkyKpkOifXCXZaIiNRAZrbMOZdS1jlNyZBCeX7HM5+u52/vrsEbFcVfRyZxcb+22hBQRETCQiFFAFizNbAh4LebMhjSpRn3j+xBy3htCCgiIuGjkFLL5eT6efzDtTy2aC0NYr088tvenJfcUhsCiohI2Cmk1GLfbMpgwsxU1mzbx/BerbjnvO40rhcT7rJEREQAhZRaKSsnj7+/u4anP11Pswax/OeKFIZ01YaAIiISWRRSapnPftrJxFkr2Lj7IJf0b8fE33ShYaw2BBQRkcijkFJL7M328cDb3/HyV5to36QuL19zEicf3yTcZYmIiJRLIaUWeH/1Nu6Ys4Id+w5x7SnH8f/OOIG4GC1pLyIikU0hpQbbtf8Qk95azVvfbqZLiwY8+bsUktskhLssERGRoCik1EDOOd78ZjP3vrWK/YdyufnME7hu8PHEREeFuzQREZGgKaTUMJszsrhzzkoWfr+dXm0TeGhMMic0bxDuskRERCpMIaWG8PsdL321kSnvfE+e33HXsG5cOaCDNgQUEZFqSyGlBli/8wATZ6Xy5frdDPxVEx4YmUy7JnXDXZaIiMgxUUipxnLz/Pxn8Xr+8d4PxERH8eDoJC5Maasl7UVEpEZQSKmmvtuylwmzUklNy+TMbs25f0QPmjeMDXdZIiIilUYhpZo5lJvHYwvX8viHP5FQ18tjl/ThnKQW6j0REZEaRyGlGln28x4mzEpl7fb9jOrdmruGdaORNgQUEZEaSiGlGjiYk8vUBWt49rMNtGwYyzNj+3Fa52bhLktERCSkFFIi3OIfdzJxdippe7K4/KT2jD+7Mw20IaCIiNQCCikRKjPLx1/mr+a1pWl0TKzHq+NOov9x2hBQRERqD4WUCLRg1VbumrOSXQdyuP7U47lxSCdivdoQUEREaheFlAiyY98hJs1dxfwVW+jasiH/uaIfSW3iw12WiIhIWCikRADnHLO/TmfyvNVk5eRx69DOjDvlOLwebQgoIiK1l0JKmKVnZHH77BV89MMO+rQLbAj4q2baEFBEREQhJUz8fscLX/7Mg+98jwMmndeNy0/WhoAiIiIFFFLC4Kcd+5k4K5UlG/bw606J/HVkEm0ba0NAERGRohRSqpAvz8+Tn6zjn+//SGx0FFPHJDOmbxstaS8iIlIGhZQqsjI9kwmzUlm1eS9nd2/B5BHdadZAGwKKiIiURyElxLJ9eTy68Eemf7SORnVj+PelffhNUstwlyUiIhLxFFJCaOmG3Yyflcq6HQcY3acNdw3rSkJdbQgoIiISDIWUEDhwKLAh4HOfb6BVfBzP/f5EBp/QNNxliYiIVCsKKZXs4x92cNvsFWzOzOKKkztwy9DO1K+j2ywiIlJR+tuzkmQczOH++d8xc1kaxzWtx+vXnkxKh8bhLktERKTaUkipBO+s2MJdb65iz8Ec/nja8fzpdG0IKCIicqwUUo7B9r3Z3P3mKv63aivdWzXkud/3o3srbQgoIiJSGRRSjoJzjpnL0rhv3mqyc/2MP7sz1/xaGwKKiIhUJoWUCtq0+yC3v7GCT37cSb8OjZgyOpnjm9YPd1kiIiI1jkJKkPx+x/Ofb+ChBWsw4L7h3bm0f3uitCGgiIhISCikBGHt9n1MmLWCZT/vYfAJTfnLyB60aaQNAUVEREJJIeUwfHl+nvjoJx75YC1163j4x4U9Gdm7tTYEFBERqQIKKeVYmZ7JrTNT+W7LXs5Nasmk87vTtEGdcJclIiJSa4R0OoqZnW1ma8xsrZlNPEy7fmaWZ2ZjQllPMLJ9eUx553uGP/YpO/cfYvplfXns0j4KKCIiIlUsZD0pZuYBHgPOBNKAJWY21zm3uox2DwILQlVLsL5av5uJs1JZt/MAF6W05fZzuhJf1xvuskRERGqlUD7uORFY65xbB2BmrwDDgdUl2v0JmAX0C2Eth+Wc4963VvPsZxto0yiOF67qz6BOieEqR0RERAhtSGkNbCryOg3oX7SBmbUGRgKnc5iQYmbjgHEA7dq1q/RCzYz6daL5/cCO3DL0BOrGaKiOiIhIuIXyb+OypsC4Eq//CUxwzuUdbsaMc24GMAMgJSWl5DUqxf+ddYJm7YiIiESQUIaUNKBtkddtgM0l2qQAr+SHg0TgHDPLdc7NCWFdZVJAERERiSyhDClLgE5m1hFIBy4GLinawDnXseBrM3sWmBeOgCIiIiKRJ2QhxTmXa2Y3EJi14wGeds6tMrPr8s9PD9Vni4iISPUX0hGizrm3gbdLHCsznDjnrgxlLSIiIlK9hHQxNxEREZGjpZAiIiIiEUkhRURERCKSQoqIiIhEJIUUERERiUgKKSIiIhKRFFJEREQkIimkiIiISERSSBEREZGIZM6FZFPhkDGzHcDPIbp8IrAzRNeuiXS/Kkb3q2J0vypG96tidL8qLlT3rL1zrmlZJ6pdSAklM1vqnEsJdx3Vhe5Xxeh+VYzuV8XoflWM7lfFheOe6XGPiIiIRCSFFBEREYlICinFzQh3AdWM7lfF6H5VjO5Xxeh+VYzuV8VV+T3TmBQRERGJSOpJERERkYhUK0OKmZ1tZmvMbK2ZTTxMu35mlmdmY6qyvkhzpPtlZqeaWaaZfZP/6+5w1Bkpgvn5yr9n35jZKjP7qKprjCRB/HzdWuRna2X+/5ONw1FrJAjifsWb2Vtm9m3+z9fYcNQZKYK4X43M7A0zSzWzr8ysRzjqjBRm9rSZbTezleWcNzN7JP9+pppZn5AW5JyrVb8AD/ATcBwQA3wLdCun3ULgbWBMuOuO5PsFnArMC3etkfAryPuVAKwG2uW/bhbuuiP5fpVofx6wMNx1R/L9Am4HHsz/uimwG4gJd+0RfL+mAvfkf90F+CDcdYf5np0C9AFWlnP+HOAdwICTgC9DWU9t7Ek5EVjrnFvnnMsBXgGGl9HuT8AsYHtVFheBgr1fEhDM/boEmO2c2wjgnKvNP2MV/fn6LfBylVQWmYK5Xw5oYGYG1CcQUnKrtsyIEcz96gZ8AOCc+x7oYGbNq7bMyOGc+5jAz0x5hgPPu4AvgAQzaxmqempjSGkNbCryOi3/WCEzaw2MBKZXYV2R6oj3K9/J+d3L75hZ96opLSIFc79OABqZ2YdmtszMfldl1UWeYH++MLO6wNkE/vFQWwVzv/4FdAU2AyuAG51z/qopL+IEc7++BUYBmNmJQHugTZVUVz0F/f9sZYgO1YUjmJVxrOQUp38CE5xzeYF/jNRqwdyvrwksa7zfzM4B5gCdQl1YhArmfkUDfYEhQBzwuZl94Zz7IdTFRaBg7leB84BPnXOH+1deTRfM/RoKfAOcDhwPvGdmnzjn9oa4tkgUzP2aAkwzs28IhLrl1N6ep2BU5P/ZY1YbQ0oa0LbI6zYE/sVRVArwSn5ASQTOMbNc59ycKqkwshzxfhX9w88597aZPW5mic652rgvRjA/X2nATufcAeCAmX0M9ARqY0gJ5n4VuJja/agHgrtfY4EpLjCAYK2ZrScw1uKrqikxogT759dYCAwKBdbn/5KyVeT/2WNWGx/3LAE6mVlHM4sh8Aff3KINnHMdnXMdnHMdgJnAH2ppQIEg7peZtcj/n7uguzQK2FXllUaGI94v4E3g12YWnf8Ioz/wXRXXGSmCuV+YWTwwmMC9q82CuV8bCfTSkT+2ojOwrkqrjBzB/PmVkH8O4Grg41ra6xSsucDv8mf5nARkOue2hOrDal1PinMu18xuABYQGPn9tHNulZldl39e41CKCPJ+jQGuN7NcIAu4OP9fcbVOMPfLOfedmf0PSAX8wFPOuTKn+9V0Ffj/cSTwbn7vU60V5P26D3jWzFYQ6JqfUEt7NYO9X12B580sj8Csu6vCVnAEMLOXCczYTDSzNOAewAuF9+ttAjN81gIHye+FClk9tfTvEhEREYlwtfFxj4iIiFQDCikiIiISkRRSREREJCIppIiIiEhEUkgRERGRiKSQIiIRw8z2h+oaZnZdwRYEZtYlf1fl5WZ2vJldcqyfKyKVTyFFRCqFmUX0ukv5a9Q8n/9yBPCmc643gdUzFVJEIlBE/6EiIpHBzO4CLiWwsdhOYJlz7m9m9iHwGTAQmJv/+h8Edt/dCVzpnNtiZscDjwFNCSwAdY1z7nsz6wi8RODPov8V+bz/AjOdc2/mv34ReNU5N7dIm5bAq0DD/Pdf75z7JP/cX4BhBBYXHO6c22Zmk4D9BBbs+n9AnpmdQmD/pK75e7c855x7uBJvnYgcA/WkiMhhmVkKMBroTWC32JQSTRKcc4OBR4BHgTHOub7A08Bf8tvMAP6Uf/wW4PH849OAfzvn+gFbi1zzKX7ZTyUeGEBgpcuiLgEWOOd6Edj76Jv84/WAL5xzPYGPgWuKvsk59zaBHc4fds6dBkwEPnHO9VJAEYks6kkRkSMZRODRSBaAmb1V4vyr+b93BnoQ2HUXAsuQbzGz+gRCxutFdhWvk//7QAIBCOC/wIMAzrmPzOwxM2tGIBjNcs6V3Jl2CfC0mXmBOc65b/KP5wDz8r9eBpx5NN+0iISfQoqIHElZW7MXVbCfjgGrnHMnF3uzWUMgI7/Hoyzl7c3xXwKPmC4Gfl/qTc59nP+45lzgv2Y2NX/Mia/I3lF56M85kWpLj3tE5EgWA+eZWWx+r8i55bRbAzQ1s5MBzMxrZt3zd5Rdb2YX5B83M+uZ/55PCYQQCASSop4lMHYE59yqkh9mZu2B7c65J4H/AH2O8vvbBzQ4yveKSAgppIjIYTnnlhDYnv1bYDawFMgso10OgR2xHzSzbwmMERmQf/pS4Kr846uA4fnHbwT+aGZLgPgS19sGfAc8U05ppwLfmNlyAo+Mph3dd0gqkGtm35rZTUd5DREJAe2CLCJHZGb1nXP7zawugcGo45xzX4f4M+sCK4A+zrlSoUhEaj71pIhIMGbkT9H9msAg1lAHlDOA74FHFVBEai/1pIiIiEhEUk+KiIiIRCSFFBEREYlICikiIiISkRRSREREJCIppIiIiEhEUkgRERGRiPT/AaGqI8v2/Zb9AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-k-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-k-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-k-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-kappa');\n", "title('80-10-10');" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABa8klEQVR4nO3dd3iUVdrH8e9JgYSWUKVX6SS0AAoqKgooIkUsa1nFwtp2eXVFsKCIrqK462JbFnctrF1AlKIooqJiAQRCDSIghA4hAUJCJpnz/jGTmISZZJLMZCbJ73NdXGSeeeaZex4juXPOfc5trLWIiIiIhJqwYAcgIiIi4omSFBEREQlJSlJEREQkJClJERERkZCkJEVERERCkpIUERERCUlKUkRERCQkKUkRkRIzxrQ2xiw2xhw1xuw3xrxojIlwPzfIGLPFGHPSGPOlMaZVEdepZoyZY4zZaYyxxpjzCz1vjDFPG2OOuP88Y4wxRVzvAvd7phljdnqJ+0t3bFuMMReV+iaISMApSRGR0ngZOAg0AXoAA4E7jTENgHnAZKAesAp4r5hrfQtcD+z38Nw4YCTQHYgHLgP+VMS10oFXgQlenn8HWAPUBx4C5hhjGhYTn4gEidGOsyJSUsaYzcBfrbWL3Y+nA3WA1cBN1tr+7uM1gcNAT2vtlmKumQxcb639Kt+xFcDr1tpZ7se3ALdZa88q5loXAf+x1rbOd6wDsB5oYK097j72DfCWtXZmCT6+iJQTjaSISGnMAK4xxtQwxjQDLgE+BboC63JPstamA7+6j5dGgeu5vy7LtbbnJih+uJ6IBJiSFBEpja9x/XA/BiTjmtaZD9QC0gqdmwbULuX7FL5eGlCrqLqUElyrrLGJSIApSRGREjHGhAFLcNWe1AQaAHWBp4ETuKZ98qsDHDfGtDTGnMj94+PbFb5eHeCEtdYaYx7Mdz1fpmu8xuZjLCJSzpSkiEhJ1QNaAC9aa09Za48ArwGXAhtxFbkCeTUp7YCN1tpd1tpauX98fK8C13N/vRHAWvtkvuvd7uO12hpj8o+c5F1PREKPkhQRKRFr7WFgB3CHMSbCGBML3IirvuNDoJsx5gpjTBTwCJBYVNGsMaa6+1yAasaYqHzTObOBe40xzYwxTYG/Aq8Xca0w97UiXQ9NlDGmmjvurcBa4FH38VG4VgzNLd2dEJFAU5IiIqUxGhgKHAK2AdnAPdbaQ8AVwN+Ao0A/4JpirpUEZADNcE0jZQC5e6v8G1iAa1XOBmCR+5g357lfvxho6f76s3zPXwMkuGObBoxxxywiIUhLkEVERCQkaSRFREREQpKSFBEREQlJSlJEREQkJClJERERkZCkJEVERERCUkSwAyipBg0a2NatWwc7DBEREfGD1atXH7bWeuxGXuGSlNatW7Nq1apghyEiIiJ+YIz5zdtzmu4RERGRkKQkRUREREKSkhQREREJSRWuJsUTh8NBcnIymZmZwQ5FgiQqKormzZsTGRkZ7FBERMRPKkWSkpycTO3atWndujW/N0+VqsJay5EjR0hOTqZNmzbBDkdERPykUkz3ZGZmUr9+fSUoVZQxhvr162skTUSkkqkUSQqgBKWK039/EZHKp9IkKcG2c+dOunXrFuwwREREKg0lKSIiIhKSApakGGNeNcYcNMZs8PK8McY8b4zZZoxJNMb0ClQshc1fs4cB05bRZtIiBkxbxvw1e/x6/e3bt9OzZ09+/PFH+vfvT8+ePenfvz9JSUkAvP7664wYMYKhQ4fSsWNHHnvsMcA1GtOpUyduvPFG4uPjGTNmDCdPngRg6tSp9OnTh27dujFu3DistX6NWUREJNQEciTldWBoEc9fArR3/xkH/CuAseSZv2YPD8xbz57UDCywJzWDB+at91uikpSUxBVXXMFrr71G586dWb58OWvWrGHq1Kk8+OCDeef99NNPvPXWW6xdu5YPPvggb6v/pKQkxo0bR2JiInXq1OHll18G4O6772blypVs2LCBjIwMFi5c6Jd4RUREQlXAkhRr7XIgpYhTRgCzrcsPQKwxpkmg4sk1fUkSGY6cAscyHDlMX5JU5msfOnSIESNG8Oabb9KjRw/S0tK48sor6datG/fccw8bN27MO/fiiy+mfv36REdHM3r0aL799lsAWrRowYABAwC4/vrr845/+eWX9OvXj7i4OJYtW1bgWiIiIoFirWVh4l6ysp3l/t7BrElpBuzO9zjZfew0xphxxphVxphVhw4dKtOb7k3NKNHxkoiJiaFFixZ89913AEyePJkLLriADRs2sGDBggJLZAuvRsl97Ol4ZmYmd955J3PmzGH9+vXcdtttWm4rIiIBtzvlJDf89yfufnuN30sjfBHMJMXTmlGPhRbW2lnW2gRrbULDhh67OfusaWx0iY6XRLVq1Zg/fz6zZ8/m7bffJi0tjWbNXHnX66+/XuDczz//nJSUFDIyMpg/f37e6MmuXbv4/vvvAXjnnXc455xz8hKSBg0acOLECebMmVPmWEVERLzJcVpe/XYHg59bztrdqTwxshtjejcv9ziCmaQkAy3yPW4O7A30m04Y0pHoyPACx6Ijw5kwpKNfrl+zZk0WLlzIc889R48ePXjggQcYMGAAOTkFp5jOOeccbrjhBnr06MEVV1xBQkICAJ07d+aNN94gPj6elJQU7rjjDmJjY7ntttuIi4tj5MiR9OnTxy+xioiIFPbLgeOMmbmCqQs3cVbbenx2z3lcf1YrwsLKfz8qE8hVIsaY1sBCa+1pG4gYY4YBdwOXAv2A5621fYu7ZkJCgs0tMs21efNmOnfu7HNc89fsYfqSJPamZtA0NpoJQzoysqfHmaaAeP3111m1ahUvvvhigeM7d+7ksssuY8MGjwuipBgl/T4QEZHfZWU7mfn1r7y4bBs1q4fz6PCujOjRNOCbZRpjVltrEzw9F7DePcaYd4DzgQbGmGTgUSASwFo7E1iMK0HZBpwExgYqlsJG9mxWrkmJiIhIKEtMTuX+OYls2X+c4d2b8ujwLjSoVT3YYQV2JCUQ/DGSIpWTvg9EREom05HDc59v5ZVvttOwdnWeGBnHxV3OKNcYgjKSIiIiIqHrh+1HmDQ3kZ1HTvKHvi144NLO1ImKDHZYBShJERERqUKOZzqY9skW3vpxFy3r1eDtW/vR/8wGwQ7LIyUpIiIiVcSyLQd46MMNHDiWya3ntOGvgzsSXS28+BcGiZIUERGRSi4lPYupCzYyf+1eOpxRi5ev60/PlnWDHVax1AXZD3bu3Em3bqetsi7STTfdFJRN2UoTq4iIVEzWWj5et5eL/vE1i9bvY/yg9iz887kVIkEBjaRIEGRnZxMRoW89EZFA2p+WycPzN7B08wG6N4/h6TH96NS4TrDDKpGqOZKS+D481w2mxLr+Tny/zJfMzs7mxhtvJD4+njFjxnDy5EkApk6dSp8+fejWrRvjxo3D05Jvb+ecf/75TJw4kb59+9KhQwe++eYbAHJycrjvvvuIi4sjPj6eF154AYDVq1czcOBAevfuzZAhQ9i3b1/e8e7du3P22Wfz0ksveYz/xIkTDBo0iF69ehEXF8dHH32U99zs2bOJj4+ne/fu3HDDDQAcOHCAUaNG0b17d7p3786KFStOG6V59tlnmTJlSt5nefDBBxk4cCAzZsxgwYIF9OvXj549e3LRRRdx4MCBvDjGjh2b99nmzp3Lf//7X+655568677yyivce++9Jf+PJCJSBVhreeenXVz8j6/5dtshHh7WmXl3DqhwCQrg+jAV6U/v3r1tYZs2bTrtmFfr3rP2iTOsfbTO73+eOMN1vJR27NhhAfvtt99aa60dO3asnT59urXW2iNHjuSdd/3119uPP/7YWmvtjTfeaD/44IMizxk4cKC99957rbXWLlq0yA4aNMhaa+3LL79sR48ebR0OR97rs7Ky7Nlnn20PHjxorbX23XfftWPHjrXWWhsXF2e/+uora6219913n+3atetpn8HhcNi0tDRrrbWHDh2y7dq1s06n027YsMF26NDBHjp0qECsV111lX3uueestdZmZ2fb1NRUu2PHjgLXnj59un300UfzPssdd9yR91xKSop1Op3WWmtfeeWVvM95//332/Hjxxc478SJE7Zt27Y2KyvLWmvt2WefbRMTE0/7DCX6PhARqYR2Hj5hr/n397bVxIX2mn9/b3cePhHskIoFrLJefuZXvTH3L6aCo1DHY0eG63j8VaW+bIsWLfKaBF5//fU8//zz3HfffXz55Zc888wznDx5kpSUFLp27crw4cMLvLaoc0aPHg1A79692blzJwBLly7l9ttvz5syqVevHhs2bGDDhg1cfPHFgGu0pUmTJqSlpZGamsrAgQMBuOGGG/jkk09Oi99ay4MPPsjy5csJCwtjz549HDhwgGXLljFmzBgaNGiQ914Ay5YtY/bs2QCEh4cTExPD0aNHi7xHV199dd7XycnJXH311ezbt4+srCzatGmT99nefffdvPPq1nXNm1544YUsXLiQzp0743A4iIuLK/K9RESqkhyn5bXvdvDsZ0lEhoXx1Og4runTIuBb2gda1UtS0pJLdtxHhb8RjDFkZmZy5513smrVKlq0aMGUKVPyOhrnKu6c6tVd2xKHh4eTnZ0NuBKKwu9nraVr1655HZRzpaam+vRN+tZbb3Ho0CFWr15NZGQkrVu3JjMz0+N7eRMREYHT6Szw2fKrWbNm3td//vOfuffee7n88sv56quv8qaFvL3frbfeypNPPkmnTp0YO7bcOiiIiIS8pP3HuX9uIut2p3JR50Y8MTKOxjFRwQ7LL6peTUqMl1bT3o77aNeuXXkJwjvvvMM555yT90O6QYMGnDhxwuNqHl/OKWzw4MHMnDkzL2lJSUmhY8eOHDp0KC8Gh8PBxo0biY2NJSYmhm+//RZwJSOepKWl0ahRIyIjI/nyyy/57bffABg0aBDvv/8+R44cyXuv3OP/+te/ANeozbFjxzjjjDM4ePAgR44c4dSpUyxcuNDrZ0hLS6NZM1f/pDfeeKPAZ8vfeDF3dKZfv37s3r2bt99+mz/84Q/F3iMRkcouK9vJP5du5bIXvmF3ykme/0NPXvljQqVJUKAqJimDHoHI6ILHIqNdx8ugc+fOvPHGG8THx5OSksIdd9xBbGwst912G3FxcYwcOZI+ffqc9jpfzins1ltvpWXLlnnFrG+//TbVqlVjzpw5TJw4ke7du9OjRw9WrFgBwGuvvcZdd93F2WefTXR0tMdrXnfddaxatYqEhATeeustOnXqBEDXrl156KGHGDhwIN27d88rWJ0xYwZffvklcXFx9O7dm40bNxIZGckjjzxCv379uOyyy/Ku4cmUKVO48sorOffcc/OmkgAefvhhjh49Srdu3ejevTtffvll3nNXXXUVAwYMyJsCEhGpqtbuTmX4C9/yz6W/MCyuCUvvHcjl3QPfsbi8Vc0Gg4nvu2pQ0pJdIyiDHilTPYqUj8suu4x77rmHQYMGeXxeDQZFpLLLyMrh758l8ep3OzijThR/G9WNCzuVb0NAf1ODwcLir1JSUoGkpqbSt29funfv7jVBERGp7Fb8ephJc9ezK+Uk1/VryaRLOlE7xBoC+lvVTFKkQomNjWXr1q3BDkNEJCiOZTp4avFm3vlpN63r1+DdcWdxVtv6wQ6rXChJERERCVFLNx3gofnrOXT8FH86ry3/d1GHkG4I6G9KUkRERELMkROnmLJgEwvW7aVT49q88scE4pvHBjuscqckRUREJERYa/lo7V4eW7CRE6eyuffiDtw+sB3VIqreYlxQkiIiIhIS9qZm8PD8DSzbcpCeLWN55op42p9RO9hhBZWSFBERkSByOi1v/7SLaZ9sIcdpeeSyLtzYvzXhYZVrz5PSUJJSwWRnZ+f17BERkYptx+F0Js1N5McdKQw4sz5PjYqnZf0awQ4rZFTJSa5F2xcxeM5g4t+IZ/CcwSzavsgv1x05ciS9e/ema9euzJo1C4BPP/2UXr16Fdjj48SJE4wdO5a4uDji4+OZO3cuALVq1cq71pw5c7jpppsAuOmmm7j33nu54IILmDhxIj/99BP9+/enZ8+e9O/fn6SkJMC1Pf19992Xd90XXniBL774glGjRuVd9/PPP89rWigiIsGRnePk31//ytB/LmfTvmM8c0U8b97STwlKIVXuV/JF2xcxZcUUMnNcPXP2pe9jyoopAAxrO6xM13711VepV68eGRkZ9OnThxEjRnDbbbexfPly2rRpk9f35vHHHycmJob169cDFNs9GGDr1q0sXbqU8PBwjh07xvLly4mIiGDp0qU8+OCDzJ07l1mzZrFjxw7WrFlDREQEKSkp1K1bl7vuuotDhw7RsGFDXnvtNTXoExEJos37jjFxbiKJyWkM7nIGj4/sxhl1Kk+/HX+qcknKjJ9n5CUouTJzMpnx84wyJynPP/88H374IQC7d+9m1qxZnHfeebRp0waAevXqAbB06VLefffdvNf50ovmyiuvJDzctTY+LS2NG2+8kV9++QVjDA6HI++6t99+e950UO773XDDDbz55puMHTuW77//ntmzZ5fpc4qISMmdys7hpWXbePmrX4mtEclL1/bi0rjGla7fjj9VuSRlf/r+Eh331VdffcXSpUv5/vvvqVGjBueffz7du3fPm4rJz1rr8Zsy/7Hc7si5atasmff15MmTueCCC/jwww/ZuXMn559/fpHXHTt2LMOHDycqKoorr7xSNS0iIuVs9W9HmTg3kW0HTzC6VzMmD+tC3ZrVgh1WyKtyNSmNazYu0XFfpaWlUbduXWrUqMGWLVv44YcfOHXqFF9//TU7duwAyJvuGTx4MC+++GLea3One8444ww2b96M0+nMG5Hx9l7NmjUD4PXXX887PnjwYGbOnEl2dnaB92vatClNmzbliSeeyKtzERGRwDuZlc1jCzYyZuYKTp7K5rWxffjHVT2UoPioyiUp43uNJyq84NxfVHgU43uNL9N1hw4dSnZ2NvHx8UyePJmzzjqLhg0bMmvWLEaPHk337t25+uqrAXj44Yc5evQo3bp1o3v37nz55ZcATJs2jcsuu4wLL7yQJk2aeH2v+++/nwceeIABAwaQk5OTd/zWW2+lZcuWxMfH0717d95+++2856677jpatGhBly5dyvQ5RUTEN9/+cphzpy/hte92EhH7PTXa/oOTkSuDHVaFYqy1wY6hRBISEuyqVasKHNu8eTOdO3f2+RqLti9ixs8z2J++n8Y1GzO+1/gy16OEurvvvpuePXtyyy23BDuUgCnp94GISCCkZTj426JNvL8qmfBqR6jW5AMiauwEXL8UT+k/pdL/zCkJY8xqa22Cp+eqZHHCsLbDqtQ3SO/evalZsyZ///vfgx2KiEiltmTjfibP38CR9CzqNl6JI+YjTFh23vP+WqhRVVTJJKWqWb16dbBDEBGp1A4dP8WUjzeyaP0+ujSpw6s39eHapZMwnD5bUdaFGlWJkhQREZFSstYy7+c9TF24iYysHCYM6ci489oSGR5G45qN2Ze+77TXlHWhRlVSaQpnK1ptjfiX/vuLSHnbk5rBTa+t5K8frOPMRrVYPP5c7rrgTCLDXT9aA7VQoyqpFCMpUVFRHDlyhPr162tTnCrIWsuRI0eIitKOjSISeE6n5c0ff+PpT7ZggSnDu/DHs1sTVqghYG7dSVVbqOFPlWJ1j8PhIDk5+bQN0KTqiIqKonnz5kRGRgY7FBGpxH49dIJJcxNZufMo57ZvwJOj4mhRT/12yqLSr+6JjIzM23peRETE3xw5Tl75Zjv/XPoL0ZHhPHtld67o1Uyj9wFWKZIUERGRQNmwJ42JcxPZuPcYl3RrzGMjutKotqaXy4OSFBEREQ8yHTm8sOwXZn69nbo1qvGv63pxSZz33cDF/5SkiIiIFLJqZwr3z01k+6F0xvRuzsPDOhNbQ/12ypuSFBEREbf0U9lMX5LEG9/vpGlMNLNv7st5HRqedl5VbK8SDEpSRESkSiqcaAxuNJ4PV0SzNy2DG89uzYQhHalZPeK0c+tUq8PJ7JM4nA4A9qXvY8qKKQBKVPwsoJu5GWOGGmOSjDHbjDGTPDxf1xjzoTEm0RjzkzGmWyDjERERAVfSMWXFFPal78OZE8X2Xwbw4mLIJoMP/nQ2Uy7vWiBBmfzdZPal78NiSctKy0tQcuX25BH/CthIijEmHHgJuBhIBlYaYz621m7Kd9qDwFpr7ShjTCf3+YMCFZOIiAi4NljLzMnEcawbp/aPwObUoFr9ZdRutYmE1gVHQ6b9NO20pMQT9eTxv0COpPQFtllrt1trs4B3gRGFzukCfAFgrd0CtDbGnBHAmERERNibmk5G8vVk7rkeE3GMGm1epHqjzziQkUz8G/EMnjOYRdsXAZB6KtWna6onj/8FMklpBuzO9zjZfSy/dcBoAGNMX6AV0DyAMYmISBVmreWDVbs5ueNesk90pFrDT6jR5iXCo35vBGix7Evfx+TvJnPOO+f4fG315PG/QBbOetqGr/Ae/NOAGcaYtcB6YA2QfdqFjBkHjANo2bKlf6MUEZEqYXfKSR78cD3f/HKYdo2jSKn9AtkRe7ye73A6SMtK8+naxuOPPCmrQCYpyUCLfI+bA3vzn2CtPQaMBTCuvYV3uP9Q6LxZwCxw9e4JULwiIlIJOZ2W2d/v5JklSRjg8RFdua5fKz7Z6ao38XU6pygWqxU+ARDIJGUl0N4Y0wbYA1wDXJv/BGNMLHDSXbNyK7DcnbiIiIiU2baDx5k4dz2rfzvKwA4NeXJ0HM1io/Oez8wueWPamGoxHMs6hi00OZC7wkdJiv8ELEmx1mYbY+4GlgDhwKvW2o3GmNvdz88EOgOzjTE5wCbglkDFIyIiVYcjx8m/v/6V57/YRmSEk8ZtlvBz2FeMXdqY85qfx/Lk5exL31f8hQppUrMJn435jPg34j0+rxU+/hXQzdystYuBxYWOzcz39fdA+0DGICIiVcuGPWlMmJPI5n3H6NUWfqs2nXRzBHBtvPZe0nulvnZucWzjmo09Jjla4eNfAd3MTUREpLxkOnKY9skWRrz0HYdPnOLfN/TmRL0ZZLkTFH/IncoZ32s8UeEFOyFHhUdphY+faVt8ERGp8H7akcKkuYlsP5zO1QktePDSzsTUiGTCKv9Nv4SZMBZtX8SwtsPykhX17wksJSkiIlJhnTiVzdOfbOF/P/xGi3rRvHlLP85p3yDveW/TMqXhtM4CK3jyJysSGJruERGRCunLpIMM/sfXvPnjb9w8oA1L/u+8AgkKeJ6WKQv16ClfGkkREZEK5Wh6Fo8v3MS8NXto36gWc+/oT6+WdT2em39aZl/6PsJMGE7rzPu7NLSCp/woSRERkQrBWsui9ft49KONpGU4+MuFZ3LXhWdSPSIccHUrLlwjAr8nKEBeYlLaBAW0gqc8KUkREZGQd+BYJpPnb+CzTQeIaxbDm7f2o3OTOnnPL9q+iCkrppCZ49qcbV/6Ph7+9mGMMT51MPaVVvCULyUpIiISsqy1vL9qN08s2kxWtpMHLunELee0ISK8YEnljJ9n5CUoubJt9ukd48qgSc0mWsFTzpSkiIhISNp15CQPfJjId9uO0K9NPaZdEU+bBjU9nhvoOpHcnWalfClJERGRkJLjtLy+YifPLkkiPMzwt1Hd+EOfloSFee807M+lxoVpiid4tARZRERCxtYDx7niXyt4fOEmzm5Xn8/vPY/r+rUqMkEB/y81Nrjer0nNJkzpP0VTPEGikRQREQm6rGwnM7/+lReW/UKt6hHMuKYHl3dvijFFJye5Cu8AG1M9htRTqaWOx2LzRlCUoASPkhQREQmqdbtTmTg3kS37jzO8e1OmDO9C/VrVS3yd3B1gc1f6lFX+jdu0/X1wKEkREZGgyMjK4Z9Lt/LKN9tpWLs6r/wxgYu7nFHm63pa6VNa+9L3nba0Of/W+BJYSlJERKTcff/rER6Yl8jOIyf5Q9+WPHBpJ+pERfrl2v5c6RNmwk5LeHJHWJSkBJ6SFBERKTfHMh1M+2QLb/+4i1b1a/D2bf3o365B8S8sAW8rfaLDo8nIyfD5OHjfmVZb45cPre4REZFysWzLAQb/Yznv/rSL285tw6fjz/N7ggKeV/pEhUfxaP9Hubrj1YQZ14++MBPG1R2v5tH+j3pcGXR1x6tpUrOJx/fQ1vjlQyMpIiISUEdOnGLqwk18tHYvHc+ozcwbetOjRWzA3q/wSp/8xa7D2g7j4bMe9vi6wk0Ilycv57zm5/HRto8KTPlo35TyoyRFREQCwlrLgsR9TPl4I8czHfzfRe258/wzqRbhn0F8Tw0FS1snkvu6wkWyH237iBFnjmB58nKt7gkCJSkiIuJ3+9MyeXj+epZuPkj3FrE8c0U8HRvX9tv1PTUUzL/suKQrchZtX8SD3z54Wg1KZk4my5OXa0v8IFGSIiIifuN0Wt5duZunFm/G4XTy8LDOjB3QhvBidowtiqcRE0/LjPPva1KSFTm5CY+KZEOPkhQREfGLnYfTmTQvkR+2p3B22/pMuyKOVvU9NwT0lbcRE2/7oBSVUOxP3+9zwpOfimSDx1jrxz7W5SAhIcGuWrUq2GGIiFR+ie/DF1MhLRlimsOgRyD+qtNOy3FaXv12B3//PInIsDAeGtaZq/u08HlL+6IMnjPY43Li3OLWwprUbEJGdobHLfFjq8eSmZ1ZICGJMBFk22yv7x8VHqXePQFmjFltrU3w9JxGUkRE5HSJ78OCv4DDvX9I2m6Yfyd8MhEyjuYlLUmNLuH+OetYl5zGRZ0b8cTIOBrH+K/Rn7eREad1EhUeddqqm/Oan8fcrXNPOz8yLBJr7WkjJkUlKGEmTAlKkGmfFBEROd0nE39PUHI5HZCRAliyUvfy3JylXPb81yQfzeCFP/TklT8m+DVBAe9TLbndiZvUbILB5D1enrzcY+JRI6IGx7KO+fy+UeFRPHnOk0pQgkwjKSIiUlDi++5kxLM1znZMdIxjq23ByKifeeTeidSrWS0goYzvNf60GpT83YkLJxEPfPOAx+scyzrmdSdaTzSCEho0kiIiIgV9MdXj4ZO2Oo87rmd01mMctzV4NfIZ/snfA5aggGvJsKcRE28JhLeRl9wiWU87yxbWpGYTJSghQiMpIiIVmY/FrSWSlnzaoRU5XZiUfRu77BlcH/45EyPepbbJgJgWZXsvH3gaMfGmuJEX+H0n2jrV6nAy+yQOp+O0cyU0KEkREamoPBW3LviL6+uyJCoxzV3XAtJsDZ7KvpZ3cy6ktdnPu9WmclbYFtd5kdGupCiEFLUlfu7z+RMef+5aK/6nJcgiIhXVc93ykokCYlrAPRtKf93E9+Gju/g8qxsPO27mELHcFr6QeyI+JKpGzQKre8o8aiNVnpYgi4hURh6mZVzHd7sSmFImEYfbjmBK1hYWOnrTyezilci/Ex+2w/VktUYwcUcZgi45jXZUXUpSREQqmtw6FIoYCS/F1I+1lo/W7uWxBRtJd8Tz14j3+VP4AqqZnHzX9ZIYBUhRPXo0bVP5aXWPiEhFkluH4mmapzBHhteVOoXtTc3g5tdX8n/vraV1g5osqv88f46YXzBBAdc0TzkqrkcP/J7I7Evfh8XmJTKLti8q11jF/5SkiIhUJF9MPX2TtaIUM/LhdFr+98NvDH5uOT9sT+GRy7ow5/b+tB9yu6swNr8gFMp623E2/3FfEhmpmDTdIyISqjwtLy7pdEsRIx87DqczcW4iP+1I4ZwzG/DU6Dha1KvhejJ3isjfy5tLyNsGbPn3Q/ElkZGKSUmKiEgoyUtMdgOGvLqT3BqT6Lqed4ONrgfZGQVHWXJHPgolO9kXPMJ/0nrz3OdbqRYRxjNXxHNlQvPTGwLGXxWU1Tv560tiqsec1gSw8F4mviQyUjFpukdEJFScVm9SqDA2NwHxNA1zydMw/Hn35mrG9ffw513P513TsumoYdT7h5j2yRYGdmjI0nsHcpWfOhb7Q+H6ktRTqRhjiKkW43XHWU87yRa3Kdui7YsYPGcw8W/EM3jO4AL1K0U9J+VLIykiIqHCl3qTjKMwepb3aZjCIx/PdQNHBqdsBC9mj+JfOcOJJZ2XY97kkhveDpnkJJen+hKH00GNyBp8+4dvTzs/d9QlMyeTMBOG0zppUrNJkat7iloxBPi0mkjKh5IUEZFQ4Uu9SUzzgtMwuVM588Z5rhtJS2a1sz0THbexzTZndNhyJke+Sd1T6RBiCQqUrL6kcLLhtE7AlVjkFs16SiyKK7T19pySlPKnJEVEJFR4qzfJVXh1TTHb4qefyubZsDt4PbM/TTnC65HTOD880fV8OfTcKY2S1Jd4SjZyFTUCUppCWxXhBodqUkQkNCW+75qqmBLr+jvx/WBHVDq+fo7E9+HUce/Xya0xyT9K4ml6yL03yje/HGLIP5fz2slzuCHyS5ZUn/h7ghKCPXdylaS+pLjEwdsy5KI6JRf1nJS/gCYpxpihxpgkY8w2Y8wkD8/HGGMWGGPWGWM2GmPGBjIeEakgChSQ2t9HCCpaolKSz/HFVMjXjTdPdD2YkubqxVO43sTD9FCarcn9hy/hhv/+RLXwMN7/09lMvfIsasU2pEBBbYj23BnWdhhT+k+hSc0mXgtlc/mSOHhKZIpKhEpThCuBE7DpHmNMOPAScDGQDKw0xnxsrd2U77S7gE3W2uHGmIZAkjHmLWttVqDiEpEKoIgRglD94epRST6Ht3qUjKPer5+vWzHApzkJTHaMJYU63HF+O8YPas+nG/YzYEkD9qY+TdPYaCac35GR8c1K+YHKR+FOxd6M7zW+QE2KJ54SmeI6JRf3nJSfQNak9AW2WWu3Axhj3gVGAPmTFAvUNq7y8lpACpBd+EIiUsV4bZxXvn1jysyXz1FcH56itqEf9Ags+AsHs6oxxXETi5396BK2i9cGR9Ht/E7MX7OHB+atJ8Ph2tp+T2oGD8xbD8DInqGdqPgif7LhqY6lqBGQohIhX5MkCbxAJinNgPzNJZKBfoXOeRH4GNgL1AauttZdnp2PMWYcMA6gZcuWAQlWREJIoRGCAscrEm+fA+uqT2k/GNa97X3ZcWS065znunlcbmzjrmTeyp1M/aUVGVRjQsT7jOvbgMjz7wBg+pKkvAQlV4Yjh+lLkkImSSlrY8D8CYWaDFY+gUxSPK1tK/yrwhBgLXAh0A743BjzjbX2WIEXWTsLmAWQkJBQRNtPEakU3CMEHndPLW+etqb3dcrJ0+fIlbYbVr2K9xGUFqcnMflW7yS3uIwHZ3/O8n1d6W2SeDryFc4M2wvro6F1P4i/ir2pnpMfb8fLm68djn2lEZDKJ5CFs8lA/jVuzXGNmOQ3FphnXbYBO4BOAYxJRCqC+Ks8755a3vUongpf598JT7fxbdVRgc/hibffuYyrUPaXz05LcJxZmcxe8DlDnlvOqv05PBbxOh9Um+pKUKBA5+OmsdGFL1zk8fKmxoBSnECOpKwE2htj2gB7gGuAawudswsYBHxjjDkD6AhsD2BMIlJRBKlvTAGeCl+djt/3Mim0L4lHuZ9jSizek5JCcqe1CtW0/OpswiTHbaw81Ylz29flyd/upkXYodNf737dhCEdC9SkAERHhjNhSEff4ggwNQaU4gRsJMVamw3cDSwBNgPvW2s3GmNuN8bc7j7tcaC/MWY98AUw0Vp7OFAxiYgUqfCeJh7rSQpxZMAnE4s/z9d6mvzTWu7XOGw4L2cP55Ksp9hqm/NsnfeYfXNfWtSN8nwN9+tG9mzGU6PjaBYbjQGaxUbz1Oi4kKlH0Z4kUhxjbcUq8UhISLCrVq0KdhgiUtkU3r0VKNCFuDijXyl65Mfj9Qsx4TBqZoEt7zfMf5aJGX9ko23DpWE/MiX6XRqNeMJ1jqdrRkaH9D4o+RWuSQHXihxv+6JI5WSMWW2tTfD0nLbFFxEBL839LD4nKvn3Pskrtt3tSjxsjqsupfu1rjoTbyM01pl3jUxHDs/vjeffGY9Q15xgZsRzDK23HwY9cXozwdIW9gaZL/uVSNWmkRQRESi6ZiSmhTvhCHMlEh4ZmJJa9IhJZLQrUVn9uitx8fQ+92xg1c4U7p+byPZD6VzZuzkPD+tCTI3IUn0skVBX1EiKeveIiID3mpGYFq7RicjoIhKUfK/3OCLj5shwLTv2lKBERnPivEd49KMNXPnv7znlcDL75r5Mv7K7EhSpsjTdIyKS+D5kpZ9+PLeItajEI/954MOuuJ5Ha75ueTcPft6AvWm/cePZrZkwpCM1q+ufaKna9H+AiFRt3qZnImtCRHWYN44ia1JyR1py60C87jLrWaqtyeOO65m7sSft6qTzwZ8GkNC6Xsk/h0glpCRFRKo2b6MkjpPg8DC6kp+7hiSPtxEZLxbn9OURx1hSqcnd4R9yd9Qqolqv9fn1IpWdkhQRqdq8Ts8Us6ig8Db9viwxdr/uYFZ1HnHcxKfOvnQzO3gjchpdw36DY566iYhUXUpSRKRqK+H0jGubfg9LfYurWwFsnRZ80GYqT/yYTSaRTIx4h9vCFxFhnL/HIiJ5lKSISNVWVBPAwgpP7+RXTMHs7vDmPBj2JN/8GE7fhhFMOzmZtjk7fz8hWA0URUKYkhQRqdrir4JdPxTdkRiKTyK8jMjkWMPsalcxPeNyjCOCx0d04rp+rQjbkFlhN2ETKS9KUkREfvkMjwmKCXftjeJLEuFhRGZbWFvur/EYPx8O5/yODfnbKFcfHSA0GiiKhDglKSIi3qZqbE7xPXnyi4gGRwYOG86/zVU8n3kZNajGc1d3YWSPZhijwliRkigySTHG9CrqeWvtz/4NR0QkCIoqnp1/p+tvH5sHrne2YYJjHFtsK4a1zOaxPw6kQa3q/o9ZpAoobiTl7+6/o4AEYB2ublvxwI/AOYELTUSknBRVPOt0wLzbXPUj3qZ8vphKZlY2/8y+hldyhlGfY/w78h8MOXUAao0IfPwilVSRSYq19gIAY8y7wDhr7Xr3427AfYEPT0SkHOQmHvNu835O2m5XIpP/fLcfj9ZikmMaO2wTrg7/kgcj3iLGnIQ0Te+IlIWvDQY75SYoANbaDUCPgEQkIhIMvtSdODJcIypuxzMdPDx/PVdnTSabcN6K/BtPR77iSlBA+56IlJGvhbObjTH/Ad7EVQJ/PbA5YFGJiJS3xPd9O89dZPvlloM89OF69h3L5JaODv6651FqZKf9fp72PTnNou2LmPHzDPan76dxzcaM7zWeYW2HBTssCWG+JiljgTuA8e7Hy4F/BSQiEZGSSny/7HuO5BshKUpK7Q48/t5aPlyzh/aNajH3jv70alkXErO070kRFm1fxJQVU8jMyQRgX/o+pqyYAqBERbzyKUmx1mYaY2YCi621SQGOSUTEd4V75qTtdnUunneba4fY9oNd+6AUlzwUszW+tbDInMujx24nbd1e/jKoPXdd0I7qEeEB+FCVz4yfZ+QlKLkyczKZ8fMMJSnilU9JijHmcmA6UA1oY4zpAUy11l4ewNhERDzLP3Jiwlz7mRTg3pgtbTes+u/vh70Vvya+j2vhoucN3Q446/Awd/J5Zlfim8fw5hXxdG5Sp+DrCydKXopsq6r96ftLdFwEfJ/ueRToC3wFYK1da4xpHaCYRERcPE3jQMGE4LQEpRi5xa+FmwN6SFCsNbzf/T88sa4mWdlOHry0AzcPaENEeKE1B56aC3p6nyqscc3G7Evf5/G4iDe+JinZ1to07ZYoIuXG2+iEe1fXMim8w6yHHWd3ORsxKftWVvxYnX5t6vD0FfG0blDTt+u5OdOSaTdpEU1jo5kwpCMjezYrW9wV2Phe4wvUpABEhUcxvtf4Il4lVZ2vScoGY8y1QLgxpj3wF2BF4MISkSrP2+hEWRMUOH1pcL4dZ3Os4bWcoTybfRURxvK3Ud34Q5+WhIUV8Uualx1r9zrrY4E9qRk8MM+1i0NVTVRy6060ukdKwtck5c/AQ8Ap4G1gCfBEoIISkRDjj9UzJeWtn443Jtw99eOltiSXp6XB7h1nt56qx/2Ocay17bkwfB1/G96eJv1aFf/eHnasPWmr8Uz27/cow5HD9CVJVTZJAVeioqRESsLX1T0ncSUpDwU2HBEJOcEqCvXWT8eEuRISp+P3Y5HRMPx5VzyFEyofVvdkdRnDv9ZH8uL6MGpzkhl13ubyYSMw3a/0Ldbc67nfN9lZn2eyr+JjZ8HOIXtT/TAKJFKFGGuL+I0j9yRjPgeutNamuh/XBd611g4JbHinS0hIsKtWrSrvtxWpup7r5jlZiGkB92wI3PsWTo7yC68G1WpBxtEyj+ys253KxLmJbNl/nMu7N+XR4V2oX8aGgD0e+4zUDMdpx5vFRvPdpAvLdG2RysYYs9pam+DpOV+nexrkJigA1tqjxphG/ghOREKct2mXkk7HlFRu0vHh7aev4MnJgmo1YeKOUl8+IyuH55Zu5T/fbKdR7Sj+88cELupyRhkCdpm/Zg/HT2V7fO6CTg3LfH2RqsTX3j1OY0zL3AfGmFYUOekrIpWGt/4z5dGXJv4qsE7Pz5UhSfr+1yMMnbGcWcu3c3Wflnx273l+SVAApi9JIsfp+Z/HN3/YxYBpy5i/Zo9f3kuksvN1JOUh4FtjzNfux+cB4wITkoiEFA9FoeXal8ZbbUopkqRjmQ6eWryFd37aRav6NXj7tn70b9egTOHNX7OH6UuS2JuaQdPYaPYUU3eilT4ivvO1cPZTY0wv4CxcpfP3WGsPBzQyEQkNhYpCy70vjZ+SpC82H+ChDzdw8Hgm485ryz0XdSC6Wtm2tJ+/Zg8PzFtPhsM1HbUnNaO4tUWAVvqI+MrXkRSA6kCK+zVdjDFYa5cHJiwRCSnxVwVv59QyJklHTpzisQWb+HjdXjqeUZuZN/SmR4tYv4Q2fUlSXoKSy9d5cK30ESmer717ngauBjYCuRPEFlc3ZBGRwCpFkmSt5eN1e3lswSaOZzq456IO3HF+O6pF+FqKV7yiEo26NSI5evL0FT65msZG+y0OkcrK15GUkUBHa+2pAMYiIlJyHjaa29dqOA9/uIEvthyke4tYnrkino6Na/v9rb3VoORfalx4SgggOjKcCUM6+j0ekcrG1yRlOxCJa8dZEZHgyZ+URNeFU8fzNnZzpibzzty5PJVTg2wTzsPDOjN2QBvCi9rSvgwmDOlYbAKSW3eSv7i2qvfxEfGVr0nKSWCtMeYL8iUq1tq/BCQqEakaSrrdfuEN3jJS8p7a6TyDSdm38oOzK/2rbeOp8bfSqr6XhoB+4ksCUnj1jxIUEd/5mqR87P4jIuIfpdlu30PTwWwbxqs5l/D37CupRjbTImZxtfkaU798uuuO7NnMa9LhafWPlh+L+M7XJchvBDoQEalivHU5/mKq9ySl0AZuW5wtmOgYxzrbjovCVvFE5Gs0NkddW/aHAE+rf7T8WMR3vq7uaQ88BXQBonKPW2vbBiguEansSrjd/vw1eziLBjTmEKdsBC9lj+DlnBHEkM4Lkc9zWdgPGEP5bjRXDG+rf7T8WMQ3vk73vAY8CjwHXACMxbWpm4hI6ZRgJ9ncaZOLc67kD+HLeDR7LFttC0aFfcPkqPeoVx3IMOW/0VwxvK3+0fJjEd/4mqREW2u/MMYYa+1vwBRjzDe4EhcRkZIrwU6yudMmH3MOHzsH0IhU/hvxDF0j9lBv5NNlSkoCWdjqy+ofEfHO1yQl0xgTBvxijLkb2AMU2wXZGDMUmAGEA/+x1k4r9PwE4Lp8sXQGGlprUxCRyq0EO8kWHI0wHKQut2Tfj8mGHfHDSh1CoAtbtfxYpGyMtcVv4myM6QNsBmKBx4EY4Blr7Q9FvCYc2ApcDCQDK4E/WGs3eTl/OK6eQBcWFUtCQoJdtWpVsTGLSMWXluHgqcWbeXelh2khXJumTRjSsdRJwIBpy4rdjE1EAssYs9pam+DpOV9X96x0f3kCVz2KL/oC26y1291BvAuMADwmKcAfgHd8vLaIVHKfbdzPw/M3cPjEKS7s1IgV2w6Tme3Mez46MpzW9aO55721ef1yihsJ8bVjsQpbRUJDkUmKMWYBRfTLstZeXsTLmwH5f/1JBvp5eZ8awFDg7qLiEZHK7/CJU0z5eCMLE/fRqXFt/nNjAvHNY09LMC7o1JC3fth12j9Q3pb4lqRjsQpbRUJDcSMpz5bh2p5W/3hLeIYD33mrRTHGjAPGAbRs2bIMIYlIqLLWMn/tHndDwGxqR0WwZf9x7njz57wpnPyJx4Bpy7z+g+JpJMRbx+LCiYoKW0VCR5FJirX26zJcOxnIv6NSc2Cvl3OvoYipHmvtLGAWuGpSyhCTiISgPakZPPTher5KOkTr+jXIyMrheGZ23nOepnCKmpLxNBLi7XyLqwZFha0ioSeQm7mtBNobY9rgWg10DXCth2vHAAOB630PW0QqA6fT8tZPu5i2eDNOC48O78Iry7dzKl/tCXiewvFWU2LA40iILx2LRSS0hPl43mvAv4BsXJu5zQb+V9QLrLXZuGpMluBaGfS+tXajMeZ2Y8zt+U4dBXxmrU0vafAiUnFtP3SCa2b9wOT5G+jZsi6f3XMeYwe0YV9apsfzC4+ETBjSkejI8ALHDHDdWS09joR4Ol9TOyKhLaCbuVlrFwOLCx2bWejx68DrPkcsIhVado6T/3y7g+c+30r1iDCeGRPPlb2bY4yrjM3XXVpLugeJ9iwRqXgCupmbiEh+Ly3bxj+/2IojxxIVGcZfB3fkqoSCzQBLsktrUR2IPSnp+YUFcndaETmdr0nK/wE1gL/g2sztQuDGAMUkIpVMpiOHP7+zhs83Hch3zMm0T7YQEx1Z4Ad9qI54BHp3WhE5nU87zuadbEwdwFprjwcupKJpx1mRimX1byncPyeRXw95LjurKIWr2p1WJDDKvOOsMSYBV/FsbffjNOBma+1qv0UpIpVK+qlspi9J4o3vd9I0xvvmaBVld1dvcVaU+EUqIl+ne14F7rTWfgNgjDkHV9ISH6jARKTi+uaXQzwwbz3JRzO48exWTBjaiSHPLfepINbf/FVH4mtBr4j4j69LkI/nJigA1tpvgaBN+YhIaEo76WDCB+u44b8/US0ijA9uP5vHRnSjVvWIoCwBzq0j2ZOagcVVRzJhzjp6PPYZbSYtYsC0Zcxfs8ena2kJs0j5K653Ty/3lz8ZY/6Na1dYC1wNfBXY0ESkIvl0wz4mf7SRlPQs7jy/HX8Z1J6ofD/UvRXEgqveIxBFsp62wnfkWFIzHEDJil9DtaBXpDIrsnDWGPNlEa+11tpyrxZT4axIaDl4PJNHP9rIJxv206VJHZ4ZE0+3ZjE+vbbwihlwjU48NTrOLz/820xa5L1Daj4qfhUJnlIXzlprLwhMSCJS0VlrmfvzHh5fuIkMRw4ThnRk3HltiQz3dRbZ80iHty7GpeGtjqQwX84RkfLn+78mbsaYhYEIREQqjuSjJ7nxtZXc98E62jeqxeK/nMtdF5xZogQFAr9ixlMdiSfhxlPTdhEJNl9X9+SnCViRKsrptPzvh994+tMtADx2eVduOKsVYWGl+yEf6BUzhetIvE395JRgvygRKT+lSVLW+D0KEQl5vx46wcQ5iaz67SjndWjIk6O60bxujVJda/6aPTy2YCNHTzpOe87TipmyLCPOvxW+tw3ZYqMjA1a8KyKlV+IkxVp7cyACEZHQ5MhxMmv5dmZ88QvRkeE8e2V3rujVLK8hYEnNX7OHCXPW4cg5ffSibo1IHh3etUCC4M/t6D31BYoMM6RnZZdqxY+IBFZxS5DXg/fieGutNnMTqcQ27Enj/jmJbNp3jEvjGjPl8q40qh1VpmtOX5LkMUEBqFEt4rTEwJ/FtZ6WEZ/Myj5tRMefxbsiUnrFjaRc5v77Lvff/3P/fR1wMiARiUjQZTpymPHFL8xavp16Nasx8/peDO3WxC/XLqoo1tNz/i6uLdwJuc2kRX69voj4T3FLkH8DMMYMsNYOyPfUJGPMd8DUQAYnIuVv5c4UJs5JZPvhdK7s3ZyHh3Uhpkak365f1LJgTwWzgS6u1Xb3IqHL1/WCNd39egAwxvQHagYmJBEJhhOnsnnkow1cOfN7snKc/O+Wvky/srvPCcr8NXsYMG1ZsdvNTxjSkcjw0+tZIsOMxy3mA70dvba7FwldvhbO3gK8aozJ3UYyFVABrUgl8VXSQR76cAN70zK4qX9rJgzpSM3qp//z4G2Vja/Frbmvd+RYwgw43aUpsdGRTLm8a961Cr/HU6PjArYdvba7FwldRW6Lf9rJxtRxvyYtcCEVTdvii/jP0fQsHl+0iXk/76Fdw5o8Myae3q3qeTy3qC3spy9J8jhlkn+7+Yfnr+etH3YVqMQvvAW+p/cwwHVnteSJkXFl/8AiEnJKvS2+MeZ6a+2bxph7Cx0HwFr7D79FKSLlxlrLJxv288hHG0g96eDPF57JXRecWaAhYGFFrbIprrh1/po9pyUo+V+ffzSj8HtY4K0fdpHQqp7XkRaNeohUTsVN9+TWndQOdCAiUj4OHstk8kcbWLLxAHHNYph9cz+6NK1T7OuKSkSKKz6dviTJ614G+a/r7T2s+xpAiaaVlMiIVGzFre75tzEmHDhmrX2unGISkQCw1vLB6mSeWLiJU9lOJl3SiVvPaUOEj/12ikpEPG2Slr/4tKjlvPlX0RS18mdvaoZPe6b4c/M3EQmuYv91stbmAJeXQywiEiC7U05yw39/4v45iXRqXIdPxp/L7QPb+ZygQNGrYEb2bMZTo+NoFhuNwVWLkr/WxNtyXuO+bv738LaPbdPYaJ/2TCkqkRGRisXX1T0rjDEvAu8B6bkHrbU/ByQqEfGLHKfljRU7mb4kiTADj4/sxnV9W5aqIWBxq2AKb5KWn6eRltyC2PyvGdmzGat+S/FYYDthSEevBbr5k6DSbv6mKSKR0ONrktLf/fdj7r8NrmniC/0ekYj4xS8HjjNxbiI/70rl/I4N+dso10hHWRSViBT3OvBtme8TI+NIaFXP67lFTStB6TZn0xSRSGjyaQmyMeavuJKS3F+/LHAMWGWtXRuw6DzQEmSRojlynMz86ldeWLaNmtXDeWR4F0b2KH1DwFBT3IhHUUulvSUc3roj519CLSKBUeolyPn0BhKAj3ElKsOAlcCfjDEfWGuf8UukIlIm65PTmDBnHVv2H+ey+CZMubwrDWpVD3ZYflXcaE5pNmfzd38gEfEPX5OU+kAva+0JAGPMo8Ac4DxgNaAkRSSIMh05PLd0K68s306DWtWZdUNvBndtHOywgqak01Lq3yMSmnxNUloCWfkeO4BW1toMY8wp/4clIr76cfsRJs1bz47D6VzTpwUPXNqZmOiSNQSsDEWjZfkMxS2hFpHg8DVJeRv4wRjzkfvxcOAdY0xNYFNAIhORIh3PdPD0p1t484ddtKgXzVu39mPAmQ1KfJ3KUDTq7TOs+i2FL7ccKjZxUf8ekdDkc+8eY0xv4BxcNSnfWmuDUr2qwlkR+HLLQR78cD37j2Vy84A2/HVwB2pU8/V3joIqQ9Got8+QuwwxV3EFtCJS/vxROIu1djWu+hMRCZKU9CymLtjI/LV7ad+oFnPv6E+vlnXLdM3KUDRa1Hb6+RXenVZEQlvpfvUSkXJlrWVh4j6mfLyRtAwH4we1584L2lE9wntDQF9VhqLRorbTL6wiJV8iVZ3ve2KLSFAcOJbJbbNX8+d31tCsbjQL/3IO91zcwS8JChS93X1F4ekzFLW9vohUDBpJEQlR1lreW7mbvy3eTFa2k4cu7czYAa1L1G/HF5WhaNTTZ7igU0Pmrt6jFTsiFZjPhbOhQoWzUhX8diSdSXPX8/32I/RrU4+nr4indYOawQ6rwqkMS6tFKju/FM6KSODlOC2vfbeDZz9LIiIsjCdHxXFNnxalaggope81JCKhQUmKSIhI2n+c++cmsm53KoM6NeKJUd1oEqP6CRGpupSkiARZVraTl7/axktfbqN2VCQzrunB5d2bBqwhoKZARKSiUJIiEkTrdqdy/5xEkg4cZ0SPpjxyWRfqB7AhYGXYXVZEqg4lKSJBkJGVwz8+T+K/3+6gUe0o/vPHBC7qckbA33f6kqQCq11AG5yJSOgKaJJijBkKzADCgf9Ya6d5OOd84J9AJHDYWjswkDGJBNuKXw8zae56dqWc5Np+LZl0SSfqRJWsIWBpVYbdZQvT9JVI5RWwJMUYEw68BFwMJAMrjTEfW2s35TsnFngZGGqt3WWMaRSoeESC7Vimg6cWb+Gdn3bRqn4N3r6tH/3blbwhYFlUht1l89P0lUjlFsiRlL7ANmvtdgBjzLvACAp2Tb4WmGet3QVgrT0YwHhEgmbppgM8NH89h46fYtx5bbnnog5EV/PPjrElMWFIxwI/1KHibHDmacRE01cilVsgk5RmwO58j5OBfoXO6QBEGmO+AmoDM6y1swtfyBgzDhgH0LJly4AEKxIIR06c4rEFm/h43V46Na7NrBsS6N4iNmjx+LK7bChOn3gbMSmcoOSqyNNXIvK7QCYpntZPFt7eNgLoDQwCooHvjTE/WGu3FniRtbOAWeDacTYAsYr4lbWWj9ftZcrHGzlxKpt7LurAHee3o1pE8NtlFbXBWahOn3gbMQk3hhwPu2ZX1OkrESkokElKMtAi3+PmwF4P5xy21qYD6caY5UB3YCsiFdS+tAwe/nADX2w5SI8WsTwzJp4OZ9QOdlg+CdXpE28jIznWEh0ZXiGnr0SkeIH8tW4l0N4Y08YYUw24Bvi40DkfAecaYyKMMTVwTQdtDmBMIgHjdFre+vE3Lv7Hcr779TAPD+vM3Dv6V5gEBUJ39Y+3kZFmsdE8NTqOZrHRmHyPgz09JSL+EbCRFGtttjHmbmAJriXIr1prNxpjbnc/P9Nau9kY8ymQCDhxLVPeEKiYRAJlx+F0Js1N5McdKfRvV59po+NpWb9GsMMqsVBd/VNUwa/684hUXgHdJ8VauxhYXOjYzEKPpwPTAxmHSKBk5zh59bsd/P2zrVSLCOPpK+K4KqFFwLa0D7RQXf3jS8GviFQ+2nFWpJQ27zvGxLmJJCancXGXM3hiZDfOqBMV7LDKJJSTAY2YiFQ9SlJESuhUdg4vLdvGy1/9Skx0JC9e25NhcU0q7OhJYUoGRCRUKEkRKYGfdx1l4pxEfjl4glE9m/HIZV2oW7NasMMSEamUlKSI+OBkVjbPLtnKayt20LhOFK/d1IcLOgWui0MobqgmIlLelKSIFOO7bYeZNC+R3SkZ3HBWK+4f2pHaAWwIGKobqomIlDclKSJepGU4eHLRZt5btZs2DWry3riz6Ne2fsDfN1Q3VBMRKW9KUkQ8+Gzjfh6ev4Ej6VncPrAd/3dRe6Iiy6chYKhuqCYiUt6UpIjkc+j4KaYs2MiixH10blKH/97Yh7jmMeUaQ6huqCYiUt6UpIjgagj44Zo9TF24iZOncrhvcAf+NLAdkeHl3xCwLBuqlbTgVgW6IhLKlKRIlbcnNYOHPlzPV0mH6NXS1RDwzEbB67dT2g3Viiu4LZyQXNCpIXNX71GBroiELGM9tDkPZQkJCXbVqlXBDkMqgdyGgNM+2YLTwv1DO/LHs1sTHuafTdnKe5RiwLRlHqeJmrnfu/DojAE8/d/fLDaa7yZdGLA4RUTyM8asttYmeHpOIylSJW0/dIJJc9fz084Uzm3fgCdHxdGinv8aAgZjGXFRBbeeVgx5+/VEBboiEiqUpEiVkp3j5JVvdvDc0q1ERYQxfUw8Y3o39/uW9sFYRlxUwW1JEo9gF+iqTkZEcpV/VaBIkGzcm8bIl7/j6U+3cEHHhiy9dyBXBqhjcTCWEU8Y0pHoQsukcwtuvSUehT95sDse545A7UnNwPL7CNT8NXtKda0B05bRZtIiBkxbVqpriEhwKUmRSi/TkcP0JVu4/MXv2J92in9d14t/35BAowB2LPaWFARylGJkz2Y8NTqOZrHRGFy1JU+NjmNkz2ZeE5jrzmrp8fxgKWoEqiT8meyISPBoukcqtdW/pXD/nER+PZTOFb2aM/myzsTWCHxDwLIsIy4Lbx2MS7tiqLz5awRKu/aKVA5KUqRSSj+VzfQlSbzx/U6axkTzxs19GdihYbm9fygmBd4SmFDir43stGuvSOWgJEUqneVbD/HAvPXsTcvgj2e1YsLQTtSqXv7f6hUhKQg1/hqB0q69IpWDkhSpNNJOOnh80SbmrE6mbcOavP+ns+nTul6ww5IS8NcIVLCm20TEv5SkSKXw6YZ9TP5oIynpWdx5fjv+Mqj8GgKKf/ljBCoUp9tEpOSUpEiFdvB4Jo9+tJFPNuynS5M6vHZTH7o1K9+GgJVVRd+vRNNtIhWfkhSpkKy1zFmdzBOLNpPhyGHCkI6MO69tUBoCVkbB2DFXRKQwJSlS4exOOcmDH67nm18Ok9CqLtOuiOfMRrWCHValoiW8IhIKlKRIheF0WmZ/v5NnliRhgKkjunJ9v1aE+akhoPxOS3hFJBQoSZEKYdvBE0yam8iq345yXoeGPDmqG83r+q8hoBSkJbwiEgo0gS8hzZHj5KUvt3HpjG/45eAJ/n5ld94Y20cJSoAV1QdIRKS8aCRFQtaGPWncPyeRTfuOcWlcYx67vBsNa1cPdlgVmq8rdrSEV0RCgZIUCTmZjhxmfPELs5Zvp17Nasy8vjdDuzUOdlgVXklX7GgJr4gEm5IUCSkrd6YwcU4i2w+nc1VCcx66tAsxNSKDHValoBU7IlLRKEmRkHDiVDbPfLqF2d//RvO60bx5Sz/Oad8g2GFVKlqxIyIVjZIUCbovkw7y0Lz17DuWydgBrblvcEdqBqEhYGWnFTsiUtFodY8EzdH0LO59by1jX1tJjeoRzLm9P48O76oEJUC0YkdEKhr9NJByZ61l8fr9PPrxBlJPOvjzhWdy94VnUj1CDQEDSSt2RKSiUZIi5ergsUwenr+BzzYdIK5ZDLNv7keXpnWCHVaVoRU7IlKRKEmRcmGt5YNVyTy+aBNZ2U4euKQTt5zThohK3hCwoncSFhEJJiUpEnC7U07ywLz1fLvtMH3b1GPa6DjaNqz8DQHVSVhEpGyUpEjA5Dgtb6zYyfQlSYSHGZ4Y2Y1r+7asMg0BtS+JiEjZKEmRgPjlwHHun5vIml2pnN+xIU+OiqtyS121L4mISNkoSRG/ysp2MvPrX3lx2TZqVg/nn1f3YESPphhTNUZP8tO+JCIiZaMkRfwmMTmV++cksmX/cYZ3b8qjw7vQoFbVbQg4YUjHAjUpoH1JRERKIqBJijFmKDADCAf+Y62dVuj584GPgB3uQ/OstVMDGZP4X6Yjh+c+38or32ynYe3qvPLHBC7uckawwwo67UsiIlI2AUtSjDHhwEvAxUAysNIY87G1dlOhU7+x1l4WqDgksH7YfoRJcxPZeeQkf+jbgkmXdCYmWg0Bc2lfEhGR0gvkSEpfYJu1djuAMeZdYARQOEmRCuh4poNpn2zhrR930bJeDd6+tR/9z1RDQBER8Z9AJinNgN35HicD/Tycd7YxZh2wF7jPWrsxgDGJHyzbcoCHPtzAgWOZ3HpOG+4d3IEa1VTeJCIi/hXInyyelnPYQo9/BlpZa08YYy4F5gPtT7uQMeOAcQAtW7b0c5jiq5T0LKYu2Mj8tXtp36gWL9/Rn54t6wY7LBERqaQCmaQkAy3yPW6Oa7Qkj7X2WL6vFxtjXjbGNLDWHi503ixgFkBCQkLhREcCzFrLgsR9TPl4I8czHYwf1J47L2inhoAiIhJQgUxSVgLtjTFtgD3ANcC1+U8wxjQGDlhrrTGmLxAGHAlgTFJC+9NcDQGXbj5A9+YxPD2mH50aqyGgiIgEXsCSFGtttjHmbmAJriXIr1prNxpjbnc/PxMYA9xhjMkGMoBrrLUaKQkB1lreXbmbJxdtxuF08tClnbn5nDaEV5Et7UVEJPhMRcsJEhIS7KpVq4IdRqX225F0Js1dz/fbj3BW23pMGx1P6wY1gx2WiIhUQsaY1dbaBE/PaUmG5MlxWl77bgfPfpZEZFgYT46K45o+LapMQ0AREQktSlIEgKT9roaA63anMqhTI54Y1Y0mMeoxIyIiwaMkpYrLynby8lfbeOnLbdSOiuT5P/RkeHyTKtkQUEREQouSlCps7e5UJs5JJOnAcUb0aMqjw7tSr2a1YIclIiICKEmpkjKycvj7Z0m8+t0OGtWO4r83JjCosxoCiohIaFGSUsWs+PUwk+auZ1fKSa7t15JJl3SiTpQaAoqISOhRklJFHMt08NTizbzz025a1a/BO7edxdnt6gc7LBEREa+UpFQBSzcd4KH56zl0/BR/Oq8t/3dRB6KraUt7EREJbUpSKrEjJ04xZcEmFqzbS6fGtXnljwnEN48NdlgiIiI+UZJSCVlr+WjtXh5bsJETp7K59+IO3D6wHdUiwoIdmoiIiM+UpFQye1MzeHj+BpZtOUiPFrE8MyaeDmfUDnZYIiIiJaYkpZJwOi1v/7SLaZ9sIcdpmXxZF27q31oNAUVEpMJSklIJ7DiczqS5ify4I4UBZ9bnqVHxtKxfI9hhiYiIlImSlAosO8fJf7/dwT8+30q1iDCeviKOqxJaaEt7ERGpFJSkVFCb9x1j4txEEpPTuLjLGTwxshtn1IkKdlgiIiJ+oySlgjmVncNLy7bx8le/Elsjkpeu7cWlcY01eiIiIpWOkpQKZPVvR5k4N5FtB08wumczJl/WhbpqCOjR/DV7mL4kib2pGTSNjWbCkI6M7Nks2GGJiEgJKEmpAE5mZTN9SRKvr9hJkzpRvDa2Dxd0bBTssELW/DV7eGDeejIcOQDsSc3ggXnrAZSoiIhUIEpSQty3vxxm0rxEko9mcMNZrbh/aEdqqyFgkaYvScpLUHJlOHKYviRJSYqISAWiJCVEpWU4+NuiTby/Kpk2DWry3riz6NdWDQF9sTc1o0THRUQkNClJCUFLNu5n8vwNHEnP4o7z2zF+UHuiItUQ0FdNY6PZ4yEhaRobHYRoRESktNTMJYQcOn6Ku976mT/9bzX1a1Vn/p0DmDi0kxKUEpowpCPRhe5ZdGQ4E4Z0DFJEIiJSGhpJCQHWWub9vIepCzeRkZXDhCEdGXdeWyLDlUOWRm7diVb3iIhUbEpSgmxPagYPzlvP11sP0aulqyHgmY3UELCsRvZspqRERKSCU5ISJE6n5c0ff+PpT7ZggSnDu3DD2WoIKCIikktJShD8eugEk+YmsnLnUc5t34AnR8XRop4aAoqIiOSnJKUcOXKcvPLNdv659BeiIsKYPiaeMb2ba0t7ERERD5SklJMNe9KYODeRjXuPMbRrY6aO7Eqj2moIKCIi4o2SlADLdOTwwrJfmPn1durWqMa/ruvFJXFNgh2WiIhIyFOSEkCrdqZw/9xEth9K54pezZl8WWdia6ghoIiIiC+UpARA+ilXQ8A3vt9J05ho3ri5LwM7NAx2WCIiIhWKkhQ/W771EA/MW8/etAxuPLs19w3pSK3qus0iIiIlpZ+efpJ6MosnFm1mzupk2jasyQd/OpuE1vWCHZaIiEiFpSTFDz5Zv4/JH23k6Mks7rqgHX++UA0BRUREykpJShkcPJbJIx9t5NON++natA5v3NyHrk1jgh2WiIhIpaAkpRSstcxZnczjCzeRme3k/qEdue1cNQQUERHxJyUpJbQ75SQPfrieb345TJ/WdZl2RTztGtYKdlgiIiKVjpIUHzmdltnf7+SZJUkY4PERXbmuXyvC1BBQREQkIJSk+GDbweNMnLue1b8dZWCHhvxtVDea11VDQBERkUBSklIER46Tf3/9K89/sY0a1cP5x1XdGdWzmRoCioiIlAMlKV5s2JPGhDmJbN53jGFxTZhyeVca1q4e7LBERESqjIAuRzHGDDXGJBljthljJhVxXh9jTI4xZkwg4/FFpiOHaZ9sYcRL33H4xClmXt+bl67rpQRFRESknAVsJMUYEw68BFwMJAMrjTEfW2s3eTjvaWBJoGLx1U87Upg0N5Hth9O5OqEFD17amZgakcEOS0REpEoK5HRPX2CbtXY7gDHmXWAEsKnQeX8G5gJ9AhhLkay1PLZgE6+v2EnzutG8eUs/zmnfIFjhiIiICIFNUpoBu/M9Tgb65T/BGNMMGAVcSBFJijFmHDAOoGXLln4P1BhDreoR3DygDfcN6UCNairVERERCbZA/jT2tATGFnr8T2CitTanqBUz1tpZwCyAhISEwtfwi78O7qBVOyIiIiEkkElKMtAi3+PmwN5C5yQA77qTgwbApcaYbGvt/ADG5ZESFBERkdASyCRlJdDeGNMG2ANcA1yb/wRrbZvcr40xrwMLg5GgiIiISOgJWJJirc02xtyNa9VOOPCqtXajMeZ29/MzA/XeIiIiUvEFtELUWrsYWFzomMfkxFp7UyBjERERkYoloJu5iYiIiJSWkhQREREJSUpSREREJCQpSREREZGQpCRFREREQpKSFBEREQlJSlJEREQkJClJERERkZCkJEVERERCkrE2IE2FA8YYcwj4LUCXbwAcDtC1KyPdr5LR/SoZ3a+S0f0qGd2vkgvUPWtlrW3o6YkKl6QEkjFmlbU2IdhxVBS6XyWj+1Uyul8lo/tVMrpfJReMe6bpHhEREQlJSlJEREQkJClJKWhWsAOoYHS/Skb3q2R0v0pG96tkdL9KrtzvmWpSREREJCRpJEVERERCUpVMUowxQ40xScaYbcaYSUWc18cYk2OMGVOe8YWa4u6XMeZ8Y0yaMWat+88jwYgzVPjy/eW+Z2uNMRuNMV+Xd4yhxIfvrwn5vrc2uP+frBeMWEOBD/crxhizwBizzv39NTYYcYYKH+5XXWPMh8aYRGPMT8aYbsGIM1QYY141xhw0xmzw8rwxxjzvvp+JxpheAQ3IWlul/gDhwK9AW6AasA7o4uW8ZcBiYEyw4w7l+wWcDywMdqyh8MfH+xULbAJauh83CnbcoXy/Cp0/HFgW7LhD+X4BDwJPu79uCKQA1YIdewjfr+nAo+6vOwFfBDvuIN+z84BewAYvz18KfAIY4Czgx0DGUxVHUvoC26y12621WcC7wAgP5/0ZmAscLM/gQpCv90tcfLlf1wLzrLW7AKy1Vfl7rKTfX38A3imXyEKTL/fLArWNMQaohStJyS7fMEOGL/erC/AFgLV2C9DaGHNG+YYZOqy1y3F9z3gzAphtXX4AYo0xTQIVT1VMUpoBu/M9TnYfy2OMaQaMAmaWY1yhqtj75Xa2e3j5E2NM1/IJLST5cr86AHWNMV8ZY1YbY/5YbtGFHl+/vzDG1ACG4vrloary5X69CHQG9gLrgfHWWmf5hBdyfLlf64DRAMaYvkAroHm5RFcx+fz/rD9EBOrCIcx4OFZ4idM/gYnW2hzXLyNVmi/362dc2xqfMMZcCswH2gc6sBDly/2KAHoDg4Bo4HtjzA/W2q2BDi4E+XK/cg0HvrPWFvVbXmXny/0aAqwFLgTaAZ8bY76x1h4LcGyhyJf7NQ2YYYxZiyupW0PVHXnyRUn+ny2zqpikJAMt8j1ujus3jvwSgHfdCUoD4FJjTLa1dn65RBhair1f+f/xs9YuNsa8bIxpYK2tin0xfPn+SgYOW2vTgXRjzHKgO1AVkxRf7leua6jaUz3g2/0aC0yzrgKCbcaYHbhqLX4qnxBDiq//fo0FV1EosMP9Rzwryf+zZVYVp3tWAu2NMW2MMdVw/cP3cf4TrLVtrLWtrbWtgTnAnVU0QQEf7pcxprH7f+7c4dIw4Ei5Rxoair1fwEfAucaYCPcURj9gcznHGSp8uV8YY2KAgbjuXVXmy/3ahWuUDndtRUdge7lGGTp8+fcr1v0cwK3A8io66uSrj4E/ulf5nAWkWWv3BerNqtxIirU22xhzN7AEV+X3q9bajcaY293Pqw4lHx/v1xjgDmNMNpABXOP+La7K8eV+WWs3G2M+BRIBJ/Afa63H5X6VXQn+fxwFfOYefaqyfLxfjwOvG2PW4xqan1hFRzV9vV+dgdnGmBxcq+5uCVrAIcAY8w6uFZsNjDHJwKNAJOTdr8W4VvhsA07iHoUKWDxV9GeJiIiIhLiqON0jIiIiFYCSFBEREQlJSlJEREQkJClJERERkZCkJEVERERCkpIUEQkZxpgTgbqGMeb23BYExphO7q7Ka4wx7Ywx15b1fUXE/5SkiIhfGGNCet8l9x41s90PRwIfWWt74to9U0mKSAgK6X9URCQ0GGMmA9fhaix2GFhtrX3WGPMVsAIYAHzsfvwPXN13DwM3WWv3GWPaAS8BDXFtAHWbtXaLMaYN8Dauf4s+zfd+/wPmWGs/cj9+C3jPWvtxvnOaAO8Bddyvv8Na+437ub8Bl+HaXHCEtfaAMWYKcALXhl3/B+QYY87D1T+ps7t3yxvW2uf8eOtEpAw0kiIiRTLGJABXAD1xdYtNKHRKrLV2IPA88AIwxlrbG3gV+Jv7nFnAn93H7wNedh+fAfzLWtsH2J/vmv/h934qMUB/XDtd5nctsMRa2wNX76O17uM1gR+std2B5cBt+V9krV2Mq8P5c9baC4BJwDfW2h5KUERCi0ZSRKQ45+CaGskAMMYsKPT8e+6/OwLdcHXdBdc25PuMMbVwJRkf5OsqXt399wBcCRDA/4CnAay1XxtjXjLGNMKVGM211hbuTLsSeNUYEwnMt9audR/PAha6v14NXFyaDy0iwackRUSK46k1e365/XQMsNFae3aBFxtTB0h1j3h44q03x/9wTTFdA9x82ousXe6erhkG/M8YM91dc+LI1zsqB/07J1JhabpHRIrzLTDcGBPlHhUZ5uW8JKChMeZsAGNMpDGmq7uj7A5jzJXu48YY0939mu9wJSHgSkjyex1X7QjW2o2F38wY0wo4aK19Bfgv0KuUn+84ULuUrxWRAFKSIiJFstauxNWefR0wD1gFpHk4LwtXR+ynjTHrcNWI9Hc/fR1wi/v4RmCE+/h44C5jzEogptD1DgCbgde8hHY+sNYYswbXlNGM0n1CEoFsY8w6Y8w9pbyGiASAuiCLSLGMMbWstSeMMTVwFaOOs9b+HOD3rAGsB3pZa09LikSk8tNIioj4YpZ7ie7PuIpYA52gXARsAV5QgiJSdWkkRUREREKSRlJEREQkJClJERERkZCkJEVERERCkpIUERERCUlKUkRERCQkKUkRERGRkPT/E8eO63D9hX0AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-ba-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-ba-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-ba-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-balanced');\n", "title('80-10-10');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Same conclusions as before (good thing!)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2 is the majority class" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--------------\n", "original\n", "accuracy: 0.877 balanced accuracy: 0.604 kappa: 0.534\n", "[[ 54 1 69]\n", " [ 1 46 74]\n", " [ 3 0 952]]\n", "rebalanced\n", "thresholds: [0.3, 0.7000000000000001]\n", "accuracy: 0.893 balanced accuracy: 0.742 kappa: 0.681\n", "[[ 74 25 25]\n", " [ 8 81 32]\n", " [ 10 28 917]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.7000000000000001)\n", "accuracy: 0.897 balanced accuracy: 0.755 kappa: 0.694\n", "[[ 84 15 25]\n", " [ 13 76 32]\n", " [ 16 22 917]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.840 balanced accuracy: 0.767 kappa: 0.597\n", "[[ 95 16 13]\n", " [ 21 80 20]\n", " [ 34 88 833]]\n", "--------------\n", "original\n", "accuracy: 0.857 balanced accuracy: 0.534 kappa: 0.425\n", "[[ 47 0 76]\n", " [ 3 27 93]\n", " [ 0 0 954]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.897 balanced accuracy: 0.791 kappa: 0.705\n", "[[ 79 10 34]\n", " [ 11 97 15]\n", " [ 11 43 900]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.906 balanced accuracy: 0.767 kappa: 0.712\n", "[[ 78 6 39]\n", " [ 11 86 26]\n", " [ 10 21 923]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.870 balanced accuracy: 0.797 kappa: 0.658\n", "[[ 89 9 25]\n", " [ 18 94 11]\n", " [ 27 66 861]]\n", "--------------\n", "original\n", "accuracy: 0.869 balanced accuracy: 0.580 kappa: 0.497\n", "[[ 54 0 67]\n", " [ 2 37 86]\n", " [ 1 1 952]]\n", "rebalanced\n", "thresholds: [0.2, 0.7000000000000001]\n", "accuracy: 0.898 balanced accuracy: 0.781 kappa: 0.705\n", "[[ 93 4 24]\n", " [ 20 78 27]\n", " [ 21 26 907]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.7000000000000001)\n", "accuracy: 0.898 balanced accuracy: 0.781 kappa: 0.705\n", "[[ 93 4 24]\n", " [ 20 78 27]\n", " [ 21 26 907]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.839 balanced accuracy: 0.798 kappa: 0.610\n", "[[ 95 14 12]\n", " [ 20 94 11]\n", " [ 23 113 818]]\n", "--------------\n", "original\n", "accuracy: 0.878 balanced accuracy: 0.610 kappa: 0.543\n", "[[ 50 1 72]\n", " [ 1 52 69]\n", " [ 2 1 952]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.903 balanced accuracy: 0.763 kappa: 0.701\n", "[[ 78 9 36]\n", " [ 2 84 36]\n", " [ 15 18 922]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.904 balanced accuracy: 0.775 kappa: 0.707\n", "[[ 86 3 34]\n", " [ 5 81 36]\n", " [ 25 12 918]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.863 balanced accuracy: 0.791 kappa: 0.637\n", "[[ 87 12 24]\n", " [ 5 94 23]\n", " [ 30 70 855]]\n", "--------------\n", "original\n", "accuracy: 0.870 balanced accuracy: 0.583 kappa: 0.503\n", "[[ 61 1 60]\n", " [ 3 31 89]\n", " [ 2 1 952]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.893 balanced accuracy: 0.732 kappa: 0.669\n", "[[ 77 15 30]\n", " [ 4 74 45]\n", " [ 8 26 921]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6500000000000001)\n", "accuracy: 0.893 balanced accuracy: 0.732 kappa: 0.669\n", "[[ 77 15 30]\n", " [ 4 74 45]\n", " [ 8 26 921]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.840 balanced accuracy: 0.788 kappa: 0.604\n", "[[ 98 15 9]\n", " [ 16 86 21]\n", " [ 30 101 824]]\n", "--------------\n", "original\n", "accuracy: 0.882 balanced accuracy: 0.617 kappa: 0.569\n", "[[ 35 11 77]\n", " [ 3 69 50]\n", " [ 0 0 955]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.881 balanced accuracy: 0.701 kappa: 0.641\n", "[[ 72 10 41]\n", " [ 33 68 21]\n", " [ 9 29 917]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.892 balanced accuracy: 0.682 kappa: 0.646\n", "[[ 56 13 54]\n", " [ 18 74 30]\n", " [ 3 12 940]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.8)\n", "accuracy: 0.812 balanced accuracy: 0.697 kappa: 0.531\n", "[[ 58 40 25]\n", " [ 18 92 12]\n", " [ 4 126 825]]\n", "--------------\n", "original\n", "accuracy: 0.859 balanced accuracy: 0.552 kappa: 0.451\n", "[[ 53 0 71]\n", " [ 1 29 95]\n", " [ 0 2 949]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.887 balanced accuracy: 0.762 kappa: 0.677\n", "[[ 83 16 25]\n", " [ 13 84 28]\n", " [ 13 41 897]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.7000000000000001)\n", "accuracy: 0.887 balanced accuracy: 0.762 kappa: 0.677\n", "[[ 83 16 25]\n", " [ 13 84 28]\n", " [ 13 41 897]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.8)\n", "accuracy: 0.823 balanced accuracy: 0.772 kappa: 0.579\n", "[[ 83 30 11]\n", " [ 13 100 12]\n", " [ 13 134 804]]\n", "--------------\n", "original\n", "accuracy: 0.865 balanced accuracy: 0.566 kappa: 0.484\n", "[[ 40 6 77]\n", " [ 4 46 73]\n", " [ 0 2 952]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.877 balanced accuracy: 0.734 kappa: 0.650\n", "[[ 70 22 31]\n", " [ 19 85 19]\n", " [ 9 47 898]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6500000000000001)\n", "accuracy: 0.886 balanced accuracy: 0.716 kappa: 0.654\n", "[[ 61 21 41]\n", " [ 13 85 25]\n", " [ 4 33 917]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.851 balanced accuracy: 0.727 kappa: 0.603\n", "[[ 70 30 23]\n", " [ 19 87 17]\n", " [ 9 81 864]]\n", "--------------\n", "original\n", "accuracy: 0.881 balanced accuracy: 0.613 kappa: 0.559\n", "[[ 49 7 68]\n", " [ 3 54 65]\n", " [ 0 0 954]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.896 balanced accuracy: 0.739 kappa: 0.682\n", "[[ 78 12 34]\n", " [ 13 76 33]\n", " [ 13 20 921]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.896 balanced accuracy: 0.739 kappa: 0.682\n", "[[ 78 12 34]\n", " [ 13 76 33]\n", " [ 13 20 921]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.863 balanced accuracy: 0.756 kappa: 0.632\n", "[[ 78 27 19]\n", " [ 13 89 20]\n", " [ 16 70 868]]\n", "--------------\n", "original\n", "accuracy: 0.922 balanced accuracy: 0.747 kappa: 0.738\n", "[[ 87 2 33]\n", " [ 7 64 50]\n", " [ 1 0 956]]\n", "rebalanced\n", "thresholds: [0.3, 0.7000000000000001]\n", "accuracy: 0.948 balanced accuracy: 0.868 kappa: 0.847\n", "[[104 11 7]\n", " [ 9 93 19]\n", " [ 5 11 941]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.7000000000000001)\n", "accuracy: 0.948 balanced accuracy: 0.868 kappa: 0.847\n", "[[104 11 7]\n", " [ 9 93 19]\n", " [ 5 11 941]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.8)\n", "accuracy: 0.899 balanced accuracy: 0.869 kappa: 0.737\n", "[[104 13 5]\n", " [ 9 102 10]\n", " [ 5 79 873]]\n", "--------------\n", "original\n", "accuracy: 0.858 balanced accuracy: 0.545 kappa: 0.446\n", "[[ 48 4 72]\n", " [ 1 31 92]\n", " [ 1 0 951]]\n", "rebalanced\n", "thresholds: [0.3, 0.7000000000000001]\n", "accuracy: 0.879 balanced accuracy: 0.729 kappa: 0.645\n", "[[ 83 25 16]\n", " [ 3 71 50]\n", " [ 9 42 901]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.7000000000000001)\n", "accuracy: 0.883 balanced accuracy: 0.745 kappa: 0.658\n", "[[ 96 12 16]\n", " [ 10 64 50]\n", " [ 19 33 900]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.830 balanced accuracy: 0.807 kappa: 0.597\n", "[[109 7 8]\n", " [ 19 87 18]\n", " [ 46 106 800]]\n", "--------------\n", "original\n", "accuracy: 0.907 balanced accuracy: 0.705 kappa: 0.686\n", "[[ 79 11 34]\n", " [ 6 59 58]\n", " [ 1 2 950]]\n", "rebalanced\n", "thresholds: [0.35000000000000003, 0.6500000000000001]\n", "accuracy: 0.907 balanced accuracy: 0.773 kappa: 0.724\n", "[[ 84 18 22]\n", " [ 8 83 32]\n", " [ 2 29 922]]\n", "global kappa rebalanced\n", "thresholds: (0.35000000000000003, 0.55)\n", "accuracy: 0.916 balanced accuracy: 0.753 kappa: 0.734\n", "[[ 83 16 25]\n", " [ 8 74 41]\n", " [ 2 9 942]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.35000000000000003, 0.7500000000000001)\n", "accuracy: 0.868 balanced accuracy: 0.769 kappa: 0.645\n", "[[ 84 24 16]\n", " [ 8 88 27]\n", " [ 2 81 870]]\n", "--------------\n", "original\n", "accuracy: 0.864 balanced accuracy: 0.565 kappa: 0.475\n", "[[ 45 1 77]\n", " [ 3 41 79]\n", " [ 3 0 951]]\n", "rebalanced\n", "thresholds: [0.3, 0.7000000000000001]\n", "accuracy: 0.872 balanced accuracy: 0.724 kappa: 0.627\n", "[[ 68 24 31]\n", " [ 5 84 34]\n", " [ 12 48 894]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.6500000000000001)\n", "accuracy: 0.882 balanced accuracy: 0.719 kappa: 0.640\n", "[[ 86 3 34]\n", " [ 19 62 42]\n", " [ 31 13 910]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.858 balanced accuracy: 0.754 kappa: 0.617\n", "[[ 92 11 20]\n", " [ 19 75 29]\n", " [ 38 54 862]]\n", "--------------\n", "original\n", "accuracy: 0.880 balanced accuracy: 0.612 kappa: 0.558\n", "[[ 59 3 61]\n", " [ 8 44 71]\n", " [ 1 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.901 balanced accuracy: 0.779 kappa: 0.708\n", "[[ 86 7 30]\n", " [ 14 84 25]\n", " [ 16 27 911]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.901 balanced accuracy: 0.779 kappa: 0.708\n", "[[ 86 7 30]\n", " [ 14 84 25]\n", " [ 16 27 911]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.8)\n", "accuracy: 0.832 balanced accuracy: 0.790 kappa: 0.595\n", "[[104 4 15]\n", " [ 31 83 9]\n", " [ 64 79 811]]\n", "--------------\n", "original\n", "accuracy: 0.881 balanced accuracy: 0.611 kappa: 0.558\n", "[[ 51 4 68]\n", " [ 7 51 64]\n", " [ 0 0 955]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.901 balanced accuracy: 0.742 kappa: 0.691\n", "[[ 87 7 29]\n", " [ 13 67 42]\n", " [ 4 24 927]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6000000000000001)\n", "accuracy: 0.907 balanced accuracy: 0.731 kappa: 0.699\n", "[[ 85 4 34]\n", " [ 13 63 46]\n", " [ 2 12 941]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.863 balanced accuracy: 0.755 kappa: 0.627\n", "[[ 96 7 20]\n", " [ 25 70 27]\n", " [ 20 66 869]]\n", "--------------\n", "original\n", "accuracy: 0.859 balanced accuracy: 0.540 kappa: 0.440\n", "[[ 36 1 86]\n", " [ 5 40 77]\n", " [ 0 0 955]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.884 balanced accuracy: 0.764 kappa: 0.673\n", "[[ 82 19 22]\n", " [ 15 84 23]\n", " [ 22 38 895]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.897 balanced accuracy: 0.739 kappa: 0.687\n", "[[ 82 14 27]\n", " [ 15 71 36]\n", " [ 15 16 924]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.846 balanced accuracy: 0.762 kappa: 0.607\n", "[[ 82 26 15]\n", " [ 15 90 17]\n", " [ 22 90 843]]\n", "--------------\n", "original\n", "accuracy: 0.877 balanced accuracy: 0.623 kappa: 0.549\n", "[[ 53 1 69]\n", " [ 0 55 67]\n", " [ 4 7 944]]\n", "rebalanced\n", "thresholds: [0.3, 0.7000000000000001]\n", "accuracy: 0.860 balanced accuracy: 0.728 kappa: 0.598\n", "[[ 77 14 32]\n", " [ 2 78 42]\n", " [ 21 57 877]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6000000000000001)\n", "accuracy: 0.875 balanced accuracy: 0.708 kappa: 0.609\n", "[[ 78 4 41]\n", " [ 3 66 53]\n", " [ 23 26 906]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.840 balanced accuracy: 0.774 kappa: 0.585\n", "[[ 95 7 21]\n", " [ 3 83 36]\n", " [ 56 69 830]]\n", "--------------\n", "original\n", "accuracy: 0.886 balanced accuracy: 0.632 kappa: 0.583\n", "[[ 60 5 57]\n", " [ 3 50 70]\n", " [ 2 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.912 balanced accuracy: 0.766 kappa: 0.728\n", "[[ 91 3 28]\n", " [ 20 71 32]\n", " [ 7 16 932]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.912 balanced accuracy: 0.766 kappa: 0.728\n", "[[ 91 3 28]\n", " [ 20 71 32]\n", " [ 7 16 932]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.885 balanced accuracy: 0.784 kappa: 0.682\n", "[[ 92 11 19]\n", " [ 20 82 21]\n", " [ 8 59 888]]\n", "--------------\n", "original\n", "accuracy: 0.898 balanced accuracy: 0.675 kappa: 0.643\n", "[[ 75 6 41]\n", " [ 7 50 64]\n", " [ 2 2 953]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.916 balanced accuracy: 0.795 kappa: 0.748\n", "[[ 94 13 15]\n", " [ 12 78 31]\n", " [ 9 21 927]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.919 balanced accuracy: 0.774 kappa: 0.747\n", "[[ 94 9 19]\n", " [ 12 69 40]\n", " [ 8 9 940]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7000000000000001)\n", "accuracy: 0.907 balanced accuracy: 0.807 kappa: 0.732\n", "[[103 4 15]\n", " [ 20 76 25]\n", " [ 21 27 909]]\n", "--------------\n", "original\n", "accuracy: 0.905 balanced accuracy: 0.712 kappa: 0.676\n", "[[ 65 0 57]\n", " [ 5 75 42]\n", " [ 2 8 946]]\n", "rebalanced\n", "thresholds: [0.3, 0.6000000000000001]\n", "accuracy: 0.918 balanced accuracy: 0.789 kappa: 0.748\n", "[[ 85 5 32]\n", " [ 9 85 28]\n", " [ 6 18 932]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.918 balanced accuracy: 0.789 kappa: 0.748\n", "[[ 85 5 32]\n", " [ 9 85 28]\n", " [ 6 18 932]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.881 balanced accuracy: 0.817 kappa: 0.684\n", "[[ 94 12 16]\n", " [ 13 94 15]\n", " [ 17 70 869]]\n", "--------------\n", "original\n", "accuracy: 0.865 balanced accuracy: 0.568 kappa: 0.478\n", "[[ 53 1 70]\n", " [ 2 34 86]\n", " [ 2 1 951]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.889 balanced accuracy: 0.722 kappa: 0.654\n", "[[ 77 9 38]\n", " [ 8 71 43]\n", " [ 12 23 919]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.894 balanced accuracy: 0.741 kappa: 0.671\n", "[[ 84 4 36]\n", " [ 8 71 43]\n", " [ 20 16 918]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.849 balanced accuracy: 0.767 kappa: 0.605\n", "[[ 87 16 21]\n", " [ 8 87 27]\n", " [ 23 86 845]]\n", "--------------\n", "original\n", "accuracy: 0.902 balanced accuracy: 0.683 kappa: 0.656\n", "[[ 55 6 61]\n", " [ 4 73 45]\n", " [ 1 0 955]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.910 balanced accuracy: 0.767 kappa: 0.726\n", "[[ 86 11 25]\n", " [ 18 76 28]\n", " [ 8 18 930]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.915 balanced accuracy: 0.745 kappa: 0.727\n", "[[ 75 12 35]\n", " [ 12 77 33]\n", " [ 5 5 946]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.894 balanced accuracy: 0.763 kappa: 0.694\n", "[[ 95 8 19]\n", " [ 29 68 25]\n", " [ 15 31 910]]\n", "--------------\n", "original\n", "accuracy: 0.859 balanced accuracy: 0.548 kappa: 0.450\n", "[[ 40 3 82]\n", " [ 2 40 81]\n", " [ 1 0 951]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.881 balanced accuracy: 0.716 kappa: 0.641\n", "[[ 66 18 41]\n", " [ 8 82 33]\n", " [ 7 36 909]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.890 balanced accuracy: 0.697 kappa: 0.648\n", "[[ 66 16 43]\n", " [ 8 72 43]\n", " [ 7 15 930]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.8)\n", "accuracy: 0.769 balanced accuracy: 0.710 kappa: 0.478\n", "[[ 66 43 16]\n", " [ 8 99 16]\n", " [ 7 187 758]]\n", "--------------\n", "original\n", "accuracy: 0.892 balanced accuracy: 0.652 kappa: 0.607\n", "[[ 65 1 57]\n", " [ 1 53 69]\n", " [ 1 1 952]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.909 balanced accuracy: 0.790 kappa: 0.728\n", "[[ 93 5 25]\n", " [ 10 80 33]\n", " [ 15 21 918]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.909 balanced accuracy: 0.790 kappa: 0.728\n", "[[ 93 5 25]\n", " [ 10 80 33]\n", " [ 15 21 918]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.875 balanced accuracy: 0.822 kappa: 0.677\n", "[[ 95 15 13]\n", " [ 10 98 15]\n", " [ 16 81 857]]\n", "--------------\n", "original\n", "accuracy: 0.866 balanced accuracy: 0.567 kappa: 0.485\n", "[[ 30 6 88]\n", " [ 1 57 66]\n", " [ 0 0 952]]\n", "rebalanced\n", "thresholds: [0.2, 0.6500000000000001]\n", "accuracy: 0.883 balanced accuracy: 0.691 kappa: 0.629\n", "[[ 65 3 56]\n", " [ 18 72 34]\n", " [ 16 13 923]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.6500000000000001)\n", "accuracy: 0.883 balanced accuracy: 0.691 kappa: 0.629\n", "[[ 65 3 56]\n", " [ 18 72 34]\n", " [ 16 13 923]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.834 balanced accuracy: 0.741 kappa: 0.578\n", "[[ 72 21 31]\n", " [ 18 95 11]\n", " [ 22 96 834]]\n", "--------------\n", "original\n", "accuracy: 0.892 balanced accuracy: 0.650 kappa: 0.606\n", "[[ 47 2 72]\n", " [ 1 70 53]\n", " [ 0 2 953]]\n", "rebalanced\n", "thresholds: [0.2, 0.7000000000000001]\n", "accuracy: 0.894 balanced accuracy: 0.790 kappa: 0.697\n", "[[ 85 7 29]\n", " [ 13 90 21]\n", " [ 30 27 898]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.6500000000000001)\n", "accuracy: 0.898 balanced accuracy: 0.765 kappa: 0.695\n", "[[ 81 5 35]\n", " [ 13 83 28]\n", " [ 26 15 914]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.841 balanced accuracy: 0.805 kappa: 0.612\n", "[[ 86 15 20]\n", " [ 13 105 6]\n", " [ 34 103 818]]\n", "--------------\n", "original\n", "accuracy: 0.896 balanced accuracy: 0.674 kappa: 0.634\n", "[[ 57 4 62]\n", " [ 3 69 50]\n", " [ 1 5 949]]\n", "rebalanced\n", "thresholds: [0.2, 0.6500000000000001]\n", "accuracy: 0.918 balanced accuracy: 0.800 kappa: 0.754\n", "[[ 85 5 33]\n", " [ 12 90 20]\n", " [ 13 15 927]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6500000000000001)\n", "accuracy: 0.915 balanced accuracy: 0.784 kappa: 0.741\n", "[[ 75 11 37]\n", " [ 8 94 20]\n", " [ 4 22 929]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.899 balanced accuracy: 0.830 kappa: 0.726\n", "[[ 90 14 19]\n", " [ 12 101 9]\n", " [ 18 49 888]]\n", "--------------\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "original\n", "accuracy: 0.839 balanced accuracy: 0.479 kappa: 0.326\n", "[[ 41 0 83]\n", " [ 3 13 107]\n", " [ 0 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.879 balanced accuracy: 0.705 kappa: 0.623\n", "[[ 76 9 39]\n", " [ 6 67 50]\n", " [ 13 28 912]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.7000000000000001)\n", "accuracy: 0.880 balanced accuracy: 0.710 kappa: 0.627\n", "[[ 83 3 38]\n", " [ 11 62 50]\n", " [ 22 20 911]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.800 balanced accuracy: 0.740 kappa: 0.521\n", "[[ 88 20 16]\n", " [ 11 84 28]\n", " [ 24 141 788]]\n", "--------------\n", "original\n", "accuracy: 0.887 balanced accuracy: 0.634 kappa: 0.581\n", "[[ 52 1 70]\n", " [ 1 59 63]\n", " [ 1 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.913 balanced accuracy: 0.789 kappa: 0.740\n", "[[ 93 8 22]\n", " [ 13 79 31]\n", " [ 12 18 924]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.907 balanced accuracy: 0.739 kappa: 0.705\n", "[[ 74 12 37]\n", " [ 8 78 37]\n", " [ 7 10 937]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.876 balanced accuracy: 0.799 kappa: 0.675\n", "[[104 11 8]\n", " [ 26 79 18]\n", " [ 31 55 868]]\n", "--------------\n", "original\n", "accuracy: 0.899 balanced accuracy: 0.674 kappa: 0.646\n", "[[ 63 3 55]\n", " [ 11 62 50]\n", " [ 1 1 954]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.938 balanced accuracy: 0.826 kappa: 0.817\n", "[[ 87 21 13]\n", " [ 16 95 12]\n", " [ 1 11 944]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6500000000000001)\n", "accuracy: 0.938 balanced accuracy: 0.826 kappa: 0.817\n", "[[ 87 21 13]\n", " [ 16 95 12]\n", " [ 1 11 944]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.7500000000000001)\n", "accuracy: 0.916 balanced accuracy: 0.831 kappa: 0.768\n", "[[ 87 26 8]\n", " [ 16 101 6]\n", " [ 1 44 911]]\n", "--------------\n", "original\n", "accuracy: 0.895 balanced accuracy: 0.662 kappa: 0.623\n", "[[ 43 2 78]\n", " [ 3 78 41]\n", " [ 2 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.903 balanced accuracy: 0.813 kappa: 0.728\n", "[[ 80 14 29]\n", " [ 11 103 8]\n", " [ 22 32 901]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6000000000000001)\n", "accuracy: 0.913 balanced accuracy: 0.774 kappa: 0.731\n", "[[ 77 6 40]\n", " [ 10 88 24]\n", " [ 15 9 931]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.880 balanced accuracy: 0.808 kappa: 0.681\n", "[[ 87 11 25]\n", " [ 18 98 6]\n", " [ 41 43 871]]\n", "--------------\n", "original\n", "accuracy: 0.870 balanced accuracy: 0.578 kappa: 0.497\n", "[[ 28 2 92]\n", " [ 1 62 60]\n", " [ 0 1 954]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.894 balanced accuracy: 0.773 kappa: 0.690\n", "[[ 80 10 32]\n", " [ 10 88 25]\n", " [ 17 33 905]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.908 balanced accuracy: 0.762 kappa: 0.716\n", "[[ 77 8 37]\n", " [ 10 84 29]\n", " [ 13 13 929]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.874 balanced accuracy: 0.796 kappa: 0.664\n", "[[100 5 17]\n", " [ 21 81 21]\n", " [ 40 47 868]]\n", "--------------\n", "original\n", "accuracy: 0.882 balanced accuracy: 0.621 kappa: 0.562\n", "[[ 61 2 60]\n", " [ 1 45 76]\n", " [ 0 2 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.904 balanced accuracy: 0.796 kappa: 0.725\n", "[[ 91 14 18]\n", " [ 14 85 23]\n", " [ 3 43 909]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6000000000000001)\n", "accuracy: 0.920 balanced accuracy: 0.788 kappa: 0.756\n", "[[ 91 10 22]\n", " [ 14 79 29]\n", " [ 1 20 934]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.868 balanced accuracy: 0.840 kappa: 0.669\n", "[[102 8 13]\n", " [ 15 99 8]\n", " [ 9 106 840]]\n", "--------------\n", "original\n", "accuracy: 0.861 balanced accuracy: 0.571 kappa: 0.472\n", "[[ 33 0 89]\n", " [ 3 56 64]\n", " [ 1 10 944]]\n", "rebalanced\n", "thresholds: [0.2, 0.6500000000000001]\n", "accuracy: 0.876 balanced accuracy: 0.730 kappa: 0.627\n", "[[ 67 2 53]\n", " [ 10 86 27]\n", " [ 25 32 898]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.881 balanced accuracy: 0.727 kappa: 0.634\n", "[[ 63 2 57]\n", " [ 8 88 27]\n", " [ 14 35 906]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.8)\n", "accuracy: 0.801 balanced accuracy: 0.765 kappa: 0.533\n", "[[ 91 5 26]\n", " [ 23 90 10]\n", " [ 65 110 780]]\n", "--------------\n", "original\n", "accuracy: 0.864 balanced accuracy: 0.561 kappa: 0.474\n", "[[ 48 1 73]\n", " [ 6 36 82]\n", " [ 1 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.892 balanced accuracy: 0.722 kappa: 0.663\n", "[[ 80 7 35]\n", " [ 13 67 44]\n", " [ 13 17 924]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.892 balanced accuracy: 0.722 kappa: 0.663\n", "[[ 80 7 35]\n", " [ 13 67 44]\n", " [ 13 17 924]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.851 balanced accuracy: 0.734 kappa: 0.594\n", "[[ 80 16 26]\n", " [ 13 80 31]\n", " [ 14 79 861]]\n", "--------------\n", "original\n", "accuracy: 0.892 balanced accuracy: 0.650 kappa: 0.614\n", "[[ 48 7 68]\n", " [ 6 69 48]\n", " [ 0 1 953]]\n", "rebalanced\n", "thresholds: [0.3, 0.6000000000000001]\n", "accuracy: 0.902 balanced accuracy: 0.709 kappa: 0.691\n", "[[ 70 18 35]\n", " [ 23 70 30]\n", " [ 0 11 943]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.902 balanced accuracy: 0.709 kappa: 0.691\n", "[[ 70 18 35]\n", " [ 23 70 30]\n", " [ 0 11 943]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.7000000000000001)\n", "accuracy: 0.894 balanced accuracy: 0.748 kappa: 0.697\n", "[[ 71 30 22]\n", " [ 23 87 13]\n", " [ 0 39 915]]\n", "--------------\n", "original\n", "accuracy: 0.885 balanced accuracy: 0.629 kappa: 0.576\n", "[[ 56 0 67]\n", " [ 5 53 64]\n", " [ 1 1 953]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.912 balanced accuracy: 0.764 kappa: 0.727\n", "[[ 84 8 31]\n", " [ 11 77 34]\n", " [ 7 14 934]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6000000000000001)\n", "accuracy: 0.916 balanced accuracy: 0.753 kappa: 0.729\n", "[[ 87 1 35]\n", " [ 16 69 37]\n", " [ 7 5 943]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.896 balanced accuracy: 0.809 kappa: 0.714\n", "[[102 6 15]\n", " [ 24 81 17]\n", " [ 19 44 892]]\n", "--------------\n", "original\n", "accuracy: 0.879 balanced accuracy: 0.609 kappa: 0.550\n", "[[ 37 5 82]\n", " [ 2 65 56]\n", " [ 0 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.913 balanced accuracy: 0.797 kappa: 0.745\n", "[[ 83 8 33]\n", " [ 15 93 15]\n", " [ 13 20 920]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.913 balanced accuracy: 0.797 kappa: 0.745\n", "[[ 83 8 33]\n", " [ 15 93 15]\n", " [ 13 20 920]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.879 balanced accuracy: 0.822 kappa: 0.687\n", "[[ 97 9 18]\n", " [ 19 96 8]\n", " [ 28 63 862]]\n", "--------------\n", "original\n", "accuracy: 0.865 balanced accuracy: 0.564 kappa: 0.469\n", "[[ 47 0 75]\n", " [ 0 38 85]\n", " [ 1 1 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.888 balanced accuracy: 0.735 kappa: 0.659\n", "[[ 82 9 31]\n", " [ 10 71 42]\n", " [ 11 31 913]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.900 balanced accuracy: 0.728 kappa: 0.677\n", "[[ 80 2 40]\n", " [ 10 68 45]\n", " [ 11 12 932]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.860 balanced accuracy: 0.747 kappa: 0.615\n", "[[ 92 8 22]\n", " [ 19 71 33]\n", " [ 27 59 869]]\n", "--------------\n", "original\n", "accuracy: 0.860 balanced accuracy: 0.559 kappa: 0.459\n", "[[ 34 2 87]\n", " [ 1 50 72]\n", " [ 3 3 948]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.882 balanced accuracy: 0.747 kappa: 0.651\n", "[[ 87 7 29]\n", " [ 10 73 40]\n", " [ 24 32 898]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6000000000000001)\n", "accuracy: 0.887 balanced accuracy: 0.726 kappa: 0.649\n", "[[ 83 5 35]\n", " [ 10 67 46]\n", " [ 18 22 914]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.823 balanced accuracy: 0.756 kappa: 0.560\n", "[[ 95 10 18]\n", " [ 19 79 25]\n", " [ 52 89 813]]\n", "--------------\n", "original\n", "accuracy: 0.902 balanced accuracy: 0.685 kappa: 0.651\n", "[[ 78 2 42]\n", " [ 1 51 70]\n", " [ 2 1 953]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.923 balanced accuracy: 0.818 kappa: 0.768\n", "[[101 6 15]\n", " [ 4 80 38]\n", " [ 11 18 927]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.922 balanced accuracy: 0.815 kappa: 0.766\n", "[[103 5 14]\n", " [ 7 77 38]\n", " [ 15 14 927]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.851 balanced accuracy: 0.842 kappa: 0.641\n", "[[108 11 3]\n", " [ 12 96 14]\n", " [ 28 111 817]]\n", "--------------\n", "original\n", "accuracy: 0.860 balanced accuracy: 0.547 kappa: 0.449\n", "[[ 54 0 69]\n", " [ 5 25 93]\n", " [ 1 0 953]]\n", "rebalanced\n", "thresholds: [0.25, 0.7000000000000001]\n", "accuracy: 0.901 balanced accuracy: 0.772 kappa: 0.706\n", "[[101 10 12]\n", " [ 13 66 44]\n", " [ 17 23 914]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.902 balanced accuracy: 0.737 kappa: 0.693\n", "[[101 7 15]\n", " [ 13 51 59]\n", " [ 14 9 931]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.8)\n", "accuracy: 0.819 balanced accuracy: 0.797 kappa: 0.573\n", "[[111 5 7]\n", " [ 18 81 24]\n", " [ 35 128 791]]\n", "--------------\n", "original\n", "accuracy: 0.851 balanced accuracy: 0.518 kappa: 0.396\n", "[[ 29 2 92]\n", " [ 2 39 81]\n", " [ 1 1 953]]\n", "rebalanced\n", "thresholds: [0.2, 0.7000000000000001]\n", "accuracy: 0.861 balanced accuracy: 0.702 kappa: 0.600\n", "[[ 76 10 37]\n", " [ 28 68 26]\n", " [ 33 33 889]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.7000000000000001)\n", "accuracy: 0.871 balanced accuracy: 0.725 kappa: 0.623\n", "[[ 69 13 41]\n", " [ 13 83 26]\n", " [ 19 43 893]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.846 balanced accuracy: 0.724 kappa: 0.587\n", "[[ 79 12 32]\n", " [ 28 77 17]\n", " [ 35 61 859]]\n", "--------------\n", "original\n", "accuracy: 0.876 balanced accuracy: 0.604 kappa: 0.540\n", "[[ 58 3 62]\n", " [ 7 42 73]\n", " [ 2 2 951]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.901 balanced accuracy: 0.773 kappa: 0.707\n", "[[ 89 12 22]\n", " [ 12 78 32]\n", " [ 10 31 914]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6500000000000001)\n", "accuracy: 0.901 balanced accuracy: 0.773 kappa: 0.707\n", "[[ 89 12 22]\n", " [ 12 78 32]\n", " [ 10 31 914]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.7000000000000001)\n", "accuracy: 0.892 balanced accuracy: 0.784 kappa: 0.695\n", "[[ 89 19 15]\n", " [ 12 84 26]\n", " [ 10 48 897]]\n", "--------------\n", "original\n", "accuracy: 0.833 balanced accuracy: 0.451 kappa: 0.275\n", "[[ 21 2 99]\n", " [ 3 22 97]\n", " [ 0 0 956]]\n", "rebalanced\n", "thresholds: [0.2, 0.7000000000000001]\n", "accuracy: 0.899 balanced accuracy: 0.731 kappa: 0.692\n", "[[ 86 10 26]\n", " [ 30 63 29]\n", " [ 9 17 930]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.7000000000000001)\n", "accuracy: 0.899 balanced accuracy: 0.731 kappa: 0.692\n", "[[ 86 10 26]\n", " [ 30 63 29]\n", " [ 9 17 930]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.15000000000000002, 0.8)\n", "accuracy: 0.817 balanced accuracy: 0.728 kappa: 0.557\n", "[[101 11 10]\n", " [ 53 61 8]\n", " [ 34 104 818]]\n", "--------------\n", "original\n", "accuracy: 0.882 balanced accuracy: 0.623 kappa: 0.580\n", "[[ 44 14 65]\n", " [ 6 63 54]\n", " [ 1 1 952]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.909 balanced accuracy: 0.759 kappa: 0.726\n", "[[ 72 22 29]\n", " [ 14 88 21]\n", " [ 7 16 931]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6500000000000001)\n", "accuracy: 0.909 balanced accuracy: 0.759 kappa: 0.726\n", "[[ 72 22 29]\n", " [ 14 88 21]\n", " [ 7 16 931]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.7500000000000001)\n", "accuracy: 0.876 balanced accuracy: 0.766 kappa: 0.667\n", "[[ 73 36 14]\n", " [ 14 96 13]\n", " [ 8 64 882]]\n", "--------------\n", "original\n", "accuracy: 0.857 balanced accuracy: 0.534 kappa: 0.436\n", "[[ 37 3 82]\n", " [ 8 37 79]\n", " [ 0 0 954]]\n", "rebalanced\n", "thresholds: [0.2, 0.7000000000000001]\n", "accuracy: 0.881 balanced accuracy: 0.700 kappa: 0.640\n", "[[ 78 14 30]\n", " [ 28 62 34]\n", " [ 16 21 917]]\n", "global kappa rebalanced\n", "thresholds: (0.2, 0.7000000000000001)\n", "accuracy: 0.881 balanced accuracy: 0.700 kappa: 0.640\n", "[[ 78 14 30]\n", " [ 28 62 34]\n", " [ 16 21 917]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.2, 0.7500000000000001)\n", "accuracy: 0.863 balanced accuracy: 0.721 kappa: 0.620\n", "[[ 81 21 20]\n", " [ 28 71 25]\n", " [ 18 53 883]]\n", "--------------\n", "original\n", "accuracy: 0.886 balanced accuracy: 0.633 kappa: 0.588\n", "[[ 46 7 68]\n", " [ 5 65 55]\n", " [ 2 0 952]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.895 balanced accuracy: 0.731 kappa: 0.684\n", "[[ 71 17 33]\n", " [ 21 80 24]\n", " [ 8 23 923]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.902 balanced accuracy: 0.720 kappa: 0.691\n", "[[ 71 13 37]\n", " [ 21 74 30]\n", " [ 6 11 937]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.7500000000000001)\n", "accuracy: 0.871 balanced accuracy: 0.740 kappa: 0.646\n", "[[ 71 29 21]\n", " [ 21 88 16]\n", " [ 8 60 886]]\n", "--------------\n", "original\n", "accuracy: 0.882 balanced accuracy: 0.625 kappa: 0.569\n", "[[ 46 4 73]\n", " [ 2 63 60]\n", " [ 1 2 949]]\n", "rebalanced\n", "thresholds: [0.3, 0.6500000000000001]\n", "accuracy: 0.902 balanced accuracy: 0.776 kappa: 0.714\n", "[[ 76 26 21]\n", " [ 3 94 28]\n", " [ 6 34 912]]\n", "global kappa rebalanced\n", "thresholds: (0.3, 0.6000000000000001)\n", "accuracy: 0.907 balanced accuracy: 0.762 kappa: 0.715\n", "[[ 75 17 31]\n", " [ 3 88 34]\n", " [ 5 22 925]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.7500000000000001)\n", "accuracy: 0.869 balanced accuracy: 0.799 kappa: 0.663\n", "[[ 76 31 16]\n", " [ 3 110 12]\n", " [ 6 89 857]]\n", "--------------\n", "original\n", "accuracy: 0.892 balanced accuracy: 0.671 kappa: 0.620\n", "[[ 54 3 66]\n", " [ 0 72 51]\n", " [ 8 2 944]]\n", "rebalanced\n", "thresholds: [0.25, 0.6500000000000001]\n", "accuracy: 0.907 balanced accuracy: 0.796 kappa: 0.725\n", "[[ 84 8 31]\n", " [ 7 92 24]\n", " [ 20 22 912]]\n", "global kappa rebalanced\n", "thresholds: (0.25, 0.6500000000000001)\n", "accuracy: 0.907 balanced accuracy: 0.796 kappa: 0.725\n", "[[ 84 8 31]\n", " [ 7 92 24]\n", " [ 20 22 912]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.25, 0.7500000000000001)\n", "accuracy: 0.883 balanced accuracy: 0.814 kappa: 0.690\n", "[[ 88 19 16]\n", " [ 7 100 16]\n", " [ 21 61 872]]\n" ] } ], "source": [ "accum_10_10_80 = []\n", "\n", "for rep in range(50):\n", " print('--------------')\n", " # Generate a ternary imbalanced classification problem\n", " X, y = make_classification(n_samples=6000, n_features=20,\n", " n_informative=10, n_redundant=0, n_classes=3, \n", " random_state=0xf00d+rep, shuffle=False, weights = [0.1, 0.1, 0.8])\n", " run_ternary_experiment(X,y,accum_10_10_80)\n" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "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5q9//Stjx47Nu5bHHnuMM888k/HjxzN37lx69+5N165dOffcc9m1a1deHCNHjsy7tg8++IDXX3+d++67L++8//znP7n//vuL/yKJiFRAPycfZsjLi/h0zU4evbA9r1zbLSISFMDT/BNJX927d3cF/fDDDyds82nle84908i5p2r99vVMI8/2Etq8ebMD3MKFC51zzo0cOdKNGzfOOefc3r17844bMWKEmzNnjnPOuRtuuMG9//77hR5z5plnuvvvv98559y8efPcgAEDnHPOvfLKK27YsGEuIyMj7/7p6emuT58+bvfu3c4556ZPn+5GjhzpnHOuc+fO7uuvv3bOOffAAw+4jh07nnANGRkZLiUlxTnnXHJysjv55JNddna2W7NmjWvbtq1LTk4+Ltbhw4e7F154wTnnXGZmpjtw4IDbvHnzceceN26ce+qpp/KuZcyYMXn79u3b57Kzs51zzv3zn//Mu86HHnrI3XPPPccdd/jwYdemTRuXnp7unHOuT58+btWqVSdcQ7F+D0REKoBPV+9wHZ/8t+v29Gdu0U/JoQ7HK2Cp8/GeX/FaUr54GjIKrHickerZXgotWrTIWyRwxIgRLFy4EICvvvqK3r1707lzZ7788kvWrl17wn0LO2bYsGEAdO/enS1btgDw+eefM3r06Lwuk7p167JhwwbWrFnDeeedR5cuXXjmmWdISkoiJSWFAwcOcOaZZwLktYQU5JzjscceIz4+nnPPPZft27eza9cuvvzySy6//HLq16+f91gAX375JWPGjAEgKiqK2rVrF/kcXXnllXk/JyUlMXDgQDp37sy4cePyrvnzzz/njjvuyDuuTp06VK9enXPOOYePP/6Y9evXk5GRQefOnYt8PBGRiiozK5vnP13P6CnLOLlhDebe1Z++p9QPdVjFFiHtPQGUklS87X4qWJnPzEhLS+P2229n6dKltGjRgrFjx+ataJyrqGOqVPHMWY+KiiIzMxPwJBQFH885R8eOHfNWUM514MABv6oGTp06leTkZBITE4mOjqZVq1akpaV5fSxfKleuTHZ29nHXll/16tXzfr7rrru4//77ufTSS/n666/zuoV8Pd4tt9zCs88+S/v27Rk5ssxWUBARiTh7Dx/j7unLWbRxL9f0bslTgzpQpXJoy9uXVMVrSantY6lpX9v9tHXr1rwE4d1336V///55b9L169fn8OHDXmfz+HNMQeeffz4TJ07MS1r27dtHu3btSE5OzoshIyODtWvXEhcXR+3atfNadqZOner1nCkpKTRs2JDo6Gi++uorfvnlFwAGDBjAjBkz2Lt3b95j5W5/9dVXAc8YmYMHD9KoUSN2797N3r17OXbsGB9//LHPa0hJSaFZM8/6SW+99dZx15Z/4cX9+/cD0Lt3b7Zt28a0adO4+uqri3yOREQqopXbDjBowkKWbNnPXy6P59mhnSM2QYGKmKQMeBKiY4/fFh3r2V4Kp512Gm+99Rbx8fHs27ePMWPGEBcXx6233krnzp0ZMmQIPXv2POF+/hxT0C233ELLli3zBrNOmzaNmJgYZs6cycMPP0xCQgJdunThm2++AeDNN9/kjjvuoE+fPsTGxno957XXXsvSpUvp0aMHU6dOpX379gB07NiRP/zhD5x55pkkJCTkDVgdP348X331FZ07d6Z79+6sXbuW6OhonnzySXr37s0ll1ySdw5vxo4dyxVXXMEZZ5yR15UE8Pjjj7N//346depEQkICX331Vd6+4cOH069fP+rUqVPkcyQiUtG8u3grV0z8FjPjg9F9Gd6jRahDKrWKucDgqhmeMSgpSZ4WlAFPQvzwAEcqgXbJJZdw3333MWDAAK/7tcCgiFREaRlZPPXRWt5buo0zTq3Pi1d1pU71mFCH5TctMFhQ/HAlJRHkwIED9OrVi4SEBJ8JiohIRZS0/yi3T13GqqQU7jz7FO47ry1Rlcpm9eKyUDGTFIkocXFx/Pjjj6EOQ0QkrCz8aQ93vbuMzCzHpOu6c37HxqEOKeCUpIiIiEQQ5xyv/vdn/jp/A6c0rMHEEd1p06BGqMMKCiUpIiIiEeJQWgYPvL+S+Wt3cUl8E/58WTzVI6V6bAmU3ysTEREJsXmb5jF+2Xh+PfIrjas35p5u93Bxm4tLdK6fdh3itncS+WXfUZ64pAM39Wvldx2rSKUkRUREJAjmbZrH2G/GkpblqYe188hOxn4zFqDYicrHq3bw0MxVVIupzLRbetO7Tb1AhxuWKl6dFBERkTIwftn4vAQlV1pWGuOXjff7HJlZ2Tzz8Q/cOW057RvXZN7d/StMggJqSYk4mZmZeWv2iIhI+Pr1yK/F2l5Q8qFj3DltGd9v3sf1fU7i8Ys7EFO5YrUtVKyrzTFv0zzOn3k+8W/Fc/7M85m3aV5AzjtkyBC6d+9Ox44dmTRpEgD//ve/6dat23E1Pg4fPszIkSPp3Lkz8fHxfPDBBwDUqPHb6OyZM2dy4403AnDjjTdy//33c/bZZ/Pwww+zePFi+vbtS9euXenbty8bNmwAPOXpH3jggbzzTpgwgS+++IKhQ4fmnfc///lP3qKFIiISPI2re58S7Gt7fsu27mfQhIWsTDrA34cn8PTgThUuQYEK2JISyD7Cgt544w3q1q1LamoqPXv2ZPDgwdx6660sWLCA1q1b561788c//pHatWuzevVq4Lf1aQrz448/8vnnnxMVFcXBgwdZsGABlStX5vPPP+exxx7jgw8+YNKkSWzevJnly5dTuXJl9u3bR506dbjjjjtITk6mQYMGvPnmm1qgT0SkGEo6+PWebvcc934DUDWqKvd0u8fnfZxzTPl+K0/PXUuT2rHMGtOPDk1rBeQ6IlGFS1IK6yMsbZLy4osv8uGHHwKwbds2Jk2axO9+9ztat24NQN26dQH4/PPPmT59et79/FmL5oorriAqyrNIVEpKCjfccAM//fQTZkZGRkbeeUePHp3XHZT7eNdddx1Tpkxh5MiRfPvtt7z99tuluk4RkYqiNB9sc/f7m+CkZWTxhw/X8MGyJM5u14B/XNmV2tWiA3cxEajCJSml7SP05euvv+bzzz/n22+/pVq1apx11lkkJCTkdcXk55zzOm0s/7bc1ZFzVa9ePe/nJ554grPPPpsPP/yQLVu2cNZZZxV63pEjRzJo0CCqVq3KFVdcoTEtIiJ+Ku0H24vbXOzXcdv2HeW2dxJZ9+tB7j33VO4+51QqlaPy9iVV4Tq4StNHWJiUlBTq1KlDtWrVWL9+Pd999x3Hjh3jv//9L5s3bwbI6+45//zzeemll/Lum9vd06hRI9atW0d2dnZei4yvx2rWrBkAkydPztt+/vnnM3HiRDIzM497vKZNm9K0aVOeeeaZvHEuIiJStGB9sM3v6w27uWTCQpL2H+WNG3py77ltlaDkqHBJyj3d7qFqVNXjthXVR+iPCy64gMzMTOLj43niiSc4/fTTadCgAZMmTWLYsGEkJCRw5ZVXAvD444+zf/9+OnXqREJCAl999RUAzz//PJdccgnnnHMOTZo08flYDz30EI8++ij9+vUjKysrb/stt9xCy5YtiY+PJyEhgWnTpuXtu/baa2nRogUdOnQo1XWKiFQkwfpgC5Cd7Xjxi58YOXkJTWpXZe5d/Tm7fcNSn7c8MedcqGMolh49erilS5cet23dunWcdtppfp8jkBUAI8Wdd95J165dufnmm0MdStAU9/dARKQoBcekgOeD7di+Y0v1vpGSmsH9763gi/W7Gdq1Gc8O7UxsTFQgQo44ZpbonOvhbV+FHJzgbx9hedG9e3eqV6/O3/72t1CHIiISUYo7+NUf63YeZPSURLbvT+X/Lu3I9X1OKvfl7UuqwnX3VESJiYksWLCAKlWqhDoUEZGIc3Gbi/ns8s947oznAHj0f4+WuMbWRyu2M/SVRaSmZzF91Onc0Lf8r79TGhWyJUVERKQ4SltjKyMrmz/NW8fkb7bQq1VdXrq2Kw1rVi3yfhVduWlJibSxNRJYev1FJJhKsw7P7oNpXPPP75j8zRZu6teaqbf2VoLip3LRklK1alX27t1LvXr11GxWATnn2Lt3L1Wr6o9eRAIn/yQLh/cPQjuP7GTepnk+W1OWbtnHmKnLOJyWyfirujC4S7NghlzulIskpXnz5iQlJZGcnBzqUCREqlatSvPmzUMdhoiUE95m9fjirdvHOcfkb7bwp3nraF4nlndu7kX7xhW3vH1JlYskJTo6Oq/0vIiIiC/eSlDAibN3vHXv+FKwAu3R9EwenbWaj1bs4NzTGvH3KxOoVbVil7cvqXJRJ0VERKQo3lpHoiyKLJd13HHRlaLJyM4o1rkNY9UNq9iy5wijpySyYdchfn9eW24/6xRVjy2C6qSIiEiF5611pGCCAhQ7QQFPBdov1u3i3vdWEFXJmDyyF2e2bVDiWMVDSYqIiFQIgVxvJz/njOqHhnPzW0vp2LQWE0d0p0XdakF5rIpGSYqIiFQIjas3ZueRnQE9p8uKJXX7VSw/0oTT28Lk6/pSNbpilrcPhnJTJ0VERKQw93S7h+hKgRvAmpXWlCOb7yTryMlUaTyLvTXHK0EJsKAmKWZ2gZltMLONZvaIl/11zOxDM1tlZovNrFMw4xERkfJl3qZ5nD/zfOLfii+0VP28TfN4fvHzJRpv4k3GgW4c3TIGXGWqtXqNmDqL2XU0ON1JFVnQunvMLAp4GTgPSAKWmNkc59wP+Q57DFjhnBtqZu1zjh8QrJhERCR8lHZFen9L1Ren5klRnIvi2K5LyNjfh6hqP1O12TQqVT4CeLqTJLCCOSalF7DRObcJwMymA4OB/ElKB+A5AOfcejNrZWaNnHO7ghiXiIiEWGnXwoGiS9XnJkBmRrbLLnXM2Rm1yNo5kowjTYiu+1+qNJyPmee8VaOq5tVckcAJZndPM2BbvttJOdvyWwkMAzCzXsBJgMqGioiUc6VZCwc8SY6vQbC5Cc/OIztxuIAkKJlHWpO25V6iMprzyrXd+MflZ9K0RiMMo0n1JoztO7ZYrUDin2C2pHirXlOwctzzwHgzWwGsBpYDmSecyGwUMAqgZcuWgY1SRETKnK/pwP5ME85thfGlklUKSNcOgHOQsa8/x3ZfRKPalZh6cz9OaVgTuFhJSRkIZpKSBLTId7s5sCP/Ac65g8BIAPOsDLg554sCx00CJoGn4myQ4hURkTLiazqwP+M6iipZH4iWEwCXHUPajsvIPJRAl1bwzo3nU1Pl7ctUMLt7lgCnmllrM4sBrgLm5D/AzOJy9gHcAizISVxERKQcu6fbPVSNOn7lcn/HdQSrKFt+2cfqc3TzHWQe6kz9Zgv58LaLlKCEQNBaUpxzmWZ2JzAfiALecM6tNbPROfsnAqcBb5tZFp4BtTcHKx4REQkfuV0lJZndE4yibPllHOpA2o7hmGUS2/J10qtvwuy5oD2e+KYFBkVEJKIEckpxfs4Z6cnnk773bCpV3UZs8ylUik6hSfUmfHb5ZwF9LPmNFhgUEZFyI7e15bGFj5V6/ElclTgGthrIV5sXs2Xj2WQdaUt03PdUaTQXq5SpqcUhprL4IiISkYqToFSySpze+HSaVG+SN234ynZXEls5lndXLOKXdVdjaW259nfQ+pTvqFQpS1OLw4BaUkREJCz4W4G2qCnIBRnGyutXej3Hwb2dOPbrYCzqMLVbTaJv+1H8qY26dsKFWlJERCTkcpOG3AJsuQXZvK3FU9QU5ILcCSW64IWlL3Eg6UKO7bycqGpbqNZ6Alkxm/wuJidlQ0mKiIiEXHEq0BZ3CnJclbjjbm8/kMqmHwaTcaA3MfW+IrbFG1SqfLRE55bgUpIiIiIhV5wKtMVdyC//LNZFG/cwaMJCSG9I1eZv56y/89t+LRIYXpSkiIhIyPlKDrxtL+5sm4PpB3HO8erXP3Pd699Tr3oMj19ehZpxm447TjN5wo+SFBERCbniVKC9uM3FXNnuSr/P3aBqS0ZPSeTP/17PhZ2bMPuOftzU7WLG9h173GwfzeQJPyrmJiIS7lbNgC+ehpQkqN0cBjwJ8cNDHVXA+Tu7J//xRdVKyTrWgJp7f8+eQ8ajF7bn5v6t8SwVJ+FCxdxERCLVqhkw927ISPXcTtnmuQ3lLlG5uE3xVhbOPdZX9dmMg51J23k51arFMPWWbpzepl7AYpWyoe4eEZFw9sXTvyUouTJSPduFi9t4um0q2W9vZ85VIm3XhaRtv5aqsfv4+K4zlKBEKLWkiIiEs5Sk4m0vx3x1B+VvUTl6LIq07deQdfRkqtZdzJ+H9qJx7apFnFnClZIUEZFwVru5p4vH2/YKpOCigrnF3uC3bqLNu+Ef8w6RlVmVxq3m88T5A4/rPirumBcJPXX3iIiEswFPQnTs8duiYz3bK5DCir0555jy3S+Mn2s0qdmQeXedzXejXzwhQfG3oq2EDyUpIiLhLH44DHoRarcAzPN90IvlbtBsUXwVe9t5aA8PzlzF47PX0Pfk+sy9sz8dm9Y+4bjiVLSV8KHuHhGRcBc/vMIlJQU1rt6YnUd2HrctO70OmTtvZObRJO4ecCr3DDiVqErepxcXp6KthA+1pIiISNgrWOwt8/CpHN1yF5UyG/H6DT24/7y2PhMUKF5FWwkfSlJERCTs5U41blytCel7ziZ12000qV2NT+8+iwGnNSry/sWpaCvhQ909IiJhZPby7Yybv4EdB1JpGhfLgwPbMaRrs1CHFRb6NzmfD4824qfkXQzu0pTnhnWmWox/b2O5g2g1uyeyKEkREQkTs5dv59FZq0nNyAJg+4FUHp21GqDCJyobfj3Ebe8sJWl/KmMHdeCGvq2KXd6+uBVtJfTU3SMiEibGzd+Ql6DkSs3IYtz8DSGKKDzMWbmDIS8v4kh6Fu+OOp0b+2n9nYpCLSkiImFix4HUYm0v7zKysnnuk/W8sWgzPVvV4eVrutGwlqrHViRKUkREwkTTuFi2e0lImsbFejm6fNt9KI07py5n8ZZ9jOzXiscuOo3oKDX+VzR6xUVEwsSDA9sRGx113LbY6CgeHNguRBGFxtIt+7jkxYWs3p7C+Ku68NSgjkpQKii1pIiIhIncwbEVdXaPc463vtnCM/PW0axOLG/f3Iv2jWuFOiwJISUpIiJhZEjXZhUmKckvNT2Lxz5czYfLtzOgfUP+fmUXasdGhzosCTElKSIiElK/7D3Cbe8ksmHXIX5/XlvuOPsUKhVSPVYqDiUpIiISMl+u38W901dgZrx5Y0/Oatcw1CFJGFGSIiIVx6oZ8MXTkJIEtZvDgCcr/MJ9oZKd7Rj/xU+M/+InOjSpxWvXdadF3WqhDkvCjJIUEakYVs2AuXdDRs4U35RtntugRKWMHTiazn3vreCrDclc1q05fxraiaoFZjWJgJIUEakovnj6twQlV0aqZ7uSlDKzdkcKo6ck8mtKGs8M6cS1vVuqeqz4pCRFRCqGlKTibZeAm7UsiUdnraZOtRjeu60P3VrWCXVIEuaUpIhIxVC7uaeLx9t2Car0zGyemfcDb3/7C6e3qcuEq7vRoGaVUIclEUBJiohEhNnLt5euyNmAJ48fkwIQHevZDhpUGyS/pqRx+9RElm09wK1ntObhC9pTWdVjxU9KUkQk7M1evp1HZ63OWyF4+4FUHp21GsD/RCU34fCWiGhQbVB8v2kvd0xbztH0TF66piuXxDcNdUgSYcw5F+oYiqVHjx5u6dKloQ5DRMpQv+e/9LrwXrO4WBY9cs7xG0vSIvJCJx9dQS3gvjWliLxics7x+sLNPPfpek6qW43XruvOqY1qhjosCVNmluic6+Ftn1pSRCTs7fCSoHjdXtIWEQ2qDZgjxzJ5+INVfLxqJwM7NuKvVyRQs6rK20vJqGNQRMJe07hY/7YXNs24ML4Gz2pQbbFs3nOEoa8s4pPVO3nognZMHNFdCYqUipIUEQl7Dw5sR2yBYl+x0VE8OLDd8QeWtEVkwJOeQbT55R9UK0X6bO2vXDphIcmHjvH2Tb25/axTVP9ESk3dPSIS9nIHxxY5u6ek04wLG1QrhcrKdvz9Pxt4+aufiW9em1dHdKeZj5YvkeLSwFkRKT8KjkkBT4vIoBeVcATB/iPp3D19Of/7aQ9X9WzB2Es7qry9FFthA2eD2t1jZheY2QYz22hmj3jZX9vM5prZSjNba2YjgxmPiJRz8cM9CUntFoB5vudPUFbN8MzkGRvn+b5qRiijjWirk1K4ZMJCvt+0j+eHdeb5y+KVoEjABa27x8yigJeB84AkYImZzXHO/ZDvsDuAH5xzg8ysAbDBzKY659KDFZeIlHPxw723mqgWSsDMWLKNxz9aQ/3qMbw/ug8JLeJCHZKUU8FsSekFbHTObcpJOqYDgwsc44Ca5hldVQPYB2QGMSYRCZaiWilC2YqxagZ8OLpkM38kz7HMLB6dtZqHPlhFz1Z1mHtXfyUoElTBHDjbDMg/gi0J6F3gmJeAOcAOoCZwpXMuu+CJzGwUMAqgZcuWQQlWREqhqFaKULZi5D62y/K+39tAWznBjgOpjJm6jJXbDjDmrJN54Px2RFXS7B0JrmC2pHj77S04SncgsAJoCnQBXjKzWifcyblJzrkezrkeDRo0CHScIlJaRdUnKWn9kmDFdhzT2JQifLNxD4MmLOTn3YeZOKI7D1/QXgmKlIlgtqQkAS3y3W6Op8Ukv5HA884zxWijmW0G2gOLgxiXSPiK1EXuiqpPEsiKrnnP0TawKE8LSe0Wvp+rIh/Dec4XCc9zGXPOMWnBJv787/W0aVCDiSO6c0rDGqEOSyqQYLakLAFONbPWZhYDXIWnaye/rcAAADNrBLQDNgUxJpHwldstkbINcL91iUTCp/yiKrb6U9HVnzErxz1H/NaFU9hz5U/V2ECVvy9Hs4cOH8vk9qnLeO7T9VzYqQkf3dFPCYqUuaAlKc65TOBOYD6wDpjhnFtrZqPNbHTOYX8E+prZauAL4GHn3J5gxSQS1kLZJVJaRVVsLWq/vwlaYV03vp4rb49dUCDK30dyklnAxt2HGfzSQj77YRd/uOg0XrqmK9WrqPanlL2g/tY55z4BPimwbWK+n3cA5wczBpGIEcmL3BVVsbWo/YUlaPm7YYp6LrztP+6xt+EZLpdveFygyt/7ew1h7tPVO3ng/ZVUjY7inZt70ffk+qEOSSowpcYi4aKkJd3Dha/6JP7s9zdB8/Uc5d9f1GMHa9xPJCeZQGZWNuPmb+C1BZvo0iKOV0d0o0ltlbeX0FKSIhIuBjzpvaR7sBe5C4fBuv4maN6eo1z+PldFJVMlFcFJ5t7Dx7jr3eV88/Neru3dkicHdaBKZVWPldDTKsgi4aKoku7BEIxxFCUZPOrvKsTHPUd4ZvdA2TxXRYnQlZRXbDvAJRMWkvjLfsZdHs+fhnZWgiJhQwsMilRkL3Ty8em/Bdy3pvjn82eBP18tN+HQolNaEXQNzjneXbyNsXPW0rBWFSaO6E6nZrVDHZZUQIUtMKjuHpGKrLTjKAq+KacfKXzwaFGVZ8P0Dd1vEXINaRlZPPnRGmYsTeJ3bRsw/sou1KkeE+qwRE6gJEUkkgTyk/qqGWCVvJeL92cchbeEw5fcpKeczIABIqrVJL9t+45y+9RlrN6ewt3nnMI957ZV9VgJW0pSRCJFINe/KWw9G3/HURRZbj6f3KQnwmfA5InQFZUX/JjM3dOXk5Xt+Nf1PTi3Q6NQhyRSKA2cFYkUgSz25ivBsCj/B6D6m1jkT3r8qTzrh9nLt9Pv+S9p/cg8+j3/JbOXby/W/UstwgrvZWc7Xv5qIze8uZhGNasy587+SlAkIihJEYkUgWyF8HUfl+1/S4CvxCK2ru8ZSr5mwJx6vt8zgmYv386js1az/UAqDth+IJVHZ60uXaJS3BlJEdQidDAtg9umJDJu/gYGxTflwzv60rp+9VCHJeIXdfeIhLP84x5KM37E231KW9PDV12XC//sO9EpWHk2tg5kHoOlr/92TBFdJ+PmbyA14/jnITUji3HzNzCkazP/489Vkq6bCKmJsuHXQ4yeksi2fUd58pIOjOzXCjONP5HIoZYUkXBVsIaJtwQlKsYzo6a4C9oFoqaHt7ouCdd4EpDC4okf7pnePGwSZKZCxpETjymk62THAe/jYHxtL1JJum4ioCbK3JU7GPLyIg4fy2TaradzU//WSlAk4qglRSRcFTZuxGV7WiGOHYLUfZ7txRm8WdRaOv4qWG6+OC0SRQ289dF10jQulu1eEpKmcSUs4V6SrptAPX9BkJGVzfOfruf1hZvpcVIdXrm2Gw1rVQ11WCIloiRFJFwVNm5k7AFPS0VugpKrONN5A13Tw5/pxfm7ryiikKSPrpMHB7bj0Vmrj+vyiY2O4sGB7UoWd0m7bsKwJkryoWPcMW0Zizfv48a+rXjsotOIqawGc4lcSlJEwlVRb57hNnizqHi8VaP1pZCuk9xxJ+Pmb2DHgVSaxsXy4MB2JRuPAqFbMynAEn/Zx+1Tl5GSmsELVyYwtGt4jY8RKQklKSLhqqg3z3AbvFlUPH7UVXHAvuwaTHC30CWrH0N8HDeka7OSJyUFhXHXjT+cc7zz3S/88eMfaBoXy+SRvTitSa1QhyUSEEUmKWZ2j3NufFHbRCTAinrzDLcWgKLiKaSFx2HscPX4c8Zw5mT3h3SInbUaIHDJSGHCsOvGH6npWfzhw9XMWr6dc9o35IXhXahdLTrUYYkETJELDJrZMudctwLbljvnugY1Mh+0wKBIPuFWmr2weApZzLDfsRe9DoZtFhfLokfOCXLQkWnr3qPcNiWR9b8e5N4BbbnrnFOopPL2EoEKW2DQZ5JiZlcD1wBnAAvy7aoJZDnnzg10oP5QkiJSiHBLWvIrZIXk1tOqex1Ga8ALV3YJ3PgTPMXgAnm+UPhq/W7umb4cgPFXd+Xsdg1DHJFIyZV0FeTvgJ1AfeBv+bYfAlYFLjwRCYhwX0+mkO6rpp986bUlJa5a9HEzeXKry0LJuoFyq9UG6nxlLTvb8eKXPzH+i59o37gWr43oTst61UIdlkjQFNaSkuic625mXzjnBpRxXD6pJUXER2vA1wN9dqdw35qyD7IYCiYP4JlWXKVyJQ6kZpxwfEm7gfo97z0ZioRupZSjGdw3YwVfrt/NsK7N+NPQzsTGRIU6LJFSK2lLSiUzewpoa2b3F9zpnPt7oAIUEf/5ag0YHJWE1xEJwZySXLB76dTz4afPit3d5Gta8X3vrfB6fEmrywa8Wm0ZWbfzILe9k8jOlFT+OLgjI04/SdVjpUIoLEm5ChiSc0zNMolGRIrka+2aXVH1aUzyiXfwY0pyicZpeOteKrgGz6xb4dOHC1/PJ4e3acXj5m8IaHXZgFerLQOzl2/nkVmrqB0bzfRRfeh+Up1QhyRSZnwmKc65DcCfzWyVc+7TMoxJRArh61P/c+lXML76m8WeklzicRp+1D0BPFVxSzg2JtDVZQNerTaI0jOzefaTdUz+Zgu9WtflpWu60rCmyttLxeKzXrKZjcj5sYOZ3V/wq4ziE5ECfH3qX1rrvOMX/IutC5VjYdaoQhcfLGxV4UIVpxupqAX7fBjStRnPDetMs7hYDM/YkeeGdS7xINdAny9Ydh1M4+p/fsfkb7ZwS//WTL2ltxIUqZAK6+6pnvO9RlkEIiL+KbQ1IP4cT2uFt66YWaNg63dwyfHDyUo8TsNXhVlfSjg2JqDVZYNwvkBbvHkfd0xbxpFjmUy4uiuDEpqGOiSRkCmsu+e1nO//V3bhiBRTONcFCRK/1q7x2hXjYOkb0PL0456j3HEal1ZayEOVZ9DU9rDD1edfMSOAi30H4q3CbGEKGxtTAV/HgpxzvLloC89+so4Wdasx9ZbetG2k4YBSsflTcbYBcCvQinxJjXPupqBG5oOmIEueQoqDlcs3uOK8kY+Nw+cqwxblWUk55xyzs/qx8MNXeNomUc3S8w7LjKpK5cETCn8uvc3uWfvhiaszF/a6VLTX0Yuj6Zk88sFq5qzcwXkdGvG34QnUqqry9lIxlKjibL47fwP8D0gE8tqXnXMfBDJIfylJkTyFlFkP97ogxVbcN3Jfz00BR10Mf4m+nXvsXepk7DrxAD+fy4Kzg/7R4Sd6/jzhhIRqyZzXaLFsHA1dMrutAdu6PZhzXAV5Hb3YvOcIo99J5Kfdh/j9+e0Yc+bJKm8vFUpJ66TkquacezjAMYmUnq8xDsGsCxIq3rpvcgejeklSlpx8F92XPeR7ZHyOapbOLelTqG178FZkxaX4qL2Sj7fZQdcvOYnnhs3P64KavXw73499gifcRE9rjUFjkqmd+DjO0ktV3yWSy9x//sMu7ntvBZWjjLdu6sUZpzYIdUgiYaWo/2EAH5vZRUGPRKS4fI1x8KMuSMQpRkI2e/l2rl9yEu9knksRDaUANLW97HD1ve7bhfft+RU1Oyg3ibkje9px3UkAsZZOlq9/Q37Wd3l01mq2H0jF8dv06dnLtxd5X2/n6vf8l7R+ZB79nv+yROfwV1a242+fbeCWt5fSqn515t7VXwmKiBeFTUE+ZGYHgXvwJCqpZnYw33aR0BrwpKfLIz8/6oJEpGIkZCvmTeI/dgfXR33u16l3uHr8JXM4R13McduPuhieS7+i6PsXMTsoN4lpanu8HlfJZZf4dSzx9OkCApnsFGX/kXRGTl7ChC83MrxHc94f3YfmdbT+jog3PpMU51xN51ytnO+VnHOx+W7XKssgRbyKH358XZDaLcrvYEt/E7JVM3go4xWaV9qDGRRVOf2oi+EvmcOZk92fRzJuISm7PtnOSMquzyMZt3hqrxTBV92W3O25yYqv1prd1qDEr2OgytwHKtkpyprtKQx6aSHf/byX54Z15i+XJ1A1WuvviPhS5JgUM+sHrHDOHckp8NYN+IdzbmvQoxMpSvzw8pmUFFTICsLH+eLpE7pUvHEOtrv6eQkKwJzs/sxJ7593TGx0FM/5UYm1qCquuVOc/5I5nOej/3VcfKkuhm3dH6RxCV/HQJW5L4s1fd5fuo3HZ6+hbvUYZozuQ5cWcQE7t0h55c+YlFeBo2aWADwE/AK8E9SoRORE8cM9s12GTfLc9lZJ1t9Bw2ZcWe2fzMnu73XQalxstN+VWIuq4vrgwHbERked0Fqzg/qs6f4MPS+9zb+Yvcg9d34lKXNfVGtQaRzLzOIPH67mwZmr6H5SHT6+q78SFBE/+TO7J9M558xsMDDeOfe6md0Q7MBExAtvlWTzr4vjZxXY1NjGLHr4HCAws2MKq+Kav/jc3AP9Sax2Xt5jlLaWql+F7fwQrDV9dqakMmbKMlZsO8BtZ7bhwfPbUTnKn8+GIgL+1Un5L/BvYCTwOyAZT/dP5+CHdyLVSZEKrajaMF7qqTiOn1181MXwpBtF/6G3R8xU3bIQ6KnM3/y8h7umLSctI4u/XpHAhZ2bBDBakfKjtHVSrgSuAW52zv1qZi2BcYEMUET8VNRUZC9jV2Yd7EjvrKU5U43r5YxD6cu38zdEZpISpBL6gVrTxznHP/+3iT//ewOt6lXjtev6cEpDLYEmUhJFJinOuV+Bv+e7vRV4O5hBiYhHwU/3/4ltTLXUnSceWLt5vmOr0zTuRR4c7GkJeOCReTiuP+EugRwUWmaK6u4KscPHMnl45irmrd7JhZ0aM+6KBGpU8eezoIh4o78eCamSNrEHtGm+GJ/My7K6qbdKrk/GXMbz0f+iclbabwdGx7Lk5LtOOPbRWauBwM2ACQvFrLxbln5OPsxt7ySyKfkwj17YnlG/a4MVNQdcRAqlEVwSMiUtoBXQwlu5n8xTtgHut0/m+WfMBONx/eCtdsfM9L48Y6NPqCly7w+n+qzzEagZMGEhTJdC+PeanQx+aRH7j6Qz5ebe3HbmyUpQRAKgyCTFzC4xsxIlM2Z2gZltMLONZvaIl/0PmtmKnK81ZpZlZnVL8lgSeUpaQCughbcK+2QeyMddNcMz6HVs3InThn3w1R0z+XAvzyDZsQc83+OHF1rno6gpwkFVgusuVJgthZCZlc3zn65n9JRlnNywBnPv6k/fU4peSkBE/ONPd89VwHgz+wB40zm3zp8Tm1kU8DJwHpAELDGzOc65H3KPcc6NI2cQrpkNAu5zzu3zdj4pf0paQCughbeK8cm8xI9bnHEU+bqevq1an2fTr8grtpbL8LTq5E8yiurSCdSg0GIJxviRAU96Xw06BEsh7D18jLunL2fRxr1c07slTw3qQJXKqh4rEkhFtpA450YAXYGfgTfN7FszG2VmNYu4ay9go3Nuk3MuHZgODC7k+KuBd/2MW8qBkhbQCmjhrWJ8Mi/x4/rbWlOg66kxyTwf/S8urbTwuMMcnNB6E8ouHZ8L8xWjlcpvYbIUwsptBxg0YSFLtuznL5fH8+zQzkpQRILAr24c59xB4AM8iUYTYCiwzMzuKuRuzYD8BR2ScradwMyqARfkPIZUECV9Yw3oG3IxFiks8eP621rj5U29mqXzUOUTu0gKtt6Eqkun0HE6wRo/klt5N193V1l6d/FWrpj4LWbGB6P7MrxHizJ9fJGKxJ+1ewYBNwEn4ymH38s5tzsnsVgHTPB1Vy/bfFWOGwQs8tXVY2ajgFEALVu2LCrkYivLGRvym5JWCw1UlVHA/zVxSvO4vqrAFmyt8fHm3dT2nrjNS+tNKLp0ChunM8Tf644QaRlZPPXRWt5buo0zTq3Pi1d1pU71mKLvKCIl5s+YlCuAF5xzC/JvdM4dNbObCrlfEpD/I0ZzYIePY6+ikK4e59wkYBJ4Ks76EbPfvE3zzJ26qUQl+Er6xhrQN+RiLG5Xosf1dxyFjzf1ndQ77rav1hufyXaQip+B7/E42w+kMrbGZTzkXjl+wcMQjR8praT9R7l96jJWJaVw59mncN95bYmqpNk7IsHmz5iU6wsmKPn2fVHIXZcAp5pZazOLwZOIzCl4kJnVBs4EPvIv5MAqqyXapfzwOQbDF3/HUfjoetrR/aEiu3F8dbssmfOa31OsS8LXeBzDMwsp/4KCR2ObhGT8SGkt/GkPgyYsZHPyESZd150HBrZTgiJSRny2pJjZIXx3z+Ccq1XYiZ1zmWZ2JzAfiALecM6tNbPROfsn5hw6FPjMOXekuMEHQlks0S7lR4lb3vxprfHR9dQzfjiLLi38rr6S7RbLxgHBK37mbWE+47d/HHOy+zMn3TM7qVlsLIvizyn1Y5YV5xyv/vdn/jp/A6c0rMHEEd1p00Dl7UXKks8kxTlXE8DMngZ+xTMexYBrgaJm9uSe4xPgkwLbJha4PRmYXIyYA6pcVeOUoCt0DEYgup+K0fWUn6+kuqFL9j46LEDFz7yN0/H291RYjOHoUFoGv5+xks9+2MWghKb8+bLOVItRgW6RsubPX91A51zvfLdfNbPvgb8EKaYyFawl2qV8CteWN1/JwW5rQGOST7xDEYNXizOYvOA4nX7PfxnRif9Puw5x2zuJ/LLvKE9c0oGb+rVS9ViREPFnCnKWmV1rZlFmVsnMrgWyirxXhAhpNU6JOAGt0eJFsce75PA2PdqABS3H+D3FOn8MpSn/H8ll+D9etYPBLy/iYFom027pzc39WytBEQkhc67wyTJm1goYD/TD09W8CLjXObcl2MF506NHD7d06dJQPLTICWNSwPMGHIjEtrTnfnz2aqZ+t/W4gWSx0VG83fMXev48we/ZPb5aQprFxbLoEf/GlETatP7c8vb/WriZbi3jeHVEdxrVqhrqsEQqBDNLdM718LavyO6enGSksEqxIiERijfCgNZoKaC0412+Wp98wkj31Iws7v3hVBY9ssbvOALRpRWSMvwllHzoGHdOW8b3m/dxfZ+TePziDsRU1tqrIuHAn2JubYFXgUbOuU5mFg9c6px7JujRifgQyvo2wXoDLm1yEKjxMhVpMPmyrfu5fcoyDqSm8/fhCQzrFpmF5kTKK38+LvwTeBTIAHDOrcJT80SkTHgbp1Ee69uUdrxLoMbLRPKYEn8553jnu1+48rVvialciVlj+ilBEQlD/iQp1ZxziwtsywxGMCIF+RrEWR6muRZU2uQgUMlFeR9MnpaRxQPvr+KJ2Wvof0p95t7Znw5NCy37JCIh4s8U5D1mdjI59ZnM7HJgZ1CjEsnhq8UkyowsL4O+y7pLIpDjYko73iWQ42UiaUxJcWzbd5Tb3klk3a8HuffcU7n7nFOppOqxImHLnyTlDjzr5rQ3s+3AZmBEUKMSyeGrZSTLOWKjo0Ja3yYY42JKmxyU1+QiEL7esJt7pq/AOccbN/Tk7PYNQx2SiBTBn7V7NjnnzgUaAO2dc/1DNf1YKh5fLSO5XRCh7JIoj+NiyqPsbMeLX/zEyMlLaFK7KnPv6q8ERSRC+DO7pxHwLNDUOXehmXUA+jjnXg96dFLhFVYRuDStBoHopgnX6rPym5TUDO5/bwVfrN/N0K7NeHZoZ2Jjooq+o4iEBX8Gzk7Gs0hg05zbPwL3BikekeMEYxBnaSuq5gp29VkpnXU7D3LpSwv574/J/N+lHfn78AQlKCIRxp8xKfWdczPM7FHIW9243JTFl/AXqHEWua0n3mYGlWSRQK37FL4+WrGdhz9YRa2q0UwfdTo9WtUNdUgiUgL+JClHzKwev83uOR1ICWpUIgHmreR8QcXtpglm9VkpmYysbP40bx2Tv9lCr1Z1eenarjSsqfL2IpHKn7V7ugETgE7AGjwDaC/PKepW5rR2j5SEr/VoCmqmRCNi7T6Yxh3TlrFky35u6teaRy9qT3SUytuLhLsSr91jZlHAmTlf7fAsrLrBOZcR8ChFgsjfVpKyLK8vgbNkyz5un7qMw2mZvHh1Vy5NaFr0nUQk7BWapDjnssxssHPuBWBtGcUkUireZu74Wo/Gm9SMLO59bwXj5m9Qq0qYc84x+Zst/GneOlrUrcaUm3vTrnHNUIclIgHiz5iURWb2EvAecCR3o3NuWdCiEikhXwXWLuvejA8St58wyLWwMSpqVQlvR9MzeXTWaj5asYNzT2vE369MoFbV6FCHJSIB5E+HbV+gI/A08Lecr78GMyiRkvJVYO2r9clepzI3K2K6sIqzhacte44w7JVvmLNyBw+c35ZJ13VXgiJSDhXZkuKcO7ssAhHxR1FF2AorsOZrKnOgZ/1IcH2xbhf3vreCqErG5JG9OLNtg1CHJCJB4k/F2fu9bE4BEp1zKwIekYgP/qyV42vsia8Ca/mnEfsas6LibOEhK9sx/vMfefHLjXRsWouJI7rTom61UIclIkHkzxTkaUAPYG7OpouBJUB74H3n3F+CGmEBmoJcMXhrMSkskcidOgwntozERkf5VaXWWy0Vf+8b7gK5WnMoHDiazj3TV/DfH5O5ontz/jikE1WjVT1WpDwobAqyP0nKfOAy59zhnNs1gJnAUDytKR0CHG+hlKSUf76ShcK6ZHKPeW5YZ6DkBdYi/c3cm0hPvtZsT2HM1ER+TUlj7KUduaZXS8ws1GGJSICUNklZByQ459JzblcBVjjnTjOz5c65rgGPuBBKUso/X4XXoszIKuL3tVlcLIseOSdYoUUkX89nJDxXHyQm8diHq6lTLYZXR3Sja8s6oQ5JRAKsxMXcckwDvjOzj3JuDwLeNbPqwA8BilEkj6+BqlnOFdmiokGuJ4rE1ZrTM7P548c/8M53v9CnTT0mXNOV+jWqhDosESljRU5Bds79EbgVOIBnwOxo59zTzrkjzrlrgxyfVEC+Bqr6M21Yg1xPFGmrNf+aksaVk77lne9+4bbfteGdm3spQRGpoPxa2MI5l+icG++c+4dzTn0tElQPDmxHbIFBkbmrCw/p2oxFj5zDP67s4vMYOV5hz2e4+W7TXi6Z8D9+/PUQr1zbjUcvOo3KWn9HpMLyp7tHpEz5s7pwMFcgLm+DZyNhtWbnHK8v3Mxzn67npHrVmD7qdE5pqPL2IhVdkQNnw40Gzkpp5SYh2w+k5g3GDcQUZimZI8cyeeiDVcxbtZMLOjZm3BXx1FT1WJEKo7QDZ0XKjYLTcXNnC+UWhqsaXclrWf1x8zcoSQmCn5MPM/qdRH5OPszDF7Rn9JltNL1YRPIoSQkD5a17IZx5W9snV2pGls994TwTJlLNX/srv5+xkpjKlXjn5t70O6V+qEMSkTCjJCXE/Cn1LoFT0mQjXGfCRKKsbMffPtvAK1//TELz2rwyonuRCz2KSMWkYfMh5mvVXq28GxxFJRtxsdERMxMmEu07ks4Nbyzmla9/5upeLXnvtj5KUETEJyUpIRaJhbYimbfpuLlio6MYe2nHvFosxm+1WdSqVXqrkg4waMJCFm/Zx18ui+e5YZ21/o6IFErdPSFW3FV7pXQKrnpccHZP7n4lJYH13pKtPPHRWhrUqMLM0X2Ibx4X6pBEJAIoSQmxBwe28zrlVd0LwTOkazMlIWUkLSOL/5u7lncXb+OMU+sz/qqu1K0eE+qwRCRCKEkJsUgotCVSEtsPpDJmSiKrklK44+yTuf+8dkRV0vRiEfGfkpQwoE/2Ut4s2riHu95dTnpmNq9d152BHRuHOiQRiUBKUkQkYJxzTPzvJsbNX8/JDWrw2nXdadOgRqjDEpEIpSRFRALiUFoGD7y/kvlrd3FxfBP+clk81avoX4yIlJz+g4hIqW3cfYhR7yTyy96jPH7xadzcv7XK24tIqQU1STGzC4DxQBTwL+fc816OOQv4BxAN7HHOnRnMmKT0VMZf8pu3aicPzVxJbEwUU2/pzelt6oU6JBEpJ4KWpJhZFPAycB6QBCwxsznOuR/yHRMHvAJc4JzbamYNgxWPBIbK+IeHcEgUM7Oy+cv8DUxasImuLeN49druNK5dtUxjEJHyLZgVZ3sBG51zm5xz6cB0YHCBY64BZjnntgI453YHMR4JAJXxD73cRHH7gVQcvyWKs5dvL7MY9hw+xnWvL2bSgk1cd/pJvDeqjxIUEQm4YCYpzYBt+W4n5WzLry1Qx8y+NrNEM7ve24nMbJSZLTWzpcnJyUEKV/yhMv6hF+pEcfnW/QyasJBlW/fztysS+OOQTsRU1gobIhJ4wfzP4m3UnCtwuzLQHbgYGAg8YWZtT7iTc5Occz2ccz0aNGgQ+EjFb77K9auMf9kJVaLonGPKd78w/LVvqRxlzLq9L5d1bx7UxxSRii2YSUoS0CLf7ebADi/H/Ns5d8Q5twdYACQEMSYpJW8L9KmMf9kKRaKYlpHFgzNX8fjsNfQ9uT5z7+xPx6a1g/Z4IiIQ3CRlCXCqmbU2sxjgKmBOgWM+As4ws8pmVg3oDawLYkxSSkO6NtMqwSFW1onitn1HuXziN8xMTOLuAafyxo09iaum9XdEJPiCNrvHOZdpZncC8/FMQX7DObfWzEbn7J/onFtnZv8GVgHZeKYprwlWTBIYKuMfWmW53tN/f0zmnunLycp2vH5DDwac1ijgjyEi4os5V3CYSHjr0aOHW7p0aajDECnXsrMdr3y9kb/950faNarJxBHdaVW/eqjDEpFyyMwSnXM9vO1TxVkROU5Kaga/n7GSz9ftYkiXpjw3LJ7YmKii7ygiEmBKUkQkz4ZfD3HbO0tJ2p/K2EEduKFvK5W3F5GQUZIiIgB8tGI7j3ywmhpVK/PuqNPp2apuqEMSkQpOSYpIBZeRlc2zn6zjzUVb6NmqDi9f042GtVQ9VkRCT0mKSAW2+1Aad05dzuIt+xjZrxWPXXQa0VGqHisi4UFJikgFtXTLPm6fuoxDaZmMv6oLg7toWrmIhBclKSIVjHOOt77ZwjPz1tGsTixv39yL9o1rhTosEZETKEkRqUBS07N47MPVfLh8OwPaN+TvV3ahdmx0qMMSEfFKSYpIBfHL3iPc9k4iG3Yd4vfnteWOs0+hUiVNLxaR8KUkRaQC+HL9Lu6dvgIz480be3JWu4ahDklEpEhKUkTKsexsx/gvfmL8Fz/RoUktXruuOy3qVgt1WCIiflGSIlJOHTiazn3vreCrDclc1q05fxraiarRKm8vIpFDSYpIObR2RwqjpyTya0oazwzpxLW9W6q8vYhEHCUpIuXMrGVJPDprNXWqxfDebX3o1rJOqEMSESkRJSki5UR6ZjbPzPuBt7/9hdPb1GXC1d1oULNKqMMSESkxJSki5cCvKWncPjWRZVsPcOsZrXn4gvZUVnl7EYlwSlJEItz3m/Zyx7TlHE3P5KVrunJJfNNQhyQiEhBKUkQilHOO1xdu5rlP13NS3Wq8e2tvTm1UM9RhiYgEjJIUkQh05FgmD3+wio9X7WRgx0b89YoEalZVeXsRKV+UpIhEmE3Jhxk9JZGNuw/z8AXtGX1mG00vFpFySUmKSAT5bO2v/H7GSipHGW/f1Jv+p9YPdUgiIkGjJEUkAmRlO/7+nw28/NXPxDevzasjutMsLjbUYYmIBJWSFJEwt/9IOndPX87/ftrDVT1bMPbSjipvLyIVgpIUkTC2OslT3j750DGeH9aZq3q1DHVIIiJlRkmKSJiasWQbj3+0hvrVY3h/dB8SWsSFOiQRkTKlJEUkzBzLzGLsnB94d/FW+p1Sjxev6kq9GipvLyIVj5IUkTCy40AqY6YuY+W2A4w562QeOL8dUZU0vVhEKiYlKSJh4puNe7jr3eUcy8xm4ojuXNCpcahDEhEJKSUpIiHmnGPSgk38+d/radOgBhNHdOeUhjVCHZaISMgpSREJocPHMnnw/ZV8uuZXLu7chL9cHk/1KvqzFBEBJSkiIbNx92Fue2cpW/Ye5Q8XncYtZ7RWeXsRkXyUpIiEwKerd/LA+yupGh3FOzf3ou/JKm8vIlKQkhSRMpSZlc24+Rt4bcEmurSI49UR3WhSW+XtRUS8UZIiUkb2Hj7GXe8u55uf93Jt75Y8OagDVSqrvL2IiC9KUkTKwIptBxgzJZF9R9IZd3k8V/RoEeqQRETCnpIUkSByzvHu4m2MnbOWhrWq8MGYvnRqVjvUYYmIRAQlKSJBkpaRxZMfrWHG0iR+17YB46/sQp3qMaEOS0QkYihJEQmCbfuOMmZqImu2H+Tuc07hnnPbqry9iEgxKUkRCbAFPyZz9/TlZGU7/nV9D87t0CjUIYmIRCQlKSIBkp3tePW/P/PXzzbQtmFNJl7Xndb1q4c6LBGRiFUpmCc3swvMbIOZbTSzR7zsP8vMUsxsRc7Xk8GMRyRYDqZlcNuURMbN38Cg+KZ8eEdfJSgiIqUUtJYUM4sCXgbOA5KAJWY2xzn3Q4FD/+ecuyRYcYgE24ZfDzF6SiLb9h3lyUs6MLJfK5W3FxEJgGB29/QCNjrnNgGY2XRgMFAwSRGJWHNX7uChmauoUbUy0249nV6t64Y6JBGRciOYSUozYFu+20lAby/H9TGzlcAO4AHn3NogxiQSEBlZ2Tz/6XpeX7iZHifV4ZVru9GwVtVQhyUiUq4EM0nx1t7tCtxeBpzknDtsZhcBs4FTTziR2ShgFEDLli0DHKZI8SQfOsYd05axePM+buzbiscuOo2YykEd3iUiUiEF8z9rEpC/9ndzPK0leZxzB51zh3N+/gSINrMTloN1zk1yzvVwzvVo0KBBEEMWKVziL/u4ZML/WJV0gBeuTGDspR2VoIiIBEkw/7suAU41s9ZmFgNcBczJf4CZNbacEYZm1isnnr1BjEmkRJxzvP3tFq6a9B1Vo6P48PZ+DO3aPNRhiYiUa0Hr7nHOZZrZncB8IAp4wzm31sxG5+yfCFwOjDGzTCAVuMo5V7BLSCSkUtOz+MOHq5m1fDvntG/IC8O7ULtadKjDEhEp9yzScoIePXq4pUuXhjoMqSC27j3KbVMSWf/rQe4d0Ja7zjmFSipvLyISMGaW6Jzr4W2fKs6K+PDV+t3cM305AG/c2JOz2zUMcUQiIhWLkhSRArKzHS9++RPjv/iJ9o1r8dqI7rSsVy3UYYmIVDhKUkTySTmawX0zVvDl+t0M69qMPw3tTGxMVKjDEhGpkJSkiORYt/Mgt72TyM6UVP44uCMjTj9J5e1FREJISYoIMHv5dh6ZtYrasdFMH9WH7ifVCXVIIiIVnpIUqdDSM7N59pN1TP5mC71b1+Wla7rRoGaVUIclIiIoSZEKbNfBNG6fuozEX/ZzS//WPHxhe6KjVD1WRCRcKEmRCmnx5n3cMW0ZR45lMuHqrgxKaBrqkEREpAAlKVKhOOd4Y9EWnv1kHS3rVmPqLb1p26hmqMMSEREvlKRIhXE0PZNHPljNnJU7OK9DI/42PIFaVVXeXkQkXClJkQph854jjH4nkZ92H+LBge0Yc+bJKm8vIhLmlKRIuff5D7u4770VVI4y3rqpF2ec2iDUIYmIiB+UpEi5lZXt+MfnPzLhy410blabV0d0o3kdlbcXEYkUSlKkXNp/JJ173lvBgh+TGd6jOU8P7kTVaJW3FxGJJEpSpNxZsz2F0VMS2X3wGM8N68zVvVqGOiQRESkBJSlSrry/dBuPz15D3eoxzBjdhy4t4kIdkoiIlJCSFCkXjmVm8fTcH5j6/Vb6nlyPCVd3pV4NlbcXEYlkSlIk4u1MSWXMlGWs2HaA285sw4Pnt6OyytuLiEQ8JSkS0b75eQ93TVtOWkYWr17bjQs7Nwl1SCIiEiBKUiQiOef45/828ed/b6BVvWq8dl0fTmlYI9RhiYhIAClJkYhz+FgmD89cxbzVO7mwU2PGXZFAjSr6VRYRKW/0n10iys/Jh7ntnUQ2JR/m0QvbM+p3bTBTeXsRkfJISYpEjH+v2ckD76+iSuVKTLm5N31PqR/qkEREJIiUpEjYy8zK5q+f/cjE//5MQos4Xr22G03jYkMdloiIBJmSFAlrew8f4+7py1m0cS/X9G7JU4M6UKWyytuLiFQESlIkbK3cdoAxUxLZcySdv1wez/AeLUIdkoiIlCElKRKW3l28lac+WkuDmlX4YHRfOjevHeqQRESkjClJkbCSlpHFUx+t5b2l2zjj1Pq8eFVX6lSPCXVYIiISAkpSJGwk7T/K7VOXsSophTvPPoX7zmtLVCVNLxYRqaiUpEhYWPjTHu56dxmZWY5J13Xn/I6NQx2SiIiEmJIUCSnnHK/+92f+On8DpzSswcQR3WnTQOXtRURESYqE0KG0DH4/YyWf/bCLQQlN+fNlnakWo19JERHx0DuChMRPuw5x2zuJ/LLvKE9c0oGb+rVSeXsRETmOkhQpcx+v2sFDM1dRLaYy027pTe829UIdkoiIhCElKVJmMrOyef7T9fxr4Wa6tYzj1RHdaVSraqjDEhGRMKUkRcpE8qFj3DltGd9v3sf1fU7i8Ys7EFO5UqjDEhGRMKYkRYJu2db93D5lGQdS0/n78ASGdWse6pBERCQCKEmRoHHOMeX7rTw9dy1Nascya0w/OjStFeqwREQkQihJkaBIy8jiDx+u4YNlSZzdrgH/uLIrtatFhzosERGJIEpSJOC27TvKbe8ksu7Xg9x77qncfc6pVFJ5exERKSYlKRJQX2/YzT3TV+Cc440benJ2+4ahDklERCJUUKdXmNkFZrbBzDaa2SOFHNfTzLLM7PJgxiPBk53tePGLnxg5eQlN42KZe1d/JSgiIlIqQWtJMbMo4GXgPCAJWGJmc5xzP3g57s/A/GDFIsGVkprB/e+t4Iv1uxnatRnPDu1MbExUqMMSEZEIF8zunl7ARufcJgAzmw4MBn4ocNxdwAdAzyDGIkHyc/Jhbpq8hO37U/m/SztyfZ+TVN5eREQCIphJSjNgW77bSUDv/AeYWTNgKHAOhSQpZjYKGAXQsmXLgAcqJRcXG03d6jH8fXgC3U+qG+pwRESkHAlmkuLt47QrcPsfwMPOuazCPn075yYBkwB69OhR8BwSQvVqVGHWmL5qPRERkYALZpKSBLTId7s5sKPAMT2A6TlvcPWBi8ws0zk3O4hxSYApQRERkWAIZpKyBDjVzFoD24GrgGvyH+Cca537s5lNBj5WgiIiIiIQxCTFOZdpZnfimbUTBbzhnFtrZqNz9k8M1mOLiIhI5AtqMTfn3CfAJwW2eU1OnHM3BjMWERERiSxBLeYmIiIiUlJKUkRERCQsKUkRERGRsKQkRURERMKSkhQREREJS0pSREREJCwpSREREZGwpCRFREREwpKSFBEREQlL5lxkLSpsZsnAL6GOw4f6wJ5QBxEiuvaKSddeMenaK6ZgXftJzrkG3nZEXJISzsxsqXOuR6jjCAVdu669otG169ormlBcu7p7REREJCwpSREREZGwpCQlsCaFOoAQ0rVXTLr2iknXXjGV+bVrTIqIiIiEJbWkiIiISFhSklJMZnaBmW0ws41m9oiX/YPNbJWZrTCzpWbWPxRxBkNR157vuJ5mlmVml5dlfMHkx+t+lpml5LzuK8zsyVDEGQz+vO4517/CzNaa2X/LOsZg8eN1fzDfa74m5/e+bihiDTQ/rr22mc01s5U5r/vIUMQZDH5cex0z+zDnf/1iM+sUijiDwczeMLPdZrbGx34zsxdznptVZtYtqAE55/Tl5xcQBfwMtAFigJVAhwLH1OC3brR4YH2o4y6ra8933JfAJ8DloY67DF/3s4CPQx1riK49DvgBaJlzu2Go4y6ray9w/CDgy1DHXYav+2PAn3N+bgDsA2JCHXsZXfs44Kmcn9sDX4Q67gBe/++AbsAaH/svAj4FDDgd+D6Y8aglpXh6ARudc5ucc+nAdGBw/gOcc4ddzisJVAfKy6CfIq89x13AB8DusgwuyPy99vLIn2u/BpjlnNsK4JwrL699cV/3q4F3yySy4PPn2h1Q08wMz4ezfUBm2YYZFP5cewfgCwDn3HqglZk1Ktswg8M5twDPa+nLYOBt5/EdEGdmTYIVj5KU4mkGbMt3Oyln23HMbKiZrQfmATeVUWzBVuS1m1kzYCgwsQzjKgt+ve5An5ym70/NrGPZhBZ0/lx7W6COmX1tZolmdn2ZRRdc/r7umFk14AI8CXp54M+1vwScBuwAVgP3OOeyyya8oPLn2lcCwwDMrBdwEtC8TKILPb//LgJBSUrxmJdtJ7SUOOc+dM61B4YAfwx2UGXEn2v/B/Cwcy4r+OGUKX+ufRme0s4JwARgdrCDKiP+XHtloDtwMTAQeMLM2gY7sDLg1997jkHAIudcYZ9AI4k/1z4QWAE0BboAL5lZreCGVSb8ufbn8STmK/C0Hi+nfLQi+aM4fxelVjlYJy6nkoAW+W43x/Mpwivn3AIzO9nM6jvnIn2tB3+uvQcw3dP6S33gIjPLdM7NLpMIg6fIa3fOHcz38ydm9koFet2TgD3OuSPAETNbACQAP5ZNiEFTnL/3qyg/XT3g37WPBJ7P6d7eaGab8YzPWFw2IQaNv3/vI8EzkBTYnPNVERTrfbC01JJSPEuAU82stZnF4PnHNCf/AWZ2Ss4vLTmjnmOAvWUeaeAVee3OudbOuVbOuVbATOD2cpCggH+ve+N8r3svPH9bFeJ1Bz4CzjCzyjndHr2BdWUcZzD4c+2YWW3gTDzPQ3nhz7VvBQYA5IzHaAdsKtMog8Ofv/e4nH0AtwAL8n9QKefmANfnzPI5HUhxzu0M1oOpJaUYnHOZZnYnMB/PCPA3nHNrzWx0zv6JwGV4XsAMIBW4Mt9A2ojl57WXS35e++XAGDPLxPO6X1VRXnfn3Doz+zewCsgG/uWc8zp9MZIU43d+KPBZTktSueDntf8RmGxmq/F0ATxcDloO/b3204C3zSwLz8y2m0MWcICZ2bt4ZivWN7Mk4CkgGvKu/RM8M3w2AkfJaVEKWjzl4P+oiIiIlEPq7hEREZGwpCRFREREwpKSFBEREQlLSlJEREQkLClJERERkbCkJEVEwpaZfWJmcaGOQ0RCQ1OQRSTs5BTGs3KyFoyIlJBaUkQkJMzsfjNbk/N1r5m1MrN1ZvYKnrWQWpjZFjOrn3P8E2a23sz+Y2bvmtkDob0CEQk2VZwVkTJnZt3xVKrsjada6ffAf/GUVh/pnLs957jc43vgqebcFc//rWVAYpkHLiJlSkmKiIRCf+DD3FLyZjYLOAP4xTn3nY/jP3LOpeYcP7fMIhWRkFF3j4iEgrfl3gF8rX/j63gRKceUpIhIKCwAhphZNTOrjmeRvv8VcvxCYJCZVTWzGsDFZRGkiISWuntEpMw555aZ2WRgcc6mfwH7Czl+iZnNAVYCvwBLgZRgxykioaUpyCISEcyshnPusJlVw9MSM8o5tyzUcYlI8KglRUQixSQz6wBUBd5SgiJS/qklRURERMKSBs6KiIhIWFKSIiIiImFJSYqIiIiEJSUpIiIiEpaUpIiIiEhYUpIiIiIiYen/Aeh1jSRvRqr9AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "accum = accum_10_10_80\n", "figsize(9,6)\n", "scatter([x['orig-kappa'] for x in accum],[x['shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['orig-balanced'] for x in accum],[x['shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['orig-accuracy'] for x in accum],[x['shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('orig')\n", "ylabel('greedy shift');\n", "title('10-10-80');" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABRiUlEQVR4nO3dd3zV1f3H8dcnyQ0JK2HLFLDsJRBAQEVFxUWZjtZJVarW/qxWBTdFK1jaWly1uK1bQETQ4kBFFBUQDUNQBISwV8JKyE3u+f1xb2ISbpIbyM29Sd7PxyMPcr/rfvI1Ju+c7xnmnENEREQk2sREugARERGRYBRSREREJCoppIiIiEhUUkgRERGRqKSQIiIiIlFJIUVERESikkKKiIiIRCWFFBEpEzO70cyWmNlhM3u+yL7BZrbazA6Z2cdmdnwJ14k3s+lmtsHMnJmdVmS/mdlDZrY78PE3M7MSrlfDzJ40s+1mtsfM3jGz5gX2tw7UdChQ45lHfRNEpEIopIhIWW0BHgCeLbjRzBoCM4F7gPrAEuD1Uq61ELgM2BZk31hgONAD6A5cAPy+hGvdBPQPHNsMSAceLbD/VWAZ0AC4C5huZo1KqU9EIkghRUTKxDk30zk3C9hdZNdIYKVz7k3nXBYwAehhZh2LuU62c+5fzrmFQG6QQ64E/uGcS3PObQb+AVxVQmltgHnOue2B938N6AJgZu2BXsB9zrlM59wMYDkwKqQvWkQiQiFFRMpLF+C7vBfOuYPAT4Htx3y9wOclXesZYKCZNTOzmsClwHsFrrXOObe/DNcTkQiLi3QBIlJl1AZ2FtmWAdQ5hutlFLlWbTMzF3zRsR+AjcBm/C0zy4Ebi7lW3vWaIyJRSy0pIlJeDgB1i2yrC+w3s1ZmdiDv4yivVxc44JxzZnZnges9Gdj/byABf5+TWvj7x7xXzLXyawuxFhGJAIUUESkvK/F3cgXAzGoBJ+Dvp7LROVc77+Norhf4fCWAc+7BAte7rsD+551ze5xzh/F3mu0b6NC7EmhrZnWCXU9EopNCioiUiZnFmVkCEAvEmlmCmcUBbwFdzWxUYP+9QKpzbnUJ16oROBYgPnCtvGHGLwK3mFlzM2sG/Bl4voTSFgNXmFmSmXmAG4AtzrldzrkfgG+B+wLvMQL/KKAZR3kbRKQCKKSISFndDWQC4/EPH84E7nbO7cQ/WuavwF6gH3BJKddaEzi/OTAv8Hne3Cr/Ad7B37dkBTA3sK04twJZwI/4+8acB4wosP8SICVQ22RgdKBmEYlSFrz/mYiIiEhkqSVFREREopJCioiIiEQlhRQRERGJSgopIiIiEpUUUkRERCQqVbpp8Rs2bOhat24d6TJERESkHCxdunSXcy7oiuSVLqS0bt2aJUuWRLoMERERKQdm9nNx+/S4R0RERKKSQoqIiIhEJYUUERERiUqVrk9KMF6vl7S0NLKysiJdikRIQkICLVq0wOPxRLoUEREpJ1UipKSlpVGnTh1at27NLwuoSnXhnGP37t2kpaXRpk2bSJcjIiLlpEo87snKyqJBgwYKKNWUmdGgQQO1pImIVDFVIqQACijVnP77i4hUPVUmpETahg0b6Nq1a6TLEBERqTIUUkRERCQqhS2kmNmzZrbDzFYUs9/M7BEzW2tmqWbWK1y1FDVr2WYGTp5Pm/FzGTh5PrOWbS7X669bt46ePXvy1VdfMWDAAHr27MmAAQNYs2YNAM8//zzDhg3jnHPOoUOHDvzlL38B/K0xHTt25Morr6R79+6MHj2aQ4cOATBx4kT69OlD165dGTt2LM65cq1ZREQk2oSzJeV54JwS9p8LtAt8jAX+HcZa8s1atpk7Zi5nc3omDticnskdM5eXW1BZs2YNo0aN4rnnnqNTp04sWLCAZcuWMXHiRO688878477++mtefvllvv32W9588838qf7XrFnD2LFjSU1NpW7dujzxxBMA3HjjjSxevJgVK1aQmZnJnDlzyqVeERGRaBW2kOKcWwDsKeGQYcCLzu9LINnMmoarnjxT5q0h05tbaFumN5cp89Yc87V37tzJsGHDeOmllzjxxBPJyMjgwgsvpGvXrtx8882sXLky/9izzjqLBg0akJiYyMiRI1m4cCEALVu2ZODAgQBcdtll+ds//vhj+vXrR7du3Zg/f36ha4mIiISLc445qVvIzvFV+HtHsk9Kc2BTgddpgW1HMLOxZrbEzJbs3LnzmN50S3pmmbaXRVJSEi1btuTzzz8H4J577uH0009nxYoVvPPOO4WGyBYdjZL3Otj2rKwsbrjhBqZPn87y5cu59tprNdxWRETCbtOeQ1z+zNfc+Mqycu8aEYpIhpRgY0aDdrRwzk1zzqU451IaNQq6mnPImiUnlml7WcTHxzNr1ixefPFFXnnlFTIyMmje3J+7nn/++ULHfvDBB+zZs4fMzExmzZqV33qyceNGFi1aBMCrr77KySefnB9IGjZsyIEDB5g+ffox1yoiIlKcXJ/j2YXrOfvhBXy7KZ0HhndldO8WFV5HJENKGtCywOsWwJZwv+ltQzqQ6IkttC3RE8ttQzqUy/Vr1arFnDlzePjhhznxxBO54447GDhwILm5hR8xnXzyyVx++eWceOKJjBo1ipSUFAA6derECy+8QPfu3dmzZw/XX389ycnJXHvttXTr1o3hw4fTp0+fcqlVRESkqB+372f0k18wcc4qTmpbn/dvPpXLTjqemJiKn4/KwjlKxMxaA3Occ0dMIGJm5wM3AucB/YBHnHN9S7tmSkqKy+tkmuf777+nU6dOIdc1a9lmpsxbw5b0TJolJ3LbkA4M7xn0SVNYPP/88yxZsoTHHnus0PYNGzZwwQUXsGJF0AFRUoqyfh+IiMgvsnN8PPnpTzw2fy21asRy39AuDDuxWdgnyzSzpc65lGD7wrZ2j5m9CpwGNDSzNOA+wAPgnHsSeBd/QFkLHALGhKuWoob3bF6hoURERCSapaalc/v0VFZv28/QHs24b2hnGtauEemywtuSEg7l0ZIiVZO+D0REyibLm8vDH/zAU5+to1GdGjwwvBtndW5SoTVEpCVFREREoteX63YzfkYqG3Yf4jd9W3LHeZ2om+CJdFmFKKSIiIhUI/uzvEx+bzUvf7WRVvVr8so1/Rjwq4aRLisohRQREZFqYv7q7dz11gq278vimpPb8OezO5AYH1v6iRGikCIiIlLF7TmYzcR3VjLr2y20b1KbJy4dQM9W9SJdVqm0CnI52LBhA127HjHKukRXXXVVRCZlO5paRUSkcnLOMfu7LZz5z0+Zu3wrNw1ux5w/nlIpAgqoJUUiICcnh7g4feuJiITTtows7p61gg+/306PFkk8NLofHY+rG+myyqR6tqSkvgEPd4UJyf5/U9845kvm5ORw5ZVX0r17d0aPHs2hQ4cAmDhxIn369KFr166MHTuWYEO+izvmtNNOY9y4cfTt25f27dvz2WefAZCbm8utt95Kt27d6N69O48++igAS5cuZdCgQfTu3ZshQ4awdevW/O09evSgf//+PP7440HrP3DgAIMHD6ZXr15069aNt99+O3/fiy++SPfu3enRoweXX345ANu3b2fEiBH06NGDHj168MUXXxzRSvP3v/+dCRMm5H8td955J4MGDWLq1Km888479OvXj549e3LmmWeyffv2/DrGjBmT/7XNmDGDZ555hptvvjn/uk899RS33HJL2f8jiYhUA845Xv16I2f981MWrt3J3ed3YuYNAytdQAH8X0xl+ujdu7cratWqVUdsK9Z3rzv3QBPn7qv7y8cDTfzbj9L69esd4BYuXOicc27MmDFuypQpzjnndu/enX/cZZdd5mbPnu2cc+7KK690b775ZonHDBo0yN1yyy3OOefmzp3rBg8e7Jxz7oknnnAjR450Xq83//zs7GzXv39/t2PHDuecc6+99pobM2aMc865bt26uU8++cQ559ytt97qunTpcsTX4PV6XUZGhnPOuZ07d7oTTjjB+Xw+t2LFCte+fXu3c+fOQrVedNFF7uGHH3bOOZeTk+PS09Pd+vXrC117ypQp7r777sv/Wq6//vr8fXv27HE+n88559xTTz2V/3Xefvvt7qabbip03IEDB1zbtm1ddna2c865/v37u9TU1CO+hjJ9H4iIVEEbdh1wl/xnkTt+3Bx3yX8WuQ27DkS6pFIBS1wxv/OrX5v7RxPBW2TFY2+mf3v3i476si1btsxfJPCyyy7jkUce4dZbb+Xjjz/mb3/7G4cOHWLPnj106dKFoUOHFjq3pGNGjhwJQO/evdmwYQMAH374Idddd13+I5P69euzYsUKVqxYwVlnnQX4W1uaNm1KRkYG6enpDBo0CIDLL7+c995774j6nXPceeedLFiwgJiYGDZv3sz27duZP38+o0ePpmHDhvnvBTB//nxefPFFAGJjY0lKSmLv3r0l3qOLL744//O0tDQuvvhitm7dSnZ2Nm3atMn/2l577bX84+rV8z83PeOMM5gzZw6dOnXC6/XSrVu3Et9LRKQ6yfU5nvt8PX9/fw2emBgmjezGJX1ahn1K+3CrfiElI61s20NU9BvBzMjKyuKGG25gyZIltGzZkgkTJuSvaJyntGNq1PBPSxwbG0tOTg7gDxRF3885R5cuXfJXUM6Tnp4e0jfpyy+/zM6dO1m6dCkej4fWrVuTlZUV9L2KExcXh8/nK/S1FVSrVq38z//4xz9yyy238Otf/5pPPvkk/7FQce93zTXX8OCDD9KxY0fGjKmwFRRERKLemm37uX1GKt9tSufMTo15YHg3jktKiHRZ5aL69UlJKmap6eK2h2jjxo35AeHVV1/l5JNPzv8l3bBhQw4cOBB0NE8oxxR19tln8+STT+aHlj179tChQwd27tyZX4PX62XlypUkJyeTlJTEwoULAX8YCSYjI4PGjRvj8Xj4+OOP+fnnnwEYPHgwb7zxBrt3785/r7zt//73vwF/q82+ffto0qQJO3bsYPfu3Rw+fJg5c+YU+zVkZGTQvLl//aQXXnih0NdWcOHFvNaZfv36sWnTJl555RV+85vflHqPRESquuwcH//68AcuePQzNu05xCO/6clTV6RUmYAC1TGkDL4XPImFt3kS/duPQadOnXjhhRfo3r07e/bs4frrryc5OZlrr72Wbt26MXz4cPr06XPEeaEcU9Q111xDq1at8juzvvLKK8THxzN9+nTGjRtHjx49OPHEE/niiy8AeO655/jDH/5A//79SUxMDHrNSy+9lCVLlpCSksLLL79Mx44dAejSpQt33XUXgwYNokePHvkdVqdOncrHH39Mt27d6N27NytXrsTj8XDvvffSr18/LrjggvxrBDNhwgQuvPBCTjnllPxHSQB33303e/fupWvXrvTo0YOPP/44f99FF13EwIED8x8BiYhUV99uSmfoowv514c/cn63pnx4yyB+3SP8KxZXtOq5wGDqG/4+KBlp/haUwfceU38UqRgXXHABN998M4MHDw66XwsMikhVl5mdyz/eX8Ozn6+nSd0E/jqiK2d0rNgFAcubFhgsqvtFCiWVSHp6On379qVHjx7FBhQRkarui592MX7GcjbuOcSl/Vox/tyO1ImyBQHLW/UMKVKpJCcn88MPP0S6DBGRiNiX5WXSu9/z6tebaN2gJq+NPYmT2jaIdFkVQiFFREQkSn24ajt3zVrOzv2H+f2pbfnTme2jekHA8qaQIiIiEmV2HzjMhHdW8c53W+h4XB2euiKF7i2SI11WhVNIERERiaC56+Yy9ZupbDu4jSY1j2NA3ZuY/ZWHA4dzuOWs9lw36ATi46rfYFxQSBEREYmYuevmMuGLCWTlZuHzJrFuzdn8eADaNPbyxu9PpV2TOpEuMaIUUkRERCJk6jdTycw5jDe9H4d3nAsuhhpN3iGuxXraNTk/0uVFnEJKJZOTk5O/Zo+IiFRum/d6ydp6LbmH2hJb80cSmr5FTPweth+qWpOyHa1q+ZBr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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-k-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-k-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-k-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-kappa');\n", "title('10-10-80');" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABbR0lEQVR4nO3dd3iUZdbH8e+dEEgIELp0KSI1CSWAgIqKAopIFXvBwtp2XX1FwIrKKrZVrCy6FtYuIFVFERTsgEhC6AJCQicQWkLa/f4xSUzCzGSSzGRmkt/nunLBPPPMM2ceY3K4yznGWouIiIhIoAnxdwAiIiIizihJERERkYCkJEVEREQCkpIUERERCUhKUkRERCQgKUkRERGRgKQkRURERAKSkhQRKRFjzF3GmJXGmJPGmHeKPNffGLPBGHPCGLPUGHO6m+tUNcbMNMZsN8ZYY8x5RZ43xpinjTEHc7+eMcYYN9erZoyZZozZa4xJMcbMN8Y0LfB8y9yYTuTGeGGpb4KIlAslKSJSUruAycBbBQ8aY+oDs4GHgbrASuDjYq71PXAtsMfJc2OBYUAsEANcCvzNzbXuBnrnntsEOAy8XOD5D4HVQD3gQWCmMaZBMfGJiB8pSRGRErHWzrbWzgEOFnlqBJBorf3UWpsOTAJijTHtXVwnw1r7orX2eyDbySk3AM9ba5OstcnA88CNbkJrBSyy1u7Nff+PgE4AxpgzgW7Ao9baNGvtLCABGOnRhxYRv1CSIiLe0glYk/fAWnsc+CP3eJmvl/t3d9f6L9DXGNPEGFMduAb4osC1tlprj5bgeiLiZ1X8HYCIVBg1gP1FjqUCNctwvdQi16phjDHWedOxTcAOIBnHyEwCcJeLa+VdrykiErA0kiIi3nIMqFXkWC3gqDGmhTHmWN5XKa9XCzhmrbXGmAcKXG9a7vOvA+E41pxE4lgf84WLa+XH5mEsIuIHSlJExFsScSxyBcAYEwm0wbFOZYe1tkbeV2mul/v3RABr7ZMFrndbgeffsdamWGtP4lg02zN3QW8i0NoYU9PZ9UQkMClJEZESMcZUMcaEA6FAqDEm3BhTBfgM6GyMGZn7/CNAvLV2g5trVcs9F6Bq7rXythnPAO41xjQ1xjQB/g94x01oK4DrjTFRxpgw4A5gl7X2gLV2E/A78GjuewzHsQtoVilvg4iUAyUpIlJSDwFpwAQc24fTgIestftx7Jb5F3AI6AVcWcy1Nua+vimwKPfvebVV/gPMx7G2ZC2wMPeYK/cB6cBmHGtjLgGGF3j+SiAuN7YpwKjcmEUkQBnn689ERERE/EsjKSIiIhKQlKSIiIhIQFKSIiIiIgFJSYqIiIgEJCUpIiIiEpCCrix+/fr1bcuWLf0dhoiIiHjBqlWrDlhrnXYkD7okpWXLlqxcudLfYYiIiIgXGGP+dPWcpntEREQkIClJERERkYCkJEVEREQCUtCtSXEmMzOTpKQk0tPT/R2K+El4eDjNmjUjLCzM36GIiIiXVIgkJSkpiZo1a9KyZUv+aqAqlYW1loMHD5KUlESrVq38HY6IiHhJhZjuSU9Pp169ekpQKiljDPXq1dNImohIBVMhkhRACUolp//+IiIVT4VJUvxt+/btdO7c2d9hiIiIVBhKUkRERCQg+SxJMca8ZYzZZ4xZ6+J5Y4x5yRizxRgTb4zp5qtYipqzOpm+U5bQasJC+k5ZwpzVyV69/tatW+natSu//PILffr0oWvXrvTp04eNGzcC8M477zB06FAGDRpEu3bteOyxxwDHaEz79u254YYbiImJYdSoUZw4cQKAxx9/nB49etC5c2fGjh2LtdarMYuIiAQaX46kvAMMcvP8xUDb3K+xwOs+jCXfnNXJTJydQPLhNCyQfDiNibMTvJaobNy4kZEjR/L222/ToUMHli1bxurVq3n88cd54IEH8s/79ddfef/99/n999/59NNP80v9b9y4kbFjxxIfH0+tWrV47bXXALjrrrtYsWIFa9euJS0tjQULFnglXhERkUDlsyTFWrsMSHFzylBghnX4GahtjGnsq3jyPLtoI2mZ2YWOpWVm8+yijWW+9v79+xk6dCjvvfceXbp0ITU1lcsvv5zOnTtzzz33kJiYmH/uRRddRL169YiIiGDEiBF8//33ADRv3py+ffsCcO211+YfX7p0Kb169SI6OpolS5YUupaIiIivWGtZEL+LjKyccn9vf65JaQrsLPA4KffYKYwxY40xK40xK/fv31+mN911OK1Ex0siKiqK5s2b88MPPwDw8MMPc/7557N27Vrmz59faIts0d0oeY+dHU9PT+eOO+5g5syZJCQkcOutt2q7rYiI+NzOlBNc999fueuD1V5fGuEJfyYpzvaMOl1oYa2dbq2Ns9bGNWjgtJuzx5rUjijR8ZKoWrUqc+bMYcaMGXzwwQekpqbStKkj73rnnXcKnfv111+TkpJCWloac+bMyR892bFjBz/99BMAH374IWeffXZ+QlK/fn2OHTvGzJkzyxyriIiIK9k5lre+38aAF5bx+87DTB7WmVHdm5V7HP5MUpKA5gUeNwN2+fpNxw1sR0RYaKFjEWGhjBvYzivXj4yMZMGCBbzwwgt06dKFiRMn0rdvX7KzC08xnX322Vx33XV06dKFkSNHEhcXB0CHDh149913iYmJISUlhdtvv53atWtz6623Eh0dzbBhw+jRo4dXYhURESlq896jjJr2I48vWMdZrevy1T3ncu1ZpxMSUv71qIwvd4kYY1oCC6y1pxQQMcYMBu4CLgF6AS9Za3sWd824uDibt8g0z/r16+nQoYPHcc1Zncyzizay63AaTWpHMG5gO4Z1dTrT5BPvvPMOK1eu5JVXXil0fPv27Vx66aWsXet0Q5QUo6TfByIi8peMrBymffcHryzZQmS1UB4d0omhXZr4vFimMWaVtTbO2XM+691jjPkQOA+ob4xJAh4FwgCstdOAz3EkKFuAE8AYX8VS1LCuTcs1KREREQlk8UmHuX9mPBv2HGVIbBMeHdKR+jWq+Tss346k+II3RlKkYtL3gYhIyaRnZvPC15t4Y/lWGtSsxuRh0VzU8bRyjcEvIykiIiISuH7eepAJs+LZfvAEV/VszsRLOlArPMzfYRWiJEVERKQSOZqeyZQvNvD+LztoUbc6H9zSiz5n1Pd3WE4pSREREakklmzYy4OfrWXvkXRuObsV/zegHRFVQ4t/oZ8oSREREangUo5n8Pj8ROb8voszT6vBa9f0oWuLOv4Oq1jqguwF27dvp3PnU3ZZu3XjjTf6pShbaWIVEZHgZK1l3ppdXPjv71iYsJu7+7dlwd/PCYoEBTSSIn6QlZVFlSr61hMR8aU9qek8NGcti9fvJbZZFE+P6kX7RrX8HVaJVM6RlPhP4IXOMKm248/4T8p8yaysLG644QZiYmIYNWoUJ06cAODxxx+nR48edO7cmbFjx+Jsy7erc8477zzGjx9Pz549OfPMM1m+fDkA2dnZ3HfffURHRxMTE8PLL78MwKpVq+jXrx/du3dn4MCB7N69O/94bGwsvXv35tVXX3Ua/7Fjx+jfvz/dunUjOjqauXPn5j83Y8YMYmJiiI2N5brrrgNg7969DB8+nNjYWGJjY/nxxx9PGaV57rnnmDRpUv5neeCBB+jXrx9Tp05l/vz59OrVi65du3LhhReyd+/e/DjGjBmT/9lmzZrFf//7X+655578677xxhvce++9Jf+PJCJSCVhr+fDXHVz07+/4fst+Hhrcgdl39A26BAVwfJhg+urevbstat26daccc2nNx9ZOPs3aR2v99TX5NMfxUtq2bZsF7Pfff2+ttXbMmDH22WeftdZae/Dgwfzzrr32Wjtv3jxrrbU33HCD/fTTT92e069fP3vvvfdaa61duHCh7d+/v7XW2tdee82OGDHCZmZm5r8+IyPD9u7d2+7bt89aa+1HH31kx4wZY621Njo62n777bfWWmvvu+8+26lTp1M+Q2Zmpk1NTbXWWrt//37bpk0bm5OTY9euXWvPPPNMu3///kKxjh492r7wwgvWWmuzsrLs4cOH7bZt2wpd+9lnn7WPPvpo/me5/fbb859LSUmxOTk51lpr33jjjfzPef/999u777670HnHjh2zrVu3thkZGdZaa3v37m3j4+NP+Qwl+j4QEamAth84Zq/8z0/29PEL7JX/+cluP3DM3yEVC1hpXfzOr3xj7t88DplFOh5npjmOx4wu9WWbN2+e3yTw2muv5aWXXuK+++5j6dKlPPPMM5w4cYKUlBQ6derEkCFDCr3W3TkjRowAoHv37mzfvh2AxYsXc9ttt+VPmdStW5e1a9eydu1aLrroIsAx2tK4cWNSU1M5fPgw/fr1A+C6667jiy++OCV+ay0PPPAAy5YtIyQkhOTkZPbu3cuSJUsYNWoU9evXz38vgCVLljBjxgwAQkNDiYqK4tChQ27v0RVXXJH/96SkJK644gp2795NRkYGrVq1yv9sH330Uf55deo45k0vuOACFixYQIcOHcjMzCQ6Otrte4mIVCbZOZa3f9jGc19tJCwkhKdGRHNlj+Y+L2nva5UvSUlNKtlxDxX9RjDGkJ6ezh133MHKlStp3rw5kyZNyu9onKe4c6pVc5QlDg0NJSsrC3AkFEXfz1pLp06d8jso5zl8+LBH36Tvv/8++/fvZ9WqVYSFhdGyZUvS09OdvpcrVapUIScnp9BnKygyMjL/73//+9+59957ueyyy/j222/zp4Vcvd8tt9zCk08+Sfv27Rkzptw6KIiIBLyNe45y/6x4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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-ba-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-ba-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-ba-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-balanced');\n", "title('10-10-80');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Same conclusions as before (good thing!)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Some ChEMBL datasets" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's just be sure that this approach works with bioactivity data too. I don't think it's necessary do a comprehensive evaluation here, but I want to show a couple of examples. I didn't cherry pick these." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## CHEMBL205: Carbonic Anhydrase II" ] }, { "cell_type": "code", "execution_count": 4, "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", "
compound_chembl_idcanonical_smilesstandard_valuestandard_unitsstandard_relationstandard_typeyearROMolpKi
0CHEMBL1054NS(=O)(=O)c1cc2c(cc1Cl)NC(C(Cl)Cl)NS2(=O)=O91.0nM=Ki2009\"Mol\"/7.040959
1CHEMBL1055NS(=O)(=O)c1cc(C2(O)NC(=O)c3ccccc32)ccc1Cl138.0nM=Ki2009\"Mol\"/6.860121
2CHEMBL1060O=P([O-])([O-])O.[Na+].[Na+]13200000.0nM=Ki2004\"Mol\"/1.879426
3CHEMBL106848NS(=O)(=O)c1ccc(SCCO)cc121.0nM=Ki2013\"Mol\"/7.677781
4CHEMBL107217CCN(CC)C(=S)[S-].[Na+]3100.0nM=Ki2009\"Mol\"/5.508638
\n", "
" ], "text/plain": [ " compound_chembl_id canonical_smiles \\\n", "0 CHEMBL1054 NS(=O)(=O)c1cc2c(cc1Cl)NC(C(Cl)Cl)NS2(=O)=O \n", "1 CHEMBL1055 NS(=O)(=O)c1cc(C2(O)NC(=O)c3ccccc32)ccc1Cl \n", "2 CHEMBL1060 O=P([O-])([O-])O.[Na+].[Na+] \n", "3 CHEMBL106848 NS(=O)(=O)c1ccc(SCCO)cc1 \n", "4 CHEMBL107217 CCN(CC)C(=S)[S-].[Na+] \n", "\n", " standard_value standard_units standard_relation standard_type year \\\n", "0 91.0 nM = Ki 2009 \n", "1 138.0 nM = Ki 2009 \n", "2 13200000.0 nM = Ki 2004 \n", "3 21.0 nM = Ki 2013 \n", "4 3100.0 nM = Ki 2009 \n", "\n", " ROMol pKi \n", "0 \n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
standard_valueyearpKi
countmeanstdmin25%50%75%maxcountmean...75%maxcountmeanstdmin25%50%75%max
activity
0968.01.242009e+183.864224e+1910000.00010000.000050000.0196700.0001.202264e+21968.02012.994835...2016.02020.0968.04.0691071.200449-12.0800003.7062164.3010305.0000005.00000
13582.07.292523e+021.778519e+033.20013.500073.4417.7509.900000e+033582.02013.261307...2017.02020.03582.07.0502310.9156515.0043656.3790847.1343067.8696668.49485
2427.01.309327e+008.709364e-010.0080.63551.02.0353.100000e+00427.02014.962529...2017.02020.0427.09.0506590.5007798.5086388.6914379.0000009.19689511.09691
\n", "

3 rows × 24 columns

\n", "" ], "text/plain": [ " standard_value \\\n", " count mean std min 25% \n", "activity \n", "0 968.0 1.242009e+18 3.864224e+19 10000.000 10000.0000 \n", "1 3582.0 7.292523e+02 1.778519e+03 3.200 13.5000 \n", "2 427.0 1.309327e+00 8.709364e-01 0.008 0.6355 \n", "\n", " year ... \\\n", " 50% 75% max count mean ... 75% \n", "activity ... \n", "0 50000.0 196700.000 1.202264e+21 968.0 2012.994835 ... 2016.0 \n", "1 73.4 417.750 9.900000e+03 3582.0 2013.261307 ... 2017.0 \n", "2 1.0 2.035 3.100000e+00 427.0 2014.962529 ... 2017.0 \n", "\n", " pKi \\\n", " max count mean std min 25% 50% \n", "activity \n", "0 2020.0 968.0 4.069107 1.200449 -12.080000 3.706216 4.301030 \n", "1 2020.0 3582.0 7.050231 0.915651 5.004365 6.379084 7.134306 \n", "2 2020.0 427.0 9.050659 0.500779 8.508638 8.691437 9.000000 \n", "\n", " \n", " 75% max \n", "activity \n", "0 5.000000 5.00000 \n", "1 7.869666 8.49485 \n", "2 9.196895 11.09691 \n", "\n", "[3 rows x 24 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def binner(act,bins=(5,8.5)):\n", " for i,bin in enumerate(bins):\n", " if act<=bin:\n", " return i\n", " return len(bins)\n", "data['activity'] = [binner(x) for x in data.pKi]\n", "data.groupby('activity').describe()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ok, that's imbalanced :-)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Generate fingerprints:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "from rdkit.Chem import SaltRemover\n", "sr = SaltRemover.SaltRemover()\n", "stripped = [sr.StripMol(m) for m in data.ROMol]\n", "fpgen = rdFingerprintGenerator.GetMorganGenerator(radius=2)\n", "fps = [fpgen.GetFingerprint(m) for m in stripped]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And now run the experiment with 20 random splits:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "original\n", "accuracy: 0.833 balanced accuracy: 0.547 kappa: 0.530\n", "[[126 68 0]\n", " [ 14 703 0]\n", " [ 0 84 1]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.851 balanced accuracy: 0.719 kappa: 0.647\n", "[[154 38 2]\n", " [ 39 656 22]\n", " [ 0 47 38]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.851 balanced accuracy: 0.719 kappa: 0.647\n", "[[154 38 2]\n", " [ 39 656 22]\n", " [ 0 47 38]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.712 balanced accuracy: 0.776 kappa: 0.493\n", "[[177 12 5]\n", " [ 96 467 154]\n", " [ 3 17 65]]\n", "original\n", "accuracy: 0.822 balanced accuracy: 0.538 kappa: 0.497\n", "[[117 77 0]\n", " [ 17 699 1]\n", " [ 0 82 3]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.837 balanced accuracy: 0.723 kappa: 0.622\n", "[[149 45 0]\n", " [ 41 642 34]\n", " [ 1 41 43]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.837 balanced accuracy: 0.723 kappa: 0.622\n", "[[149 45 0]\n", " [ 41 642 34]\n", " [ 1 41 43]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.745 balanced accuracy: 0.785 kappa: 0.528\n", "[[172 18 4]\n", " [ 93 505 119]\n", " [ 2 18 65]]\n", "original\n", "accuracy: 0.810 balanced accuracy: 0.518 kappa: 0.463\n", "[[114 80 0]\n", " [ 23 693 1]\n", " [ 1 84 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.827 balanced accuracy: 0.704 kappa: 0.596\n", "[[146 48 0]\n", " [ 49 638 30]\n", " [ 0 45 40]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.827 balanced accuracy: 0.704 kappa: 0.596\n", "[[146 48 0]\n", " [ 49 638 30]\n", " [ 0 45 40]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.35000000000000003, 0.1)\n", "accuracy: 0.728 balanced accuracy: 0.758 kappa: 0.494\n", "[[162 28 4]\n", " [ 83 500 134]\n", " [ 0 22 63]]\n", "original\n", "accuracy: 0.820 balanced accuracy: 0.534 kappa: 0.491\n", "[[115 79 0]\n", " [ 17 699 1]\n", " [ 1 81 3]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.841 balanced accuracy: 0.729 kappa: 0.631\n", "[[152 42 0]\n", " [ 48 643 26]\n", " [ 1 41 43]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.841 balanced accuracy: 0.729 kappa: 0.631\n", "[[152 42 0]\n", " [ 48 643 26]\n", " [ 1 41 43]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.735 balanced accuracy: 0.780 kappa: 0.518\n", "[[177 12 5]\n", " [ 96 492 129]\n", " [ 1 21 63]]\n", "original\n", "accuracy: 0.834 balanced accuracy: 0.549 kappa: 0.535\n", "[[127 67 0]\n", " [ 14 703 0]\n", " [ 2 82 1]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.852 balanced accuracy: 0.737 kappa: 0.652\n", "[[149 45 0]\n", " [ 34 655 28]\n", " [ 1 39 45]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.852 balanced accuracy: 0.737 kappa: 0.652\n", "[[149 45 0]\n", " [ 34 655 28]\n", " [ 1 39 45]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.772 balanced accuracy: 0.792 kappa: 0.566\n", "[[176 15 3]\n", " [ 75 531 111]\n", " [ 2 21 62]]\n", "original\n", "accuracy: 0.814 balanced accuracy: 0.511 kappa: 0.462\n", "[[107 87 0]\n", " [ 13 704 0]\n", " [ 3 82 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.842 balanced accuracy: 0.707 kappa: 0.619\n", "[[140 53 1]\n", " [ 37 658 22]\n", " [ 0 44 41]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.842 balanced accuracy: 0.707 kappa: 0.619\n", "[[140 53 1]\n", " [ 37 658 22]\n", " [ 0 44 41]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.749 balanced accuracy: 0.783 kappa: 0.533\n", "[[174 17 3]\n", " [ 81 509 127]\n", " [ 1 21 63]]\n", "original\n", "accuracy: 0.820 balanced accuracy: 0.530 kappa: 0.494\n", "[[120 74 0]\n", " [ 20 697 0]\n", " [ 2 83 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.832 balanced accuracy: 0.703 kappa: 0.607\n", "[[151 42 1]\n", " [ 54 641 22]\n", " [ 0 48 37]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.832 balanced accuracy: 0.703 kappa: 0.607\n", "[[151 42 1]\n", " [ 54 641 22]\n", " [ 0 48 37]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.747 balanced accuracy: 0.769 kappa: 0.526\n", "[[175 15 4]\n", " [108 510 99]\n", " [ 3 23 59]]\n", "original\n", "accuracy: 0.825 balanced accuracy: 0.539 kappa: 0.507\n", "[[122 72 0]\n", " [ 18 699 0]\n", " [ 0 84 1]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.835 balanced accuracy: 0.690 kappa: 0.605\n", "[[145 48 1]\n", " [ 45 652 20]\n", " [ 1 49 35]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.835 balanced accuracy: 0.690 kappa: 0.605\n", "[[145 48 1]\n", " [ 45 652 20]\n", " [ 1 49 35]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.750 balanced accuracy: 0.788 kappa: 0.536\n", "[[172 17 5]\n", " [ 93 510 114]\n", " [ 3 17 65]]\n", "original\n", "accuracy: 0.829 balanced accuracy: 0.539 kappa: 0.514\n", "[[121 73 0]\n", " [ 13 704 0]\n", " [ 0 84 1]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.843 balanced accuracy: 0.695 kappa: 0.624\n", "[[149 44 1]\n", " [ 31 657 29]\n", " [ 1 50 34]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.843 balanced accuracy: 0.695 kappa: 0.624\n", "[[149 44 1]\n", " [ 31 657 29]\n", " [ 1 50 34]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.35000000000000003, 0.1)\n", "accuracy: 0.794 balanced accuracy: 0.777 kappa: 0.586\n", "[[164 26 4]\n", " [ 51 568 98]\n", " [ 1 25 59]]\n", "original\n", "accuracy: 0.826 balanced accuracy: 0.536 kappa: 0.509\n", "[[122 72 0]\n", " [ 15 701 1]\n", " [ 1 84 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.846 balanced accuracy: 0.717 kappa: 0.637\n", "[[152 41 1]\n", " [ 37 652 28]\n", " [ 0 46 39]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.846 balanced accuracy: 0.717 kappa: 0.637\n", "[[152 41 1]\n", " [ 37 652 28]\n", " [ 0 46 39]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.735 balanced accuracy: 0.766 kappa: 0.512\n", "[[177 13 4]\n", " [107 496 114]\n", " [ 0 26 59]]\n", "original\n", "accuracy: 0.820 balanced accuracy: 0.530 kappa: 0.490\n", "[[117 77 0]\n", " [ 18 699 0]\n", " [ 1 83 1]]\n", "rebalanced\n", "thresholds: [0.45, 0.15000000000000002]\n", "accuracy: 0.831 balanced accuracy: 0.696 kappa: 0.592\n", "[[132 62 0]\n", " [ 30 654 33]\n", " [ 1 42 42]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.834 balanced accuracy: 0.720 kappa: 0.616\n", "[[150 44 0]\n", " [ 45 639 33]\n", " [ 1 42 42]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.715 balanced accuracy: 0.768 kappa: 0.490\n", "[[175 16 3]\n", " [101 474 142]\n", " [ 1 21 63]]\n", "original\n", "accuracy: 0.827 balanced accuracy: 0.537 kappa: 0.509\n", "[[120 74 0]\n", " [ 14 703 0]\n", " [ 1 83 1]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.838 balanced accuracy: 0.700 kappa: 0.616\n", "[[152 42 0]\n", " [ 47 648 22]\n", " [ 0 50 35]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.838 balanced accuracy: 0.700 kappa: 0.616\n", "[[152 42 0]\n", " [ 47 648 22]\n", " [ 0 50 35]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.746 balanced accuracy: 0.784 kappa: 0.531\n", "[[176 15 3]\n", " [ 96 504 117]\n", " [ 2 20 63]]\n", "original\n", "accuracy: 0.828 balanced accuracy: 0.538 kappa: 0.514\n", "[[123 71 0]\n", " [ 15 702 0]\n", " [ 1 84 0]]\n", "rebalanced\n", "thresholds: [0.45, 0.15000000000000002]\n", "accuracy: 0.845 balanced accuracy: 0.711 kappa: 0.623\n", "[[134 60 0]\n", " [ 24 664 29]\n", " [ 0 41 44]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.833 balanced accuracy: 0.725 kappa: 0.614\n", "[[149 45 0]\n", " [ 51 637 29]\n", " [ 0 41 44]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.736 balanced accuracy: 0.778 kappa: 0.518\n", "[[181 12 1]\n", " [102 491 124]\n", " [ 1 23 61]]\n", "original\n", "accuracy: 0.819 balanced accuracy: 0.525 kappa: 0.485\n", "[[116 78 0]\n", " [ 17 700 0]\n", " [ 1 84 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.820 balanced accuracy: 0.685 kappa: 0.577\n", "[[144 50 0]\n", " [ 47 637 33]\n", " [ 0 49 36]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.820 balanced accuracy: 0.685 kappa: 0.577\n", "[[144 50 0]\n", " [ 47 637 33]\n", " [ 0 49 36]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.727 balanced accuracy: 0.757 kappa: 0.495\n", "[[170 21 3]\n", " [100 494 123]\n", " [ 0 25 60]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "original\n", "accuracy: 0.822 balanced accuracy: 0.534 kappa: 0.502\n", "[[122 72 0]\n", " [ 20 697 0]\n", " [ 3 82 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.827 balanced accuracy: 0.701 kappa: 0.598\n", "[[149 45 0]\n", " [ 53 637 27]\n", " [ 2 45 38]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.827 balanced accuracy: 0.701 kappa: 0.598\n", "[[149 45 0]\n", " [ 53 637 27]\n", " [ 2 45 38]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.757 balanced accuracy: 0.791 kappa: 0.543\n", "[[175 19 0]\n", " [ 98 515 104]\n", " [ 2 19 64]]\n", "original\n", "accuracy: 0.827 balanced accuracy: 0.541 kappa: 0.517\n", "[[126 68 0]\n", " [ 19 698 0]\n", " [ 2 83 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.831 balanced accuracy: 0.709 kappa: 0.614\n", "[[159 34 1]\n", " [ 54 633 30]\n", " [ 3 46 36]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.831 balanced accuracy: 0.709 kappa: 0.614\n", "[[159 34 1]\n", " [ 54 633 30]\n", " [ 3 46 36]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.746 balanced accuracy: 0.781 kappa: 0.529\n", "[[174 17 3]\n", " [101 506 110]\n", " [ 4 18 63]]\n", "original\n", "accuracy: 0.826 balanced accuracy: 0.533 kappa: 0.505\n", "[[117 77 0]\n", " [ 12 705 0]\n", " [ 4 80 1]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.812 balanced accuracy: 0.663 kappa: 0.556\n", "[[141 53 0]\n", " [ 51 636 30]\n", " [ 3 50 32]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.812 balanced accuracy: 0.663 kappa: 0.556\n", "[[141 53 0]\n", " [ 51 636 30]\n", " [ 3 50 32]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.739 balanced accuracy: 0.742 kappa: 0.506\n", "[[170 21 3]\n", " [ 92 512 113]\n", " [ 3 28 54]]\n", "original\n", "accuracy: 0.837 balanced accuracy: 0.564 kappa: 0.557\n", "[[141 53 0]\n", " [ 24 693 0]\n", " [ 0 85 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.853 balanced accuracy: 0.735 kappa: 0.662\n", "[[169 25 0]\n", " [ 54 644 19]\n", " [ 0 48 37]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.853 balanced accuracy: 0.735 kappa: 0.662\n", "[[169 25 0]\n", " [ 54 644 19]\n", " [ 0 48 37]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.754 balanced accuracy: 0.810 kappa: 0.552\n", "[[186 6 2]\n", " [102 499 116]\n", " [ 0 19 66]]\n", "original\n", "accuracy: 0.809 balanced accuracy: 0.506 kappa: 0.447\n", "[[105 89 0]\n", " [ 16 701 0]\n", " [ 2 83 0]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.813 balanced accuracy: 0.671 kappa: 0.557\n", "[[138 56 0]\n", " [ 48 637 32]\n", " [ 2 48 35]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.813 balanced accuracy: 0.671 kappa: 0.557\n", "[[138 56 0]\n", " [ 48 637 32]\n", " [ 2 48 35]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.730 balanced accuracy: 0.758 kappa: 0.502\n", "[[170 20 4]\n", " [ 83 497 137]\n", " [ 2 23 60]]\n", "original\n", "accuracy: 0.821 balanced accuracy: 0.538 kappa: 0.499\n", "[[120 74 0]\n", " [ 20 696 1]\n", " [ 1 82 2]]\n", "rebalanced\n", "thresholds: [0.4, 0.15000000000000002]\n", "accuracy: 0.838 balanced accuracy: 0.716 kappa: 0.623\n", "[[154 40 0]\n", " [ 42 642 33]\n", " [ 0 46 39]]\n", "global kappa rebalanced\n", "thresholds: (0.4, 0.15000000000000002)\n", "accuracy: 0.838 balanced accuracy: 0.716 kappa: 0.623\n", "[[154 40 0]\n", " [ 42 642 33]\n", " [ 0 46 39]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.3, 0.1)\n", "accuracy: 0.771 balanced accuracy: 0.814 kappa: 0.572\n", "[[180 14 0]\n", " [ 78 521 118]\n", " [ 1 17 67]]\n" ] } ], "source": [ "accum_chembl205 = []\n", "for i in range(20):\n", " run_ternary_experiment(fps,data.activity,accum_chembl205,random_state=0xf00d+i)\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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jJdH9KBt/WqeLqtE/PNKSuwX8HpHmFjd+d/YLy74kFlZWdx1111ERkYyYsQIUlNTAXjuuefo1q0bHTt2ZNSoURQ25buofS6//HLGjh1L9+7dad26NStWrAAgOzubxx57jIiICCIjI3nrrbcAWL16NX369KFr167079+fffv25W2PioqiZ8+evPPOO4XWf/LkSfr27UuXLl2IiIhg7ty5ec/NmDGDyMhIoqKiuOOOOwA4cOAAw4YNIyoqiqioKH7++eezrtK8+uqrTJw4Me9nmTBhAn369GHKlCnMnz+fHj160LlzZ6666ioOHDiQV8fIkSPzfraYmBjef/99Hnnkkbzjvvfeezz66KMl/58kIuIHrLV89tsurn7tB37ceognB7Zj1kO9y11AAZw/THn66tq1qy1o/fr1Z20r0rr/WftCPWufqfbn1wv1nNvP0/bt2y1gf/zxR2uttSNHjrSTJ0+21lp75MiRvP1uv/12O2/ePGuttXfddZf98ssvi92nT58+9tFHH7XWWrtw4ULbt29fa6217777rr3++uttZmZm3uszMjJsz5497cGDB6211n7++ed25MiR1lprIyIi7Pfff2+ttfaxxx6zHTp0OOtnyMzMtCkpKdZaaw8dOmRbtmxpHQ6HjY+Pt61bt7aHDh06o9Ybb7zRvv7669Zaa7OysuyxY8fs9u3bzzj25MmT7TPPPJP3szz44IN5zyUnJ1uHw2Gttfa9997L+zkff/xxO3r06DP2O3nypG3RooXNyMiw1lrbs2dPGxsbe9bPUKLPgYiID9px+KS9+T8rbdOxC+zN/1lpdxw+6emSzglYZYv4O9//rrl/9xxkFuh4nJnm3B5543kfNjw8PK9J4O23386bb77JY489xrJly3jllVdITU0lOTmZDh06MHjw4DNeW9w+119/PQBdu3Zlx44dACxZsoQHHngg75ZJzZo1iY+PJz4+nquvvhpwXm1p0KABKSkpHDt2jD59+gBwxx138NVXX51Vv7WWCRMmsHz5cgICAtizZw8HDhxg6dKljBgxgtq1a+e9F8DSpUuZMWMGAIGBgYSFhXH06NFiz9FNN92U931SUhI33XQT+/btIyMjg+bNm+f9bJ9//nnefjVqOO+bXnnllSxYsIB27dqRmZlJREREse8lIuJPsh2WD3/azqvfbCIoIICXro/g5m7hbl/S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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "accum = accum_chembl205\n", "figsize(9,6)\n", "scatter([x['orig-kappa'] for x in accum],[x['shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['orig-balanced'] for x in accum],[x['shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['orig-accuracy'] for x in accum],[x['shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('orig')\n", "ylabel('greedy shift');\n", "title('CHEMBL205');" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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75/Jbx7zIfPz87n66qtJSEhg9OjRZGVlATBp0iT69u1Lz549GTt2LCXd8l1am9NOO41x48bRr18/OnfuzKJFiwAoKCjgjjvuID4+noSEBJ5++mkAli5dyqBBg+jTpw9nnXUW27dvL9qemJjIgAEDePbZZ0us/8CBAwwZMoTevXsTHx/PO++8U7RvxowZJCQkkJiYyJVXXgnAzp07GTFiBImJiSQmJvL111//ppfm8ccfZ+LEiUXvZcKECQwaNIipU6fy3nvv0b9/f3r16sUf/vAHdu7cWVTHmDFjit7brFmz+M9//sNtt91WdNznn3+e22+/vex/SSIi1YBzjte/38wZ//iCL9encc953Zj9p5MqXUABvG+mMn316dPHFbdy5crfbCvVT/9zbnIz5+6v9+vX5Gbe7b/Txo0bHeC+/PJL55xzY8aMcY899phzzrk9e/YUtbviiivcu+++65xz7uqrr3ZvvfXWEdsMGjTI3X777c455+bNm+eGDBninHPuueeecyNHjnR5eXlFz8/NzXUDBgxwu3btcs4598Ybb7gxY8Y455yLj493n3/+uXPOuTvuuMP16NHjN+8hLy/PZWZmOuecS0tLcx07dnQej8etWLHCde7c2aWlpR1W60UXXeSeeOIJ55xz+fn5LiMjw23cuPGwYz/22GPu/vvvL3ovN910U9G+9PR05/F4nHPOPf/880Xv86677nK33nrrYe0OHDjgOnTo4HJzc51zzg0YMMAlJyf/5j2U6XMgIlIFbdp9wF3yr2/ccePmukv+9Y3btPtAqEs6KmCJK+V3fvXrc/9kEuQVW/E4L9u7PeGi333YNm3aFC0SeMUVV/DUU09xxx138Nlnn/Hoo4+SlZVFeno6PXr0YOjQoYc990htRo4cCUCfPn3YtGkTAAsWLODGG28sumTSsGFDVqxYwYoVKzjjjDMAb29LixYtyMzMJCMjg0GDBgFw5ZVX8sEHH/ymfuccEyZMYOHChURERLB161Z27tzJp59+yujRo2ncuHHRawF8+umnzJgxA4DIyEji4uLYu3fvEc/RxRdfXPR9amoqF198Mdu3byc3N5f27dsXvbc33nijqF2DBt7rpqeffjpz586lW7du5OXlER8ff8TXEhGpTgo8jhe/2sjjH60hOiKCh0fGc0nfNkGf0j7Yql9IyUwt2/YAFf8gmBk5OTn8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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-k-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-k-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-k-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-kappa');\n", "title('CHEMBL205');" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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TXeXVSjlcyQl/Gt4OxCmBDj+DP+62C+ZlpbGnXfeSXBwMGPHjiUxMRGAF198kR49ehAYGMj48ePJa8l3fucMGDCACRMm0LNnT9q1a8fq1asBSE9P54knniAoKIjg4GDee+89ADZu3Ej//v3p3r07gwcP5siRI9nHQ0JC6N27Nx988EGe9SckJDBw4EC6detGUFAQCxYsyH5u1qxZBAcHExISwu233w7AsWPHGDVqFCEhIYSEhLB27doLRmneeustpkyZkv29PP300/Tv359p06axaNEievXqRdeuXbnqqqs4duxYdh3jxo3L/t7CwsL497//zWOPPZb9uh9//DGPP/544f8jiYiUA9Zavvr9AFf/42fW7I5h8tCOzH2or9cFFMDxzXjTR/fu3W1uW7duveBYvrb819qXG1j7fM3/fbzcwHG8iPbt22cBu2bNGmuttePGjbNvvvmmtdbakydPZp9322232YULF1prrb3zzjvtN998U+A5/fv3t48//ri11tolS5bYgQMHWmut/fDDD+3o0aNtampq9tenpKTY3r172+PHj1trrZ09e7YdN26ctdbaoKAgu3LlSmuttU888YTt3LnzBd9DamqqjY+Pt9ZaGxMTY9u0aWMzMjJsZGSkbdeunY2JiTmv1htuuMG+/fbb1lpr09LSbFxcnN23b995r/3mm2/a559/Pvt7efDBB7Ofi42NtRkZGdZaaz/++OPs7/Opp56yjz766HnnJSQk2NatW9uUlBRrrbW9e/e24eHhF3wPhfo5EBEpg/afSLA3/XOdbTFhsb3pn+vs/hMJ7i7pooANNp+/88vfmPtPL0Jqro7HqUmO48E3FPllmzVrlt0k8LbbbuPdd9/liSeeYMWKFbzxxhskJiYSGxtL586dGT58+HlfW9A5o0ePBqB79+7s378fgGXLlvHAAw9k3zKpXbs2kZGRREZGcvXVVwOO0ZZGjRoRHx9PXFwc/fv3B+D222/n22+/vaB+ay1PP/00q1atokKFChw6dIhjx46xfPlyxo4dS926dbPfC2D58uXMmjULAB8fH/z9/Tl16lSB1+jGG2/M/jw6Opobb7yRI0eOkJKSQqtWrbK/t9mzZ2efV6uW477plVdeyeLFi+nYsSOpqakEBQUV+F4iIuVJeoblk1/28dYPO/CtUIHXRgdxU49mLt/S3tXKX0iJjy7c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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-ba-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-ba-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-ba-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-balanced');\n", "title('CHEMBL205');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We see the same behavior as before: shifting the descision thresholds using either the greedy approach or grid-based approach improves prediction accuracy over the default decision thresholds.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## CHEMBL217: Dopamine D2" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "scrolled": true }, "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", "
standard_valueyearpKi
countmeanstdmin25%50%75%maxcountmean...75%maxcountmeanstdmin25%50%75%max
activity
0356.0143415.189354781194.66832610000.00010000.000010000.0024234.510000000.00356.02011.679775...2017.02019.0356.04.6729160.5818652.0000004.6156265.0000005.0000005.000000
14014.0830.5461631471.61012510.00063.1875238.51931.09906.004014.02011.100648...2015.02020.04014.06.6200740.7249195.0041026.0310506.6224947.1993708.000000
2607.03.7159422.7861550.0271.21503.005.99.86607.02011.957166...2016.02019.0607.08.6146710.4758628.0061238.2291488.5228798.91545710.568636
\n", "

3 rows × 24 columns

\n", "
" ], "text/plain": [ " standard_value \\\n", " count mean std min 25% \n", "activity \n", "0 356.0 143415.189354 781194.668326 10000.000 10000.0000 \n", "1 4014.0 830.546163 1471.610125 10.000 63.1875 \n", "2 607.0 3.715942 2.786155 0.027 1.2150 \n", "\n", " year ... \\\n", " 50% 75% max count mean ... 75% \n", "activity ... \n", "0 10000.00 24234.5 10000000.00 356.0 2011.679775 ... 2017.0 \n", "1 238.51 931.0 9906.00 4014.0 2011.100648 ... 2015.0 \n", "2 3.00 5.9 9.86 607.0 2011.957166 ... 2016.0 \n", "\n", " pKi \\\n", " max count mean std min 25% 50% \n", "activity \n", "0 2019.0 356.0 4.672916 0.581865 2.000000 4.615626 5.000000 \n", "1 2020.0 4014.0 6.620074 0.724919 5.004102 6.031050 6.622494 \n", "2 2019.0 607.0 8.614671 0.475862 8.006123 8.229148 8.522879 \n", "\n", " \n", " 75% max \n", "activity \n", "0 5.000000 5.000000 \n", "1 7.199370 8.000000 \n", "2 8.915457 10.568636 \n", "\n", "[3 rows x 24 columns]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data = pd.read_csv('../data/target_CHEMBL217.csv.gz')\n", "PandasTools.AddMoleculeColumnToFrame(data,smilesCol='canonical_smiles')\n", "data['pKi'] = [-math.log10(x*1e-9) for x in data['standard_value']]\n", "def binner(act,bins=(5,8)):\n", " for i,bin in enumerate(bins):\n", " if act<=bin:\n", " return i\n", " return len(bins)\n", "data['activity'] = [binner(x) for x in data.pKi]\n", "data.groupby('activity').describe()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "from rdkit.Chem import SaltRemover\n", "sr = SaltRemover.SaltRemover()\n", "stripped = [sr.StripMol(m) for m in data.ROMol]\n", "fpgen = rdFingerprintGenerator.GetMorganGenerator(radius=2)\n", "fps = [fpgen.GetFingerprint(m) for m in stripped]" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "original\n", "accuracy: 0.832 balanced accuracy: 0.436 kappa: 0.239\n", "[[ 9 62 0]\n", " [ 0 797 6]\n", " [ 0 99 23]]\n", "rebalanced\n", "thresholds: [0.1, 0.15000000000000002]\n", "accuracy: 0.810 balanced accuracy: 0.657 kappa: 0.453\n", "[[ 33 38 0]\n", " [ 33 696 74]\n", " [ 0 44 78]]\n", "global kappa rebalanced\n", "thresholds: (0.15000000000000002, 0.15000000000000002)\n", "accuracy: 0.819 balanced accuracy: 0.601 kappa: 0.434\n", "[[ 19 52 0]\n", " [ 10 719 74]\n", " [ 0 44 78]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.706 balanced accuracy: 0.665 kappa: 0.353\n", "[[ 33 29 9]\n", " [ 31 570 202]\n", " [ 0 22 100]]\n", "original\n", "accuracy: 0.832 balanced accuracy: 0.426 kappa: 0.234\n", "[[ 5 66 0]\n", " [ 3 798 2]\n", " [ 0 96 26]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.845 balanced accuracy: 0.693 kappa: 0.524\n", "[[ 43 28 0]\n", " [ 36 730 37]\n", " [ 0 53 69]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.845 balanced accuracy: 0.693 kappa: 0.524\n", "[[ 43 28 0]\n", " [ 36 730 37]\n", " [ 0 53 69]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.752 balanced accuracy: 0.725 kappa: 0.429\n", "[[ 42 24 5]\n", " [ 35 606 162]\n", " [ 0 21 101]]\n", "original\n", "accuracy: 0.838 balanced accuracy: 0.452 kappa: 0.276\n", "[[ 10 61 0]\n", " [ 2 798 3]\n", " [ 0 95 27]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.832 balanced accuracy: 0.701 kappa: 0.507\n", "[[ 45 26 0]\n", " [ 41 713 49]\n", " [ 1 50 71]]\n", "global kappa rebalanced\n", "thresholds: (0.15000000000000002, 0.2)\n", "accuracy: 0.850 balanced accuracy: 0.645 kappa: 0.508\n", "[[ 30 41 0]\n", " [ 8 746 49]\n", " [ 0 51 71]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.747 balanced accuracy: 0.747 kappa: 0.440\n", "[[ 45 19 7]\n", " [ 41 593 169]\n", " [ 1 15 106]]\n", "original\n", "accuracy: 0.841 balanced accuracy: 0.447 kappa: 0.282\n", "[[ 7 64 0]\n", " [ 1 801 1]\n", " [ 0 92 30]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.845 balanced accuracy: 0.700 kappa: 0.538\n", "[[ 38 33 0]\n", " [ 36 723 44]\n", " [ 1 40 81]]\n", "global kappa rebalanced\n", "thresholds: (0.15000000000000002, 0.2)\n", "accuracy: 0.849 balanced accuracy: 0.633 kappa: 0.510\n", "[[ 22 49 0]\n", " [ 16 743 44]\n", " [ 0 41 81]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.714 balanced accuracy: 0.701 kappa: 0.379\n", "[[ 38 28 5]\n", " [ 34 568 201]\n", " [ 1 16 105]]\n", "original\n", "accuracy: 0.838 balanced accuracy: 0.448 kappa: 0.271\n", "[[ 9 62 0]\n", " [ 0 799 4]\n", " [ 0 95 27]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.811 balanced accuracy: 0.650 kappa: 0.446\n", "[[ 35 36 0]\n", " [ 54 702 47]\n", " [ 0 51 71]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.811 balanced accuracy: 0.650 kappa: 0.446\n", "[[ 35 36 0]\n", " [ 54 702 47]\n", " [ 0 51 71]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.705 balanced accuracy: 0.689 kappa: 0.365\n", "[[ 35 32 4]\n", " [ 48 560 195]\n", " [ 0 15 107]]\n", "original\n", "accuracy: 0.840 balanced accuracy: 0.469 kappa: 0.290\n", "[[ 16 55 0]\n", " [ 0 798 5]\n", " [ 0 99 23]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.838 balanced accuracy: 0.703 kappa: 0.514\n", "[[ 47 24 0]\n", " [ 42 721 40]\n", " [ 0 55 67]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.837 balanced accuracy: 0.747 kappa: 0.548\n", "[[ 47 24 0]\n", " [ 42 701 60]\n", " [ 0 36 86]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.746 balanced accuracy: 0.760 kappa: 0.442\n", "[[ 47 20 4]\n", " [ 39 588 176]\n", " [ 0 14 108]]\n", "original\n", "accuracy: 0.842 balanced accuracy: 0.450 kappa: 0.293\n", "[[ 6 65 0]\n", " [ 1 800 2]\n", " [ 0 89 33]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.853 balanced accuracy: 0.699 kappa: 0.551\n", "[[ 38 33 0]\n", " [ 25 733 45]\n", " [ 1 42 79]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.853 balanced accuracy: 0.699 kappa: 0.551\n", "[[ 38 33 0]\n", " [ 25 733 45]\n", " [ 1 42 79]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.742 balanced accuracy: 0.713 kappa: 0.413\n", "[[ 38 30 3]\n", " [ 23 596 184]\n", " [ 0 17 105]]\n", "original\n", "accuracy: 0.827 balanced accuracy: 0.426 kappa: 0.223\n", "[[ 6 65 0]\n", " [ 2 793 8]\n", " [ 0 97 25]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.833 balanced accuracy: 0.683 kappa: 0.492\n", "[[ 45 26 0]\n", " [ 39 722 42]\n", " [ 0 59 63]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.833 balanced accuracy: 0.683 kappa: 0.492\n", "[[ 45 26 0]\n", " [ 39 722 42]\n", " [ 0 59 63]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.753 balanced accuracy: 0.745 kappa: 0.440\n", "[[ 45 23 3]\n", " [ 37 601 165]\n", " [ 0 18 104]]\n", "original\n", "accuracy: 0.845 balanced accuracy: 0.457 kappa: 0.313\n", "[[ 5 66 0]\n", " [ 0 800 3]\n", " [ 0 85 37]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.840 balanced accuracy: 0.691 kappa: 0.521\n", "[[ 38 33 0]\n", " [ 32 721 50]\n", " [ 0 44 78]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.840 balanced accuracy: 0.691 kappa: 0.521\n", "[[ 38 33 0]\n", " [ 32 721 50]\n", " [ 0 44 78]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.724 balanced accuracy: 0.703 kappa: 0.391\n", "[[ 37 29 5]\n", " [ 28 578 197]\n", " [ 0 16 106]]\n", "original\n", "accuracy: 0.846 balanced accuracy: 0.476 kappa: 0.329\n", "[[ 11 60 0]\n", " [ 3 798 2]\n", " [ 0 88 34]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.835 balanced accuracy: 0.715 kappa: 0.518\n", "[[ 48 23 0]\n", " [ 39 713 51]\n", " [ 0 51 71]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.835 balanced accuracy: 0.715 kappa: 0.518\n", "[[ 48 23 0]\n", " [ 39 713 51]\n", " [ 0 51 71]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.740 balanced accuracy: 0.755 kappa: 0.428\n", "[[ 48 21 2]\n", " [ 36 584 183]\n", " [ 0 17 105]]\n", "original\n", "accuracy: 0.832 balanced accuracy: 0.423 kappa: 0.220\n", "[[ 7 64 0]\n", " [ 2 801 0]\n", " [ 0 101 21]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.839 balanced accuracy: 0.663 kappa: 0.495\n", "[[ 38 33 0]\n", " [ 40 732 31]\n", " [ 0 56 66]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.839 balanced accuracy: 0.663 kappa: 0.495\n", "[[ 38 33 0]\n", " [ 40 732 31]\n", " [ 0 56 66]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.750 balanced accuracy: 0.697 kappa: 0.410\n", "[[ 38 30 3]\n", " [ 38 612 153]\n", " [ 0 25 97]]\n", "original\n", "accuracy: 0.842 balanced accuracy: 0.456 kappa: 0.294\n", "[[ 9 62 0]\n", " [ 1 800 2]\n", " [ 0 92 30]]\n", "rebalanced\n", "thresholds: [0.1, 0.25]\n", "accuracy: 0.829 balanced accuracy: 0.648 kappa: 0.461\n", "[[ 40 31 0]\n", " [ 39 728 36]\n", " [ 0 64 58]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.814 balanced accuracy: 0.693 kappa: 0.480\n", "[[ 40 31 0]\n", " [ 39 691 73]\n", " [ 0 42 80]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.725 balanced accuracy: 0.712 kappa: 0.395\n", "[[ 40 26 5]\n", " [ 39 578 186]\n", " [ 0 18 104]]\n", "original\n", "accuracy: 0.846 balanced accuracy: 0.486 kappa: 0.337\n", "[[ 14 57 0]\n", " [ 1 796 6]\n", " [ 0 89 33]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.845 balanced accuracy: 0.712 kappa: 0.542\n", "[[ 42 29 0]\n", " [ 43 721 39]\n", " [ 0 43 79]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.845 balanced accuracy: 0.712 kappa: 0.542\n", "[[ 42 29 0]\n", " [ 43 721 39]\n", " [ 0 43 79]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.732 balanced accuracy: 0.712 kappa: 0.400\n", "[[ 41 26 4]\n", " [ 41 587 175]\n", " [ 0 21 101]]\n", "original\n", "accuracy: 0.836 balanced accuracy: 0.439 kappa: 0.262\n", "[[ 6 65 0]\n", " [ 2 798 3]\n", " [ 0 93 29]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.835 balanced accuracy: 0.669 kappa: 0.497\n", "[[ 36 35 0]\n", " [ 43 723 37]\n", " [ 0 49 73]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.835 balanced accuracy: 0.669 kappa: 0.497\n", "[[ 36 35 0]\n", " [ 43 723 37]\n", " [ 0 49 73]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.747 balanced accuracy: 0.699 kappa: 0.415\n", "[[ 36 28 7]\n", " [ 40 606 157]\n", " [ 0 20 102]]\n", "original\n", "accuracy: 0.839 balanced accuracy: 0.457 kappa: 0.291\n", "[[ 9 62 0]\n", " [ 2 796 5]\n", " [ 0 91 31]]\n", "rebalanced\n", "thresholds: [0.1, 0.15000000000000002]\n", "accuracy: 0.829 balanced accuracy: 0.725 kappa: 0.527\n", "[[ 41 30 0]\n", " [ 36 696 71]\n", " [ 1 32 89]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.829 balanced accuracy: 0.725 kappa: 0.527\n", "[[ 41 30 0]\n", " [ 36 696 71]\n", " [ 1 32 89]]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.829 balanced accuracy: 0.725 kappa: 0.527\n", "[[ 41 30 0]\n", " [ 36 696 71]\n", " [ 1 32 89]]\n", "original\n", "accuracy: 0.837 balanced accuracy: 0.452 kappa: 0.274\n", "[[ 10 61 0]\n", " [ 2 797 4]\n", " [ 0 95 27]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.846 balanced accuracy: 0.697 kappa: 0.534\n", "[[ 41 30 0]\n", " [ 32 728 43]\n", " [ 2 46 74]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.2)\n", "accuracy: 0.846 balanced accuracy: 0.697 kappa: 0.534\n", "[[ 41 30 0]\n", " [ 32 728 43]\n", " [ 2 46 74]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.730 balanced accuracy: 0.709 kappa: 0.395\n", "[[ 41 28 2]\n", " [ 31 586 186]\n", " [ 2 20 100]]\n", "original\n", "accuracy: 0.840 balanced accuracy: 0.465 kappa: 0.290\n", "[[ 14 57 0]\n", " [ 2 798 3]\n", " [ 0 97 25]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.836 balanced accuracy: 0.669 kappa: 0.497\n", "[[ 37 34 0]\n", " [ 41 725 37]\n", " [ 0 51 71]]\n", "global kappa rebalanced\n", "thresholds: (0.15000000000000002, 0.2)\n", "accuracy: 0.855 balanced accuracy: 0.638 kappa: 0.515\n", "[[ 28 43 0]\n", " [ 13 753 37]\n", " [ 0 51 71]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.725 balanced accuracy: 0.694 kappa: 0.385\n", "[[ 37 29 5]\n", " [ 39 583 181]\n", " [ 0 20 102]]\n", "original\n", "accuracy: 0.827 balanced accuracy: 0.417 kappa: 0.213\n", "[[ 4 67 0]\n", " [ 3 795 5]\n", " [ 0 97 25]]\n", "rebalanced\n", "thresholds: [0.15000000000000002, 0.2]\n", "accuracy: 0.858 balanced accuracy: 0.649 kappa: 0.530\n", "[[ 28 43 0]\n", " [ 11 752 40]\n", " [ 0 47 75]]\n", "global kappa rebalanced\n", "thresholds: (0.15000000000000002, 0.2)\n", "accuracy: 0.858 balanced accuracy: 0.649 kappa: 0.530\n", "[[ 28 43 0]\n", " [ 11 752 40]\n", " [ 0 47 75]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.734 balanced accuracy: 0.726 kappa: 0.411\n", "[[ 43 23 5]\n", " [ 36 585 182]\n", " [ 1 18 103]]\n", "original\n", "accuracy: 0.839 balanced accuracy: 0.448 kappa: 0.277\n", "[[ 8 63 0]\n", " [ 0 799 4]\n", " [ 0 93 29]]\n", "rebalanced\n", "thresholds: [0.1, 0.15000000000000002]\n", "accuracy: 0.819 balanced accuracy: 0.699 kappa: 0.490\n", "[[ 42 29 0]\n", " [ 42 696 65]\n", " [ 1 43 78]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.819 balanced accuracy: 0.699 kappa: 0.490\n", "[[ 42 29 0]\n", " [ 42 696 65]\n", " [ 1 43 78]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.819 balanced accuracy: 0.699 kappa: 0.490\n", "[[ 42 29 0]\n", " [ 42 696 65]\n", " [ 1 43 78]]\n", "original\n", "accuracy: 0.830 balanced accuracy: 0.436 kappa: 0.226\n", "[[ 12 59 0]\n", " [ 2 797 4]\n", " [ 0 104 18]]\n", "rebalanced\n", "thresholds: [0.1, 0.2]\n", "accuracy: 0.837 balanced accuracy: 0.692 kappa: 0.511\n", "[[ 43 28 0]\n", " [ 38 721 44]\n", " [ 1 51 70]]\n", "global kappa rebalanced\n", "thresholds: (0.1, 0.15000000000000002)\n", "accuracy: 0.826 balanced accuracy: 0.718 kappa: 0.516\n", "[[ 43 27 1]\n", " [ 38 697 68]\n", " [ 1 38 83]]\n", "global balanced_accuracy rebalanced\n", "thresholds: (0.1, 0.1)\n", "accuracy: 0.729 balanced accuracy: 0.724 kappa: 0.403\n", "[[ 43 24 4]\n", " [ 37 580 186]\n", " [ 0 19 103]]\n" ] } ], "source": [ "accum_chembl217 = []\n", "for i in range(20):\n", " run_ternary_experiment(fps,data.activity,accum_chembl217,random_state=0xf00d+i)\n" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGDCAYAAADu/IALAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABQNUlEQVR4nO3dd3hVZdb38e8iBAi9d0KTThJKAMECigIWpNorjjI64zyOvirYsYyizoxiGwY7j4XHoUlTFEEBK2BJoQsIoQYCoSWk3e8fJ2RCSDkh5+ScJL/PdeUyZ+9777O2CcnK3ZY55xAREREJNpUCHYCIiIhIfpSkiIiISFBSkiIiIiJBSUmKiIiIBCUlKSIiIhKUlKSIiIhIUFKSIiIiIkFJSYqInMLMrjOz1WZ21Mx2m9mnZnaumU0ys/fzae/M7KzszyeZWXr2tSc/DuVpu9fMKuc6VtnM9pmZy3XsKzNLzb4+2cyWm1lErvMFxVLVzN4ys9/N7IiZ/Wxml+Q6X8XMZprZtuxYBuW5/tM8saeZWewZ/88UkRJRkiIiOczsXuAl4BmgCRAOvA6MKMZt/s85VzPXR9085w8Bl+R6fSlwMJ/73OWcqwk0AL4C/teL964M7AAGAnWAR4GPzaxNrjYrgRuAPXkvds5dkjt24FvgP168r4j4gZIUEQHAzOoATwJ/ds7Nds4dc86lO+fmO+fu9+Fb/S9wU67XNwHTC2rsnMsAZgBdi7pxdsyTnHPbnHNZzrkFwFagd/b5NOfcS865lUBmYffKTmzOw7vkSET8QEmKiJzUH6gGzPHz+8wFzjezumZWF08i8ElBjc2sCnA98H1x38jMmgAdgfgziPMmYIVzbusZXCsiPlC56CYiUkE0APZn91wU5Cozu7yI++Rt87Nz7oJcr1OB+cDVgAHzso/l9bKZ/R2oDqQAo4t6gNzMLBT4AHjPObe+ONdmuwl4+gyuExEfUU+KiJx0AGiYe1JrPj52ztXN/eFFmwvyaTMdTxJQ2FDP/2TfvxpwOTDTzCK9eRAzq4RnmCYNuMuba/Jcfy7QFJhZ3GtFxHeUpIjISd/h6dEYWQrvtQJohmdy7srCGmbPLVkBbAaGFHVjMzPgrex7j3HOpZ9BfDcDs51zR8/gWhHxEQ33iAgAzrlkM3sMeM3MMoDPgXTgIuAC4LgP38uZ2fBcnxfa3sz645k4m3tuSSUzq5bntieAfwFdgIuccyn53KsqnmEmgCrZ9zjhnHPZ58OAKynm8JKI+J56UkQkh3Pun8C9wCNAIp7lvHfhmezqravz7DVy1Mwa5/Ne8c65wia0vnryejxDN4845z7Ndf5aPHNVTn78ZmatgT8CPYA9ud7/+lzXbchu3wJYnP1561znRwLJwLJiPLOI+IFl//EgIiIiElTUkyIiIiJBSUmKiIiIBCUlKSIiIhKUlKSIiIhIUFKSIiIiIkGpzO2T0rBhQ9emTZtAhyEiIiI+sGbNmv3OuUb5nStzSUqbNm1YvXp1oMMQERERHzCz3ws6p+EeERERCUpKUkRERCQoKUkRERGRoFTm5qTkJz09nYSEBFJTUwMdigRItWrVaNmyJaGhoYEORUREfKRcJCkJCQnUqlWLNm3aUFQ1VSl/nHMcOHCAhIQE2rZtG+hwRETER8rFcE9qaioNGjRQglJBmRkNGjRQT5qISDlTLpIUQAlKBaevv4hI+VNukpRA27ZtG927dw90GCIiIuWGkhQREREJSn5LUszsbTPbZ2ZxBZw3M3vZzDabWYyZ9fJXLHnN/Xkn50xeStuJCzln8lLm/rzTp/ffsmULPXv25IcffmDAgAH07NmTAQMGsGHDBgDeffddRowYwbBhw+jUqRNPPPEE4OmN6dy5MzfffDORkZGMHTuW48ePA/Dkk0/Sp08funfvzvjx43HO+TRmERGRYOPPnpR3gWGFnL8E6JD9MR74lx9jyTH35508ODuWnYdScMDOQyk8ODvWZ4nKhg0bGDNmDO+88w5dunRh+fLl/Pzzzzz55JM89NBDOe1+/PFHPvjgA3755Rf+85//5Gz1v2HDBsaPH09MTAy1a9fm9ddfB+Cuu+5i1apVxMXFkZKSwoIFC3wSr4iISLDyW5LinFsOJBXSZAQw3Xl8D9Q1s2b+iuekFxZvICU985RjKemZvLB4Q4nvnZiYyIgRI3j//ffp0aMHycnJXHnllXTv3p177rmH+Pj4nLYXX3wxDRo0ICwsjNGjR7Ny5UoAWrVqxTnnnAPADTfckHN82bJl9OvXj4iICJYuXXrKvURERPzFOceCmF2kZWSV+nsHck5KC2BHrtcJ2cdOY2bjzWy1ma1OTEws0ZvuOpRSrOPFUadOHVq1asU333wDwKOPPsoFF1xAXFwc8+fPP2WJbN7VKCdf53c8NTWVP/3pT8ycOZPY2Fhuv/12LbcVERG/25F0nBvf+pG7PvzZ51MjvBHIJCW/NaP5TrRwzk1zzkU756IbNcq3mrPXmtcNK9bx4qhSpQpz585l+vTpfPjhhyQnJ9OihSfvevfdd09p+8UXX5CUlERKSgpz587N6T3Zvn073333HQAfffQR5557bk5C0rBhQ44ePcrMmTNLHKuIiEhBMrMcb6/cypAXl/PLjkM8PbI7Y3u3LPU4ApmkJACtcr1uCezy95veP7QTYaEhpxwLCw3h/qGdfHL/GjVqsGDBAl588UV69OjBgw8+yDnnnENm5qlDTOeeey433ngjPXr0YMyYMURHRwPQpUsX3nvvPSIjI0lKSuLOO++kbt263H777URERDBy5Ej69Onjk1hFRETy2rT3CGOnfsuTC9Zydrv6fH7P+dxwdmsqVSr9/ajMn6tEzKwNsMA5d9oGImZ2GXAXcCnQD3jZOde3qHtGR0e7k5NMT1q3bh1dunTxOq65P+/khcUb2HUoheZ1w7h/aCdG9sx3pMkv3n33XVavXs2rr756yvFt27Zx+eWXExeX74IoKUJxvw9EROS/0jKymPr1b7y6dDM1qobw+PBujOjR3O+bZZrZGudcdH7n/Fa7x8w+AgYBDc0sAXgcCAVwzk0FFuFJUDYDx4Fx/oolr5E9W5RqUiIiIhLMYhIO8cDMGNbvOcLwqOY8PrwrDWtWDXRY/u1J8Qdf9KRI+aTvAxGR4klNz+TFLzbyxootNKpVladHRnBx1yalGkNAelJEREQkeH2/5QATZ8Ww7cBxru3bigcv7ULtaqGBDusUSlJEREQqkCOp6Uz+dD0f/LCd8PrV+fC2fgw4q2Ggw8qXkhQREZEKYun6vTw8J469h1O57dy2/L8hnQirElL0hQGiJEVERKScSzqWxpPz45n7yy46NqnJ69cPoGd4vUCHVSRVQfaBbdu20b37aausC3XLLbcEZFO2M4lVRETKJucc837dxUX//JqFsbu5e3AHFvzlvDKRoIB6UiQAMjIyqFxZ33oiIv60JzmVR+bGsWTdXqJa1uG5sf3o3LR2oMMqlorZkxLzMbzYHSbV9fw35uMS3zIjI4Obb76ZyMhIxo4dy/HjxwF48skn6dOnD927d2f8+PHkt+S7oDaDBg1iwoQJ9O3bl44dO7JixQoAMjMzue+++4iIiCAyMpJXXnkFgDVr1jBw4EB69+7N0KFD2b17d87xqKgo+vfvz2uvvZZv/EePHmXw4MH06tWLiIgIPvnkk5xz06dPJzIykqioKG688UYA9u7dy6hRo4iKiiIqKopvv/32tF6av//970yaNCnnWR566CEGDhzIlClTmD9/Pv369aNnz55cdNFF7N27NyeOcePG5TzbrFmzeOutt7jnnnty7vvGG29w7733Fv+LJCJSATjn+OjH7Vz8z69ZuTmRRy7rwuw/nVPmEhTA8zBl6aN3794ur7Vr1552rEC//p9zTzdx7vHa//14uonn+BnaunWrA9zKlSudc86NGzfOvfDCC8455w4cOJDT7oYbbnDz5s1zzjl38803u//85z+Fthk4cKC79957nXPOLVy40A0ePNg559zrr7/uRo8e7dLT03OuT0tLc/3793f79u1zzjk3Y8YMN27cOOeccxEREe6rr75yzjl33333uW7dup32DOnp6S45Odk551xiYqJr3769y8rKcnFxca5jx44uMTHxlFivuuoq9+KLLzrnnMvIyHCHDh1yW7duPeXeL7zwgnv88cdznuXOO+/MOZeUlOSysrKcc8698cYbOc/5wAMPuLvvvvuUdkePHnXt2rVzaWlpzjnn+vfv72JiYk57hmJ9H4iIlEPb9h911/z7O9d6wgJ3zb+/c9v2Hw10SEUCVrsCfudXvD73L5+E9DwVj9NTPMcjrzrj27Zq1SqnSOANN9zAyy+/zH333ceyZct4/vnnOX78OElJSXTr1o3hw4efcm1hbUaPHg1A79692bZtGwBLlizhjjvuyBkyqV+/PnFxccTFxXHxxRcDnt6WZs2akZyczKFDhxg4cCAAN954I59++ulp8TvneOihh1i+fDmVKlVi586d7N27l6VLlzJ27FgaNmyY814AS5cuZfr06QCEhIRQp04dDh48WOj/o6uvvjrn84SEBK6++mp2795NWloabdu2zXm2GTNm5LSrV88zbnrhhReyYMECunTpQnp6OhEREYW+l4hIRZKZ5Xjnm638/fMNhFaqxLOjI7imTyu/b2nvbxUvSUlOKN5xL+X9RjAzUlNT+dOf/sTq1atp1aoVkyZNyqlofFJRbapW9WxLHBISQkZGBuBJKPK+n3OObt265VRQPunQoUNefZN+8MEHJCYmsmbNGkJDQ2nTpg2pqan5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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "accum = accum_chembl217\n", "figsize(9,6)\n", "scatter([x['orig-kappa'] for x in accum],[x['shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['orig-balanced'] for x in accum],[x['shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['orig-accuracy'] for x in accum],[x['shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.2,1],[.2,1]);\n", "legend();\n", "xlabel('orig')\n", "ylabel('greedy shift');\n", "title('CHEMBL217');" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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ITY2lhdeeAGApUuX0r9/f3r06MHAgQPZvn177va4uDj69OnDSy+9VGj9hw4dYsCAAXTv3p0uXbrw8ccf5+6bMmUKsbGxxMXFcc011wCwc+dOhg0bRlxcHHFxcXz33XfHtNI888wzjBs3Lvez3H///fTv35+JEycya9YsevfuTbdu3Tj33HPZuXNnbh2jRo3K/WzTpk3jv//9L3feeWfudV999VXuuuuukv9HEhGpBJxzvPvTZs7719d8s343Dw7qwPS/9Ct3AQXwfJjy9NWjRw9X0KpVq47ZVqTl7zv3RAPnHqn5x9cTDTzbT9DGjRsd4L755hvnnHOjRo1yEyZMcM45t3fv3tzjrr76ajdz5kznnHPXXXed+/DDD497TP/+/d1dd93lnHNuzpw5bsCAAc45515++WU3fPhwl5GRkXt+enq669Onj9u1a5dzzrn33nvPjRo1yjnnXJcuXdyCBQucc87dfffdrlOnTsd8hoyMDJeSkuKcc2737t2udevWLjs7261YscK1bdvW7d69O1+tl112mXv22Wedc85lZma65ORkt3HjxnzXnjBhgnvkkUdyP8utt96au2/fvn0uOzvbOefcq6++mvs57733XnfHHXfkO+7QoUOuVatWLj093TnnXJ8+fVxCQsIxn6FEPwciIhXQpj2H3BWvfO9OGTPbXfHK927TnkOBLqlYwBJXxP/zK1+b+5ePQUaBFY8zUj3bYy874cs2a9Ysd5HAq6++mueff567776b+fPn8/TTT3PkyBH27dtHp06dGDx4cL5zj3fM8OHDAejRowebNm0CYN68edxyyy25XSa1a9dmxYoVrFixgvPOOw/wtLY0atSIlJQUkpOT6d+/PwDXXHMNn3766TH1O+e4//77WbhwISEhIWzdupWdO3fy1VdfMXLkSOrWrZv7XgBfffUVU6ZMASA0NJTo6Gj2799/3Ht0+eWX536flJTE5Zdfzvbt20lPT6dly5a5n+29997LPa5WLU+/6TnnnMPs2bPp0KEDGRkZdOnS5bjvJSJSmWRlO17/diPPfL6W8JAQnhzehSt6NvP7lPb+VvlCSkpSybb7qOAPgpmRlpbGX/7yF5YsWUKzZs0YN25c7orGOYo7pmpVz7TEoaGhZGZmAp5AUfD9nHN06tQpdwXlHMnJyT79kL799tvs3r2bpUuXEh4eTosWLUhLSyv0vYoSFhZGdnZ2vs+WV1RUVO73f/3rX7nrrru45JJLWLBgQW63UFHvd9NNN/GPf/yD9u3bM2pUma2gICIS9NbuOMi90xJYviWZczvU54mhXWgYHRHoskpF5RuTEl3EUtNFbffR5s2bcwPCu+++y+mnn577P+m6dety6NChQp/m8eWYgs4//3wmTZqUG1r27dtHu3bt2L17d24NGRkZrFy5kpiYGKKjo/nmm28ATxgpTEpKCvXr1yc8PJz58+fz+++/AzBgwAA++OAD9u7dm/teOdv//e9/A55WmwMHDtCgQQN27drF3r17OXr0KLNnzy7yM6SkpNCkiWf9pDfffDPfZ8u78GJO60zv3r3ZsmUL77zzDn/605+KvUciIhVdemY2z81bx8UvLGLLviM8/6duvHptfIUJKFAZQ8qAhyE8Mv+28EjP9pPQoUMH3nzzTWJjY9m3bx+33norMTEx3HzzzXTp0oWhQ4fSs2fPY87z5ZiCbrrpJpo3b547mPWdd96hSpUqTJ06lTFjxhAXF0fXrl357rvvAHj99de57bbb6NOnD5GRkYVe86qrrmLJkiXEx8fz9ttv0759ewA6derEAw88QP/+/YmLi8sdsDpx4kTmz59Ply5d6NGjBytXriQ8PJyHH36Y3r17c/HFF+deozDjxo3j0ksv5YwzzsjtSgJ48MEH2b9/P507dyYuLo758+fn7rvsssvo169fbheQiEhl9cuWZAa/8A3PzfuVQV0aMe+u/lwS5/8Vi8ta5VxgMOEDzxiUlCRPC8qAh09qPIqUjYsvvpg777yTAQMGFLpfCwyKSEWXmp7FPz9fy2vfbqRBzQj+Pqwz57Qv2wUBS5sWGCwo9jKFknIkOTmZXr16ERcXV2RAERGp6L77bQ9jpyWyed8RrurdnLEXtqdGkC0IWNoqZ0iRciUmJoZ169YFugwRkYA4kJbBk5+s5t2fttCiTjXeG30ap7WqE+iyyoRCioiISJCat2onD8xIZPfBo/z5zFb8v3PbBvWCgKVNIUVERCTI7D10lHGzVjFr+TbaN6zBq9fGE9s0JtBllTmFFBERkSDhnOPjX7bx6KyVHDqayV3nteWW/q2pElb5HsYFhRQREZGgsC05lQdnrOCrNbvo1jyGp0fE0qZBjUCXFVAKKSIiIgGUne1456fNjP90DVnZjocv7sh1fVsQGlKx5jw5EQop5UxmZmbumj0iIlK+bdxzmLHTEvhx4z76nVqHJ4fF0rxOtUCXFTQqZSfXnA1zOH/q+cS+Gcv5U89nzoY5pXLdoUOH0qNHDzp16sTkyZMB+Oyzz+jevXu+OT4OHTrEqFGj6NKlC7GxsUybNg2A6tWr515r6tSpXH/99QBcf/313HXXXZx99tmMGTOGn376ib59+9KtWzf69u3L2rVrAc/09HfffXfudV944QW+/PJLhg0blnvdL774InfRQhERCYzMrGxe+fo3LnhuIau2H+DpEbG8dWNvBZQCKt0/yedsmMO478aRluVZM2f74e2M+24cAINaDTqpa7/22mvUrl2b1NRUevbsyZAhQ7j55ptZuHAhLVu2zF335vHHHyc6OprExESAYlcPBli3bh3z5s0jNDSUAwcOsHDhQsLCwpg3bx73338/06ZNY/LkyWzcuJFly5YRFhbGvn37qFWrFrfddhu7d++mXr16vP7661qgT0QkgFZvP8CYaQkkJKVwfscGPD60Mw1qVpz1dkpTpQspE3+emBtQcqRlpTHx54knHVKef/55PvroIwC2bNnC5MmTOfPMM2nZsiUAtWvXBmDevHm89957uef5shbNpZdeSmio59n4lJQUrrvuOn799VfMjIyMjNzr3nLLLbndQTnvd8011/DWW28xatQovv/+e6ZMmXJSn1NEREruaGYWL321npcX/EZMtXBeurI7F3VpWOHW2ylNlS6k7Di8o0TbfbVgwQLmzZvH999/T7Vq1TjrrLOIi4vL7YrJyzlX6A9l3m05qyPniIqKyv3+oYce4uyzz+ajjz5i06ZNnHXWWce97qhRoxg8eDARERFceumlGtMiIlLGlv6+nzHTEli/6xDDuzfhoUEdqRVVJdBlBb1KNyalYVTDEm33VUpKCrVq1aJatWqsWbOGH374gaNHj/L111+zceNGgNzunvPPP58XX3wx99yc7p4GDRqwevVqsrOzc1tkinqvJk2aAPDGG2/kbj///POZNGkSmZmZ+d6vcePGNG7cmCeeeCJ3nIuIiPjfkfRMHp21kpGTvuPI0UxeH9WTf13WVQHFR5UupNzR/Q4iQvP3/UWERnBH9ztO6roXXHABmZmZxMbG8tBDD3HaaadRr149Jk+ezPDhw4mLi+Pyyy8H4MEHH2T//v107tyZuLg45s+fD8D48eO5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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-k-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-k-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-k-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-kappa');\n", "title('CHEMBL217');" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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zzfffANAbm4u9913H926dSM6OprnnnsOgBUrVjBo0CB69+7N0KFD2bVrV8H27t27079/f1544YVi409LS2PIkCH06tWLbt26MXPmzIJ9b731FtHR0XTv3p0bbrgBgD179nDppZfSvXt3unfvznfffXdMK82TTz5JbGxswXt56KGHGDRoEFOmTGH27Nn069ePnj17cu6557Jnz56COMaMGVPw3j7++GNef/117rnnnoLrvvrqq9x7772l/0cSEankfklO48ZpS/nLOz8RVb0qH9/en8lXdK+QCQrgybgq0kfv3r2tqLVr1x6zrUSrPzB7tKHZ+Jq/fzza0LP9JG3evNkAW7JkiZmZjRkzxiZPnmxmZvv37y847vrrr7dZs2aZmdno0aPtv//973GPGTRokN17771mZjZ37lwbMmSImZm9+OKLNmrUKMvOzi44Pysry/r372979+41M7P333/fxowZY2Zm3bp1s6+//trMzO677z7r0qXLMe8hOzvbUlNTzcwsOTnZTj/9dMvLy7O4uDhr3769JScnHxXrlVdeaU8//bSZmeXk5NiBAwds8+bNR1178uTJNn78+IL3cvvttxfsS0lJsby8PDMze/XVVwve5z/+8Q+76667jjouLS3N2rRpY1lZWWZm1r9/f/v555+PeQ+l+j4QEalE0g9n2+OfrbO2D821ruM+tzeWJFp2Tq6/w/IKsNxK+J0ffG3uCyZAdpEVj7MzPNujrzzpyzZv3rxgkcDrr7+eZ599lvvuu4+FCxfyxBNPcOjQIVJSUujSpQsjRow46tzjHTNq1CgAevfuzZYtWwCYP38+t912W0HJpE6dOsTFxREXF8d5550HeFpbGjduTGpqKgcOHGDQoEEA3HDDDXz22WfHxG9mPPTQQyxevJgqVaqwY8cO9uzZw1dffcXll19OvXr1Cu4F8NVXX/HWW28BEBISQq1atfj111+P+4yuuuqqgq+TkpK46qqr2LVrF1lZWbRu3brgvb3//vsFx9Wu7amdnnPOOcyZM4dOnTqRnZ1Nt27djnsvEZFgYGbMi9/DxDlr2XEgg1G9mvLghZ2of1oFbTkpIviSlNSk0m33knPumNeZmZn85S9/Yfny5TRv3pzY2NiCFY2PONEx1ap5vtFCQkLIyckBPN+URe9nZnTp0qVgBeUjDhw4cMyxxXnnnXdITk5mxYoV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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "scatter([x['shift-kappa'] for x in accum],[x['global-ba-shift-kappa'] for x in accum],label='kappa');\n", "scatter([x['shift-balanced'] for x in accum],[x['global-ba-shift-balanced'] for x in accum],label='balanced accuracy');\n", "scatter([x['shift-accuracy'] for x in accum],[x['global-ba-shift-accuracy'] for x in accum],label='accuracy');\n", "plot([.4,1],[.4,1]);\n", "legend();\n", "xlabel('greedy shift')\n", "ylabel('grid-balanced');\n", "title('CHEMBL217');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Again, the same conclusions hold here." ] } ], "metadata": { "interpreter": { "hash": "3a73ed6500393b2402507cd16c43dee9c9d335abda3b90ec79b3c9d5565d2650" }, "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.4" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 4 }