From 34a85c91f2e6cbbe2f46ffce1de48bb372c999ad Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Wed, 19 Sep 2018 17:33:40 -0500 Subject: [PATCH 01/36] Moved example notebooks to their own directory --- example.ipynb => examples/example.ipynb | 0 example_live.ipynb => examples/example_live.ipynb | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename example.ipynb => examples/example.ipynb (100%) rename example_live.ipynb => examples/example_live.ipynb (100%) diff --git a/example.ipynb b/examples/example.ipynb similarity index 100% rename from example.ipynb rename to examples/example.ipynb diff --git a/example_live.ipynb b/examples/example_live.ipynb similarity index 100% rename from example_live.ipynb rename to examples/example_live.ipynb From e5abee97b8bd5053b562bf43ebb73908ce5108fb Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 21 Sep 2018 16:26:40 -0500 Subject: [PATCH 02/36] Added example for using different query strategies to select 1 batch --- examples/selection.ipynb | 602 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 602 insertions(+) create mode 100644 examples/selection.ipynb diff --git a/examples/selection.ipynb b/examples/selection.ipynb new file mode 100644 index 0000000..b977956 --- /dev/null +++ b/examples/selection.ipynb @@ -0,0 +1,602 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Use Different Strategies to Select Points to Label\n", + "In this example, we will use `active_learning` to pick one batch of points to evaluate next" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import warnings\n", + "warnings.filterwarnings(action='ignore', category=RuntimeWarning)\n", + "\n", + "from matplotlib import pyplot as plt\n", + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "from sklearn.base import clone\n", + "from sklearn.datasets import make_moons\n", + "from sklearn.neighbors import KNeighborsClassifier\n", + "from sklearn.gaussian_process import GaussianProcessClassifier\n", + "from sklearn.gaussian_process.kernels import RBF\n", + "\n", + "import active_learning\n", + "from active_learning.utils import *\n", + "from active_learning.selectors import identity_selector\n", + "from active_learning.query_strats import random_sampling, uncertainty_sampling, active_search, greedy\n", + "from active_learning.query_strats.batch_active_search import seq_sim_batch\n", + "\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Set the random seed for the experiment" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "np.random.seed(0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Make some Toy Data\n", + "Have a little binary classification task that is not linearly separable." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "X, y = make_moons(noise=0.1, n_samples=200)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Turn it into a DataFrame" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "data = dict(zip(['x1', 'x2'], X.T.tolist()))\n", + "data['y'] = y\n", + "data = pd.DataFrame(data)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Pretend like most of the data is unlabeled" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "data['is_labeled'] = False\n", + "data.loc[175:, 'is_labeled'] = True" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plot it all" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "xlim = [-1.25, 2.2]\n", + "ylim = [-0.8, 1.3]" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-0.8, 1.3)" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\nANv6+jqLi4vm8ycSCVKpFOfPn1fGYRdks1mi0SjZbBZN0+jq6qKnp6fhiyGlNIN0u319z+okZ9c5\nrFwum5IjAIODg3i9XlN5NRgM0tvbq9qrHgH1n/tisYiu67jd7gMxFqfqHS4UCpZNzA130HZVsr29\nvQ3Nfoyt804yYKSUlqsxXddZXl5WhUA7pFAoMDU1Zbp+yuUya2trpNNp+vv7TZdPOp1mbm7O1L9y\nu92cO3euxkBomobf72/YNQghDlWt8jjhdrtNN1I19S1yhRCEw+ED92crdk6pVGJubo5MJmO6QQcG\nBlr+WT5VMYZCoWBrPa2+CPUEg0GGhoZMl5GmaUQiEXp7d9ZVybDiVqgc+Z2ztrZm2Rsgk8kwMTHB\nxMQEuVyOmZkZU1jP2DkYQeZSqUQikSCZTDbsJAwJlJ2+r6eJUqlkmdFixFlUhlHryefzLC8vE41G\n960MPD09bS5+dV2nXC4zPz/f8vTVU7VjaJbetdP89Pb2dtrb29F13bTIO6WZu0ltv3fOdh/ybDbL\n7Oys5XstpTRjTEIIS0MtpaSzs/PM5d/ncjkmJycbXjdN0+jt7aWrq+uIRnZ6qXctr6+vEwwGGR4e\ntpxbMpkMGxsb6LpOe3s7wWDQvC6Xy1kucKWUxGKxluqGtWTHIIS4UwhxTQhxUwjxFovzHiHEJ7fO\nf0sIMVp17q1bx68JIe7YzziMgFn9C74XX7JRhbsbHA6H5fMbqzHFzthJrKBQKFgaBl3X2djYuJWV\nVtbRvvkYjr/6B7RHfwBbhmJpaenM7eIWFxfRdb3hdQsEAqq38wFQLpdrjAJUPp+pVMqy0HJlZYWp\nqSni8TgbGxvMzc0xPz9v3l8qlWzfI7u40V7Z9zJWCOEAPgi8CJgHHhFCfK6ud/OrgXUp5QUhxCuA\n9wJ3CSGeCLwCeBIwAHxZCHFJSmnfNGEbBgcH8Xg8ZsDMEJ06rKyTgYEBpJQkk0nzTYxEImfWn70X\nIpGIrdLkrogn8fyX30FsJCvtF51O5GCE/Pt+BYI+lpeXGRsba82gjxlSSrLZLKVSCZ/Ph9PptDWE\ndtXgiv2xublpWQsipWRjY6NG66tQKDSkxRtGJJ1OEwwGm6YQt1r3rRX+jWcAN6WUkwBCiE8ALwGq\nDcNLgN/Y+vmvgd8XlVnzJcAnpJR5YEoIcXPr8b6518EYq/OjWqFrmsbw8DClUolSqYTb7VYCY7vE\n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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots()\n", + "\n", + "# We are going to be reusing this data a few times\n", + "data['color'] = data['y'].apply(lambda x: 'crimson' if x else 'blue')\n", + " \n", + "ax.scatter(data['x1'], data['x2'],\n", + " color=data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'lightgray'))\n", + "\n", + "ax.set_xlim(xlim)\n", + "ax.set_ylim(ylim)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have a few examples of each class, are going going to try more of the read ones" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Training Model\n", + "Train a basic SVC to use for use during the search procedure" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "# Our basic classifier will be a SVM with rbf kernel\n", + "base_clf = GaussianProcessClassifier(RBF(1.0))" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "labeled_subset = data.query('is_labeled == True')" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "GaussianProcessClassifier(copy_X_train=True, kernel=RBF(length_scale=1),\n", + " max_iter_predict=100, multi_class='one_vs_rest', n_jobs=1,\n", + " n_restarts_optimizer=0, optimizer='fmin_l_bfgs_b',\n", + " random_state=None, warm_start=False)" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "base_clf.fit(labeled_subset[['x1', 'x2']], labeled_subset['y'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plot the decision surface" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "xx, yy = np.meshgrid(np.linspace(*xlim, 8), np.linspace(*ylim, 8))" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "prob = base_clf.predict_proba(list(zip(xx.flatten(), yy.flatten())))[:, 0].reshape(xx.shape, order='C')" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\ndhUe0yCr9QAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots()\n", + "\n", + "ax.imshow(prob, cmap='seismic_r', origin=(0,0), interpolation='bicubic', alpha=0.2,\n", + " extent=xlim+ylim, vmin=0, vmax=1)\n", + "\n", + "ax.scatter(data['x1'], data['x2'],\n", + " color=data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'darkgray'))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Define the Active Learning Problem\n", + "`active_learning` uses a \"problem definition\" dictionary for all of the query stategies, which contains:\n", + "- `points`: an (n_samples, n_dim) matrix of all points in the problem space (labeled and unlabeled)\n", + "- `num_classes`: the number of different classes [0, num_classes)\n", + "- `batch_size`: number of points to query each iteration\n", + "- `num_queries`: the max number of queries we can make on the data [Not sure what this means]\n", + "- `model`: the scikit-learn model we are training" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "problem = {\n", + " 'points': data[['x1', 'x2']].values,\n", + " 'num_classes': 2,\n", + " 'batch_size': 8,\n", + " 'num_queries': len(data),\n", + " 'model': base_clf\n", + "}" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We also need to provide the indices and labels for each point that has been measured" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "There are 25 labeled points\n" + ] + } + ], + "source": [ + "train_ixs = data.query('is_labeled').index.tolist()\n", + "obs_labels = data.loc[train_ixs, 'y'].tolist()\n", + "print('There are {} labeled points'.format(len(train_ixs)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Decide which Unlabelled Points are Worthwhile to Label\n", + "Not all potential points in the search space are worth considering for active search. Some could be very unlikely to be the target class, for example, others might be too costly. `active_learning` has a library of tools available for taking the space of observations and potential points to label, and identifying the the \"worthwhile\" space. For here, we assume all unlabeled points are valid." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "unlabeled_ixs = identity_selector(problem, train_ixs, obs_labels)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Run Different Querying Strategies\n", + "The main capability of `active_learning` is that it implements many strategies for how to select which points to label next. These are known as \"querying strategies.\" In this section, we demonstrate using a few" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Random Sampling\n", + "Just pick points at random" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 0 ns\n" + ] + } + ], + "source": [ + "%%time\n", + "random_ixs = random_sampling(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Greedy Sampling\n", + "Just pick the points most likely to be blue" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 2 ms\n" + ] + } + ], + "source": [ + "%%time\n", + "greedy_ixs = greedy(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Uncertainty Sampling\n", + "Pick the points with the highest uncertainty in the ML model" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 2 ms\n" + ] + } + ], + "source": [ + "%%time\n", + "uncertainty_ix = uncertainty_sampling(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Active Search\n", + "Active search is a more developed technique. It uses both the probably an entry will be a target class (here, we define the target class as `y == 1`), and the probability that - if labeled - a point will improve the model's ability to find new target classes." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 1min 3s\n" + ] + } + ], + "source": [ + "%%time\n", + "active_ix = seq_sim_batch(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'], budget=2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Compare the Selections\n", + "To demonstrate the effect of each labeling, we show the results of each pick" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def plot_selection(ax, data, indices): \n", + " \"\"\"Plot the selections of a certain query strategy\n", + " \n", + " Args:\n", + " ax: Axis to plot on\n", + " data: Data to plot\n", + " indices: List of selected entries\n", + " \"\"\"\n", + "\n", + " # Plot the classifier\n", + " ax.imshow(prob, cmap='seismic_r', origin=(0,0), interpolation='bicubic', alpha=0.35,\n", + " extent=xlim+ylim, aspect='auto', vmin=0, vmax=1)\n", + " \n", + " # Plot the original data\n", + " original_data = data[[x not in indices for x in data.index]]\n", + " ax.scatter(original_data['x1'], original_data['x2'], label=None,\n", + " color=original_data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'darkgray'))\n", + " \n", + " # Plot the selections\n", + " new_selections = data.loc[indices]\n", + " ax.scatter(new_selections['x1'], new_selections['x2'], marker='x', color=new_selections['color'], label='Selected')\n", + " \n", + " ax.set_xlim(xlim)\n", + " ax.set_ylim(ylim)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlwAAADSCAYAAACfOR4xAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzsnXl4HMW19n/Vs0myZHnfjS3vmywZ\nbwgMNouNE/btsoUAgSQQQkJu9hACCebjBkhyAyGQGxIMCWvIhZBcIKwGbLCNDQYbY7zgHduSN1my\nlpnpPt8fNT1LT/fMCEuyZOZ9nnlmpru6qrr67VOnTp06pUSEPPLII4888sgjjzzaDsbhrkAeeeSR\nRx555JHHkY68wpVHHnnkkUceeeTRxvAf7gp0RhQWFu5samrqe7jrcSgoKCjY1djY2O9w1+NIwpHA\ni9ZCnl9ti87GtTwfWg+d7dl3BHQU/qm8D1fLoZSSzt5uSilERB3uehxJOBJ40VrI86tt0dm4ludD\n66GzPfuOgI7Cv/yUYh555JFHHnnkkUcbI69w5ZFHHnnkkUceebQx8gpXK8Hn81FZWcmECRM444wz\n2L9/f6vku2nTJiZMmNAqeeXR/nB7frfccgt33XVXm5X5zDPPsHr16qzp7r//fh5++OGMaVasWMFz\nzz3XWlXLow2xa9cuLrnkEoYNG8bkyZOpqqri6aefbvVy5s+fzze/+c1WzzePQ8PTTz+NUoo1a9Zk\nTTt//nw+/fTT+P+rr746J5mRDf/617+YNGkSFRUVjBs3jj/84Q+HnGcmzJo1i2XLlrVpGa2JvMLV\nSigsLGTFihWsWrWKHj16cO+99x7uKuXxOUQ0Gs1Z4brmmmv48pe/nDFNXuHqHBARzj77bE444QQ+\n+eQTli9fzuOPP862bdtS0kWj0cNUwzzaGo899hgzZszg8ccfz5rWqXA98MADjBs37pDKj0QifO1r\nX+Of//wn77//Pu+99x6zZs06pDzhyOJsXuFqA1RVVbF9+3YA6uvrOfnkkzn66KMpLy/nH//4B6At\nH2PHjuWrX/0q48ePZ86cOTQ2NgKwfPlyKioqqKqqSlHcmpqauPLKKykvL2fSpEm89tprgH55zj77\nbM444wzKysr43e9+x69//WsmTZrEMcccw969e9u5BfLIBbNmzeKHP/wh06ZNY9SoUbz55psAmKbJ\n9773PcrLy5k4cSL33HMPoHkxc+ZMJk+ezKmnnsqOHTvi+fzkJz9h5syZ/PKXv+TZZ5/l+9//PpWV\nlWzYsIE//vGPTJ06lYqKCs477zwaGhqAVEubW13C4TA/+9nPeOKJJ6isrOSJJ55g5MiR1NTUAGBZ\nFiNGjGD37t3t3XR5OPDqq68SDAa55ppr4seGDBnC9ddfz/z587ngggs444wzmDNnDgB33nknU6dO\nZeLEidx8883xa/76178ybdo0Kisr+frXv45pmgA8+OCDjBo1ipkzZ7Jo0SIA6urqKCsrIxKJAHDg\nwAGGDh0a/59H+6G+vp5Fixbxpz/9KU3huuOOOygvL6eiooIf/ehHPPXUUyxbtoxLL72UyspKGhsb\n45ai++67jx/84Afxa+fPn8/1118PeHPDRl1dHdFolJ49ewIQCoUYPXo0ADU1NZx33nlMnTqVqVOn\nxjm0dOlSjj32WCZNmsSxxx7Lxx9/HC/XyVnnfdj429/+liZDOyxEJP9p4Uc3Wyq6dOkiIiLRaFTO\nP/98ef7550VEJBKJSG1trYiI1NTUyPDhw8WyLNm4caP4fD557733RETkggsukL/85S8iIlJeXi4L\nFiwQEZHvfe97Mn78eBERueuuu+SKK64QEZGPPvpIBg8eLI2NjfLggw/K8OHD5cCBA1JdXS1du3aV\n++67T0REbrjhBvnNb36TVt/YPRz2tjySPm682LhxY/z52bj55pvlzjvvlJkzZ8p//ud/iojI//3f\n/8nJJ58sIiK///3v5dxzz5VIJCIiInv27JFwOCxVVVVSXV0tIiKPP/64XHnllSIiMnPmTLn22mvj\n+V9++eXyt7/9Lf5/9+7d8d833nij3H333Sn1sPNwq8uDDz4o1113Xfz6W265Jc6nf//733Luueem\n3bNInl9t/XFy7be//a3ccMMNrs/iwQcflIEDB8qePXtERD+3r371q2JZlpimKaeddpq8/vrrsnr1\najn99NMlHA6LiMi1114rDz30kHz66acyePBgqa6ulubmZjn22GPjnLjiiivk6aefFhGRP/zhD3EO\nOZHnQ9s9exGRv/zlL/KVr3xFRESqqqpk+fLlIiLy3HPPSVVVlRw8eFBEJM6BmTNnyjvvvBO/3v5f\nXV0tw4cPjx+fO3euvPnmm57ccOKqq66S3r17y0UXXSR//etfxTRNERG5+OKL5c033xQRkc2bN8uY\nMWNERKS2tjYu51566aW4PHFyNtN9uMktJzoK//JxuFoJjY2NVFZWsmnTJiZPnszs2bMBrdD+5Cc/\n4Y033sAwDLZv386uXbsAKCsro7KyEoDJkyezadMmamtr2b9/PzNnzgTgsssu4/nnnwdg4cKF8dHG\nmDFjGDJkCGvXrgXgxBNPpKSkhJKSEkpLSznjjDMAKC8v54MPPmi/hsgjBUq5r0S2j5977rlA4vkD\nvPzyy1xzzTX4/fr17NGjB6tWrWLVqlVxXpmmSf/+/eP5XXjhhZ51WLVqFT/96U/Zv38/9fX1nHrq\nqa7p3OrixFe+8hXOOussbrjhBv785z9z5ZVXepabx+HDddddx8KFCwkGg1x33XXMnj2bHj16APDi\niy/y4osvMmnSJEBbR9atW8cHH3zA8uXLmTp1KqBlWp8+fViyZAmzZs2id+/egOaaLXeuvvpq7rjj\nDs4++2wefPBB/vjHPx6Gu83jscce44YbbgDgoosu4rHHHuPoo4/m5Zdf5sorr6SoqAggzgEv9O7d\nm2HDhrF48WJGjhzJxx9/zHHHHce9997ryg0nHnjgAVauXMnLL7/MXXfdxUsvvcT8+fN5+eWXU9wc\nDhw4QF1dHbW1tVx++eWsW7cOpVSKdTSZs5nuIxe51VHQYRWubt16Sf/+Qz3Pi0sYEuexbP+9jn2W\nNLYPV21tLaeffjr33nsv3/rWt3jkkUeoqalh+fLlBAIBhg4dSlNTE6BNrjZ8Ph+NjY2IiGcnLRkq\nkpyXYRjx/4ZheM6BV1ZOEQC7OK/vWOHuv93+ex3LAcvff3+3iPT+TBcnoaPwp2fPnuzbty/l2N69\neykrKwMSz83n88WfkxsHRITx48fz9ttvu5bTpUsXzzpcccUVPPPMM1RUVDB//nwWLFjgms6tLk4M\nHjyYvn378uqrr7JkyRIeeeQRz3KnTJmSaJ124M+q1avrmsLhri2+0IGOwp1c0wCMHz+ev//97/H/\n9957L7t372bKlClAKj9EhB//+Md8/etfT8njnnvu4fLLL+f2229POf7MM894yqTjjjuOTZs28frr\nr2OaZsYFPhMnTpFssiYve3L7n4w9e/bw6quvsmrVKpRSmKaJUoo77rgjY3/ihQsvvJAnn3ySMWPG\ncM4559gxrFy54Yby8nLKy8u57LLLKCsrY/78+ViWxdtvv01hYWFK2uuvv54TTzyRp59+mk2bNqX4\nfDk563UfucgtgCmTJ8vhlj0dVuHq338oDz2kVx9YVuK43Rb2t2Wl/xZxP5583s7Dzjs5bfJ/Z/kA\nF1zgTeDS0lLuvvtuzjrrLK699lpqa2vp06cPgUCA1157jc2bN2e8727dulFaWsrChQuZMWNGSod2\nwgkn8Mgjj3DSSSexdu1atmzZwujRo3n33Xcz5umFl15ahs+nhZvPR8pvw0h8FAKmmWiw5IZ0NqJX\ngyYfS4bjmOrbN3MD5YjDwZ+zz07nRXFxMf379+eVV17h5JNPZu/evbzwwgt8+9vf5sEHH3St+5w5\nc7j//vuZNWsWfr+fvXv3Mnr0aGpqanj77bepqqoiEomwdu1axo8fn3Z9SUkJdXV18f91dXX079+f\nSCTCI488wsCBA3NsxfS8QFs1vvSlL3HZZZfh8/k8r12yZFm78qf3qFGt4kzWkWWPfe4//iOVayed\ndBI/+clPuO+++7j22msB4r56Tpx66qncdNNNXHrppRQXF7N9+3YCgQAnn3wyZ511Ft/5znfo06cP\ne/fupa6ujunTp/Ptb3+bPXv20LVrV/72t79RUVERz+/LX/4yF198MTfddJNHi2o895y3vMnLntz5\nc/rpqc/+qaee4stf/nLKisCZM2eycOFC5syZwy9+8QsuueQSioqK2Lt3Lz169HB9r22ce+653Hbb\nbQwZMoRf/vKXAJ7cGDJkSPy6+vp6li1bFleaVqxYET8/Z84cfve73/H9738/fq6yspLa2tq4PJo/\nf75nm3rdR0uw7K23DrvsyTvNtwHsZbGPP/44l156KcuWLWPKlCk88sgjjBkzJuv1Dz74INdddx1V\nVVUpI4JvfOMbmKZJeXk5F154IfPnz0+xbOXRMfHwww8zb948KisrOemkk7j55psZPny4Z/qrr76a\no446iokTJ1JRUcGjjz5KMBjkqaee4oc//CEVFRVUVlby1ltvuV5/0UUXceeddzJp0iQ2bNjArbfe\nyvTp05k9e3ZO/EvGiSeeyOrVq+NO8wBnnnkm9fX1+enEDgSlFM888wyvv/46ZWVlTJs2jcsvvzze\nYSZjzpw5XHLJJVRVVVFeXs75559PXV0d48aNY968ecyZM4eJEycye/ZsduzYQf/+/bnllluoqqri\nlFNO4eijj07J79JLL2Xfvn1cfPHF7XW7eSThscce45xzzkk5dt555/Hoo48yd+5czjzzTKZMmUJl\n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\nAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, axs = plt.subplots(1, 4, sharey=True)\n", + "\n", + "plot_selection(axs[0], data, random_ixs)\n", + "plot_selection(axs[1], data, uncertainty_ix)\n", + "plot_selection(axs[2], data, greedy_ixs)\n", + "plot_selection(axs[3], data, active_ix)\n", + "\n", + "for ax, t in zip(axs, ['Random', 'Uncertainty', 'Greedy', 'Active Search']):\n", + " ax.text(0.5, 1, t, transform=ax.transAxes, ha='center', va='center',\n", + " bbox={'facecolor': 'w', 'edgecolor': 'k'})\n", + "\n", + "axs[0].legend()\n", + "\n", + "fig.set_size_inches(8.5, 3)\n", + "fig.tight_layout()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note that random picks points clos eto where the boundaries are. Uncertainty sampling picks points close where the classifier has a probability near 50%. Greedy picks points near farthest from the decision boundary, and active search picks somewhere in between." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "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.6.6" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 095566619b4048672aaa64a28ba21786f376a12a Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 21 Sep 2018 16:27:07 -0500 Subject: [PATCH 03/36] Switched to the _mem_saver implementation --- active_learning/query_strats/active_search.py | 76 ++++--------------- 1 file changed, 16 insertions(+), 60 deletions(-) diff --git a/active_learning/query_strats/active_search.py b/active_learning/query_strats/active_search.py index 3635595..5f351f5 100644 --- a/active_learning/query_strats/active_search.py +++ b/active_learning/query_strats/active_search.py @@ -1,6 +1,6 @@ from multiprocessing import cpu_count -from joblib import Parallel, delayed +from sklearn.externals.joblib import Parallel, delayed import numpy as np from sklearn.base import clone @@ -92,50 +92,27 @@ def _mem_saver(model, points, train_ixs, obs_labels, unlabeled_chunk, all_unlabe model_copy = clone(model) chunk_scores = [] for unlabeled_ix in unlabeled_chunk: + # Make the new test set test_set = np.delete(all_unlabeled_ixs, np.argwhere(all_unlabeled_ixs == unlabeled_ix)) + + # Get the probabilities of membership in either class p0, p1 = model.predict_proba(points[[unlabeled_ix]]).reshape(-1) + # Evaluate the effect of the point being labeled negative m0 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=0) s0 = _expected_future_utility(m0, points, test_set, budget) + # Evaluate the effect of the point being labeled positive m1 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=1) s1 = _expected_future_utility(m1, points, test_set, budget) + # Compute the score for this point chunk_scores.append(p0 * s0 + p1 * s1) del test_set return np.array(chunk_scores) -# def _search_score(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **kwargs): -# model = problem['model'] -# points = problem['points'] -# -# # num queries remaining -# budget = kwargs['budget'] -# assert budget > 0 -# -# # OS X requires you to use "threading" rather than "multiprocessing" -# # because it doesn't support BLAS calls on both 'sides' of a fork -# # however, we cannot just use threading because RandomForest is not thread safe... -# backend = problem.get("parallel_backend", "threading") -# -# n_cpu = cpu_count() -# n_chunks = len(unlabeled_ixs) // 100 -# -# with Parallel(n_jobs=n_cpu, max_nbytes=1e6, backend=backend) as parallel: -# real_budget = min(budget * batch_size, len(unlabeled_ixs)-1) -# expected_future_utilities = parallel( -# delayed(_mem_saver)(model, points, train_ixs, obs_labels, chunk, unlabeled_ixs, real_budget) -# for chunk in chunks(unlabeled_ixs, n_chunks) -# ) -# -# expected_future_utilities = np.concatenate(expected_future_utilities) -# -# # print(expected_future_utilities) -# return expected_future_utilities - - def _search_score(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **kwargs): model = problem['model'] points = problem['points'] @@ -150,40 +127,19 @@ def _search_score(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **k backend = problem.get("parallel_backend", "threading") n_cpu = cpu_count() + n_chunks = len(unlabeled_ixs) // 100 + with Parallel(n_jobs=n_cpu, max_nbytes=1e6, backend=backend) as parallel: - # copy the model many times. Partial fit on each candidate point - # and each possible label for that point - model_copies = np.array(clone([model] * (2 * len(unlabeled_ixs)))) - model_copies = model_copies.reshape(-1, 2) - points_and_models = list(zip(points[unlabeled_ixs], model_copies)) - model_copies = parallel( - delayed(_split_lookahead)(problem, chunk, train_ixs, obs_labels) - for chunk in chunks(points_and_models, n_cpu) - ) - model_copies = sum(model_copies, []) # collapse list of lists into single list - # TODO: maybe we only need to evaluate when y=1, because y=0 cannot increase utility of remaining points?? - - # create one test set for each point: U_{i-1} \ {x} - test_sets = [ - np.delete(unlabeled_ixs, i) - for i in range(len(unlabeled_ixs)) - ] - - # sometimes the budget might be too big, so take min - real_budget = min(budget*batch_size, len(test_sets[0])) - - future_utilities = np.array( - parallel( - delayed(_split_future_utility)(models, points, test_set, real_budget) - for test_set, models in zip(test_sets, model_copies) - ) + real_budget = min(budget * batch_size, len(unlabeled_ixs)-1) + expected_future_utilities = parallel( + delayed(_mem_saver)(model, points, train_ixs, obs_labels, chunk, unlabeled_ixs, real_budget) + for chunk in chunks(unlabeled_ixs, n_chunks) ) - probs = model.predict_proba(points[unlabeled_ixs]) - - E_future_utilities = np.sum(probs * future_utilities, axis=1) + expected_future_utilities = np.concatenate(expected_future_utilities) - return probs[:, 1] + 0.10 * E_future_utilities + # print(expected_future_utilities) + return expected_future_utilities def active_search(problem, train_ixs, obs_labels, unlabeled_ixs, npoints, **kwargs): From 02fcfe24a062e5078e9d8557f7ba1f09f3febc02 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Wed, 26 Sep 2018 17:05:08 -0500 Subject: [PATCH 04/36] Contrasted batch and sequential active learning --- examples/selection.ipynb | 115 +++++++++++++++++++-------------------- 1 file changed, 57 insertions(+), 58 deletions(-) diff --git a/examples/selection.ipynb b/examples/selection.ipynb index b977956..f913a61 100644 --- a/examples/selection.ipynb +++ b/examples/selection.ipynb @@ -11,9 +11,7 @@ { "cell_type": "code", "execution_count": 1, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "import warnings\n", @@ -48,9 +46,7 @@ { "cell_type": "code", "execution_count": 2, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "np.random.seed(0)" @@ -67,9 +63,7 @@ { "cell_type": "code", "execution_count": 3, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "X, y = make_moons(noise=0.1, n_samples=200)" @@ -85,9 +79,7 @@ { "cell_type": "code", "execution_count": 4, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "data = dict(zip(['x1', 'x2'], X.T.tolist()))\n", @@ -105,9 +97,7 @@ { "cell_type": "code", "execution_count": 5, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "data['is_labeled'] = False\n", @@ -124,9 +114,7 @@ { "cell_type": "code", "execution_count": 6, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "xlim = [-1.25, 2.2]\n", @@ -150,7 +138,7 @@ }, { "data": { - "image/png": "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\nANv6+jqLi4vm8ycSCVKpFOfPn1fGYRdks1mi0SjZbBZN0+jq6qKnp6fhiyGlNIN0u319z+okZ9c5\nrFwum5IjAIODg3i9XlN5NRgM0tvbq9qrHgH1n/tisYiu67jd7gMxFqfqHS4UCpZNzA130HZVsr29\nvQ3Nfoyt804yYKSUlqsxXddZXl5WhUA7pFAoMDU1Zbp+yuUya2trpNNp+vv7TZdPOp1mbm7O1L9y\nu92cO3euxkBomobf72/YNQghDlWt8jjhdrtNN1I19S1yhRCEw+ED92crdk6pVGJubo5MJmO6QQcG\nBlr+WT5VMYZCoWBrPa2+CPUEg0GGhoZMl5GmaUQiEXp7d9ZVybDiVqgc+Z2ztrZm2Rsgk8kwMTHB\nxMQEuVyOmZkZU1jP2DkYQeZSqUQikSCZTDbsJAwJlJ2+r6eJUqlkmdFixFlUhlHryefzLC8vE41G\n960MPD09bS5+dV2nXC4zPz/f8vTVU7VjaJbetdP89Pb2dtrb29F13bTIO6WZu0ltv3fOdh/ybDbL\n7Oys5XstpTRjTEIIS0MtpaSzs/PM5d/ncjkmJycbXjdN0+jt7aWrq+uIRnZ6qXctr6+vEwwGGR4e\ntpxbMpkMGxsb6LpOe3s7wWDQvC6Xy1kucKWUxGKxluqGtWTHIIS4UwhxTQhxUwjxFovzHiHEJ7fO\nf0sIMVp17q1bx68JIe7YzziMgFn9C74XX7JRhbsbHA6H5fMbqzHFzthJrKBQKFgaBl3X2djYuJWV\nVtbRvvkYjr/6B7RHfwBbhmJpaenM7eIWFxfRdb3hdQsEAqq38wFQLpdrjAJUPp+pVMqy0HJlZYWp\nqSni8TgbGxvMzc0xPz9v3l8qlWzfI7u40V7Z9zJWCOEAPgi8CJgHHhFCfK6ud/OrgXUp5QUhxCuA\n9wJ3CSGeCLwCeBIwAHxZCHFJSmnfNGEbBgcH8Xg8ZsDMEJ06rKyTgYEBpJQkk0nzTYxEImfWn70X\nIpGIrdLkrogn8fyX30FsJCvtF51O5GCE/Pt+BYI+lpeXGRsba82gjxlSSrLZLKVSCZ/Ph9PptDWE\ndtXgiv2xublpWQsipWRjY6NG66tQKDSkxRtGJJ1OEwwGm6YQt1r3rRX+jWcAN6WUkwBCiE8ALwGq\nDcNLgN/Y+vmvgd8XlVnzJcAnpJR5YEoIcXPr8b6518EYq/OjWqFrmsbw8DClUolSqYTb7VYCY7vE\n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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -190,9 +178,7 @@ { "cell_type": "code", "execution_count": 8, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "# Our basic classifier will be a SVM with rbf kernel\n", @@ -202,9 +188,7 @@ { "cell_type": "code", "execution_count": 9, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "labeled_subset = data.query('is_labeled == True')" @@ -243,9 +227,7 @@ { "cell_type": "code", "execution_count": 11, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "xx, yy = np.meshgrid(np.linspace(*xlim, 8), np.linspace(*ylim, 8))" @@ -254,9 +236,7 @@ { "cell_type": "code", "execution_count": 12, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "prob = base_clf.predict_proba(list(zip(xx.flatten(), yy.flatten())))[:, 0].reshape(xx.shape, order='C')" @@ -270,7 +250,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 13, @@ -279,7 +259,7 @@ }, { "data": { - "image/png": "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\ndhUe0yCr9QAAAABJRU5ErkJggg==\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -314,9 +294,7 @@ { "cell_type": "code", "execution_count": 14, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "problem = {\n", @@ -365,9 +343,7 @@ { "cell_type": "code", "execution_count": 16, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [ "unlabeled_ixs = identity_selector(problem, train_ixs, obs_labels)" @@ -398,7 +374,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 0 ns\n" + "Wall time: 998 µs\n" ] } ], @@ -450,7 +426,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 2 ms\n" + "Wall time: 999 µs\n" ] } ], @@ -476,13 +452,39 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 1min 3s\n" + "Wall time: 4.45 s\n" + ] + } + ], + "source": [ + "%%time\n", + "active_ix = active_search(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'], budget=2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Batch Active Search\n", + "Batch Active Search is different from regular active search in that it picks a group of points that collectively has the best utility. This is more expensive, but prevents the algorithm from picking a homogeneous batch of points." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 39.5 s\n" ] } ], "source": [ "%%time\n", - "active_ix = seq_sim_batch(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'], budget=2)" + "batch_active_ix = seq_sim_batch(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'], budget=2)" ] }, { @@ -495,10 +497,8 @@ }, { "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": true - }, + "execution_count": 22, + "metadata": {}, "outputs": [], "source": [ "def plot_selection(ax, data, indices): \n", @@ -529,14 +529,14 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 23, "metadata": {}, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlwAAADSCAYAAACfOR4xAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzsnXl4HMW19n/Vs0myZHnfjS3vmywZ\nbwgMNouNE/btsoUAgSQQQkJu9hACCebjBkhyAyGQGxIMCWvIhZBcIKwGbLCNDQYbY7zgHduSN1my\nlpnpPt8fNT1LT/fMCEuyZOZ9nnlmpru6qrr67VOnTp06pUSEPPLII4888sgjjzzaDsbhrkAeeeSR\nRx555JHHkY68wpVHHnnkkUceeeTRxvAf7gp0RhQWFu5samrqe7jrcSgoKCjY1djY2O9w1+NIwpHA\ni9ZCnl9ti87GtTwfWg+d7dl3BHQU/qm8D1fLoZSSzt5uSilERB3uehxJOBJ40VrI86tt0dm4ludD\n66GzPfuOgI7Cv/yUYh555JFHHnnkkUcbI69w5ZFHHnnkkUceebQx8gpXK8Hn81FZWcmECRM444wz\n2L9/f6vku2nTJiZMmNAqeeXR/nB7frfccgt33XVXm5X5zDPPsHr16qzp7r//fh5++OGMaVasWMFz\nzz3XWlXLow2xa9cuLrnkEoYNG8bkyZOpqqri6aefbvVy5s+fzze/+c1WzzePQ8PTTz+NUoo1a9Zk\nTTt//nw+/fTT+P+rr746J5mRDf/617+YNGkSFRUVjBs3jj/84Q+HnGcmzJo1i2XLlrVpGa2JvMLV\nSigsLGTFihWsWrWKHj16cO+99x7uKuXxOUQ0Gs1Z4brmmmv48pe/nDFNXuHqHBARzj77bE444QQ+\n+eQTli9fzuOPP862bdtS0kWj0cNUwzzaGo899hgzZszg8ccfz5rWqXA98MADjBs37pDKj0QifO1r\nX+Of//wn77//Pu+99x6zZs06pDzhyOJsXuFqA1RVVbF9+3YA6uvrOfnkkzn66KMpLy/nH//4B6At\nH2PHjuWrX/0q48ePZ86cOTQ2NgKwfPlyKioqqKqqSlHcmpqauPLKKykvL2fSpEm89tprgH55zj77\nbM444wzKysr43e9+x69//WsmTZrEMcccw969e9u5BfLIBbNmzeKHP/wh06ZNY9SoUbz55psAmKbJ\n9773PcrLy5k4cSL33HMPoHkxc+ZMJk+ezKmnnsqOHTvi+fzkJz9h5syZ/PKXv+TZZ5/l+9//PpWV\nlWzYsIE//vGPTJ06lYqKCs477zwaGhqAVEubW13C4TA/+9nPeOKJJ6isrOSJJ55g5MiR1NTUAGBZ\nFiNGjGD37t3t3XR5OPDqq68SDAa55ppr4seGDBnC9ddfz/z587ngggs444wzmDNnDgB33nknU6dO\nZeLEidx8883xa/76178ybdo0Kisr+frXv45pmgA8+OCDjBo1ipkzZ7Jo0SIA6urqKCsrIxKJAHDg\nwAGGDh0a/59H+6G+vp5Fixbxpz/9KU3huuOOOygvL6eiooIf/ehHPPXUUyxbtoxLL72UyspKGhsb\n45ai++67jx/84Afxa+fPn8/1118PeHPDRl1dHdFolJ49ewIQCoUYPXo0ADU1NZx33nlMnTqVqVOn\nxjm0dOlSjj32WCZNmsSxxx7Lxx9/HC/XyVnnfdj429/+liZDOyxEJP9p4Uc3Wyq6dOkiIiLRaFTO\nP/98ef7550VEJBKJSG1trYiI1NTUyPDhw8WyLNm4caP4fD557733RETkggsukL/85S8iIlJeXi4L\nFiwQEZHvfe97Mn78eBERueuuu+SKK64QEZGPPvpIBg8eLI2NjfLggw/K8OHD5cCBA1JdXS1du3aV\n++67T0REbrjhBvnNb36TVt/YPRz2tjySPm682LhxY/z52bj55pvlzjvvlJkzZ8p//ud/iojI//3f\n/8nJJ58sIiK///3v5dxzz5VIJCIiInv27JFwOCxVVVVSXV0tIiKPP/64XHnllSIiMnPmTLn22mvj\n+V9++eXyt7/9Lf5/9+7d8d833nij3H333Sn1sPNwq8uDDz4o1113Xfz6W265Jc6nf//733Luueem\n3bNInl9t/XFy7be//a3ccMMNrs/iwQcflIEDB8qePXtERD+3r371q2JZlpimKaeddpq8/vrrsnr1\najn99NMlHA6LiMi1114rDz30kHz66acyePBgqa6ulubmZjn22GPjnLjiiivk6aefFhGRP/zhD3EO\nOZHnQ9s9exGRv/zlL/KVr3xFRESqqqpk+fLlIiLy3HPPSVVVlRw8eFBEJM6BmTNnyjvvvBO/3v5f\nXV0tw4cPjx+fO3euvPnmm57ccOKqq66S3r17y0UXXSR//etfxTRNERG5+OKL5c033xQRkc2bN8uY\nMWNERKS2tjYu51566aW4PHFyNtN9uMktJzoK//JxuFoJjY2NVFZWsmnTJiZPnszs2bMBrdD+5Cc/\n4Y033sAwDLZv386uXbsAKCsro7KyEoDJkyezadMmamtr2b9/PzNnzgTgsssu4/nnnwdg4cKF8dHG\nmDFjGDJkCGvXrgXgxBNPpKSkhJKSEkpLSznjjDMAKC8v54MPPmi/hsgjBUq5r0S2j5977rlA4vkD\nvPzyy1xzzTX4/fr17NGjB6tWrWLVqlVxXpmmSf/+/eP5XXjhhZ51WLVqFT/96U/Zv38/9fX1nHrq\nqa7p3OrixFe+8hXOOussbrjhBv785z9z5ZVXepabx+HDddddx8KFCwkGg1x33XXMnj2bHj16APDi\niy/y4osvMmnSJEBbR9atW8cHH3zA8uXLmTp1KqBlWp8+fViyZAmzZs2id+/egOaaLXeuvvpq7rjj\nDs4++2wefPBB/vjHPx6Gu83jscce44YbbgDgoosu4rHHHuPoo4/m5Zdf5sorr6SoqAggzgEv9O7d\nm2HDhrF48WJGjhzJxx9/zHHHHce9997ryg0nHnjgAVauXMnLL7/MXXfdxUsvvcT8+fN5+eWXU9wc\nDhw4QF1dHbW1tVx++eWsW7cOpVSKdTSZs5nuIxe51VHQYRWubt16Sf/+Qz3Pi0sYEuexbP+9jn2W\nNLYPV21tLaeffjr33nsv3/rWt3jkkUeoqalh+fLlBAIBhg4dSlNTE6BNrjZ8Ph+NjY2IiGcnLRkq\nkpyXYRjx/4ZheM6BV1ZOEQC7OK/vWOHuv93+ex3LAcvff3+3iPT+TBcnoaPwp2fPnuzbty/l2N69\neykrKwMSz83n88WfkxsHRITx48fz9ttvu5bTpUsXzzpcccUVPPPMM1RUVDB//nwWLFjgms6tLk4M\nHjyYvn378uqrr7JkyRIeeeQRz3KnTJmSaJ124M+q1avrmsLhri2+0IGOwp1c0wCMHz+ev//97/H/\n9957L7t372bKlClAKj9EhB//+Md8/etfT8njnnvu4fLLL+f2229POf7MM894yqTjjjuOTZs28frr\nr2OaZsYFPhMnTpFssiYve3L7n4w9e/bw6quvsmrVKpRSmKaJUoo77rgjY3/ihQsvvJAnn3ySMWPG\ncM4559gxrFy54Yby8nLKy8u57LLLKCsrY/78+ViWxdtvv01hYWFK2uuvv54TTzyRp59+mk2bNqX4\nfDk563UfucgtgCmTJ8vhlj0dVuHq338oDz2kVx9YVuK43Rb2t2Wl/xZxP5583s7Dzjs5bfJ/Z/kA\nF1zgTeDS0lLuvvtuzjrrLK699lpqa2vp06cPgUCA1157jc2bN2e8727dulFaWsrChQuZMWNGSod2\nwgkn8Mgjj3DSSSexdu1atmzZwujRo3n33Xcz5umFl15ahs+nhZvPR8pvw0h8FAKmmWiw5IZ0NqJX\ngyYfS4bjmOrbN3MD5YjDwZ+zz07nRXFxMf379+eVV17h5JNPZu/evbzwwgt8+9vf5sEHH3St+5w5\nc7j//vuZNWsWfr+fvXv3Mnr0aGpqanj77bepqqoiEomwdu1axo8fn3Z9SUkJdXV18f91dXX079+f\nSCTCI488wsCBA3NsxfS8QFs1vvSlL3HZZZfh8/k8r12yZFm78qf3qFGt4kzWkWWPfe4//iOVayed\ndBI/+clPuO+++7j22msB4r56Tpx66qncdNNNXHrppRQXF7N9+3YCgQAnn3wyZ511Ft/5znfo06cP\ne/fupa6ujunTp/Ptb3+bPXv20LVrV/72t79RUVERz+/LX/4yF198MTfddJNHi2o895y3vMnLntz5\nc/rpqc/+qaee4stf/nLKisCZM2eycOFC5syZwy9+8QsuueQSioqK2Lt3Lz169HB9r22ce+653Hbb\nbQwZMoRf/vKXAJ7cGDJkSPy6+vp6li1bFleaVqxYET8/Z84cfve73/H9738/fq6yspLa2tq4PJo/\nf75nm3rdR0uw7K23DrvsyTvNtwHsZbGPP/44l156KcuWLWPKlCk88sgjjBkzJuv1Dz74INdddx1V\nVVUpI4JvfOMbmKZJeXk5F154IfPnz0+xbOXRMfHwww8zb948KisrOemkk7j55psZPny4Z/qrr76a\no446iokTJ1JRUcGjjz5KMBjkqaee4oc//CEVFRVUVlby1ltvuV5/0UUXceeddzJp0iQ2bNjArbfe\nyvTp05k9e3ZO/EvGiSeeyOrVq+NO8wBnnnkm9fX1+enEDgSlFM888wyvv/46ZWVlTJs2jcsvvzze\nYSZjzpw5XHLJJVRVVVFeXs75559PXV0d48aNY968ecyZM4eJEycye/ZsduzYQf/+/bnllluoqqri\nlFNO4eijj07J79JLL2Xfvn1cfPHF7XW7eSThscce45xzzkk5dt555/Hoo48yd+5czjzzTKZMmUJl\n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\nAABJRU5ErkJggg==\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAADSCAYAAABXeTaiAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsnXl8VNX999/nzmQlhH0NEPYdEmQTURZRXFp3rVtdq1ZrbdVH27q0+rjUujz2p61Lf7YVSxVabN0qWsUFATeCICIiO7KTBLJBkpm59/v8ceZO7ty5M5mQBBKYz+uVV+Zu55x7zud+l7N8jxIRUkghhRRSSCGFFFJIIQUN43AXIIUUUkghhRRSSCGFFFoSUgZyCimkkEIKKaSQQgopOOA/3AVoDcjKytpVU1PT7XCXozHIzMzcXV1d3f1wl6M14kho/6ZAikONR2vjUqrNG4bW1r4tAa2NY6k2bl1oDL9Uag5y/VBKSWuvJ6UUIqIOdzlaI46E9m8KpDjUeLQ2LqXavGFobe3bEtDaOJZq49aFxvArNcUihRRSSCGFFFJIIYUUHEgZyCmkkEIKKaSQQgoppOBAykA+SPh8PgoLCxk5ciRnnHEGZWVlTZLu5s2bGTlyZJOklULzwaud7r33Xh577LFmy/PVV19l9erV9d737LPP8re//S3hPStWrGD+/PlNVbQUGondu3dzySWX0L9/f8aOHcukSZN45ZVXmjyfWbNm8dOf/rTJ000hMV555RWUUqxZs6bee2fNmsWOHTsix9dcc01S3319+M9//sOYMWMoKChg+PDh/OlPf2p0mokwbdo0ioqKmjWPlgLbHigoKOCYY47h448/Tnh/WVkZTz/9dL3pNqQOf//735OZmUl5eXm99/7P//wPBw4ciByffvrpTWLD/PWvf2XUqFGMHj2akSNH8tprrzU6zUTo27cvJSUlzZZ+ykA+SGRlZbFixQpWrVpFx44deeqppw53kVI4ghEKhZI2kK+//nouv/zyhPekDOSWAxHh7LPPZsqUKWzcuJFly5Yxd+5ctm3bFnVfKBQ6TCVMobGYM2cOxx9/PHPnzq33XreB/Oc//5nhw4c3Kv9gMMh1113HG2+8wZdffsny5cuZNm1ao9KEFCdt2PbAl19+yUMPPcQdd9yR8P5kDeSGYM6cOYwfPz4px9ptIM+fP5/27ds3Kv9t27bx4IMPsnjxYlauXMmnn37K6NGjG5UmHF6OpQzkJsCkSZPYvn07AFVVVcyYMYNjjjmGUaNGRTyozZs3M2zYMK699lpGjBjBzJkzqa6uBmDZsmUUFBQwadKkKEO7pqaGq666ilGjRjFmzBg++OADQAvQs88+mzPOOIN+/frxxz/+kccff5wxY8Zw7LHHsnfv3kNcAyk4MW3aNH75y18yYcIEBg8ezKJFiwAwTZPbbrst4mH/4Q9/AHT7T506lbFjx3LKKaewc+fOSDp33nknU6dO5eGHH+b111/n9ttvp7CwkA0bNvDcc88xfvx4CgoKOO+88yICz9mT7VWWQCDAb37zG/7xj39QWFjIP/7xDwYNGkRxcTEAlmUxcODAZvXMU6jD+++/T3p6Otdff33kXH5+PjfddBOzZs3iggsu4IwzzmDmzJkAPProo4wfP57Ro0dzzz33RJ75+9//zoQJEygsLOTHP/4xpmkC8PzzzzN48GCmTp3KkiVLAKisrKRfv34Eg0EAKioq6Nu3b+Q4haZDVVUVS5Ys4S9/+UuMgfzII48watQoCgoK+NWvfsXLL79MUVERl156KYWFhVRXV0d6EZ955hl+8YtfRJ6dNWsWN910ExC/7W1UVlYSCoXo1KkTABkZGQwZMgSA4uJizjvvPMaPH8/48eMjHPn888857rjjGDNmDMcddxzffvttJF83J93vYWPevHkxcvBIR0VFBR06dADi2wO/+tWv2LBhA4WFhdx+++1A4+pww4YNVFVV8cADDzBnzpzIeS+d8+STT7Jjxw6mT5/O9OnTgbqe2F/+8pdRhvu9997L//t//w+IL3ds7Nmzh7Zt25KTkwNATk4O/fr1i5Tv1FNPZezYsZxwwgmRkZQ33niDiRMnMmbMGE466SR2794dyfe6665j5syZXH755XF1J8Af/vCHSP0mM0LTIIhI6q+eP11N0WjTpo2IiIRCITn//PPlrbfeEhGRYDAo5eXlIiJSXFwsAwYMEMuyZNOmTeLz+WT58uUiInLBBRfI7NmzRURk1KhR8uGHH4qIyG233SYjRowQEZHHHntMrrzyShER+eabb6R3795SXV0tzz//vAwYMEAqKipkz549kpubK88884yIiNx8883y+9//Pqa84Xc47HXZGv+82n/Tpk2RdrJxzz33yKOPPipTp06VW2+9VURE3nzzTZkxY4aIiDz99NNy7rnnSjAYFBGR0tJSCQQCMmnSJNmzZ4+IiMydO1euuuoqERGZOnWq3HDDDZH0r7jiCpk3b17kuKSkJPL7rrvukieffDKqHHYaXmV5/vnn5cYbb4w8f++990Z489///lfOPffcmHdOcah5uPTEE0/IzTffHHNeRLdTXl6elJaWiohum2uvvVYsyxLTNOV73/ueLFy4UFavXi3f//73JRAIiIjIDTfcIC+88ILs2LFDevfuLXv27JHa2lo57rjjIu1+5ZVXyiuvvCIiIn/6058iPHEi1eaNb9/Zs2fL1VdfLSIikyZNkmXLlomIyPz582XSpEmyf/9+EZFIG0+dOlWWLl0aed4+3rNnjwwYMCBy/tRTT5VFixbFbXs3fvSjH0mXLl3koosukr///e9imqaIiFx88cWyaNEiERHZsmWLDB06VEREysvLI7Lq3XffjcgENycTvYeX7HGjtXHMq40Nw5CCggIZMmSI5ObmSlFRkYgktgec+qOxdXj//ffLfffdJ6ZpSn5+vuzevVtEvHWOiEh+fr4UFxdHnrePv/jiC5kyZUrk/LBhw2TLli1x5Y4ToVBIZs6cKb1795Yrr7xSXn/99ci1E088UdauXSsiIp9++qlMnz5dRET27t0rlmWJiMhzzz0Xedd77rlHjjnmGDlw4EC972Hrvaeeekp+9KMfxdRNY/iVioN8kKiurqawsJDNmzczduxYTj75ZEA7HHfeeScfffQRhmGwffv2iFfUr18/CgsLARg7diybN2+mvLycsrIypk6dCsBll13GW2+9BcDixYsjPQRDhw4lPz+ftWvXAjB9+nTatm1L27ZtadeuHWeccQYAo0aNYuXKlYeuIo5SKOUdNcY+f+655wJ17QywYMECrr/+evx+/dl17NiRVatWsWrVqgh/TNOkR48ekfQuvPDCuGVYtWoVd999N2VlZVRVVXHKKad43udVFjeuvvpqzjrrLG6++Wb++te/ctVVV8XNN4XmxY033sjixYtJT0/nxhtv5OSTT6Zjx44AvPPOO7zzzjuMGTMG0D1U69atY+XKlSxbtozx48cDWj517dqVzz77jGnTptGlSxdA88mWIddccw2PPPIIZ599Ns8//zzPPffcYXjbIx9z5szh5ptvBuCiiy5izpw5HHPMMSxYsICrrrqK7OxsgEgbx0OXLl3o378/n376KYMGDeLbb79l8uTJPPXUU55t78af//xnvvrqKxYsWMBjjz3Gu+++y6xZs1iwYEHU1K2KigoqKyspLy/niiuuYN26dSilokYXnJxM9B7JyJ4jAfYUC4BPPvmEyy+/nFWrViW0B5xobB3OnTuXV155BcMwOPfcc5k3bx433nijp85JhDFjxrBnzx527NhBcXExHTp0oE+fPjz55JOecmfKlCmRZ30+H2+//TZLly7lvffe45ZbbmHZsmXcdtttfPzxx1xwwQWRe2trawE9LePCCy9k586dBAKBSI8zwJlnnklWVlakfuK9h7N+/v3vfyd8v4aixRrI7dt3lh49+sa9LtK443jnkr1ufxDl5eV8//vf56mnnuJnP/sZL774IsXFxSxbtoy0tDT69u1LTU0NoIe1bPh8PqqrqxGRuMaWJCiAMy3DMCLHhmHEnbNTWDhO7KyU0n82oopg59sUleiBZV9+WSIiXRr8oAuHkyOdOnVi3759Uef27t0b+cDt9vD5fJH28GprEWHEiBF88sknnvm0adPGuwDAlVdeyauvvkpBQQGzZs3iww8/9LzPqyxu9O7dm27duvH+++/z2Wef8eKLL3reN27cOAkXnKj/dS8U+1ADObJq9erKmkAgt0EPeaClyxAbI0aM4F//+lfk+KmnnqKkpIRx48YB0RwQEe644w5+/OMfR6Xxhz/8gSuuuIKHHnoo6vyrr74aV75MnjyZzZs3s3DhQkzTjLs4uKBAt7lTdtj/W7MMORT8KC0t5f3332fVqlUopTBNE6UUjzzySELZHw8XXngh//znPxk6dCjnnHOOHePVs+29MGrUKEaNGsVll11Gv379mDVrFpZl8cknn0SMERs33XQT06dP55VXXmHz5s1Rc5bdnIz3HsnIHoBxxxwTLVecaME6xguTJk2ipKSE4uJi5s+fH9cecKIxdbhy5UrWrVsX6WQJBAL079+fG2+88aA4dv755/Pyyy+za9cuLrrookj5vOSOG0opJkyYwIQJEzj55JO56qqruPXWW2nfvn3EgXDipptu4tZbb+XMM8/kww8/5N57741ca0qOjSssjCJRsjqmxRrIPXr05YUX9OpNy6o775S79nn7t0j0b/tZ93XnNa+0bNjnLrggPsHatWvHk08+yVlnncUNN9xAeXk5Xbt2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\n", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -544,20 +544,21 @@ } ], "source": [ - "fig, axs = plt.subplots(1, 4, sharey=True)\n", + "fig, axs = plt.subplots(1, 5, sharey=True)\n", "\n", "plot_selection(axs[0], data, random_ixs)\n", "plot_selection(axs[1], data, uncertainty_ix)\n", "plot_selection(axs[2], data, greedy_ixs)\n", "plot_selection(axs[3], data, active_ix)\n", + "plot_selection(axs[4], data, batch_active_ix)\n", "\n", - "for ax, t in zip(axs, ['Random', 'Uncertainty', 'Greedy', 'Active Search']):\n", + "for ax, t in zip(axs, ['Random', 'Uncertainty', 'Greedy', 'Active Search', 'Batch Active Search']):\n", " ax.text(0.5, 1, t, transform=ax.transAxes, ha='center', va='center',\n", " bbox={'facecolor': 'w', 'edgecolor': 'k'})\n", "\n", "axs[0].legend()\n", "\n", - "fig.set_size_inches(8.5, 3)\n", + "fig.set_size_inches(10, 3)\n", "fig.tight_layout()" ] }, @@ -565,15 +566,13 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Note that random picks points clos eto where the boundaries are. Uncertainty sampling picks points close where the classifier has a probability near 50%. Greedy picks points near farthest from the decision boundary, and active search picks somewhere in between." + "Note that random picks points clos eto where the boundaries are. Uncertainty sampling picks points close where the classifier has a probability near 50%. Greedy picks points near farthest from the decision boundary. Regular active search picks points that are somewhere in between, but all clustered. Batch active search picks a larger diversity of points" ] }, { "cell_type": "code", "execution_count": null, - "metadata": { - "collapsed": true - }, + "metadata": {}, "outputs": [], "source": [] } @@ -594,7 +593,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.6" + "version": "3.6.3" } }, "nbformat": 4, From cce3bc76c3d50a056ee755bb886e6d13ca81d2cb Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Wed, 26 Sep 2018 19:59:57 -0400 Subject: [PATCH 05/36] Use the probability of the labeled point in the expected utility Part of the expected utility comes from this point, the rest from the expected probabilities of the other budget-1 points --- active_learning/query_strats/active_search.py | 38 ++++++++++++------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/active_learning/query_strats/active_search.py b/active_learning/query_strats/active_search.py index 5f351f5..e1517fb 100644 --- a/active_learning/query_strats/active_search.py +++ b/active_learning/query_strats/active_search.py @@ -98,16 +98,27 @@ def _mem_saver(model, points, train_ixs, obs_labels, unlabeled_chunk, all_unlabe # Get the probabilities of membership in either class p0, p1 = model.predict_proba(points[[unlabeled_ix]]).reshape(-1) - # Evaluate the effect of the point being labeled negative - m0 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=0) - s0 = _expected_future_utility(m0, points, test_set, budget) - - # Evaluate the effect of the point being labeled positive - m1 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=1) - s1 = _expected_future_utility(m1, points, test_set, budget) - - # Compute the score for this point - chunk_scores.append(p0 * s0 + p1 * s1) + # If the budget is only for one more label, the score is just the probability + if budget - 1 == 0: + chunk_scores.append(p1) + else: + # If not, assess the effect of labeling this point + + # Evaluate the effect of the point being labeled negative + m0 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=0) + s0 = _expected_future_utility(m0, points, test_set, budget-1) + + # Evaluate the effect of the point being labeled positive + m1 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=1) + s1 = _expected_future_utility(m1, points, test_set, budget-1) + + # Compute the score for this point + # This is equal to the probability of it being positive (p1) + # plus the expected number of positives found in the + # "budget - 1" remaining entries if this point is labeled, + # which is equal to the product of the probability of "1" or "0" + # times the number of positives in the top budget-1 if "1" or "0" + chunk_scores.append(p1 + (p0 * s0 + p1 * s1)) del test_set return np.array(chunk_scores) @@ -127,9 +138,9 @@ def _search_score(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **k backend = problem.get("parallel_backend", "threading") n_cpu = cpu_count() - n_chunks = len(unlabeled_ixs) // 100 + n_chunks = n_cpu * 100 - with Parallel(n_jobs=n_cpu, max_nbytes=1e6, backend=backend) as parallel: + with Parallel(n_jobs=n_cpu, max_nbytes=1e6, backend=backend, verbose=2) as parallel: real_budget = min(budget * batch_size, len(unlabeled_ixs)-1) expected_future_utilities = parallel( delayed(_mem_saver)(model, points, train_ixs, obs_labels, chunk, unlabeled_ixs, real_budget) @@ -145,4 +156,5 @@ def _search_score(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **k def active_search(problem, train_ixs, obs_labels, unlabeled_ixs, npoints, **kwargs): score = _search_score - return argmax(problem, train_ixs, obs_labels, unlabeled_ixs, score, npoints, **kwargs) \ No newline at end of file + return argmax(problem, train_ixs, obs_labels, unlabeled_ixs, score, npoints, **kwargs) + From a0c2672de6e575b21f4ccddb77f13815a5c76bc4 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 5 Oct 2018 16:03:35 -0600 Subject: [PATCH 06/36] Added class for defining problem --- active_learning/problem.py | 58 +++++++++++++++++++++++++++ active_learning/tests/__init__.py | 0 active_learning/tests/test_problem.py | 37 +++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 active_learning/problem.py create mode 100644 active_learning/tests/__init__.py create mode 100644 active_learning/tests/test_problem.py diff --git a/active_learning/problem.py b/active_learning/problem.py new file mode 100644 index 0000000..1dd1821 --- /dev/null +++ b/active_learning/problem.py @@ -0,0 +1,58 @@ +from typing import List +import numpy as np + + +class ActiveLearningProblem: + """Class for defining an active learning problem. + + The main point in defining an active learning problem is to define the total search space, + which points in this space have already been labeled, and what those labels are. + + Optionally, you can define the budget of how many points are left to label. + """ + + def __init__(self, points, labeled_ixs, labels, budget=None, positive_label=1): + """Set up the active learning problem + + Args: + points (ndarray): Coordinates of all points in the search space + labeled_ixs ([int]): Indices of points that have been labeled + labels (ndarray): Labels for the labeled points, in same order as labeled_ixs + budget (int): How many entries are budgeted to be labeled (default: all of them) + positive_label (int): Classification: Which entry is the desired class + """ + + self.points = points + self.labeled_ixs = labeled_ixs + self.labels = list(labels) + self.positive_label = positive_label + + # Set the budget + self.budget = None + if budget is None: + self.budget = len(points) - len(labeled_ixs) + + @classmethod + def from_labeled_and_unlabled(cls, labeled_points, labels, unlabled_points, **kwargs): + """Construct an active learning problem from labeled and unlabled points + + Args: + labeled_points (ndarray): Coordinates of points with labels + labels (ndarray): Labels of those points + unlabled_points (ndarray): Points that could possibly be labeled + """ + + points = np.vstack((labeled_points, unlabled_points)) + labeled_ixs = list(range(len(labeled_points))) + + return cls(points, labeled_ixs, labels, **kwargs) + + def get_unlabeled_ixs(self) -> List[int]: + """Get a list of the unlabeled indices + + Returns: + ([int]) Unlabelled indices + """ + return list( + set(range(len(self.points))).difference(self.labeled_ixs) + ) diff --git a/active_learning/tests/__init__.py b/active_learning/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/active_learning/tests/test_problem.py b/active_learning/tests/test_problem.py new file mode 100644 index 0000000..e736f23 --- /dev/null +++ b/active_learning/tests/test_problem.py @@ -0,0 +1,37 @@ +from ..problem import ActiveLearningProblem +from unittest import TestCase + +def make_grid_problem(): + """Makes a test active learning problem based on a grid + + 0 1 2 + ------------- + 0 | x | ? | ? | + ------------- + 1 | ? | o | x | + ------------- + 2 | x | ? | o | + ------------- + + The grid is designed to make computing the utilities of each point easier. + """ + + # Print out the points + x_known = [(0, 0), (1, 1), (1, 2), (2, 0), (2, 2)] + x_labels = [1, 0, 1, 1, 0] + x_unlabeled = [(0, 1), (0, 2), (1, 0), (2, 1)] + + # Make the active learning problem + return ActiveLearningProblem.from_labeled_and_unlabled(x_known, x_labels, x_unlabeled, + positive_label=1) + + +class TestProblem(TestCase): + + def test_grid(self): + prob = make_grid_problem() + + self.assertEqual((9, 2), prob.points.shape) + self.assertListEqual(list(range(5)), prob.labeled_ixs) + self.assertListEqual(list(range(5, 9)), prob.get_unlabeled_ixs()) + self.assertEqual(1, prob.positive_label) From 7bd2852ada4e0b096706d5ba78a2ed41698a00ba Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 5 Oct 2018 18:07:29 -0600 Subject: [PATCH 07/36] Added a new base class for query strategies Implemented random and uncertainty as initial examples --- active_learning/problem.py | 12 ++- active_learning/query_strats/__init__.py | 96 ++++++++++++++++--- .../query_strats/random_sampling.py | 12 ++- .../query_strats/tests/__init__.py | 0 .../query_strats/tests/test_random.py | 21 ++++ .../query_strats/tests/test_uncertainty.py | 22 +++++ .../query_strats/uncertainty_sampling.py | 20 +++- active_learning/utils.py | 3 +- 8 files changed, 161 insertions(+), 25 deletions(-) create mode 100644 active_learning/query_strats/tests/__init__.py create mode 100644 active_learning/query_strats/tests/test_random.py create mode 100644 active_learning/query_strats/tests/test_uncertainty.py diff --git a/active_learning/problem.py b/active_learning/problem.py index 1dd1821..0245a19 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -1,3 +1,4 @@ +from sklearn.base import BaseEstimator from typing import List import numpy as np @@ -11,7 +12,8 @@ class ActiveLearningProblem: Optionally, you can define the budget of how many points are left to label. """ - def __init__(self, points, labeled_ixs, labels, budget=None, positive_label=1): + def __init__(self, points, labeled_ixs, labels, budget=None, positive_label=1, + model: BaseEstimator = None): """Set up the active learning problem Args: @@ -20,12 +22,14 @@ def __init__(self, points, labeled_ixs, labels, budget=None, positive_label=1): labels (ndarray): Labels for the labeled points, in same order as labeled_ixs budget (int): How many entries are budgeted to be labeled (default: all of them) positive_label (int): Classification: Which entry is the desired class + model (BaseEstimator): Machine learning model used to guide training. """ self.points = points self.labeled_ixs = labeled_ixs self.labels = list(labels) self.positive_label = positive_label + self.model = model # Set the budget self.budget = None @@ -56,3 +60,9 @@ def get_unlabeled_ixs(self) -> List[int]: return list( set(range(len(self.points))).difference(self.labeled_ixs) ) + + def update_model(self): + """Update the machine learning model given the current labeled set""" + + self.model.fit(self.points[self.labeled_ixs], + self.labels) diff --git a/active_learning/query_strats/__init__.py b/active_learning/query_strats/__init__.py index f9b79ca..13b0591 100644 --- a/active_learning/query_strats/__init__.py +++ b/active_learning/query_strats/__init__.py @@ -1,13 +1,85 @@ +from active_learning.problem import ActiveLearningProblem +from multiprocessing import Pool +from functools import partial +from typing import List +import numpy as np -from .argmax import argmax - -from .active_search import active_search -from .batch_active_search import seq_sim_batch -from .mcal_regression import mcal_regression -from .random_sampling import random_sampling -from .rfr_balanced import rfr_balanced -from .greedy import greedy -from .greedy_regression import greedy_regression -from .rfr_variance import rfr_variance -from .three_ds import three_ds -from .uncertainty_sampling import uncertainty_sampling \ No newline at end of file + +class BaseQueryStrategy: + """Base class for all active learning strategies.""" + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: + """Identify which points should be queried next + + Args: + problem (ActiveLearningProblem): Problem definition + n_to_select (int): Number of points to select + Returns: + ([int]): List of which points to query next + """ + raise NotImplementedError() + + +class IndividualScoreQueryStrategy(BaseQueryStrategy): + """"Base class for query strategies that rate each point independently""" + + def __init__(self, n_cpus: int = 1, chunks_per_thread: int = 32): + """Initialize the query strategy + + Args: + n_cpus (int): Number of processors to use + chunks_per_thread (int): Number of chunks of indices per thread when multiprocessing + """ + self.n_cpus = n_cpus + self.chunks_per_thread = chunks_per_thread + + def score(self, ind: int, problem: ActiveLearningProblem) -> float: + """Score a single entry + + Entries with higher scores should be selected + + Args: + ind (int): Index of entry to be assessed + problem (ActiveLearningProblem): Active learning problem definition + Returns: + (float) Score of entry + """ + raise NotImplementedError() + + def _score_many(self, inds: List[int], problem: ActiveLearningProblem) -> List[float]: + """Score a list of indices + + Used to prevent copying the active learning problem definition many times + + Args: + inds ([int]): List of indices to score + problem (ActiveLearningProblem): Active learning problem definition + Returns: + ([float]) Scores for each entry + """ + + return [self.score(i, problem) for i in inds] + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + # Get the unlabeled indices as an ndarray (for easy indexing) + unlabled_ixs = np.array(problem.get_unlabeled_ixs()) + + # Get the scores + if self.n_cpus == 1: + scores = self._score_many(unlabled_ixs, problem) + else: + # Make the chunks of indices to evaluate in parallel + chunks = np.array_split(unlabled_ixs, self.n_cpus * self.chunks_per_thread) + + # Make the function to be evaluated + fun = partial(self._score_many, problem=problem) + + # Score each chunk + with Pool(self.n_cpus) as p: + scores = p.map(fun, chunks) + + # De-chunk the scores + scores = np.concatenate(scores) + + # Get the top entries + return unlabled_ixs[np.argpartition(scores, -n_to_select)[-n_to_select:]].tolist() diff --git a/active_learning/query_strats/random_sampling.py b/active_learning/query_strats/random_sampling.py index 026c164..f6eb1f0 100644 --- a/active_learning/query_strats/random_sampling.py +++ b/active_learning/query_strats/random_sampling.py @@ -1,8 +1,10 @@ -import numpy as np +from ..problem import ActiveLearningProblem +from . import IndividualScoreQueryStrategy +from random import random -def random_sampling(problem, train_ixs, obs_labels, unlabeled_ixs, npoints, **kwargs): - """Simple random sample of points from unlabeled indices""" - rand_ixs = np.random.randint(0, len(unlabeled_ixs), size=npoints) +class RandomQuery(IndividualScoreQueryStrategy): + """Randomly select entries from the unlabeled set""" - return unlabeled_ixs[rand_ixs] \ No newline at end of file + def score(self, ind: int, problem: ActiveLearningProblem): + return random() diff --git a/active_learning/query_strats/tests/__init__.py b/active_learning/query_strats/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/active_learning/query_strats/tests/test_random.py b/active_learning/query_strats/tests/test_random.py new file mode 100644 index 0000000..2815f39 --- /dev/null +++ b/active_learning/query_strats/tests/test_random.py @@ -0,0 +1,21 @@ +from ...tests.test_problem import make_grid_problem +from ..random_sampling import RandomQuery +from unittest import TestCase + + +class RandomTest(TestCase): + + def test_random(self): + problem = make_grid_problem() + + # Make the selection tool + query = RandomQuery() + + # Test with no threads + output = query.select_points(problem, 2) + self.assertEqual(2, len(output)) + + # Test with 2 threads + query.n_cpus = 2 + output = query.select_points(problem, 3) + self.assertEqual(3, len(output)) diff --git a/active_learning/query_strats/tests/test_uncertainty.py b/active_learning/query_strats/tests/test_uncertainty.py new file mode 100644 index 0000000..c257d07 --- /dev/null +++ b/active_learning/query_strats/tests/test_uncertainty.py @@ -0,0 +1,22 @@ +from ..uncertainty_sampling import UncertaintySampling +from ...tests.test_problem import make_grid_problem +from sklearn.neighbors import KNeighborsClassifier +from unittest import TestCase +import numpy as np + + +class TestUncertainty(TestCase): + + def test_uncertainty(self): + # Make the grid problem with a KNN + model = KNeighborsClassifier(n_neighbors=2) + problem = make_grid_problem() + problem.model = model + problem.update_model() + + # Compute the uncertainties + sampler = UncertaintySampling() + probs = model.predict_proba(problem.points[problem.get_unlabeled_ixs()]) + score = -1 * np.multiply(probs, np.log(probs)).sum(axis=1) + self.assertTrue(np.isclose(score, + sampler._score_many(problem.get_unlabeled_ixs(), problem)).all()) diff --git a/active_learning/query_strats/uncertainty_sampling.py b/active_learning/query_strats/uncertainty_sampling.py index d92223f..f82cae8 100644 --- a/active_learning/query_strats/uncertainty_sampling.py +++ b/active_learning/query_strats/uncertainty_sampling.py @@ -1,10 +1,20 @@ +from ..problem import ActiveLearningProblem +from . import IndividualScoreQueryStrategy +from typing import List import numpy as np -from . import argmax -from active_learning.scoring.marginal_entropy import marginal_entropy +class UncertaintySampling(IndividualScoreQueryStrategy): + """Sample entries with the highest uncertainty in the classification score""" -def uncertainty_sampling(problem, train_ixs, obs_labels, unlabeled_ixs, npoints, **kwargs): - score = marginal_entropy + def score(self, ind: int, problem: ActiveLearningProblem): + probs = problem.model.predict_proba( + [problem.points[ind]] + ) + probs = probs.clip(1e-9, 1 - 1e-9) + return -1 * (probs * np.log(probs)).sum() - return argmax(problem, train_ixs, obs_labels, unlabeled_ixs, score, npoints) \ No newline at end of file + def _score_many(self, inds: List[int], problem: ActiveLearningProblem): + probs = problem.model.predict_proba(problem.points[inds]) + probs = probs.clip(1e-9, 1 - 1e-9) + return -1 * (probs * np.log(probs)).sum(axis=1) diff --git a/active_learning/utils.py b/active_learning/utils.py index 2b2c0cd..6072723 100644 --- a/active_learning/utils.py +++ b/active_learning/utils.py @@ -7,7 +7,6 @@ from active_learning.selectors import identity_selector from active_learning.ss_active_learning import ss_actively_learn, _default_ssl_config from .active_learning import _actively_learn -from active_learning.query_strats.uncertainty_sampling import uncertainty_sampling def chunks(l: list, n: int) -> list: @@ -165,7 +164,7 @@ def perform_experiment(X: np.ndarray, y: np.ndarray, X_test: np.ndarray=None, y_ base_estimator=SVC(probability=True), init_L_size: int=2, n_queries: int=40, batch_size: int=1, semisupervised: bool=False, - selector=identity_selector, query_strat=uncertainty_sampling, oracle=None, + selector=identity_selector, query_strat=None, oracle=None, score_fns=None, parallel_backend='threading', random_state=None, **kwargs): """ A function that presents a simple API to users who don't need the most fine grained control. From 81373b9efba62686c48169d6e25f30b9f324ee7c Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 5 Oct 2018 18:08:20 -0600 Subject: [PATCH 08/36] Removed argmax Now baked in to IndividualScoringQueryStrat --- active_learning/query_strats/argmax.py | 73 -------------------------- 1 file changed, 73 deletions(-) delete mode 100644 active_learning/query_strats/argmax.py diff --git a/active_learning/query_strats/argmax.py b/active_learning/query_strats/argmax.py deleted file mode 100644 index 1e64ffe..0000000 --- a/active_learning/query_strats/argmax.py +++ /dev/null @@ -1,73 +0,0 @@ -import numpy as np - - -def _partition_ixs(partition, unlabeled_ixs): - """ - Splits the unlabeled_ixs along the partitions given. - :param partition: list of np.array of indices - :param unlabeled_ixs: np.array of indices - :return: mask of length unlabeled_ixs indicating which are in each partition - """ - return [ - np.in1d(unlabeled_ixs, p_i) - for p_i in partition - ] - - -def argmax(problem, train_ixs, obs_labels, unlabeled_ixs, score, batch_size, **kwargs): - """ - Generic arg-maximizer query strat that can be used with different scoring mechanisms. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - Optional: - - partition: list of sets of indices into problem['points'] partitioning the space. - This can restrict the batch to be from one partition! - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param unlabeled_ixs: np.array of the indices of the unlabeled examples - :param score: scoring function (see scoring API) - :param batch_size: size of the batch to select - :param kwargs: passed on to scoring function - :return: - """ - scores = score(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **kwargs) - - # default to argmax over all unlabeled indices - if "partition" not in problem: - best_ixs = np.argsort(scores)[-batch_size:] - # print(scores[best_ixs]) - # print(scores) - return unlabeled_ixs[best_ixs] - - # user can specify partition (maybe only can take batch from one experiment at a time?) - partition = problem['partition'] - part_unlabeled_ixs = _partition_ixs(partition, unlabeled_ixs) - - # find best batch for each partition, choose max across those - max_batch_score = -np.inf - max_batch = None - for p_ixs in part_unlabeled_ixs: - # mask the scores of the elements not in partition - p_score = np.ma.masked_array(scores, mask=~p_ixs) - - # can only choose up to min(num things in partition, batch_size) items from this partition - k = min(np.sum(p_ixs), batch_size) - - # indices of top k scores - top_k_ixs = p_score.argsort(fill_value=-np.inf)[-k:] - - # score for the batch would be sum of them - batch_score = np.sum(p_score[top_k_ixs]) - if batch_score > max_batch_score: - max_batch_score = batch_score - - # batch_mask = np.zeros(p_ixs.shape, dtype=bool) - # batch_mask[top_k_ixs] = True - # max_batch = batch_mask - max_batch = top_k_ixs - - return unlabeled_ixs[max_batch] \ No newline at end of file From 0e2772cafd34d4f3b067bec32f41b1d7e316bb92 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 5 Oct 2018 18:28:10 -0600 Subject: [PATCH 09/36] Removed `score` function from ISQS Found I was having to implement a "many" and "single" version in order to achieve computational efficiency. This version is less clunky --- active_learning/query_strats/__init__.py | 47 ++++++++++--------- .../query_strats/random_sampling.py | 5 +- .../query_strats/tests/test_uncertainty.py | 3 +- .../query_strats/uncertainty_sampling.py | 9 +--- 4 files changed, 31 insertions(+), 33 deletions(-) diff --git a/active_learning/query_strats/__init__.py b/active_learning/query_strats/__init__.py index 13b0591..8847e6b 100644 --- a/active_learning/query_strats/__init__.py +++ b/active_learning/query_strats/__init__.py @@ -1,7 +1,7 @@ from active_learning.problem import ActiveLearningProblem from multiprocessing import Pool from functools import partial -from typing import List +from typing import List, Tuple import numpy as np @@ -21,7 +21,11 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> Lis class IndividualScoreQueryStrategy(BaseQueryStrategy): - """"Base class for query strategies that rate each point independently""" + """"Base class for query strategies that rate each point independently + + Queries are determined by evaluating the score of batches of entries inpendently, + which allows for parallelization. + """ def __init__(self, n_cpus: int = 1, chunks_per_thread: int = 32): """Initialize the query strategy @@ -33,20 +37,7 @@ def __init__(self, n_cpus: int = 1, chunks_per_thread: int = 32): self.n_cpus = n_cpus self.chunks_per_thread = chunks_per_thread - def score(self, ind: int, problem: ActiveLearningProblem) -> float: - """Score a single entry - - Entries with higher scores should be selected - - Args: - ind (int): Index of entry to be assessed - problem (ActiveLearningProblem): Active learning problem definition - Returns: - (float) Score of entry - """ - raise NotImplementedError() - - def _score_many(self, inds: List[int], problem: ActiveLearningProblem) -> List[float]: + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem) -> List[float]: """Score a list of indices Used to prevent copying the active learning problem definition many times @@ -58,21 +49,36 @@ def _score_many(self, inds: List[int], problem: ActiveLearningProblem) -> List[f ([float]) Scores for each entry """ - return [self.score(i, problem) for i in inds] + raise NotImplementedError() def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + # Get the unlabeled indices as an ndarray (for easy indexing) + unlabled_ixs, scores = self.score_all(problem) + + # Get the top entries + return unlabled_ixs[np.argpartition(scores, -n_to_select)[-n_to_select:]] + + def score_all(self, problem: ActiveLearningProblem) -> Tuple[List[int], List[float]]: + """Determine the scores for all non-labeled points + + Args: + problem (ActiveLearningProblem): Active learning problem definition + Return: + - [int] Indices of all unlabeled points + - [float] Scores for each point + """ # Get the unlabeled indices as an ndarray (for easy indexing) unlabled_ixs = np.array(problem.get_unlabeled_ixs()) # Get the scores if self.n_cpus == 1: - scores = self._score_many(unlabled_ixs, problem) + scores = self._score_chunk(unlabled_ixs, problem) else: # Make the chunks of indices to evaluate in parallel chunks = np.array_split(unlabled_ixs, self.n_cpus * self.chunks_per_thread) # Make the function to be evaluated - fun = partial(self._score_many, problem=problem) + fun = partial(self._score_chunk, problem=problem) # Score each chunk with Pool(self.n_cpus) as p: @@ -81,5 +87,4 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): # De-chunk the scores scores = np.concatenate(scores) - # Get the top entries - return unlabled_ixs[np.argpartition(scores, -n_to_select)[-n_to_select:]].tolist() + return unlabled_ixs, scores diff --git a/active_learning/query_strats/random_sampling.py b/active_learning/query_strats/random_sampling.py index f6eb1f0..845bd87 100644 --- a/active_learning/query_strats/random_sampling.py +++ b/active_learning/query_strats/random_sampling.py @@ -1,10 +1,11 @@ from ..problem import ActiveLearningProblem from . import IndividualScoreQueryStrategy from random import random +from typing import List class RandomQuery(IndividualScoreQueryStrategy): """Randomly select entries from the unlabeled set""" - def score(self, ind: int, problem: ActiveLearningProblem): - return random() + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): + return [random() for _ in inds] diff --git a/active_learning/query_strats/tests/test_uncertainty.py b/active_learning/query_strats/tests/test_uncertainty.py index c257d07..0d833f7 100644 --- a/active_learning/query_strats/tests/test_uncertainty.py +++ b/active_learning/query_strats/tests/test_uncertainty.py @@ -18,5 +18,4 @@ def test_uncertainty(self): sampler = UncertaintySampling() probs = model.predict_proba(problem.points[problem.get_unlabeled_ixs()]) score = -1 * np.multiply(probs, np.log(probs)).sum(axis=1) - self.assertTrue(np.isclose(score, - sampler._score_many(problem.get_unlabeled_ixs(), problem)).all()) + self.assertTrue(np.isclose(score, sampler.score_all(problem)[1]).all()) diff --git a/active_learning/query_strats/uncertainty_sampling.py b/active_learning/query_strats/uncertainty_sampling.py index f82cae8..ab201da 100644 --- a/active_learning/query_strats/uncertainty_sampling.py +++ b/active_learning/query_strats/uncertainty_sampling.py @@ -7,14 +7,7 @@ class UncertaintySampling(IndividualScoreQueryStrategy): """Sample entries with the highest uncertainty in the classification score""" - def score(self, ind: int, problem: ActiveLearningProblem): - probs = problem.model.predict_proba( - [problem.points[ind]] - ) - probs = probs.clip(1e-9, 1 - 1e-9) - return -1 * (probs * np.log(probs)).sum() - - def _score_many(self, inds: List[int], problem: ActiveLearningProblem): + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): probs = problem.model.predict_proba(problem.points[inds]) probs = probs.clip(1e-9, 1 - 1e-9) return -1 * (probs * np.log(probs)).sum(axis=1) From e5b606696f9521ca118c01bede64d93d25b43e0b Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 5 Oct 2018 18:55:48 -0600 Subject: [PATCH 10/36] Overhauled GreedySearch --- active_learning/query_strats/greedy.py | 15 ++++++++----- .../query_strats/tests/test_greedy.py | 22 +++++++++++++++++++ 2 files changed, 31 insertions(+), 6 deletions(-) create mode 100644 active_learning/query_strats/tests/test_greedy.py diff --git a/active_learning/query_strats/greedy.py b/active_learning/query_strats/greedy.py index 6bf2efe..f2d1793 100644 --- a/active_learning/query_strats/greedy.py +++ b/active_learning/query_strats/greedy.py @@ -1,8 +1,11 @@ -from active_learning.query_strats import argmax -from active_learning.scoring import probability +from active_learning.problem import ActiveLearningProblem +from . import IndividualScoreQueryStrategy +from typing import List -def greedy(problem, train_ixs, obs_labels, unlabeled_ixs, npoints, **kwargs): - """Greedily choose the most probably to be a target""" - score_fn = probability - return argmax(problem, train_ixs, obs_labels, unlabeled_ixs, score_fn, npoints) \ No newline at end of file +class GreedySearch(IndividualScoreQueryStrategy): + """Query strategy where you pick the score most likely to be the target label""" + + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): + probs = problem.model.predict_proba(problem.points[inds]) + return probs[:, problem.positive_label] diff --git a/active_learning/query_strats/tests/test_greedy.py b/active_learning/query_strats/tests/test_greedy.py new file mode 100644 index 0000000..89bb11b --- /dev/null +++ b/active_learning/query_strats/tests/test_greedy.py @@ -0,0 +1,22 @@ +from ..greedy import GreedySearch +from ...tests.test_problem import make_grid_problem +from sklearn.neighbors import KNeighborsClassifier +from unittest import TestCase +import numpy as np + + +class TestGreedy(TestCase): + + def test_greedy(self): + # Make the grid problem with a KNN + model = KNeighborsClassifier(n_neighbors=3) + problem = make_grid_problem() + problem.positive_label = 1 + problem.model = model + problem.update_model() + + # Compute the probabilities for each test point + greedy = GreedySearch() + inds, scores = greedy.score_all(problem) + probs = model.predict_proba(problem.points[inds])[:, 1] + self.assertTrue(np.isclose(probs, scores).all()) From 13077293155fc3bd49f5951f03573b988b99d56f Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 5 Oct 2018 19:07:09 -0600 Subject: [PATCH 11/36] Overhauled active search --- active_learning/query_strats/active_search.py | 209 ++++++++---------- .../query_strats/tests/test_active_search.py | 36 +++ 2 files changed, 124 insertions(+), 121 deletions(-) create mode 100644 active_learning/query_strats/tests/test_active_search.py diff --git a/active_learning/query_strats/active_search.py b/active_learning/query_strats/active_search.py index e1517fb..02c069c 100644 --- a/active_learning/query_strats/active_search.py +++ b/active_learning/query_strats/active_search.py @@ -1,47 +1,35 @@ -from multiprocessing import cpu_count - -from sklearn.externals.joblib import Parallel, delayed +from sklearn.base import BaseEstimator, clone +from ..problem import ActiveLearningProblem +from . import IndividualScoreQueryStrategy +from typing import List import numpy as np -from sklearn.base import clone - -from active_learning.utils import chunks -from . import argmax -""" -The general strategy in this file is taken from the paper -http://proceedings.mlr.press/v70/jiang17d/jiang17d.pdf. -It tries to make an efficient, non-myopic approximation for the future utility -of every unlabeled point. -""" - -def _lookahead(points, model, train_ixs, obs_labels, x, label): +def _lookahead(points: np.ndarray, model: BaseEstimator, + train_ixs: List[int], obs_labels: List[float], + x: np.ndarray, label: float): """ Does a lookahead at what the model would be if (x, label) were added to the known set. If the model implements the partial_fit API from sklearn, then - that will be used. Otherwise, the model is retrained from scratch on + that will be used. Otherwise, the model is retrained from scratch on problem['points'] + x. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - :param model: sklearn model to be trained. This is likely a copy of the - model in the problem dictionary because many copies of model trained on - different potential new points to be queried. - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param x: the data point in question to lookahead at - :param label: potential label for x (not the real one!) - :return: a newly trained model + + Args: + model (BaseEstimator): sklearn model to be retrained + train_ixs (ndarray): Indices of currently-labeled set + obs_labels (ndarray): Labels for each labeled entry + x (ndarray): Data point to simulate being labeled + label (float): Simulated label """ if hasattr(model, "partial_fit"): return model.partial_fit([x], [label], [0, 1]) + # Update the training set X_train = np.concatenate([points[train_ixs], [x]]) obs_labels = np.concatenate([obs_labels, [label]]) - return model.fit(X_train, obs_labels) + + # Refit the model + model.fit(X_train, obs_labels) def _split_lookahead(problem, points_and_models, train_ixs, obs_labels): @@ -54,107 +42,86 @@ def _split_lookahead(problem, points_and_models, train_ixs, obs_labels): ] -def _expected_future_utility(model, points, test_set, budget): +def _expected_future_utility(model: BaseEstimator, test_set: np.ndarray, + budget: int, target_label: int): """ The expected future utility of all remaining points is the sum top `budget` number of probabilities that the model predicts on the test set. This is assuming that the utility function is the number of targets found, and that we can only make `budget` queries. - :param model: model trained on training set + potential new point - :param points: all points in the space - :param test_set: set of unlabeled points - potential new point - :param budget: number of points that we will be able to query - :return: utility + + Args: + model (BaseEstimator): Model trained on training set + potential new point + test_set (ndarray): Test set for the model + budget (int): number of points that we will be able to query + target_label (int): Index of target label + + Returns: + (float) Expected utility """ - probs = model.predict_proba(points[test_set]) - positives = probs[:,1] + + # Predict the probability of each entry in the test set + probs = model.predict_proba(test_set) + positives = probs[:, target_label] # sum only the top `budget` probabilities! Even if there are more, we can # only possibly gain `budget` more targets. klargest = positives.argpartition(-budget)[-budget:] u = np.sum(positives[klargest]) - return u - - -def _split_future_utility(models, points, test_set, budget): - """ - dumb utility function to evaluate _expected_future_utility on two models. - The two models come from the two possible labels {0, 1} for a potential new - point, and this function is useful for parallelizing the evaluation. - """ - return ( - _expected_future_utility(models[0], points, test_set, budget), - _expected_future_utility(models[1], points, test_set, budget) - ) - - -def _mem_saver(model, points, train_ixs, obs_labels, unlabeled_chunk, all_unlabeled_ixs, budget): - model_copy = clone(model) - chunk_scores = [] - for unlabeled_ix in unlabeled_chunk: - # Make the new test set - test_set = np.delete(all_unlabeled_ixs, np.argwhere(all_unlabeled_ixs == unlabeled_ix)) - - # Get the probabilities of membership in either class - p0, p1 = model.predict_proba(points[[unlabeled_ix]]).reshape(-1) - # If the budget is only for one more label, the score is just the probability - if budget - 1 == 0: - chunk_scores.append(p1) - else: - # If not, assess the effect of labeling this point - - # Evaluate the effect of the point being labeled negative - m0 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=0) - s0 = _expected_future_utility(m0, points, test_set, budget-1) - - # Evaluate the effect of the point being labeled positive - m1 = _lookahead(points, model_copy, train_ixs, obs_labels, points[unlabeled_ix], label=1) - s1 = _expected_future_utility(m1, points, test_set, budget-1) - - # Compute the score for this point - # This is equal to the probability of it being positive (p1) - # plus the expected number of positives found in the - # "budget - 1" remaining entries if this point is labeled, - # which is equal to the product of the probability of "1" or "0" - # times the number of positives in the top budget-1 if "1" or "0" - chunk_scores.append(p1 + (p0 * s0 + p1 * s1)) - del test_set - - return np.array(chunk_scores) - - -def _search_score(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **kwargs): - model = problem['model'] - points = problem['points'] - - # num queries remaining - budget = kwargs['budget'] - assert budget > 0 - - # OS X requires you to use "threading" rather than "multiprocessing" - # because it doesn't support BLAS calls on both 'sides' of a fork - # however, we cannot just use threading because RandomForest is not thread safe... - backend = problem.get("parallel_backend", "threading") - - n_cpu = cpu_count() - n_chunks = n_cpu * 100 - - with Parallel(n_jobs=n_cpu, max_nbytes=1e6, backend=backend, verbose=2) as parallel: - real_budget = min(budget * batch_size, len(unlabeled_ixs)-1) - expected_future_utilities = parallel( - delayed(_mem_saver)(model, points, train_ixs, obs_labels, chunk, unlabeled_ixs, real_budget) - for chunk in chunks(unlabeled_ixs, n_chunks) - ) - - expected_future_utilities = np.concatenate(expected_future_utilities) - - # print(expected_future_utilities) - return expected_future_utilities - - -def active_search(problem, train_ixs, obs_labels, unlabeled_ixs, npoints, **kwargs): - score = _search_score + return u - return argmax(problem, train_ixs, obs_labels, unlabeled_ixs, score, npoints, **kwargs) +class ActiveSearch(IndividualScoreQueryStrategy): + """Efficient Non-Myopic Active Search. + + Based on an algorithm by [Jiang et al.](http://proceedings.mlr.press/v70/jiang17d/jiang17d.pdf). + Automatically balances between the desire to greedily query points highly likely to be the target + class and those which, if queries, will lead to model improvements that will lead to more + targets to be found later on.""" + + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): + # Create a copy of the model + model_copy = clone(problem.model) + + # Get a list of *all* unlabeled entries + all_unlabeled_ixs = np.array(problem.get_unlabeled_ixs()) + + # Get scores for this chunk + chunk_scores = [] + for unlabeled_ix in inds: + # Make the new test set + test_set = problem.points[all_unlabeled_ixs[all_unlabeled_ixs != unlabeled_ix]] + + # Get the probabilities of membership in either class + p0, p1 = problem.model.predict_proba(problem.points[[unlabeled_ix]]).reshape(-1) + + # If the budget is only for one more label, the score is just the probability + if problem.budget - 1 == 0: + chunk_scores.append(p1) + else: + # If not, assess the effect of labeling this point + + # Evaluate the effect of the point being labeled negative + _lookahead(problem.points, model_copy, problem.labeled_ixs, + problem.labels, problem.points[unlabeled_ix], + label=0) + s0 = _expected_future_utility(model_copy, test_set, + problem.budget - 1, problem.positive_label) + + # Evaluate the effect of the point being labeled positive + _lookahead(problem.points, model_copy, problem.labeled_ixs, + problem.labels, problem.points[unlabeled_ix], + label=1) + s1 = _expected_future_utility(model_copy, test_set, + problem.budget - 1, problem.positive_label) + + # Compute the score for this point + # This is equal to the probability of it being positive (p1) + # plus the expected number of positives found in the + # "budget - 1" remaining entries if this point is labeled, + # which is equal to the product of the probability of "1" or "0" + # times the number of positives in the top budget-1 if "1" or "0" + chunk_scores.append(p1 + (p0 * s0 + p1 * s1)) + + return chunk_scores diff --git a/active_learning/query_strats/tests/test_active_search.py b/active_learning/query_strats/tests/test_active_search.py new file mode 100644 index 0000000..5af182b --- /dev/null +++ b/active_learning/query_strats/tests/test_active_search.py @@ -0,0 +1,36 @@ +from ..active_search import ActiveSearch +from ..greedy import GreedySearch +from ...tests.test_problem import make_grid_problem +from sklearn.neighbors import KNeighborsClassifier +from sklearn.gaussian_process import GaussianProcessClassifier +from sklearn.gaussian_process.kernels import RBF +from unittest import TestCase +import numpy as np + + +class TestActiveSearch(TestCase): + + def test_active_search(self): + # Make the grid problem with a KNN + model = KNeighborsClassifier(n_neighbors=3) + problem = make_grid_problem() + problem.model = model + problem.positive_label = 1 + problem.budget = 1 + problem.update_model() + + # For a budget of 1, active search should be equal to greedy + active_search = ActiveSearch() + greedy = GreedySearch() + inds, score = active_search.score_all(problem) + greedy_score = greedy._score_chunk(inds, problem) + self.assertTrue(np.isclose(greedy_score, score).all()) + + # Test with a larger lookahead + # Have not figured out a good case to solve by hand, so these test + # results are from a reference implement. + problem.budget = 2 + score = active_search._score_chunk(sorted(inds), problem) + self.assertTrue(np.isclose(score, + [[4./3, 4./3, 4./3, 1]]).all()) + From e9e34c58eef63d7e66a1dfc5170b549edf1ba93c Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 5 Oct 2018 19:07:56 -0600 Subject: [PATCH 12/36] Changed positive_label to target_label Clearer that you want "targets" than "positives" --- active_learning/problem.py | 6 +++--- active_learning/query_strats/active_search.py | 4 ++-- active_learning/query_strats/greedy.py | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/active_learning/problem.py b/active_learning/problem.py index 0245a19..d2b18ef 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -12,7 +12,7 @@ class ActiveLearningProblem: Optionally, you can define the budget of how many points are left to label. """ - def __init__(self, points, labeled_ixs, labels, budget=None, positive_label=1, + def __init__(self, points, labeled_ixs, labels, budget=None, target_label=1, model: BaseEstimator = None): """Set up the active learning problem @@ -21,14 +21,14 @@ def __init__(self, points, labeled_ixs, labels, budget=None, positive_label=1, labeled_ixs ([int]): Indices of points that have been labeled labels (ndarray): Labels for the labeled points, in same order as labeled_ixs budget (int): How many entries are budgeted to be labeled (default: all of them) - positive_label (int): Classification: Which entry is the desired class + target_label (int): Classification: Which entry is the desired class model (BaseEstimator): Machine learning model used to guide training. """ self.points = points self.labeled_ixs = labeled_ixs self.labels = list(labels) - self.positive_label = positive_label + self.target_label = target_label self.model = model # Set the budget diff --git a/active_learning/query_strats/active_search.py b/active_learning/query_strats/active_search.py index 02c069c..4ad4c19 100644 --- a/active_learning/query_strats/active_search.py +++ b/active_learning/query_strats/active_search.py @@ -107,14 +107,14 @@ def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): problem.labels, problem.points[unlabeled_ix], label=0) s0 = _expected_future_utility(model_copy, test_set, - problem.budget - 1, problem.positive_label) + problem.budget - 1, problem.target_label) # Evaluate the effect of the point being labeled positive _lookahead(problem.points, model_copy, problem.labeled_ixs, problem.labels, problem.points[unlabeled_ix], label=1) s1 = _expected_future_utility(model_copy, test_set, - problem.budget - 1, problem.positive_label) + problem.budget - 1, problem.target_label) # Compute the score for this point # This is equal to the probability of it being positive (p1) diff --git a/active_learning/query_strats/greedy.py b/active_learning/query_strats/greedy.py index f2d1793..4ac1e84 100644 --- a/active_learning/query_strats/greedy.py +++ b/active_learning/query_strats/greedy.py @@ -8,4 +8,4 @@ class GreedySearch(IndividualScoreQueryStrategy): def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): probs = problem.model.predict_proba(problem.points[inds]) - return probs[:, problem.positive_label] + return probs[:, problem.target_label] From b77689a30d9491ab8b9ffed3746c07f4d86d7945 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Thu, 11 Oct 2018 16:39:54 -0500 Subject: [PATCH 13/36] WIP: Working on batch active search --- active_learning/problem.py | 10 +- .../query_strats/batch_active_search.py | 148 ++++++++++-------- examples/selection.ipynb | 72 ++++++--- 3 files changed, 138 insertions(+), 92 deletions(-) diff --git a/active_learning/problem.py b/active_learning/problem.py index d2b18ef..88b8341 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -12,7 +12,7 @@ class ActiveLearningProblem: Optionally, you can define the budget of how many points are left to label. """ - def __init__(self, points, labeled_ixs, labels, budget=None, target_label=1, + def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_label=1, model: BaseEstimator = None): """Set up the active learning problem @@ -66,3 +66,11 @@ def update_model(self): self.model.fit(self.points[self.labeled_ixs], self.labels) + + def add_label(self, ind, label): + """Add a label to the labeled set""" + + if ind in self.labeled_ixs: + raise AttributeError('Index already included in labeled set') + self.labeled_ixs.append(ind) + self.labels.append(label) diff --git a/active_learning/query_strats/batch_active_search.py b/active_learning/query_strats/batch_active_search.py index edeb1ce..51c6185 100644 --- a/active_learning/query_strats/batch_active_search.py +++ b/active_learning/query_strats/batch_active_search.py @@ -1,8 +1,9 @@ +from ..problem import ActiveLearningProblem +from . import BaseQueryStrategy +from sklearn.base import BaseEstimator +from copy import deepcopy import numpy as np -from sklearn.base import clone -from .active_search import active_search, _lookahead -from ..selectors import identity_selector """ https://bayesopt.github.io/papers/2017/12.pdf @@ -11,92 +12,101 @@ # ----------------------------------------------------------------------------- # Fictional Oracles to Simulate Sequential # ----------------------------------------------------------------------------- -def _sampling_oracle(model, x: np.array) -> int: - """ - Samples a label according to bernoulli trial with probability of target - from model - :param model: sklearn model trained on the observed samples observed, - as well as the points and fictional labels in the batch so far. - :param x: point to be labeled - """ - probs = model.predict_proba([x]) - probs = probs.reshape(2) - return np.random.binomial(1, probs[1]) -def _most_likely_oracle(model, x): - """ - Return the most likely label for x according to model, i.e.: argmax p(y|x) - :param model: sklearn model trained on the observed samples observed, - as well as the points and fictional labels in the batch so far. - :param x: point to be labeled - :return: - """ - probs = model.predict_proba([x]) - probs = probs.reshape(2) - raise np.argmax(probs) +class FictionalOracle: + """Class to emulate a labeling function""" + def label(self, model: BaseEstimator, x: np.array, target: int): + """Assign a label to a certain data point -def _pessimistic_oracle(model, x) -> 0: - return 0 + Args: + model (BaseEstimator): Model trained on all labeled points + x (ndarray): Point to be "labeled" + target (int): Index of the target class + Returns: + (int) Label for this point + """ + raise NotImplementedError() -def _optimistic_oracle(model, x) -> 1: - raise 1 +class SamplingOracle(FictionalOracle): + """Pick a random label weighted by the predicted probabilities from the model""" + def label(self, model: BaseEstimator, x: np.array, target: int): + probs = model.predict_proba([x]) + probs = probs.reshape(2) + return np.random.binomial(1, probs[1]) + + +class MostLikelyOracle(FictionalOracle): + """Return the most likely label for x according to model, i.e.: argmax p(y|x)""" + def label(self, model: BaseEstimator, x: np.array, target: int): + probs = model.predict_proba([x]) + probs = probs.reshape(2) + raise np.argmax(probs) + + +class PessimisticOracle(FictionalOracle): + """Assume the prediction is not the target class. Assumes that the model binary classification""" + def label(self, model: BaseEstimator, x: np.array, target: int): + return 1 - target + + +class OptimisticOracle(FictionalOracle): + """Assume that the prediction is the target class""" + def label(self, model: BaseEstimator, x: np.array, target: int): + return target _FICTIONAL_ORACLES = { - "sampling": _sampling_oracle, - "most_likely": _most_likely_oracle, - "pessimistic": _pessimistic_oracle, - "optimistic": _optimistic_oracle + "sampling": SamplingOracle(), + "most_likely": MostLikelyOracle(), + "pessimistic": PessimisticOracle(), + "optimistic": OptimisticOracle() } -# ----------------------------------------------------------------------------- -# Two approximations to compute batch -# ----------------------------------------------------------------------------- - -def seq_sim_batch(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **kwargs): - oracle_type = kwargs.get("fictional_oracle", "pessimistic") - fictional_oracle = _FICTIONAL_ORACLES[oracle_type] +class SequentialSimulatedBatchSearch(BaseQueryStrategy): + """Batch active learning strategy where you simulate multiple, sequential steps of an + active learning process. - orig_model = problem['model'] - model = clone(orig_model) - points = problem['points'] + TBD: Better description after reading the paper""" - # accumulate batch - batch_ixs = [] + def __init__(self, query_strategy, fictional_oracle): + """Initialize strategy - X = train_ixs - Y = obs_labels - U = unlabeled_ixs + Args: + query_strategy (BaseQueryStrategy): Strategy to perform sequential selection + fictional_oracle (string): Function used to emulate labeling + """ - for i in range(batch_size): - # use the active search policy to select next point - x = active_search(problem, X, Y, U, 1, **kwargs) - # since we requested only one point, get value of singleton - x = x[0] + self.query_strategy = query_strategy + if isinstance(fictional_oracle, str): + self.fictional_oracle = _FICTIONAL_ORACLES[fictional_oracle] + else: + self.fictional_oracle = fictional_oracle - # Query the fictional oracle - y = fictional_oracle(model, points[x]) + def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + # Make a copy of the active learning problem + # LW 5Oct18: Copying the entire problem could be costly + problem = deepcopy(problem) - # update the sets - batch_ixs.append(x) - X = np.append(X, x) - Y = np.append(Y, y) - U = identity_selector(problem, X, Y, **kwargs) + # Start accumulation for the batch + batch_ixs = [] - problem['model'] = orig_model - return batch_ixs + for _ in range(n_to_select): + # Select a single point + x = self.query_strategy.select_points(problem, 1) + # since we requested only one point, get value of singleton + x = x[0] + batch_ixs.append(x) -def batch_ens_greedy(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, **kwargs): - # accumulate batch - batch_ixs = [] + # Query the fictional oracle + y = self.fictional_oracle.label(problem.model, problem.points[x], problem.target_label) - X = train_ixs - Y = obs_labels - U = unlabeled_ixs + # Update the active learning problem + problem.add_label(x, y) + problem.update_model() - raise NotImplementedError() \ No newline at end of file + return batch_ixs diff --git a/examples/selection.ipynb b/examples/selection.ipynb index f913a61..acc1e7b 100644 --- a/examples/selection.ipynb +++ b/examples/selection.ipynb @@ -11,7 +11,9 @@ { "cell_type": "code", "execution_count": 1, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "import warnings\n", @@ -46,7 +48,9 @@ { "cell_type": "code", "execution_count": 2, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "np.random.seed(0)" @@ -63,7 +67,9 @@ { "cell_type": "code", "execution_count": 3, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "X, y = make_moons(noise=0.1, n_samples=200)" @@ -79,7 +85,9 @@ { "cell_type": "code", "execution_count": 4, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "data = dict(zip(['x1', 'x2'], X.T.tolist()))\n", @@ -97,7 +105,9 @@ { "cell_type": "code", "execution_count": 5, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "data['is_labeled'] = False\n", @@ -114,7 +124,9 @@ { "cell_type": "code", "execution_count": 6, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "xlim = [-1.25, 2.2]\n", @@ -178,7 +190,9 @@ { "cell_type": "code", "execution_count": 8, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "# Our basic classifier will be a SVM with rbf kernel\n", @@ -188,7 +202,9 @@ { "cell_type": "code", "execution_count": 9, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "labeled_subset = data.query('is_labeled == True')" @@ -227,7 +243,9 @@ { "cell_type": "code", "execution_count": 11, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "xx, yy = np.meshgrid(np.linspace(*xlim, 8), np.linspace(*ylim, 8))" @@ -236,7 +254,9 @@ { "cell_type": "code", "execution_count": 12, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "prob = base_clf.predict_proba(list(zip(xx.flatten(), yy.flatten())))[:, 0].reshape(xx.shape, order='C')" @@ -250,7 +270,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 13, @@ -294,7 +314,9 @@ { "cell_type": "code", "execution_count": 14, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "problem = {\n", @@ -343,7 +365,9 @@ { "cell_type": "code", "execution_count": 16, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "unlabeled_ixs = identity_selector(problem, train_ixs, obs_labels)" @@ -374,7 +398,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 998 µs\n" + "Wall time: 0 ns\n" ] } ], @@ -400,7 +424,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 2 ms\n" + "Wall time: 3 ms\n" ] } ], @@ -426,7 +450,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 999 µs\n" + "Wall time: 0 ns\n" ] } ], @@ -452,7 +476,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 4.45 s\n" + "Wall time: 4.55 s\n" ] } ], @@ -478,7 +502,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Wall time: 39.5 s\n" + "Wall time: 40.5 s\n" ] } ], @@ -498,7 +522,9 @@ { "cell_type": "code", "execution_count": 22, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [ "def plot_selection(ax, data, indices): \n", @@ -534,7 +560,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAADSCAYAAABXeTaiAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsnXl8VNX999/nzmQlhH0NEPYdEmQTURZRXFp3rVtdq1ZrbdVH27q0+rjUujz2p61Lf7YVSxVabN0qWsUFATeCICIiO7KTBLJBkpm59/v8ceZO7ty5M5mQBBKYz+uVV+Zu55x7zud+l7N8jxIRUkghhRRSSCGFFFJIIQUN43AXIIUUUkghhRRSSCGFFFoSUgZyCimkkEIKKaSQQgopOOA/3AVoDcjKytpVU1PT7XCXozHIzMzcXV1d3f1wl6M14kho/6ZAikONR2vjUqrNG4bW1r4tAa2NY6k2bl1oDL9Uag5y/VBKSWuvJ6UUIqIOdzlaI46E9m8KpDjUeLQ2LqXavGFobe3bEtDaOJZq49aFxvArNcUihRRSSCGFFFJIIYUUHEgZyCmkkEIKKaSQQgoppOBAykA+SPh8PgoLCxk5ciRnnHEGZWVlTZLu5s2bGTlyZJOklULzwaud7r33Xh577LFmy/PVV19l9erV9d737LPP8re//S3hPStWrGD+/PlNVbQUGondu3dzySWX0L9/f8aOHcukSZN45ZVXmjyfWbNm8dOf/rTJ000hMV555RWUUqxZs6bee2fNmsWOHTsix9dcc01S3319+M9//sOYMWMoKChg+PDh/OlPf2p0mokwbdo0ioqKmjWPlgLbHigoKOCYY47h448/Tnh/WVkZTz/9dL3pNqQOf//735OZmUl5eXm99/7P//wPBw4ciByffvrpTWLD/PWvf2XUqFGMHj2akSNH8tprrzU6zUTo27cvJSUlzZZ+ykA+SGRlZbFixQpWrVpFx44deeqppw53kVI4ghEKhZI2kK+//nouv/zyhPekDOSWAxHh7LPPZsqUKWzcuJFly5Yxd+5ctm3bFnVfKBQ6TCVMobGYM2cOxx9/PHPnzq33XreB/Oc//5nhw4c3Kv9gMMh1113HG2+8wZdffsny5cuZNm1ao9KEFCdt2PbAl19+yUMPPcQdd9yR8P5kDeSGYM6cOYwfPz4px9ptIM+fP5/27ds3Kv9t27bx4IMPsnjxYlauXMmnn37K6NGjG5UmHF6OpQzkJsCkSZPYvn07AFVVVcyYMYNjjjmGUaNGRTyozZs3M2zYMK699lpGjBjBzJkzqa6uBmDZsmUUFBQwadKkKEO7pqaGq666ilGjRjFmzBg++OADQAvQs88+mzPOOIN+/frxxz/+kccff5wxY8Zw7LHHsnfv3kNcAyk4MW3aNH75y18yYcIEBg8ezKJFiwAwTZPbbrst4mH/4Q9/AHT7T506lbFjx3LKKaewc+fOSDp33nknU6dO5eGHH+b111/n9ttvp7CwkA0bNvDcc88xfvx4CgoKOO+88yICz9mT7VWWQCDAb37zG/7xj39QWFjIP/7xDwYNGkRxcTEAlmUxcODAZvXMU6jD+++/T3p6Otdff33kXH5+PjfddBOzZs3iggsu4IwzzmDmzJkAPProo4wfP57Ro0dzzz33RJ75+9//zoQJEygsLOTHP/4xpmkC8PzzzzN48GCmTp3KkiVLAKisrKRfv34Eg0EAKioq6Nu3b+Q4haZDVVUVS5Ys4S9/+UuMgfzII48watQoCgoK+NWvfsXLL79MUVERl156KYWFhVRXV0d6EZ955hl+8YtfRJ6dNWsWN910ExC/7W1UVlYSCoXo1KkTABkZGQwZMgSA4uJizjvvPMaPH8/48eMjHPn888857rjjGDNmDMcddxzffvttJF83J93vYWPevHkxcvBIR0VFBR06dADi2wO/+tWv2LBhA4WFhdx+++1A4+pww4YNVFVV8cADDzBnzpzIeS+d8+STT7Jjxw6mT5/O9OnTgbqe2F/+8pdRhvu9997L//t//w+IL3ds7Nmzh7Zt25KTkwNATk4O/fr1i5Tv1FNPZezYsZxwwgmRkZQ33niDiRMnMmbMGE466SR2794dyfe6665j5syZXH755XF1J8Af/vCHSP0mM0LTIIhI6q+eP11N0WjTpo2IiIRCITn//PPlrbfeEhGRYDAo5eXlIiJSXFwsAwYMEMuyZNOmTeLz+WT58uUiInLBBRfI7NmzRURk1KhR8uGHH4qIyG233SYjRowQEZHHHntMrrzyShER+eabb6R3795SXV0tzz//vAwYMEAqKipkz549kpubK88884yIiNx8883y+9//Pqa84Xc47HXZGv+82n/Tpk2RdrJxzz33yKOPPipTp06VW2+9VURE3nzzTZkxY4aIiDz99NNy7rnnSjAYFBGR0tJSCQQCMmnSJNmzZ4+IiMydO1euuuoqERGZOnWq3HDDDZH0r7jiCpk3b17kuKSkJPL7rrvukieffDKqHHYaXmV5/vnn5cYbb4w8f++990Z489///lfOPffcmHdOcah5uPTEE0/IzTffHHNeRLdTXl6elJaWiohum2uvvVYsyxLTNOV73/ueLFy4UFavXi3f//73JRAIiIjIDTfcIC+88ILs2LFDevfuLXv27JHa2lo57rjjIu1+5ZVXyiuvvCIiIn/6058iPHEi1eaNb9/Zs2fL1VdfLSIikyZNkmXLlomIyPz582XSpEmyf/9+EZFIG0+dOlWWLl0aed4+3rNnjwwYMCBy/tRTT5VFixbFbXs3fvSjH0mXLl3koosukr///e9imqaIiFx88cWyaNEiERHZsmWLDB06VEREysvLI7Lq3XffjcgENycTvYeX7HGjtXHMq40Nw5CCggIZMmSI5ObmSlFRkYgktgec+qOxdXj//ffLfffdJ6ZpSn5+vuzevVtEvHWOiEh+fr4UFxdHnrePv/jiC5kyZUrk/LBhw2TLli1x5Y4ToVBIZs6cKb1795Yrr7xSXn/99ci1E088UdauXSsiIp9++qlMnz5dRET27t0rlmWJiMhzzz0Xedd77rlHjjnmGDlw4EC972Hrvaeeekp+9KMfxdRNY/iVioN8kKiurqawsJDNmzczduxYTj75ZEA7HHfeeScfffQRhmGwffv2iFfUr18/CgsLARg7diybN2+mvLycsrIypk6dCsBll13GW2+9BcDixYsjPQRDhw4lPz+ftWvXAjB9+nTatm1L27ZtadeuHWeccQYAo0aNYuXKlYeuIo5SKOUdNcY+f+655wJ17QywYMECrr/+evx+/dl17NiRVatWsWrVqgh/TNOkR48ekfQuvPDCuGVYtWoVd999N2VlZVRVVXHKKad43udVFjeuvvpqzjrrLG6++Wb++te/ctVVV8XNN4XmxY033sjixYtJT0/nxhtv5OSTT6Zjx44AvPPOO7zzzjuMGTMG0D1U69atY+XKlSxbtozx48cDWj517dqVzz77jGnTptGlSxdA88mWIddccw2PPPIIZ599Ns8//zzPPffcYXjbIx9z5szh5ptvBuCiiy5izpw5HHPMMSxYsICrrrqK7OxsgEgbx0OXLl3o378/n376KYMGDeLbb79l8uTJPPXUU55t78af//xnvvrqKxYsWMBjjz3Gu+++y6xZs1iwYEHU1K2KigoqKyspLy/niiuuYN26dSilokYXnJxM9B7JyJ4jAfYUC4BPPvmEyy+/nFWrViW0B5xobB3OnTuXV155BcMwOPfcc5k3bx433nijp85JhDFjxrBnzx527NhBcXExHTp0oE+fPjz55JOecmfKlCmRZ30+H2+//TZLly7lvffe45ZbbmHZsmXcdtttfPzxx1xwwQWRe2trawE9LePCCy9k586dBAKBSI8zwJlnnklWVlakfuK9h7N+/v3vfyd8v4aixRrI7dt3lh49+sa9LtK443jnkr1ufxDl5eV8//vf56mnnuJnP/sZL774IsXFxSxbtoy0tDT69u1LTU0NoIe1bPh8PqqrqxGRuMaWJCiAMy3DMCLHhmHEnbNTWDhO7KyU0n82oopg59sUleiBZV9+WSIiXRr8oAuHkyOdOnVi3759Uef27t0b+cDt9vD5fJH28GprEWHEiBF88sknnvm0adPGuwDAlVdeyauvvkpBQQGzZs3iww8/9LzPqyxu9O7dm27duvH+++/z2Wef8eKLL3reN27cOAkXnKj/dS8U+1ADObJq9erKmkAgt0EPeaClyxAbI0aM4F//+lfk+KmnnqKkpIRx48YB0RwQEe644w5+/OMfR6Xxhz/8gSuuuIKHHnoo6vyrr74aV75MnjyZzZs3s3DhQkzTjLs4uKBAt7lTdtj/W7MMORT8KC0t5f3332fVqlUopTBNE6UUjzzySELZHw8XXngh//znPxk6dCjnnHOOHePVs+29MGrUKEaNGsVll11Gv379mDVrFpZl8cknn0SMERs33XQT06dP55VXXmHz5s1Rc5bdnIz3HsnIHoBxxxwTLVecaME6xguTJk2ipKSE4uJi5s+fH9cecKIxdbhy5UrWrVsX6WQJBAL079+fG2+88aA4dv755/Pyyy+za9cuLrrookj5vOSOG0opJkyYwIQJEzj55JO56qqruPXWW2nfvn3EgXDipptu4tZbb+XMM8/kww8/5N57741ca0qOjSssjCJRsjqmxRrIPXr05YUX9OpNy6o775S79nn7t0j0b/tZ93XnNa+0bNjnLrggPsHatWvHk08+yVlnncUNN9xAeXk5Xbt2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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAADSCAYAAABXeTaiAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsnXl8VNX999/nzmQlhH0NEPYdEmQTURZRXFp3rVtdq1ZrbdVH27q0+rjUujz2p61Lf7YVSxVabN0qWsUFATeCICIiO7KTBLJBkpm59/v8ceZO7ty5M5mQBBKYz+uVV+Zu55x7zud+l7N8jxIRUkghhRRSSCGFFFJIIQUN43AXIIUUUkghhRRSSCGFFFoSUgZyCimkkEIKKaSQQgopOOA/3AVoDcjKytpVU1PT7XCXozHIzMzcXV1d3f1wl6M14kho/6ZAikONR2vjUqrNG4bW1r4tAa2NY6k2bl1oDL9Uag5y/VBKSWuvJ6UUIqIOdzlaI46E9m8KpDjUeLQ2LqXavGFobe3bEtDaOJZq49aFxvArNcUihRRSSCGFFFJIIYUUHEgZyCmkkEIKKaSQQgoppOBAykA+SPh8PgoLCxk5ciRnnHEGZWVlTZLu5s2bGTlyZJOklULzwaud7r33Xh577LFmy/PVV19l9erV9d737LPP8re//S3hPStWrGD+/PlNVbQUGondu3dzySWX0L9/f8aOHcukSZN45ZVXmjyfWbNm8dOf/rTJ000hMV555RWUUqxZs6bee2fNmsWOHTsix9dcc01S3319+M9//sOYMWMoKChg+PDh/OlPf2p0mokwbdo0ioqKmjWPlgLbHigoKOCYY47h448/Tnh/WVkZTz/9dL3pNqQOf//735OZmUl5eXm99/7P//wPBw4ciByffvrpTWLD/PWvf2XUqFGMHj2akSNH8tprrzU6zUTo27cvJSUlzZZ+ykA+SGRlZbFixQpWrVpFx44deeqppw53kVI4ghEKhZI2kK+//nouv/zyhPekDOSWAxHh7LPPZsqUKWzcuJFly5Yxd+5ctm3bFnVfKBQ6TCVMobGYM2cOxx9/PHPnzq33XreB/Oc//5nhw4c3Kv9gMMh1113HG2+8wZdffsny5cuZNm1ao9KEFCdt2PbAl19+yUMPPcQdd9yR8P5kDeSGYM6cOYwfPz4px9ptIM+fP5/27ds3Kv9t27bx4IMPsnjxYlauXMmnn37K6NGjG5UmHF6OpQzkJsCkSZPYvn07AFVVVcyYMYNjjjmGUaNGRTyozZs3M2zYMK699lpGjBjBzJkzqa6uBmDZsmUUFBQwadKkKEO7pqaGq666ilGjRjFmzBg++OADQAvQs88+mzPOOIN+/frxxz/+kccff5wxY8Zw7LHHsnfv3kNcAyk4MW3aNH75y18yYcIEBg8ezKJFiwAwTZPbbrst4mH/4Q9/AHT7T506lbFjx3LKKaewc+fOSDp33nknU6dO5eGHH+b111/n9ttvp7CwkA0bNvDcc88xfvx4CgoKOO+88yICz9mT7VWWQCDAb37zG/7xj39QWFjIP/7xDwYNGkRxcTEAlmUxcODAZvXMU6jD+++/T3p6Otdff33kXH5+PjfddBOzZs3iggsu4IwzzmDmzJkAPProo4wfP57Ro0dzzz33RJ75+9//zoQJEygsLOTHP/4xpmkC8PzzzzN48GCmTp3KkiVLAKisrKRfv34Eg0EAKioq6Nu3b+Q4haZDVVUVS5Ys4S9/+UuMgfzII48watQoCgoK+NWvfsXLL79MUVERl156KYWFhVRXV0d6EZ955hl+8YtfRJ6dNWsWN910ExC/7W1UVlYSCoXo1KkTABkZGQwZMgSA4uJizjvvPMaPH8/48eMjHPn888857rjjGDNmDMcddxzffvttJF83J93vYWPevHkxcvBIR0VFBR06dADi2wO/+tWv2LBhA4WFhdx+++1A4+pww4YNVFVV8cADDzBnzpzIeS+d8+STT7Jjxw6mT5/O9OnTgbqe2F/+8pdRhvu9997L//t//w+IL3ds7Nmzh7Zt25KTkwNATk4O/fr1i5Tv1FNPZezYsZxwwgmRkZQ33niDiRMnMmbMGE466SR2794dyfe6665j5syZXH755XF1J8Af/vCHSP0mM0LTIIhI6q+eP11N0WjTpo2IiIRCITn//PPlrbfeEhGRYDAo5eXlIiJSXFwsAwYMEMuyZNOmTeLz+WT58uUiInLBBRfI7NmzRURk1KhR8uGHH4qIyG233SYjRowQEZHHHntMrrzyShER+eabb6R3795SXV0tzz//vAwYMEAqKipkz549kpubK88884yIiNx8883y+9//Pqa84Xc47HXZGv+82n/Tpk2RdrJxzz33yKOPPipTp06VW2+9VURE3nzzTZkxY4aIiDz99NNy7rnnSjAYFBGR0tJSCQQCMmnSJNmzZ4+IiMydO1euuuoqERGZOnWq3HDDDZH0r7jiCpk3b17kuKSkJPL7rrvukieffDKqHHYaXmV5/vnn5cYbb4w8f++990Z489///lfOPffcmHdOcah5uPTEE0/IzTffHHNeRLdTXl6elJaWiohum2uvvVYsyxLTNOV73/ueLFy4UFavXi3f//73JRAIiIjIDTfcIC+88ILs2LFDevfuLXv27JHa2lo57rjjIu1+5ZVXyiuvvCIiIn/6058iPHEi1eaNb9/Zs2fL1VdfLSIikyZNkmXLlomIyPz582XSpEmyf/9+EZFIG0+dOlWWLl0aed4+3rNnjwwYMCBy/tRTT5VFixbFbXs3fvSjH0mXLl3koosukr///e9imqaIiFx88cWyaNEiERHZsmWLDB06VEREysvLI7Lq3XffjcgENycTvYeX7HGjtXHMq40Nw5CCggIZMmSI5ObmSlFRkYgktgec+qOxdXj//ffLfffdJ6ZpSn5+vuzevVtEvHWOiEh+fr4UFxdHnrePv/jiC5kyZUrk/LBhw2TLli1x5Y4ToVBIZs6cKb1795Yrr7xSXn/99ci1E088UdauXSsiIp9++qlMnz5dRET27t0rlmWJiMhzzz0Xedd77rlHjjnmGDlw4EC972Hrvaeeekp+9KMfxdRNY/iVioN8kKiurqawsJDNmzczduxYTj75ZEA7HHfeeScfffQRhmGwffv2iFfUr18/CgsLARg7diybN2+mvLycsrIypk6dCsBll13GW2+9BcDixYsjPQRDhw4lPz+ftWvXAjB9+nTatm1L27ZtadeuHWeccQYAo0aNYuXKlYeuIo5SKOUdNcY+f+655wJ17QywYMECrr/+evx+/dl17NiRVatWsWrVqgh/TNOkR48ekfQuvPDCuGVYtWoVd999N2VlZVRVVXHKKad43udVFjeuvvpqzjrrLG6++Wb++te/ctVVV8XNN4XmxY033sjixYtJT0/nxhtv5OSTT6Zjx44AvPPOO7zzzjuMGTMG0D1U69atY+XKlSxbtozx48cDWj517dqVzz77jGnTptGlSxdA88mWIddccw2PPPIIZ599Ns8//zzPPffcYXjbIx9z5szh5ptvBuCiiy5izpw5HHPMMSxYsICrrrqK7OxsgEgbx0OXLl3o378/n376KYMGDeLbb79l8uTJPPXUU55t78af//xnvvrqKxYsWMBjjz3Gu+++y6xZs1iwYEHU1K2KigoqKyspLy/niiuuYN26dSilokYXnJxM9B7JyJ4jAfYUC4BPPvmEyy+/nFWrViW0B5xobB3OnTuXV155BcMwOPfcc5k3bx433nijp85JhDFjxrBnzx527NhBcXExHTp0oE+fPjz55JOecmfKlCmRZ30+H2+//TZLly7lvffe45ZbbmHZsmXcdtttfPzxx1xwwQWRe2trawE9LePCCy9k586dBAKBSI8zwJlnnklWVlakfuK9h7N+/v3vfyd8v4aixRrI7dt3lh49+sa9LtK443jnkr1ufxDl5eV8//vf56mnnuJnP/sZL774IsXFxSxbtoy0tDT69u1LTU0NoIe1bPh8PqqrqxGRuMaWJCiAMy3DMCLHhmHEnbNTWDhO7KyU0n82oopg59sUleiBZV9+WSIiXRr8oAuHkyOdOnVi3759Uef27t0b+cDt9vD5fJH28GprEWHEiBF88sknnvm0adPGuwDAlVdeyauvvkpBQQGzZs3iww8/9LzPqyxu9O7dm27duvH+++/z2Wef8eKLL3reN27cOAkXnKj/dS8U+1ADObJq9erKmkAgt0EPeaClyxAbI0aM4F//+lfk+KmnnqKkpIRx48YB0RwQEe644w5+/OMfR6Xxhz/8gSuuuIKHHnoo6vyrr74aV75MnjyZzZs3s3DhQkzTjLs4uKBAt7lTdtj/W7MMORT8KC0t5f3332fVqlUopTBNE6UUjzzySELZHw8XXngh//znPxk6dCjnnHOOHePVs+29MGrUKEaNGsVll11Gv379mDVrFpZl8cknn0SMERs33XQT06dP55VXXmHz5s1Rc5bdnIz3HsnIHoBxxxwTLVecaME6xguTJk2ipKSE4uJi5s+fH9cecKIxdbhy5UrWrVsX6WQJBAL079+fG2+88aA4dv755/Pyyy+za9cuLrrookj5vOSOG0opJkyYwIQJEzj55JO56qqruPXWW2nfvn3EgXDipptu4tZbb+XMM8/kww8/5N57741ca0qOjSssjCJRsjqmxRrIPXr05YUX9OpNy6o775S79nn7t0j0b/tZ93XnNa+0bNjnLrggPsHatWvHk08+yVlnncUNN9xAeXk5Xbt2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\n", "text/plain": [ "
" ] @@ -572,7 +598,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "collapsed": true + }, "outputs": [], "source": [] } @@ -593,7 +621,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.3" + "version": "3.6.6" } }, "nbformat": 4, From 55c33e96a6a01daab520580ddda69ab673848b13 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Thu, 1 Nov 2018 08:45:18 -0500 Subject: [PATCH 14/36] Revised Batch Active Search --- active_learning/problem.py | 12 ++++++++---- .../query_strats/batch_active_search.py | 15 ++++++++++++--- .../tests/test_batch_active_search.py | 17 +++++++++++++++++ active_learning/tests/test_problem.py | 4 ++-- 4 files changed, 39 insertions(+), 9 deletions(-) create mode 100644 active_learning/query_strats/tests/test_batch_active_search.py diff --git a/active_learning/problem.py b/active_learning/problem.py index 88b8341..8e501b5 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -25,6 +25,7 @@ def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_l model (BaseEstimator): Machine learning model used to guide training. """ + # TODO: Add batch size and support for grouping points together -lw self.points = points self.labeled_ixs = labeled_ixs self.labels = list(labels) @@ -55,17 +56,20 @@ def get_unlabeled_ixs(self) -> List[int]: """Get a list of the unlabeled indices Returns: - ([int]) Unlabelled indices + ([int]) Unlabeled indices """ return list( set(range(len(self.points))).difference(self.labeled_ixs) ) def update_model(self): - """Update the machine learning model given the current labeled set""" + """Update the machine learning model given the current labeled set - self.model.fit(self.points[self.labeled_ixs], - self.labels) + Note: If there is no model, the model does nothing""" + + if self.model is not None: + self.model.fit(self.points[self.labeled_ixs], + self.labels) def add_label(self, ind, label): """Add a label to the labeled set""" diff --git a/active_learning/query_strats/batch_active_search.py b/active_learning/query_strats/batch_active_search.py index 51c6185..67a81ec 100644 --- a/active_learning/query_strats/batch_active_search.py +++ b/active_learning/query_strats/batch_active_search.py @@ -2,6 +2,7 @@ from . import BaseQueryStrategy from sklearn.base import BaseEstimator from copy import deepcopy +from typing import Union import numpy as np @@ -72,7 +73,8 @@ class SequentialSimulatedBatchSearch(BaseQueryStrategy): TBD: Better description after reading the paper""" - def __init__(self, query_strategy, fictional_oracle): + def __init__(self, query_strategy: BaseQueryStrategy, + fictional_oracle: Union[str, FictionalOracle]): """Initialize strategy Args: @@ -88,13 +90,13 @@ def __init__(self, query_strategy, fictional_oracle): def select_points(self, problem: ActiveLearningProblem, n_to_select: int): # Make a copy of the active learning problem - # LW 5Oct18: Copying the entire problem could be costly + # TODO: Copying the entire problem could be costly. Could we just copy model/labels? -lw problem = deepcopy(problem) # Start accumulation for the batch batch_ixs = [] - for _ in range(n_to_select): + for _ in range(n_to_select - 1): # Select a single point x = self.query_strategy.select_points(problem, 1) @@ -109,4 +111,11 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): problem.add_label(x, y) problem.update_model() + # Select a single point + x = self.query_strategy.select_points(problem, 1) + + # since we requested only one point, get value of singleton + x = x[0] + batch_ixs.append(x) + return batch_ixs diff --git a/active_learning/query_strats/tests/test_batch_active_search.py b/active_learning/query_strats/tests/test_batch_active_search.py new file mode 100644 index 0000000..da85adb --- /dev/null +++ b/active_learning/query_strats/tests/test_batch_active_search.py @@ -0,0 +1,17 @@ +from active_learning.query_strats.batch_active_search import SequentialSimulatedBatchSearch +from active_learning.query_strats.random_sampling import RandomQuery +from active_learning.tests.test_problem import make_grid_problem +from unittest import TestCase + + +class TestBatch(TestCase): + + def test_seq_sim(self): + problem = make_grid_problem() + + # Make sure the code works. + # TODO: Figure out a batch active learning problem we can model analytically -lw + query_strat = RandomQuery() + seq_sim = SequentialSimulatedBatchSearch(query_strat, 'pessimistic') + points = seq_sim.select_points(problem, 3) + self.assertEqual(3, len(points)) diff --git a/active_learning/tests/test_problem.py b/active_learning/tests/test_problem.py index e736f23..291e8e7 100644 --- a/active_learning/tests/test_problem.py +++ b/active_learning/tests/test_problem.py @@ -23,7 +23,7 @@ def make_grid_problem(): # Make the active learning problem return ActiveLearningProblem.from_labeled_and_unlabled(x_known, x_labels, x_unlabeled, - positive_label=1) + target_label=1) class TestProblem(TestCase): @@ -34,4 +34,4 @@ def test_grid(self): self.assertEqual((9, 2), prob.points.shape) self.assertListEqual(list(range(5)), prob.labeled_ixs) self.assertListEqual(list(range(5, 9)), prob.get_unlabeled_ixs()) - self.assertEqual(1, prob.positive_label) + self.assertEqual(1, prob.target_label) From 6c7856aa6cc4bf5c555b8fd46b1cd6803d194e1a Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Thu, 1 Nov 2018 08:53:02 -0500 Subject: [PATCH 15/36] Separated classification and regression strategies --- active_learning/active_learning.py | 5 +++-- active_learning/query_strats/batch_active_search.py | 1 + .../query_strats/classification/__init__.py | 1 + .../{ => classification}/active_search.py | 4 ++-- .../query_strats/{ => classification}/greedy.py | 2 +- .../{ => classification}/tests/test_active_search.py | 12 ++++++------ .../{ => classification}/tests/test_greedy.py | 8 +++++--- .../{ => classification}/tests/test_uncertainty.py | 8 +++++--- .../{ => classification}/uncertainty_sampling.py | 4 ++-- active_learning/query_strats/regression/__init__.py | 1 + .../{ => regression}/greedy_regression.py | 0 .../query_strats/{ => regression}/mcal_regression.py | 0 .../query_strats/{ => regression}/rfr_balanced.py | 0 .../query_strats/{ => regression}/rfr_variance.py | 0 active_learning/query_strats/tests/__init__.py | 0 active_learning/query_strats/tests/test_random.py | 4 ++-- active_learning/ss_active_learning.py | 7 +++---- 17 files changed, 32 insertions(+), 25 deletions(-) create mode 100644 active_learning/query_strats/classification/__init__.py rename active_learning/query_strats/{ => classification}/active_search.py (97%) rename active_learning/query_strats/{ => classification}/greedy.py (85%) rename active_learning/query_strats/{ => classification}/tests/test_active_search.py (82%) rename active_learning/query_strats/{ => classification}/tests/test_greedy.py (81%) rename active_learning/query_strats/{ => classification}/tests/test_uncertainty.py (80%) rename active_learning/query_strats/{ => classification}/uncertainty_sampling.py (76%) create mode 100644 active_learning/query_strats/regression/__init__.py rename active_learning/query_strats/{ => regression}/greedy_regression.py (100%) rename active_learning/query_strats/{ => regression}/mcal_regression.py (100%) rename active_learning/query_strats/{ => regression}/rfr_balanced.py (100%) rename active_learning/query_strats/{ => regression}/rfr_variance.py (100%) delete mode 100644 active_learning/query_strats/tests/__init__.py diff --git a/active_learning/active_learning.py b/active_learning/active_learning.py index 273dedb..c7654eb 100644 --- a/active_learning/active_learning.py +++ b/active_learning/active_learning.py @@ -1,9 +1,10 @@ import logging -import numpy as np from collections import Iterable + +import numpy as np from tqdm import tqdm -from active_learning.query_strats import uncertainty_sampling +from active_learning.query_strats.classification import uncertainty_sampling from active_learning.selectors import identity_selector diff --git a/active_learning/query_strats/batch_active_search.py b/active_learning/query_strats/batch_active_search.py index 67a81ec..b29e881 100644 --- a/active_learning/query_strats/batch_active_search.py +++ b/active_learning/query_strats/batch_active_search.py @@ -14,6 +14,7 @@ # Fictional Oracles to Simulate Sequential # ----------------------------------------------------------------------------- +# TODO: Add oracles for regression problems class FictionalOracle: """Class to emulate a labeling function""" diff --git a/active_learning/query_strats/classification/__init__.py b/active_learning/query_strats/classification/__init__.py new file mode 100644 index 0000000..bfeeabe --- /dev/null +++ b/active_learning/query_strats/classification/__init__.py @@ -0,0 +1 @@ +"""Query strategies specific to classification problems""" diff --git a/active_learning/query_strats/active_search.py b/active_learning/query_strats/classification/active_search.py similarity index 97% rename from active_learning/query_strats/active_search.py rename to active_learning/query_strats/classification/active_search.py index 4ad4c19..327096b 100644 --- a/active_learning/query_strats/active_search.py +++ b/active_learning/query_strats/classification/active_search.py @@ -1,6 +1,6 @@ from sklearn.base import BaseEstimator, clone -from ..problem import ActiveLearningProblem -from . import IndividualScoreQueryStrategy +from active_learning.problem import ActiveLearningProblem +from active_learning.query_strats import IndividualScoreQueryStrategy from typing import List import numpy as np diff --git a/active_learning/query_strats/greedy.py b/active_learning/query_strats/classification/greedy.py similarity index 85% rename from active_learning/query_strats/greedy.py rename to active_learning/query_strats/classification/greedy.py index 4ac1e84..f32e3c9 100644 --- a/active_learning/query_strats/greedy.py +++ b/active_learning/query_strats/classification/greedy.py @@ -1,5 +1,5 @@ from active_learning.problem import ActiveLearningProblem -from . import IndividualScoreQueryStrategy +from active_learning.query_strats import IndividualScoreQueryStrategy from typing import List diff --git a/active_learning/query_strats/tests/test_active_search.py b/active_learning/query_strats/classification/tests/test_active_search.py similarity index 82% rename from active_learning/query_strats/tests/test_active_search.py rename to active_learning/query_strats/classification/tests/test_active_search.py index 5af182b..8ba6bac 100644 --- a/active_learning/query_strats/tests/test_active_search.py +++ b/active_learning/query_strats/classification/tests/test_active_search.py @@ -1,11 +1,11 @@ -from ..active_search import ActiveSearch -from ..greedy import GreedySearch -from ...tests.test_problem import make_grid_problem -from sklearn.neighbors import KNeighborsClassifier -from sklearn.gaussian_process import GaussianProcessClassifier -from sklearn.gaussian_process.kernels import RBF from unittest import TestCase + import numpy as np +from sklearn.neighbors import KNeighborsClassifier + +from active_learning.query_strats.classification.active_search import ActiveSearch +from active_learning.query_strats.classification.greedy import GreedySearch +from active_learning.tests.test_problem import make_grid_problem class TestActiveSearch(TestCase): diff --git a/active_learning/query_strats/tests/test_greedy.py b/active_learning/query_strats/classification/tests/test_greedy.py similarity index 81% rename from active_learning/query_strats/tests/test_greedy.py rename to active_learning/query_strats/classification/tests/test_greedy.py index 89bb11b..604167d 100644 --- a/active_learning/query_strats/tests/test_greedy.py +++ b/active_learning/query_strats/classification/tests/test_greedy.py @@ -1,8 +1,10 @@ -from ..greedy import GreedySearch -from ...tests.test_problem import make_grid_problem -from sklearn.neighbors import KNeighborsClassifier from unittest import TestCase + import numpy as np +from sklearn.neighbors import KNeighborsClassifier + +from active_learning.query_strats.classification.greedy import GreedySearch +from active_learning.tests.test_problem import make_grid_problem class TestGreedy(TestCase): diff --git a/active_learning/query_strats/tests/test_uncertainty.py b/active_learning/query_strats/classification/tests/test_uncertainty.py similarity index 80% rename from active_learning/query_strats/tests/test_uncertainty.py rename to active_learning/query_strats/classification/tests/test_uncertainty.py index 0d833f7..85a03f4 100644 --- a/active_learning/query_strats/tests/test_uncertainty.py +++ b/active_learning/query_strats/classification/tests/test_uncertainty.py @@ -1,8 +1,10 @@ -from ..uncertainty_sampling import UncertaintySampling -from ...tests.test_problem import make_grid_problem -from sklearn.neighbors import KNeighborsClassifier from unittest import TestCase + import numpy as np +from sklearn.neighbors import KNeighborsClassifier + +from active_learning.query_strats.classification.uncertainty_sampling import UncertaintySampling +from active_learning.tests.test_problem import make_grid_problem class TestUncertainty(TestCase): diff --git a/active_learning/query_strats/uncertainty_sampling.py b/active_learning/query_strats/classification/uncertainty_sampling.py similarity index 76% rename from active_learning/query_strats/uncertainty_sampling.py rename to active_learning/query_strats/classification/uncertainty_sampling.py index ab201da..56b2849 100644 --- a/active_learning/query_strats/uncertainty_sampling.py +++ b/active_learning/query_strats/classification/uncertainty_sampling.py @@ -1,5 +1,5 @@ -from ..problem import ActiveLearningProblem -from . import IndividualScoreQueryStrategy +from active_learning.problem import ActiveLearningProblem +from active_learning.query_strats import IndividualScoreQueryStrategy from typing import List import numpy as np diff --git a/active_learning/query_strats/regression/__init__.py b/active_learning/query_strats/regression/__init__.py new file mode 100644 index 0000000..c7ff3bf --- /dev/null +++ b/active_learning/query_strats/regression/__init__.py @@ -0,0 +1 @@ +"""Query strategies specific to regression problems""" diff --git a/active_learning/query_strats/greedy_regression.py b/active_learning/query_strats/regression/greedy_regression.py similarity index 100% rename from active_learning/query_strats/greedy_regression.py rename to active_learning/query_strats/regression/greedy_regression.py diff --git a/active_learning/query_strats/mcal_regression.py b/active_learning/query_strats/regression/mcal_regression.py similarity index 100% rename from active_learning/query_strats/mcal_regression.py rename to active_learning/query_strats/regression/mcal_regression.py diff --git a/active_learning/query_strats/rfr_balanced.py b/active_learning/query_strats/regression/rfr_balanced.py similarity index 100% rename from active_learning/query_strats/rfr_balanced.py rename to active_learning/query_strats/regression/rfr_balanced.py diff --git a/active_learning/query_strats/rfr_variance.py b/active_learning/query_strats/regression/rfr_variance.py similarity index 100% rename from active_learning/query_strats/rfr_variance.py rename to active_learning/query_strats/regression/rfr_variance.py diff --git a/active_learning/query_strats/tests/__init__.py b/active_learning/query_strats/tests/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/active_learning/query_strats/tests/test_random.py b/active_learning/query_strats/tests/test_random.py index 2815f39..cbd758b 100644 --- a/active_learning/query_strats/tests/test_random.py +++ b/active_learning/query_strats/tests/test_random.py @@ -1,5 +1,5 @@ -from ...tests.test_problem import make_grid_problem -from ..random_sampling import RandomQuery +from active_learning.tests.test_problem import make_grid_problem +from active_learning.query_strats.random_sampling import RandomQuery from unittest import TestCase diff --git a/active_learning/ss_active_learning.py b/active_learning/ss_active_learning.py index 4ebe6d9..16560d9 100644 --- a/active_learning/ss_active_learning.py +++ b/active_learning/ss_active_learning.py @@ -1,12 +1,11 @@ import logging -import numpy as np - -#TODO: make this query a kNN sort of model or maybe clustering for predicting how likely +# TODO: make this query a kNN sort of model or maybe clustering for predicting how likely from collections import Iterable +import numpy as np from sklearn.svm import SVC -from active_learning.query_strats import uncertainty_sampling +from active_learning.query_strats.classification import uncertainty_sampling from active_learning.selectors import identity_selector From 310d1094a556ae93f8d6ccacd645435459317520 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 2 Nov 2018 19:07:48 -0500 Subject: [PATCH 16/36] Added Three Ds --- .../classification/tests/test_three_ds.py | 26 ++++ .../query_strats/classification/three_ds.py | 116 ++++++++++++++++++ active_learning/query_strats/three_ds.py | 71 ----------- 3 files changed, 142 insertions(+), 71 deletions(-) create mode 100644 active_learning/query_strats/classification/tests/test_three_ds.py create mode 100644 active_learning/query_strats/classification/three_ds.py delete mode 100644 active_learning/query_strats/three_ds.py diff --git a/active_learning/query_strats/classification/tests/test_three_ds.py b/active_learning/query_strats/classification/tests/test_three_ds.py new file mode 100644 index 0000000..79841c8 --- /dev/null +++ b/active_learning/query_strats/classification/tests/test_three_ds.py @@ -0,0 +1,26 @@ +from unittest import TestCase + +import numpy as np +from sklearn.neighbors import KNeighborsClassifier + +from active_learning.query_strats.classification.three_ds import ThreeDs +from active_learning.tests.test_problem import make_grid_problem + + +class TestUncertainty(TestCase): + + def test_uncertainty(self): + # Make the grid problem with a KNN + model = KNeighborsClassifier(n_neighbors=3) + problem = make_grid_problem() + problem.model = model + problem.update_model() + + # Run the selection + d = ThreeDs() + pts = d.select_points(problem, 4) + self.assertEqual(4, len(set(pts))) + + d.dwc = 0 + pts = d.select_points(problem, 4) + self.assertEqual(4, len(set(pts))) diff --git a/active_learning/query_strats/classification/three_ds.py b/active_learning/query_strats/classification/three_ds.py new file mode 100644 index 0000000..1a4d72e --- /dev/null +++ b/active_learning/query_strats/classification/three_ds.py @@ -0,0 +1,116 @@ +from active_learning.query_strats import BaseQueryStrategy +from active_learning.problem import ActiveLearningProblem +from sklearn.mixture.base import BaseMixture +from sklearn.mixture import GaussianMixture +from typing import List +import numpy as np + + +def _calc_diversities(gmm: BaseMixture, points: np.ndarray, + S: List[int], X_test: np.ndarray): + """Compute the diversity of points in the unlabeled set + + Args: + gmm (BaseMixture): Gaussian mixture model trained on the labeled points + points (ndarray): All points in the problem space + S ([int]): Points that have already been selected in this batch + X_test ([int]): Possible points to include in the + Returns: + (np.ndarray) Diversity score for each point + """ + S_scores = gmm.score(points[S]) + S_score = np.sum(S_scores) + + # LW 2Nov18: I think this is correct, but the state of S does not change the point with highest score + log_probs = gmm.score_samples(X_test) + scores = -(log_probs + S_score) / (len(S) + 1) + + return scores + + +class ThreeDs(BaseQueryStrategy): + """Select points based on distance, density, and diversity. + + Based on work by [Reitmaier and Sick](http://ieeexplore.ieee.org/document/5949421/). + + Distance is based on how far a point is from the decision boundary. The distance is computed + based on the ratio between the probability of the 1st and 2nd-most likely classes. Points + farther from the boundary are more distant. + + Density is related to whether the points are in regions with many points in the search space. + The density is determined by the probability an entry is from the search space given a Gaussian + mixture model. Points with a higher density are desirable. + + Diversity is achieved by selecting a set of points with large differences between each other. + The algorithm assumes the distribution of point in the set is equal to the search space, + so the effect of this factor is to pick points in low-density regions. + """ + + def __init__(self, dwc: float=0.5, gmm: BaseMixture=GaussianMixture()): + """Initialize the strategy + + Args: + dwc (float): Diversity weighting coefficient (larger to weigh diversity more) + """ + + self.dwc = dwc + self.gmm = gmm + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + # Get the model and search space + points = problem.points + model = problem.model + + # Get the labeled and unlabeled indices + L = problem.labeled_ixs + U = problem.get_unlabeled_ixs() + + # Separate the model into the labeled and unlabeled points + X_train = points[L] + X_test = points[U] + + # calculate weighting factor + probs = model.predict_proba(X_test) + eps = 1.0 / len(probs) * np.sum(1 - np.argmax(probs, axis=1)) + + # pseudo-distance that works on models that do not have a real decision boundary + probs = np.apply_along_axis(np.sort, 1, probs) + c1 = probs[:, -1] + c2 = probs[:, -2] + distances = np.log(c1) - np.log(c2) # Only work for binary classification + + # density function via mixture model + # The paper describes traininng the model with initial unlabled set and a small labeled set + # As we do not assume the unlabled set is the initial one or that the labeled set is small, + # I use the entire search space to train a mixture model. + self.gmm.fit(points) + densities = np.exp(self.gmm.score_samples(X_test)) + + # select the first point + x = np.argmax((1-eps) * (1-distances) + eps * densities) + S = [U.pop(x)] + + # Update the tests + X_test = np.delete(X_test, x, 0) + distances = np.delete(distances, x, 0) + densities = np.delete(densities, x, 0) + + # Get the weighting factors + alpha = (1 - self.dwc) * (1 - eps) # coefficient normalization + beta = (1 - self.dwc) - alpha # coefficient normalization + + # Pick points considering density + while len(S) < n_to_select: + # Generate the densities of the test set + diversities = _calc_diversities(self.gmm, points, S, X_test) + + # Select the maximum point + x = np.argmax(alpha*(1-distances) + beta*densities + self.dwc*diversities) + S.append(U.pop(x)) + + # Update the tests + X_test = np.delete(X_test, x, 0) + distances = np.delete(distances, x, 0) + densities = np.delete(densities, x, 0) + + return S diff --git a/active_learning/query_strats/three_ds.py b/active_learning/query_strats/three_ds.py deleted file mode 100644 index cd6cecb..0000000 --- a/active_learning/query_strats/three_ds.py +++ /dev/null @@ -1,71 +0,0 @@ -import numpy as np -from sklearn.mixture import GaussianMixture - - -def _calc_diversities(gmm, points, S, X_test): - S_scores = gmm.score(points[S]) - S_score = np.sum(S_scores) - - log_probs = gmm.score(X_test) - scores = -(log_probs + S_score) / (len(S) + 1) - - return scores - - -def three_ds(problem, L, obs_labels, U, batch_size, **kwargs): - """ - Selects points based on distance, density, and diversity as found in - https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5949421 - Importantly: - * distance(x) = log[ p(c1|x) / p(c2|x) ] - where :math:`c1 = argmax_{c} p(c|x)` and :math:`c2 = argmax_{C\setminus\{c1\}} p(c|x)`. - * density(x) = p(x) - according to the mixture model used (Gaussian Mixture Model) - - :param problem: - :param L: np.ndarray of the indices of labeled points - :param obs_labels: - :param U: np.ndarray of the indices of unlabeled points - :param score: - :param batch_size: - :param kwargs: - :return: - """ - points = problem['points'] - model = problem['model'] - - dwc = kwargs.get("dwc", 0.5) # diversity weighting coefficient - - X_train = points[L] - X_test = points[U] - - # calculate weighting factor - probs = model.predict_proba(X_test) - eps = 1.0 / len(probs) * np.sum(1 - np.argmax(probs, axis=1)) - - # pseudo-distance that works on models that do not have a real decision boundary - log_probs = np.log(probs) - maxes = log_probs.max(axis=1) - mins = log_probs.min(axis=1) - distances = maxes - mins - - # density function via mixture model - gmm = GaussianMixture() - gmm.fit(X_train) - densities = gmm.score_samples(X_test) - - # select the first point - x = U[np.argmax((1-eps) * (1-distances) + eps * densities)] - - alpha = (1 - dwc) * (1 - eps) # coefficient normalization - beta = (1 - dwc) - alpha # coefficient normalization - - S = np.array([x], dtype=int) - - while len(S) < batch_size: - diversities = _calc_diversities(gmm, points, S, X_test) - x = U[np.argmax(alpha*(1-distances) + beta*densities + dwc*diversities)] - - S = np.append(S, x) - - return S \ No newline at end of file From fa2948357b3ba4eb9f976d653d87fdccc734f7d8 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Fri, 2 Nov 2018 19:11:54 -0500 Subject: [PATCH 17/36] Removed scoring functions, which are no longer used --- active_learning/scoring/__init__.py | 3 -- .../scoring/information_density.py | 41 ------------------- active_learning/scoring/marginal_entropy.py | 31 -------------- active_learning/scoring/probability.py | 23 ----------- 4 files changed, 98 deletions(-) delete mode 100644 active_learning/scoring/__init__.py delete mode 100644 active_learning/scoring/information_density.py delete mode 100644 active_learning/scoring/marginal_entropy.py delete mode 100644 active_learning/scoring/probability.py diff --git a/active_learning/scoring/__init__.py b/active_learning/scoring/__init__.py deleted file mode 100644 index 645224f..0000000 --- a/active_learning/scoring/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -from .information_density import information_density -from .marginal_entropy import marginal_entropy -from .probability import probability \ No newline at end of file diff --git a/active_learning/scoring/information_density.py b/active_learning/scoring/information_density.py deleted file mode 100644 index 998c91c..0000000 --- a/active_learning/scoring/information_density.py +++ /dev/null @@ -1,41 +0,0 @@ -import numpy as np -from scipy.spatial import distance -from sklearn.metrics.pairwise import pairwise_distances - - -def information_density(problem: dict, train_ixs: np.ndarray, obs_labels: np.ndarray, unlabeled_ixs: np.ndarray, - batch_size: int, **kwargs) -> np.ndarray: - """ - Score is uncertainty(x) * representativeness(x)--In particular marginal entropy of the point times its - average distance to all other points. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param unlabeled_ixs: indices into problem['points'] to score - :param batch_size: - :param kwargs: unused - :return: scores for each of selected_ixs - """ - points = problem['points'] - model = problem['model'] - - test_X = points[unlabeled_ixs] - - p_x = model.predict_proba(test_X) - p_x = p_x.clip(1e-9, 1 - 1e-9) - logp_x = np.log(p_x) - uncertainties = -1 * (p_x * logp_x).sum(axis=1) - - # TODO: rather than use average distance, use GMM to estimate density? - # pdistances = distance.pdist(points, metric="sqeuclidean") - # pdistances = distance.squareform(pdistances) - pdistances = pairwise_distances(points, metric="l1",n_jobs=-1) - avg_distances = pdistances.sum(axis=1) / (len(points) - 1.) - avg_distances = avg_distances[unlabeled_ixs] - - return avg_distances * uncertainties diff --git a/active_learning/scoring/marginal_entropy.py b/active_learning/scoring/marginal_entropy.py deleted file mode 100644 index c503afb..0000000 --- a/active_learning/scoring/marginal_entropy.py +++ /dev/null @@ -1,31 +0,0 @@ -import numpy as np - - -def marginal_entropy(problem: dict, train_ixs: np.ndarray, obs_labels: np.ndarray, unlabeled_ixs: np.ndarray, - batch_size: int, **kwargs) -> np.ndarray: - """ - Score is -p(x)log[p(x)] i.e. marginal entropy of the point. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param unlabeled_ixs: indices into problem['points'] to score - :param kwargs: unused - :return: scores for each of selected_ixs - """ - points = problem['points'] - model = problem['model'] - - test_X = points[unlabeled_ixs] - - p_x = model.predict_proba(test_X) - p_x = p_x.clip(1e-9, 1 - 1e-9) - - logp_x = np.log(p_x) - - return -1 * (p_x * logp_x).sum(axis=1) - # return 1/ np.abs(model.decision_function(test_X)) diff --git a/active_learning/scoring/probability.py b/active_learning/scoring/probability.py deleted file mode 100644 index cc10332..0000000 --- a/active_learning/scoring/probability.py +++ /dev/null @@ -1,23 +0,0 @@ -def probability(problem, train_ixs, obs_labels, selected_ixs, batch_size, **kwargs): - """ - Score is simply the probability of being a target under current model. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param selected_ixs: indices into problem['points'] to score - :param kwargs: unused - :return: scores for each of selected_ixs - """ - points = problem['points'] - model = problem['model'] - - test_X = points[selected_ixs] - - p_x = model.predict_proba(test_X) - - return p_x[:,1].reshape(-1) \ No newline at end of file From a87e5a5d378774551812e249889dbc0036423d20 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Sat, 27 Apr 2019 12:36:57 -0500 Subject: [PATCH 18/36] Removed batch active search to the classifiers library --- .../query_strats/{ => classification}/batch_active_search.py | 0 .../{ => classification}/tests/test_batch_active_search.py | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename active_learning/query_strats/{ => classification}/batch_active_search.py (100%) rename active_learning/query_strats/{ => classification}/tests/test_batch_active_search.py (100%) diff --git a/active_learning/query_strats/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py similarity index 100% rename from active_learning/query_strats/batch_active_search.py rename to active_learning/query_strats/classification/batch_active_search.py diff --git a/active_learning/query_strats/tests/test_batch_active_search.py b/active_learning/query_strats/classification/tests/test_batch_active_search.py similarity index 100% rename from active_learning/query_strats/tests/test_batch_active_search.py rename to active_learning/query_strats/classification/tests/test_batch_active_search.py From e71cc24b467190285cabb764fbdce8c83507735c Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Sat, 27 Apr 2019 12:39:44 -0500 Subject: [PATCH 19/36] Removed legacy code and examples --- active_learning/__init__.py | 6 - .../classification/batch_active_search.py | 4 +- .../tests/test_batch_active_search.py | 2 +- active_learning/selectors/__init__.py | 36 -- active_learning/ss_active_learning.py | 171 --------- active_learning/utils.py | 265 -------------- examples/example.ipynb | 337 ------------------ examples/example_live.ipynb | 285 --------------- 8 files changed, 3 insertions(+), 1103 deletions(-) delete mode 100644 active_learning/selectors/__init__.py delete mode 100644 active_learning/ss_active_learning.py delete mode 100644 active_learning/utils.py delete mode 100644 examples/example.ipynb delete mode 100644 examples/example_live.ipynb diff --git a/active_learning/__init__.py b/active_learning/__init__.py index d227f53..e69de29 100644 --- a/active_learning/__init__.py +++ b/active_learning/__init__.py @@ -1,6 +0,0 @@ -from . import query_strats -from . import scoring -from . import selectors -from . import utils - -name = "active-learning" \ No newline at end of file diff --git a/active_learning/query_strats/classification/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py index b29e881..87a369e 100644 --- a/active_learning/query_strats/classification/batch_active_search.py +++ b/active_learning/query_strats/classification/batch_active_search.py @@ -1,5 +1,5 @@ -from ..problem import ActiveLearningProblem -from . import BaseQueryStrategy +from active_learning.problem import ActiveLearningProblem +from active_learning.query_strats import BaseQueryStrategy from sklearn.base import BaseEstimator from copy import deepcopy from typing import Union diff --git a/active_learning/query_strats/classification/tests/test_batch_active_search.py b/active_learning/query_strats/classification/tests/test_batch_active_search.py index da85adb..a8a56d3 100644 --- a/active_learning/query_strats/classification/tests/test_batch_active_search.py +++ b/active_learning/query_strats/classification/tests/test_batch_active_search.py @@ -1,4 +1,4 @@ -from active_learning.query_strats.batch_active_search import SequentialSimulatedBatchSearch +from active_learning.query_strats.classification.batch_active_search import SequentialSimulatedBatchSearch from active_learning.query_strats.random_sampling import RandomQuery from active_learning.tests.test_problem import make_grid_problem from unittest import TestCase diff --git a/active_learning/selectors/__init__.py b/active_learning/selectors/__init__.py deleted file mode 100644 index 13f6ebf..0000000 --- a/active_learning/selectors/__init__.py +++ /dev/null @@ -1,36 +0,0 @@ -import numpy as np - - -""" -A selector is a function that takes in the problem dictionary (described -below), the training set, and the observed labels for the training set, and -outputs the indices into problem['points'] of the unlabeled set of points for -consideration in the next round of queries. - -Selectors should be functions of the form: - - selector(problem, train_ixs, obs_labels) - -Where: - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :returns: np.array of ints indexing into problem['points'] -""" - - -def identity_selector(problem, train_ixs, obs_labels, **kwargs): - space = problem['points'] - num_points = space.shape[0] - ixs = np.arange(num_points) - - train_mask = np.zeros(space.shape[0], dtype=bool) - train_mask[train_ixs] = True - - # return every index not in the training mask - return ixs[~train_mask] \ No newline at end of file diff --git a/active_learning/ss_active_learning.py b/active_learning/ss_active_learning.py deleted file mode 100644 index 16560d9..0000000 --- a/active_learning/ss_active_learning.py +++ /dev/null @@ -1,171 +0,0 @@ -import logging -# TODO: make this query a kNN sort of model or maybe clustering for predicting how likely -from collections import Iterable - -import numpy as np -from sklearn.svm import SVC - -from active_learning.query_strats.classification import uncertainty_sampling -from active_learning.selectors import identity_selector - - -def _standardize_is_ssl_round(is_ssl_round): - if not callable(is_ssl_round): - if isinstance(is_ssl_round, int): - return lambda i, n: i % is_ssl_round == 0 and i != 0 - else: - raise TypeError("SSL_every key in `problem` dict must be callable or int") - return is_ssl_round - - -def _default_ssl_config(): - return { - "is_ssl_round": (lambda i, n: i >= n // 2 and i % 3 == 0), - "clear_label_history": (lambda i, n: i >= n // 2 and i % 6 == 0) - } - - -def _ss_labeler(problem, train_ixs, obs_labels, unlabeled_ixs, **kwargs): - label_history = kwargs['label_history'] - label_change_rate = np.sum(label_history, axis=0) - - pts = problem['points'] - X_train = pts[train_ixs] - - # clf = KNeighborsClassifier(n_neighbors=4) - clf = SVC(probability=True) - clf.fit(X_train, obs_labels) - - ixs = np.arange(len(problem['points'])) - train_mask = np.zeros(len(ixs), dtype=bool) - train_mask[train_ixs] = True - # only choose among points with label change rate = 0 - test_ixs = ixs[(~train_mask) & (label_change_rate == 0)] - - if len(test_ixs) == 0: - return np.zeros(0, dtype=int), np.zeros(0, dtype=int) - - pred_labels = clf.predict(pts[test_ixs]) - pos_ixs = test_ixs[pred_labels == 1] - neg_ixs = test_ixs[pred_labels == 0] - - if len(pos_ixs) > 0: - pos_distances = clf.decision_function(pts[pos_ixs]).reshape(-1) - # log_probs = np.log(clf.predict_proba(pts[pos_ixs])) - # pos_distances = log_probs.max(axis=1) - log_probs.min(axis=1) - median_pos_ix = pos_ixs[np.argsort(pos_distances)[-1]] # [len(pos_ixs)//2]] - pos_ixs = np.array([median_pos_ix], dtype=int) - else: - pos_ixs = np.array([], dtype=int) - - if len(neg_ixs) > 0: - neg_distances = clf.decision_function(pts[neg_ixs]).reshape(-1) - # log_probs = np.log(clf.predict_proba(pts[neg_ixs])) - # neg_distances = log_probs.max(axis=1) - log_probs.min(axis=1) - median_neg_ix = neg_ixs[np.argsort(neg_distances)[-1]] # [len(neg_ixs)//2]] - neg_ixs = np.array([median_neg_ix], dtype=int) - else: - neg_ixs = np.array([], dtype=int) - - return pos_ixs, neg_ixs - - -def ss_actively_learn(problem, train_ixs, obs_labels, oracle, - query_strat=uncertainty_sampling, - ss_labeler=_ss_labeler, - callback=None, **kwargs): - """ - A variation on active learning that will use a Semi-supervised influenced approach to avoid - oversampling the dense region. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - Optional: - - - partition: list of np.arrays of indices into problem['points'] partitioning the space. - This can restrict the batch to be from one partition! - - is_ssl_round: `int` or callable. If `int` then `ss_labeler` will be called every `is_ssl_round` iterations - except for the first. If callable, will be called as `is_ssl_round(query_num, num_queries)`. - - clear_label_history: `int` or callable. If `int` then label history will be cleared every x iterations - except for the first. If callable, will be called as `clear_label_history(query_num, num_queries)`. - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param oracle: gets the true labels for a set of points - :param selector: gets the indexes of all available points to be tested - :param query_strat: gets the indexes of points we wish to test next - :param ss_labeler: semi-supervised labeler, returns (list of pos_ixs, list neg_ixs) - :param callback: function or list of funcs to call at end of each iteration (retrain the model?) - :return: None (yet) - """ - - problem['num_initial'] = len(train_ixs) - num_queries = problem['num_queries'] - batch_size = problem['batch_size'] - - # function to check whether ss_labeler should be queried in a given round - is_ssl_round = _standardize_is_ssl_round(problem.get('is_ssl_round', 3)) - - # function to check whether label_history should be cleared, default to every ssl_round - clear_label_history = _standardize_is_ssl_round(problem.get('clear_label_history', 3)) - - selector = kwargs.get("selector", identity_selector) - - # in order to track label change rate, store what each point would be labeled with - label_history = [] - - for i in range(num_queries): - print(f"Query {i} / {num_queries}") - - # get the available points we might want to query - unlabeled_ixs = selector(problem, train_ixs, obs_labels, **kwargs) - logging.debug(f"{len(unlabeled_ixs)} available unlabeled points") - - # to track label change rate - label_history.append(problem['model'].predict(problem['points'])) - - if len(unlabeled_ixs) == 0: - logging.debug("No available unlabeled points") - return - - # ------------------ - # choose points from the available points - selected_ixs = query_strat(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, - budget=num_queries - i, **kwargs) - - # get the true labels from the oracle - true_labels = oracle(problem, train_ixs, obs_labels, selected_ixs, **kwargs) - - # add the new labeled points to the training set - train_ixs = np.concatenate([train_ixs, selected_ixs]) - obs_labels = np.concatenate([obs_labels, true_labels]) - # ------------------- - - # ------------------- - if is_ssl_round(i, num_queries): - # choose points from a model that should be targets - pos_ixs, neg_ixs = ss_labeler(problem, train_ixs, obs_labels, unlabeled_ixs, label_history=label_history, **kwargs) - proactive_ixs = np.concatenate([pos_ixs, neg_ixs]) - ss_labels = np.concatenate([ - np.ones(len(pos_ixs), dtype=int), - np.zeros(len(neg_ixs), dtype=int) - ]) - - # just fake it till you make it and add these to the training set - train_ixs = np.concatenate([train_ixs, proactive_ixs]) - obs_labels = np.concatenate([obs_labels, ss_labels]) - - if clear_label_history(i, num_queries): - label_history = [] - # ------------------- - - # presumably the call back will update the model - if callback is None: - continue - elif isinstance(callback, Iterable): - for func in callback: - func(problem, train_ixs, obs_labels, query=selected_ixs, ** kwargs) - else: - callback(problem, train_ixs, obs_labels, query=selected_ixs, **kwargs) diff --git a/active_learning/utils.py b/active_learning/utils.py deleted file mode 100644 index 6072723..0000000 --- a/active_learning/utils.py +++ /dev/null @@ -1,265 +0,0 @@ -import numpy as np -from sklearn.base import ClassifierMixin -from sklearn.metrics import accuracy_score -from sklearn.model_selection import train_test_split -from sklearn.svm import SVC - -from active_learning.selectors import identity_selector -from active_learning.ss_active_learning import ss_actively_learn, _default_ssl_config -from .active_learning import _actively_learn - - -def chunks(l: list, n: int) -> list: - """ - Chunks a list into parts - :param l: - :param n: - """ - chunk_size = max(len(l) // n, 1) - while len(l): - yield l[:chunk_size] - l = l[chunk_size:] - - -def make_training_set(estimator, y: np.ndarray, size: int = 5, n_targets: int = 1): - """ - Produces a training set for active learning problems. - - :param estimator: estimator we are training - :param y: array of labels for points in the problem space - :param size: size of the training set to produce - :param n_targets: number of targets (y=1) to include in training set - :return: array of indices into ``y`` - """ - assert size >= 0 and 0 <= n_targets <= size - - train_ixs = np.random.randint(low=0, high=len(y), size=size) - - # if classification problem, we only want to include so many targets in the input - if isinstance(estimator, ClassifierMixin): - while sum(y[train_ixs]) != n_targets: - train_ixs = np.random.randint(low=0, high=len(y), size=size) - - # otherwise we can just use random selection - return train_ixs - - -# ----------------------------------------------------------------------------- -# Useful callback functions -# ----------------------------------------------------------------------------- - - -def retrain_model(problem, train_ixs, obs_labels): - """ - Retrain the problem['model'] on train_ixs and obs_labels. - :param problem: - :param train_ixs: - :param obs_labels: - :return: - """ - points = problem['points'] - model = problem['model'] - problem['model'] = model.fit(points[train_ixs], obs_labels) - - -def make_save_scores(scores, score_fn, X_test, y_test): - """ - Callback to save the score of the model on a test set (i.e.: accuracy, F1, etc) - :param X_test: - :param y_test: - :return: - """ - def save_scores(problem, train_ixs, obs_labels, **kwargs): - model = problem['model'] - pred_labels = model.predict(X_test) - score = score_fn(y_test, pred_labels) - scores.append(score) - - return save_scores - - -def make_save_queries(queries_list): - def save_queries(problem, train_ixs, obs_labels, **kwargs): - queries_list.append(kwargs['query']) - - return save_queries - - -def make_history_retrain(history): - """ - Makes a `callback` function that can be passed to `actively_learn` that - accumulates the number of targets seen so far in each iteration in a list. - :return: (pointer to the list, callback function) - """ - - def plot_retrain_model(problem, train_ixs, obs_labels, **kwargs): - history.append(np.sum(obs_labels)) - retrain_model(problem, train_ixs, obs_labels) - - return plot_retrain_model - - -def make_callback_retrain(func): - def retrain_callback(problem, train_ixs, obs_labels, **kwargs): - func(problem, train_ixs, obs_labels, **kwargs) - retrain_model(problem, train_ixs, obs_labels) - - return retrain_callback - - -# ----------------------------------------------------------------------------- -# Oracles -# ----------------------------------------------------------------------------- - - -def make_training_oracle(y_true: np.array): - """ - Makes a training oracle: - training_oracle(problem, train_ixs, obs_labels, selected_ixs) - That returns y_true[selected_ixs]. Useful for training active learning - models. - :param y_true: np array of the true labels - :return: - """ - - def training_oracle(problem, train_ixs, obs_labels, selected_ixs, **kwargs): - return y_true[selected_ixs] - - return training_oracle - - -# ----------------------------------------------------------------------------- -# Testing Stuff -# ----------------------------------------------------------------------------- - - -def _standardize_score_fns(score_fns) -> dict: - if isinstance(score_fns, dict): - return score_fns - - if callable(score_fns): - return { - "score": score_fns - } - - if score_fns is None: - return { - "accuracy": accuracy_score - } - - if isinstance(score_fns, list) or isinstance(score_fns, tuple): - if callable(score_fns[0]): - return { - f"score{i}": score_fn - for i, score_fn in enumerate(score_fns) - } - - return dict(score_fns) - - raise TypeError("score_fns bad") - - -def perform_experiment(X: np.ndarray, y: np.ndarray, X_test: np.ndarray=None, y_test: np.ndarray=None, - L=None, - base_estimator=SVC(probability=True), - init_L_size: int=2, n_queries: int=40, batch_size: int=1, - semisupervised: bool=False, - selector=identity_selector, query_strat=None, oracle=None, - score_fns=None, parallel_backend='threading', random_state=None, **kwargs): - """ - A function that presents a simple API to users who don't need the most fine grained control. - :param X: numpy array of inputs: (n_samples, n_features) - :param y: numpy array of targets: (n_samples,) - :param X_test: numpy array of test set inputs. Will be used rather than splitting if there are score functions - :param y_test: numpy array of test set targets. Will be used rather than splitting if there are score functions - :param L: - numpy array of ints for the initial labeled set that indexes into X. If None, then one will be selected and - will assume that all of the labels in y are correct. If given, then y will only be assumed to be correct at - `y[L]`, otherwise it will be assumed to be entirely correct. - :param base_estimator: the scikit-learn compatible model to be trained - :param n_queries: number of queries to make of the oracle / iterations of active learning - :param batch_size: number of points that can be made in each query - :param semisupervised: if true, will use model to guess labels for points on which it is very confident - :param init_L_size: size of the initial labeled set to train the model - :param selector: selects what points are eligible in the next round - :param query_strat: selects points for the oracle to label - :param oracle: function to label any point in X - :param score_fns: - score functions to track after each round of AL. Can be dict of name->function, list/tuple of functions, or - a single function. if left to None, then accuracy will be used. If there are any scoring functions (i.e.: you - do not explicitly set it to an empty dict) then a test set will be separated out from X, y. - :param parallel_backend: 'threading' or 'multiprocessing' to use in active search strategy - :param random_state: to use for train/test split for consistency across experiments - :param kwargs: passed to train_test_split - :return: - dictionary of data from the experiment - """ - score_fns = _standardize_score_fns(score_fns) - - # These are the fields which can be filled in - experiment_data = { - "n_targets": [], - "queries": [], - "history": [] - } - - callbacks = [] - - callbacks += [make_save_queries(experiment_data["queries"])] - callbacks += [make_history_retrain(experiment_data["history"])] - - # if score_fn, then - if len(score_fns) > 0: - if X_test is None or y_test is None: - X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=random_state, **kwargs) - X, y = X_train, y_train - - for name, score_fn in score_fns.items(): - experiment_data[name] = [] - score_callback = make_save_scores(experiment_data[name], score_fn, X_test, y_test) - callbacks.append(score_callback) - - if L is None: - L = make_training_set(base_estimator, y, size=init_L_size) - - if oracle is None: - oracle = make_training_oracle(y) - - problem = { - "model": base_estimator, - "num_queries": n_queries, - "batch_size": batch_size, - "points": X, - "training_set_size": init_L_size, - "parallel_backend": parallel_backend - } - - retrain_model(problem, L, y[L]) - - if not semisupervised: - _actively_learn( - problem, - L, y[L], - oracle=oracle, - selector=selector, - query_strat=query_strat, - callback=callbacks - ) - else: - # load some good defaults - default_ssl_config = _default_ssl_config() - ssl_config = default_ssl_config.copy() - if isinstance(semisupervised, dict): - ssl_config.update(semisupervised) - ssl_config.update(problem) - problem = ssl_config - - ss_actively_learn( - problem, - L, y[L], - oracle=oracle, - query_strat=query_strat, - callback=callbacks - ) - - return {**experiment_data, **problem} diff --git a/examples/example.ipynb b/examples/example.ipynb deleted file mode 100644 index cb2a86d..0000000 --- a/examples/example.ipynb +++ /dev/null @@ -1,337 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example of simple use of active learning API\n", - "Compare 3 query strategies: random sampling, uncertainty sampling, and active search.\n", - "Observe how we trade off between finding targets and accuracy." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Imports" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "import warnings\n", - "warnings.filterwarnings(action='ignore', category=RuntimeWarning)\n", - "\n", - "from matplotlib import pyplot as plt\n", - "import numpy as np\n", - "\n", - "from sklearn.base import clone\n", - "from sklearn.datasets import make_moons\n", - "from sklearn.svm import SVC\n", - "\n", - "import active_learning\n", - "from active_learning.utils import *\n", - "from active_learning.query_strats import random_sampling, uncertainty_sampling, active_search\n", - "\n", - "%matplotlib inline" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "np.random.seed(0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Load toy data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Have a little binary classification task that is not linearly separable." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "X, y = make_moons(noise=0.1, n_samples=200)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.scatter(X[y==0,0], X[y==0,1])\n", - "plt.scatter(X[y==1,0], X[y==1,1])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Training Models" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "# Our basic classifier will be a SVM with rbf kernel\n", - "base_clf = SVC(probability=True)\n", - "\n", - "# size of the initial labeled set\n", - "init_L_size = 5\n", - "\n", - "# Make 30 queries\n", - "n_queries = 30\n", - "\n", - "# set random state for consistency in training data\n", - "random_state = 123" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Random Sampling" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "100%|██████████| 30/30 [00:00<00:00, 650.20it/s]\n" - ] - } - ], - "source": [ - "random_experiment_data = perform_experiment(\n", - " X, y, \n", - " base_estimator=clone(base_clf), \n", - " query_strat=random_sampling,\n", - " n_queries=n_queries,\n", - " init_L_size=init_L_size,\n", - " random_state=random_state\n", - ")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Uncertainty Sampling" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "100%|██████████| 30/30 [00:00<00:00, 506.46it/s]\n" - ] - } - ], - "source": [ - "uncertainty_experiment_data = perform_experiment(\n", - " X, y,\n", - " base_estimator=clone(base_clf),\n", - " query_strat=uncertainty_sampling,\n", - " n_queries=n_queries,\n", - " init_L_size=init_L_size,\n", - " random_state=random_state\n", - ")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Active Search" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "100%|██████████| 30/30 [00:10<00:00, 3.00it/s]\n" - ] - } - ], - "source": [ - "as_experiment_data = perform_experiment(\n", - " X, y,\n", - " base_estimator=clone(base_clf),\n", - " query_strat=active_search,\n", - " n_queries=n_queries,\n", - " init_L_size=init_L_size,\n", - " random_state=random_state\n", - ")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Compare" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "xx = np.arange(n_queries)\n", - "\n", - "plt.plot(xx, random_experiment_data[\"accuracy\"], label=\"Random\")\n", - "plt.plot(xx, uncertainty_experiment_data[\"accuracy\"], label=\"Uncertainty\")\n", - "plt.plot(xx, as_experiment_data[\"accuracy\"], label=\"AS\")\n", - "\n", - "plt.title(\"Accuracy on Test Set vs Num Queries\")\n", - "plt.ylabel(\"accuracy\")\n", - "plt.xlabel(\"# queries\")\n", - "plt.legend()" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.plot(xx, random_experiment_data[\"history\"], label=\"Random\")\n", - "plt.plot(xx, uncertainty_experiment_data[\"history\"], label=\"Uncertainty\")\n", - "plt.plot(xx, as_experiment_data[\"history\"], label=\"AS\")\n", - "\n", - "plt.title(\"Number of targets found\")\n", - "plt.ylabel(\"# of targets\")\n", - "plt.xlabel(\"# queries\")\n", - "plt.legend()" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "venv", - "language": "python", - "name": "venv" - }, - "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.6.1" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/examples/example_live.ipynb b/examples/example_live.ipynb deleted file mode 100644 index aa996b6..0000000 --- a/examples/example_live.ipynb +++ /dev/null @@ -1,285 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example of Human in the Loop\n", - "Shows how you can use a custom `oracle` that asks the user for labels." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Imports" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "from IPython.display import clear_output" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "from matplotlib import pyplot as plt\n", - "import numpy as np\n", - "\n", - "from sklearn.datasets import load_digits\n", - "from sklearn.neighbors import KNeighborsClassifier" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "import active_learning as AL\n", - "import active_learning.query_strats as qs" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "%matplotlib inline" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Fetch data" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "digits = load_digits()" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "X = digits.images.reshape(-1, 64)\n", - "y = (digits.target == 2).astype(int)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Model definition" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "base_clf = KNeighborsClassifier()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Interactive oracle" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "def oracle(problem, train_ixs, obs_labels, selected_ixs, **kwargs):\n", - " ix = selected_ixs[0] # we'll only use 1 point per query\n", - " points = problem['points']\n", - " model = problem['model']\n", - " clear_output(wait=True)\n", - " plt.clf()\n", - " plt.gray()\n", - " plt.matshow(points[ix].reshape(8, 8))\n", - " plt.show()\n", - " label = int(input(\"Is this a 2? \"))\n", - " return np.array([label])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Learning!" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Is this a 2? 0\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "100%|██████████| 25/25 [00:44<00:00, 1.77s/it]\n" - ] - } - ], - "source": [ - "np.random.seed(seed=42)\n", - "interactive_exp_data = AL.utils.perform_experiment(\n", - " X, y,\n", - " base_estimator=base_clf,\n", - " init_L_size=5, n_queries=25, batch_size=1, \n", - " oracle=oracle,\n", - " shuffle=False\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "100%|██████████| 25/25 [00:00<00:00, 383.56it/s]\n" - ] - } - ], - "source": [ - "np.random.seed(seed=42)\n", - "random_exp_data = AL.utils.perform_experiment(\n", - " X, y,\n", - " base_estimator=base_clf,\n", - " init_L_size=5, n_queries=25, batch_size=1,\n", - " query_strat=qs.random_sampling,\n", - " shuffle=False\n", - ")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Plots" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.plot(interactive_exp_data['accuracy'], label='interactive')\n", - "plt.plot(random_exp_data['accuracy'], label='random')\n", - "plt.legend()" - ] - } - ], - "metadata": { - "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.6.1" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} From 62a3e76ced9f1a8e292082d4b847f12fbe0585ee Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Sat, 27 Apr 2019 13:27:48 -0500 Subject: [PATCH 20/36] Model model from the AL problem definition to the query strategy --- active_learning/problem.py | 25 +++++++-------- active_learning/query_strats/__init__.py | 32 +++++++++++++++++++ .../classification/active_search.py | 17 ++++------ .../classification/batch_active_search.py | 17 ++++++---- .../query_strats/classification/greedy.py | 6 ++-- .../tests/test_active_search.py | 7 ++-- .../tests/test_batch_active_search.py | 5 ++- .../classification/tests/test_greedy.py | 5 ++- .../classification/tests/test_three_ds.py | 4 +-- .../classification/tests/test_uncertainty.py | 5 ++- .../query_strats/classification/three_ds.py | 16 ++++++---- .../classification/uncertainty_sampling.py | 6 ++-- 12 files changed, 88 insertions(+), 57 deletions(-) diff --git a/active_learning/problem.py b/active_learning/problem.py index 8e501b5..ce17087 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -1,5 +1,5 @@ from sklearn.base import BaseEstimator -from typing import List +from typing import List, Tuple import numpy as np @@ -12,8 +12,7 @@ class ActiveLearningProblem: Optionally, you can define the budget of how many points are left to label. """ - def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_label=1, - model: BaseEstimator = None): + def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_label=1): """Set up the active learning problem Args: @@ -22,7 +21,6 @@ def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_l labels (ndarray): Labels for the labeled points, in same order as labeled_ixs budget (int): How many entries are budgeted to be labeled (default: all of them) target_label (int): Classification: Which entry is the desired class - model (BaseEstimator): Machine learning model used to guide training. """ # TODO: Add batch size and support for grouping points together -lw @@ -30,7 +28,6 @@ def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_l self.labeled_ixs = labeled_ixs self.labels = list(labels) self.target_label = target_label - self.model = model # Set the budget self.budget = None @@ -62,15 +59,6 @@ def get_unlabeled_ixs(self) -> List[int]: set(range(len(self.points))).difference(self.labeled_ixs) ) - def update_model(self): - """Update the machine learning model given the current labeled set - - Note: If there is no model, the model does nothing""" - - if self.model is not None: - self.model.fit(self.points[self.labeled_ixs], - self.labels) - def add_label(self, ind, label): """Add a label to the labeled set""" @@ -78,3 +66,12 @@ def add_label(self, ind, label): raise AttributeError('Index already included in labeled set') self.labeled_ixs.append(ind) self.labels.append(label) + + def get_labeled_points(self) -> Tuple[np.ndarray, np.ndarray]: + """Get the labeled points and their labels + + Returns: + - (ndarray): Coordinates of all points with labels + - (ndarray): Labels for all labeled points + """ + return self.points[self.labeled_ixs], self.labels diff --git a/active_learning/query_strats/__init__.py b/active_learning/query_strats/__init__.py index 8847e6b..1be4500 100644 --- a/active_learning/query_strats/__init__.py +++ b/active_learning/query_strats/__init__.py @@ -3,6 +3,7 @@ from functools import partial from typing import List, Tuple import numpy as np +from sklearn.base import BaseEstimator class BaseQueryStrategy: @@ -88,3 +89,34 @@ def score_all(self, problem: ActiveLearningProblem) -> Tuple[List[int], List[flo scores = np.concatenate(scores) return unlabled_ixs, scores + + +class ModelBasedQueryStrategyMixin(BaseQueryStrategy): + """Mixin for query strategies that use an model to make predictions + + Model objects must satisfy the scikit-learn API""" + + def __init__(self, model: BaseEstimator, model_is_fitted: bool = False, **kwargs): + """ + Args: + model (BaseEstimator): Model to use for querying + model_is_fitted (bool): Whether the model has been fitted already + """ + super().__init__(**kwargs) + self.model = model + self._model_is_fitted = model_is_fitted + + def _fit_model(self, problem: ActiveLearningProblem): + """Fit the model on the current active learning problem + + Args: + problem (ActiveLearningProblem): Description of the active learning problem + """ + X, y = problem.get_labeled_points() + self.model.fit(X, y) + self._model_is_fitted = True + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: + if not self._model_is_fitted: + self._fit_model(problem) + return super().select_points(problem, n_to_select) diff --git a/active_learning/query_strats/classification/active_search.py b/active_learning/query_strats/classification/active_search.py index 327096b..1c07d38 100644 --- a/active_learning/query_strats/classification/active_search.py +++ b/active_learning/query_strats/classification/active_search.py @@ -1,6 +1,6 @@ from sklearn.base import BaseEstimator, clone from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy +from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategyMixin from typing import List import numpy as np @@ -72,7 +72,7 @@ def _expected_future_utility(model: BaseEstimator, test_set: np.ndarray, return u -class ActiveSearch(IndividualScoreQueryStrategy): +class ActiveSearch(ModelBasedQueryStrategyMixin, IndividualScoreQueryStrategy): """Efficient Non-Myopic Active Search. Based on an algorithm by [Jiang et al.](http://proceedings.mlr.press/v70/jiang17d/jiang17d.pdf). @@ -81,9 +81,6 @@ class and those which, if queries, will lead to model improvements that will lea targets to be found later on.""" def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): - # Create a copy of the model - model_copy = clone(problem.model) - # Get a list of *all* unlabeled entries all_unlabeled_ixs = np.array(problem.get_unlabeled_ixs()) @@ -94,7 +91,7 @@ def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): test_set = problem.points[all_unlabeled_ixs[all_unlabeled_ixs != unlabeled_ix]] # Get the probabilities of membership in either class - p0, p1 = problem.model.predict_proba(problem.points[[unlabeled_ix]]).reshape(-1) + p0, p1 = self.model.predict_proba(problem.points[[unlabeled_ix]]).reshape(-1) # If the budget is only for one more label, the score is just the probability if problem.budget - 1 == 0: @@ -103,17 +100,17 @@ def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): # If not, assess the effect of labeling this point # Evaluate the effect of the point being labeled negative - _lookahead(problem.points, model_copy, problem.labeled_ixs, + _lookahead(problem.points, self.model, problem.labeled_ixs, problem.labels, problem.points[unlabeled_ix], label=0) - s0 = _expected_future_utility(model_copy, test_set, + s0 = _expected_future_utility(self.model, test_set, problem.budget - 1, problem.target_label) # Evaluate the effect of the point being labeled positive - _lookahead(problem.points, model_copy, problem.labeled_ixs, + _lookahead(problem.points, self.model, problem.labeled_ixs, problem.labels, problem.points[unlabeled_ix], label=1) - s1 = _expected_future_utility(model_copy, test_set, + s1 = _expected_future_utility(self.model, test_set, problem.budget - 1, problem.target_label) # Compute the score for this point diff --git a/active_learning/query_strats/classification/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py index 87a369e..e468f05 100644 --- a/active_learning/query_strats/classification/batch_active_search.py +++ b/active_learning/query_strats/classification/batch_active_search.py @@ -1,5 +1,5 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import BaseQueryStrategy +from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategyMixin from sklearn.base import BaseEstimator from copy import deepcopy from typing import Union @@ -16,6 +16,7 @@ # TODO: Add oracles for regression problems + class FictionalOracle: """Class to emulate a labeling function""" @@ -68,21 +69,23 @@ def label(self, model: BaseEstimator, x: np.array, target: int): } -class SequentialSimulatedBatchSearch(BaseQueryStrategy): +class SequentialSimulatedBatchSearch(ModelBasedQueryStrategyMixin, BaseQueryStrategy): """Batch active learning strategy where you simulate multiple, sequential steps of an active learning process. TBD: Better description after reading the paper""" - def __init__(self, query_strategy: BaseQueryStrategy, - fictional_oracle: Union[str, FictionalOracle]): + def __init__(self, model: BaseEstimator, query_strategy: BaseQueryStrategy, + fictional_oracle: Union[str, FictionalOracle], model_is_fitted: bool = False): """Initialize strategy Args: + model (BaseEstimator): Model used to guide the search + model_is_fitted (bool): Whether the model has been fitted already query_strategy (BaseQueryStrategy): Strategy to perform sequential selection fictional_oracle (string): Function used to emulate labeling """ - + super().__init__(model=model, model_is_fitted=model_is_fitted) self.query_strategy = query_strategy if isinstance(fictional_oracle, str): self.fictional_oracle = _FICTIONAL_ORACLES[fictional_oracle] @@ -106,11 +109,11 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): batch_ixs.append(x) # Query the fictional oracle - y = self.fictional_oracle.label(problem.model, problem.points[x], problem.target_label) + y = self.fictional_oracle.label(self.model, problem.points[x], problem.target_label) # Update the active learning problem problem.add_label(x, y) - problem.update_model() + self._fit_model(problem) # Select a single point x = self.query_strategy.select_points(problem, 1) diff --git a/active_learning/query_strats/classification/greedy.py b/active_learning/query_strats/classification/greedy.py index f32e3c9..52183b6 100644 --- a/active_learning/query_strats/classification/greedy.py +++ b/active_learning/query_strats/classification/greedy.py @@ -1,11 +1,11 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy +from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategyMixin from typing import List -class GreedySearch(IndividualScoreQueryStrategy): +class GreedySearch(ModelBasedQueryStrategyMixin, IndividualScoreQueryStrategy): """Query strategy where you pick the score most likely to be the target label""" def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): - probs = problem.model.predict_proba(problem.points[inds]) + probs = self.model.predict_proba(problem.points[inds]) return probs[:, problem.target_label] diff --git a/active_learning/query_strats/classification/tests/test_active_search.py b/active_learning/query_strats/classification/tests/test_active_search.py index 8ba6bac..c56a026 100644 --- a/active_learning/query_strats/classification/tests/test_active_search.py +++ b/active_learning/query_strats/classification/tests/test_active_search.py @@ -14,14 +14,13 @@ def test_active_search(self): # Make the grid problem with a KNN model = KNeighborsClassifier(n_neighbors=3) problem = make_grid_problem() - problem.model = model problem.positive_label = 1 problem.budget = 1 - problem.update_model() + model.fit(*problem.get_labeled_points()) # For a budget of 1, active search should be equal to greedy - active_search = ActiveSearch() - greedy = GreedySearch() + active_search = ActiveSearch(model) + greedy = GreedySearch(model) inds, score = active_search.score_all(problem) greedy_score = greedy._score_chunk(inds, problem) self.assertTrue(np.isclose(greedy_score, score).all()) diff --git a/active_learning/query_strats/classification/tests/test_batch_active_search.py b/active_learning/query_strats/classification/tests/test_batch_active_search.py index a8a56d3..6ebb69e 100644 --- a/active_learning/query_strats/classification/tests/test_batch_active_search.py +++ b/active_learning/query_strats/classification/tests/test_batch_active_search.py @@ -3,6 +3,8 @@ from active_learning.tests.test_problem import make_grid_problem from unittest import TestCase +from sklearn.neighbors import KNeighborsClassifier + class TestBatch(TestCase): @@ -11,7 +13,8 @@ def test_seq_sim(self): # Make sure the code works. # TODO: Figure out a batch active learning problem we can model analytically -lw + model = KNeighborsClassifier() query_strat = RandomQuery() - seq_sim = SequentialSimulatedBatchSearch(query_strat, 'pessimistic') + seq_sim = SequentialSimulatedBatchSearch(model, query_strat, 'pessimistic') points = seq_sim.select_points(problem, 3) self.assertEqual(3, len(points)) diff --git a/active_learning/query_strats/classification/tests/test_greedy.py b/active_learning/query_strats/classification/tests/test_greedy.py index 604167d..edcea58 100644 --- a/active_learning/query_strats/classification/tests/test_greedy.py +++ b/active_learning/query_strats/classification/tests/test_greedy.py @@ -14,11 +14,10 @@ def test_greedy(self): model = KNeighborsClassifier(n_neighbors=3) problem = make_grid_problem() problem.positive_label = 1 - problem.model = model - problem.update_model() + model.fit(*problem.get_labeled_points()) # Compute the probabilities for each test point - greedy = GreedySearch() + greedy = GreedySearch(model) inds, scores = greedy.score_all(problem) probs = model.predict_proba(problem.points[inds])[:, 1] self.assertTrue(np.isclose(probs, scores).all()) diff --git a/active_learning/query_strats/classification/tests/test_three_ds.py b/active_learning/query_strats/classification/tests/test_three_ds.py index 79841c8..5f694dd 100644 --- a/active_learning/query_strats/classification/tests/test_three_ds.py +++ b/active_learning/query_strats/classification/tests/test_three_ds.py @@ -13,11 +13,9 @@ def test_uncertainty(self): # Make the grid problem with a KNN model = KNeighborsClassifier(n_neighbors=3) problem = make_grid_problem() - problem.model = model - problem.update_model() # Run the selection - d = ThreeDs() + d = ThreeDs(model) pts = d.select_points(problem, 4) self.assertEqual(4, len(set(pts))) diff --git a/active_learning/query_strats/classification/tests/test_uncertainty.py b/active_learning/query_strats/classification/tests/test_uncertainty.py index 85a03f4..5586bf7 100644 --- a/active_learning/query_strats/classification/tests/test_uncertainty.py +++ b/active_learning/query_strats/classification/tests/test_uncertainty.py @@ -13,11 +13,10 @@ def test_uncertainty(self): # Make the grid problem with a KNN model = KNeighborsClassifier(n_neighbors=2) problem = make_grid_problem() - problem.model = model - problem.update_model() + model.fit(*problem.get_labeled_points()) # Compute the uncertainties - sampler = UncertaintySampling() + sampler = UncertaintySampling(model) probs = model.predict_proba(problem.points[problem.get_unlabeled_ixs()]) score = -1 * np.multiply(probs, np.log(probs)).sum(axis=1) self.assertTrue(np.isclose(score, sampler.score_all(problem)[1]).all()) diff --git a/active_learning/query_strats/classification/three_ds.py b/active_learning/query_strats/classification/three_ds.py index 1a4d72e..9576566 100644 --- a/active_learning/query_strats/classification/three_ds.py +++ b/active_learning/query_strats/classification/three_ds.py @@ -1,5 +1,6 @@ -from active_learning.query_strats import BaseQueryStrategy +from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategyMixin from active_learning.problem import ActiveLearningProblem +from sklearn.base import BaseEstimator from sklearn.mixture.base import BaseMixture from sklearn.mixture import GaussianMixture from typing import List @@ -28,7 +29,7 @@ def _calc_diversities(gmm: BaseMixture, points: np.ndarray, return scores -class ThreeDs(BaseQueryStrategy): +class ThreeDs(ModelBasedQueryStrategyMixin, BaseQueryStrategy): """Select points based on distance, density, and diversity. Based on work by [Reitmaier and Sick](http://ieeexplore.ieee.org/document/5949421/). @@ -46,20 +47,23 @@ class ThreeDs(BaseQueryStrategy): so the effect of this factor is to pick points in low-density regions. """ - def __init__(self, dwc: float=0.5, gmm: BaseMixture=GaussianMixture()): + def __init__(self, model: BaseEstimator, dwc: float = 0.5, gmm: BaseMixture = GaussianMixture()): """Initialize the strategy Args: + model (BaseEstimator): Model used to generate the "distance" metric dwc (float): Diversity weighting coefficient (larger to weigh diversity more) """ - + super().__init__(model) self.dwc = dwc self.gmm = gmm def select_points(self, problem: ActiveLearningProblem, n_to_select: int): # Get the model and search space points = problem.points - model = problem.model + + # Fit the model on the new problem + self._fit_model(problem) # Get the labeled and unlabeled indices L = problem.labeled_ixs @@ -70,7 +74,7 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): X_test = points[U] # calculate weighting factor - probs = model.predict_proba(X_test) + probs = self.model.predict_proba(X_test) eps = 1.0 / len(probs) * np.sum(1 - np.argmax(probs, axis=1)) # pseudo-distance that works on models that do not have a real decision boundary diff --git a/active_learning/query_strats/classification/uncertainty_sampling.py b/active_learning/query_strats/classification/uncertainty_sampling.py index 56b2849..5b30d3a 100644 --- a/active_learning/query_strats/classification/uncertainty_sampling.py +++ b/active_learning/query_strats/classification/uncertainty_sampling.py @@ -1,13 +1,13 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy +from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategyMixin from typing import List import numpy as np -class UncertaintySampling(IndividualScoreQueryStrategy): +class UncertaintySampling(ModelBasedQueryStrategyMixin, IndividualScoreQueryStrategy): """Sample entries with the highest uncertainty in the classification score""" def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): - probs = problem.model.predict_proba(problem.points[inds]) + probs = self.model.predict_proba(problem.points[inds]) probs = probs.clip(1e-9, 1 - 1e-9) return -1 * (probs * np.log(probs)).sum(axis=1) From 7d8b8098d7050cab29517a840e0a05c88f9a4db7 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Sat, 27 Apr 2019 13:33:17 -0500 Subject: [PATCH 21/36] Removed another bit of legacy code --- active_learning/active_learning.py | 114 ----------------------------- 1 file changed, 114 deletions(-) delete mode 100644 active_learning/active_learning.py diff --git a/active_learning/active_learning.py b/active_learning/active_learning.py deleted file mode 100644 index c7654eb..0000000 --- a/active_learning/active_learning.py +++ /dev/null @@ -1,114 +0,0 @@ -import logging -from collections import Iterable - -import numpy as np -from tqdm import tqdm - -from active_learning.query_strats.classification import uncertainty_sampling -from active_learning.selectors import identity_selector - - -def _actively_learn(problem, train_ixs, obs_labels, oracle, **kwargs): - """ - The main active learning loop - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * num_classes: the number of different classes [0, num_classes) - * batch_size: number of points to query each iteration - * num_queries: the max number of queries we can make on the data - * model: the sk-learn model we are training - Optional: - - partition: list of np.arrays of indices into problem['points'] partitioning the space. - This can restrict the batch to be from one partition! - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param oracle: gets the true labels for a set of points - :param selector: gets the indexes of all available points to be tested - :param query_strat: gets the indexes of points we wish to test next - :param callback: function or list of funcs to call at end of each iteration (retrain the model?) - :return: None (yet) - """ - selector = kwargs.get("selector", identity_selector) - query_strat = kwargs.get("query_strat", uncertainty_sampling) - callback = kwargs.get("callback") - - problem['num_initial'] = len(train_ixs) - num_queries = problem['num_queries'] - batch_size = problem['batch_size'] - - for i in tqdm(range(num_queries)): - # print(f"Query {i} / {num_queries}") - - # get the available points we might want to query - unlabeled_ixs = selector(problem, train_ixs, obs_labels, **kwargs) - logging.debug(f"{len(unlabeled_ixs)} available unlabeled points") - - if len(unlabeled_ixs) == 0: - logging.debug("No available unlabeled points") - return - - # choose points from the available points - selected_ixs = query_strat(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, budget=num_queries - i, - **kwargs) - - # get the true labels from the oracle - true_labels = oracle(problem, train_ixs, obs_labels, selected_ixs, **kwargs) - logging.debug(selected_ixs) - logging.debug(true_labels) - - # add the new labeled points to the training set - train_ixs = np.concatenate([train_ixs, selected_ixs]) - obs_labels = np.concatenate([obs_labels, true_labels]) - - # presumably the call back will update the model - if callback is None: - continue - elif isinstance(callback, Iterable): - for func in callback: - func(problem, train_ixs, obs_labels, query=selected_ixs, **kwargs) - else: - callback(problem, train_ixs, obs_labels, query=selected_ixs, **kwargs) - - -def actively_learn_holdout(problem, train_ixs, obs_labels, oracle, holdout_points, holdout_iter, **kwargs): - selector = kwargs.get("selector", identity_selector) - query_strat = kwargs.get("query_strat", uncertainty_sampling) - callback = kwargs.get("callback") - - problem['num_initial'] = len(train_ixs) - num_queries = problem['num_queries'] - batch_size = problem['batch_size'] - - for i in tqdm(range(num_queries)): - if i == holdout_iter: - problem['points'] = np.vstack([problem['points'], holdout_points]) - - # get the available points we might want to query - unlabeled_ixs = selector(problem, train_ixs, obs_labels, **kwargs) - logging.debug(f"{len(unlabeled_ixs)} available unlabeled points") - - if len(unlabeled_ixs) == 0: - logging.debug("No available unlabeled points") - return - - # choose points from the available points - selected_ixs = query_strat(problem, train_ixs, obs_labels, unlabeled_ixs, batch_size, budget=num_queries - i, - **kwargs) - - # get the true labels from the oracle - true_labels = oracle(problem, train_ixs, obs_labels, selected_ixs, **kwargs) - logging.debug(selected_ixs) - logging.debug(true_labels) - - # add the new labeled points to the training set - train_ixs = np.concatenate([train_ixs, selected_ixs]) - obs_labels = np.concatenate([obs_labels, true_labels]) - - # presumably the call back will update the model - if callback is None: - continue - elif isinstance(callback, Iterable): - for func in callback: - func(problem, train_ixs, obs_labels, query=selected_ixs, **kwargs) - else: - callback(problem, train_ixs, obs_labels, query=selected_ixs, **kwargs) From dbaf2d317c5818fa50f5b806eefad9a899865e2a Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Sat, 27 Apr 2019 14:32:40 -0500 Subject: [PATCH 22/36] Added greedy regression --- active_learning/objective.py | 32 +++++++++++++++++++ active_learning/problem.py | 17 ++++++++-- active_learning/query_strats/__init__.py | 7 +--- .../classification/active_search.py | 7 ++-- .../classification/batch_active_search.py | 4 +-- .../query_strats/classification/greedy.py | 4 +-- .../query_strats/classification/three_ds.py | 4 +-- .../classification/uncertainty_sampling.py | 4 +-- .../query_strats/regression/greedy.py | 14 ++++++++ .../regression/greedy_regression.py | 28 ---------------- .../regression/tests/test_greedy.py | 18 +++++++++++ active_learning/tests/test_problem.py | 9 ++++++ 12 files changed, 99 insertions(+), 49 deletions(-) create mode 100644 active_learning/objective.py create mode 100644 active_learning/query_strats/regression/greedy.py delete mode 100644 active_learning/query_strats/regression/greedy_regression.py create mode 100644 active_learning/query_strats/regression/tests/test_greedy.py diff --git a/active_learning/objective.py b/active_learning/objective.py new file mode 100644 index 0000000..35b2215 --- /dev/null +++ b/active_learning/objective.py @@ -0,0 +1,32 @@ +"""Objective functions""" + +from typing import List +import numpy as np + + +class ObjectiveFunction: + """Class that generates objective function scores for regression functions""" + + def score(self, y: List, y_uncert: List = None) -> List[float]: + """Generate the objective function score + + Args: + y (list): Values of a class for many entries + y_uncert (list): Any kind of uncertainty values + Returns: + ([float]): Scores where minimal values are preferred + """ + raise NotImplementedError + + +class Maximize(ObjectiveFunction): + """Find the maximum scalar value""" + + def score(self, y: List, y_uncert: List = None) -> List[float]: + return np.multiply(y, -1) + + +class Minimize(ObjectiveFunction): + + def score(self, y: List, y_uncert: List = None) -> List[float]: + return y diff --git a/active_learning/problem.py b/active_learning/problem.py index ce17087..4d5eb36 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -1,4 +1,4 @@ -from sklearn.base import BaseEstimator +from .objective import ObjectiveFunction, Minimize from typing import List, Tuple import numpy as np @@ -12,7 +12,8 @@ class ActiveLearningProblem: Optionally, you can define the budget of how many points are left to label. """ - def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_label=1): + def __init__(self, points, labeled_ixs: List[int], labels, + budget=None, target_label=1, objective_fun: ObjectiveFunction = Minimize()): """Set up the active learning problem Args: @@ -20,7 +21,8 @@ def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_l labeled_ixs ([int]): Indices of points that have been labeled labels (ndarray): Labels for the labeled points, in same order as labeled_ixs budget (int): How many entries are budgeted to be labeled (default: all of them) - target_label (int): Classification: Which entry is the desired class + target_label (int): Index the desired class, used in classification problems + objective_fun (ObjectiveFunction): Objective function, used in regression problems """ # TODO: Add batch size and support for grouping points together -lw @@ -28,6 +30,7 @@ def __init__(self, points, labeled_ixs: List[int], labels, budget=None, target_l self.labeled_ixs = labeled_ixs self.labels = list(labels) self.target_label = target_label + self.objective_fun = objective_fun # Set the budget self.budget = None @@ -75,3 +78,11 @@ def get_labeled_points(self) -> Tuple[np.ndarray, np.ndarray]: - (ndarray): Labels for all labeled points """ return self.points[self.labeled_ixs], self.labels + + def get_unlabeled_points(self) -> np.ndarray: + """Get the coordinates of all unlabeled points + + Returns: + (list) Coordinates of all unlabeled points + """ + return self.points[self.get_unlabeled_ixs()] diff --git a/active_learning/query_strats/__init__.py b/active_learning/query_strats/__init__.py index 1be4500..9152b6e 100644 --- a/active_learning/query_strats/__init__.py +++ b/active_learning/query_strats/__init__.py @@ -91,7 +91,7 @@ def score_all(self, problem: ActiveLearningProblem) -> Tuple[List[int], List[flo return unlabled_ixs, scores -class ModelBasedQueryStrategyMixin(BaseQueryStrategy): +class ModelBasedQueryStrategy(BaseQueryStrategy): """Mixin for query strategies that use an model to make predictions Model objects must satisfy the scikit-learn API""" @@ -115,8 +115,3 @@ def _fit_model(self, problem: ActiveLearningProblem): X, y = problem.get_labeled_points() self.model.fit(X, y) self._model_is_fitted = True - - def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: - if not self._model_is_fitted: - self._fit_model(problem) - return super().select_points(problem, n_to_select) diff --git a/active_learning/query_strats/classification/active_search.py b/active_learning/query_strats/classification/active_search.py index 1c07d38..ad86a02 100644 --- a/active_learning/query_strats/classification/active_search.py +++ b/active_learning/query_strats/classification/active_search.py @@ -1,6 +1,6 @@ from sklearn.base import BaseEstimator, clone from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategyMixin +from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List import numpy as np @@ -11,8 +11,7 @@ def _lookahead(points: np.ndarray, model: BaseEstimator, """ Does a lookahead at what the model would be if (x, label) were added to the known set. If the model implements the partial_fit API from sklearn, then - that will be used. Otherwise, the model is retrained from scratch on - problem['points'] + x. + that will be used. Otherwise, the model is retrained from scratch Args: model (BaseEstimator): sklearn model to be retrained @@ -72,7 +71,7 @@ def _expected_future_utility(model: BaseEstimator, test_set: np.ndarray, return u -class ActiveSearch(ModelBasedQueryStrategyMixin, IndividualScoreQueryStrategy): +class ActiveSearch(ModelBasedQueryStrategy, IndividualScoreQueryStrategy): """Efficient Non-Myopic Active Search. Based on an algorithm by [Jiang et al.](http://proceedings.mlr.press/v70/jiang17d/jiang17d.pdf). diff --git a/active_learning/query_strats/classification/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py index e468f05..ae3eee6 100644 --- a/active_learning/query_strats/classification/batch_active_search.py +++ b/active_learning/query_strats/classification/batch_active_search.py @@ -1,5 +1,5 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategyMixin +from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategy from sklearn.base import BaseEstimator from copy import deepcopy from typing import Union @@ -69,7 +69,7 @@ def label(self, model: BaseEstimator, x: np.array, target: int): } -class SequentialSimulatedBatchSearch(ModelBasedQueryStrategyMixin, BaseQueryStrategy): +class SequentialSimulatedBatchSearch(ModelBasedQueryStrategy, BaseQueryStrategy): """Batch active learning strategy where you simulate multiple, sequential steps of an active learning process. diff --git a/active_learning/query_strats/classification/greedy.py b/active_learning/query_strats/classification/greedy.py index 52183b6..9c17bf9 100644 --- a/active_learning/query_strats/classification/greedy.py +++ b/active_learning/query_strats/classification/greedy.py @@ -1,9 +1,9 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategyMixin +from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List -class GreedySearch(ModelBasedQueryStrategyMixin, IndividualScoreQueryStrategy): +class GreedySearch(ModelBasedQueryStrategy, IndividualScoreQueryStrategy): """Query strategy where you pick the score most likely to be the target label""" def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): diff --git a/active_learning/query_strats/classification/three_ds.py b/active_learning/query_strats/classification/three_ds.py index 9576566..44eaacf 100644 --- a/active_learning/query_strats/classification/three_ds.py +++ b/active_learning/query_strats/classification/three_ds.py @@ -1,4 +1,4 @@ -from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategyMixin +from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategy from active_learning.problem import ActiveLearningProblem from sklearn.base import BaseEstimator from sklearn.mixture.base import BaseMixture @@ -29,7 +29,7 @@ def _calc_diversities(gmm: BaseMixture, points: np.ndarray, return scores -class ThreeDs(ModelBasedQueryStrategyMixin, BaseQueryStrategy): +class ThreeDs(ModelBasedQueryStrategy, BaseQueryStrategy): """Select points based on distance, density, and diversity. Based on work by [Reitmaier and Sick](http://ieeexplore.ieee.org/document/5949421/). diff --git a/active_learning/query_strats/classification/uncertainty_sampling.py b/active_learning/query_strats/classification/uncertainty_sampling.py index 5b30d3a..6345874 100644 --- a/active_learning/query_strats/classification/uncertainty_sampling.py +++ b/active_learning/query_strats/classification/uncertainty_sampling.py @@ -1,10 +1,10 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategyMixin +from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List import numpy as np -class UncertaintySampling(ModelBasedQueryStrategyMixin, IndividualScoreQueryStrategy): +class UncertaintySampling(ModelBasedQueryStrategy, IndividualScoreQueryStrategy): """Sample entries with the highest uncertainty in the classification score""" def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): diff --git a/active_learning/query_strats/regression/greedy.py b/active_learning/query_strats/regression/greedy.py new file mode 100644 index 0000000..426368e --- /dev/null +++ b/active_learning/query_strats/regression/greedy.py @@ -0,0 +1,14 @@ +from ...problem import ActiveLearningProblem +from .. import ModelBasedQueryStrategy +from typing import List +import numpy as np + + +class GreedySelection(ModelBasedQueryStrategy): + """Select the points with this highest predicted values of the output function""" + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: + super()._fit_model(problem) + unlabeled_ixs = np.array(problem.get_unlabeled_ixs()) + scores = problem.objective_fun.score(self.model.predict(problem.points[unlabeled_ixs])) + return unlabeled_ixs[np.argpartition(scores, n_to_select)][:n_to_select] diff --git a/active_learning/query_strats/regression/greedy_regression.py b/active_learning/query_strats/regression/greedy_regression.py deleted file mode 100644 index 09e8ab0..0000000 --- a/active_learning/query_strats/regression/greedy_regression.py +++ /dev/null @@ -1,28 +0,0 @@ -import numpy as np - - -def greedy_regression(problem: dict, train_ixs: np.ndarray, obs_values: np.ndarray, unlabeled_ixs: np.ndarray, - batch_size: int, **kwargs): - """ - Simple greedy approach to black box function minimization. Model predicts values for unlabeled points, choose - the points with the minimum values predicted by model. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * model: the sk-learn model we are training - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param unlabeled_ixs: np.array of the indices of the unlabeled examples - :param batch_size: size of the batch to select - :return: - """ - points = problem['points'] - model = problem['model'] - - # delta e is what I was predicting for materials - delta_e_pred = model.predict(points[unlabeled_ixs]) - scores = -delta_e_pred - - # samples that are likely very small delta e - min_delta_e_ixs = np.argpartition(scores, -batch_size)[-batch_size:] - - return unlabeled_ixs[min_delta_e_ixs] diff --git a/active_learning/query_strats/regression/tests/test_greedy.py b/active_learning/query_strats/regression/tests/test_greedy.py new file mode 100644 index 0000000..7b3815c --- /dev/null +++ b/active_learning/query_strats/regression/tests/test_greedy.py @@ -0,0 +1,18 @@ +from unittest import TestCase +from sklearn.linear_model import LinearRegression +from active_learning.query_strats.regression.greedy import GreedySelection +from active_learning.tests.test_problem import make_xsinx + + +class TestGreedy(TestCase): + + def test_greedy(self): + problem = make_xsinx() + model = LinearRegression() + + # Should pick either the largest or the smallest index, + # depending on the slope of the linear regression line + greedy = GreedySelection(model) + selection = greedy.select_points(problem, 1)[0] + self.assertTrue(selection == 0 or selection == 15) + diff --git a/active_learning/tests/test_problem.py b/active_learning/tests/test_problem.py index 291e8e7..ac2f2f5 100644 --- a/active_learning/tests/test_problem.py +++ b/active_learning/tests/test_problem.py @@ -1,5 +1,7 @@ from ..problem import ActiveLearningProblem from unittest import TestCase +import numpy as np + def make_grid_problem(): """Makes a test active learning problem based on a grid @@ -26,6 +28,13 @@ def make_grid_problem(): target_label=1) +def make_xsinx(): + points = np.arange(0, 16)[:, None] + y = np.squeeze(points * np.sin(points)) + selection = [1, 4, 11, 6] + return ActiveLearningProblem(points, selection, y[selection]) + + class TestProblem(TestCase): def test_grid(self): From 4d93a02bb11a5bab128e8c101286708a027de1d3 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Sun, 28 Apr 2019 14:11:07 -0500 Subject: [PATCH 23/36] Modified MCAL regression --- active_learning/problem.py | 8 + active_learning/query_strats/__init__.py | 11 +- .../classification/batch_active_search.py | 6 +- .../query_strats/classification/three_ds.py | 1 + .../regression/mcal_regression.py | 161 +++++++++++------- .../query_strats/regression/rfr_balanced.py | 81 --------- .../query_strats/regression/rfr_variance.py | 44 ----- .../regression/tests/test_greedy.py | 1 - .../regression/tests/test_mcal.py | 16 ++ 9 files changed, 131 insertions(+), 198 deletions(-) delete mode 100644 active_learning/query_strats/regression/rfr_balanced.py delete mode 100644 active_learning/query_strats/regression/rfr_variance.py create mode 100644 active_learning/query_strats/regression/tests/test_mcal.py diff --git a/active_learning/problem.py b/active_learning/problem.py index 4d5eb36..9e4d49f 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -62,6 +62,14 @@ def get_unlabeled_ixs(self) -> List[int]: set(range(len(self.points))).difference(self.labeled_ixs) ) + def get_labeled_ixs(self) -> List[int]: + """Get a list of the labeled indices + + Returns: + ([int]): Labeled indices + """ + return list(self.labeled_ixs) + def add_label(self, ind, label): """Add a label to the labeled set""" diff --git a/active_learning/query_strats/__init__.py b/active_learning/query_strats/__init__.py index 9152b6e..35581b2 100644 --- a/active_learning/query_strats/__init__.py +++ b/active_learning/query_strats/__init__.py @@ -96,15 +96,15 @@ class ModelBasedQueryStrategy(BaseQueryStrategy): Model objects must satisfy the scikit-learn API""" - def __init__(self, model: BaseEstimator, model_is_fitted: bool = False, **kwargs): + def __init__(self, model: BaseEstimator, fit_model: bool = True, **kwargs): """ Args: model (BaseEstimator): Model to use for querying - model_is_fitted (bool): Whether the model has been fitted already + fit_model (bool): Whether to fit the model before selecting points """ super().__init__(**kwargs) self.model = model - self._model_is_fitted = model_is_fitted + self.fit_model = fit_model def _fit_model(self, problem: ActiveLearningProblem): """Fit the model on the current active learning problem @@ -113,5 +113,6 @@ def _fit_model(self, problem: ActiveLearningProblem): problem (ActiveLearningProblem): Description of the active learning problem """ X, y = problem.get_labeled_points() - self.model.fit(X, y) - self._model_is_fitted = True + if self.fit_model: + self.model.fit(X, y) + self.fit_model = True diff --git a/active_learning/query_strats/classification/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py index ae3eee6..11c7175 100644 --- a/active_learning/query_strats/classification/batch_active_search.py +++ b/active_learning/query_strats/classification/batch_active_search.py @@ -76,16 +76,16 @@ class SequentialSimulatedBatchSearch(ModelBasedQueryStrategy, BaseQueryStrategy) TBD: Better description after reading the paper""" def __init__(self, model: BaseEstimator, query_strategy: BaseQueryStrategy, - fictional_oracle: Union[str, FictionalOracle], model_is_fitted: bool = False): + fictional_oracle: Union[str, FictionalOracle], fit_model: bool = True): """Initialize strategy Args: model (BaseEstimator): Model used to guide the search - model_is_fitted (bool): Whether the model has been fitted already + fit_model (bool): Whether to fit the model before querying query_strategy (BaseQueryStrategy): Strategy to perform sequential selection fictional_oracle (string): Function used to emulate labeling """ - super().__init__(model=model, model_is_fitted=model_is_fitted) + super().__init__(model=model, fit_model=fit_model) self.query_strategy = query_strategy if isinstance(fictional_oracle, str): self.fictional_oracle = _FICTIONAL_ORACLES[fictional_oracle] diff --git a/active_learning/query_strats/classification/three_ds.py b/active_learning/query_strats/classification/three_ds.py index 44eaacf..0050061 100644 --- a/active_learning/query_strats/classification/three_ds.py +++ b/active_learning/query_strats/classification/three_ds.py @@ -53,6 +53,7 @@ def __init__(self, model: BaseEstimator, dwc: float = 0.5, gmm: BaseMixture = Ga Args: model (BaseEstimator): Model used to generate the "distance" metric dwc (float): Diversity weighting coefficient (larger to weigh diversity more) + gmm (BaseMixture): Strategy used to model the distribution of the search space """ super().__init__(model) self.dwc = dwc diff --git a/active_learning/query_strats/regression/mcal_regression.py b/active_learning/query_strats/regression/mcal_regression.py index 4e37197..7432540 100644 --- a/active_learning/query_strats/regression/mcal_regression.py +++ b/active_learning/query_strats/regression/mcal_regression.py @@ -1,77 +1,110 @@ -from collections import defaultdict +from active_learning.query_strats import ModelBasedQueryStrategy +from active_learning.problem import ActiveLearningProblem -import numpy as np from scipy.spatial.distance import pdist, squareform from sklearn.cluster import DBSCAN from sklearn.svm import SVR +from collections import defaultdict +from random import sample +from typing import List +import numpy as np def _density(pts): - """Sort of density for a set of points""" + """Compute a density-like metric for a set of points + + Args: + pts ([[float]]): Distances for a set of points + Returns: + - (float): Density metrics + - (np.ndarray): Distances between each point + """ pts = np.array(pts) dists = pdist(pts) return len(pts) / dists.max(), squareform(dists) -def mcal_regression(problem: dict, train_ixs: np.ndarray, obs_labels: np.ndarray, unlabeled_ixs: np.ndarray, - batch_size: int, **kwargs) -> np.ndarray: - """ - Multiple criteria active regression for SVMs (https://doi.org/10.1016/j.patcog.2014.02.001). - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * model: SVM regressor we are training - :param train_ixs: index into `points` of the training examples - :param obs_labels: labels for the training examples - :param unlabeled_ixs: np.array of the indices of the unlabeled examples - :param batch_size: size of the batch to select - :return: +class MCALStrategy(ModelBasedQueryStrategy): + """The Multiple Criteria Active Learning method for support vector regression + + Uses the methods described by + `Demir and Bruzzone `_ + to select points for evaluation based on: + + 1. *Relevancy*: Whether each point is likely to be important in model fitting (e.g., a support vector + 2. *Diversity*: Whether the points are different regions of the search space + 3. *Density*: Whether the points are from regions that contain many other points """ - points: np.ndarray = problem['points'] - model: SVR = problem['model'] - assert isinstance(model, SVR) - - # split training points into support vectors and non support vectors - support_mask = np.zeros(len(train_ixs), dtype=bool) - support_mask[model.support_] = True - train_sv_ixs = train_ixs[support_mask] - train_not_sv_ixs = train_ixs[~support_mask] - - # train clusterer - # extra arrays and whatnot to track indices into the points array and whether a given points was - # a training point or not - clusterer = DBSCAN(eps=1.0) - clst_ixs = np.concatenate([train_not_sv_ixs, unlabeled_ixs]) - train_mask = np.zeros(clst_ixs.shape, dtype=bool) - train_mask[:len(train_not_sv_ixs)] = True - clst_pts = points[clst_ixs] - clst_labels = clusterer.fit_predict(clst_pts) - - # group by cluster labels - clst2pts = defaultdict(list) - for pt, label, is_train, ix in zip(clst_pts, clst_labels, train_mask, clst_ixs): - clst2pts[label].append((pt, is_train, ix)) - - # find clusters that do not contain any non support vectors from training - good_clsts = [ - label - for label, pts in clst2pts.items() - if not any(is_train for pt, is_train, ix in pts) - ] - - # find the "densest" clusters - densities = [ - (i, _density([pt for pt, is_train, ix in clst2pts[i]])) - for i in good_clsts - ] - - n_samples = min(batch_size, len(good_clsts)) - k_densest = sorted(densities, key=lambda x: x[1][0], reverse=True)[:n_samples] - - # sample one point from each of the densest clusters - selected = [] - for i, (density, dists) in densities: - dists = np.mean(dists, axis=1) - dense_ix = np.argmin(dists) - selected.append(clst2pts[i][dense_ix][2]) - - return np.array(selected, dtype=int) + + def __init__(self, svm_options: dict = None): + """Initialize the model + + Args: + svm_options (dict): Any options for the SVM + """ + # Make the SVR model + model = SVR(**(svm_options if svm_options is not None else {})) + super(MCALStrategy, self).__init__(model, fit_model=True) + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: + # Fit the SVR model + self._fit_model(problem) + + # split training points into support vectors and non support vectors + train_ixs = np.array(problem.get_labeled_ixs()) + support_mask = np.zeros(len(train_ixs), dtype=bool) + support_mask[self.model.support_] = True + train_not_sv_ixs = train_ixs[~support_mask] + + # train clusterer + # extra arrays and whatnot to track indices into the points array and whether a given points was + # a training point or not + clusterer = DBSCAN(eps=1.0) + unlabeled_ixs = problem.get_unlabeled_ixs() + clst_ixs = np.concatenate([train_not_sv_ixs, unlabeled_ixs]) + train_mask = np.zeros(clst_ixs.shape, dtype=bool) + train_mask[:len(train_not_sv_ixs)] = True + clst_pts = problem.points[clst_ixs] + clst_labels = clusterer.fit_predict(clst_pts) + + # group by cluster labels + clst2pts = defaultdict(list) + for pt, label, is_train, ix in zip(clst_pts, clst_labels, train_mask, clst_ixs): + clst2pts[label].append((pt, is_train, ix)) + + # find clusters that do not contain any non support vectors from training + good_clsts = [ + label + for label, pts in clst2pts.items() + if not any(is_train for pt, is_train, ix in pts) + ] + + # find the "densest" clusters + densities = [ + (i, _density([pt for pt, is_train, ix in clst2pts[i]])) + for i in good_clsts + ] + + n_samples = min(n_to_select, len(good_clsts)) + k_densest = sorted(densities, key=lambda x: x[1][0], reverse=True)[:n_samples] + + # sample one point from each of the densest clusters + selected = [] + for i, (density, dists) in k_densest: + dists = np.mean(dists, axis=1) + dense_ix = np.argmin(dists) + selected.append(clst2pts[i].pop(dense_ix)[2]) + + # Randomly select from good clusters, if selection not met + # Picking randomly from the list of unlabeled indices to target "density" + if len(selected) < n_to_select: + good_ixs = sum([list(map(lambda x: x[2], clst2pts[c])) for c in good_clsts], list()) + unselected_ixs = set(good_ixs).difference(selected) + selected.extend(sample(unselected_ixs, n_to_select - len(selected))) + + # Randomly pick points from all the clusters, even the bad ones + if len(selected) < n_to_select: + unselected_ixs = set(unlabeled_ixs).difference(selected) + selected.extend(sample(unselected_ixs, n_to_select - len(selected))) + + return np.array(selected, dtype=int) diff --git a/active_learning/query_strats/regression/rfr_balanced.py b/active_learning/query_strats/regression/rfr_balanced.py deleted file mode 100644 index c53e5c7..0000000 --- a/active_learning/query_strats/regression/rfr_balanced.py +++ /dev/null @@ -1,81 +0,0 @@ -import numpy as np - -from sklearn.ensemble import RandomForestRegressor -from sklearn.neighbors import NearestNeighbors - - -def _score_variances(estimators, points): - # find the prediction that each estimator would place on each point - # predictions: [n_samples, n_estimators] - predictions = np.hstack([tree.predict(points).reshape(-1, 1) for tree in estimators]) - - # calculate the variance in the estimators' predictions for each sample - variances = np.var(predictions, axis=1) - - return variances - - -def _score_densities(nn: NearestNeighbors, points: np.ndarray): - """ - Average distance of each point to its ten nearest neighbors--gives estimate of density of neighborhood around - each point - """ - dists, ixs = nn.kneighbors(points, n_neighbors=11) - - # lop off first column of all 0s due to points being their own closest neighbor - dists = dists[:, 1:] - - return 1 / dists.mean(axis=1) - - -def rfr_balanced(problem: dict, train_ixs: np.ndarray, obs_values: np.ndarray, unlabeled_ixs: np.ndarray, - batch_size: int, **kwargs): - """ - Active learning for regression based on random forest regressor. Balances three criteria: uncertainty, density, - and greediness. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * model: RandomForestRegressor - :param train_ixs: - :param obs_values: - :param unlabeled_ixs: - :param batch_size: - :param kwargs: - :return: - """ - points = problem['points'] - model: RandomForestRegressor = problem['model'] - assert isinstance(model, RandomForestRegressor) - - # use nearest neighbors computer to estimate densities, and if possible store the model - # to avoid recomputing - nn_model: NearestNeighbors = problem.get("_nn_model") - if nn_model is None: - nn_model = NearestNeighbors().fit(points) - problem["_nn_model"] = nn_model - - trees = model.estimators_ - unlabeled_pts = points[unlabeled_ixs] - - # compute variance in predictions - measures uncertainty - variances = _score_variances(trees, unlabeled_pts) - variances = variances / variances.max() - - # potentially recompute density of neighborhood around each point - # density = how representative a point is of overall data - if "densities" not in problem: - problem['densities'] = _score_densities(nn_model, points) - densities = problem['densities'][unlabeled_ixs] - densities = densities / densities.max() - - # predict value for each point = greedy criterion - pred_vals = -1 * model.predict(unlabeled_pts) - pred_vals = pred_vals - pred_vals.min() - pred_vals = pred_vals / pred_vals.max() - - scores = variances + densities + pred_vals - - # uncertain samples - uncertain_ixs = np.argpartition(scores, -batch_size)[-batch_size:] - - return unlabeled_ixs[uncertain_ixs] diff --git a/active_learning/query_strats/regression/rfr_variance.py b/active_learning/query_strats/regression/rfr_variance.py deleted file mode 100644 index 570183e..0000000 --- a/active_learning/query_strats/regression/rfr_variance.py +++ /dev/null @@ -1,44 +0,0 @@ -import numpy as np - -from sklearn.ensemble import RandomForestRegressor - - -def _score(estimators, points): - # find the prediction that each estimator would place on each point - # predictions: [n_samples, n_estimators] - predictions = np.hstack([tree.predict(points).reshape(-1, 1) for tree in estimators]) - - # calculate the variance in the estimators' predictions for each sample - variances = np.var(predictions, axis=1) - - return variances - - -def rfr_variance(problem: dict, train_ixs: np.ndarray, obs_values: np.ndarray, unlabeled_ixs: np.ndarray, - batch_size: int, **kwargs): - """ - AL for regression based on RandomForestRegressor. Like uncertainty sampling in the classification setting! - Use estimates from the trees in the forest, compute variance as uncertainty. - :param problem: dictionary that defines the problem, containing keys: - * points: an (n_samples, n_dim) matrix of points in the space - * model: the RandomForestRegressor model we are training - :param train_ixs: - :param obs_values: - :param unlabeled_ixs: - :param batch_size: - :param kwargs: - :return: - """ - points = problem['points'] - model: RandomForestRegressor = problem['model'] - assert isinstance(model, RandomForestRegressor) - - trees = model.estimators_ - unlabeled_pts = points[unlabeled_ixs] - - variances = _score(trees, unlabeled_pts) - - # uncertain samples - uncertain_ixs = np.argpartition(variances, -batch_size)[-batch_size:] - - return unlabeled_ixs[uncertain_ixs] \ No newline at end of file diff --git a/active_learning/query_strats/regression/tests/test_greedy.py b/active_learning/query_strats/regression/tests/test_greedy.py index 7b3815c..ec14111 100644 --- a/active_learning/query_strats/regression/tests/test_greedy.py +++ b/active_learning/query_strats/regression/tests/test_greedy.py @@ -15,4 +15,3 @@ def test_greedy(self): greedy = GreedySelection(model) selection = greedy.select_points(problem, 1)[0] self.assertTrue(selection == 0 or selection == 15) - diff --git a/active_learning/query_strats/regression/tests/test_mcal.py b/active_learning/query_strats/regression/tests/test_mcal.py new file mode 100644 index 0000000..20d1782 --- /dev/null +++ b/active_learning/query_strats/regression/tests/test_mcal.py @@ -0,0 +1,16 @@ +from unittest import TestCase +from sklearn.linear_model import LinearRegression +from active_learning.query_strats.regression.mcal_regression import MCALStrategy +from active_learning.tests.test_problem import make_xsinx + + +class TestMCAL(TestCase): + + def test_mcal(self): + problem = make_xsinx() + + # Not sure how this one functions yet, + # so we're just going to make sure it does not crash + mcal = MCALStrategy() + selection = mcal.select_points(problem, 4) + self.assertEquals(4, len(selection)) From 7ff650fe2667999753d5e159f1f0c814a10f1160 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Sun, 28 Apr 2019 14:12:37 -0500 Subject: [PATCH 24/36] Made importing easier --- active_learning/query_strats/classification/__init__.py | 6 ++++++ active_learning/query_strats/regression/__init__.py | 3 +++ active_learning/query_strats/regression/mcal_regression.py | 4 ++-- active_learning/query_strats/regression/tests/test_mcal.py | 4 ++-- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/active_learning/query_strats/classification/__init__.py b/active_learning/query_strats/classification/__init__.py index bfeeabe..2ea4de6 100644 --- a/active_learning/query_strats/classification/__init__.py +++ b/active_learning/query_strats/classification/__init__.py @@ -1 +1,7 @@ """Query strategies specific to classification problems""" + +from .active_search import ActiveSearch +from .batch_active_search import SequentialSimulatedBatchSearch +from .greedy import GreedySearch +from .three_ds import ThreeDs +from .uncertainty_sampling import UncertaintySampling diff --git a/active_learning/query_strats/regression/__init__.py b/active_learning/query_strats/regression/__init__.py index c7ff3bf..2143a7a 100644 --- a/active_learning/query_strats/regression/__init__.py +++ b/active_learning/query_strats/regression/__init__.py @@ -1 +1,4 @@ """Query strategies specific to regression problems""" + +from .greedy import GreedySelection +from .mcal_regression import MCALSelection diff --git a/active_learning/query_strats/regression/mcal_regression.py b/active_learning/query_strats/regression/mcal_regression.py index 7432540..7ea6a2b 100644 --- a/active_learning/query_strats/regression/mcal_regression.py +++ b/active_learning/query_strats/regression/mcal_regression.py @@ -24,7 +24,7 @@ def _density(pts): return len(pts) / dists.max(), squareform(dists) -class MCALStrategy(ModelBasedQueryStrategy): +class MCALSelection(ModelBasedQueryStrategy): """The Multiple Criteria Active Learning method for support vector regression Uses the methods described by @@ -44,7 +44,7 @@ def __init__(self, svm_options: dict = None): """ # Make the SVR model model = SVR(**(svm_options if svm_options is not None else {})) - super(MCALStrategy, self).__init__(model, fit_model=True) + super(MCALSelection, self).__init__(model, fit_model=True) def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: # Fit the SVR model diff --git a/active_learning/query_strats/regression/tests/test_mcal.py b/active_learning/query_strats/regression/tests/test_mcal.py index 20d1782..9a6e406 100644 --- a/active_learning/query_strats/regression/tests/test_mcal.py +++ b/active_learning/query_strats/regression/tests/test_mcal.py @@ -1,6 +1,6 @@ from unittest import TestCase from sklearn.linear_model import LinearRegression -from active_learning.query_strats.regression.mcal_regression import MCALStrategy +from active_learning.query_strats.regression.mcal_regression import MCALSelection from active_learning.tests.test_problem import make_xsinx @@ -11,6 +11,6 @@ def test_mcal(self): # Not sure how this one functions yet, # so we're just going to make sure it does not crash - mcal = MCALStrategy() + mcal = MCALSelection() selection = mcal.select_points(problem, 4) self.assertEquals(4, len(selection)) From 5046562673b8b21634abdfdb509ce2d271753d3a Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 29 Apr 2019 10:32:31 -0500 Subject: [PATCH 25/36] Added uncertainty sampling for regression --- active_learning/query_strats/__init__.py | 3 +++ .../query_strats/regression/__init__.py | 1 + .../query_strats/regression/greedy.py | 17 ++++++------- .../regression/tests/test_greedy.py | 5 +++- .../regression/tests/test_uncertainty.py | 23 ++++++++++++++++++ .../query_strats/regression/uncertainty.py | 24 +++++++++++++++++++ 6 files changed, 64 insertions(+), 9 deletions(-) create mode 100644 active_learning/query_strats/regression/tests/test_uncertainty.py create mode 100644 active_learning/query_strats/regression/uncertainty.py diff --git a/active_learning/query_strats/__init__.py b/active_learning/query_strats/__init__.py index 35581b2..a0bc0cc 100644 --- a/active_learning/query_strats/__init__.py +++ b/active_learning/query_strats/__init__.py @@ -62,6 +62,8 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): def score_all(self, problem: ActiveLearningProblem) -> Tuple[List[int], List[float]]: """Determine the scores for all non-labeled points + Entries with the highest scores are selected + Args: problem (ActiveLearningProblem): Active learning problem definition Return: @@ -82,6 +84,7 @@ def score_all(self, problem: ActiveLearningProblem) -> Tuple[List[int], List[flo fun = partial(self._score_chunk, problem=problem) # Score each chunk + # TODO (lw): Switch to joblib, so that we can use distributed memory executors with Pool(self.n_cpus) as p: scores = p.map(fun, chunks) diff --git a/active_learning/query_strats/regression/__init__.py b/active_learning/query_strats/regression/__init__.py index 2143a7a..7caa85f 100644 --- a/active_learning/query_strats/regression/__init__.py +++ b/active_learning/query_strats/regression/__init__.py @@ -2,3 +2,4 @@ from .greedy import GreedySelection from .mcal_regression import MCALSelection +from .uncertainty import UncertaintySampling \ No newline at end of file diff --git a/active_learning/query_strats/regression/greedy.py b/active_learning/query_strats/regression/greedy.py index 426368e..1f91277 100644 --- a/active_learning/query_strats/regression/greedy.py +++ b/active_learning/query_strats/regression/greedy.py @@ -1,14 +1,15 @@ from ...problem import ActiveLearningProblem -from .. import ModelBasedQueryStrategy +from .. import ModelBasedQueryStrategy, IndividualScoreQueryStrategy from typing import List -import numpy as np -class GreedySelection(ModelBasedQueryStrategy): +class GreedySelection(ModelBasedQueryStrategy, IndividualScoreQueryStrategy): """Select the points with this highest predicted values of the output function""" - def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: - super()._fit_model(problem) - unlabeled_ixs = np.array(problem.get_unlabeled_ixs()) - scores = problem.objective_fun.score(self.model.predict(problem.points[unlabeled_ixs])) - return unlabeled_ixs[np.argpartition(scores, n_to_select)][:n_to_select] + def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + if self.fit_model: + self.model.fit(*problem.get_labeled_points()) + return super().select_points(problem, n_to_select) + + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): + return -1 * problem.objective_fun.score(self.model.predict(problem.points[inds])) diff --git a/active_learning/query_strats/regression/tests/test_greedy.py b/active_learning/query_strats/regression/tests/test_greedy.py index ec14111..bc3dcb3 100644 --- a/active_learning/query_strats/regression/tests/test_greedy.py +++ b/active_learning/query_strats/regression/tests/test_greedy.py @@ -14,4 +14,7 @@ def test_greedy(self): # depending on the slope of the linear regression line greedy = GreedySelection(model) selection = greedy.select_points(problem, 1)[0] - self.assertTrue(selection == 0 or selection == 15) + if greedy.model.coef_.sum() > 0: + self.assertEqual(0, selection) + else: + self.assertEqual(15, selection) diff --git a/active_learning/query_strats/regression/tests/test_uncertainty.py b/active_learning/query_strats/regression/tests/test_uncertainty.py new file mode 100644 index 0000000..39695b5 --- /dev/null +++ b/active_learning/query_strats/regression/tests/test_uncertainty.py @@ -0,0 +1,23 @@ +from active_learning.query_strats.regression import UncertaintySampling +from active_learning.tests.test_problem import make_xsinx +from sklearn.linear_model import BayesianRidge +from unittest import TestCase +import numpy as np + + +class TestUncertainty(TestCase): + + def test_uncertainty(self): + # Make the problem + problem = make_xsinx() + model = BayesianRidge() + + # Figure out the answer beforehand + model.fit(*problem.get_labeled_points()) + _, y_std = model.predict(problem.get_unlabeled_points(), return_std=True) + max_ix = problem.get_unlabeled_ixs()[np.argmax(y_std)] + + # Run the sampling + uncert = UncertaintySampling(model) + selections = uncert.select_points(problem, 1) + self.assertEqual(selections, max_ix) diff --git a/active_learning/query_strats/regression/uncertainty.py b/active_learning/query_strats/regression/uncertainty.py new file mode 100644 index 0000000..f391a2c --- /dev/null +++ b/active_learning/query_strats/regression/uncertainty.py @@ -0,0 +1,24 @@ +from active_learning.query_strats import ModelBasedQueryStrategy, IndividualScoreQueryStrategy +from active_learning.problem import ActiveLearningProblem +from inspect import signature +from typing import List + + +class UncertaintySampling(ModelBasedQueryStrategy, IndividualScoreQueryStrategy): + """Select the entries with the largest uncertainty""" + + def __init__(self, model, refit_model: bool = True): + super().__init__(model, refit_model) + + # Check if the function supports "return_std" + if 'return_std' not in signature(self.model.predict).parameters: + raise ValueError('The model must have "return_std" in the predict methods') + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + if self.fit_model: + self.model.fit(*problem.get_labeled_points()) + return super().select_points(problem, n_to_select) + + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): + _, y_std = self.model.predict(problem.points[inds], return_std=True) + return y_std From b977904f0297afc6a68db7bd0ca6514df300d8ab Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 29 Apr 2019 10:48:08 -0500 Subject: [PATCH 26/36] Added travis confiruation Also fixed some flake issues --- .travis.yml | 13 +++++++++++++ .../query_strats/classification/__init__.py | 3 +++ .../query_strats/classification/active_search.py | 7 ++++--- .../classification/batch_active_search.py | 3 ++- .../classification/tests/test_active_search.py | 1 - .../tests/test_batch_active_search.py | 3 ++- .../classification/tests/test_three_ds.py | 1 - .../query_strats/classification/three_ds.py | 13 +++++-------- .../query_strats/regression/__init__.py | 4 +++- .../query_strats/regression/mcal_regression.py | 8 ++++---- .../query_strats/regression/tests/test_mcal.py | 1 - requirements.txt | 1 + setup.cfg | 6 ++++++ setup.py | 14 +++++++++----- 14 files changed, 52 insertions(+), 26 deletions(-) create mode 100644 .travis.yml create mode 100644 requirements.txt create mode 100644 setup.cfg diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..205dfa3 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,13 @@ +language: python +python: +- "3.6" +cache: pip +install: +- pip install --upgrade pip +- pip install -e . +- pip install -r requirements.txt -U --upgrade-strategy eager +script: +- flake8 . +- travis_wait 50 nosetests +after_success: +- coveralls diff --git a/active_learning/query_strats/classification/__init__.py b/active_learning/query_strats/classification/__init__.py index 2ea4de6..9943720 100644 --- a/active_learning/query_strats/classification/__init__.py +++ b/active_learning/query_strats/classification/__init__.py @@ -5,3 +5,6 @@ from .greedy import GreedySearch from .three_ds import ThreeDs from .uncertainty_sampling import UncertaintySampling + +__all__ = ['ActiveSearch', 'SequentialSimulatedBatchSearch', 'GreedySearch', + 'ThreeDs', 'UncertaintySampling'] diff --git a/active_learning/query_strats/classification/active_search.py b/active_learning/query_strats/classification/active_search.py index ad86a02..e790112 100644 --- a/active_learning/query_strats/classification/active_search.py +++ b/active_learning/query_strats/classification/active_search.py @@ -1,4 +1,4 @@ -from sklearn.base import BaseEstimator, clone +from sklearn.base import BaseEstimator from active_learning.problem import ActiveLearningProblem from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List @@ -75,8 +75,9 @@ class ActiveSearch(ModelBasedQueryStrategy, IndividualScoreQueryStrategy): """Efficient Non-Myopic Active Search. Based on an algorithm by [Jiang et al.](http://proceedings.mlr.press/v70/jiang17d/jiang17d.pdf). - Automatically balances between the desire to greedily query points highly likely to be the target - class and those which, if queries, will lead to model improvements that will lead to more + Automatically balances between the desire to greedily query points + highly likely to be the target class and those which, if queried, + will lead to model improvements that will lead to more targets to be found later on.""" def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): diff --git a/active_learning/query_strats/classification/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py index 11c7175..5757381 100644 --- a/active_learning/query_strats/classification/batch_active_search.py +++ b/active_learning/query_strats/classification/batch_active_search.py @@ -50,7 +50,8 @@ def label(self, model: BaseEstimator, x: np.array, target: int): class PessimisticOracle(FictionalOracle): - """Assume the prediction is not the target class. Assumes that the model binary classification""" + """Assume the prediction is not the target class. + Assumes that the model binary classification""" def label(self, model: BaseEstimator, x: np.array, target: int): return 1 - target diff --git a/active_learning/query_strats/classification/tests/test_active_search.py b/active_learning/query_strats/classification/tests/test_active_search.py index c56a026..39d3f85 100644 --- a/active_learning/query_strats/classification/tests/test_active_search.py +++ b/active_learning/query_strats/classification/tests/test_active_search.py @@ -32,4 +32,3 @@ def test_active_search(self): score = active_search._score_chunk(sorted(inds), problem) self.assertTrue(np.isclose(score, [[4./3, 4./3, 4./3, 1]]).all()) - diff --git a/active_learning/query_strats/classification/tests/test_batch_active_search.py b/active_learning/query_strats/classification/tests/test_batch_active_search.py index 6ebb69e..b1c6450 100644 --- a/active_learning/query_strats/classification/tests/test_batch_active_search.py +++ b/active_learning/query_strats/classification/tests/test_batch_active_search.py @@ -1,4 +1,5 @@ -from active_learning.query_strats.classification.batch_active_search import SequentialSimulatedBatchSearch +from active_learning.query_strats.classification.batch_active_search\ + import SequentialSimulatedBatchSearch from active_learning.query_strats.random_sampling import RandomQuery from active_learning.tests.test_problem import make_grid_problem from unittest import TestCase diff --git a/active_learning/query_strats/classification/tests/test_three_ds.py b/active_learning/query_strats/classification/tests/test_three_ds.py index 5f694dd..fa6573d 100644 --- a/active_learning/query_strats/classification/tests/test_three_ds.py +++ b/active_learning/query_strats/classification/tests/test_three_ds.py @@ -1,6 +1,5 @@ from unittest import TestCase -import numpy as np from sklearn.neighbors import KNeighborsClassifier from active_learning.query_strats.classification.three_ds import ThreeDs diff --git a/active_learning/query_strats/classification/three_ds.py b/active_learning/query_strats/classification/three_ds.py index 0050061..9094515 100644 --- a/active_learning/query_strats/classification/three_ds.py +++ b/active_learning/query_strats/classification/three_ds.py @@ -22,7 +22,7 @@ def _calc_diversities(gmm: BaseMixture, points: np.ndarray, S_scores = gmm.score(points[S]) S_score = np.sum(S_scores) - # LW 2Nov18: I think this is correct, but the state of S does not change the point with highest score + # TODO (lw): The state of S does not change the point with highest score? log_probs = gmm.score_samples(X_test) scores = -(log_probs + S_score) / (len(S) + 1) @@ -47,7 +47,8 @@ class ThreeDs(ModelBasedQueryStrategy, BaseQueryStrategy): so the effect of this factor is to pick points in low-density regions. """ - def __init__(self, model: BaseEstimator, dwc: float = 0.5, gmm: BaseMixture = GaussianMixture()): + def __init__(self, model: BaseEstimator, dwc: float = 0.5, + gmm: BaseMixture = GaussianMixture()): """Initialize the strategy Args: @@ -66,12 +67,8 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): # Fit the model on the new problem self._fit_model(problem) - # Get the labeled and unlabeled indices - L = problem.labeled_ixs + # Get the unlabeled indices and points U = problem.get_unlabeled_ixs() - - # Separate the model into the labeled and unlabeled points - X_train = points[L] X_test = points[U] # calculate weighting factor @@ -82,7 +79,7 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): probs = np.apply_along_axis(np.sort, 1, probs) c1 = probs[:, -1] c2 = probs[:, -2] - distances = np.log(c1) - np.log(c2) # Only work for binary classification + distances = np.log(c1) - np.log(c2) # Only work for binary classification # density function via mixture model # The paper describes traininng the model with initial unlabled set and a small labeled set diff --git a/active_learning/query_strats/regression/__init__.py b/active_learning/query_strats/regression/__init__.py index 7caa85f..0ee2773 100644 --- a/active_learning/query_strats/regression/__init__.py +++ b/active_learning/query_strats/regression/__init__.py @@ -2,4 +2,6 @@ from .greedy import GreedySelection from .mcal_regression import MCALSelection -from .uncertainty import UncertaintySampling \ No newline at end of file +from .uncertainty import UncertaintySampling + +__all__ = ['GreedySelection', 'MCALSelection', 'UncertaintySampling'] diff --git a/active_learning/query_strats/regression/mcal_regression.py b/active_learning/query_strats/regression/mcal_regression.py index 7ea6a2b..853019f 100644 --- a/active_learning/query_strats/regression/mcal_regression.py +++ b/active_learning/query_strats/regression/mcal_regression.py @@ -31,7 +31,7 @@ class MCALSelection(ModelBasedQueryStrategy): `Demir and Bruzzone `_ to select points for evaluation based on: - 1. *Relevancy*: Whether each point is likely to be important in model fitting (e.g., a support vector + 1. *Relevancy*: Whether each point is likely to be important in model fitting 2. *Diversity*: Whether the points are different regions of the search space 3. *Density*: Whether the points are from regions that contain many other points """ @@ -57,10 +57,10 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> Lis train_not_sv_ixs = train_ixs[~support_mask] # train clusterer - # extra arrays and whatnot to track indices into the points array and whether a given points was - # a training point or not + # extra arrays and whatnot to track indices into the points array + # and whether a given points was a training point or not clusterer = DBSCAN(eps=1.0) - unlabeled_ixs = problem.get_unlabeled_ixs() + unlabeled_ixs = problem.get_unlabeled_ixs() clst_ixs = np.concatenate([train_not_sv_ixs, unlabeled_ixs]) train_mask = np.zeros(clst_ixs.shape, dtype=bool) train_mask[:len(train_not_sv_ixs)] = True diff --git a/active_learning/query_strats/regression/tests/test_mcal.py b/active_learning/query_strats/regression/tests/test_mcal.py index 9a6e406..dcc1066 100644 --- a/active_learning/query_strats/regression/tests/test_mcal.py +++ b/active_learning/query_strats/regression/tests/test_mcal.py @@ -1,5 +1,4 @@ from unittest import TestCase -from sklearn.linear_model import LinearRegression from active_learning.query_strats.regression.mcal_regression import MCALSelection from active_learning.tests.test_problem import make_xsinx diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..6191f4f --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +scikit-learn>=0.20.2 diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..f0412d2 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,6 @@ +[bdist_wheel] +universal = 1 + +[flake8] +exclude = .git,*.egg*,src/* +max-line-length = 100 diff --git a/setup.py b/setup.py index 9d738cc..29268c3 100644 --- a/setup.py +++ b/setup.py @@ -8,16 +8,20 @@ setuptools.setup( name="active_learning", version="0.0.1", - author="Theodore Ando", - author_email="tando2@icloud.com", + author="Logan Ward", + author_email="loganw@icloud.com", description="Active learning library for python", long_description=long_description, long_description_content_type="text/markdown", - url="https://github.com/theodore-ando/active-learning", + url="https://github.com/globus-labs/active-learning", packages=setuptools.find_packages(), + install_requires=[ + 'scikit-learn' + ], + python_requires='>3.5', classifiers=( "Programming Language :: Python :: 3", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", - ), -) \ No newline at end of file + ) +) From a1ce55c248006004ce67dc0c255dd6f3969680cb Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 29 Apr 2019 10:53:38 -0500 Subject: [PATCH 27/36] Added flake and coveralls dependencies --- .travis.yml | 1 + test-requirements.txt | 2 ++ 2 files changed, 3 insertions(+) create mode 100644 test-requirements.txt diff --git a/.travis.yml b/.travis.yml index 205dfa3..d73a617 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,7 @@ install: - pip install --upgrade pip - pip install -e . - pip install -r requirements.txt -U --upgrade-strategy eager +- pip install -r test-requirements.txt script: - flake8 . - travis_wait 50 nosetests diff --git a/test-requirements.txt b/test-requirements.txt new file mode 100644 index 0000000..7d0b1d0 --- /dev/null +++ b/test-requirements.txt @@ -0,0 +1,2 @@ +flake8 +coveralls From 45d2b89361e4d0d1a7259098bdf97811dbf24062 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 29 Apr 2019 11:03:59 -0500 Subject: [PATCH 28/36] Added coverage --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index d73a617..c58d2d9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,6 @@ install: - pip install -r test-requirements.txt script: - flake8 . -- travis_wait 50 nosetests +- travis_wait 50 nosetests --with-coverage --cover-package=active_learning after_success: - coveralls From c793c30622d3790b0b8ddde043af554f74cb3a09 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 29 Apr 2019 11:08:06 -0500 Subject: [PATCH 29/36] Update README.md --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index c64ef8d..9461c92 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,23 @@ # Active Learning for Python +[![Build Status](https://travis-ci.org/globus-labs/active-learning.svg?branch=master)](https://travis-ci.org/globus-labs/active-learning) +[![Coverage Status](https://coveralls.io/repos/github/globus-labs/active-learning/badge.svg?branch=master)](https://coveralls.io/github/globus-labs/active-learning?branch=master) -This is a toolkit for active learning in python designed to be used in conjunction -with scikit-learn models. Its structure comes from Roman Garnett's active learning [toolbox for Matlab](https://github.com/rmgarnett/active_learning). +Toolkit for active learning in Python designed to be used in conjunction with scikit-learn models. ## Installation -You can install by cloning with `git clone https://github.com/theodore-ando/active-learning` followed +You can install by cloning with `git clone https://github.com/globus-labs/active-learning` followed by `pip install -e ./active-learning` -## Basic usage +## Usage -See [example.ipynb](example.ipynb) for the basic usage of the API and a simple comparison of some query strategies. -[example_live.ipynb](example_live.ipynb) shows how easy it is to integrate a real person into the labeling loop. +Examples and tutorials TBD. -## Advanced Usage +## See Also -In the works. +Roman Garnett's active learning [toolbox for Matlab](https://github.com/rmgarnett/active_learning). -# License +## License Copyright 2018 Theodore Ando @@ -31,4 +31,4 @@ Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and -limitations under the License. \ No newline at end of file +limitations under the License. From c06432f77a67aa82fae29dd7e8986b9172615242 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 29 Apr 2019 14:23:07 -0500 Subject: [PATCH 30/36] Bug fix: Made active search respect target label --- active_learning/problem.py | 11 +++-- .../classification/active_search.py | 42 ++++++++++--------- .../classification/batch_active_search.py | 3 ++ 3 files changed, 34 insertions(+), 22 deletions(-) diff --git a/active_learning/problem.py b/active_learning/problem.py index 9e4d49f..114be87 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -33,7 +33,7 @@ def __init__(self, points, labeled_ixs: List[int], labels, self.objective_fun = objective_fun # Set the budget - self.budget = None + self.budget = budget if budget is None: self.budget = len(points) - len(labeled_ixs) @@ -70,8 +70,13 @@ def get_labeled_ixs(self) -> List[int]: """ return list(self.labeled_ixs) - def add_label(self, ind, label): - """Add a label to the labeled set""" + def add_label(self, ind: int, label: float): + """Add a label to the labeled set + + Args: + ind (int): Index of point to label + label (float): Label of that point + """ if ind in self.labeled_ixs: raise AttributeError('Index already included in labeled set') diff --git a/active_learning/query_strats/classification/active_search.py b/active_learning/query_strats/classification/active_search.py index e790112..9a1477a 100644 --- a/active_learning/query_strats/classification/active_search.py +++ b/active_learning/query_strats/classification/active_search.py @@ -1,4 +1,4 @@ -from sklearn.base import BaseEstimator +from sklearn.base import BaseEstimator, clone from active_learning.problem import ActiveLearningProblem from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List @@ -20,6 +20,7 @@ def _lookahead(points: np.ndarray, model: BaseEstimator, x (ndarray): Data point to simulate being labeled label (float): Simulated label """ + # If partial-fit available, use it if hasattr(model, "partial_fit"): return model.partial_fit([x], [label], [0, 1]) @@ -84,34 +85,36 @@ def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): # Get a list of *all* unlabeled entries all_unlabeled_ixs = np.array(problem.get_unlabeled_ixs()) + # Get the probabilities for each class + probs = self.model.predict_proba(problem.points[all_unlabeled_ixs]) + # Get scores for this chunk chunk_scores = [] - for unlabeled_ix in inds: + for ix, unlabeled_ix in enumerate(inds): # Make the new test set test_set = problem.points[all_unlabeled_ixs[all_unlabeled_ixs != unlabeled_ix]] - # Get the probabilities of membership in either class - p0, p1 = self.model.predict_proba(problem.points[[unlabeled_ix]]).reshape(-1) + # Make a copy of the model to use in lookahead + model = clone(self.model) + + # Get the probabilities for this point + my_probs = probs[ix, :] # If the budget is only for one more label, the score is just the probability if problem.budget - 1 == 0: - chunk_scores.append(p1) + chunk_scores.append(my_probs[problem.target_label]) else: # If not, assess the effect of labeling this point - # Evaluate the effect of the point being labeled negative - _lookahead(problem.points, self.model, problem.labeled_ixs, - problem.labels, problem.points[unlabeled_ix], - label=0) - s0 = _expected_future_utility(self.model, test_set, - problem.budget - 1, problem.target_label) - - # Evaluate the effect of the point being labeled positive - _lookahead(problem.points, self.model, problem.labeled_ixs, - problem.labels, problem.points[unlabeled_ix], - label=1) - s1 = _expected_future_utility(self.model, test_set, - problem.budget - 1, problem.target_label) + # Get the expected utility of the entry being labeled each class + expected_util = [] + for i in range(my_probs.shape[0]): + _lookahead(problem.points, model, problem.labeled_ixs, + problem.labels, problem.points[unlabeled_ix], + label=i) + expected_util.append(_expected_future_utility(self.model, test_set, + problem.budget - 1, + problem.target_label)) # Compute the score for this point # This is equal to the probability of it being positive (p1) @@ -119,6 +122,7 @@ def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): # "budget - 1" remaining entries if this point is labeled, # which is equal to the product of the probability of "1" or "0" # times the number of positives in the top budget-1 if "1" or "0" - chunk_scores.append(p1 + (p0 * s0 + p1 * s1)) + chunk_scores.append(my_probs[problem.target_label] + + np.dot(my_probs, expected_util)) return chunk_scores diff --git a/active_learning/query_strats/classification/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py index 5757381..7d5a729 100644 --- a/active_learning/query_strats/classification/batch_active_search.py +++ b/active_learning/query_strats/classification/batch_active_search.py @@ -116,6 +116,9 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int): problem.add_label(x, y) self._fit_model(problem) + # Decrement the budget + problem.budget -= 1 + # Select a single point x = self.query_strategy.select_points(problem, 1) From e01e1bb1b76b4ecd47d677f25f00776d19a60196 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 29 Apr 2019 14:55:20 -0500 Subject: [PATCH 31/36] Updated classification demo notebook --- examples/classification.ipynb | 572 +++++++++++++++++++++++++++++++ examples/selection.ipynb | 629 ---------------------------------- 2 files changed, 572 insertions(+), 629 deletions(-) create mode 100644 examples/classification.ipynb delete mode 100644 examples/selection.ipynb diff --git a/examples/classification.ipynb b/examples/classification.ipynb new file mode 100644 index 0000000..a61ac22 --- /dev/null +++ b/examples/classification.ipynb @@ -0,0 +1,572 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Classification Query Strategies\n", + "This notebooks demonstrates the query strategies for classification problems built into `active_learning`" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "import warnings\n", + "warnings.filterwarnings(action='ignore', category=RuntimeWarning)\n", + "\n", + "from matplotlib import pyplot as plt\n", + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "from sklearn.datasets import make_moons\n", + "from sklearn.gaussian_process import GaussianProcessClassifier\n", + "from sklearn.gaussian_process.kernels import RBF\n", + "\n", + "from active_learning.problem import ActiveLearningProblem\n", + "from active_learning.query_strats.random_sampling import RandomQuery\n", + "from active_learning.query_strats.classification import (GreedySearch, UncertaintySampling,\n", + " ActiveSearch, SequentialSimulatedBatchSearch)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Set the random seed for the experiment" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "np.random.seed(0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Make some Toy Data\n", + "Have a little binary classification task that is not linearly separable." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "X, y = make_moons(noise=0.1, n_samples=200)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Turn it into a DataFrame" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "data = dict(zip(['x1', 'x2'], X.T.tolist()))\n", + "data['y'] = y\n", + "data = pd.DataFrame(data)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Pretend like most of the data is unlabeled" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "data['is_labeled'] = False\n", + "data.loc[175:, 'is_labeled'] = True" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plot it all" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "xlim = [-1.25, 2.2]\n", + "ylim = [-0.8, 1.3]" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-0.8, 1.3)" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\nANv6+jqLi4vm8ycSCVKpFOfPn1fGYRdks1mi0SjZbBZN0+jq6qKnp6fhiyGlNIN0u319z+okZ9c5\nrFwum5IjAIODg3i9XlN5NRgM0tvbq9qrHgH1n/tisYiu67jd7gMxFqfqHS4UCpZNzA130HZVsr29\nvQ3Nfoyt804yYKSUlqsxXddZXl5WhUA7pFAoMDU1Zbp+yuUya2trpNNp+vv7TZdPOp1mbm7O1L9y\nu92cO3euxkBomobf72/YNQghDlWt8jjhdrtNN1I19S1yhRCEw+ED92crdk6pVGJubo5MJmO6QQcG\nBlr+WT5VMYZCoWBrPa2+CPUEg0GGhoZMl5GmaUQiEXp7d9ZVybDiVqgc+Z2ztrZm2Rsgk8kwMTHB\nxMQEuVyOmZkZU1jP2DkYQeZSqUQikSCZTDbsJAwJlJ2+r6eJUqlkmdFixFlUhlHryefzLC8vE41G\n960MPD09bS5+dV2nXC4zPz/f8vTVU7VjaJbetdP89Pb2dtrb29F13bTIO6WZu0ltv3fOdh/ybDbL\n7Oys5XstpTRjTEIIS0MtpaSzs/PM5d/ncjkmJycbXjdN0+jt7aWrq+uIRnZ6qXctr6+vEwwGGR4e\ntpxbMpkMGxsb6LpOe3s7wWDQvC6Xy1kucKWUxGKxluqGtWTHIIS4UwhxTQhxUwjxFovzHiHEJ7fO\nf0sIMVp17q1bx68JIe7YzziMgFn9C74XX7JRhbsbHA6H5fMbqzHFzthJrKBQKFgaBl3X2djYuJWV\nVtbRvvkYjr/6B7RHfwBbhmJpaenM7eIWFxfRdb3hdQsEAqq38wFQLpdrjAJUPp+pVMqy0HJlZYWp\nqSni8TgbGxvMzc0xPz9v3l8qlWzfI7u40V7Z9zJWCOEAPgi8CJgHHhFCfK6ud/OrgXUp5QUhxCuA\n9wJ3CSGeCLwCeBIwAHxZCHFJSmnfNGEbBgcH8Xg8ZsDMEJ06rKyTgYEBpJQkk0nzTYxEImfWn70X\nIpGIrdLkrogn8fyX30FsJCvtF51O5GCE/Pt+BYI+lpeXGRsba82gjxlSSrLZLKVSCZ/Ph9PptDWE\ndtXgiv2xublpWQsipWRjY6NG66tQKDSkxRtGJJ1OEwwGm6YQt1r3rRX+jWcAN6WUkwBCiE8ALwGq\nDcNLgN/Y+vmvgd8XlVnzJcAnpJR5YEoIcXPr8b6518EYq/OjWqFrmsbw8DClUolSqYTb7VYCY7vE\n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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots()\n", + "\n", + "# We are going to be reusing this data a few times\n", + "data['color'] = data['y'].apply(lambda x: 'crimson' if x else 'blue')\n", + " \n", + "ax.scatter(data['x1'], data['x2'],\n", + " color=data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'lightgray'))\n", + "\n", + "ax.set_xlim(xlim)\n", + "ax.set_ylim(ylim)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have a few examples of each class, are going going to try more of the red ones" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Training Model\n", + "Train a basic SVC to use for use during the search procedure" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "# Our basic classifier will be a SVM with rbf kernel\n", + "base_clf = GaussianProcessClassifier(RBF(1.0))" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "labeled_subset = data.query('is_labeled == True')" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "GaussianProcessClassifier(copy_X_train=True, kernel=RBF(length_scale=1),\n", + " max_iter_predict=100, multi_class='one_vs_rest', n_jobs=None,\n", + " n_restarts_optimizer=0, optimizer='fmin_l_bfgs_b',\n", + " random_state=None, warm_start=False)" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "base_clf.fit(labeled_subset[['x1', 'x2']], labeled_subset['y'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plot the decision surface" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "xx, yy = np.meshgrid(np.linspace(*xlim, 8), np.linspace(*ylim, 8))" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "prob = base_clf.predict_proba(list(zip(xx.flatten(), yy.flatten())))[:, 0].reshape(xx.shape, order='C')" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\ndhUe0yCr9QAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots()\n", + "\n", + "ax.imshow(prob, cmap='seismic_r', origin=(0,0), interpolation='bicubic', alpha=0.2,\n", + " extent=xlim+ylim, vmin=0, vmax=1)\n", + "\n", + "ax.scatter(data['x1'], data['x2'],\n", + " color=data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'darkgray'))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Define the Active Learning Problem\n", + "`active_learning` uses a class, `ActiveLearningProblem`, that defines the space of entries to be searched" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "problem = ActiveLearningProblem(\n", + " points=data[['x1', 'x2']].values,\n", + " labeled_ixs=data.query('is_labeled').index.tolist(),\n", + " labels=data.query('is_labeled')['y'].tolist(),\n", + " budget=50,\n", + " target_label=1\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Run Different Querying Strategies\n", + "The main capability of `active_learning` is that it implements many strategies for how to select which points to label next. These are known as \"querying strategies.\" In this section, we demonstrate using several of the methods available for classification" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "num_to_select = 5" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Random Sampling\n", + "Just pick points at random" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 674 µs\n" + ] + } + ], + "source": [ + "%%time\n", + "random_ixs = RandomQuery().select_points(problem, num_to_select)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Greedy Sampling\n", + "Just pick the points most likely to be red. Uses the model we trained earlier" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 25.2 ms\n" + ] + } + ], + "source": [ + "%%time\n", + "greedy_ixs = GreedySearch(model=base_clf).select_points(problem, num_to_select)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Uncertainty Sampling\n", + "Pick the points with the highest uncertainty in the ML model" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 28.1 ms\n" + ] + } + ], + "source": [ + "%%time\n", + "uncertainty_ix = UncertaintySampling(model=base_clf).select_points(problem, num_to_select)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Active Search\n", + "Active search is a more developed technique. It uses both the probably an entry will be a target class (here, we define the target class as `y == 1`), and the probability that - if labeled - a point will improve the model's ability to find new target classes." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 46.7 s\n" + ] + } + ], + "source": [ + "%%time\n", + "active_ix = ActiveSearch(model=base_clf).select_points(problem, num_to_select)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Batch Active Search\n", + "Batch Active Search is different from regular active search in that it picks a group of points that collectively has the best utility. This is more expensive, but prevents the algorithm from picking a homogeneous batch of points." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "%%time\n", + "batch_active_ix = SequentialSimulatedBatchSearch(base_clf, ActiveSearch(base_clf), 'optimistic')\\\n", + " .select_points(problem, num_to_select)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Compare the Selections\n", + "To demonstrate the effect of each labeling, we show the results of each pick" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def plot_selection(ax, data, indices): \n", + " \"\"\"Plot the selections of a certain query strategy\n", + " \n", + " Args:\n", + " ax: Axis to plot on\n", + " data: Data to plot\n", + " indices: List of selected entries\n", + " \"\"\"\n", + "\n", + " # Plot the classifier\n", + " ax.imshow(prob, cmap='seismic_r', origin=(0,0), interpolation='bicubic', alpha=0.35,\n", + " extent=xlim+ylim, aspect='auto', vmin=0, vmax=1)\n", + " \n", + " # Plot the original data\n", + " original_data = data[[x not in indices for x in data.index]]\n", + " ax.scatter(original_data['x1'], original_data['x2'], label=None,\n", + " color=original_data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'darkgray'))\n", + " \n", + " # Plot the selections\n", + " new_selections = data.loc[indices]\n", + " ax.scatter(new_selections['x1'], new_selections['x2'], marker='x', color=new_selections['color'], label='Selected')\n", + " \n", + " ax.set_xlim(xlim)\n", + " ax.set_ylim(ylim)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "fig, axs = plt.subplots(1, 5, sharey=True)\n", + "\n", + "plot_selection(axs[0], data, random_ixs)\n", + "plot_selection(axs[1], data, uncertainty_ix)\n", + "plot_selection(axs[2], data, greedy_ixs)\n", + "plot_selection(axs[3], data, active_ix)\n", + "plot_selection(axs[4], data, batch_active_ix)\n", + "\n", + "for ax, t in zip(axs, ['Random', 'Uncertainty', 'Greedy', 'Active Search', 'Batch Active Search']):\n", + " ax.text(0.5, 1, t, transform=ax.transAxes, ha='center', va='center',\n", + " bbox={'facecolor': 'w', 'edgecolor': 'k'})\n", + "\n", + "axs[0].legend()\n", + "\n", + "fig.set_size_inches(12, 3)\n", + "fig.tight_layout()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note that random picks points clos eto where the boundaries are. Uncertainty sampling picks points close where the classifier has a probability near 50%. Greedy picks points near farthest from the decision boundary. Regular active search picks points that are somewhere in between, but all clustered. Batch active search picks a larger diversity of points" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "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.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/examples/selection.ipynb b/examples/selection.ipynb deleted file mode 100644 index acc1e7b..0000000 --- a/examples/selection.ipynb +++ /dev/null @@ -1,629 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Use Different Strategies to Select Points to Label\n", - "In this example, we will use `active_learning` to pick one batch of points to evaluate next" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "import warnings\n", - "warnings.filterwarnings(action='ignore', category=RuntimeWarning)\n", - "\n", - "from matplotlib import pyplot as plt\n", - "import pandas as pd\n", - "import numpy as np\n", - "\n", - "from sklearn.base import clone\n", - "from sklearn.datasets import make_moons\n", - "from sklearn.neighbors import KNeighborsClassifier\n", - "from sklearn.gaussian_process import GaussianProcessClassifier\n", - "from sklearn.gaussian_process.kernels import RBF\n", - "\n", - "import active_learning\n", - "from active_learning.utils import *\n", - "from active_learning.selectors import identity_selector\n", - "from active_learning.query_strats import random_sampling, uncertainty_sampling, active_search, greedy\n", - "from active_learning.query_strats.batch_active_search import seq_sim_batch\n", - "\n", - "%matplotlib inline" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Set the random seed for the experiment" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "np.random.seed(0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Make some Toy Data\n", - "Have a little binary classification task that is not linearly separable." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "X, y = make_moons(noise=0.1, n_samples=200)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Turn it into a DataFrame" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "data = dict(zip(['x1', 'x2'], X.T.tolist()))\n", - "data['y'] = y\n", - "data = pd.DataFrame(data)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Pretend like most of the data is unlabeled" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "data['is_labeled'] = False\n", - "data.loc[175:, 'is_labeled'] = True" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Plot it all" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "xlim = [-1.25, 2.2]\n", - "ylim = [-0.8, 1.3]" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(-0.8, 1.3)" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "\n", - "# We are going to be reusing this data a few times\n", - "data['color'] = data['y'].apply(lambda x: 'crimson' if x else 'blue')\n", - " \n", - "ax.scatter(data['x1'], data['x2'],\n", - " color=data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'lightgray'))\n", - "\n", - "ax.set_xlim(xlim)\n", - "ax.set_ylim(ylim)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We have a few examples of each class, are going going to try more of the read ones" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Training Model\n", - "Train a basic SVC to use for use during the search procedure" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "# Our basic classifier will be a SVM with rbf kernel\n", - "base_clf = GaussianProcessClassifier(RBF(1.0))" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "labeled_subset = data.query('is_labeled == True')" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "GaussianProcessClassifier(copy_X_train=True, kernel=RBF(length_scale=1),\n", - " max_iter_predict=100, multi_class='one_vs_rest', n_jobs=1,\n", - " n_restarts_optimizer=0, optimizer='fmin_l_bfgs_b',\n", - " random_state=None, warm_start=False)" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "base_clf.fit(labeled_subset[['x1', 'x2']], labeled_subset['y'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Plot the decision surface" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "xx, yy = np.meshgrid(np.linspace(*xlim, 8), np.linspace(*ylim, 8))" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "prob = base_clf.predict_proba(list(zip(xx.flatten(), yy.flatten())))[:, 0].reshape(xx.shape, order='C')" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "\n", - "ax.imshow(prob, cmap='seismic_r', origin=(0,0), interpolation='bicubic', alpha=0.2,\n", - " extent=xlim+ylim, vmin=0, vmax=1)\n", - "\n", - "ax.scatter(data['x1'], data['x2'],\n", - " color=data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'darkgray'))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Define the Active Learning Problem\n", - "`active_learning` uses a \"problem definition\" dictionary for all of the query stategies, which contains:\n", - "- `points`: an (n_samples, n_dim) matrix of all points in the problem space (labeled and unlabeled)\n", - "- `num_classes`: the number of different classes [0, num_classes)\n", - "- `batch_size`: number of points to query each iteration\n", - "- `num_queries`: the max number of queries we can make on the data [Not sure what this means]\n", - "- `model`: the scikit-learn model we are training" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "problem = {\n", - " 'points': data[['x1', 'x2']].values,\n", - " 'num_classes': 2,\n", - " 'batch_size': 8,\n", - " 'num_queries': len(data),\n", - " 'model': base_clf\n", - "}" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We also need to provide the indices and labels for each point that has been measured" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "There are 25 labeled points\n" - ] - } - ], - "source": [ - "train_ixs = data.query('is_labeled').index.tolist()\n", - "obs_labels = data.loc[train_ixs, 'y'].tolist()\n", - "print('There are {} labeled points'.format(len(train_ixs)))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Decide which Unlabelled Points are Worthwhile to Label\n", - "Not all potential points in the search space are worth considering for active search. Some could be very unlikely to be the target class, for example, others might be too costly. `active_learning` has a library of tools available for taking the space of observations and potential points to label, and identifying the the \"worthwhile\" space. For here, we assume all unlabeled points are valid." - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "unlabeled_ixs = identity_selector(problem, train_ixs, obs_labels)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Run Different Querying Strategies\n", - "The main capability of `active_learning` is that it implements many strategies for how to select which points to label next. These are known as \"querying strategies.\" In this section, we demonstrate using a few" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Random Sampling\n", - "Just pick points at random" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wall time: 0 ns\n" - ] - } - ], - "source": [ - "%%time\n", - "random_ixs = random_sampling(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Greedy Sampling\n", - "Just pick the points most likely to be blue" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wall time: 3 ms\n" - ] - } - ], - "source": [ - "%%time\n", - "greedy_ixs = greedy(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Uncertainty Sampling\n", - "Pick the points with the highest uncertainty in the ML model" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wall time: 0 ns\n" - ] - } - ], - "source": [ - "%%time\n", - "uncertainty_ix = uncertainty_sampling(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Active Search\n", - "Active search is a more developed technique. It uses both the probably an entry will be a target class (here, we define the target class as `y == 1`), and the probability that - if labeled - a point will improve the model's ability to find new target classes." - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wall time: 4.55 s\n" - ] - } - ], - "source": [ - "%%time\n", - "active_ix = active_search(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'], budget=2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Batch Active Search\n", - "Batch Active Search is different from regular active search in that it picks a group of points that collectively has the best utility. This is more expensive, but prevents the algorithm from picking a homogeneous batch of points." - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wall time: 40.5 s\n" - ] - } - ], - "source": [ - "%%time\n", - "batch_active_ix = seq_sim_batch(problem, train_ixs, obs_labels, unlabeled_ixs, problem['batch_size'], budget=2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Compare the Selections\n", - "To demonstrate the effect of each labeling, we show the results of each pick" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "def plot_selection(ax, data, indices): \n", - " \"\"\"Plot the selections of a certain query strategy\n", - " \n", - " Args:\n", - " ax: Axis to plot on\n", - " data: Data to plot\n", - " indices: List of selected entries\n", - " \"\"\"\n", - "\n", - " # Plot the classifier\n", - " ax.imshow(prob, cmap='seismic_r', origin=(0,0), interpolation='bicubic', alpha=0.35,\n", - " extent=xlim+ylim, aspect='auto', vmin=0, vmax=1)\n", - " \n", - " # Plot the original data\n", - " original_data = data[[x not in indices for x in data.index]]\n", - " ax.scatter(original_data['x1'], original_data['x2'], label=None,\n", - " color=original_data[['color', 'is_labeled']].T.apply(lambda x: x['color'] if x['is_labeled'] else 'darkgray'))\n", - " \n", - " # Plot the selections\n", - " new_selections = data.loc[indices]\n", - " ax.scatter(new_selections['x1'], new_selections['x2'], marker='x', color=new_selections['color'], label='Selected')\n", - " \n", - " ax.set_xlim(xlim)\n", - " ax.set_ylim(ylim)" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAADSCAYAAABXeTaiAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsnXl8VNX999/nzmQlhH0NEPYdEmQTURZRXFp3rVtdq1ZrbdVH27q0+rjUujz2p61Lf7YVSxVabN0qWsUFATeCICIiO7KTBLJBkpm59/v8ceZO7ty5M5mQBBKYz+uVV+Zu55x7zud+l7N8jxIRUkghhRRSSCGFFFJIIQUN43AXIIUUUkghhRRSSCGFFFoSUgZyCimkkEIKKaSQQgopOOA/3AVoDcjKytpVU1PT7XCXozHIzMzcXV1d3f1wl6M14kho/6ZAikONR2vjUqrNG4bW1r4tAa2NY6k2bl1oDL9Uag5y/VBKSWuvJ6UUIqIOdzlaI46E9m8KpDjUeLQ2LqXavGFobe3bEtDaOJZq49aFxvArNcUihRRSSCGFFFJIIYUUHEgZyCmkkEIKKaSQQgoppOBAykA+SPh8PgoLCxk5ciRnnHEGZWVlTZLu5s2bGTlyZJOklULzwaud7r33Xh577LFmy/PVV19l9erV9d737LPP8re//S3hPStWrGD+/PlNVbQUGondu3dzySWX0L9/f8aOHcukSZN45ZVXmjyfWbNm8dOf/rTJ000hMV555RWUUqxZs6bee2fNmsWOHTsix9dcc01S3319+M9//sOYMWMoKChg+PDh/OlPf2p0mokwbdo0ioqKmjWPlgLbHigoKOCYY47h448/Tnh/WVkZTz/9dL3pNqQOf//735OZmUl5eXm99/7P//wPBw4ciByffvrpTWLD/PWvf2XUqFGMHj2akSNH8tprrzU6zUTo27cvJSUlzZZ+ykA+SGRlZbFixQpWrVpFx44deeqppw53kVI4ghEKhZI2kK+//nouv/zyhPekDOSWAxHh7LPPZsqUKWzcuJFly5Yxd+5ctm3bFnVfKBQ6TCVMobGYM2cOxx9/PHPnzq33XreB/Oc//5nhw4c3Kv9gMMh1113HG2+8wZdffsny5cuZNm1ao9KEFCdt2PbAl19+yUMPPcQdd9yR8P5kDeSGYM6cOYwfPz4px9ptIM+fP5/27ds3Kv9t27bx4IMPsnjxYlauXMmnn37K6NGjG5UmHF6OpQzkJsCkSZPYvn07AFVVVcyYMYNjjjmGUaNGRTyozZs3M2zYMK699lpGjBjBzJkzqa6uBmDZsmUUFBQwadKkKEO7pqaGq666ilGjRjFmzBg++OADQAvQs88+mzPOOIN+/frxxz/+kccff5wxY8Zw7LHHsnfv3kNcAyk4MW3aNH75y18yYcIEBg8ezKJFiwAwTZPbbrst4mH/4Q9/AHT7T506lbFjx3LKKaewc+fOSDp33nknU6dO5eGHH+b111/n9ttvp7CwkA0bNvDcc88xfvx4CgoKOO+88yICz9mT7VWWQCDAb37zG/7xj39QWFjIP/7xDwYNGkRxcTEAlmUxcODAZvXMU6jD+++/T3p6Otdff33kXH5+PjfddBOzZs3iggsu4IwzzmDmzJkAPProo4wfP57Ro0dzzz33RJ75+9//zoQJEygsLOTHP/4xpmkC8PzzzzN48GCmTp3KkiVLAKisrKRfv34Eg0EAKioq6Nu3b+Q4haZDVVUVS5Ys4S9/+UuMgfzII48watQoCgoK+NWvfsXLL79MUVERl156KYWFhVRXV0d6EZ955hl+8YtfRJ6dNWsWN910ExC/7W1UVlYSCoXo1KkTABkZGQwZMgSA4uJizjvvPMaPH8/48eMjHPn888857rjjGDNmDMcddxzffvttJF83J93vYWPevHkxcvBIR0VFBR06dADi2wO/+tWv2LBhA4WFhdx+++1A4+pww4YNVFVV8cADDzBnzpzIeS+d8+STT7Jjxw6mT5/O9OnTgbqe2F/+8pdRhvu9997L//t//w+IL3ds7Nmzh7Zt25KTkwNATk4O/fr1i5Tv1FNPZezYsZxwwgmRkZQ33niDiRMnMmbMGE466SR2794dyfe6665j5syZXH755XF1J8Af/vCHSP0mM0LTIIhI6q+eP11N0WjTpo2IiIRCITn//PPlrbfeEhGRYDAo5eXlIiJSXFwsAwYMEMuyZNOmTeLz+WT58uUiInLBBRfI7NmzRURk1KhR8uGHH4qIyG233SYjRowQEZHHHntMrrzyShER+eabb6R3795SXV0tzz//vAwYMEAqKipkz549kpubK88884yIiNx8883y+9//Pqa84Xc47HXZGv+82n/Tpk2RdrJxzz33yKOPPipTp06VW2+9VURE3nzzTZkxY4aIiDz99NNy7rnnSjAYFBGR0tJSCQQCMmnSJNmzZ4+IiMydO1euuuoqERGZOnWq3HDDDZH0r7jiCpk3b17kuKSkJPL7rrvukieffDKqHHYaXmV5/vnn5cYbb4w8f++990Z489///lfOPffcmHdOcah5uPTEE0/IzTffHHNeRLdTXl6elJaWiohum2uvvVYsyxLTNOV73/ueLFy4UFavXi3f//73JRAIiIjIDTfcIC+88ILs2LFDevfuLXv27JHa2lo57rjjIu1+5ZVXyiuvvCIiIn/6058iPHEi1eaNb9/Zs2fL1VdfLSIikyZNkmXLlomIyPz582XSpEmyf/9+EZFIG0+dOlWWLl0aed4+3rNnjwwYMCBy/tRTT5VFixbFbXs3fvSjH0mXLl3koosukr///e9imqaIiFx88cWyaNEiERHZsmWLDB06VEREysvLI7Lq3XffjcgENycTvYeX7HGjtXHMq40Nw5CCggIZMmSI5ObmSlFRkYgktgec+qOxdXj//ffLfffdJ6ZpSn5+vuzevVtEvHWOiEh+fr4UFxdHnrePv/jiC5kyZUrk/LBhw2TLli1x5Y4ToVBIZs6cKb1795Yrr7xSXn/99ci1E088UdauXSsiIp9++qlMnz5dRET27t0rlmWJiMhzzz0Xedd77rlHjjnmGDlw4EC972Hrvaeeekp+9KMfxdRNY/iVioN8kKiurqawsJDNmzczduxYTj75ZEA7HHfeeScfffQRhmGwffv2iFfUr18/CgsLARg7diybN2+mvLycsrIypk6dCsBll13GW2+9BcDixYsjPQRDhw4lPz+ftWvXAjB9+nTatm1L27ZtadeuHWeccQYAo0aNYuXKlYeuIo5SKOUdNcY+f+655wJ17QywYMECrr/+evx+/dl17NiRVatWsWrVqgh/TNOkR48ekfQuvPDCuGVYtWoVd999N2VlZVRVVXHKKad43udVFjeuvvpqzjrrLG6++Wb++te/ctVVV8XNN4XmxY033sjixYtJT0/nxhtv5OSTT6Zjx44AvPPOO7zzzjuMGTMG0D1U69atY+XKlSxbtozx48cDWj517dqVzz77jGnTptGlSxdA88mWIddccw2PPPIIZ599Ns8//zzPPffcYXjbIx9z5szh5ptvBuCiiy5izpw5HHPMMSxYsICrrrqK7OxsgEgbx0OXLl3o378/n376KYMGDeLbb79l8uTJPPXUU55t78af//xnvvrqKxYsWMBjjz3Gu+++y6xZs1iwYEHU1K2KigoqKyspLy/niiuuYN26dSilokYXnJxM9B7JyJ4jAfYUC4BPPvmEyy+/nFWrViW0B5xobB3OnTuXV155BcMwOPfcc5k3bx433nijp85JhDFjxrBnzx527NhBcXExHTp0oE+fPjz55JOecmfKlCmRZ30+H2+//TZLly7lvffe45ZbbmHZsmXcdtttfPzxx1xwwQWRe2trawE9LePCCy9k586dBAKBSI8zwJlnnklWVlakfuK9h7N+/v3vfyd8v4aixRrI7dt3lh49+sa9LtK443jnkr1ufxDl5eV8//vf56mnnuJnP/sZL774IsXFxSxbtoy0tDT69u1LTU0NoIe1bPh8PqqrqxGRuMaWJCiAMy3DMCLHhmHEnbNTWDhO7KyU0n82oopg59sUleiBZV9+WSIiXRr8oAuHkyOdOnVi3759Uef27t0b+cDt9vD5fJH28GprEWHEiBF88sknnvm0adPGuwDAlVdeyauvvkpBQQGzZs3iww8/9LzPqyxu9O7dm27duvH+++/z2Wef8eKLL3reN27cOAkXnKj/dS8U+1ADObJq9erKmkAgt0EPeaClyxAbI0aM4F//+lfk+KmnnqKkpIRx48YB0RwQEe644w5+/OMfR6Xxhz/8gSuuuIKHHnoo6vyrr74aV75MnjyZzZs3s3DhQkzTjLs4uKBAt7lTdtj/W7MMORT8KC0t5f3332fVqlUopTBNE6UUjzzySELZHw8XXngh//znPxk6dCjnnHOOHePVs+29MGrUKEaNGsVll11Gv379mDVrFpZl8cknn0SMERs33XQT06dP55VXXmHz5s1Rc5bdnIz3HsnIHoBxxxwTLVecaME6xguTJk2ipKSE4uJi5s+fH9cecKIxdbhy5UrWrVsX6WQJBAL079+fG2+88aA4dv755/Pyyy+za9cuLrrookj5vOSOG0opJkyYwIQJEzj55JO56qqruPXWW2nfvn3EgXDipptu4tZbb+XMM8/kww8/5N57741ca0qOjSssjCJRsjqmxRrIPXr05YUX9OpNy6o775S79nn7t0j0b/tZ93XnNa+0bNjnLrggPsHatWvHk08+yVlnncUNN9xAeXk5Xbt2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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "fig, axs = plt.subplots(1, 5, sharey=True)\n", - "\n", - "plot_selection(axs[0], data, random_ixs)\n", - "plot_selection(axs[1], data, uncertainty_ix)\n", - "plot_selection(axs[2], data, greedy_ixs)\n", - "plot_selection(axs[3], data, active_ix)\n", - "plot_selection(axs[4], data, batch_active_ix)\n", - "\n", - "for ax, t in zip(axs, ['Random', 'Uncertainty', 'Greedy', 'Active Search', 'Batch Active Search']):\n", - " ax.text(0.5, 1, t, transform=ax.transAxes, ha='center', va='center',\n", - " bbox={'facecolor': 'w', 'edgecolor': 'k'})\n", - "\n", - "axs[0].legend()\n", - "\n", - "fig.set_size_inches(10, 3)\n", - "fig.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Note that random picks points clos eto where the boundaries are. Uncertainty sampling picks points close where the classifier has a probability near 50%. Greedy picks points near farthest from the decision boundary. Regular active search picks points that are somewhere in between, but all clustered. Batch active search picks a larger diversity of points" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "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.6.6" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} From 190176ffd00903e8de2e03f4254b31be256bc7a2 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Tue, 30 Apr 2019 09:09:03 -0500 Subject: [PATCH 32/36] Added documentation --- active_learning/objective.py | 2 +- active_learning/problem.py | 12 +- active_learning/query_strats/__init__.py | 122 +---------- active_learning/query_strats/base.py | 125 +++++++++++ .../classification/active_search.py | 5 +- .../classification/batch_active_search.py | 4 +- .../query_strats/classification/greedy.py | 2 +- .../query_strats/classification/three_ds.py | 6 +- .../classification/uncertainty_sampling.py | 2 +- .../query_strats/random_sampling.py | 2 +- .../query_strats/regression/greedy.py | 2 +- .../regression/mcal_regression.py | 2 +- .../query_strats/regression/uncertainty.py | 2 +- docs/Makefile | 19 ++ docs/api-docs.rst | 42 ++++ docs/conf.py | 195 ++++++++++++++++++ docs/index.rst | 33 +++ docs/make.bat | 35 ++++ docs/problem-definition.rst | 20 ++ docs/query-strategies.rst | 44 ++++ 20 files changed, 538 insertions(+), 138 deletions(-) create mode 100644 active_learning/query_strats/base.py create mode 100644 docs/Makefile create mode 100644 docs/api-docs.rst create mode 100644 docs/conf.py create mode 100644 docs/index.rst create mode 100644 docs/make.bat create mode 100644 docs/problem-definition.rst create mode 100644 docs/query-strategies.rst diff --git a/active_learning/objective.py b/active_learning/objective.py index 35b2215..8ddd2e7 100644 --- a/active_learning/objective.py +++ b/active_learning/objective.py @@ -1,4 +1,4 @@ -"""Objective functions""" +"""Objective functions used in defining an active learning problem""" from typing import List import numpy as np diff --git a/active_learning/problem.py b/active_learning/problem.py index 114be87..64f78f5 100644 --- a/active_learning/problem.py +++ b/active_learning/problem.py @@ -1,5 +1,7 @@ +"""Classes and methods related to defining an active learning problem""" + from .objective import ObjectiveFunction, Minimize -from typing import List, Tuple +from typing import List, Tuple, Union import numpy as np @@ -38,16 +40,16 @@ def __init__(self, points, labeled_ixs: List[int], labels, self.budget = len(points) - len(labeled_ixs) @classmethod - def from_labeled_and_unlabled(cls, labeled_points, labels, unlabled_points, **kwargs): + def from_labeled_and_unlabled(cls, labeled_points, labels, unlabeled_points, **kwargs): """Construct an active learning problem from labeled and unlabled points Args: labeled_points (ndarray): Coordinates of points with labels labels (ndarray): Labels of those points - unlabled_points (ndarray): Points that could possibly be labeled + unlabeled_points (ndarray): Points that could possibly be labeled """ - points = np.vstack((labeled_points, unlabled_points)) + points = np.vstack((labeled_points, unlabeled_points)) labeled_ixs = list(range(len(labeled_points))) return cls(points, labeled_ixs, labels, **kwargs) @@ -83,7 +85,7 @@ def add_label(self, ind: int, label: float): self.labeled_ixs.append(ind) self.labels.append(label) - def get_labeled_points(self) -> Tuple[np.ndarray, np.ndarray]: + def get_labeled_points(self) -> Tuple[np.ndarray, List[Union[float, int]]]: """Get the labeled points and their labels Returns: diff --git a/active_learning/query_strats/__init__.py b/active_learning/query_strats/__init__.py index a0bc0cc..e996e38 100644 --- a/active_learning/query_strats/__init__.py +++ b/active_learning/query_strats/__init__.py @@ -1,121 +1,5 @@ -from active_learning.problem import ActiveLearningProblem -from multiprocessing import Pool -from functools import partial -from typing import List, Tuple -import numpy as np -from sklearn.base import BaseEstimator +"""General active learning querying strategies""" +from .random_sampling import RandomQuery -class BaseQueryStrategy: - """Base class for all active learning strategies.""" - - def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: - """Identify which points should be queried next - - Args: - problem (ActiveLearningProblem): Problem definition - n_to_select (int): Number of points to select - Returns: - ([int]): List of which points to query next - """ - raise NotImplementedError() - - -class IndividualScoreQueryStrategy(BaseQueryStrategy): - """"Base class for query strategies that rate each point independently - - Queries are determined by evaluating the score of batches of entries inpendently, - which allows for parallelization. - """ - - def __init__(self, n_cpus: int = 1, chunks_per_thread: int = 32): - """Initialize the query strategy - - Args: - n_cpus (int): Number of processors to use - chunks_per_thread (int): Number of chunks of indices per thread when multiprocessing - """ - self.n_cpus = n_cpus - self.chunks_per_thread = chunks_per_thread - - def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem) -> List[float]: - """Score a list of indices - - Used to prevent copying the active learning problem definition many times - - Args: - inds ([int]): List of indices to score - problem (ActiveLearningProblem): Active learning problem definition - Returns: - ([float]) Scores for each entry - """ - - raise NotImplementedError() - - def select_points(self, problem: ActiveLearningProblem, n_to_select: int): - # Get the unlabeled indices as an ndarray (for easy indexing) - unlabled_ixs, scores = self.score_all(problem) - - # Get the top entries - return unlabled_ixs[np.argpartition(scores, -n_to_select)[-n_to_select:]] - - def score_all(self, problem: ActiveLearningProblem) -> Tuple[List[int], List[float]]: - """Determine the scores for all non-labeled points - - Entries with the highest scores are selected - - Args: - problem (ActiveLearningProblem): Active learning problem definition - Return: - - [int] Indices of all unlabeled points - - [float] Scores for each point - """ - # Get the unlabeled indices as an ndarray (for easy indexing) - unlabled_ixs = np.array(problem.get_unlabeled_ixs()) - - # Get the scores - if self.n_cpus == 1: - scores = self._score_chunk(unlabled_ixs, problem) - else: - # Make the chunks of indices to evaluate in parallel - chunks = np.array_split(unlabled_ixs, self.n_cpus * self.chunks_per_thread) - - # Make the function to be evaluated - fun = partial(self._score_chunk, problem=problem) - - # Score each chunk - # TODO (lw): Switch to joblib, so that we can use distributed memory executors - with Pool(self.n_cpus) as p: - scores = p.map(fun, chunks) - - # De-chunk the scores - scores = np.concatenate(scores) - - return unlabled_ixs, scores - - -class ModelBasedQueryStrategy(BaseQueryStrategy): - """Mixin for query strategies that use an model to make predictions - - Model objects must satisfy the scikit-learn API""" - - def __init__(self, model: BaseEstimator, fit_model: bool = True, **kwargs): - """ - Args: - model (BaseEstimator): Model to use for querying - fit_model (bool): Whether to fit the model before selecting points - """ - super().__init__(**kwargs) - self.model = model - self.fit_model = fit_model - - def _fit_model(self, problem: ActiveLearningProblem): - """Fit the model on the current active learning problem - - Args: - problem (ActiveLearningProblem): Description of the active learning problem - """ - X, y = problem.get_labeled_points() - if self.fit_model: - self.model.fit(X, y) - self.fit_model = True +__all__ = ['RandomQuery'] diff --git a/active_learning/query_strats/base.py b/active_learning/query_strats/base.py new file mode 100644 index 0000000..aa3bd23 --- /dev/null +++ b/active_learning/query_strats/base.py @@ -0,0 +1,125 @@ +"""Base classes for query strategies""" + +from functools import partial +from multiprocessing import Pool +from typing import List, Tuple + +import numpy as np +from sklearn.base import BaseEstimator + +from active_learning.problem import ActiveLearningProblem + + +class BaseQueryStrategy: + """Base class for all active learning query strategies.""" + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> List[int]: + """Identify which points should be queried next + + Args: + problem (ActiveLearningProblem): Problem definition + n_to_select (int): Number of points to select + Returns: + ([int]): List of which points to query next + """ + raise NotImplementedError() + + +class IndividualScoreQueryStrategy(BaseQueryStrategy): + """Base class for query strategies that rate each point independently + + Queries are determined by evaluating the score of batches of entries independently, + which allows for parallelization. + """ + + def __init__(self, n_cpus: int = 1, chunks_per_thread: int = 32): + """Initialize the query strategy + + Args: + n_cpus (int): Number of processors to use + chunks_per_thread (int): Number of chunks of indices per thread when multiprocessing + """ + self.n_cpus = n_cpus + self.chunks_per_thread = chunks_per_thread + + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem) -> List[float]: + """Score a list of indices + + Used to prevent copying the active learning problem definition many times + + Args: + inds ([int]): List of indices to score + problem (ActiveLearningProblem): Active learning problem definition + Returns: + ([float]) Scores for each entry + """ + + raise NotImplementedError() + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + # Get the unlabeled indices as an ndarray (for easy indexing) + unlabled_ixs, scores = self.score_all(problem) + + # Get the top entries + return unlabled_ixs[np.argpartition(scores, -n_to_select)[-n_to_select:]] + + def score_all(self, problem: ActiveLearningProblem) -> Tuple[List[int], List[float]]: + """Determine the scores for all non-labeled points + + Entries with the highest scores are selected + + Args: + problem (ActiveLearningProblem): Active learning problem definition + Return: + - [int] Indices of all unlabeled points + - [float] Scores for each point + """ + # Get the unlabeled indices as an ndarray (for easy indexing) + unlabled_ixs = np.array(problem.get_unlabeled_ixs()) + + # Get the scores + if self.n_cpus == 1: + scores = self._score_chunk(unlabled_ixs, problem) + else: + # Make the chunks of indices to evaluate in parallel + chunks = np.array_split(unlabled_ixs, self.n_cpus * self.chunks_per_thread) + + # Make the function to be evaluated + fun = partial(self._score_chunk, problem=problem) + + # Score each chunk + # TODO (lw): Switch to joblib, so that we can use distributed memory executors + with Pool(self.n_cpus) as p: + scores = p.map(fun, chunks) + + # De-chunk the scores + scores = np.concatenate(scores) + + return unlabled_ixs, scores + + +class ModelBasedQueryStrategy(BaseQueryStrategy): + """Mixin for query strategies that use an model to make predictions + + Model objects must satisfy the scikit-learn API""" + + def __init__(self, model: BaseEstimator, fit_model: bool = True, **kwargs): + """ + Args: + model (BaseEstimator): Model to use for querying + fit_model (bool): Whether to fit the model before selecting points + """ + super().__init__(**kwargs) + self.model = model + self.fit_model = fit_model + + def _fit_model(self, problem: ActiveLearningProblem): + """Fit the model on the current active learning problem + + Args: + problem (ActiveLearningProblem): Description of the active learning problem + """ + X, y = problem.get_labeled_points() + if self.fit_model: + self.model.fit(X, y) + self.fit_model = True \ No newline at end of file diff --git a/active_learning/query_strats/classification/active_search.py b/active_learning/query_strats/classification/active_search.py index 9a1477a..79d7ce1 100644 --- a/active_learning/query_strats/classification/active_search.py +++ b/active_learning/query_strats/classification/active_search.py @@ -1,6 +1,6 @@ from sklearn.base import BaseEstimator, clone from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy +from active_learning.query_strats.base import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List import numpy as np @@ -75,7 +75,8 @@ def _expected_future_utility(model: BaseEstimator, test_set: np.ndarray, class ActiveSearch(ModelBasedQueryStrategy, IndividualScoreQueryStrategy): """Efficient Non-Myopic Active Search. - Based on an algorithm by [Jiang et al.](http://proceedings.mlr.press/v70/jiang17d/jiang17d.pdf). + Based on an algorithm by + `Jiang et al. `_. Automatically balances between the desire to greedily query points highly likely to be the target class and those which, if queried, will lead to model improvements that will lead to more diff --git a/active_learning/query_strats/classification/batch_active_search.py b/active_learning/query_strats/classification/batch_active_search.py index 7d5a729..2f08ea1 100644 --- a/active_learning/query_strats/classification/batch_active_search.py +++ b/active_learning/query_strats/classification/batch_active_search.py @@ -1,5 +1,5 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategy +from active_learning.query_strats.base import ModelBasedQueryStrategy, BaseQueryStrategy from sklearn.base import BaseEstimator from copy import deepcopy from typing import Union @@ -70,7 +70,7 @@ def label(self, model: BaseEstimator, x: np.array, target: int): } -class SequentialSimulatedBatchSearch(ModelBasedQueryStrategy, BaseQueryStrategy): +class SequentialSimulatedBatchSearch(ModelBasedQueryStrategy): """Batch active learning strategy where you simulate multiple, sequential steps of an active learning process. diff --git a/active_learning/query_strats/classification/greedy.py b/active_learning/query_strats/classification/greedy.py index 9c17bf9..498c561 100644 --- a/active_learning/query_strats/classification/greedy.py +++ b/active_learning/query_strats/classification/greedy.py @@ -1,5 +1,5 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy +from active_learning.query_strats.base import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List diff --git a/active_learning/query_strats/classification/three_ds.py b/active_learning/query_strats/classification/three_ds.py index 9094515..f6d372b 100644 --- a/active_learning/query_strats/classification/three_ds.py +++ b/active_learning/query_strats/classification/three_ds.py @@ -1,4 +1,4 @@ -from active_learning.query_strats import BaseQueryStrategy, ModelBasedQueryStrategy +from active_learning.query_strats.base import ModelBasedQueryStrategy from active_learning.problem import ActiveLearningProblem from sklearn.base import BaseEstimator from sklearn.mixture.base import BaseMixture @@ -29,10 +29,10 @@ def _calc_diversities(gmm: BaseMixture, points: np.ndarray, return scores -class ThreeDs(ModelBasedQueryStrategy, BaseQueryStrategy): +class ThreeDs(ModelBasedQueryStrategy): """Select points based on distance, density, and diversity. - Based on work by [Reitmaier and Sick](http://ieeexplore.ieee.org/document/5949421/). + Based on work by `Reitmaier and Sick `_. Distance is based on how far a point is from the decision boundary. The distance is computed based on the ratio between the probability of the 1st and 2nd-most likely classes. Points diff --git a/active_learning/query_strats/classification/uncertainty_sampling.py b/active_learning/query_strats/classification/uncertainty_sampling.py index 6345874..361c2ad 100644 --- a/active_learning/query_strats/classification/uncertainty_sampling.py +++ b/active_learning/query_strats/classification/uncertainty_sampling.py @@ -1,5 +1,5 @@ from active_learning.problem import ActiveLearningProblem -from active_learning.query_strats import IndividualScoreQueryStrategy, ModelBasedQueryStrategy +from active_learning.query_strats.base import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List import numpy as np diff --git a/active_learning/query_strats/random_sampling.py b/active_learning/query_strats/random_sampling.py index 845bd87..a36fe87 100644 --- a/active_learning/query_strats/random_sampling.py +++ b/active_learning/query_strats/random_sampling.py @@ -1,5 +1,5 @@ from ..problem import ActiveLearningProblem -from . import IndividualScoreQueryStrategy +from active_learning.query_strats.base import IndividualScoreQueryStrategy from random import random from typing import List diff --git a/active_learning/query_strats/regression/greedy.py b/active_learning/query_strats/regression/greedy.py index 1f91277..7895969 100644 --- a/active_learning/query_strats/regression/greedy.py +++ b/active_learning/query_strats/regression/greedy.py @@ -1,5 +1,5 @@ from ...problem import ActiveLearningProblem -from .. import ModelBasedQueryStrategy, IndividualScoreQueryStrategy +from active_learning.query_strats.base import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from typing import List diff --git a/active_learning/query_strats/regression/mcal_regression.py b/active_learning/query_strats/regression/mcal_regression.py index 853019f..0fbd9d9 100644 --- a/active_learning/query_strats/regression/mcal_regression.py +++ b/active_learning/query_strats/regression/mcal_regression.py @@ -1,4 +1,4 @@ -from active_learning.query_strats import ModelBasedQueryStrategy +from active_learning.query_strats.base import ModelBasedQueryStrategy from active_learning.problem import ActiveLearningProblem from scipy.spatial.distance import pdist, squareform diff --git a/active_learning/query_strats/regression/uncertainty.py b/active_learning/query_strats/regression/uncertainty.py index f391a2c..cf4f681 100644 --- a/active_learning/query_strats/regression/uncertainty.py +++ b/active_learning/query_strats/regression/uncertainty.py @@ -1,4 +1,4 @@ -from active_learning.query_strats import ModelBasedQueryStrategy, IndividualScoreQueryStrategy +from active_learning.query_strats.base import IndividualScoreQueryStrategy, ModelBasedQueryStrategy from active_learning.problem import ActiveLearningProblem from inspect import signature from typing import List diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..298ea9e --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,19 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +SOURCEDIR = . +BUILDDIR = _build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) \ No newline at end of file diff --git a/docs/api-docs.rst b/docs/api-docs.rst new file mode 100644 index 0000000..9f6c765 --- /dev/null +++ b/docs/api-docs.rst @@ -0,0 +1,42 @@ +API Documentation +================= + +This part of the documentation holds the detailed documentation for all parts of the ``active-learning`` API. + +active_learning.problem +----------------------- + +.. automodule:: active_learning.problem + :members: + + +active_learning.objective +------------------------- + +.. automodule:: active_learning.objective + :members: + + +active_learning.query_strats +---------------------------- + +.. automodule:: active_learning.query_strats + :members: + +active_learning.query_strats.base +--------------------------------- + +.. automodule:: active_learning.query_strats.base + :members: + +active_learning.query_strats.classification +------------------------------------------- + +.. automodule:: active_learning.query_strats.classification + :members: + +active_learning.query_strats.regression +--------------------------------------- + +.. automodule:: active_learning.query_strats.regression + :members: diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..ac1b2ce --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,195 @@ +# -*- coding: utf-8 -*- +# +# Configuration file for the Sphinx documentation builder. +# +# This file does only contain a selection of the most common options. For a +# full list see the documentation: +# http://www.sphinx-doc.org/en/master/config + +# -- Path setup -------------------------------------------------------------- + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +# +# import os +# import sys +# sys.path.insert(0, os.path.abspath('.')) + + +# -- Project information ----------------------------------------------------- + +project = 'active-learning' +copyright = '2019, Globus Labs' +author = 'Globus Labs' + +# The short X.Y version +version = '' +# The full version, including alpha/beta/rc tags +release = '' + + +# -- General configuration --------------------------------------------------- + +# If your documentation needs a minimal Sphinx version, state it here. +# +# needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'sphinx.ext.napoleon', + 'sphinx.ext.autodoc', + 'sphinx.ext.intersphinx', + 'sphinx.ext.todo', + 'sphinx.ext.imgmath', + 'sphinx.ext.viewcode', + 'sphinx.ext.coverage' +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix(es) of source filenames. +# You can specify multiple suffix as a list of string: +# +# source_suffix = ['.rst', '.md'] +source_suffix = '.rst' + +# The master toctree document. +master_doc = 'index' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +# +# This is also used if you do content translation via gettext catalogs. +# Usually you set "language" from the command line for these cases. +language = None + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This pattern also affects html_static_path and html_extra_path. +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = None + + +# -- Options for HTML output ------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +# +html_theme = 'sphinx_rtd_theme' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +# +# html_theme_options = {} + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# Custom sidebar templates, must be a dictionary that maps document names +# to template names. +# +# The default sidebars (for documents that don't match any pattern) are +# defined by theme itself. Builtin themes are using these templates by +# default: ``['localtoc.html', 'relations.html', 'sourcelink.html', +# 'searchbox.html']``. +# +# html_sidebars = {} + + +# -- Options for HTMLHelp output --------------------------------------------- + +# Output file base name for HTML help builder. +htmlhelp_basename = 'active-learningdoc' + + +# -- Options for LaTeX output ------------------------------------------------ + +latex_elements = { + # The paper size ('letterpaper' or 'a4paper'). + # + # 'papersize': 'letterpaper', + + # The font size ('10pt', '11pt' or '12pt'). + # + # 'pointsize': '10pt', + + # Additional stuff for the LaTeX preamble. + # + # 'preamble': '', + + # Latex figure (float) alignment + # + # 'figure_align': 'htbp', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + (master_doc, 'active-learning.tex', 'active-learning Documentation', + 'Globus Labs', 'manual'), +] + + +# -- Options for manual page output ------------------------------------------ + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + (master_doc, 'active-learning', 'active-learning Documentation', + [author], 1) +] + + +# -- Options for Texinfo output ---------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + (master_doc, 'active-learning', 'active-learning Documentation', + author, 'active-learning', 'One line description of project.', + 'Miscellaneous'), +] + + +# -- Options for Epub output ------------------------------------------------- + +# Bibliographic Dublin Core info. +epub_title = project + +# The unique identifier of the text. This can be a ISBN number +# or the project homepage. +# +# epub_identifier = '' + +# A unique identification for the text. +# +# epub_uid = '' + +# A list of files that should not be packed into the epub file. +epub_exclude_files = ['search.html'] + + +# -- Extension configuration ------------------------------------------------- + +autoclass_content = 'both' + +# -- Options for intersphinx extension --------------------------------------- + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = {'https://docs.python.org/': None} + +# -- Options for todo extension ---------------------------------------------- + +# If true, `todo` and `todoList` produce output, else they produce nothing. +todo_include_todos = True diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..e6b78c5 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,33 @@ +Welcome to active-learning's documentation! +=========================================== + +``active-learning`` is a library of different active learning methods. +Active learning methods are designed to identify what new data to capture, +and a variety of algorithms exist depending on what goals you have. +There are algorithms for when your objectives are to build the best machine-learning model. +There are also algorithms for when your objective is optimization (i.e., collecting the "best" data), +or even a combination of these two objectives. +Some algorithms are designed to identify a single experiment to run, and others optimize selecting a batch of new entries. +We created ``active-learning`` to make it easy to try out these different algorithms. + +The key algorithms implemented in ``active-learning`` are known as "query strategies." +Query strategies are designed to identify which new experiments to perform provided a list of +experiments have been performed, the results of those experiments, and a list of valid new experiments. +Each query strategy is + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + problem-definition + query-strategies + api-docs + + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/docs/make.bat b/docs/make.bat new file mode 100644 index 0000000..7893348 --- /dev/null +++ b/docs/make.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +pushd %~dp0 + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set SOURCEDIR=. +set BUILDDIR=_build + +if "%1" == "" goto help + +%SPHINXBUILD% >NUL 2>NUL +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% +goto end + +:help +%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% + +:end +popd diff --git a/docs/problem-definition.rst b/docs/problem-definition.rst new file mode 100644 index 0000000..d0b5418 --- /dev/null +++ b/docs/problem-definition.rst @@ -0,0 +1,20 @@ +Problem Definition +================== + +``active-learning`` is built around a core class, :class:`active_learning.problem.ActiveLearningProblem`, that defines the active learning problem. + +Problem definitions require two features to be defined: + +#. *Search Space*: All possible experiments that could be performed +#. *Labels*: A set of experiments that have been perform, and their results (i.e., labels) + +Some active learning algorithms also make use of further information about the active learning problem: + +#. *Budget*: How many new experiments can be performed +#. *Objective*: Whether there are any desired experimental outcomes (e.g., successes, optimized properties) + +The ``ActiveLearningProblem`` class stores all of this information in a single object to simplify defining and performing active learning: + +.. autoclass:: active_learning.problem.ActiveLearningProblem + :members: + :noindex: diff --git a/docs/query-strategies.rst b/docs/query-strategies.rst new file mode 100644 index 0000000..dd1b1c7 --- /dev/null +++ b/docs/query-strategies.rst @@ -0,0 +1,44 @@ +Query Strategies +================ + +This portion of the documentation details the query strategies that are available in ``active-learning`` + +Base API +-------- + +All of the query strategies are based on the ``BaseQueryStrategy``, +which provides a consistent API between all strategies. + +.. autoclass:: active_learning.query_strats.base.BaseQueryStrategy + :members: + :noindex: + +General Strategies +------------------ + +Several active learning strategies are agnostic to the type of problem being solved (e.g., classification, regression). + +.. automodule:: active_learning.query_strats + :members: + :noindex: + +Classification +-------------- + +``active-learning`` provides several algorithms for active learning in classification tasks. + + +.. automodule:: active_learning.query_strats.classification + :members: + :exclude-members: select_points + :noindex: + +Regression +---------- + +There are also many algorithms for supporting regression tasks. + +.. automodule:: active_learning.query_strats.regression + :members: + :exclude-members: select_points + :noindex: From 83275460eaae22dae16135a1f19673e5faa8e8b0 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Tue, 30 Apr 2019 09:14:57 -0500 Subject: [PATCH 33/36] Flake fix --- active_learning/query_strats/base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/active_learning/query_strats/base.py b/active_learning/query_strats/base.py index aa3bd23..34778cc 100644 --- a/active_learning/query_strats/base.py +++ b/active_learning/query_strats/base.py @@ -122,4 +122,4 @@ def _fit_model(self, problem: ActiveLearningProblem): X, y = problem.get_labeled_points() if self.fit_model: self.model.fit(X, y) - self.fit_model = True \ No newline at end of file + self.fit_model = True From 5ab9e33ab0f9f7c3669517cd7b001ec7f3f57280 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 22 Jun 2020 11:21:12 -0500 Subject: [PATCH 34/36] Update setup.py --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 29268c3..3d5d944 100644 --- a/setup.py +++ b/setup.py @@ -7,9 +7,9 @@ setuptools.setup( name="active_learning", - version="0.0.1", + version="0.1.0", author="Logan Ward", - author_email="loganw@icloud.com", + author_email="lward@anl.gov", description="Active learning library for python", long_description=long_description, long_description_content_type="text/markdown", From 706b283280b1abefd5eacddb53e0c48ca0bc0fd8 Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Mon, 27 Jul 2020 11:34:53 -0500 Subject: [PATCH 35/36] Bug fix: Handle fewer "good points" available than needed Code crashes with a useless error message when there are fewer good points available than we need to fill a batch of selections --- active_learning/query_strats/regression/mcal_regression.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/active_learning/query_strats/regression/mcal_regression.py b/active_learning/query_strats/regression/mcal_regression.py index 0fbd9d9..157bf4d 100644 --- a/active_learning/query_strats/regression/mcal_regression.py +++ b/active_learning/query_strats/regression/mcal_regression.py @@ -100,7 +100,12 @@ def select_points(self, problem: ActiveLearningProblem, n_to_select: int) -> Lis if len(selected) < n_to_select: good_ixs = sum([list(map(lambda x: x[2], clst2pts[c])) for c in good_clsts], list()) unselected_ixs = set(good_ixs).difference(selected) - selected.extend(sample(unselected_ixs, n_to_select - len(selected))) + if len(unselected_ixs) <= n_to_select - len(selected): + # Add all to the list + selected.extend(unselected_ixs) + else: + # Add a random subset + selected.extend(sample(unselected_ixs, n_to_select - len(selected))) # Randomly pick points from all the clusters, even the bad ones if len(selected) < n_to_select: From 86677fafa40b898f2519146852f2be9867ca6d6f Mon Sep 17 00:00:00 2001 From: Logan Ward Date: Tue, 4 Aug 2020 14:24:31 -0500 Subject: [PATCH 36/36] Add initial implementation of expected improvment --- .../query_strats/regression/bayesian.py | 55 +++++++++++++++++++ .../regression/tests/test_bayesian.py | 17 ++++++ 2 files changed, 72 insertions(+) create mode 100644 active_learning/query_strats/regression/bayesian.py create mode 100644 active_learning/query_strats/regression/tests/test_bayesian.py diff --git a/active_learning/query_strats/regression/bayesian.py b/active_learning/query_strats/regression/bayesian.py new file mode 100644 index 0000000..afd176d --- /dev/null +++ b/active_learning/query_strats/regression/bayesian.py @@ -0,0 +1,55 @@ +"""Bayesian active learning methods""" +from inspect import signature +from typing import List + +import numpy as np +from scipy.stats import norm + +from active_learning.problem import ActiveLearningProblem +from active_learning.query_strats.base import IndividualScoreQueryStrategy + + +# Following: http://krasserm.github.io/2018/03/21/bayesian-optimization/ + +class ExpectedImprovement(IndividualScoreQueryStrategy): + """Bayesian 'Expected Improvement' active learning + + Determines which points have the largest expected improvement over + the best labeled point to date. + + Each point is assigned a value equal to the expected/mean improvement + of that point's value over a threshold. + """ + + def __init__(self, model, refit_model: bool = True, epsilon: float = 0): + """ + Args: + model: Scikit-learn model used to make inferences + """ + super().__init__() + self.model = model + self.refit_model = refit_model + self.epsilon = epsilon + + # Check if the function supports "return_std" + if 'return_std' not in signature(self.model.predict).parameters: + raise ValueError('The model must have "return_std" in the predict methods') + + def select_points(self, problem: ActiveLearningProblem, n_to_select: int): + if self.refit_model: + self.model.fit(*problem.get_labeled_points()) + return super().select_points(problem, n_to_select) + + def _score_chunk(self, inds: List[int], problem: ActiveLearningProblem): + y_mean, y_std = self.model.predict(problem.points[inds], return_std=True) + + # Compute the EI + # TODO (wardlt): Support minimization + _, known_labels = problem.get_labeled_points() + threshold = np.max(known_labels) # f(x^+) in the + z_score = (y_mean - threshold - self.epsilon) / y_std + + ei = (y_mean - threshold - self.epsilon) * norm.cdf(z_score) + y_std * norm.pdf(z_score) + + return ei + diff --git a/active_learning/query_strats/regression/tests/test_bayesian.py b/active_learning/query_strats/regression/tests/test_bayesian.py new file mode 100644 index 0000000..356947a --- /dev/null +++ b/active_learning/query_strats/regression/tests/test_bayesian.py @@ -0,0 +1,17 @@ +from active_learning.query_strats.regression.bayesian import ExpectedImprovement +from active_learning.tests.test_problem import make_xsinx +from sklearn.linear_model import BayesianRidge +from unittest import TestCase + + +class TestBayesian(TestCase): + + def test_ei(self): + # Make the problem + problem = make_xsinx() + model = BayesianRidge() + + # Run the sampling. For now, let's just test that it gives the correct number of samples + uncert = ExpectedImprovement(model) + selections = uncert.select_points(problem, 2) + self.assertEqual(len(selections), 2)