diff --git a/analytics-supportvector-mechine-classification.ipynb b/analytics-supportvector-mechine-classification.ipynb deleted file mode 100644 index 77153b47e7706e5cd4cace3d47e3b320eb7b1f38..0000000000000000000000000000000000000000 --- a/analytics-supportvector-mechine-classification.ipynb +++ /dev/null @@ -1,495 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "<div id=\"teaser\" style=' background-position: right center; background-size: 00px; background-repeat: no-repeat; \n", - " padding-top: 20px;\n", - " padding-right: 10px;\n", - " padding-bottom: 170px;\n", - " padding-left: 10px;\n", - " border-bottom: 14px double #333;\n", - " border-top: 14px double #333;' > \n", - "\n", - " <div style=\"text-align:center\">\n", - " <b><font size=\"6.4\">An intoduction to support-vector machine for classification </font></b> \n", - " </div>\n", - " \n", - "<p>\n", - " Notebook created by:<br>\n", - " Qaem Hassanzada <sup>1</sup> \n", - " and Luca M. Ghiringhelli<sup>1</sup> <br>\n", - " \n", - "<sup>1</sup> NOMAD Laboratory at the Fritz Haber Institute of the Max Planck Society and Humboldt University, Berlin, Germany<br>\n", - "<sup>2</sup> UC Berkeley, CA, USA <br><br>\n", - "<span class=\"nomad--last-updated\" data-version=\"v1.0.0\">[Last updated: January 24, 2022]</span>\n", - " \n", - "<div> \n", - "<img style=\"float: left;\" src=\"assets/Logo_MPG.png\" width=\"200\"> \n", - "<img style=\"float: right;\" src=\"assets/Logo_NOMAD.png\" width=\"250\">\n", - "</div>\n", - "</div>\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this tutorial, we introduce the support vector machine (SVM) (or support-vector networks), a well-known supervised learning method for both classification and regression problems. This method is one of the most powerful prediction methods which produces high accuracy with less computational expenses. It was developed by Vladimir Vapnik and his colleagues in the 1990s and nowadays it is extensively used in the scientific community, mostly for data classification. \n", - "\n", - "<div style=\"padding: 1ex; margin-top: 1ex; margin-bottom: 1ex; border-style: dotted; border-width: 1pt; border-color: blue; border-radius: 3px;\">\n", - "Corinna Cortes, Vladimir Vapnik : <span style=\"font-style: italic;\">Support-vector networks</span>, Mach Learn 20, 273–297 (1995) <a href=\"https://link.springer.com/article/10.1007%2FBF00994018\" target=\"_blank\">[PDF]</a> .\n", - "</div>\n", - "\n", - "\n", - "# Intoduction\n", - "\n", - "The support vector machine is a generalized form of a classifier called the Maximal Margin Classifier(MMC). This classifier is a simple algorithm that tries to find a separating hyperplane in a p-dimensional feature space to classify the data points. Hyperplanes are middle borders that divide the feature space into different parts. Each data point that lies in each of these specified parts i.e. each side of the hyperplane is assigned to a different class. The major goal of MMC is to find a hyperplane that has the maximum margin. The main shortcoming of MMC is that this method is restricted to the data sets which are separable by a linear boundary. For this reason, MMC was extended to the non-separable and non-linear cases and a more general and robust method, the SVM, was developed which can be applied to a broader range of data sets. \n", - "\n", - "This tutorial is divided into the following parts:\n", - "\n", - "- What is a hyperplane? \n", - "- Maximal Margin Classifier (MMC)\n", - "- Support Vector Classifier (SVC) - linear classifier\n", - "- Support Vector Machines (SVM) - nonlinear classifier\n", - "- Extensions of support vector machines to the case of more than two classes \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# What is a hyperplane?\n", - "A hyperplane is a p-1 dimensional flat affine subspace of a p-dimensional space and has a simple mathematical definition. For example, in two dimensions, a hyperplane is considered as a line and is defined as\n", - "\n", - "$\\beta_0+\\beta_1 X_1+\\beta_2 X_2=0$             (1)\n", - "\n", - "where $\\beta_0$,$\\beta_1$,$\\beta_2$ are the intercept and slope of the line. Then one can easily extents equation (1) and obtains an equation for a p-dimentional hyperplane:\n", - "\n", - "$\\beta_0+\\beta_1 X_1+\\beta_2 X_2+...+\\beta_p X_n=0$              (2)\n", - "\n", - "If any $X=(X_1, X_2,..., X_p)^T$ in p-dimensional space satisfies equation (2), then X is a point on the hyperplane. When any X doesn't satisfy equation (2), then it is located on the left or right side of the hyperplane. By calculating the sign of equation (2) for these points, we can easily determine which side of the hyperplane the points are located on. In this way, the hyperplane divides the p-dimensional space into two parts.\n", - "\n", - "In the script below, a two-dimensional hyperplane, $-5+3X_{1}+2X_{2}=0$, is illustrated. The hyperplane divides the data points into blue and orange classes. The blue points are located at the top of the hyperplane ($-5+3X_{1}+2X_{2}>0$) and the orange points are located at the bottom of the hyperplane ($-5+3X_{1}+2X_{2}<0$). After determining the hyperplane the test data can be classified based on their positive and negative value(>0 or <0). Here the test data are shown with more colorful points. " - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import matplotlib.pylab as plt\n", - "import random\n", - "from sklearn import svm" - ] - }, - { - "cell_type": "code", - "execution_count": 31, - "metadata": { - "ExecuteTime": { - "end_time": "2022-01-18T11:18:29.863368Z", - "start_time": "2022-01-18T11:18:25.747129Z" - }, - "scrolled": false - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 576x432 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "#define a hyperplane for two dimentions \n", - "\n", - "X_h=np.linspace(-10, 10, 35)\n", - "X=np.linspace(-15, 15, 10)\n", - "#X_h=np.random.uniform(-10, 10, 10)\n", - "X_test=np.random.uniform(-10, 10, 4)\n", - "\n", - "def f(X1,X2):\n", - " Y=(+5-3*X1)/2\n", - " Z=-5+3*X1+2*X2\n", - " return(Y,Z)\n", - "hyperplane=[f(i,0)[0] for i in X]\n", - "\n", - "positive_x=[i for i in X_h for j in X_h if f(i,j)[1]>0]\n", - "positive_y=[j for i in X_h for j in X_h if f(i,j)[1]>0]\n", - "\n", - "negative_x=[i for i in X_h for j in X_h if f(i,j)[1]<0]\n", - "negative_y=[j for i in X_h for j in X_h if f(i,j)[1]<0]\n", - "\n", - "test_data_px=[i for i in X_test for j in X_test if f(i,j)[1]>0]\n", - "test_data_py=[j for i in X_test for j in X_test if f(i,j)[1]>0]\n", - "test_data_nx=[i for i in X_test for j in X_test if f(i,j)[1]<0]\n", - "test_data_ny=[j for i in X_test for j in X_test if f(i,j)[1]<0]\n", - "\n", - "plt.scatter(positive_x,positive_y,10,'b')\n", - "plt.scatter(negative_x,negative_y,10,color='orange')\n", - "plt.scatter(test_data_px,test_data_py,40,'b')\n", - "plt.scatter(test_data_nx,test_data_ny,40,color='orange')\n", - "\n", - "plt.plot(X,hyperplane,'r')\n", - "plt.xlim(-10.5,10.5)\n", - "plt.ylim(-10.5,10.5)\n", - "plt.title('Hyperplane', size=20)\n", - "fig = plt.gcf()\n", - "fig.set_size_inches(8, 6)\n", - "plt.show()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Maximal Margin Classifier\n", - "\n", - "In the maximal margin classifier method, the perpendicular distance between each data point and a separating hyperplane is calculated and the minimal distance is considered as the margin. Then the main task is to find a hyperplane that has the largest margin i.e. the largest minimum distance between the points and the hyperplane. Afterward, the test data points can be easily classified based on which side of the maximal margin hyperplane they are located (sign of the f(x) function). In the following picture, the MMC concept is illustrated. The black line that splits the data is defined as a hyperplane and the dashed lines show the margin width. There are three data points that have the same distance to the hyperplane. These points which lie on the margin lines (dashed lines) are called **\"support vectors\"** (each data point is a vector in the p-dimensional space). The reason for this naming is that the maximal margin hyperplane is highly dependent on these points. In another word, if the positions of these points are changed the maximal margin hyperplane would be changed as well, but any changes in the positions of other points don't affect the maximal margin hyperplane. \n", - "\n", - "<img style=\"float: center;\" src=\"data/MMC11.png\" width=\"500\"> \n", - " \n", - "\n", - "Although this method is a simple and useful method, in most of the classification problems in real life there isn't a separating hyperplane and it is not possible to find a maximal margin classifier. A sample of such data set is plotted at the following cell. As you can see for this data set a separating hyperplane can not be defined and considering any line will misclassify some points. In addition, MMC is too much sensitive to support vectors and when these points are close to the hyperplane the margin would not be satisfactory. This may lead to overfitting of the training data and higher error rates in the classification of test data." - ] - }, - { - "cell_type": "code", - "execution_count": 32, - "metadata": { - "scrolled": false - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 576x432 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from sklearn.datasets import make_blobs, make_moons\n", - "\n", - "X=np.linspace(-10, 12, 10) \n", - "x_blobs, y_blobs = make_blobs(n_samples=[20,30],random_state=0,cluster_std=[1,0.8],centers=[[4.5,5],[6,8]])\n", - "\n", - "hyperplane1=-0.4*X+8.65\n", - "hyperplane2=-1.3*X+13.8\n", - "plt.plot(X,hyperplane1,'r--')\n", - "plt.plot(X,hyperplane2,'b--')\n", - "\n", - "plt.scatter(x_blobs[:,0],x_blobs[:,1],c=y_blobs,s=80,cmap=plt.cm.Paired)\n", - "plt.title('dataset', size=20)\n", - "plt.xlim(4,8)\n", - "plt.ylim(3.5,10)\n", - "fig = plt.gcf()\n", - "fig.set_size_inches(8, 6)\n", - "plt.xlabel('X1',fontsize=18)\n", - "plt.ylabel('X2',fontsize=18)\n", - "plt.show()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "However, MMC can be extended to the non-separable data sets by defining a new separating hyperplane that doesn't perfectly separate the classes. This new classifier is called soft margin or support vector classifier which is the subject of the next section. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Support Vector Classifier\n", - "\n", - "A hyperplane that separates different classes of a data set perfectly and without any defect is too ideal and it is not achievable in the case of complex data sets and mostly leads to the poor classification of test data. As an alternative, one can think of sacrificing some data points for the sake of better classification of most of the training data points. This concept leads to a new classifier that is called support vector classifier (SVC). In SVC, instead of trying to find a hyperplane that does the classification perfectly, some points are allowed to be misclassified. \n", - "\n", - "Then for $n$ training observations $x_1,...,x_n \\in \\mathbb{R}^{p}$ and associated class labels $y_1,...,y_n$, SVC is an optimization problem and the solution to this problem would be a seperating hyperplane as follows: \n", - "<p>\n", - "<center> $\\underset{\\beta_0,\\beta_1,...,\\beta_n,\\varepsilon_0,\\varepsilon_1,...,\\varepsilon_n}{Maximize}$ M\n", - "\n", - "<center> subject to $ \\sum\\limits_{j=1}^{n} \\beta_j^2 =1$\n", - "\n", - "<center> $y_i(\\beta_0+\\beta_{1}x_{i1}+\\beta_{2}x_{i2}+,...,+\\beta_{p}x_{ip}) \\geq M(1-\\epsilon_i)$\n", - "\n", - "<center> $\\epsilon_i \\geq 0, \\sum\\limits_{i=1}^{m} \\epsilon_i \\leq C$\n", - "\n", - "\n", - " \n", - "Where $M$ is the margin width which we try to make as large as possible and $C$ is a nonnegative tuning parameter that determines the number of points that can be on the wrong side of the hyperplane or margin. When $C=0$ then there is no misclassified point and the SVC becomes the maximal margin classifier. As $C$ increases more points are allowed to be on the wrong side and then the margin width increases. The $\\epsilon_i ... \\epsilon_m$ variables determine whether a data point is located on the wrong side of the hyperplane or margin. If $\\epsilon_i=0$ then the ith point is located on the right side of the hyperplane. If $\\epsilon_i>0$ then the ith point is located on the wrong side of the margin and If $\\epsilon_i>1$ then it would be on the wrong side of the hyperplane. The definition of support vectors is slightly different in SVC compared to MMC. In SVC, the data points or observations which are located on the margin or the wrong side of the margin are called support vectors. As we explained before, the hyperplane is only dependent on support vectors. \n", - " \n", - "In the example below, the SVC is used to classify the previous inseparable data set. As you can see, some data points are allowed to violate the margin. This helps us obtain a margin with a larger width and as a result, be more confident that most of the data points are classified well.\n" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 576x432 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "\n", - "# create data set\n", - "centers=[[4.5,5],[6,8]]\n", - "n_samples=[20,30]\n", - "cluster_std=[1,0.8]\n", - "\n", - "#plot Gaussian blobs- x_blobs is the generated samples and y_blobs are the labels\n", - "xy_blobs, labels = make_blobs(n_samples=n_samples,random_state=0,cluster_std=cluster_std,centers=centers)\n", - "\n", - "# SVC model and fitting the data points\n", - "clf = svm.SVC(kernel=\"linear\", C=1000)\n", - "clf.fit(xy_blobs, labels)\n", - "\n", - "#plot the data set, you can use the colormap list to change the color\n", - "plt.scatter(xy_blobs[:, 0], xy_blobs[:, 1], c=labels ,s=80,cmap=plt.get_cmap(\"tab20c\"))\n", - "\n", - "# colormap=['Pastel1', 'Pastel2', 'Paired', 'Accent', 'Dark2',\n", - "# 'Set1', 'Set2', 'Set3', 'tab10', 'tab20', 'tab20b',\n", - "# 'tab20c'])\n", - "\n", - "# create grid for plotting the hyperplane and margin lines\n", - "xmin, xmax = plt.xlim()\n", - "ymin, ymax = plt.ylim()\n", - "X=np.linspace(xmin,xmax, 40) \n", - "Y=np.linspace(ymin,ymax, 40)\n", - "grid_x, grid_y = np.meshgrid(X,Y)\n", - "xy = np.vstack([grid_x.ravel(), grid_y.ravel()]).T\n", - "Z = clf.decision_function(xy).reshape(grid_x.shape)\n", - "\n", - "plt.contour(\n", - " grid_x, grid_y, Z, colors=\"k\", levels=[-1, 0, 1], alpha=0.8, linestyles=[\"--\", \"-\", \"--\"]\n", - ")\n", - "\n", - "# plot support vectors\n", - "plt.scatter(\n", - " clf.support_vectors_[:, 0],\n", - " clf.support_vectors_[:, 1],\n", - " s=80,\n", - " linewidth=1.5,\n", - " facecolors=\"none\",\n", - " edgecolors=\"k\",\n", - ")\n", - "\n", - "#plot setting\n", - "fig = plt.gcf()\n", - "fig.set_size_inches(8, 6)\n", - "plt.xlabel('X1',fontsize=18)\n", - "plt.ylabel('X2',fontsize=18)\n", - "\n", - "plt.tick_params(axis = 'both', which = 'major', labelsize = 18)\n", - "plt.tick_params(which='minor',length=5,width=3.0)\n", - "plt.tick_params(which='major',length=5.0, width=3.00)\n", - "#plt.tick_params(axis='y',which='minor',right='off')\n", - "#plt.tick_params(axis='x',which='major',top='off')\n", - "#plt.tick_params(axis='x',which='minor',top='off')\n", - "#plt.tick_params(axis='y',which='major',right='off')\n", - "plt.tick_params(labelsize=20)\n", - "#plt.rcParams['figure.figsize'] = [9.5, 7]\n", - "#plt.locator_params(axis=\"x\", nbins=6)\n", - "#plt.legend(prop={'size': 13},bbox_to_anchor=(1.132, 1.10))\n", - "#fig.savefig('MMC11.png', dpi=600)\n", - "plt.show()\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "SVC works well for the data sets which are separable by a linear hyperplane. But what if the boundary between two classes is not linear? Below, a nonlinear data set is shown. " - ] - }, - { - "cell_type": "code", - "execution_count": 34, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 576x432 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "set1=np.concatenate((np.random.normal([1,1], 0.25, (100, 2)), np.random.normal([-1,1], 0.25, (100, 2))))\n", - "#set1=np.random.normal([1,1], 0.25, (100, 2))\n", - "set2=np.random.normal([0,1], 0.25, (100, 2))\n", - "set12=np.concatenate((set1,set2))\n", - "\n", - "plt.plot(set1[:,0],set1[:,1],'mo',markersize=8)\n", - "plt.plot(set2[:,0],set2[:,1],'co',markersize=8)\n", - "\n", - "plt.title('dataset', size=20)\n", - "#plt.xlim(-2,2)\n", - "#plt.ylim(-2,2)\n", - "fig = plt.gcf()\n", - "fig.set_size_inches(8, 6)\n", - "plt.xlabel('X1',fontsize=18)\n", - "plt.ylabel('X2',fontsize=18)\n", - "plt.show()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As you can see, SVC fails to provide a correct classification for this data set. However, occasionally we face such datasets in which the class boundaries are not linear and for them, support vector classifier is not a good choice." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Support vector machines\n", - "\n", - "For non-linear datasets, we need to tackle the nonlinearity of the boundaries by extending the features space ($X_1, X_2,..., X_p$) using a nonlinear function such as the cubic and quadratic functions. In this higher dimensional feature space the data points become separable and the new hyperplane function would be linear.\n", - "\n", - "In practice, this can be done through the kernels. For explaining the kernel, we need to go back to the SVC concept. For solving the SVC problem we only need to calculate the inner products of the data points (observations) and then the classifier can be rewritten as follows:\n", - "\n", - "$f(x)=\\beta_0+ \\sum\\limits_{i=1}^{n} \\alpha_i<x,x_{i}>$\n", - "\n", - "where $\\alpha_i $ are n parameters per each data point. Then we can generalize the inner product term and substitute it with some functions such as radial basis function, polynomial functions, cubic function, etc. This new term expresses the similarity of two observations and is called the kernel. For example, radial basis function kernel has the following form: \n", - "\n", - "$K(x,x^{'})=exp(-\\frac{\\lVert x-x^{'} \\rVert^2}{2\\sigma^2})$\n", - "\n", - "and the classifier with this Kernel is written as:\n", - "\n", - "$f(x)=\\beta_0+ \\sum\\limits_{i=1}^{n} \\alpha_i K(x,x_{i})$\n", - "\n", - "In the next cell, we use the radial basis function (RBF) to classifiy the previous data set. " - ] - }, - { - "cell_type": "code", - "execution_count": 35, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 576x432 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "\n", - "set1=np.concatenate((np.random.normal([1,1], 0.25, (100, 2)), np.random.normal([-1,1], 0.25, (100, 2))))\n", - "#set1=np.random.normal([1,1], 0.25, (100, 2))\n", - "set2=np.random.normal([0,1], 0.25, (100, 2))\n", - "set12=np.concatenate((set1,set2))\n", - "\n", - "plt.plot(set1[:,0],set1[:,1],'mo',markersize=8)\n", - "plt.plot(set2[:,0],set2[:,1],'co',markersize=8)\n", - "\n", - "set1_label=np.zeros(len(set1))\n", - "set2_label=np.full((1, len(set2)), 1, dtype=int)\n", - "set12_label=np.concatenate((set1_label,set2_label[0]))\n", - "\n", - "clf = svm.SVC(kernel=\"rbf\", C=10)\n", - "#clf = svm.NuSVC(gamma=\"auto\")\n", - "#clf = svm.LinearSVC()\n", - "clf.fit(set12, set12_label)\n", - "# create grid for plotting the hyperplane and margin lines\n", - "xmin, xmax = plt.xlim()\n", - "ymin, ymax = plt.ylim()\n", - "X=np.linspace(xmin,xmax, 400) \n", - "Y=np.linspace(ymin,ymax, 400)\n", - "grid_x, grid_y = np.meshgrid(X,Y)\n", - "xy = np.vstack([grid_x.ravel(), grid_y.ravel()]).T\n", - "Z = clf.decision_function(xy).reshape(grid_x.shape)\n", - "\n", - "plt.contour(\n", - " grid_x, grid_y, Z, colors=\"k\", levels=[-1, 0, 1],alpha=0.8, linestyles=[\"--\", \"-\", \"--\"]\n", - ")\n", - "\n", - "# plot support vectors\n", - "plt.scatter(\n", - " clf.support_vectors_[:, 0],\n", - " clf.support_vectors_[:, 1],\n", - " s=80,\n", - " linewidth=1.5,\n", - " facecolors=\"none\",\n", - " edgecolors=\"k\",\n", - ")\n", - "\n", - "plt.title('dataset', size=20)\n", - "#plt.xlim(-2,2)\n", - "#plt.ylim(-2,2)\n", - "fig = plt.gcf()\n", - "fig.set_size_inches(8, 6)\n", - "plt.xlabel('X1',fontsize=18)\n", - "plt.ylabel('X2',fontsize=18)\n", - "plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "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.8.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -}