{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Adaboost集成算法" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "高**" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": true, "scrolled": true }, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import sklearn.ensemble as ada\n", "import skimage.io as imr\n", "from sklearn.tree import DecisionTreeClassifier\n", "from sklearn.svm import LinearSVC\n", "from sklearn.neighbors import KNeighborsClassifier\n", "from sklearn.neural_network import MLPClassifier\n", "from sklearn.model_selection import cross_val_score\n", "from sklearn.naive_bayes import GaussianNB\n", "\n", "def get_raw_data():\n", " raw_data = imr.imread('dc.tif')\n", " return raw_data\n", "raw_data = get_raw_data()\n", "\n", "file = open('label.txt')\n", "f = file.read()\n", "short = f.split('\\n')\n", "l = []\n", "for s in short:\n", " s1 = s.split('\\t')\n", " l.append(s1)\n", "num = int(len(l)/3)\n", "arr = np.zeros(5*num).reshape(num,5)\n", "for i in range(num):\n", " arr[i][0] = int(l[i*3][4])\n", " arr[i][1] = int(l[i*3+1][1])\n", " arr[i][2] = int(l[i*3+1][2])\n", " arr[i][3] = int(l[i*3+2][1])\n", " arr[i][4] = int(l[i*3+2][2])\n", " \n", "arr = arr.astype(np.int16)\n", "i = 1\n", "n = 0\n", "xy_has_label = {'1':[],'2':[],'3':[],'4':[],'5':[],'6':[],'7':[]}\n", "for n in range(arr.shape[0]):\n", " c = [(x-1,y-1) for x in range(arr[n][1],arr[n][3]+1) for y in range(arr[n][2],arr[n][4]+1)]\n", " for t in c:\n", " xy_has_label[str(i)].append(t)\n", " if n+1<(arr.shape[0]):\n", " i = arr[n+1][0]\n", "\n", "for i in xy_has_label:\n", " xy_has_label[i] = np.asarray(xy_has_label[i])\n", " \n", "def seg_data(xy_of_data,seg_size=0.5):\n", " sub_xy_has_label_train = {}\n", " sub_xy_has_label_test = {}\n", " for i in xy_of_data:\n", " l = len(xy_of_data[i])\n", " perm = np.arange(l)\n", " np.random.shuffle(perm)\n", " sub_l = int(l*(1 - seg_size))\n", " temp_arr = xy_of_data[i][perm]\n", " sub_xy_has_label_train[i] = temp_arr[:sub_l]\n", " sub_xy_has_label_test[i] = temp_arr[sub_l:]\n", " return sub_xy_has_label_train, sub_xy_has_label_test\n", "sub_xy_has_label_train, sub_xy_has_label_test = seg_data(xy_has_label)\n", "\n", "DIM = 191\n", "def get_data(sub_xy_has_label,raw_data):\n", " data = raw_data[0:,0,0].reshape(1,DIM)\n", " l = np.zeros(1).reshape(1,)\n", " for i in sub_xy_has_label:\n", " row = sub_xy_has_label[i].shape[0]\n", " t = np.ones(row).reshape(row,)\n", " t = t*int(i)\n", " l = np.concatenate((l,t),axis = 0)\n", " for (x,y) in sub_xy_has_label[i]:\n", " data = np.concatenate((data,raw_data[0:,x,y].reshape(1,DIM)),axis = 0)\n", " data = np.delete(data,0,0)\n", " l = np.delete(l,0,0)\n", " l = l.astype(np.int16)\n", " return data, l\n", "train_data, train_l = get_data(sub_xy_has_label_train,raw_data)\n", "test_data, test_l = get_data(sub_xy_has_label_test,raw_data)\n", "\n", "def next_batch(im_a,l_a):\n", " perm = np.arange(len(l_a))\n", " np.random.shuffle(perm)\n", " train_size = len(l_a)*0.8\n", " train = im_a[perm]\n", " l_train = l_a[perm]\n", " return train[0:train_size],l_train[0:train_size],train[train_size:],l_train[train_size:]\n", "data_1, data_2 = seg_data(xy_has_label,0)\n", "data_0, l_0 = get_data(data_1,raw_data)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(8079, 3)\n" ] } ], "source": [ "from sklearn.decomposition import PCA\n", "d_reduce = PCA(n_components=3).fit_transform(data_0)\n", "print(d_reduce.shape,data.s)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "classifier_tree = ada.AdaBoostClassifier(DecisionTreeClassifier(max_depth = 10),algorithm=\"SAMME\",n_estimators=200)\n", "print(cross_val_score(classifier_tree,data_0,l_0,cv=10)) " ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Confusion matrix, without normalization\n", "[[1914 2 0 1 0 0 0]\n", " [ 8 195 0 0 0 1 4]\n", " [ 1 0 87 0 0 0 0]\n", " [ 1 1 0 962 0 0 0]\n", " [ 1 0 0 0 202 0 0]\n", " [ 0 0 0 0 0 610 2]\n", " [ 1 1 0 0 0 1 46]]\n", "Normalized confusion matrix\n", "[[ 9.98e-01 1.04e-03 0.00e+00 5.22e-04 0.00e+00 0.00e+00\n", " 0.00e+00]\n", " [ 3.85e-02 9.38e-01 0.00e+00 0.00e+00 0.00e+00 4.81e-03\n", " 1.92e-02]\n", " [ 1.14e-02 0.00e+00 9.89e-01 0.00e+00 0.00e+00 0.00e+00\n", " 0.00e+00]\n", " [ 1.04e-03 1.04e-03 0.00e+00 9.98e-01 0.00e+00 0.00e+00\n", " 0.00e+00]\n", " [ 4.93e-03 0.00e+00 0.00e+00 0.00e+00 9.95e-01 0.00e+00\n", " 0.00e+00]\n", " [ 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 9.97e-01\n", " 3.27e-03]\n", " [ 2.04e-02 2.04e-02 0.00e+00 0.00e+00 0.00e+00 2.04e-02\n", " 9.39e-01]]\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\ncwZ7AAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "classifier_tree = ada.AdaBoostClassifier(DecisionTreeClassifier(max_depth = 10),algorithm=\"SAMME\",n_estimators=200)\n", "classifier_tree.fit(train_data,train_l)\n", "z = classifier_tree.predict(test_data)\n", "import matplotlib.pyplot as plt\n", "from sklearn.metrics import confusion_matrix\n", "import itertools\n", "def plot_confusion_matrix(cm, classes,\n", " normalize=False,\n", " title='Confusion matrix',\n", " cmap=plt.cm.Blues):\n", " \"\"\"\n", " This function prints and plots the confusion matrix.\n", " Normalization can be applied by setting `normalize=True`.\n", " \"\"\"\n", " plt.imshow(cm, interpolation='nearest', cmap=cmap)\n", " plt.title(title)\n", " plt.colorbar()\n", " tick_marks = np.arange(len(classes))\n", " plt.xticks(tick_marks, classes, rotation=45)\n", " plt.yticks(tick_marks, classes)\n", "\n", " if normalize:\n", " cm = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis]\n", " print(\"Normalized confusion matrix\")\n", " else:\n", " print('Confusion matrix, without normalization')\n", "\n", " print(cm)\n", "\n", " thresh = cm.max() / 2.\n", " for i, j in itertools.product(range(cm.shape[0]), range(cm.shape[1])):\n", " plt.text(j, i, float('%.2f'%cm[i, j]),\n", " horizontalalignment=\"center\",\n", " color=\"red\" if cm[i, j] > thresh else \"black\")\n", "\n", " plt.tight_layout()\n", " plt.ylabel('True label')\n", " plt.xlabel('Predicted label')\n", "\n", "cnf_m = confusion_matrix(test_l,z)\n", "np.set_printoptions(precision=2)\n", "class_names = [1,2,3,4,5,6,7]\n", "plot_confusion_matrix(cnf_m, classes=class_names,\n", " title='Confusion matrix, without normalization')\n", "\n", "# Plot normalized confusion matrix\n", "plt.figure()\n", "plot_confusion_matrix(cnf_m, classes=class_names, normalize=True,\n", " title='Normalized confusion matrix')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": true, "scrolled": false }, "outputs": [], "source": [ "classifier_tree1 = ada.AdaBoostClassifier(DecisionTreeClassifier(max_depth = 10),algorithm=\"SAMME\",n_estimators=200)\n", "classifier_tree1.fit(data_0,l_0)\n", "\n", "classification = np.zeros(1280*307).reshape(1280,307)\n", "c = raw_data.swapaxes(0,2)\n", "c = c.swapaxes(0,1)\n", "c = c.reshape(1280*307,191)\n", "\n", "pre = classifier_tree1.predict(c)\n", "\n", "classification = pre.reshape(1280,307)\n" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(classification)\n", "fig = plt.gcf()\n", "\n", "fig.savefig('test.png',dpi=300)\n", "plt.show()" ] }, { "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.0" } }, "nbformat": 4, "nbformat_minor": 2 }