{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Spectral Clustering" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[sklearn.cluster.SpectralClustering](http://scikit-learn.org/stable/modules/generated/sklearn.cluster.SpectralClustering.html)\n", "\n", "Spectral Clustering does a low-dimension embedding of the affinity matrix between samples, followed by a KMeans in the low dimensional space. It is especially efficient if the affinity matrix is sparse and the pyamg module is installed. SpectralClustering requires the number of clusters to be specified. It works well for a small number of clusters but is not advised when using many clusters.\n", "\n", "For two clusters, it solves a convex relaxation of the normalised cuts problem on the similarity graph: cutting the graph in two so that the weight of the edges cut is small compared to the weights of the edges inside each cluster. This criteria is especially interesting when working on images: graph vertices are pixels, and edges of the similarity graph are a function of the gradient of the image.\n", "\n", "Usable examples: [Segmenting the picture of a raccoon face in regions](http://scikit-learn.org/stable/auto_examples/cluster/plot_face_segmentation.html)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The autoreload extension is already loaded. To reload it, use:\n", " %reload_ext autoreload\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/mnt/datagrid/personal/borovec/Applications/vEnv2/lib/python2.7/site-packages/IPython/html.py:14: ShimWarning: The `IPython.html` package has been deprecated. You should import from `notebook` instead. `IPython.html.widgets` has moved to `ipywidgets`.\n", " \"`IPython.html.widgets` has moved to `ipywidgets`.\", ShimWarning)\n" ] } ], "source": [ "%matplotlib inline\n", "%load_ext autoreload\n", "%autoreload 2\n", "import os, sys\n", "import numpy as np\n", "from skimage import io\n", "import matplotlib.pylab as plt\n", "sys.path += [os.path.abspath('.'), os.path.abspath('..')] # Add path to root\n", "import notebooks.notebook_utils as uts" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## load datset" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "loading dataset: (True) exists -> /datagrid/Medical/microscopy/drosophila/synthetic_data/atomicPatternDictionary_v0/datasetFuzzy_raw\n", "loading (True) <- /datagrid/Medical/microscopy/drosophila/synthetic_data/atomicPatternDictionary_v0/dictionary/atlas.png\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAP4AAAEICAYAAAB/KknhAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAEjFJREFUeJzt3X2QXXV9x/H3xxASnkII0BASxmBBMHUk2JWHkaISeSyV/MEwICNrJ87OtLaFaiugo1Mcx0E7I9rRod0CElsUEMVgxgdipKPTSmAj4TEiUYIkTVgQ0gCtIcFv/zi/rZftPpzdex528/u8Zu7sPeeee883ufu5v9/v3LO/o4jAzPLyurYLMLPmOfhmGXLwzTLk4JtlyME3y5CDb5YhB3+Kk7RZ0rvbrmM0kj4q6Ya267CJcfBbIOnfJL0gadaw9TdL+lRbdU1GRHw6Ij7Q9H4lfVfSSx23VyQ93HQd05WD3zBJi4E/AgJ4T6vFTGMRcW5EHDh0A/4D+HrbdU0XDn7zLgPuBW4GeodWSuoDLgU+klqwbw9/oqSTJP1E0g5J2yR9UdK+6TFJuk7SoKSdkh6W9Ob02HslPTRaQcOHE5L+TtK/pvuLJYWkXkm/kvScpI+NtG1afp+kpyT9WtLHOl97eI9G0jslbelYPlLSNyQ9K+lJSX9V5j+048P0K2W2Nwe/DZcBt6Tb2ZLmA0REf1r32dSK/ckIz30V+GvgMOBUYBnw5+mxs4DTgTcCBwMXAb9Or/3ViHhLl3WfBhyX9vkJSW8avoGkJcD1wPuAI4FDgUVlXlzS64BvAw8CC9N+rpB0domnXwb8OCI2l9mXOfiNknQa8Hrg9ohYD/wCeG/Z50fE+oi4NyL2pF/yfwLekR7eDRwEHA8oIjZGxLYKy78mIv4nIh6kCOcJI2xzIbA6In4UEbuAjwO/Lfn6bwMOj4hPRsQrEfFL4J+Bi0s89zKKHpSV5OA3qxe4OyKeS8tfpaO7Px5Jb5S0WtJ2STuBT1O0/kTED4EvAl8CBiX1S5pTYe3bO+7/N3DgCNscCTw9tBARL5N6HSW8HjgyDWN2SNoBfBSYP9aT0ofpEcAdJfdjOPiNkbQfRff7HSm42ym67SdIGmo9x/tTyeuBnwHHRsQcimBo6MGI+IeI+ENgCUWX/29LlvcysH/H8hElnzfcNuCooQVJ+1N098vs52ngyYiY23E7KCLOG2efvcA3I+KlSdacJQe/OcspxuhLgKXp9ibgxxRdVYBngDeM8RoHATuBlyQdD/zZ0AOS3ibpZEkzKQL2G1I3W9L7JW0e43U3ABdLmimph6LLPhl3AOdLOi0ddPwkr/0d2wCcJ2mepCOAKzoeuw94UdKVkvaTNEPSmyW9bbSddXyY3jzJerPl4DenF/hyRPwqIrYP3Si655dK2ge4EViSurrfGuE1/obimMCLFOPf2zoem5PWvQA8RdHF/vv02FHAv49R28eB30/PvYZiCDJhEfEo8MH0/G3p9bZ0bPIvFMcHNgN3d9YfEa8C51N8ID4JPAfcQHGgcjTLgR3APZOpN2fyRBx7P0l3A5dHxMYW9r0Z+EBE/KDpfdvo9mm7AKtfRJzVdg02tbirb5Yhd/XNMtRViy/pHEmPS9ok6aqqijKzek26xZc0A/g5cCbFkdv7gUsi4rHRnrOvZsVsDpjU/sxsfL/hZV6JXRpvu24O7p0EbEqnViLpVuACYNTgz+YATtayLnZpZmNZF2tLbddNV38hHadnUrT6C4dvJKlP0oCkgd3s6mJ3ZlaV2o/qR0R/RPRERM9MZo3/BDOrXTfB30rHedkUf365tbtyzKwJ3QT/fuBYSUen87IvBu6qpiwzq9OkD+5FxB5JfwF8H5gB3JTO1TazKa6rU3Yj4jvAdyqqxcwa4lN2zTLk4JtlyME3y5CDb5YhB98sQw6+WYYcfLMMOfhmGXLwzTKU5WSb//WdY0ptd/B5m2quxKwdbvHNMuTgm2Uom65+2e79WM9x19/2Fm7xzTLk4JtlyME3y5CDb5YhB98sQw6+WYYcfLMMOfhmGXLwzTLk4JtlKJtTdi0P5z664zXL3/2DuS1VMrW5xTfL0LjBl3STpEFJj3SsmydpjaQn0s9D6i3TzKqkiBh7A+l04CXgKxHx5rTus8DzEXGtpKuAQyLiyvF2Nkfz4mQtq6DsiZvMX+eNxX+pV7/h3fZu5dDtXxdr2RnPa7ztxm3xI+JHwPPDVl8ArEz3VwLLJ1yhmbVmsgf35kfEtnR/OzB/tA0l9QF9ALPZf5K7M7MqdX1UPyJC0qjjhYjoB/qh6Op3u782uXtfr6q79ja6yR7Vf0bSAoD0c7C6ksysbpMN/l1Ab7rfC6yqphwza0KZr/O+BvwEOE7SFkkrgGuBMyU9Abw7LZvZNDHuGD8iLhnloXa+l7O9SpPj+s595fDV3lh85p5Zhhx8swxl80c6nV/F+RJa7ZkqX9nl/sc8bvHNMuTgm2XIwTfLUDZj/E5Vj92f6zu10tebiMP6f9LavsuaKuN6+x23+GYZcvDNMjTuRBxVanMijiq02aWfjKk4DJgO3f7p/NVeZRNxmNnex8E3y1CWR/XLmm5d++HGqn8yw4Dv/+eG0tuefeTSCb++NcctvlmGHHyzDDn4ZhnyGH8Mw8fB03nMP9mv9iYyrh/teR7vTz1u8c0y5OCbZchd/TFM5679cMP/LVPxrD5rjlt8sww5+GYZcvDNMuQxfiY8ph/bdP6LvMlwi2+WoTKX0DpK0j2SHpP0qKTL0/p5ktZIeiL9PKT+cs2sCmW6+nuAD0fETyUdBKyXtAZ4P7A2Iq6VdBVwFXBlfaXaRLXZve88W286TL6Rm3Fb/IjYFhE/TfdfBDYCC4ELgJVps5XA8rqKNLNqTejgnqTFwInAOmB+RGxLD20H5o/ynD6gD2A2+0+2TjOrUOmDe5IOBL4BXBEROzsfi2LivhEn74uI/ojoiYiemczqqlgzq0apFl/STIrQ3xIR30yrn5G0ICK2SVoADNZVZFv2pr/Oa9pof53n8f7UUOaovoAbgY0R8bmOh+4CetP9XmBV9eWZWR3KtPhvB94HPCxp6GP8o8C1wO2SVgBPARfVU6KZVc3z6lcgl0to1THZZltd/731TD3Pq29mo3LwzTLkrn6Lqp73frqru9u/t3bvO7mrb2ajcvDNMuTgm2XIE3G0KMdx/FiGj8HLjvlzGLtXzS2+WYYcfLMMuatvU5a78PVxi2+WIQffLEMOvlmGHHyzDDn4Zhly8M0y5OCbZcjBN8uQg2+WIQffLEMOvlmGHHyzDDn4Zhly8M0y5OCbZajMtfNmS7pP0oOSHpV0TVp/tKR1kjZJuk3SvvWXa2ZVKNPi7wLOiIgTgKXAOZJOAT4DXBcRxwAvACvqK9PMqjRu8KPwUlqcmW4BnAHckdavBJbXUqGZVa7UGF/SjHSl3EFgDfALYEdE7EmbbAEWjvLcPkkDkgZ2s6uKms2sS6WCHxGvRsRSYBFwEnB82R1ERH9E9EREz0xmTbJMM6vShI7qR8QO4B7gVGCupKHJOhcBWyuuzcxqUuao/uGS5qb7+wFnAhspPgAuTJv1AqvqKtLMqlVmeu0FwEpJMyg+KG6PiNWSHgNulfQp4AHgxhrrNLMKjRv8iHgIOHGE9b+kGO+b2TTjM/fMMuTgm2XIwTfLkINvliEH3yxDDr5ZhnyZ7Dqc8pbf3b/3ofbqMBuFW3yzDDn4ZhnKs6vf2RUfrrNrPtZ2k92Xu/42BbjFN8uQg2+WIQffLEP5jPHLjterGNeXfX2P960lbvHNMuTgm2Vo7+3q191lr4K/6rOWuMU3y5CDb5YhB98sQw6+WYYcfLMMOfhmGXLwzTLk4JtlqHTw06WyH5C0Oi0fLWmdpE2SbpO0b31lmlmVJnLm3uUUF8uck5Y/A1wXEbdK+kdgBXB9xfVN3vCz4KbimXw+U89aUqrFl7QI+GPghrQs4AzgjrTJSmB5HQWaWfXKdvU/D3wE+G1aPhTYERF70vIWYOFIT5TUJ2lA0sBudnVVrJlVY9zgSzofGIyI9ZPZQUT0R0RPRPTMZNZkXsLMKlZmjP924D2SzgNmU4zxvwDMlbRPavUXAVvrK7MCVUyiWfVrNGjT504pve0xH7q3xkpsKhi3xY+IqyNiUUQsBi4GfhgRlwL3ABemzXqBVbVVaWaV6uZ7/CuBD0naRDHmv7GaksysboqIxnY2R/PiZC1rbH+5m0j3fjTu9k8v62ItO+N5jbedz9wzy5CDb5ahvXfOvUxV0b0f7fXc7d97uMU3y5CDb5YhB98sQw6+WYYcfLMMOfhmGXLwzTLk4JtlyME3y5CDb5YhB98sQw6+WYYcfLMMOfhmGXLwzTLk4JtlyME3y5CDb5YhB98sQw6+WYYcfLMMOfhmGSo1vbakzcCLwKvAnojokTQPuA1YDGwGLoqIF+op08yqNJEW/10RsTQietLyVcDaiDgWWJuWzWwa6KarfwGwMt1fCSzvvhwza0LZ4Adwt6T1kvrSuvkRsS3d3w7MH+mJkvokDUga2M2uLss1syqUvYTWaRGxVdLvAWsk/azzwYgISSNedjci+oF+KK6W21W1ZlaJUi1+RGxNPweBO4GTgGckLQBIPwfrKtLMqjVu8CUdIOmgofvAWcAjwF1Ab9qsF1hVV5FmVq0yXf35wJ2Shrb/akR8T9L9wO2SVgBPARfVV6aZVUkRzQ2752henKxlje0vd1VcMtuXxp5e1sVadsbzGm87n7lnliEH3yxDDr5Zhsp+j2/TUOf4fCLjfY/r935u8c0y5OCbZchd/Uy4+26d3OKbZcjBN8uQg2+WIQffLEMOvlmGHHyzDDn4Zhly8M0y5OCbZcjBN8uQg2+WIQffLEMOvlmGHHyzDDn4Zhly8M0y5OCbZcjBN8tQqeBLmivpDkk/k7RR0qmS5klaI+mJ9POQuos1s2qUbfG/AHwvIo4HTgA2AlcBayPiWGBtWjazaaDM1XIPBk4HbgSIiFciYgdwAbAybbYSWF5XkWZWrTIt/tHAs8CXJT0g6YZ0uez5EbEtbbOd4qq6/4+kPkkDkgZ2s6uaqs2sK2WCvw/wVuD6iDgReJlh3fooLrk74mV3I6I/Inoiomcms7qt18wqUCb4W4AtEbEuLd9B8UHwjKQFAOnnYD0lmlnVxg1+RGwHnpZ0XFq1DHgMuAvoTet6gVW1VGhmlSt7JZ2/BG6RtC/wS+BPKT40bpe0AngKuKieEs2saqWCHxEbgJ4RHlpWbTlm1gSfuWeWIQffLEMOvlmGHHyzDDn4Zhly8M0ypOJs24Z2Jj1L8Z3/YcBzje14ZFOhBnAdw7mO15poHa+PiMPH26jR4P/fTqWBiBjpvICsanAdrqOtOtzVN8uQg2+WobaC39/SfjtNhRrAdQznOl6rljpaGeObWbvc1TfLkINvlqFGgy/pHEmPS9okqbFZeSXdJGlQ0iMd6xqfHlzSUZLukfSYpEclXd5GLZJmS7pP0oOpjmvS+qMlrUvvz21p/oXaSZqR5nNc3VYdkjZLeljSBkkDaV0bvyONTGXfWPAlzQC+BJwLLAEukbSkod3fDJwzbF0b04PvAT4cEUuAU4APpv+DpmvZBZwREScAS4FzJJ0CfAa4LiKOAV4AVtRcx5DLKaZsH9JWHe+KiKUd35u38TvSzFT2EdHIDTgV+H7H8tXA1Q3ufzHwSMfy48CCdH8B8HhTtXTUsAo4s81agP2BnwInU5whts9I71eN+1+UfpnPAFYDaqmOzcBhw9Y1+r4ABwNPkg6611lHk139hcDTHctb0rq2lJoevC6SFgMnAuvaqCV1rzdQTJK6BvgFsCMi9qRNmnp/Pg98BPhtWj60pToCuFvSekl9aV3T70tXU9lPhA/uMfb04HWQdCDwDeCKiNjZRi0R8WpELKVocU8Cjq97n8NJOh8YjIj1Te97BKdFxFsphqIflHR654MNvS9dTWU/EU0GfytwVMfyorSuLa1MDy5pJkXob4mIb7ZZC0AUV0W6h6JLPVfS0DyMTbw/bwfeI2kzcCtFd/8LLdRBRGxNPweBOyk+DJt+Xxqbyr7J4N8PHJuO2O4LXEwxRXdbGp8eXJIoLkW2MSI+11Ytkg6XNDfd34/iOMNGig+AC5uqIyKujohFEbGY4vfhhxFxadN1SDpA0kFD94GzgEdo+H2JJqeyr/ugybCDFOcBP6cYT36swf1+DdgG7Kb4VF1BMZZcCzwB/ACY10Adp1F00x4CNqTbeU3XArwFeCDV8QjwibT+DcB9wCbg68CsBt+jdwKr26gj7e/BdHt06Hezpd+RpcBAem++BRxSRx0+ZdcsQz64Z5YhB98sQw6+WYYcfLMMOfhmGXLwzTLk4Jtl6H8BEGZDb3ifE5cAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p_dataset = os.path.join(uts.DEFAULT_PATH, uts.SYNTH_DATASETS_FUZZY[0])\n", "print ('loading dataset: ({}) exists -> {}'.format(os.path.exists(p_dataset), p_dataset))\n", "\n", "p_atlas = os.path.join(uts.DEFAULT_PATH, 'dictionary/atlas.png')\n", "atlas_gt = io.imread(p_atlas)\n", "nb_patterns = len(np.unique(atlas_gt))\n", "print ('loading ({}) <- {}'.format(os.path.exists(p_atlas), p_atlas))\n", "plt.imshow(atlas_gt, interpolation='nearest')\n", "_ = plt.title('Atlas; unique %i' % nb_patterns)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "('loaded # images: ', 800)\n", "('image shape:', (64, 64))\n" ] } ], "source": [ "list_imgs = uts.load_dataset(p_dataset)\n", "print ('loaded # images: ', len(list_imgs))\n", "img_shape = list_imgs[0].shape\n", "print ('image shape:', img_shape)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Pre-Processing" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "('input data shape:', (800, 4096))\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X = np.array([im.ravel() for im in list_imgs]) # - 0.5\n", "print ('input data shape:', X.shape)\n", "\n", "plt.figure(figsize=(7, 3))\n", "_= plt.imshow(X, aspect='auto'), plt.xlabel('features'), plt.ylabel('samples'), plt.colorbar()" ] }, { "cell_type": "code", "execution_count": 10, "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" } ], "source": [ "uts.show_sample_data_as_imgs(X, img_shape, nb_rows=1, nb_cols=5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## SparsePCA" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "SpectralClustering(affinity='rbf', assign_labels='kmeans', coef0=1, degree=3,\n", " eigen_solver=None, eigen_tol=0.0, gamma=1.0, kernel_params=None,\n", " n_clusters=7, n_init=10, n_jobs=-1, n_neighbors=10,\n", " random_state=None)" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.cluster import SpectralClustering\n", "sc = SpectralClustering(n_clusters=nb_patterns, n_jobs=-1) # , assign_labels='discretize'\n", "\n", "sc.fit(X[:1200, :].T)\n", "atlas = sc.labels_.reshape(atlas_gt.shape)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "('labels:', (4096,))\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(atlas)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.13" } }, "nbformat": 4, "nbformat_minor": 1 }