{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Choice of the ground loss\n", "\n", "Data from [Fig. 1 and 2 in here](https://arxiv.org/pdf/1706.07650.pdf)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pylab as pl\n", "import ot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Dataset 1" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n=20 # nb samples\n", "xs=np.zeros((n,2))\n", "xs[:,0]=np.arange(n)+1\n", "xs[:,1]=(np.arange(n)+1)*-0.001 # to make it strictly convex...\n", "\n", "xt=np.zeros((n,2))\n", "xt[:,1]=np.arange(n)+1\n", "a,b = ot.unif(n),ot.unif(n) # uniform distribution on samples\n", "\n", "pl.figure(1)\n", "pl.clf()\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "pl.title('Source and traget distributions')\n", "pl.legend()\n", "pl.show()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# loss matrix\n", "M1=ot.dist(xs,xt,metric='euclidean')\n", "M1/=M1.max()\n", "\n", "# loss matrix\n", "M2=ot.dist(xs,xt,metric='sqeuclidean')\n", "M2/=M2.max()\n", "\n", "# loss matrix\n", "Mp=np.sqrt(ot.dist(xs,xt,metric='euclidean'))\n", "Mp/=Mp.max()\n", "\n", "pl.figure(2,(15,5))\n", "pl.subplot(1,3,1)\n", "pl.imshow(M1,interpolation='nearest')\n", "pl.title('Eucidean cost')\n", "pl.subplot(1,3,2)\n", "pl.imshow(M2,interpolation='nearest')\n", "pl.title('Squared Euclidean cost')\n", "\n", "pl.subplot(1,3,3)\n", "pl.imshow(Mp,interpolation='nearest')\n", "pl.title('Sqrt Euclidean cost')\n", "pl.show()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nQfe96QDihBAdhRCRQogyQojsTnuvAZAOYIDrM5+E55SdzwD0ch1dF0KIokItMlAcQFGoQngUAIQQ\nz0EdSSaiLFhRM4Ra5KKWq4E5DeAa1BSg7PbtjQDqCyEaCSGioZuC41IcwAkp5SUhRDOoKYW+fAng\nUSFEW6Euso8W6mL8m6SUe6CmQb4rhIgSQrQG8KjZ31WHdZAoxGxWz7JyGEAZIURJs9vh8heAaNe+\nXhDAmwAK6b4/EcD7QojarrpwqxCiTDafORtAdyFEPSFEEQBva9+QUmZA1ZqPhRDlAUAIUVkI0dY1\npDhUkDslhCitfy9Zi0EtjEkph0Fd7JoI4AyAZKijLPdJKS/n8GP1qxRp/2kXzb4FdQTnJFSB/Eq3\nLf9AXdT6KoATUM2Mz2VmpZRXoI6GdXe95ynoLgyWUqYC6AF1wepJqCkJ3V3f2wLgI6gCehhAQwC/\n5vB3JsoXLKgZtQEkATgHtS+OkVIu92Pf/gvAe6737gCwyvNj0QfAe0KIs1AXs8/O5vfaC+Bx1+92\n1PU7DYb737jOUItqnIBqMD7P5vdiHSSyObvUM4Nt2wZ1be0u11RCo1Ufh3jVmWOu95+GqoMTAeyH\nOsOmXwXSCVUXl0L97pMAFM5mm74H8AnUSrk7XY96Q12vr3VNb0yCOosG1/sKQ515Wws1LZKCQHhO\nuSUiIgo8IcRUAPuklG+GeluIiHKD9YyChWfUiIiIiIiIbIZBjYiIiIiIyGY49ZGIiIiIiMhmeEaN\niIiIiIjIZhjUiIiIiIiIbCarO7pbpmzZsjImJiaYP5KILLZ+/fpjUspy2Y+0L9YmoryJ9YmI7Mjf\n2hTUoBYTE4PU1NRg/kgispgQYk+otyG3WJuI8ibWJyKyI39rE6c+EhERERER2QyDGhERERERkc0w\nqBEREREREdkMgxoREREREZHNMKgRERERERHZDIMaERERERGRzTCoERERERER2QyDGhERERERkc0w\nqBEREREREdkMgxoREREREZHNMKgRERERERHZDIMaERERERGRzTCoERERERER2QyDGhERERERkc0w\nqBEREREREdkMgxoREREREZHNMKgRERERERHZDIMaERERERGRzWQb1IQQVYQQy4UQW4QQfwohXna9\nXloIsUwIscP1eIP1m0tEpLA2EZFdsT4RUSD4c0YtHcCrUsp6AFoA6CuEqAfgNQA/SilrA/jR9XXu\n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\nRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "\n", " \n", "G1=ot.emd(a,b,M1)\n", "G2=ot.emd(a,b,M2)\n", "Gp=ot.emd(a,b,Mp)\n", "\n", "pl.figure(3,(15,5))\n", "\n", "pl.subplot(1,3,1)\n", "ot.plot.plot2D_samples_mat(xs,xt,G1,c=[.5,.5,1])\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "#pl.legend(loc=0)\n", "pl.title('OT Euclidean')\n", "\n", "pl.subplot(1,3,2)\n", "\n", "ot.plot.plot2D_samples_mat(xs,xt,G2,c=[.5,.5,1])\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "#pl.legend(loc=0)\n", "pl.title('OT squared Euclidean')\n", "\n", "pl.subplot(1,3,3)\n", "\n", "ot.plot.plot2D_samples_mat(xs,xt,Gp,c=[.5,.5,1])\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "#pl.legend(loc=0)\n", "pl.title('OT sqrt Euclidean')\n", "pl.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Dataset 2" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\ngc+fCgAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n=50 # nb samples\n", "xtot=np.zeros((n+1,2))\n", "xtot[:,0]=np.cos((np.arange(n+1)+1.0)*0.9/(n+2)*2*np.pi+.06*np.pi)\n", "xtot[:,1]=np.sin((np.arange(n+1)+1.0)*0.9/(n+2)*2*np.pi+.06*np.pi)\n", "\n", "xs=xtot[:n,:]\n", "xt=xtot[1:,:]\n", "\n", "a,b = ot.unif(n),ot.unif(n) # uniform distribution on samples\n", "\n", "pl.figure(1)\n", "pl.clf()\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "pl.title('Source and traget distributions')\n", "pl.show()" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\ni2b2eDP7sXyM213KLscvnWm+VWsvnkDjmNkDLRs4flL++8nKboX7Sj7Lh5Ud4yfl4xReX3iIK5Xd\nTjxtZsUxH7PKOid3KGuo/NGx1iW/0vNeZWMmlq407TKzX+hZlxeZ2YPMbKOk/93fVkuSviHpwWb2\nUMtCOd5UWI9zJb3DzE7Mrww+yu4ZX7uSFV+rvK7+k6S3m9kWy4KOftjMlm5vnFV2i9Gd+RiT1xYf\nfA3eJ+k1ZvZTee29f35y7FJlZ8dfl79fj5P0dGV3FawzsxeY2db8dq+7tLwe7izcsgokp4J6FjJo\ne+BKSc82s42WhRWd0fO3iySdYGavtCxIadbMHnGsB8tvY75M0pvz4/Yxyo7jJR+Q9HQz+4W8ds1Y\nFhJykrIUzPXK2l6LloW0/Xw/G7VKW/FDkl6c19f1ymr/pe5+nZk9LG8XTivrxB4Wba+B0VFrrr+z\n5d/r8f8kKb9n+QJJ31Q2IPWiwnK/qqzj8u/KBp6+svjA7n5U0rOVDbbdJ+mXJX285++XKRu4+25J\n+yVdk88rd79K0tuVdfZulfRjkr7czwZ6Nobt6coG4f6npBvzdZGyxtb7JX1R0n8oKwi/lf/t3pI+\nqqxBcrWkL+TzStKfSnqOZSlGf9bPegENMa8suOdSy5IXv6Ls6var87+/V9ktwt9QFgby8cLyb1R2\n9Wa/slCgv+35298ou/3lJklX6Z7G0rH8jrJa8ZX8FsDPKB8f4e6fVnYL02fzeT4b8XjvLtTAy/PH\n+q6kP8gf/3vKgkx6vUbSvykbd7tP0tu0+mfhaq/VC5U1lK5S9np9VPntSMpeu5+UdKeyIIDistHc\n/SPKAlr+Vtn7+wlJO/Ka/XRl40pul/QXkl6YX3WQsrp/Xf66v1TZOJOlqxIfknRtfisVqY9I1aD1\nLCS2PTBXqDWvyqe/U9JRZW2d3eoJVPJsHO4TlR2XtyirRY+PWKdfybdzn7ITVn/T85g3KLuT4XeV\ndchuUHbip5U/38uVdVj3549zYcTzrSTYVvTsa6HeqOzq3R5lnxFLY423KHsf9iv7fLhD0v/N/3aO\nsnGyc9aTIInV2fJhSACASWTZYPD/kDS9wrhQAGgE6hnGBVfUAAAAACAxdNQAAAAAIDHc+ggAAAAA\nieGKGgAAAAAkZqCOmpk9ycy+Y2bXmFlMFCoAjAT1CUCKqE0AYvV962P+HVXfVRY/eqOyqOPn5/Hs\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# loss matrix\n", "M1=ot.dist(xs,xt,metric='euclidean')\n", "M1/=M1.max()\n", "\n", "# loss matrix\n", "M2=ot.dist(xs,xt,metric='sqeuclidean')\n", "M2/=M2.max()\n", "\n", "# loss matrix\n", "Mp=np.sqrt(ot.dist(xs,xt,metric='euclidean'))\n", "Mp/=Mp.max()\n", "\n", "pl.figure(2,(15,5))\n", "pl.subplot(1,3,1)\n", "pl.imshow(M1,interpolation='nearest')\n", "pl.title('Eucidean cost')\n", "pl.subplot(1,3,2)\n", "pl.imshow(M2,interpolation='nearest')\n", "pl.title('Squared Euclidean cost')\n", "\n", "pl.subplot(1,3,3)\n", "pl.imshow(Mp,interpolation='nearest')\n", "pl.title('Sqrt Euclidean cost')\n", "pl.show()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nIcwgsqnmlZADXt8gT6f1rwuDrFlyTVZ9R6a1/P0NWr5cWrVKWrtWcs89oZQ8I58g8qnmUTuhEty9\nLBdJO0t6bCP3XS/pE3nXb5dUv6nX23PPPR0xkcm419W5ZzIurX99pOe0avbIjy3lOaW0CVUhqdvL\nlDuFXMqdTU4+xUfuc7/21iAHXr0042um1flTv8n4n/7kftNN7lde6X7RRe4dHe5nnOHe2up+wdEZ\n750YZE3vxDq/4OiMt7T4BpfWVveTTnL/wzEZX5Z7/IrJdX73nIzfeaf7I4+4v/CCe2+ve1/fhu0i\nn6Kl2tnk1E61jdoJBSommyIVTgqGGnRL6t5xxx0r+CPCJp122sCHuLk5d1smE9y+MUUER3Nz8JfX\nqtnukrdqtkt571Wm55QUgKi4uHbsyKcIKCCb1q1zX7DA/eGHg47bjbMGO11DO2mnnOL+85+7n3ee\n+6WXul97rftXvjJ81nzzm+733+9+zz3uf/qT+x13uN9+u/uXvzz84/fee/1O4CmnuP/618H73HST\n+xNnZ3zVVPIpSuLasSObIoLaCRUSxY7dbyQdlXf9SUnbber12OsUoiL32FQtOCoZgKUEMkoSsY5d\n0dnk5FN4hmTTutsyvm56nT/924zPn+9+/vnuJ5882JlKpYbPgeOPd1+1auT3KTifhnn86tXur7/u\n/uST7vfd537jje5//KP72WdvvF2Nje5Llw7z+uRTVUSwY0ftFCfUToPvRzaVVRQ7dp+RdKMkk/RR\nSX8Z6fUIp5CVobAZ6bGlDD+o2JAFhh9UTcQ6dkVnk5NPoenrc1/QmfEVUzY8Anfyye6/+537/Pnu\nf/2r+6uvuq9d6yVnWcFZUEJ29PW5L52X8dVb5YZvTqnzS74xeCTxl790nzcvOOrY01Pae6B4EezY\nUTvFDbUT2VQBVe/YSbpU0iuS1kh6UdI3JB0n6bjc/SbpbEnPSnp0pDHiTjiFqug9NsV+sEvZw1Ps\nc6o1dh1Fq2bxVIlscvKpqtaudX/2WfcbbnD/1KeGz6Yf/CAYgrmBUnKg2KwZxfCr/Hb11dX565dl\n/O67gyN7P/nJ4JHHs85yv3tOxlduST5VUgg7naidEoTaiWyqlFCO2JX7QjiVUYXHfUfyUHyRbSpp\nSARKEsZe8XJfyKcy2cjndM3Jp/njj7tfdZX7qacGnZuTTnKfO9f96d8GnaDYZpN7wecKvvyy+733\n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\nO4vGAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " \n", "G1=ot.emd(a,b,M1)\n", "G2=ot.emd(a,b,M2)\n", "Gp=ot.emd(a,b,Mp)\n", "\n", "pl.figure(3,(15,5))\n", "\n", "pl.subplot(1,3,1)\n", "ot.plot.plot2D_samples_mat(xs,xt,G1,c=[.5,.5,1])\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "#pl.legend(loc=0)\n", "pl.title('OT Euclidean')\n", "\n", "pl.subplot(1,3,2)\n", "\n", "ot.plot.plot2D_samples_mat(xs,xt,G2,c=[.5,.5,1])\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "#pl.legend(loc=0)\n", "pl.title('OT squared Euclidean')\n", "\n", "pl.subplot(1,3,3)\n", "\n", "ot.plot.plot2D_samples_mat(xs,xt,Gp,c=[.5,.5,1])\n", "pl.plot(xs[:,0],xs[:,1],'+b',label='Source samples')\n", "pl.plot(xt[:,0],xt[:,1],'xr',label='Target samples')\n", "pl.axis('equal')\n", "#pl.legend(loc=0)\n", "pl.title('OT sqrt Euclidean')\n", "pl.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "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.12" } }, "nbformat": 4, "nbformat_minor": 2 }