|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970 |
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "# k-Means"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## 方法\n",
- "\n",
- "由于具有出色的速度和良好的可扩展性,K-Means聚类算法算得上是最著名的聚类方法。***K-Means算法是一个重复移动类中心点的过程,把类的中心点,也称重心(centroids),移动到其包含成员的平均位置,然后重新划分其内部成员。***\n",
- "\n",
- "K是算法计算出的超参数,表示类的数量;K-Means可以自动分配样本到不同的类,但是不能决定究竟要分几个类。\n",
- "\n",
- "K必须是一个比训练集样本数小的正整数。有时,类的数量是由问题内容指定的。例如,一个鞋厂有三种新款式,它想知道每种新款式都有哪些潜在客户,于是它调研客户,然后从数据里找出三类。也有一些问题没有指定聚类的数量,最优的聚类数量是不确定的。\n",
- "\n",
- "K-Means的参数是类的重心位置和其内部观测值的位置。与广义线性模型和决策树类似,K-Means参数的最优解也是以成本函数最小化为目标。K-Means成本函数公式如下:\n",
- "$$\n",
- "J = \\sum_{k=1}^{K} \\sum_{i \\in C_k} | x_i - u_k|^2\n",
- "$$\n",
- "\n",
- "$u_k$是第$k$个类的重心位置,定义为:\n",
- "$$\n",
- "u_k = \\frac{1}{|C_k|} \\sum_{x \\in C_k} x\n",
- "$$\n",
- "\n",
- "\n",
- "成本函数是各个类畸变程度(distortions)之和。每个类的畸变程度等于该类重心与其内部成员位置距离的平方和。若类内部的成员彼此间越紧凑则类的畸变程度越小,反之,若类内部的成员彼此间越分散则类的畸变程度越大。\n",
- "\n",
- "求解成本函数最小化的参数就是一个重复配置每个类包含的观测值,并不断移动类重心的过程。\n",
- "1. 首先,类的重心是随机确定的位置。实际上,重心位置等于随机选择的观测值的位置;\n",
- "2. 每次迭代的时候,K-Means会把观测值分配到离它们最近的类;\n",
- "3. 然后把重心移动到该类全部成员位置的平均值那里;\n",
- "4. 若达到最大迭代步数或两次迭代差小于设定的阈值则算法结束,否则重复步骤2。\n",
- "\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "%matplotlib inline\n",
- "import matplotlib.pyplot as plt\n",
- "import numpy as np\n",
- "\n",
- "X0 = np.array([7, 5, 7, 3, 4, 1, 0, 2, 8, 6, 5, 3])\n",
- "X1 = np.array([5, 7, 7, 3, 6, 4, 0, 2, 7, 8, 5, 7])\n",
- "plt.figure()\n",
- "plt.axis([-1, 9, -1, 9])\n",
- "plt.grid(True)\n",
- "plt.plot(X0, X1, 'k.');"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "假设K-Means初始化时,将第一个类的重心设置在第5个样本,第二个类的重心设置在第11个样本.那么我们可以把每个实例与两个重心的距离都计算出来,将其分配到最近的类里面。计算结果如下表所示:\n",
- "\n",
- "\n",
- "新的重心位置和初始聚类结果如下图所示。第一类用X表示,第二类用点表示。重心位置用稍大的点突出显示。\n",
- "\n",
- "\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 4,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "C1 = [1, 4, 5, 9, 11]\n",
- "C2 = list(set(range(12)) - set(C1))\n",
- "X0C1, X1C1 = X0[C1], X1[C1]\n",
- "X0C2, X1C2 = X0[C2], X1[C2]\n",
- "plt.figure()\n",
- "plt.title('1st iteration results')\n",
- "plt.axis([-1, 9, -1, 9])\n",
- "plt.grid(True)\n",
- "plt.plot(X0C1, X1C1, 'rx')\n",
- "plt.plot(X0C2, X1C2, 'g.')\n",
- "plt.plot(4,6,'rx',ms=12.0)\n",
- "plt.plot(5,5,'g.',ms=12.0);"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "现在我们重新计算两个类的重心,把重心移动到新位置,并重新计算各个样本与新重心的距离,并根据距离远近为样本重新归类。结果如下表所示:\n",
- "\n",
- "\n",
- "\n",
- "画图结果如下:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 8,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "C1 = [1, 2, 4, 8, 9, 11]\n",
- "C2 = list(set(range(12)) - set(C1))\n",
- "X0C1, X1C1 = X0[C1], X1[C1]\n",
- "X0C2, X1C2 = X0[C2], X1[C2]\n",
- "plt.figure()\n",
- "plt.title('2nd iteration results')\n",
- "plt.axis([-1, 9, -1, 9])\n",
- "plt.grid(True)\n",
- "plt.plot(X0C1, X1C1, 'rx')\n",
- "plt.plot(X0C2, X1C2, 'g.')\n",
- "plt.plot(3.8,6.4,'rx',ms=12.0)\n",
- "plt.plot(4.57,4.14,'g.',ms=12.0);"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "我们再重复一次上面的做法,把重心移动到新位置,并重新计算各个样本与新重心的距离,并根据距离远近为样本重新归类。结果如下表所示:\n",
- "\n",
- "\n",
- "画图结果如下:\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 9,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "C1 = [0, 1, 2, 4, 8, 9, 10, 11]\n",
- "C2 = list(set(range(12)) - set(C1))\n",
- "X0C1, X1C1 = X0[C1], X1[C1]\n",
- "X0C2, X1C2 = X0[C2], X1[C2]\n",
- "plt.figure()\n",
- "plt.title('3rd iteration results')\n",
- "plt.axis([-1, 9, -1, 9])\n",
- "plt.grid(True)\n",
- "plt.plot(X0C1, X1C1, 'rx')\n",
- "plt.plot(X0C2, X1C2, 'g.')\n",
- "plt.plot(5.5,7.0,'rx',ms=12.0)\n",
- "plt.plot(2.2,2.8,'g.',ms=12.0);"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "再重复上面的方法就会发现类的重心不变了,K-Means会在条件满足的时候停止重复聚类过程。通常,条件是前后两次迭代的成本函数值的差达到了限定值,或者是前后两次迭代的重心位置变化达到了限定值。如果这些停止条件足够小,K-Means就能找到最优解。不过这个最优解不一定是全局最优解。\n",
- "\n"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Program"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 12,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "<div>\n",
- "<style scoped>\n",
- " .dataframe tbody tr th:only-of-type {\n",
- " vertical-align: middle;\n",
- " }\n",
- "\n",
- " .dataframe tbody tr th {\n",
- " vertical-align: top;\n",
- " }\n",
- "\n",
- " .dataframe thead th {\n",
- " text-align: right;\n",
- " }\n",
- "</style>\n",
- "<table border=\"1\" class=\"dataframe\">\n",
- " <thead>\n",
- " <tr style=\"text-align: right;\">\n",
- " <th></th>\n",
- " <th>sepal-length</th>\n",
- " <th>sepal-width</th>\n",
- " <th>petal-length</th>\n",
- " <th>petal-width</th>\n",
- " <th>class</th>\n",
- " </tr>\n",
- " </thead>\n",
- " <tbody>\n",
- " <tr>\n",
- " <th>0</th>\n",
- " <td>5.1</td>\n",
- " <td>3.5</td>\n",
- " <td>1.4</td>\n",
- " <td>0.2</td>\n",
- " <td>Iris-setosa</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>1</th>\n",
- " <td>4.9</td>\n",
- " <td>3.0</td>\n",
- " <td>1.4</td>\n",
- " <td>0.2</td>\n",
- " <td>Iris-setosa</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>2</th>\n",
- " <td>4.7</td>\n",
- " <td>3.2</td>\n",
- " <td>1.3</td>\n",
- " <td>0.2</td>\n",
- " <td>Iris-setosa</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>3</th>\n",
- " <td>4.6</td>\n",
- " <td>3.1</td>\n",
- " <td>1.5</td>\n",
- " <td>0.2</td>\n",
- " <td>Iris-setosa</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>4</th>\n",
- " <td>5.0</td>\n",
- " <td>3.6</td>\n",
- " <td>1.4</td>\n",
- " <td>0.2</td>\n",
- " <td>Iris-setosa</td>\n",
- " </tr>\n",
- " </tbody>\n",
- "</table>\n",
- "</div>"
- ],
- "text/plain": [
- " sepal-length sepal-width petal-length petal-width class\n",
- "0 5.1 3.5 1.4 0.2 Iris-setosa\n",
- "1 4.9 3.0 1.4 0.2 Iris-setosa\n",
- "2 4.7 3.2 1.3 0.2 Iris-setosa\n",
- "3 4.6 3.1 1.5 0.2 Iris-setosa\n",
- "4 5.0 3.6 1.4 0.2 Iris-setosa"
- ]
- },
- "execution_count": 12,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# This line configures matplotlib to show figures embedded in the notebook, \n",
- "# instead of opening a new window for each figure. More about that later. \n",
- "# If you are using an old version of IPython, try using '%pylab inline' instead.\n",
- "%matplotlib inline\n",
- "\n",
- "# 导入所需库\n",
- "import pandas as pd\n",
- "import numpy as np\n",
- "import random\n",
- "from matplotlib import pyplot as plt\n",
- "\n",
- "\n",
- "# 1 读取鸢尾花iris.csv\n",
- "iris_df = pd.read_csv('./iris.csv', header=0, index_col=0)\n",
- "iris_df.head()\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 13,
- "metadata": {
- "lines_to_next_cell": 2
- },
- "outputs": [
- {
- "data": {
- "text/plain": [
- "0 0\n",
- "1 0\n",
- "2 0\n",
- "3 0\n",
- "4 0\n",
- " ..\n",
- "145 2\n",
- "146 2\n",
- "147 2\n",
- "148 2\n",
- "149 2\n",
- "Name: class, Length: 150, dtype: int64"
- ]
- },
- "execution_count": 13,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# 2 对类别进行编码,3个类别分别赋值0,1,2\n",
- "\n",
- "iris_df['class'].replace(['Iris-setosa', 'Iris-versicolor', 'Iris-virginica'], [0, 1, 2], inplace=True)\n",
- "iris_df['class']"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 14,
- "metadata": {
- "lines_to_next_cell": 2
- },
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAEWCAYAAABrDZDcAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAlJUlEQVR4nO3de7xddXnn8c83h8RAQshpyZiUizGjpQq1iYSkJsDgpC0QqbZKLdpOh4wt1oqtrY7TsZnYgXRedfoaWxQrUiDeKGrBC2SSUqZ4yaUkOQmRq7QUa4ESiZA7gUMOz/yx1jH77Kxz9tqXtffae3/fr9d+7bN/e12eHfE8Z6/1PL+fIgIzM+tfkzodgJmZdZYTgZlZn3MiMDPrc04EZmZ9zonAzKzPORGYmfU5JwLrepKuk/Q/Wr1tjePMlRSSjsu5/WckrW72vGZFyPUfsVmZRcRvF7Ftp0j6JvCFiLihF85j5edvBNbVJA10OgazbudEYKUj6TWSvilpr6QHJb254r3PSPqUpHWSDgFvrL7sIulDkp6S9G+SfjO9hPOqiv1Xpz9fIOkJSR+Q9HS6z4qK47xJ0r2S9kt6XNIf1/EZFkjaIemApC8BUyveG5S0VtJuSXvSn09N3/sT4DzgWkkHJV2bjl+TxrBf0nZJ51Ucb5GkofS9H0j6WMV7Pytpc/pv+R1JF0x0HutPTgRWKpImA3cAfwf8O+B9wM2SzqjY7J3AnwAnAhur9r8I+APg54BXARfUOOVs4CTgFOBdwCclDabvHQJ+A5gJvAl4j6RfyvEZpgBfAz4P/BjwN8DbKjaZBKwBXgGcDhwGrgWIiD8CNgBXRsT0iLgy3WcbMD893l8DfyNpNLlcA1wTETOAfw98OY3jFOD/AqvT/T4I3CZp1gTnsT7kRGBl87PAdOBPI2I4Iu4G1gLvqNjm6xGxKSJeiojnq/Z/O7AmIh6MiOeAP65xvheBqyLixYhYBxwEzgCIiG9GxP3pee4DbgH+Q87PMBn4i/S4t5L8Iic97jMRcVtEPBcRB0iS2oTHjYgvpPsdiYj/A7xsNM70M7xK0skRcTAi7knHfx1YFxHr0s9wFzAELM/xGayPOBFY2fwE8HhEvFQx9n2Sv9hHPV5r/5zbAjwTEUcqXj9HkoiQtFjSN9JLOPuA3wZOrvUB0hiejLEzOn5/9AdJJ0j6tKTvS9oPfBuYOdH9DkkflPSwpH2S9pJ8ixmN5V3ATwLflbRN0iXp+CuAX0kvC+1N9zsXmJPjM1gfcSKwsvk34DRJlf9tng48WfF6oilznwJOrXh9WhOx/DVwO3BaRJwEXAcox35PAadIqtz29IqfP0Dy1/zi9HLO+en46PZjPl96P+BDJN92BiNiJrBvdPuI+KeIeAfJpbSPArdKmkaSBD8fETMrHtMi4k+zzmP9y4nAymYLyV/lH5I0Ob25+YvAF3Pu/2VgRXrD+QSgmZ6BE4FnI+J5SYtI7k3k8Q/AEeB308/wVmBR1XEPA3sl/Rjwkar9fwDMq9r+CLAbOE7SKmDG6JuSfj297v8SsDcdfgn4AvCLki6UNCBpanqDfDRRVp/H+pQTgZVKRAyT/OK/GPgh8JfAb0TEd3Puvx74OPAN4FFg9Hr5Cw2E8zvAVZIOAKtIb8LmiGEYeCtwOfAs8KvAVyo2+QvgeJLPdw/wt1WHuAa4NK0o+jhwZ7rNP5JcYnqesZe8LgIelHQw3feyiDgcEY8DbwE+TJJEHgf+K0f/f199HutT8sI01sskvQZ4AHhZ1b0AM0v5G4H1HEm/LOllaRnoR4E7nATMxudEYL3o3cDTwD8DI8B7OhuOWbn50pCZWZ/zNwIzsz7XdbOPnnzyyTF37txOh2Fm1lW2b9/+w4iYlfVe1yWCuXPnMjQ01OkwzMy6iqTvj/eeLw2ZmfU5JwIzsz7nRGBm1uecCMzM+pwTgZlZnyusakjSacDngJeTTHd7fURcU7XNBcDXge+lQ1+JiKuKisnMutvICKxfD/feCwsWwMUXw0DOVavH27eZY/aKIstHjwAfiIgdkk4Etku6KyIeqtpuQ0RckrG/mdmPjIzAhRfCli1w6BBMmwaLF8Odd9b+xT3evuvWwfLljR2zlxR2aSginoqIHenPB4CHGbvKlJlZbuvXJ7+wDx6EiOR5y5ZkvNF9V69u/Ji9pC33CCTNBRaQLDpS7Q2SviNpvaQzx9n/CklDkoZ2795dZKhmVlL33pv81V7p0CHYubPxfTdtavyYvaTwRCBpOnAb8P6I2F/19g7gFRHxM8AngK9lHSMiro+IhRGxcNaszA5pM+txCxYkl24qTZsG8+c3vu/SpY0fs5cUmggkTSZJAjdHxFeq34+I/RFxMP15HTBZUp7Fwc2sz1x8cXL9fvp0kJLnxYuT8Ub3Xbmy8WP2kiKrhgTcCDwcER8bZ5vZwA8iItI1YScBzxQVk5l1r4GB5Cbu+vXJpZv58/NX+Ey0b6PH7CWFrUcg6VxgA3A/yULakKydejpARFwn6UqSRUOOkCzm/QcRsXmi4y5cuDA86ZyZWX0kbY+IhVnvFfaNICI2AqqxzbXAtUXFYGat1666++HhpKpn06bkWv7KlTBlSuvPY104DbWZdU4ztfz1GB6G2bNhz57k9d13w7XXwq5dTgZF8BQTZpZbM7X89Vi9+mgSGLVnTzJuredEYGa5NVPLX49Nm7LHN094B9Ea5URgZrk1U8tfj6VLs8eXLGnteSzhRGBmuTVTy1+PlSthcHDs2OBgMm6t55vFZpZbu+rup0xJbgyvXp1cDlqyxFVDRSqsj6Ao7iMwM6vfRH0EvjRkZtbnfGnIzOqS1VAGjY/Vc1kpbzNbPU1v3bAwTdExOhGYWW5ZDWWLFiXvbd1a/1g9zWh5m9nqaXprV4NcM9oSY0R01ePss88OM+uMO+6ImD49ImknSx5TpyaPRsamT0+O2ei5s/bPu12923ZKq2IEhmKc36u+R2BmuWU1lD3/fPJoZKyeZrS8zWz1NL21q0GuGe2I0YnAzHLLaiibOjV5NDJWTzNa3ma2epre2tUg14x2xOhEYGa5ZTWULVmSPBoZq6cZLW8zWz1Nb+1qkGtGO2J0H4GZ1WW0gqWyoQwaH2ukaqjW/nm3q3fbTmlFjBP1ETgRmJn1gY4sTGNm1owiegbKpExxOxGYWekU0TNQJmWL2zeLzax08i6A066FclqtbHE7EZhZ6RTRM1AmZYvbicDMSqeInoEyKVvcTgRmVjpF9AyUSdnidvmomZVSET0DZdLuuN1HYGbW59xHYGalMF7tfDNrHHRDb0HZ4qnmRGBmbTFe7fy6dbB8eWNrHHRDb0HZ4snim8Vm1hbj1c6vXn3s+ObNyaPWWDf0FpQtnixOBGbWFuPVzm/a1PgaB93QW1C2eLI4EZhZW4xXO790aeNrHHRDb0HZ4sniRGBmbTFe7fzKlY2vcdANvQVliyeLy0fNrG3Gq51vZo2DbugtKEM87iMwM+tzHekjkHQa8Dng5UAA10fENVXbCLgGWA48B1weETuKisnMxtdMLX/WWFlKI4vUTH9AmXoLiuwjOAJ8ICJ2SDoR2C7proh4qGKbi4FXp4/FwKfSZzNro6xa97y1/Hnr+3tNM/0BZestKOxmcUQ8NfrXfUQcAB4GTqna7C3A5yJxDzBT0pyiYjKzbFm17nlr+fPW9/eaZvoDytZb0JaqIUlzgQXAlqq3TgEer3j9BMcmCyRdIWlI0tDu3bsLi9OsX2XVuuet5c9b399rmukPKFtvQeGJQNJ04Dbg/RGxv5FjRMT1EbEwIhbOmjWrtQGaWWate95a/rz1/b2mmf6AsvUWFJoIJE0mSQI3R8RXMjZ5Ejit4vWp6ZiZtVFWrXveWv689f29ppn+gLL1FhRZNSTgRuDhiPjYOJvdDlwp6YskN4n3RcRTRcVkZtkGBpIblY3W8meN9fKNYhj/3yzP525m3yIU1kcg6VxgA3A/8FI6/GHgdICIuC5NFtcCF5GUj66IiAmbBNxHYGZWv470EUTERkA1tgngvUXFYGZmtXk9AjMbV1bT08hIMnX0pk3JhHErV8KUKfn2LePlom6Js0hOBGaWKavp6Zxzkl+Ye/cm29x9N1x7LezaNTYZlK1hajzdEmfRPPuomWXKanrauPFoEhi1Z0/yDaHWvmVsMuuWOIvmRGBmmbKanl58MXvbzZtr71vGJrNuibNoTgRmlimr6Wny5OxtlyypvW8Zm8y6Jc6iORGYWaaspqdzz4WZM8duNziY3DCutW8Zm8y6Jc6ieT0CMxtX1oIqo1VDmzcn3wRqVQ2VoWFqIt0SZ7O8MI2ZWZ+bKBH40pBZnzl8GC67DObNS54PH07Gh4dh1SpYtix5Hh7O3n9kBNauhauvTp5HRpqPKevcec/T6u3GU8TnLo2I6KrH2WefHWbWmOeeizjuuIikWDJ5HHdcxN69EYODY8cHByNeeGHs/keORCxbFjF9eoSUPC9blow36oUXss/9xjfWPk/eeJqNu4jP3W7AUIzze9XfCMz6yIoVcOTI2LEjR5Jr/Xv2jB1vV3/A6tXZ5964sfZ58sbTbNy93m/gRGDWR7ZuzR5/7LHs8Xb0B2zalD1e3bOQdZ688TQbd6/3GzgRmPWR0fWFq82blz3ejv6ApUuzx6t7FrLOkzeeZuPu+X6D8a4ZlfXhewRmjfM9At8jyHq4fNSszxw+nNwr2LYtmURuzRo4/vikUqdT/QFZ5x4YyHeevPE0G3e39xu4j8DMrM91ZGEaMytOu+bQ91z9/cGJwKzLtGsOfc/V3z9cNWTWZdpV097rtfN2lBOBWZdpV017r9fO21FOBGZdpl017T1fO28/4kRg1mXaNYe+5+rvH75ZbNZlBgaSG7ZF17S36zzWee4jMDPrA+4jMOsxeev7i+gDKFtvQdni6UZOBGZdJm99fxF9AGXrLShbPN3KN4vNuky75uBv5tztUrZ4ulWuRCBplqQPS7pe0k2jj6KDM7NjtWsO/mbO3S5li6db5b009HVgA/D/gF5aqdOs64zW9x88eHRsojn4a21XxLnbpWzxdKu8l4ZOiIj/FhFfjojbRh+FRmZmmfLW9xfRB1C23oKyxdOtcpWPSloNbI6IdcWHNDGXj5q1bw7+Zs7dLmWLp6waXo9A0gEgAAHTgBeAF9PXEREzWh/uxJwIzMzqN1EimPDSUEScGBEz0udJEXF8xesJk0B6Q/lpSQ+M8/4FkvZJ2pk+VuX/SGZm1ip5q4b+Ps9Ylc8AF9XYZkNEzE8fV+WJxawXjIzA2rVw9dXJ80idJRj79sGZZyZLTJ55ZvI665j1nGd4GFatgmXLkufh4eaPad1hwqohSVNJLgmdLGmQ5JIQwAzglIn2jYhvS5rbiiDNekmzTVD79sHMmUdfP/RQ8vr882HHjqPHXLQoeX/r1trnGR6G2bNhz57k9d13wyc+kVTlbNvW2DGte9T6RvBuYAj4KWAHsD19fB24tgXnf4Ok70haL+nMFhzPrPSabYJasiR7fMOGscfcvDl55DnP6tVHk8CovXth48bGj2ndo9Y9gmsi4pXAByPilRWPn4mIZhPBDuAVEfEzwCeAr423oaQrJA1JGtq9e3eTpzXrrGaboB57LHu8uu7j+eeTR57zbNqUfcwXX2z8mNY9JkwEkt4q6a3Ak6M/Vz6aOXFE7I+Ig+nP64DJkk4eZ9vrI2JhRCycNWtWM6c167hmF3yZNy97XBr7eurU5JHnPEuXZh9z8uTGj2ndo9aloV9MH/8FuBH4tfRxQzrWMEmzpeQ/XUmL0lieaeaYZt2g2SaozZuzx887b+wxlyxJHnnOs3IlDA6OHZs5E849t/FjWveY8GZxRKwAkHQX8NqIeCp9PYekKmhckm4BLiC50fwE8BFgcnrc64BLgfdIOgIcBi6LblscwawBzS74ctJJyfX7JUuSy0Tz5iXJYfr0Y48J+c4zZQrs2pXcK9i8OTn2ypXJto0e07pH3s7ihyPiNRWvJwEPVo61ixvKzMzq14qFaf5e0p3ALenrXyWZgM6sb7VrQZTh4eQv9U2bkmv5K1cmf8HniWdk5Nh9R//KL/tCLl5wpn1yL1WZ3hw+L3357Yj4amFRTcDfCKwM2rUgSnV9PyTX8nftGpsMsuI555zkl+jevUe3mznz2N6AMvYBeMGZ1mt4iolKEfGViPj99NGRJGBWFu1aECWrvn/PnmS8VjwbN45NApDdG1DGPgAvONNetcpHN6bPByTtr3gckLS/PSGalU+7FkQZr76/unIoK57qHoDxxsvYB+AFZ9qrVkPZuenz6ORzo4+ak86Z9bJmewHyGq++v7q7OCue6h6A8cbL2AfQrn9fS+SddO5qST8naVrtrc16X7sWRMmq7x8cTMZrxXPuuWPnJILs3oAy9gF4wZn2yls+uoLkRvEbgAMky1Z+OyK+Xmx4x/LNYiuLdi2IMlo1VFnfP1HVUGU8o1VDtXoDyngD1gvOtFbDC9NkHGg28Hbgg8BgRJzYmhDzcyIwM6tf01VDkm6QtBn4FEnvwaXA4MR7mZVfq+fWP3wYLrss6fa97LLkddY8/1lj0NyaAF4nwBqV99LQV4GfAB4CvkVyWWicORCL5W8E1iqtrlU/fBhmzIAjR46OTZqUjFWWcQ4OJiWR1WP/+q9w+unH9gzMn197TQCvE2C1NN1ZHBG/nB7oNcCFwDckDUTEqa0L06y9KmvVYWyt+iWX1H+8FSvGJgGAl146tpa/ui9gdGz58uyegY0bj5Z8jq4JAEengx5vrJnPYv0l76WhSyR9FLiJZLGauwGvMWxdrdW16lu3NhfP/fdnj+dZE8DrBFgz8nYWX0SykMzbIuI1EbEiIm4qMC6zwrW6Vn308kyjfvqns8fzrAngdQKsGbkSQURcGRFfioh/k+QvmtYTWl2rvmYNHFd1sXXSpGNr+QcHs8fWrcvuGcizJoDXCbBm5J19tNJVwNpWB2LWbs2uC1Dt+ONh//7kXsG2bcmkb2vWJMerruWH7N6AZtYEyBrzjWLLo64+AgBJ90bEgoLiqclVQ2Zm9WvFegSV3t1kPGY9IWu+fMg3h349c+03My+/5/S3PCZMBOMtUC/pVEimpi4iKLOyy+pByFvLX0//QjO9Dp7T3/LKu3h91sM3ja1vZc2Xv3lz8qg1h349c+03My+/5/S3vHItXm9mY2X1IFTX8cPRWv7Kpq6J+heqm7/q2TZPjHn3tf6S+x6BpDcBZwI/qlaOiKuKCMqs7EZ7EEa7kuFoHX9lQsiq5c/ad7ya/3q2beW+1l/ydhZfR7Jg/fsAAb8CvKLAuMxKLasHIW8tfz39C830OnhOf8sr76Rz90XE6yqepwPrI+K8mju3mMtHrSyy5suHfLX89cy138y8/J7T30Y1vR6BpC0RsVjSPcBbgWeAByPiVa0NtTYnAjOz+rWij2CtpJnAn5HMORTADa0Jz8zMOilvIvjfEfECcJuktSQ3jDNqJMzq1w1NT800j5mVXd5E8A/A6wHShPCCpB2jY2aN6oamp2aax8y6Qa3O4tnAKcDxkhaQVAwBzABOKDg26wOtXhymCFkxeiEY6yW1vhFcCFwOnAp8rGJ8P/DhgmKyPtINTU/NNI+ZdYNancWfBT4r6W0RcVubYrI+0g1NT800j5l1g7wrlG2SdKOk9QCSXivpXQXGZX2iG5qemmkeM+sGeW8Wr0kff5S+/kfgS8CNRQRl/aPVi8MUYbwYodxxm+WVt6FsW0ScU7kojaSdETG/6ACruaHMzKx+EzWU5b00dEjSj5M0kiHpZ4F9NU56k6SnJT0wzvuS9HFJj0q6T5JLUa1uw8OwahUsW5Y8Dw83tx0k5aJr18LVVyfPIyP548nat5njmbVD3m8Erwc+QTL76IPALODSiLhvgn3OBw4Cn4uIszLeX04yid1yYDFwTUQsrhWLvxHYqOFhmD0b9uw5OjY4mKz7O2VK/dtB6xeCcb+BlUUrvhE8BHwV2Ab8APgrkvsE44qIbwPPTrDJW0iSRETEPcBMSXNyxmPG6tVjf7lD8nr16sa2g9YvBJN3sRqzTsqbCD4H/BTwv0i+Gfwk8Pkmz30K8HjF6yfSsWNIukLSkKSh3bt3N3la6xWbNmWPjzZ71bsdTNzXUMt4/QbVPQd5j2fWLnkTwVkR8ZsR8Y308Vskl4naIiKuj4iFEbFw1qxZ7TqtldzSpdnjS5Y0th0c7RmoVO9CMJWmTj3ac1Dv8czaJW8i2JHeIAZA0mKg2Qv1TwKnVbw+NR0zy2XlyuRaf6XBwWS8ke2g9QvBuN/AukHePoKzgc2S/jV9fTrwiKT7gYiI1zVw7tuBKyV9keRm8b6IeKqB41ifmjIlueG7enVymWfJkuSXe/UN4LzbQXN9De43sG6Vt2powmUpI+L7GfvcAlwAnExyg/kjwOR0++skCbgWuAh4DlgRETW/ZbhqyMysfk0vTJP1iz7HPu+o8X4A7633uGZm1lp57xGYmVmPciIwM+tzTgRmZn3OicDMrM85EZiZ9TknAjOzPudEYGbW55wIzMz6nBOBmVmfcyIwM+tzTgRmZn3OicDMrM85EZiZ9TknAjOzPudEYGbW55wIzMz6nBOBmVmfcyIwM+tzTgRmZn3OicDMrM85EZiZ9TknAjOzPudEYGbW55wIzMz63HGdDqDXjYzA+vVw772wYAFcfDEMDHQ6KjOzo5wICjQyAhdeCFu2wKFDMG0aLF4Md97pZGBm5eFLQwVavz5JAgcPQkTyvGVLMm5mVhZOBAW6997km0ClQ4dg586OhGNmlsmJoEALFiSXgypNmwbz53ckHDOzTE4EBbr44uSewPTpICXPixcn42ZmZeGbxQUaGEhuDK9fn1wOmj/fVUNmVj5OBAUbGIBLLkkeZmZlVOilIUkXSXpE0qOS/jDj/csl7Za0M338ZpHxlMnICKxdC1dfnTyPjHQ6IjPrV4V9I5A0AHwS+HngCWCbpNsj4qGqTb8UEVcWFUcZub/AzMqkyG8Ei4BHI+KxiBgGvgi8pcDzdQ33F5hZmRSZCE4BHq94/UQ6Vu1tku6TdKuk07IOJOkKSUOShnbv3l1ErG3l/gIzK5NOl4/eAcyNiNcBdwGfzdooIq6PiIURsXDWrFltDbAI7i8wszIpMhE8CVT+hX9qOvYjEfFMRLyQvrwBOLvAeErD/QVmViZFlo9uA14t6ZUkCeAy4J2VG0iaExFPpS/fDDxcYDyl4f4CMyuTwhJBRByRdCVwJzAA3BQRD0q6ChiKiNuB35X0ZuAI8CxweVHxlI37C8ysLBQRnY6hLgsXLoyhoaG2njPvmgKHD8OKFbB1KyxaBGvWwJQp2fvmPabXMzCzVpC0PSIWZr3nzuIa8tb8Hz4MM2bAkSPJ6+99D269Fc47D4aGxu67bh0sX177mO43MLN26HTVUOnlrflfseJoEhg1MgIbNhy77+rV+Y7pfgMzawcnghry1vxv3Zq9f/XUEYcOwaZN+Y7pfgMzawcnghry1vwvWpS9f/UlnGnTYOnSfMd0v4GZtYMTQQ15a/7XrIHjqu64DAwk9wiq9125Mt8x3W9gZu3gqqEcRit3atX8j1YNbdsG55wztmqoet+8x8y7nZnZRCaqGnIiMDPrAxMlAl8aymF4GFatgmXLkufh4eSv/8sug3nzkufDh+tbY8DrEZhZWfgbQQ3DwzB7NuzZc3Rs5kw4cGDsL+/R+wHVPQNZNf/uDzCzdvM3giasXj02CQDs3XvsX/Dj9Qxk1fy7P8DMysSJoIZNm/Jvm9UzkFXz7/4AMysTJ4Iali7Nv21Wz0BWzb/7A8ysTJwIali5EgYHx47NnHnsL/3xegayav7dH2BmZeJJ52qYMgV27UruFWzeDEuWJMlhZCR/z0A1r0dgZmXiqiEzsz7gqiEzMxtXXySCepq3sprHDh6E889P7hWcf37yetcuOOkkmDQped61C559Fk4/HSZPTp6ffRb27YMzz4Tjj0+e9+2rLyY3nplZ0Xr+0lA9zVtZzWMzZsD+/S0KPvXMM/D2t3thGjNrn76+NFRP81ZW81irkwAkN4e9MI2ZlUXPJ4J6mrfqaR5rxlNPeWEaMyuPnk8E9TRv1dM81ow5c7wwjZmVR88ngnqat7Kax2bMaH1MO3d6YRozK4+ev1kM9S3uMjx8bPPY8DAsXw4PPABnnQXr1iXX6884I5mF9MQT4ZFHkoay+fOTSz9z5iTnGxhIjvPYY8mU1Zs3J1VGXpjGzNrJC9OYmfW5vq4amkgzNfpZ+2b1G5iZlV3fzjXUTI1+1r5nnw3f+tbRbTZsSC4ZHTiQXNs3Myurvv1G0EyNfta+GzZkb7t8eWvjNjNrtb5NBM3U6Gft+9JL2ds+8EBD4ZmZtU3fJoJmavSz9p00zr/kWWc1FJ6ZWdv0bSJopkY/a9/zzsvedt261sZtZtZqfXuzuJnFYcbb9/DhY/sNfKPYzMrOfQRmZn2gY30Eki6S9IikRyX9Ycb7L5P0pfT9LZLmFhmPmZkdq7BEIGkA+CRwMfBa4B2SXlu12buAPRHxKuDPgY8WFY+ZmWUr8hvBIuDRiHgsIoaBLwJvqdrmLcBn059vBZZJUoExmZlZlSITwSnA4xWvn0jHMreJiCPAPuDHqw8k6QpJQ5KGdu/eXVC4Zmb9qSvKRyPi+ohYGBELZ82a1elwzMx6SpHlo08Cp1W8PjUdy9rmCUnHAScBz0x00O3bt/9Q0vcbjOlk4IcN7ltG/jzl1UufBXrr8/TSZ4H8n+cV471RZCLYBrxa0itJfuFfBryzapvbgf8M/ANwKXB31KhnjYiGvxJIGhqvfKob+fOUVy99Fuitz9NLnwVa83kKSwQRcUTSlcCdwABwU0Q8KOkqYCgibgduBD4v6VHgWZJkYWZmbVRoZ3FErAPWVY2tqvj5eeBXiozBzMwm1hU3i1vo+k4H0GL+POXVS58Feuvz9NJngRZ8nq6bYsLMzFqr374RmJlZFScCM7M+1xeJQNJNkp6W1BPrhUk6TdI3JD0k6UFJv9fpmBolaaqkrZK+k36W/9npmJolaUDSvZLWdjqWZkn6F0n3S9opqeun/ZU0U9Ktkr4r6WFJb+h0TI2SdEb6v8voY7+k9zd0rH64RyDpfOAg8LmI6Po1wyTNAeZExA5JJwLbgV+KiIc6HFrd0rmlpkXEQUmTgY3A70XEPR0OrWGS/gBYCMyIiEs6HU8zJP0LsDAieqIBS9JngQ0RcYOkKcAJEbG3w2E1LZ3k80lgcUTU3XDbF98IIuLbJH0KPSEinoqIHenPB4CHOXYep64QiYPpy8npo2v/OpF0KvAm4IZOx2JjSToJOJ+kf4mIGO6FJJBaBvxzI0kA+iQR9LJ0DYcFwJYOh9Kw9FLKTuBp4K6I6NrPAvwF8CHgpQ7H0SoB/J2k7ZKu6HQwTXolsBtYk166u0HStFo7dYnLgFsa3dmJoItJmg7cBrw/IvZ3Op5GRcRIRMwnmY9qkaSuvHwn6RLg6YjY3ulYWujciHg9yboi700vs3ar44DXA5+KiAXAIeCYBbO6TXqJ683A3zR6DCeCLpVeT78NuDkivtLpeFoh/Zr+DeCiDofSqKXAm9Pr6l8E/qOkL3Q2pOZExJPp89PAV0nWGelWTwBPVHzjvJUkMXS7i4EdEfGDRg/gRNCF0husNwIPR8THOh1PMyTNkjQz/fl44OeB73Y0qAZFxH+PiFMjYi7JV/W7I+LXOxxWwyRNS4sRSC+h/ALQtZV3EbELeFzSGenQMqDrCiwyvIMmLgtBwXMNlYWkW4ALgJMlPQF8JCJu7GxUTVkK/Cfg/vTaOsCH07mdus0c4LNp1cMk4MsR0fVllz3i5cBX00UDjwP+OiL+trMhNe19wM3p5ZTHgBUdjqcpaYL+eeDdTR2nH8pHzcxsfL40ZGbW55wIzMz6nBOBmVmfcyIwM+tzTgRmZn3OicAMkHS5pJ/Isd1nJF2aMT63iNltJV0gaUmt85s1w4nALHE5UDMRdMAFwJJaG5k1w4nAelL6F/p3Jd2czjt/q6QTJJ0t6VvpJGp3SpqT/oW9kKTRaKek4yWtkrRN0gOSrk+7ufOee0DSn6X73yfp3en4BZK+WTEf/s2jx5W0PB3bLunjktamEwr+NvD7aVznpac4X9JmSY/524G1ghOB9bIzgL+MiNcA+4H3Ap8ALo2Is4GbgD+JiFuBIeDXImJ+RBwGro2Ic9L1K44H6llX4F3Avog4BzgH+C1Jr0zfWwC8H3gtMA9YKmkq8Gng4jSuWQAR8S/AdcCfp3FtSI8xBzg3jelP6/1HMavWF1NMWN96PCI2pT9/AfgwcBZwV/qH+ADw1Dj7vlHSh4ATgB8DHgTuyHneXwBeV/HX+knAq4FhYGtEPAGQTg8yl2TRpMci4nvp9rcAE035/LWIeAl4SNLLc8ZkNi4nAutl1fOnHAAejIgJlydM/0L/S5KVuR6X9MfA1KptFpP8FQ+wCriv8m3gfRFxZ9U+FwAvVAyN0Nj/ByuPkfuSldl4fGnIetnpFWvSvhO4B5g1OiZpsqQz0/cPACemP4/+0v9huubDMdfhI2JLerlmfkTcXvX2ncB70qnCkfSTNRZAeQSYl94TAPjVivcq4zIrhBOB9bJHSBZTeRgYJL0/AHxU0neAnRytyPkMcF16ueYF4K9Iply+E9hW53lvIJneeEdaUvppJvjLP70n8TvA30raTvLLf1/69h3AL1fdLDZrKc8+aj0p/et6bXqzt/QkTY+Ig2kV0SeBf4qIP+90XNYf/I3ArBx+K/028iDJzeVPT7y5Wev4G4GZWZ/zNwIzsz7nRGBm1uecCMzM+pwTgZlZn3MiMDPrc/8fILZiitTo5YQAAAAASUVORK5CYII=\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "# 2 可视化信息\n",
- "def visualizeIris(iris_df, feature='sepal', form='ro', mark_size=5):\n",
- " plt.plot(iris_df[feature+'-length'], iris_df[feature+'-width'], form, markersize=mark_size)\n",
- " plt.title('original dataset')\n",
- " plt.xlabel(feature+'-length')\n",
- " plt.ylabel(feature+'-width')\n",
- " plt.show()\n",
- "\n",
- "\n",
- "visualizeIris(iris_df, feature='sepal', form='ro')\n",
- "visualizeIris(iris_df, feature='petal', form='bo')\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 15,
- "metadata": {},
- "outputs": [],
- "source": [
- "# 3 Kmeans算法封装\n",
- "class KMeans():\n",
- " \"\"\"\n",
- " @brief: 用于分析鸢尾花的 K-means 聚类算法\n",
- " @param: data 数据集\n",
- " @param: k 簇数\n",
- " @param: feature 要分类的特征(默认'sepal',可选'petal')\n",
- " \"\"\"\n",
- "\n",
- " def __init__(self, data, k=3, feature='sepal'):\n",
- " self.color = 'rbckmyw' # 绘图颜色\n",
- " self.k = k # 分成几簇\n",
- " self.data = data # 保存数据\n",
- " self.feature = feature # 要分类的特征\n",
- " self.feature_points = np.array([iris_df[feature+'-length'], iris_df[feature+'-width']]).T # 特征\n",
- " self.clusters = {key: [] for key in range(self.k)} # k类分类点(空集,待填充)\n",
- " self.centroids = random.sample(list(self.feature_points), k) # 随机重心\n",
- " self.count = 0 # 用于记录迭代了几次\n",
- "\n",
- " # 欧式距离\n",
- " def __distance(self, point1, point2):\n",
- " return np.sqrt(np.square(np.array(point1) - np.array(point2)).sum())\n",
- "\n",
- " # 计算重心\n",
- " def __calc_centroids(self, points):\n",
- " np_points = np.array(points)\n",
- " return np_points.mean(axis=0)\n",
- "\n",
- " # 可视化绘图\n",
- " def __drawPoints(self, index, cluster, props='ro'):\n",
- " # 绘制重心\n",
- " plt.plot(self.centroids[index][0], self.centroids[index][1], '^', c=self.color[index], ms=14)\n",
- " np_cluster = np.array(cluster) # 转成numpy数组,方便绘图\n",
- " plt.plot(np_cluster[:, 0], np_cluster[:, 1], props) # 绘图\n",
- " plt.xlabel(self.feature+'-length')\n",
- " plt.ylabel(self.feature+'-width')\n",
- " plt.grid(True)\n",
- "\n",
- " # 计算是否满足停止条件\n",
- " def __stopable(self, index_list, index_list_his):\n",
- " self.count = self.count+1 # 做一次检查,说明迭代了一次\n",
- " # 初次无历史索引,忽略\n",
- " if len(index_list) != len(index_list_his):\n",
- " return False\n",
- " np_index_list = np.array(index_list)\n",
- " np_index_list_his = np.array(index_list_his)\n",
- " return not np.any(np_index_list-np_index_list_his)\n",
- "\n",
- " # 生成簇\n",
- " def __cluster(self):\n",
- " min_index_list = []\n",
- " while True:\n",
- " # 清空点集,重新归类\n",
- " del self.clusters\n",
- " self.clusters = {key: [] for key in range(self.k)}\n",
- "\n",
- " min_index_list_his = min_index_list\n",
- " min_index_list = []\n",
- " for point in self.feature_points:\n",
- " # 计算所有点和重心距离,存入distance_array\n",
- " dis = np.zeros(self.k)\n",
- " #dis = np.array([])\n",
- " for i in range(self.k):\n",
- " dis[i] = self.__distance(self.centroids[i], point)\n",
- "\n",
- " # 找出最小值的索引\n",
- " min_index = np.argmin(dis)\n",
- " min_index_list.append(min_index)\n",
- " # 按最小索引分类\n",
- " self.clusters[min_index].append(point)\n",
- "\n",
- " # 清空当前重心\n",
- " self.centroids.clear()\n",
- " # 重新计算新的重心\n",
- " for i in range(self.k):\n",
- " self.centroids.append(self.__calc_centroids(self.clusters[i]))\n",
- " # 绘图,可视化\n",
- " self.__drawPoints(i, self.clusters[i], props=self.color[i]+'.')\n",
- " plt.show()\n",
- "\n",
- " # 若无点的索引变化,则退出聚类循环\n",
- " if self.__stopable(min_index_list, min_index_list_his):\n",
- " return\n",
- "\n",
- " # 返回最终结果\n",
- " def result(self):\n",
- " self.__cluster()\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 16,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "迭代了 8 次\n"
- ]
- }
- ],
- "source": [
- "k = 3\n",
- "# iris = KMeans(data=iris_df, k=k, feature='petal') # 根据花瓣分类\n",
- "iris = KMeans(data=iris_df, k=k, feature='sepal') # 根据萼片分类\n",
- "iris.result()\n",
- "print('迭代了', iris.count, '次')\n"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## 利用sklearn进行分类\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 17,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "<Figure size 432x288 with 0 Axes>"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 288x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "from sklearn.datasets import load_digits\n",
- "import matplotlib.pyplot as plt \n",
- "from sklearn.cluster import KMeans\n",
- "\n",
- "# load digital data\n",
- "digits, dig_label = load_digits(return_X_y=True)\n",
- "\n",
- "# draw one digital\n",
- "plt.gray() \n",
- "plt.matshow(digits[0].reshape([8, 8])) \n",
- "plt.show() \n",
- "\n",
- "# calculate train/test data number\n",
- "N = len(digits)\n",
- "N_train = int(N*0.8)\n",
- "N_test = N - N_train\n",
- "\n",
- "# split train/test data\n",
- "x_train = digits[:N_train, :]\n",
- "y_train = dig_label[:N_train]\n",
- "x_test = digits[N_train:, :]\n",
- "y_test = dig_label[N_train:]\n",
- "\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 18,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 10 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "# do kmeans\n",
- "kmeans = KMeans(n_clusters=10, random_state=0).fit(x_train)\n",
- "\n",
- "# kmeans.labels_ - output label\n",
- "# kmeans.cluster_centers_ - cluster centers\n",
- "\n",
- "# draw cluster centers\n",
- "fig, axes = plt.subplots(nrows=1, ncols=10)\n",
- "for i in range(10):\n",
- " img = kmeans.cluster_centers_[i].reshape(8, 8)\n",
- " axes[i].imshow(img)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Exerciese - How to caluate the accuracy?\n",
- "\n",
- "1. How to match cluster label to groundtruth label\n",
- "2. How to solve the uncertainty of some digital"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## 评估聚类性能\n",
- "\n",
- "方法1: 如果被用来评估的数据本身带有正确的类别信息,则利用Adjusted Rand Index(ARI),ARI与分类问题中计算准确性的方法类似,兼顾了类簇无法和分类标记一一对应的问题。\n",
- "\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 19,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "ari_train = 0.686581\n"
- ]
- }
- ],
- "source": [
- "from sklearn.metrics import adjusted_rand_score\n",
- "\n",
- "ari_train = adjusted_rand_score(y_train, kmeans.labels_)\n",
- "print(\"ari_train = %f\" % ari_train)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Given the contingency table:\n",
- "\n",
- "\n",
- "the adjusted index is:\n",
- "\n",
- "\n",
- "* [ARI reference](https://davetang.org/muse/2017/09/21/adjusted-rand-index/)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "\n",
- "\n",
- "方法2: 如果被用来评估的数据没有所属类别,则使用轮廓系数(Silhouette Coefficient)来度量聚类结果的质量,评估聚类的效果。**轮廓系数同时兼顾了聚类的凝聚度和分离度,取值范围是[-1,1],轮廓系数越大,表示聚类效果越好。** \n",
- "\n",
- "轮廓系数的具体计算步骤: \n",
- "1. 对于已聚类数据中第i个样本$x_i$,计算$x_i$与其同一类簇内的所有其他样本距离的平均值,记作$a_i$,用于量化簇内的凝聚度 \n",
- "2. 选取$x_i$外的一个簇$b$,计算$x_i$与簇$b$中所有样本的平均距离,遍历所有其他簇,找到最近的这个平均距离,记作$b_i$,用于量化簇之间分离度 \n",
- "3. 对于样本$x_i$,轮廓系数为$sc_i = \\frac{b_i−a_i}{max(b_i,a_i)}$ \n",
- "4. 最后,对所有样本集合$\\mathbf{X}$求出平均值,即为当前聚类结果的整体轮廓系数。"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 20,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 720x720 with 6 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmcAAAJNCAYAAAB0hdJBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAABijUlEQVR4nO3dd3yV5f3G8c83exBCQgKy9xDZBNygbV3Vih1OHOBe1Vbbqq0d2l1rh3XbAipaq7ZW+9Nqh5qoVUnYQ5IwZMk4IYORndy/P3K0kUIIkJP7jOv9ep0XOc85z8lFHFw8zz3MOYeIiIiIhIc43wFERERE5L9UzkRERETCiMqZiIiISBhRORMREREJIypnIiIiImFE5UxEREQkjCT4DtBRcnJy3MCBA33HEBERETmgBQsWlDnncvf1WtSUs4EDB1JUVOQ7hoiIiMgBmdn6/b2m25oiIiIiYUTlTERERCSMqJyJiIiIhBGVMxEREZEwonImIiIiEkZUzkRERETCiMqZiIiISBhRORMREREJIypnIiIiImFE5UxEREQkjKiciYiIiIQRlTMRERGRMKJyJiIiIhJGVM5EREREwojKmYiIiEgYUTkTERERCSMqZyIiIiJhROVMREREJIyonImIiIiEEZUzERERkTCicibebN9Zy3mPvMv2XbW+o4iIiIQNlTPx5r5/l1L4YTn3/avUdxQREZGwkeA7gMSeEXf+nbrG5k+ez3t/A/Pe30ByQhzFPzrDYzIRERH/dOVMOt1b3zqZs8f3Jj7OADDg86OP4K3bTvYbTEREJAyonEmn69E1hYzkBJqaHQY44P0Py+mSrAu5IiIiKmfixfod1QBcd/IQpg3PYcfuem58ehENTc0HOFNERCS6qZyJF587sgcAF+T15/HLj+bHXxzN66u2c/ufl+Gc85xORETEH91HEi/ySwIMykmnf/c0AGYcPYCyXfX8+l8l5GQkcccZR3pOKCIi4ofKmXS62oYm3ltbznl5fT91/KbPDqVsdx2P5K8lt0syV5442FNCERERf1TOpNMVfVhBTUMT00bkfuq4mfGDs49ix546fvTyB+R0SeacCX08pRQREfFDY86k0xWUBkiKj+OYwd3/57X4OOPX54/n2MHd+cZzS3izeLuHhCIiIv6onEmnyy8OMHlQFmlJ+75wm5wQz6OXTmJ4zwyum7eQRRsqOjmhiIiIPypn0qm2VtVSvG0XU4fltvm+jJRE5l4+mdyMZC6fW8iawO5OSigiIuKXypl0qoKSAMD/jDfblx4ZKTxx+RTi44xL/zCfrVXaIF1ERKKfypl0qvzSAD27JjOiZ0a73j8wJ525s6ZQVdPAZbPnU1XdEOKEIiIifqmcSadpana8XVrG1GG5mFm7zxvdJ5NHL5nEurI9XPlEIbUNTSFMKSIi4pfKmXSaJZsqqappYOrwA9/S3NtxQ3P41fnjKFpfwY1PL6JR2zyJiEiUUjmTTpNfHCDO4IShOYd0/llje/ODLxzFvz7YxndeWK5tnkREJCppEVrpNAWlAcb160ZWetIhf8Zlxw2kbHcdv3t9NbkZyXzjtBEdmFBERMQ/lTPpFJXV9SzZWMlXPzPssD/rllOGU7a7jvvfWE1OlyRmHj+oAxKKiIiEB5Uz6RRvry6j2bVvCY0DMTN+OH00O3bXc9f/raR7l2S+MK53B6QUERHxT2POpFPkFwfITE1kXN9uHfJ5CfFx3HfhBCYPyOaWZxfzdmlZh3yuiIiIbypnEnLOOQpKA5wwLIf4uPYvoXEgKYnxPHZZHkNyu3DNk0Us21TVYZ8tIiLii8qZhFzxtl1s21nHtANs2XQoMlMTefzyKXRLS2LmnPmsK9vT4d9DRESkM6mcScjlF7ds2XQo65u1R8+uKTx5xRQccOns99m+U9s8iYhI5AppOTOz082s2MxWm9nt+3j912a2OPgoMbPKVq9dZmalwcdlocwpoVVQGmBEzwyOyEwJ2fcYnNuFOTMns2N3PZfNKWRnrbZ5EhGRyBSycmZm8cADwBnAKOBCMxvV+j3Oua8758Y758YDvwP+Ejw3G/g+cDQwBfi+mWWFKquETnV9I4XrKjpkluaBjOvXjYcvnkTptl1c/USRtnkSEZGIFMorZ1OA1c65tc65euAZYHob778Q+GPw69OAfzrnyp1zFcA/gdNDmFVC5L21O6hvamZqCMab7cvU4bnce9443ltbzteeWUxTs3YREBGRyBLKctYH2Njq+abgsf9hZgOAQcDrB3uuhLf84gCpifHkDey8C5/Tx/fhu2eN4tUVW/nui9rmSUREIku4LEJ7AfC8c+6g7kOZ2dXA1QD9+/cPRS45TAWlZRwzOJuUxPhO/b5XnDCIst11PPTmGnpkJPO1zw3v1O8vIiJyqEJ55Wwz0K/V877BY/tyAf+9pdnuc51zjzrn8pxzebm5nXPbTNpvw45q1pXtYVqIZmkeyLdOG8G5k/rym3+VMu+99V4yiIiIHKxQlrNCYJiZDTKzJFoK2Et7v8nMRgJZwLutDr8GnGpmWcGJAKcGj0kEyS8N7RIaB2Jm/PRLY/jsyB5898Xl/H3ZFi85REREDkbIyplzrhG4kZZS9QHwrHNuhZndbWZnt3rrBcAzrtXAIOdcOfBDWgpeIXB38JhEkPziAP2yUxmUk+4tQ0J8HPdfNJGJ/bO4+ZnFvLtmh7csIiIi7WHRMlg6Ly/PFRUV+Y4hQfWNzUy4+x+cM6EPP/7iGN9xqKyu59yH32VrVS3PXHMMR/XO9B1JRERimJktcM7l7es17RAgIbFgfQV76pu8jTfbW7e0JJ64YgoZKQlcNruQDTuqfUcSERHZJ5UzCYmC0gAJccZxQ3N8R/lEr8xUnrhiCo3NzVwy+30Cu+p8RxIREfkfKmcSEvnFASYNyKJLcris1tJiaI8MZs+czLadtcyaO5/ddY2+I4mIiHyKypl0uO27alm5ZWenbNl0KCb2z+KhGZP4YMsurnmyiLpGbfMkIiLhQ+VMOtxbJWUAnbZl06E4eWQPfvHlsbyzege3PruEZm3zJCIiYSK87jlJVMgvCZDTJZlRvbr6jtKmL0/qy449dfzklVV0T0/iB2cfhZn5jiUiIjFO5Uw6VFOz463SACeP6EFcXPgXnaunDiGwq47H3lpHj64p3HDyUN+RREQkxqmcSYdavrmKiuqGsB1vti93nHEkZbvruee1YrqnJ3HBFO3TKiIi/qicSYcqKAlgBieE0RIaBxIXZ/ziK2Mp31PPt19YRnZ6EqcedYTvWCIiEqM0IUA6VH5JgDF9MuneJdl3lIOSGB/HQxdPZEzfbnz1j4uYv067hYmIiB8qZ9JhqmoaWLSxMqxnabYlLSmBOTMn0ycrlSsfL2TV1p2+I4mISAxSOZMO85/VZTQ1u4gab7a37PQknrh8CmlJCVw2ez6bKrTNk4iIdC6VM+kwBaUBMpITGN+vm+8oh6VvVhqPXz6FmvomLv3DfMr31PuOJCIiMUTlTDqEc4784gDHD80hMT7y/7UacUQGf5g5mc2VNcyaW8gebfMkIiKdJPL/FJWwsCawm4+qapk6PHJvae5t8sBs7r9oIss2VXLdUwupb2z2HUlERGKAypl0iDeLAwBMHR45S2i0xymjevLTL42hoCTAt57XNk8iIhJ6WudMOkRBaRlDctPpm5XmO0qHO39y//8uUtslmTvPPFLbPImISMionMlhq21o4v21O5hx9ADfUULm+pNatnn6w9vryM1I5tppQ3xHEhGRKKVyJoft/XXl1DU2R90tzdbMjO+dNYode+r52d9bNko/N6+f71giIhKFVM7ksOUXB0hOiOOYwd19RwmpuDjj3nPHUbGnntv/sozuXZL4zMievmOJiEiU0YQAOWz5Jds5enB3UhLjfUcJuaSEOB6+ZBKjenXl+qcWsmB9he9IIiISZVTO5LBsqqhmTWAPU4dF7y3NvXVJTmDOrMkc0TWFy+cWUrptl+9IIiISRVTO5LAUlJQBcFIEb9l0KHK6JPPkFUeTlBDHpbPn81Flje9IIiISJVTO5LAUlATonZnCkNwuvqN0un7ZaTw+awq7axu5dPZ8Kqu1zZOIiBw+lTM5ZA1NzbyzuoxpI3Jjdt2vUb278thleWwor+byuYXU1Df5jiQiIhFO5UwO2eKNleyqa2TqsNi6pbm3YwZ3574LxrN4YyU3PL2QhiZt8yQiIodO5UwOWX5xgPg447ihsTMZYH9OH92LH54zmtdXbef2Py/DOW3zJCIih0brnMkhKygNMKFfNzJTE31HCQszjh5A2a56fv2vEnIzkrn9jJG+I4mISARSOZNDsmN3Hcs2V3HL54b7jhJWbvrsUAK7a3k4fw05XZK48sTBviOJiEiEUTmTQ/L26jKcg6nDY3u82d7MjLvOHk35nnp+9PIH5HRJ5pwJfXzHEhGRCKIxZ3JI8osDZKcnMaZPpu8oYSc+zvj1+eM5dnB3vvHcEvJLAr4jiYhIBFE5k4PW3OwoKC3jhKE5xMXF5hIaB5KcEM8jl05ieM8Mrpu3gMUbK31HEhGRCKFyJgdt5ZadlO2uY5puabapa0oicy+fTE6XZGbNmc+awG7fkUREJAKonMlBKyhtuU134nAtoXEgPTJSeOLyKcTHGZf+YT5bq2p9RxIRkTCnciYHLb84wKheXemRkeI7SkQYmJPO3FlTqKyu57LZ86mqafAdSUREwpjKmRyU3XWNLFhfoVmaB2l0n0wevTSPdWV7uPLxQmobtM2TiIjsm8qZHJT/rC6jsdlpvNkhOH5oDr86fxxF6yu48elFNGqbJxER2QeVMzko+SUB0pPimTQgy3eUiHTW2N784AtH8a8PtnHnX5drmycREfkfWoRW2s05R35JgGOH5JCUoF5/qC47biBlu+v43euryemSzDdOG+E7koiIhBGVM2m3dWV72FRRwzXThviOEvFuOWU4ZbvruP+N1eR0SWLm8YN8RxIRkTChcibtVhBc6X7aMI03O1xmxg+nj2bH7nru+r+VdO+SzBfG9fYdS0REwoDuTUm75ZcEGJSTTv/uab6jRIWE+Djuu3ACkwdkc8uzi3m7tMx3JBERCQMqZ9IutQ1NvLe2nKnDtPBsR0pJjOexy/IYktuFa54sYtmmKt+RRETEM5UzaZeiDyuoaWhi2gjd0uxomamJPH75FLqlJTFzznzWle3xHUlERDxSOZN2KSgNkBQfxzGDu/uOEpV6dk3hySum4IBLZ7/P9l3a5klEJFapnEm75BcHmDwoi7QkzSEJlcG5XZg9czI7dtdz2exCdtZqmycRkVikciYHtLWqluJtu5iqWZohN75fNx6+eBKl23Zx9RNF2uZJRCQGqZzJAX2yhIbGm3WKqcNzufe8cby3tpyv/2kxTc3aRUBEJJaonMkB5ZcG6Nk1mRE9M3xHiRnTx/fhu2eN4u/Lt/K9F7XNk4hILNEAImlTU7Pj7dIyTh3VEzPzHSemXHHCIAK76ng4fw25Gcl87XPDfUcSEZFOoHImbVqyqZKqmgamDtctTR9uO30EO3bX8Zt/lZLTJZmLjxngO5KIiIRYSG9rmtnpZlZsZqvN7Pb9vOc8M1tpZivM7OlWx5vMbHHw8VIoc8r+5RcHiDM4YagWn/XBzPjpl8bw2ZE9+O6Ly/n7si2+I4mISIiF7MqZmcUDDwCnAJuAQjN7yTm3stV7hgF3AMc75yrMrEerj6hxzo0PVT5pn4LSAGP7diMrPcl3lJiVEB/H/RdNZMbv3+PmZxbTLS2JY4dovTkRkWgVyitnU4DVzrm1zrl64Blg+l7vuQp4wDlXAeCc2x7CPHKQKvbUs2RjJdN0S9O71KR4Zs+czIDuaVz9RBErPtI2TyIi0SqU5awPsLHV803BY60NB4ab2Ttm9p6Znd7qtRQzKwoePyeEOWU/3l5dRrPTEhrholtaEk9cMYWMlARmzilkw45q35FERCQEfC+lkQAMA04CLgQeM7NuwdcGOOfygIuA35jZkL1PNrOrgwWuKBAIdFLk2FFQEiAzNZFxfbv5jiJBvTJTeeKKKTQ0NXPp7Pcp213nO5KIiHSwUJazzUC/Vs/7Bo+1tgl4yTnX4JxbB5TQUtZwzm0O/roWeBOYsPc3cM496pzLc87l5ebq6k5Hcs5RUBrghGE5xMdpCY1wMrRHBn+4bDJbd9Yya04hu+safUcSEZEOFMpyVggMM7NBZpYEXADsPevyr7RcNcPMcmi5zbnWzLLMLLnV8eOBlUinKd62i20765imLZvC0qQBWTw0YxIrt+zkmieLqGvUNk8iItEiZOXMOdcI3Ai8BnwAPOucW2Fmd5vZ2cG3vQbsMLOVwBvAN51zO4AjgSIzWxI8/rPWszwl9PKLW24Ta32z8HXyyB784stjeWf1Dm59dgnN2uZJRCQqhHQRWufcK8Arex37XquvHXBL8NH6Pf8BxoQym7StoDTAiJ4ZHJGZ4juKtOHLk/pStruOn/59FTldkrlu2mC++sxi7r9oAj0y9M9ORCQS+Z4QIGGour6RwnUVmqUZIa6eOpgrTxjE3P98yDXzFlD4YTn3/avUdywRETlE2r5J/sd7a3dQ39TMVI03iwhmxpPvrQdg8caW9c/mvb+Bee9vIDkhjuIfneEznoiIHCRdOZP/kV8cIDUxnryBWb6jSDu99a2T+cLYXnw8sTY5IY7p43vz1m0n+w0mIiIHTeVM/kdBaRnHDM4mJTHedxRppx5dU+iamsjHUwLqGptJio/TuDMRkQikciafsmFHNevK9mjLpghUtruOGUcP4L4LxhNn8Pqq7TRpBqeISMTRmDP5lPxSLaERqR65JO+Tr2sbmvnWn5fyq38W883TRnpMJSIiB0tXzuRT8osD9MtOZVBOuu8ochjOm9yPC6f044E31vCPFVt9xxERkYOgciafqG9s5t01ZUwdlouZtmyKdN//wlGM7ZvJrc8uYV3ZHt9xRESknVTO5BML1lewp75J482iREpiPA/OmEhCvHHtkwuortcenCIikUDlTD6RXxIgIc44dkh331Gkg/TNSuO3F0ygZPsu7vjLMlo25RARkXCmciafKCgJMGlAFhkpib6jSAeaOjyXW08ZzouLP+KJd9f7jiMiIgegciYAbN9Vy8otOzVLM0pdf9JQPndkD374fytZsL7cdxwREWmDypkA8FZJGYDGm0WpuDjj3vPG0ycrleufWsj2XbW+I4mIyH6onAnQMt4sp0syo3p19R1FQiQzNZGHL55EVU0DNz69iIamZt+RRERkH1TOhKZmx1ulAaYOyyEuTktoRLMje3Xlp18aw/x15fzi1VW+44iIyD6onAnLN1dRUd3AtBG6pRkLvjihL5cdO4DH3lrHy0u3+I4jIiJ7UTkTCkoCmMEJQ3N8R5FO8p0zRzGxfze++fwSVm/f5TuOiIi0onIm5JcEGNMnk+5dkn1HkU6SlBDHgzMmkZYUzzVPLmB3nRaoFREJFypnMa6qpoFFGyuZOky3NGPNEZkp/O7CiXy4o5pvPb9EC9SKiIQJlbMY95/VZTQ1O403i1HHDunObaeP4JVlW/n9W+t8xxEREVTOYl5BaYCM5ATG9+vmO4p4ctWJgzlj9BH87NVVvLtmh+84IiIxT+UshjnnyC8OcPzQHBLj9a9CrDIz7jl3HAO7p/HVPy5ka5UWqBUR8Ul/IsewNYHdfFRVqy2bhC7JCTxyySRq6pu4/qkF1DdqgVoREV9UzmLYm8UBAKYO1xIaAkN7ZPCLr4xj4YZKfvzySt9xRERilspZDCsoLWNIbjp9s9J8R5EwcebYXlx5wiAef3c9f1202XccEZGYpHIWo2obmnh/7Q6mDe/hO4qEmdvOGMmUQdnc/pelfLBlp+84IiIxR+UsRr23dgd1jc26pSn/IzE+jvsvmkDXlESum7eAqpoG35FERGKKylmMKigpIzkhjmMGd/cdRcJQj4wUHpwxkU0VNdz67GKam7VArYhIZ1E5i1H5JduZMiiblMR431EkTOUNzObOM4/kXx9s56H8Nb7jiIjEDJWzGLSpopo1gT1M0xIacgCXHTeQ6eN788t/FFNQEvAdR0QkJqicxaCCkjIATtKWTXIAZsZPvzSG4T0yuPmZRWyqqPYdSUQk6qmcxaCCkgC9M1MYktvFdxSJAGlJCTx8ySQamxzXP7WQ2oYm35FERKKaylmMaWhq5p3VZUwbkYuZ+Y4jEWJQTjr3njeOpZuquOtvK3zHERGJaipnMWbxxkp21TUydZhuacrBOfWoI7j+pCH8cf5Gni3c6DuOiEjUUjmLMfnFAeLjjOOGan0zOXi3njqCE4bmcOeLy1m+ucp3HBGRqKRyFmMKSgNM6NeNzNRE31EkAsXHGb+9YDw56UlcO28BFXvqfUcSEYk6KmcxZMfuOpZtrtISGnJYundJ5sGLJ7F9Zx03/2kxTVqgVkSkQ6mcxZC3V5fhHExVOZPDNL5fN35w9lEUlAT47b9LfccREYkqKmcxJL84QHZ6EmP6ZPqOIlHgwin9OHdSX+77dyn//mCb7zgiIlFD5SxGNDc7CkrLOGFoDnFxWkJDDp+Z8cNzRnNU7658/U+LWb9jj+9IIiJRQeUsRqzcspOy3XUabyYdKiUxnocvnoSZce28hdTUa4FaEZHDpXIWIwpKW/ZFPHG4ltCQjtUvO43fXDCeVVt38p2/LsM5TRAQETkcKmcxIr84wKheXemRkeI7ikShk0f04ObPDuMvCzfz1PsbfMcREYloKmcxYFdtAwvWV2iWpoTUTZ8ZxskjcrnrbytYtKHCdxwRkYilchYD3l2zg8Zmp/FmElJxccavzx/PEZkpXP/UQsp21/mOJCISkVTOYkB+SYD0pHgmDcjyHUWiXLe0JB6aMYnyPfV89elFNDY1+44kIhJxVM6inHOO/JIAxw7JISlB/7gl9Eb3yeTHXxzDu2t38Mt/lPiOIyIScfSndZRbV7aHTRU1TBuhW5rSeb4yqS8XHd2fh/PX8OryLb7jiIhEFJWzKFdQ0rKExrRhKmfSub7/hVGM65vJN55byprAbt9xREQihspZlMsvCTAoJ53+3dN8R5EYk5wQz4MXTyIpIY7r5i1gT12j70giIhFB5SyK1TY08d7acqYO08Kz4kefbqn87sIJrN6+m9v+vFQL1IqItIPKWRQr+rCCmoYmjTcTr44fmsM3ThvB/y3dwpx3PvQdR0Qk7IW0nJnZ6WZWbGarzez2/bznPDNbaWYrzOzpVscvM7PS4OOyUOaMVgWlAZLi4zhmcHffUSTGXTdtCKeO6slPXvmA+evKfccREQlrIStnZhYPPACcAYwCLjSzUXu9ZxhwB3C8c+4o4GvB49nA94GjgSnA981Mi3QdpPziAJMHZZGWlOA7isQ4M+OX542jX3YaNzy9kO07a31HEhEJW6G8cjYFWO2cW+ucqweeAabv9Z6rgAeccxUAzrntweOnAf90zpUHX/sncHoIs0adrVW1FG/bxVTN0pQw0TUlkYcvnsTu2kZueHohDVqgVkRkn0JZzvoAG1s93xQ81tpwYLiZvWNm75nZ6QdxrrThkyU0NN5MwsiIIzL42ZfHUPhhBT99ZZXvOCIiYcn3/a4EYBhwEtAXKDCzMe092cyuBq4G6N+/fyjyRaz80gA9uyYzomeG7yginzJ9fB8Wbahk9jvrGN+/G2eP6+07kohIWAnllbPNQL9Wz/sGj7W2CXjJOdfgnFsHlNBS1tpzLs65R51zec65vNxcXSH6WGNTM2+XljF1WC5m5juOyP/49uePJG9AFrf/eSkl23b5jiMiElZCWc4KgWFmNsjMkoALgJf2es9fablqhpnl0HKbcy3wGnCqmWUFJwKcGjwm7bBkUxVVNQ1MHa7CKuEpKSGOB2ZMJC0pgWufXMCu2gbfkUREwkbIyplzrhG4kZZS9QHwrHNuhZndbWZnB9/2GrDDzFYCbwDfdM7tcM6VAz+kpeAVAncHj0k7FJQEiDM4YagWn5Xw1bNrCg9cNIH15dV847klWqBWRCTIouV/iHl5ea6oqMh3jLBwzgPvAPDXG473nETkwH7/1lp+9PIH3H7GSK6dNsR3HBGRTmFmC5xzeft6TTsERJmKPfUs3VTJNN3SlAhxxQmDOHNsL37x6ir+s7rMdxwREe9UzqLM26vLaHZovJlEDDPjF18ey+DcLnz1j4v4qLLGdyQREa9UzqJMQUmAzNRExvXN9B1FpN3SkxN4+OJJ1DY0cf1TC6lrbPIdSUTEG5WzKOKco6A0wAlDc0iI1z9aiSxDe3Thl+eOY/HGSn74fyt9xxER8UZ/gkeR4m272LazTuPNJGKdMaYX10wdzLz3NvDnBZt8xxER8ULlLIrkF7ds2aTxZhLJvnnaCI4ZnM23X1jGio+qfMcREel0KmdRpKA0wIieGRyRmeI7isghS4iP43cXTiQrLYnr5i2kqloL1IpIbFE5ixLV9Y0UrqvQRucSFXIzknlgxkS2VNXw9WcX09wcHesxioi0h8pZlHhv7Q7qm5qZOkzlTKLDpAFZfO+sUby+ajv3v7HadxwRkU6jchYl8osDpCbGkzcwy3cUkQ5z8TED+OKEPvz6XyW8WbzddxwRkU6hchYlCkrLOGZwNimJ8b6jiHQYM+MnXxzDiJ4Z3PzMYjaWV/uOJCIScipnUWDDjmrWle3REhoSlVKT4nn44kk0O8d1Ty2gtkEL1IpIdFM5iwL5pVpCQ6LbwJx0fn3eeJZv3sn3X1zhO46ISEipnEWB/OIA/bJTGZST7juKSMh8blRPvvqZofypaCPPzN/gO46ISMionEW4+sZm3l1TxtRhuZiZ7zgiIfW1zw3nxGE5fO/FFSzZWOk7johISKicRbgF6yvYU9+k8WYSE+LjjPsumEBuRjLXP7WQ8j31viOJiHQ4lbMIl18SICHOOHZId99RRDpFVnoSD108kcDuOm5+ZhFNWqBWRKKMylmEKygJMGlAFhkpib6jiHSasX27cffZR/FWaRm//meJ7zgiIh1K5SyCbd9Vy8otOzVLU2LSBVP6c35eP+5/YzX/XLnNdxwRkQ6jchbB3iopA9B4M4lZd00/ijF9MrnlT4v5sGyP7zgiIh1C5SyC5ZcEyOmSxKheXX1HEfEiJTGeB2dMJD7euHbeAmrqtUCtiEQ+lbMI1dTseKs0wNRhucTFaQkNiV39stP47QUTKN62i2+/sAznNEFARCKbylmEWr65iorqBqaN0C1NkWnDc7nlc8N5YdFmnnxvve84IiKHReUsQhWUBDCDE4bm+I4iEhZuOHkonx3Zg7v/tpIF68t9xxEROWQqZxEqvyTAmD6ZdO+S7DuKSFiIizN+df54endL5fqnFhLYVec7kojIIVE5i0BVNQ0s2ljJ1GG6pSnSWmZqIg9fPInK6gZufHohjU3NviOJiBy0dpczM0sLZRBpv/+sLqOp2Wm8mcg+jOrdlZ98cQzvryvnF68V+44jInLQDljOzOw4M1sJrAo+H2dmD4Y8mexXQWmAjOQExvfr5juKSFj68qS+XHLMAB4tWMsry7b4jiMiclDac+Xs18BpwA4A59wSYGooQ8n+OefILw5w/NAcEuN1V1pkf7571igm9O/GN59bwurtu33HERFpt3b96e6c27jXIa306MmawG4+qqrVlk0iB5CUEMeDMyaSkhjPtfMWsLuu0XckEZF2aU8522hmxwHOzBLN7BvAByHOJfvxZnEAgKnDtYSGyIH0ykzldxdNYG1gN7c9v1QL1IpIRGhPObsWuAHoA2wGxgefiwf5JQGG5KbTN0vzM0Ta47ghOdx2+kheXraFP7y9znccEZEDSmjrRTOLB37rnJvRSXmkDbUNTcxfV86Mowf4jiISUa6eOphFGyr56d9XMbpPJscM7u47kojIfrV55cw51wQMMLOkTsojbXhv7Q7qGpt1S1PkIJkZ95w7lgHZadz49EK2VtX6jiQisl/tua25FnjHzL5rZrd8/Ah1MPlfBSVlJCfE6W/9IocgIyWRhy+ZRHV9Ezc8vZD6Ri1QKyLhqT3lbA3wf8H3ZrR6SCfLL9nOlEHZpCTG+44iEpGG98zg518ey4L1FfzkFc1rEpHw1OaYMwDn3F0AZtYl+FwLBnmwqaKaNYE9XDilv+8oIhHtC+N6s3hjJX94ex0T+ndj+vg+viOJiHxKe3YIGG1mi4AVwAozW2BmR4U+mrRWUFIGwDStbyZy2G4/YyRTBmZz+5+XsWrrTt9xREQ+pT23NR8FbnHODXDODQBuBR4LbSzZW0FJgN6ZKQzt0cV3FJGIlxgfx/0zJpCRksC1Ty5gZ22D70giIp9oTzlLd8698fET59ybQHrIEsn/aGhq5p3VZUwbkYuZ+Y4jEhV6ZKTwwIyJbKqo4dZnl9DcrAVqRSQ8tGu2ZnCm5sDg405aZnBKJ1m8sZJddY1MHaZbmiIdafLAbL79+SP558ptPJS/xnccERGgfeXsciAX+AvwZyAneEw6SX5xgPg447ihWt9MpKPNOn4gXxjXm3v/UcxbpQHfcUREDlzOnHMVzrmbnHMTnXOTnHNfc85VdEY4aVFQGmBCv25kpib6jiISdcyMn31pDEN7dOGmPy5ic2WN70giEuPaM1vzn2bWrdXzLDN7LaSp5BM7dtexbHOVZmmKhFB6cgIPXzyJhibH9fMWUNfY5DuSiMSw9tzWzHHOVX78JHjVrEfIEsmnvL26DOdgqsqZSEgNzu3CL88dx5JNVdz1t5W+44hIDGtPOWs2s09WPjWzAYCmNXWS/OIA2elJjOmT6TuKSNQ7ffQRXHfSEJ5+fwPPFm30HUdEYtQBdwgAvgO8bWb5gAEnAleHNJUA0NzsKCgNcMLQHOLitISGSGe49ZThLN1UyZ1/Xc4RXVO4/43V3H/RBHpkpPiOJiIxoj0TAl4FJgJ/Av4ITHLOacxZJ1i5ZSdlu+s13kykEyXEx3HfBRPonp7EdfMWUPhhOff9q9R3LBGJIfu9cha8fVnpnKtyzpWZ2R7gHGCEmd3vnKvvrJCxKr+kZVr/icO1hIZIZzruZ69T19j8yfN5729g3vsbSE6Io/hHZ3hMJiKxoK0rZ88S3AnAzMYDzwEbgHHAgyFPJhSUBBjVq6tup4h0sre+dTJnj+9NYnzLcIL4OGP6+N68ddvJnpOJSCxoa8xZqnPuo+DXFwOznXP3mlkcsDjkyWLcrtoGFqyv4MoTB/uOIhJzenRNISM5gcZmR7xBU7Njc2WN/qIkIp2irStnrUegfwb4N4Bzrnnfb9/HB5idbmbFZrbazG7fx+szzSxgZouDjytbvdbU6vhL7f2e0eLdNTtobHYabybiSdnuOmYcPYAXbzyBPt1SKPqwgn9/sM13LBGJAW1dOXvdzJ4FtgBZwOsAZtYLOOB4MzOLBx4ATgE2AYVm9pJzbu8FhP7knLtxHx9R45wbf+DfQnTKLwmQnhTPpAFZvqOIxKRHLsn75Ot/3jKN8x95jxufXsSz1xzLmL5a2kZEQqetK2dfo2U/zQ+BE5xzDcHjR9CyvMaBTAFWO+fWBicPPANMP/SoscM5R35JgGOH5JCU0J6l6EQklNKSEvjDzDyy05O4/PFCbfEkIiG13z/5XYtnnHO/ds5tbnV8UTuX0ugDtF7FcVPw2N6+bGZLzex5M+vX6niKmRWZ2Xtmdk47vl/UWFe2h00VNUzTLE2RsNEjI4U5syZT29DErDnz2VnbcOCTREQOge/LMn8DBjrnxgL/BB5v9doA51wecBHwGzMbsvfJZnZ1sMAVBQKBzkncCQqCS2hMG65dskTCyfCeGTx88STWBvZw3bwF1De2ewiuiEi7hbKcbQZaXwnrGzz2CefcDudcXfDp74FJrV7bHPx1LfAmMGHvb+Cce9Q5l+ecy8vNjZ6B8/klAQZ2T6N/9zTfUURkL8cPzeGnXxrDO6t38J0XluGcdrMTkY51wHJmZje359g+FALDzGyQmSUBFwCfmnUZnFzwsbOBD4LHs8wsOfh1DnA8EBM7Edc2NPHe2nLN0hQJY+fm9eOmzw7juQWbuP/11b7jiEiUac+Vs8v2cWzmgU5yzjUCNwKv0VK6nnXOrTCzu83s7ODbbjKzFWa2BLip1eceCRQFj78B/GwfszyjUtGHFdQ0NDFthMqZSDj7+ueG8aUJfbj3nyX8ddHmA58gItJObW3fdCEt470G7bXOWAZQ3p4Pd869Aryy17Hvtfr6DuCOfZz3H2BMe75HtCkoDZAUH8cxg7v7jiIibTAzfvblsXxUVcO3nl/KEZkp+u9WRDpEW+uc/YeWNc5ygHtbHd8FLA1lqFiWXxxg8qAs0pLa+kcjIuEgKSGORy7O40sPvcM1Ty7gz9cdx9AeXXzHEpEI19ZSGuudc2865451zuW3eiwM3rKUDra1qpbibbuYOky3NEUiRWZaInNnTSEx3pg1dz5lu+sOfJKISBvaMyHgS2ZWamZVZrbTzHaZ2c7OCBdrPllCQ+PNRCJKv+w0fn/ZZAK76rjy8SJq6pt8RxKRCNaeCQG/AM52zmU657o65zKcc11DHSwW5ZcE6Nk1mRE9M3xHEZGDNL5fN35z/gSWbKrk639aTHOzltgQkUPTnnK2zTn3QciTxLjGpmbeXl3G1GG5mNmBTxCRsHP66CO488xRvLpiKz/9u/63KSKHpj2jzovM7E/AX4FPBlM45/4SqlCxaMmmKqpqGpiq9c1EItrlxw9kY3k1j721jn7ZaVx67EDfkUQkwrSnnHUFqoFTWx1ztGyKLh2koCRAnMEJQ7WfpkgkMzO+e9YoNlVU84OXVtCnWyqfPbKn71giEkEOWM6cc7M6I0isyy8JMLZvN7LSk3xHEZHDFB9n3HfhBM5/5D1ufHoRz15zLGP6ZvqOJSIRoj2zNYeb2b/NbHnw+VgzuzP00WJHxZ56lm6q1JZNIlEkLSmBP1yWR3Z6Epc/XsjmyhrfkUQkQrRnQsBjtKzi3wDgnFtKyz6Z0kHeXl1Gs0PjzUSiTI+uKcyZNZna+iYun1PIztoG35FEJAK0p5ylOefm73VMi9B2oIKSAJmpiYzTbQ+RqDO8ZwYPXzKJNYHdXD9vIQ1Nzb4jiUiYa085KzOzIbRMAsDMvkLLtk7SAZxzFJQGOGFoDgnx7fnHISKR5vihOfz0S2N4e3UZ33lhGc5pDTQR2b/2zNa8AXgUGGlmm4F1wMUhTRVDirftYtvOOo03E4ly5+b1Y2N5Nfe9vpr+2Wnc+JlhviOJSJhqz2zNtcDnzCwdiHPO7Qp9rNiRX9yyZdOJw7WEhki0+/opw9lYUcMv/1FC36w0zpnQx3ckEQlD+y1nZnaxc26emd2y13EAnHO/CnG2mFBQGmBEzwx6Zab6jiIiIWZm/OzLY/iosoZvPb+UXpkpHD24u+9YIhJm2hrklB78NWM/DzlM1fWNFK6r0EbnIjEkOSGeRy/Jo192Klc/uYA1gd2+I4lImNnvlTPn3CPBX+/qvDix5b21O6hvambqMJUzkViSmZbI3FlT+OKD7zBrTiF/uf44crok+44lImGiPYvQPm5m3Vo9zzKz2SFNFSPyiwOkJsaTNzDLdxQR6WT9stN47NI8tu2s5crHi6htaPIdSUTCRHvWbhjrnKv8+IlzrgKYELJEMaSgtIxjBmeTkhjvO4qIeDChfxa/vWA8SzZV8rVnFtPcrCU2RKR95SzOzD65tGNm2bRvCQ5pw/ode1hXtkdLaIjEuNNH9+I7nz+SV1ds5ad//8B3HBEJA+0pWfcC75rZc4ABXwF+HNJUMaCgpGUJDW3ZJCJXnDCIjeXVPPbWOvpnp3HJsQN9RxIRj9qzztkTZlYEfCZ46EvOuZWhjRX98kvK6JedyqCc9AO/WUSimpnxvS8cxebKGr7/0gr6ZKXymZE9fccSEU/2e1vTzLoGf80GtgJPBx9bg8fkENU3NvPumjKmDsv9ZN04EYlt8XHGfRdO4Kjemdz49CKWb67yHUlEPGlrzNnTwV8XAEWtHh8/l0O0YH0Fe+qbNN5MRD4lLSmBP1yWR1ZaEpfPLWRzZY3vSCLiQVvl7GfBX490zg1u9RjknBvcGeGiVX5JgIQ449ghWhlcRD6tR9cUZs+cTE19E5fPKWRnbYPvSCLSydoqZ78N/vqfzggSSwpKAkwakEVGSqLvKCIShkYckcFDF09iTWA3189bSENTs+9IItKJ2ipnDWb2KNDXzO7b+9FZAaPN9l21rNyyU7M0RaRNJwzL4SdfGsPbq8u484XlOKc10ERiRVuzNc8CPgecRss4M+kAb5WUAWi8mYgc0Hl5/dhUXs19r6+mf/c0bjh5qO9IItIJ2ipn33TO3WZm/Z1zj3daoiiXXxIgp0sSo3p19R1FRCLA108ZzsaKGu55rZi+WalMH9/HdyQRCbG2bmt+3lrWebigs8JEu6Zmx1ulAaYOyyUuTktoiMiBmRk/+/IYpgzK5pvPLeX9tTt8RxKREGurnL0KVABjzWynme1q/Wsn5YsqyzdXUVHdoPFmInJQkhPiefSSSfTNTuXqJxewJrDbdyQRCaH9ljPn3Dedc92Al51zXZ1zGa1/7byI0aOgJIAZnDgsx3cUEYkw3dKSmDtzCglxxqw5hezYXec7koiEyAE3PnfOTTezAWb2OQAzSzWzjNBHiz75JQHG9Mmke5dk31FEJAL1757G7y/LY9vOWq58oojahibfkUQkBA5YzszsKuB54JHgob7AX0OYKSpV1TSwaGMlU4fplqaIHLoJ/bP47QXjWbyxkq//aTHNzVpiQyTaHLCcATcAxwM7AZxzpUCPUIaKRv9ZXUZTs2PaCJUzETk8p4/uxXc+fyR/X76Vn726ynccEelgbS2l8bE651z9xxt0m1kCoL+qHaT8kgAZyQmM79fNdxQRiQJXnDCIDeXVPFqwln5ZqVxy7EDfkUSkg7SnnOWb2beBVDM7Bbge+FtoY0UX5xwFJQGOH5pDYnx7LlaKiLTNzPjeWaPYXFHD919aQZ+sVD4zsqfvWCLSAdrTFG4HAsAy4BrgFeDOUIaKNqu37+ajqlotoSEiHSohPo77LpzAqN5dufHpRSzfXOU7koh0gPbM1mwGHgfuAn4AzHXa5O2g5JcEAJg6XEtoiEjHSk9OYPZlk+mWmsjlcwv5qLLGdyQROUztma15ElAKPAA8CJSY2dTQxoou+SUBhuSm0zcrzXcUEYlCPbqmMGfWFGrqm5g1p5CdtQ2+I4nIYWjPbc17gVOdc9Occ1Np2Qj916GNFT1qG5qYv66cacM1wVVEQmfEERk8dPEk1gR2c8NTC2loavYdSUQOUXvKWaJzrvjjJ865EiAxdJGiy3trd1DX2KxbmiIScicMy+EnXxzDW6Vl3PnCcjQCRSQytWe2ZpGZ/R6YF3x+MVAUukjRpaCkjOSEOI4Z3N13FBGJAedN7sfGimp+9/pq+ndP44aTh/qOJCIHqT3l7DpaFqK9Kfi8AHgoZImiTH7JdqYMyiYlMd53FBGJEbecMpwN5dXc81oxfbNSmT6+j+9IInIQ9lvOzCwXyHXOrQR+FXxgZkcBXWlZXkPasKmimjWBPVw4pb/vKCISQ8yMX3xlLFuqavnmc0vplZnKlEHZvmOJSDu1Nebsd8C+BkplA78NTZzoUlBSBsA0rW8mIp0sOSGeRy+ZRN/sVK5+sog1gd2+I4lIO7VVzoY65wr2PuicewsYG7pI0aOgJEDvzBSG9ujiO4qIxKBuaUnMnTmFeDNmzSlkx+4635FEpB3aKmcZbbym2ZoH0NDUzDury5g6PJeP9yUVEels/bun8dhleWzbWcuVTxRR29DkO5KIHEBb5Wy1mX1+74NmdgawNnSRosPijZXsqmvULU0R8W5i/yx+c/54Fm+s5JZnF9PcrCU2RMJZW7M1vwa8bGbnAQuCx/KAY4GzQpwr4uUXB4iPM44bqvXNRMS/M8b04jufP5IfvfwBP89axR2fP9J3JBHZj/2WM+dcqZmNAS4CRgcP5wPXOOdqOyNcJCsoDTChXzcyU3UHWETCwxUnDGJDeTWPFKylb3YalxwzwHckEdmHNtc5c87VAXM6KUvUKNtdx9JNVdx6ynDfUUREPmFmfO+sUWyqqOH7Ly6nb7dUTh6preVEwk17tm86ZGZ2upkVm9lqM7t9H6/PNLOAmS0OPq5s9dplZlYafFwWypwd7e3SliU0pmq8mYiEmYT4OH534QSO7NWVG55eyPLNVb4jicheQlbOzCweeAA4AxgFXGhmo/bx1j8558YHH78PnpsNfB84GpgCfN/MskKVtaMVlATITk9iTJ9M31FERP5HenICs2dOpltqIlc8XshHlTW+I4lIK+0qZ2aWamYjDvKzpwCrnXNrnXP1wDPA9HaeexrwT+dcuXOuAvgncPpBfn8vmpsdBaUBThiaQ1ycltAQkfDUs2sKs2dNprquicvnFrKrtsF3JBEJOmA5M7MvAIuBV4PPx5vZS+347D7AxlbPNwWP7e3LZrbUzJ43s34HeW7YWbllJ2W767WEhoiEvZFHdOWhiyexevturn9qIQ1Nzb4jiQjtu3L2A1quglUCOOcWA4M66Pv/DRjonBtLy9Wxxw/mZDO72syKzKwoEAiPrT7zS1pynDhcS2iISPg7YVgOP/niGN4qLeO7f12Oc1oDTcS39pSzBufc3iNG2/Nf72agX6vnfYPH/vshzu0IzggF+D0wqb3nBs9/1DmX55zLy80NjytVBSUBRvXqSo+MFN9RRETa5bzJ/bjx5KE8U7iRB99c4zuOSMxrTzlbYWYXAfFmNszMfgf8px3nFQLDzGyQmSUBFwCfuh1qZr1aPT0b+CD49WvAqWaWFZwIcGrwWFjbVdvAgvUVmqUpIhHn1lOHM318b+55rZgXF//P34VFpBO1p5x9FTgKqAOeBqqAmw90knOuEbiRllL1AfCsc26Fmd1tZmcH33aTma0wsyXATcDM4LnlwA9pKXiFwN3BY2Ht3TU7aGx2Gm8mIhHHzPjFV8YyZWA233xuKYUfhv3/ckWilh1ofIGZneuce+5Ax3zLy8tzRUVFXjN854Vl/HXRZhZ971SSEkK6hJyISEhUVtfzpYf+Q/meev5y3XEMzu3iO5JIVDKzBc65vH291p4GcUc7j8U05xz5JQGOHZKjYiYiEatbWhJzZ04h3oxZcwvZsbvuwCeJSIfab4swszOC48v6mNl9rR5zgcZOSxgh1pXtYVNFDdM0S1NEIlz/7mk8dlkeW6tqueqJImobmnxHEokpbV3i+QgoAmqBBa0eL9GySKy0UhBcQmPacO1TJyKRb2L/LH5z/ngWbazklmcX09ysJTZEOst+Nz53zi0BlphZT+fcp9YfM7Obgd+GOlwkyS8JMLB7Gv27p/mOIiLSIc4Y04tvn3EkP37lA36etYo7Pn+k70giMaE9g6Mu2MexmR2cI6LVNjTx3tpyzdIUkahz5YmDuOSYATxSsJZ57633HUckJuz3ypmZXQhcBAzaa7umDEBzrFsp+rCCmoYmrW8mIlHHzPj+F0axubKG7724nD7dUjl5pIZviITSfssZLQvNbgFygHtbHd8FLA1lqEhTUBogKT6OYwZ39x1FRKTDJcTH8bsLJ3DeI+9yw9MLefaaYxndJ9N3LJGotd/bms659c65N51zxwIfAonOuXxaFpRN7aR8ESG/OMDkQVmkJ7fVdUVEIld6cgKzZ06mW2oiVzxeyEeVNb4jiUStA445M7OrgOeBR4KH+gJ/DWGmiLKlqobibbuYOky3NEUkuvXsmsLsWZPZU9fE5XML2VXb4DuSSFRqz4SAG4DjgZ0AzrlSQAMOgt4qKQNg2giVMxGJfiOP6MpDF09k9fbd3PD0Ihqamn1HEok67Slndc65+o+fmFkCoAVvgvJLAvTsmsyInhm+o4iIdIoTh+Xy4y+OpqAkwHf/upwDbQMoIgenPYOk8s3s20CqmZ0CXA/8LbSxIkNjUzNvry7j1FE9MTPfcUREOs35k/uzsbyG+99YTf/uaVx/0lDfkUSiRnuunN0OBIBlwDXAK8CdoQwVKZZsqqKqpkFLaIhITLr11OFMH9+bX7xazEtLPvIdRyRqHPDKmXOuGXgs+JBWCkoCxBmcMFT7aYpI7DEzfvGVsWyprOUbzy6hV2YKkwdm+44lEvHaM1tznZmt3fvRGeHCXX5JgLF9u5GVnuQ7ioiIF8kJ8TxyyST6ZqVy1RNFrA3s9h1JJOK157ZmHjA5+DgRuA+YF8pQkaBiTz1LN1VqyyYRiXlZ6UnMmTWZODNmzS1kx+4635FEItoBy5lzbkerx2bn3G+AM0MfLby9vbqMZofGm4mIAAO6p/PYpXlsrarlqieKqG1o8h1JJGK157bmxFaPPDO7lvbN8oxqBSUBMlMTGddXW5iIiABMGpDFb84fz6KNldz67BKam7XEhsihaE/Jar2vZiMtWzmdF5I0EcI5R0FpgBOG5pAQ3547wyIiseGMMb2444yR/OSVVfTNTuWOM470HUkk4rRntubJnREkkhRv28W2nXUabyYisg9XnTiYDeXVPJK/lv7Zacw4eoDvSCIRpT23NTPN7FdmVhR83GtmMX0vL784AMCJw7WEhojI3syMH3zhKE4ekcv3XlzBG8XbfUcSiSjtuSc3G9hFy63M82jZY3NOKEOFu4LSACN6ZtArM9V3FBGRsJQQH8f9F01k5BEZ3PjUQlZ8VOU7kkjEaE85G+Kc+75zbm3wcRcwONTBwtWeukYK11UwVVfNRETalJ6cwOyZk+mamsjlcwvZUlXjO5JIRGhPOasxsxM+fmJmxwMx+1/Ye2t3UN/UzLThPXxHEREJez27pjBn1mT21DUxa04hu2obfEcSCXvtKWfXAg+Y2Ydmth64P3gsJhWUBEhNjCdvYJbvKCIiEWHkEV15cMZESrfv5oanF9HQ1Ow7kkhYa88itEucc+OAscAY59wE59yS0EcLT/klAY4ZnE1KYrzvKCIiEWPq8Fx+fM5oCkoCfO/F5TinNdBE9ueAS2mYWTLwZWAgkGBmADjn7g5psjC0cH05H+6o5ssT+/qOIiIScS6Y0p+NFdU88MYa+menc91JQ3xHEglL7VmE9kWgClgAxPSGaT/9+yoASrfv8pxERCQy3XrKCDaW1/DzV1fRNyuVL4zr7TuSSNhpTznr65w7PeRJwtiIO/9OXeN/x0i8tGQLLy15meSEOIp/dIbHZCIikSUuzrjn3LFsrarl1ueWcERmCpMHZvuOJRJW2jMh4D9mNibkScLYW986mS+M7fXJ85TEOKaP781bt2nzBBGRg5WcEM8jl0yib7dUrnqiiHVle3xHEgkr+y1nZrbMzJYCJwALzazYzJa2Oh4zenRNoWtqIgYkxcdR19hMRnICPTJSfEcTEYlIWelJzJk1mTgzZs2ZT/meet+RRMJGW7c1z+q0FBGgbHcdM44ZwEVT+vP0/A0EdtX6jiQiEtEGdE/nsUvzuPCx97jqiSKeuvJozYQXAWx/05nNrM1BAM658pAkOkR5eXmuqKjIdwwRETlIryzbwvVPLeTMsb343QUTiIsz35FEQs7MFjjn8vb1WltXzhYADtjXfyWOGN7CSUREOs7nx/Ti258fyU9eWUW/rDRuP2Ok70giXu23nDnnBnVmEBERiV1XnTiYDeXVPJy/hn7Zqcw4eoDvSCLe7LecmdlI59wqM5u4r9edcwtDF0tERGKJmfGDLxzF5ooavvfiCnp3S+XkEdrDWGJTW2POHnPOXWVmb+zjZeec+0xoox0cjTkTEYl8u+saOe/hd1m/Yw/PXXsco3p39R1JJCTaGnO233IWaVTORESiw9aqWr744Ds4By/ccBy9MlN9RxLpcG2Vs7bWOZtsZke0en6pmb1oZvcdaCaniIjIoToiM4XZMyezu66RWXMK2VXb4DuSSKdqa4eAR4B6ADObCvwMeIKWfTYfDX00ERGJVUf26sqDMyZSun03Nzy9iIam5gOfJBIl2ipn8a3WMjsfeNQ592fn3HeBoaGPJiIisWzq8Fx+fM5oCkoCfO/F5UTLMByRA2lrnbN4M0twzjUCnwWubud5IiIiHeKCKf3ZUF7Ng2+uoX92OtedNMR3JJGQa6tk/RHIN7MyoAZ4C8DMhtJya1NERCTkvnHqCDZW1PDzV1fRLzuVs8b29h1JJKTaWoT2x2b2b6AX8A/33+vJccBXOyOciIhIXJxxz1fGsrWqhlueXcIRXVPIG6h5aRK92hpzhnPuPefcC865Pa2OlWgBWhER6UwpifE8ekkefbqlctUTRawr23Pgk0QiVJvlTEREJFxkpScxZ+ZkzIxZc+ZTvqfedySRkFA5ExGRiDEwJ53HLs3jo6parnqiiNqGJt+RRDqcypmIiESUSQOy+PV541mwvoJbn1tCc7OW2JDoonImIiIR58yxvbjjjJG8vHQL9/yj2HcckQ6l9cpERCQiXT11MBvKq3nozTX0y0rjoqP7+44k0iFUzkREJCKZGXedfRSbK2v47ovL6d0thZNG9PAdS+SwhfS2ppmdbmbFZrbazG5v431fNjNnZnnB5wPNrMbMFgcfD4cyp4iIRKaE+Djuv2giI3pmcMNTC1n50U7fkUQOW8jKmZnFAw8AZwCjgAvNbNQ+3pcB3Ay8v9dLa5xz44OPa0OVU0REIluX5ARmz5xMRkoil88tZEtVje9IIocllFfOpgCrnXNrnXP1wDPA9H2874fAz4HaEGYREZEodkRmCnNmTWZ3XSOXzy1id12j70gihyyU5awPsLHV803BY58ws4lAP+fcy/s4f5CZLTKzfDM7MYQ5RUQkChzZqysPzJhIybZd3PDUQhqbmn1HEjkk3pbSMLM44FfArft4eQvQ3zk3AbgFeNrMuu7jM642syIzKwoEAqENLCIiYW/a8Fx+dM5o8ksCfPfFFfx3W2iRyBHKcrYZ6Nfqed/gsY9lAKOBN83sQ+AY4CUzy3PO1TnndgA45xYAa4Dhe38D59yjzrk851xebm5uiH4bIiISSS6c0p/rTxrCH+dv4JGCtb7jiBy0UC6lUQgMM7NBtJSyC4CLPn7ROVcF5Hz83MzeBL7hnCsys1yg3DnXZGaDgWGA/gsTEZF2+capI9hYUcPP/r6KvlmpnDW2t+9IIu0WsnLmnGs0sxuB14B4YLZzboWZ3Q0UOedeauP0qcDdZtYANAPXOufKQ5VVRESiS1yccc9XxrKlsoZbnl3CEV1TyBuY7TuWSLtYtNyPz8vLc0VFRb5jiIhIGCnfU8+XH/oPldX1vHD98QzMSfcdSQQAM1vgnMvb12vaW1NERKJWdnoSc2ZOBmDmnPmU76n3nEjkwFTOREQkqg3MSef3l+XxUVUtVz9RRG1Dk+9IIm1SORMRkag3aUA2vz5vPEXrK/jGc0tobo6OIT0SnVTOREQkJpw5thd3nDGS/1u6hXv+Uew7jsh+hXIpDRERkbBy9dTBrC+v5qE319A/O40Lp/T3HUnkf6iciYhIzDAz7j77KDZX1HDnX5fTu1sq04ZrEXMJL7qtKSIiMSUhPo4HZkxkeM8MbnhqISs/2uk7ksinqJyJiEjM6ZKcwJyZk+mSnMDlcwvZWlXrO5LIJ1TOREQkJh2RmcKcWZPZXdfIrLmF7K5r9B1JBFA5ExGRGHZkr648MGMiJdt2ccNTC2lsavYdSUTlTEREYtu04bn8cPpo8ksCfP+lFUTLtoYSuTRbU0REYt5FR/dnY8V/l9i4ZtoQ35EkhqmciYiIAN88dQQby6v56d9X0TcrjTPH9vIdSWKUypmIiAgQF2f88txxbK2q5evPLuaIzGQmDcj2HUtikMaciYiIBKUkxvPopXn06ZbKlY8X8WHZHt+RJAapnImIiLSSnZ7EnJmTAZg1t5CKPfWeE0msUTkTERHZy8CcdB67NI/NlTVc/WQRtQ1NviNJDFE5ExER2Ye8gdn86rxxFH5YwTefX0pzs5bYkM6hCQEiIiL7cdbY3myqqOFnf19Fv6xUvnX6SN+RJAaonImIiLThmqmD2VBezYNvrqFfdhoXTunvO5JEOZUzERGRNpgZd599FJsrarjzr8vp3S2VacNzfceSKKYxZyIiIgeQEB/HAzMmMrxnBjc8tZAPtuz0HUmimMqZiIhIO3RJTmD2zDy6JCdw+dxCtlbV+o4kUUrlTEREpJ16ZaYye+ZkdtY0cPncQnbXNfqOJFFI5UxEROQgjOrdlQdmTKR42y5ufHohjU3NviNJlFE5ExEROUgnjejBD6eP5s3iAN9/aQXOaQ006TiarSkiInIILjq6PxvKq3k4fw39s9O4ZtoQ35EkSqiciYiIHKJvnTaCjRXV/PTvq+iblcaZY3v5jiRRQOVMRETkEMXFGfeeO46tVbV8/dnFHJGZzKQB2b5jSYTTmDMREZHDkJIYz2OX5tE7M4WrnljAh2V7fEeSCKdyJiIicpiy05OYM2sKzjlmzS2kYk+970gSwVTOREREOsCgnHQeuzSPzZU1XP1kEbUNTb4jSYRSORMREekgeQOz+dV54yj8sIJvPr+U5mYtsSEHTxMCREREOtBZY3uzsbyGn7+6iv7ZqXzztJG+I0mEUTkTERHpYNdOG8yG8moeeGMN/bLSuGBKf9+RJIKonImIiHQwM+OH04/io8oavvPX5fTulsrU4bm+Y0mE0JgzERGREEiIj+OBGRMZ3jOD659ayAdbdvqOJBFC5UxERCREuiQnMHtmHl2SE7h8biHbdtb6jiQRQOVMREQkhHplpjJ75mR21jQwa04hu+safUeSMKdyJiIiEmKjenfl/hkTKd62i68+vZDGpmbfkSSMqZyJiIh0gpNH9OCH00fzRnGA77+0Aue0Bprsm2ZrioiIdJKLju7PhvJqHs5fw4DuaVw9dYjvSBKGVM5EREQ60bdOG8HGimp+8soq+nRL48yxvXxHkjCjciYiItKJ4uKMe88dx9aqWr7+7GKOyExh0oAs37EkjGjMmYiISCdLSYznsUvz6J2ZwlVPFLF+xx7fkSSMqJyJiIh4kJ2exJxZU3DOMWtOIRV76n1HkjChciYiIuLJoJx0Hrs0j02VNVz9ZBG1DU2+I0kYUDkTERHxKG9gNveeO47CDyv45vNLaW7WEhuxThMCREREPPvCuN5sqqjh56+uon92Kt88baTvSOKRypmIiEgYuHbaYDaU7+GBN9bQPzuN8yf39x1JPFE5ExERCQNmxt3TR7O5spZvv7CcXpmpTB2e6zuWeBDSMWdmdrqZFZvZajO7vY33fdnMnJnltTp2R/C8YjM7LZQ5RUREwkFifBwPXDSBYT26cP1TC1m1dafvSOJByMqZmcUDDwBnAKOAC81s1D7elwHcDLzf6tgo4ALgKOB04MHg54mIiES1jJRE5syaTHpyPLPmFLJtZ63vSNLJQnnlbAqw2jm31jlXDzwDTN/H+34I/Bxo/W/fdOAZ51ydc24dsDr4eSIiIlGvV2Yqs2dOZmdNA7PmFLK7rtF3JOlEoSxnfYCNrZ5vCh77hJlNBPo5514+2HNFRESi2VG9M7l/xkSKt+3iq08vpLGp2Xck6STe1jkzszjgV8Cth/EZV5tZkZkVBQKBjgsnIiISBk4e0YO7px/FG8UBfvC3FTinNdBiQShna24G+rV63jd47GMZwGjgTTMDOAJ4yczObse5ADjnHgUeBcjLy9O/sSIiEnVmHD2ADeXVPJK/lgHZ6Vw1dbDvSBJiobxyVggMM7NBZpZEywD/lz5+0TlX5ZzLcc4NdM4NBN4DznbOFQXfd4GZJZvZIGAYMD+EWUVERMLWbaeN5MwxvfjxKx/wyrItvuNIiIXsyplzrtHMbgReA+KB2c65FWZ2N1DknHupjXNXmNmzwEqgEbjBOacNx0REJCbFxRn3njeOrTtr+fqfFtOzawqTBmT5jiUhYtFy/zovL88VFRX5jiEiIhIy5Xvq+dKD77CztpEXrj+OAd3TfUeSQ2RmC5xzeft6TRufi4iIRIjs9CTmzJpCs3PMmlNIZXW970gSAipnIiIiEWRQTjqPXZrHpooarn5iAXWNGvUTbVTOREREIszkgdn88rxxzP+wnG8+t5Tm5ugYoiQttPG5iIhIBDp7XG82VVTzi1eL6Z+dxjdOG+E7knQQlTMREZEIdd20IWwsr+b+N1bTLzuV8yf39x1JOoDKmYiISIQyM+6ePprNlbV8+4Xl9O6WyonDcn3HksOkMWciIiIRLDE+jgcumsCwHl24ft5CVm3d6TuSHCaVMxERkQiXkZLI7JmTSUuO5/I5hWzbWes7khwGlTMREZEo0LtbKrNnTqaqpoHL5xayp67RdyQ5RCpnIiIiUeKo3pncP2Miq7bu4qt/XERjU7PvSHIIVM5ERESiyMkjenD39KN4fdV27vrbSqJlm8ZYotmaIiIiUWbG0QPYUF7NI/lrGdA9jStPHOw7khwElTMREZEodNtpI9lUXsOPX/mAPt1SOWNML9+RpJ10W1NERCQKxcUZ9543jgn9uvG1Py1m4YYK35GknVTOREREolRKYjyPXZrHEZkpXPV4Eet37PEdSdpB5UxERCSKde+SzJyZk2lyjllzCqmsrvcdSQ5A5UxERCTKDc7twmOX5rGpooarn1hAXWOT70jSBpUzERGRGDB5YDa/PG8c8z8s51vPL9USG2FMszVFRERixNnjerOxvJp7Xiumf3Yat546wnck2QeVMxERkRhy/UlD2Fheze9eX02/rDTOm9zPdyTZi8qZiIhIDDEzfnjOaDZX1vDtF5bRq1sKJw7L9R1LWtGYMxERkRiTGB/HgzMmMrRHF66ft5Dirbt8R5JWVM5ERERiUEZKIrNnTiYtOZ5Zc+azbWet70gSpHImIiISo3p3S+UPl02msqaBKx4vZE9do+9IgsqZiIhITBvdJ5MHLprIyo928tU/LqKxqdl3pJinciYiIhLjTh7Zg7unj+b1Vdu5628rtQaaZ5qtKSIiIlx8zAA2llfzSMFaBnRP48oTB/uOFLNUzkRERASA204fycaKan78ygf06ZbKGWN6+Y4Uk3RbU0RERACIizN+dd54JvTrxtf+tJhFGyp8R4pJKmciIiLyiZTEeB67NI+eXVO48vEiNuyo9h0p5qiciYiIyKd075LM3FmTaXKOmXPnU1ld7ztSTFE5ExERkf8xOLcLj16Sx6byGq5+cgF1jU2+I8UMlTMRERHZpymDsrnn3LHMX1fOt55fqiU2Oolma4qIiMh+TR/fh00VNdzzWjEDstO45dQRviNFPZUzERERadP1Jw1hw45q7nt9NX2z0zgvr5/vSFFN5UxERETaZGb86Iuj+aiqhm//ZRm9M1M5YViO71hRS2PORERE5IAS4+N4YMZEhvbownXzFlC8dZfvSFFL5UxERETapWtKIrNnTiY1KZ5Zc+azbWet70hRSeVMRERE2q13t1Rmz5xMZU0DVzxeyJ66Rt+Roo7KmYiIiByU0X0yeeCiiaz8aCc3/XERTc1aYqMjqZyJiIjIQTt5ZA/umj6af6/azl1/W6E10DqQZmuKiIjIIbnkmAFsLK/m0YK19M9O48oTB/uOFBVUzkREROSQ3X76SDaWV/PjVz6gb1Yqp4/u5TtSxNNtTRERETlkcXHGr88fz/h+3bj5mcUs2lDhO1LEUzkTERGRw5KSGM/vL82jZ9cUrny8iA07qn1HimgqZyIiInLYundJZs6syTQ2O2bOnU9ldb3vSBFL5UxEREQ6xJDcLjx6ySQ2lddwzZMLqGts8h0pIqmciYiISIc5enB37jl3LO+vK+e255dqiY1DoNmaIiIi0qGmj+/Dpooa7nmtmP7Zadxy6gjfkSKKypmIiIh0uOtPGsKGHdXc9/pq+mancV5eP9+RIobKmYiIiHQ4M+NHXxzNR1U1fPsvy+jTLZXjh+b4jhURNOZMREREQiIxPo4HZkxkSG4Xrn1yAcVbd/mOFBFCWs7M7HQzKzaz1WZ2+z5ev9bMlpnZYjN728xGBY8PNLOa4PHFZvZwKHOKiIhIaHRNSWT2rMmkJsVz+dxCtu+s9R0p7IWsnJlZPPAAcAYwCrjw4/LVytPOuTHOufHAL4BftXptjXNufPBxbahyioiISGj16ZbK7JmTqaiu5/LHC9lT1+g7UlgL5ZWzKcBq59xa51w98AwwvfUbnHM7Wz1NBzTfVkREJAqN7pPJ/RdNYOVHO7npj4toatYf+fsTynLWB9jY6vmm4LFPMbMbzGwNLVfObmr10iAzW2Rm+WZ2YghzioiISCf4zMie3HX2Ufx71Xbu/tsKrYG2H94nBDjnHnDODQFuA+4MHt4C9HfOTQBuAZ42s657n2tmV5tZkZkVBQKBzgstIiIih+SSYwdy9dTBPP7uema/86HvOGEplOVsM9B6UZO+wWP78wxwDoBzrs45tyP49QJgDTB87xOcc4865/Kcc3m5ubkdlVtERERC6PbTR3LG6CP40csreXX5Vt9xwk4oy1khMMzMBplZEnAB8FLrN5jZsFZPzwRKg8dzgxMKMLPBwDBgbQizioiISCeJizN+ff54xvfrxtf+tIhFGyp8RworIStnzrlG4EbgNeAD4Fnn3Aozu9vMzg6+7UYzW2Fmi2m5fXlZ8PhUYGnw+PPAtc658lBlFRERkc6VkhjPY5fm0SMjhSsfL2LDjmrfkcKGRctgvLy8PFdUVOQ7hoiIiByENYHdfOnB/5DTJYm/XHc8mWmJviN1CjNb4JzL29dr3icEiIiISOwaktuFRy+ZxMbyGq6ZV0RdY5PvSN6pnImIiIhXRw/uzj3njuW9teXc/udlMb/EhjY+FxEREe+mj+/DxvJqfvmPEvplp3HLKf+zSEPMUDkTERGRsHDDyUPZUF7Nff8upV9WKufm9TvwSVFI5UxERETCgpnx4y+O4aPKWu74yzJ6d0vl+KE5vmN1Oo05ExERkbCRGB/HgxdPZEhuF659cgEl23b5jtTpVM5EREQkrHRNSWT2rMmkJsUza04h23fV+o7UqVTOREREJOz06ZbK7JmTqaiu54q5RVTXN/qO1GlUzkRERCQsje6Tye8unMCKj6q46Y+LaGqOjSU2VM5EREQkbH32yJ7cdfZR/OuD7dz9txUxsQaaZmuKiIhIWLvk2IFsKK/msbfW0b97OlecMMh3pJBSORMREZGwd8cZR7KpooYfvbySvlmpnHbUEb4jhYxua4qIiEjYi4szfn3+eMb368bNzyxi8cZK35FCRuVMREREIkJKYjyPXZpHbkYyVz5eyMbyat+RQkLlTERERCJGTpdk5sycQkOTY+ac+VRVN/iO1OFUzkRERCSiDO3RhUcvmcTG8hqumVdEXWOT70gdSuVMREREIs7Rg7tzz7ljeW9tOXf8eVlULbGh2ZoiIiISkaaP78PG8mp++Y8S+mWn8fVThvuO1CFUzkRERCRi3XDyUDaUV/Pbf5fSLzuNr0zq6zvSYVM5ExERkYhlZvz4i2P4qLKW2/+8lF6ZKRw/NMd3rMOiMWciIiIS0RLj43jw4okMzk3n2nkLKNm2y3ekw6JyJiIiIhGva0oic2ZNISUxnllzCtm+q9Z3pEOmciYiIiJRoU+3VObMnExFdT1XPl5EdX2j70iHROVMREREosboPpn87sIJLN9cxU1/XExTc+QtsaFyJiIiIlHls0f25AdnH8W/PtjGD/9vpe84B02zNUVERCTqXHrsQDbsqOb3b6+jf3Yal58wyHekdlM5ExERkaj07c8fyaaKGn748kr6ZKVy2lFH+I7ULrqtKSIiIlEpLs749fnjGde3Gzc/s4jFGyt9R2oXlTMRERGJWqlJ8fz+sjxyM5K58vFCNpZX+450QCpnIiIiEtVyuiQzZ+YUGpocs+YWUlXd4DtSm1TOREREJOoN7dGFRy6ZxPode7hmXhH1jc2+I+2XypmIiIjEhGMGd+eer4zjvbXl3P7npTgXnmugabamiIiIxIxzJvRhY3k19/6zhH7ZaXz9lOG+I/0PlTMRERGJKTd+Zigbyqv57b9L6Zedxlcm9fUd6VNUzkRERCSmmBk/+dIYtlTVcvufl9I7M4Xjhub4jvUJjTkTERGRmJMYH8eDF09kcG4618xbQOm2Xb4jfULlTERERGJS15REZs+cTEpiPDPnFLJ9V63vSIDKmYiIiMSwvllpzL5sMuV76rny8SLW79jDeY+867WoqZyJiIhITBvTN5PfXTiB5ZuruOix9yn8sJz7/lXqLY8mBIiIiEjMu+HphTQ72FxZA8C89zcw7/0NJCfEUfyjMzo1i66ciYiISMx761snc/b43sTHGQApiXFMH9+bt247udOzqJyJiIhIzOvRNYWM5ASanSM5IY66xmYykhPokZHS6Vl0W1NEREQEKNtdx4yjB3DRlP48PX8DAU+TAixc95U6WHl5ea6oqMh3DBEREZEDMrMFzrm8fb2m25oiIiIiYUTlTERERCSMqJyJiIiIhBGVMxEREZEwonImIiIiEkZUzkRERETCiMqZiIiISBgJaTkzs9PNrNjMVpvZ7ft4/VozW2Zmi83sbTMb1eq1O4LnFZvZaaHMKSIiIhIuQlbOzCweeAA4AxgFXNi6fAU97Zwb45wbD/wC+FXw3FHABcBRwOnAg8HPExEREYlqobxyNgVY7Zxb65yrB54Bprd+g3NuZ6un6cDH2xVMB55xztU559YBq4OfJyIiIhLVQrm3Zh9gY6vnm4Cj936Tmd0A3AIkAZ9pde57e53bJzQxRURERMKH9wkBzrkHnHNDgNuAOw/mXDO72syKzKwoEAiEJqCIiIhIJwplOdsM9Gv1vG/w2P48A5xzMOc65x51zuU55/Jyc3MPL62IiIhIGAhlOSsEhpnZIDNLomWA/0ut32Bmw1o9PRMoDX79EnCBmSWb2SBgGDA/hFlFREREwkLIxpw55xrN7EbgNSAemO2cW2FmdwNFzrmXgBvN7HNAA1ABXBY8d4WZPQusBBqBG5xzTaHKKiIiIhIuzDl34HdFgLy8PFdUVOQ7hoiIiMgBmdkC51zevl7zPiFARERERP5L5UxEREQkjKiciYiIiIQRlTMRERGRMKJyJiIiIhJGoma2ppkFgPWd8K1ygLJO+D6xQj/PjqefacfSz7Pj6Wfa8fQz7Vid8fMc4Jzb5wr6UVPOOouZFe1v6qscPP08O55+ph1LP8+Op59px9PPtGP5/nnqtqaIiIhIGFE5ExEREQkjKmcH71HfAaKMfp4dTz/TjqWfZ8fTz7Tj6Wfasbz+PDXmTERERCSM6MqZiIiISBhROWsHM+tnZm+Y2UozW2FmN/vOFOnMLMXM5pvZkuDP9C7fmaKBmcWb2SIz+z/fWaKBmX1oZsvMbLGZFfnOEw3MrJuZPW9mq8zsAzM71nemSGVmI4L/bn782GlmX/OdK9KZ2deDfy4tN7M/mllKp2fQbc0DM7NeQC/n3EIzywAWAOc451Z6jhaxzMyAdOfcbjNLBN4GbnbOvec5WkQzs1uAPKCrc+4s33kinZl9COQ557R+VAcxs8eBt5xzvzezJCDNOVfpOVbEM7N4YDNwtHOuM9b8jEpm1oeWP49GOedqzOxZ4BXn3NzOzKErZ+3gnNvinFsY/HoX8AHQx2+qyOZa7A4+TQw+9DeFw2BmfYEzgd/7ziKyL2aWCUwF/gDgnKtXMeswnwXWqJh1iAQg1cwSgDTgo84OoHJ2kMxsIDABeN9zlIgXvAW3GNgO/NM5p5/p4fkN8C2g2XOOaOKAf5jZAjO72neYKDAICABzgrfff29m6b5DRYkLgD/6DhHpnHObgV8CG4AtQJVz7h+dnUPl7CCYWRfgz8DXnHM7feeJdM65JufceKAvMMXMRnuOFLHM7Cxgu3Nuge8sUeYE59xE4AzgBjOb6jtQhEsAJgIPOecmAHuA2/1GinzB28NnA8/5zhLpzCwLmE7LXyR6A+lmdnFn51A5a6fguKg/A0855/7iO080Cd7WeAM43XOUSHY8cHZwjNQzwGfMbJ7fSJEv+LdonHPbgReAKX4TRbxNwKZWV8mfp6WsyeE5A1jonNvmO0gU+BywzjkXcM41AH8BjuvsECpn7RAcvP4H4APn3K9854kGZpZrZt2CX6cCpwCrvIaKYM65O5xzfZ1zA2m5vfG6c67T/7YXTcwsPTgBiOCtt1OB5X5TRTbn3FZgo5mNCB76LKCJVYfvQnRLs6NsAI4xs7Tgn/2fpWWceadK6OxvGKGOBy4BlgXHSAF82zn3ir9IEa8X8HhwhlEc8KxzTss/SDjpCbzQ8v9nEoCnnXOv+o0UFb4KPBW8FbcWmOU5T0QL/sXhFOAa31migXPufTN7HlgINAKL8LBbgJbSEBEREQkjuq0pIiIiEkZUzkRERETCiMqZiIiISBhRORMREREJIypnIiIiImFE5UxEQs7MnJnd2+r5N8zsBx302XPN7Csd8VkH+D7nmtkHZvbGPl4bbmavmFmpmS00s2fNrKeZnWRmh7REjJl9zczSDj+5iEQalTMR6Qx1wJfMLMd3kNaCGxu31xXAVc65k/f6jBTgZVq2JBoW3O7pQSD3MON9jZZNl9stuG6giEQ4lTMR6QyNtCzk+PW9X9j7ypeZ7Q7+epKZ5ZvZi2a21sx+ZmYzzGy+mS0zsyGtPuZzZlZkZiXBfUYxs3gzu8fMCs1sqZld0+pz3zKzl9jH6vRmdmHw85eb2c+Dx74HnAD8wczu2euUi4B3nXN/+/iAc+5N59yndhMwsx+Y2TdaPV9uZgODOxG8bGZLgsfON7ObaNnX742Pr9SZ2alm9m7wytxzwb1+MbMPzeznZrYQONfMbjKzlcHf8zMH+OciImFIOwSISGd5AFhqZr84iHPGAUcC5bSsJv9759wUM7uZlpXmvxZ830Ba9r0cQkuhGQpcClQ55yabWTLwjpn9I/j+icBo59y61t/MzHoDPwcmARXAP8zsHOfc3Wb2GeAbzrmivTKOBg5nw/nTgY+cc2cGM2Q656rM7BbgZOdcWfCK453A55xze8zsNuAW4O7gZ+wIXrHDzD4CBjnn6j7eIk1EIouunIlIp3DO7QSeAG46iNMKnXNbnHN1wBrg43K1jJZC9rFnnXPNzrlSWkrcSFr2wrw0uOXa+0B3YFjw/fP3LmZBk4E3g5seNwJPAVMPIu+hWAacErz6daJzrmof7zkGGEVLwVwMXAYMaPX6n1p9vZSW7ZEupuWKpYhEGJUzEelMv6Fl7FZ6q2ONBP9fZGZxQFKr1+pafd3c6nkzn77yv/c+dA4w4KvOufHBxyDn3Mflbs/h/Cb2soKWK20H8snvMygFwDlXQsuVvGXAj4K3UPdmwD9b/V5GOeeuaPV669/PmbRcpZwIFB7kuDoRCQMqZyLSaZxz5cCztBS0j33If8vN2UDiIXz0uWYWFxyHNhgoBl4DrjOzRPhkRmV6Wx8CzAemmVlOcHD9hUD+Ac55GjjOzM78+ICZTTWz0Xu970NaChNmNhEYFPy6N1DtnJsH3PPxe4BdQEbw6/eA44O3awmOUxu+d5Bgue3nnHsDuA3IBLocIL+IhBn9jUpEOtu9wI2tnj8GvGhmS4BXObSrWhtoKVZdgWudc7Vm9ntabn0uNDMDAsA5bX2Ic26Lmd0OvEHL1aqXnXMvHuCcmuAkhN+Y2W+ABlpuLd4MtJ6d+mdabrOuoOU2a0nw+BjgHjNrDp57XfD4o8CrZvaRc+5kM5sJ/DE4fg5axqCV8GnxwDwzywzmv885V9lWfhEJP+bc3ncDRERERMQX3dYUERERCSMqZyIiIiJhROVMREREJIyonImIiIiEEZUzERERkTCiciYiIiISRlTORERERMKIypmIiIhIGPl/l9iNeWeBv+kAAAAASUVORK5CYII=\n",
- "text/plain": [
- "<Figure size 720x720 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "import numpy as np\n",
- "from sklearn.cluster import KMeans\n",
- "from sklearn.metrics import silhouette_score\n",
- "import matplotlib.pyplot as plt\n",
- "\n",
- "plt.rcParams['figure.figsize']=(10,10)\n",
- "plt.subplot(3,2,1)\n",
- "\n",
- "x1=np.array([1,2,3,1,5,6,5,5,6,7,8,9,7,9]) #初始化原始数据\n",
- "x2=np.array([1,3,2,2,8,6,7,6,7,1,2,1,1,3])\n",
- "X=np.array(list(zip(x1,x2))).reshape(len(x1),2)\n",
- "\n",
- "plt.xlim([0,10])\n",
- "plt.ylim([0,10])\n",
- "plt.title('Instances')\n",
- "plt.scatter(x1,x2)\n",
- "\n",
- "colors=['b','g','r','c','m','y','k','b']\n",
- "markers=['o','s','D','v','^','p','*','+']\n",
- "\n",
- "clusters=[2,3,4,5,8]\n",
- "subplot_counter=1\n",
- "sc_scores=[]\n",
- "for t in clusters:\n",
- " subplot_counter +=1\n",
- " plt.subplot(3,2,subplot_counter)\n",
- " kmeans_model=KMeans(n_clusters=t).fit(X) #KMeans建模\n",
- "\n",
- " for i,l in enumerate(kmeans_model.labels_):\n",
- " plt.plot(x1[i],x2[i],color=colors[l],marker=markers[l],ls='None')\n",
- "\n",
- " plt.xlim([0,10])\n",
- " plt.ylim([0,10])\n",
- "\n",
- " sc_score=silhouette_score(X,kmeans_model.labels_,metric='euclidean') #计算轮廓系数\n",
- " sc_scores.append(sc_score)\n",
- "\n",
- " plt.title('k=%s,silhouette coefficient=%0.03f'%(t,sc_score))\n",
- "\n",
- "plt.figure()\n",
- "plt.plot(clusters,sc_scores,'*-') #绘制类簇数量与对应轮廓系数关系\n",
- "plt.xlabel('Number of Clusters')\n",
- "plt.ylabel('Silhouette Coefficient Score')\n",
- "\n",
- "plt.show() "
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## 如何确定K\n",
- "\n",
- "利用“肘部观察法”可以粗略地估计相对合理的聚类个数。K-means模型最终期望*所有数据点到其所属的类簇距离的平方和趋于稳定,所以可以通过观察这个值随着K的走势来找出最佳的类簇数量。理想条件下,这个折线在不断下降并且趋于平缓的过程中会有斜率的拐点,这表示从这个拐点对应的K值开始,类簇中心的增加不会过于破坏数据聚类的结构*。\n",
- "\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 21,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "%matplotlib inline\n",
- "import numpy as np\n",
- "from sklearn.cluster import KMeans\n",
- "from scipy.spatial.distance import cdist\n",
- "import matplotlib.pyplot as plt\n",
- "\n",
- "cluster1=np.random.uniform(0.5,1.5,(2,10))\n",
- "cluster2=np.random.uniform(5.5,6.5,(2,10))\n",
- "cluster3=np.random.uniform(3,4,(2,10))\n",
- "\n",
- "X=np.hstack((cluster1,cluster2,cluster3)).T\n",
- "plt.scatter(X[:,0],X[:,1])\n",
- "plt.xlabel('x1')\n",
- "plt.ylabel('x2')\n",
- "plt.show()"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 22,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "<Figure size 432x288 with 1 Axes>"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
- "source": [
- "K=range(1,10)\n",
- "meandistortions=[]\n",
- "\n",
- "for k in K:\n",
- " kmeans=KMeans(n_clusters=k)\n",
- " kmeans.fit(X)\n",
- " meandistortions.append(\\\n",
- " sum(np.min(cdist(X,kmeans.cluster_centers_,'euclidean'),axis=1))/X.shape[0])\n",
- "\n",
- "plt.plot(K,meandistortions,'bx-')\n",
- "plt.xlabel('k')\n",
- "plt.ylabel('Average Dispersion')\n",
- "plt.title('Selecting k with the Elbow Method')\n",
- "plt.show()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "从上图可见,类簇数量从1降到2再降到3的过程,更改K值让整体聚类结构有很大改变,这意味着新的聚类数量让算法有更大的收敛空间,这样的K值不能反映真实的类簇数量。而当K=3以后再增大K,平均距离的下降速度显著变缓慢,这意味着进一步增加K值不再会有利于算法的收敛,同时也暗示着K=3是相对最佳的类簇数量。"
- ]
- }
- ],
- "metadata": {
- "jupytext_formats": "ipynb,py",
- "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.9"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
- }
|