Skip to content

Instantly share code, notes, and snippets.

@y-uti
Last active March 9, 2019 00:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save y-uti/445cb172ab61d5358864111ee6676e9f to your computer and use it in GitHub Desktop.
Save y-uti/445cb172ab61d5358864111ee6676e9f to your computer and use it in GitHub Desktop.
社内勉強会でロジスティック回帰について説明したスライドに対応する Notebook ファイルです。
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# ロジスティック回帰分析"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"動作確認環境"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Python: 3.7.2 (default, Jan 2 2019, 17:07:39) [MSC v.1915 64 bit (AMD64)]\n",
"matplotlib: 3.0.2\n",
"numpy: 1.15.4\n",
"pandas: 0.24.0\n",
"sklearn: 0.20.2\n",
"seaborn: 0.9.0\n"
]
}
],
"source": [
"# import sys\n",
"# import matplotlib, numpy, pandas, sklearn, seaborn\n",
"\n",
"# print('Python: {}'.format(sys.version))\n",
"# for module in [matplotlib, numpy, pandas, sklearn, seaborn]:\n",
"# print('{}: {}'.format(module.__name__, module.__version__))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 準備"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notebook 上でグラフを描画するための設定"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"必要なモジュールをインポートする"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import pandas as pd\n",
"import seaborn as sns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Iris データセットを読み込む"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.datasets import load_iris\n",
"\n",
"iris = load_iris()\n",
"\n",
"# print(iris.keys()) # dict_keys(['data', 'target', 'target_names', 'DESCR', 'feature_names', 'filename'])\n",
"# print(iris.feature_names) # ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']\n",
"# print(iris.target_names) # ['setosa' 'versicolor' 'virginica']\n",
"# print(iris.data.shape) # (150, 4)\n",
"# print(iris.target.shape) # (150,)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"読み込んだデータセットを Pandas のデータフレームに変換する"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"df = pd.DataFrame(iris.data, columns=iris.feature_names)\n",
"df['species'] = iris.target"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"データの分布の様子を確認する"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 765.375x720 with 20 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"sns.pairplot(\n",
" df,\n",
" vars=['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)'],\n",
" hue='species',\n",
" diag_kind='hist');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"この後の説明用にデータセットの一部を抽出する\n",
"\n",
"- 二値分類とするため versicolor (1) と virginica (2) のみ利用する。setosa (0) は利用しない\n",
"- 説明を簡単にするため特徴量を二つだけ利用する。sepal length と sepal width を用いる\n",
"- verisicolor を 0, virginica を 1 としてラベルを振りなおす"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"df_binary = df[df['species'].isin([1, 2])]\n",
"features = df_binary.loc[:, ['sepal length (cm)', 'sepal width (cm)']].values\n",
"labels = df_binary.loc[:, 'species'].values - 1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"抽出したデータセットの分布を確認する (この後も何度も使うので関数にしておく)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"def plot_dataset(features, labels):\n",
" plt.figure(figsize=(6, 6))\n",
" plt.xlabel('sepal length (cm)')\n",
" plt.ylabel('sepal width (cm)')\n",
" sns.scatterplot(x=features[:, 0], y=features[:, 1], hue=labels)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_dataset(features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## scikit-learn のロジスティック回帰を試す"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"サンプルデータを学習する"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,\n",
" intercept_scaling=1, max_iter=100, multi_class='warn',\n",
" n_jobs=None, penalty='l2', random_state=None, solver='lbfgs',\n",
" tol=0.0001, verbose=0, warm_start=False)"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from sklearn.linear_model import LogisticRegression\n",
"\n",
"clf = LogisticRegression(solver='lbfgs')\n",
"clf.fit(features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"学習したパラメータを確認する"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"coef_ = [[1.5890194 0.40894657]], intercept_ = [-11.10589861]\n"
]
}
],
"source": [
"print('coef_ = {}, intercept_ = {}'.format(clf.coef_, clf.intercept_))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"データセットに決定境界を重ねて描画する。関数の処理は以下のとおり\n",
"\n",
"- まずサンプルデータを描画する\n",
"- サンプルデータが存在する範囲を (xmin, ymin), (xmax, ymax) に求める\n",
"- その範囲を x, y 方向それぞれ resolution 等分して格子点を得る\n",
"- classifier を利用して各格子点の座標を 0, 1 に分類する\n",
"- 0.5 を等高線のレベルとする等高線プロットを描くことで決定境界を描画する"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"def plot_dataset_with_boundary(classifier, features, labels, resolution=400):\n",
" plot_dataset(features, labels)\n",
" xmin, ymin = np.min(features, axis=0)\n",
" xmax, ymax = np.max(features, axis=0)\n",
" X, Y = np.meshgrid(np.linspace(xmin, xmax, resolution),\n",
" np.linspace(ymin, ymax, resolution))\n",
" Z = classifier.predict(\n",
" [[x, y] for x, y in zip(X.flatten(), Y.flatten())]).flatten().reshape(X.shape)\n",
" plt.contour(X, Y, Z, levels=[0.5], colors='k')"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYwAAAF3CAYAAAC2bHyQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzs3Xd4W+X1wPHvqy3vmekMJ07SDDIghECAsEcZhRYoYTVASylQCm2B0jbQwo/RUkopdDFaaKFQ9k4gUAoFAiEJGSUDQkISZ9qOl2xtvb8/rpxYw7ZsS5Ysn8/z6In1+tXVsezo6N733nOU1hohhBCiK6Z0ByCEEKJ/kIQhhBAiIZIwhBBCJEQShhBCiIRIwhBCCJEQSRhCCCESIglDCCFEQiRhCCGESIgkDCGEEAmRhCGEECIhlnQHkExlZWV69OjR6Q5DCCH6jeXLl9dqrcsTmZtVCWP06NEsW7Ys3WEIIUS/oZTakuhcOSQlhBAiIZIwhBBCJEQShhBCiIRk1RpGPH6/n+rqajweT7pD6ZDD4aCiogKr1ZruUIQQokNZnzCqq6vJz89n9OjRKKXSHU4MrTV1dXVUV1dTWVmZ7nCEEKJDWX9IyuPxUFpampHJAkApRWlpaUbvAQkhBAyAhAFkbLJok+nxCSEEDJCEkW6LFi1iwoQJVFVVceedd6Y7HCGE6BFJGCkWDAa58sorWbhwIWvXruWJJ55g7dq16Q5LCCG6LesXvbvrhU+2c9frG9jR4GZYkZPrTpzAGTOG93h7S5cupaqqijFjxgBw7rnn8uKLLzJp0qRkhSyE6C98reBtBqUgt9z4tzeCAXDXgQacRWCxJyXMjsgeRjsvfLKdG59bw/YGNxrY3uDmxufW8MIn23u8ze3btzNixIh99ysqKti+vefbE0L0Uy018PpP4ffT4a8nwub/gr+159tzN8DqJ+DPR8AfD4El90Pr3uTFG4ckjHbuen0Dbn8wYsztD3LX6xt6vE2tdcyYLHILMcAEfLD0AVj+NyNJ7N0Ej53Zuzf4+i3w4lXg2g3uenjrFtj2UfJijkMSRjs7GtzdGk9ERUUF27Zt23e/urqaYcOG9Xh7ItaGDRt45JFHcLt7/nsSIqW8jbDulcixUAB292I9c8OrsWNrnoagr+fb7IIkjHaGFTm7NZ6Igw8+mM8//5zNmzfj8/l48sknOf3003u8PRFr9erVXHzxxdx+++3pDkWI+Kw5MHhK7Hjx6J5vc/iBsWMVM8GUuooRkjDaue7ECTit5ogxp9XMdSdO6PE2LRYL999/PyeeeCITJ07knHPOYfLkyb0NVbTzjW98g0MOOYSnnnoq3aEIEZ8tF469CYrD1RyUgjnXGAvfPTX8IPjKqfvvV8yCKWf1fiG9E3KWVDttZ0Ml8ywpgK9+9at89atfTUaIIg6TyURlZSX19fXpDkWIjhWNgEtfB6/LOJvJng+Owp5vL7ccTr8PTroDdAhseZBblrx445CEEeWMGcN7nSCEECKuvMHGLVlySoxbH0lZwlBKOYB3AXv4eZ7RWt8cNece4Ojw3RxgkNa6KPy9ILAm/L2tWms58C86pJRix44dNDQ0UFRUlO5whMhKqVzD8ALHaK2nAdOBk5RSs9tP0Fpfq7WerrWeDtwHPNfu2+6270myEF2ZP38+LpeL2267Ld2hCJG1UpYwtMEVvmsN32IvSthvHvBEquIR2e2EE05g2LBhso4hRAql9CwppZRZKbUS2AMs1lrHvapEKTUKqAT+3W7YoZRappT6UCl1RirjFNlBLogUIrVSmjC01sHw4aYKYJZSKs6JyACci7HG0f4y65Fa65nAecDvlFJj4z1QKXVZOLEsq6mpSWr8Qggh9uuT6zC01g3Af4CTOphyLlGHo7TWO8L/bgo/dkYH235Aaz1Taz2zvLwX5zSn0CWXXMKgQYOYMqWjfCmSRT40CJE6KUsYSqlypVTbGU9O4DhgfZx5E4BiYEm7sWKllD38dRkwB+i3NcHnz5/PokWL0h1G1ps7dy4vvfQS//3vf9MdihBZKZV7GEOBt5VSq4GPMdYwXlFK3aKUan/W0zzgSR1ZpW8isEwptQp4G7hTa903CWP1U3DPFPhFkfHv6t5fPXzkkUdSUtJ350oPVDfddBMAmzZtSnMkQmSnlF2HobVeTZzDSFrrm6Lu/yLOnA+AA1IVW4dWPwUvXw3+cBG7xm3GfYCp5/R5OKJ7bDZbukMQIqtJLan23rplf7Jo43cb46LfiFdSXgjRe5Iw2mus7t64yCh5eXkopXjsscckaQiRApIw2ius6N64yCjl5eVce+21vPXWW2zZsiXd4QiRdSRhtHfsTWCN6n1hdRrjvTBv3jwOPfRQNmzYQEVFBQ8//HCvtic6Nm3aNABCoVCaIxEi+0i12vbaFrbfusU4DFVYYSSLXi54P/GEVDwRQvR/kjCiTT1HzogSQog45JCUyCpWq9GeUi7eEyL5JGGIrHLqqadSVVXFrbfemu5QhMg6AyJhZPoplpkeX3+Sn5/PUUcdhdvt7nqyEKJbsj5hOBwO6urqMvZNWWtNXV0dDocj3aEIIUSnsn7Ru6Kigurq6oyuYupwOKiokGs9kqm5uZlQKITJlPWfiYToM1mfMKxWK5WVlekOQ/ShGTNm8NBDD/HrX/+an/zkJ+kOR4isIR+/RNb53ve+x/Dhw/nkk0/SHYoQWUUShsg6Siny8/PTHYYQWUcShhBCiIRIwhBZKxAIpDsEIbKKJAyRlYYNG8Zrr73GunXr0h2K6C2/G5p3QtNO8DanO5oBTRKGyEq/+93v8Hg8vPXWW+kORfRGaz189Gf4/YHwuynw+k+hpTbdUQ1YkjBEVho6dGi6QxDJUL8Z3vwF+FshFIAVf4cNCyFDL8TNdpIwhBCZa/M7sWMbXoOAlH5JB0kYIiu1XeG9atWqNEciemXE7NixMUeBWUrppIMkDJGVSkpKOOOMM3jooYfYvHlzusMRPVU+HmZfCSazcX/8STDl6yAlX9Ii60uDiIHrwgsv5IUXXqCpqSndoYieyimFo26Ew64CHQJrLuQUpzuqAUsShshaSql0hyCSwZFv3ETayX6dEEKIhEjCEFlv165d6Q5BiKwgCUNkrYMPPpjCwkJ+9KMfpTsUIbKCJAyRtSoqKrjwwgvZunVrukMRIitIwhBZzWq1pjsEIbKGJAyR9TK1n7sQ/Y0kDJHViouLcblcPPfcc+kORYh+TxKGyGo//OEPGTRoEH/961/THYoQ/V7KEoZSyqGUWqqUWqWU+lQp9cs4c+YrpWqUUivDt2+3+963lFKfh2/fSlWcIrvl5uYycuRIOSwlRBKk8kpvL3CM1tqllLIC7ymlFmqtP4ya9y+t9VXtB5RSJcDNwExAA8uVUi9pretTGK8QQohOpGwPQxtc4bvW8C3Rj3knAou11nvDSWIxcFIKwhRCCJGglK5hKKXMSqmVwB6MBPBRnGnfUEqtVko9o5QaER4bDmxrN6c6PCZEt9ntdpYvX05trXRqE6I3UpowtNZBrfV0oAKYpZSaEjXlZWC01noq8CbwaHg8XtW4uHsnSqnLlFLLlFLLampqkhW6yCI33XQTu3fv5h//+Ee6QxGiX+uTs6S01g3Af4g6rKS1rtNae8N3HwQOCn9dDYxoN7UC2NHBth/QWs/UWs8sLy9PatwiOxx55JEAeL3eLmYKITqTyrOkypVSReGvncBxwPqoOe0bL58OrAt//TpwglKqWClVDJwQHhNCCJEmqTxLaijwqFLKjJGYntJav6KUugVYprV+CbhaKXU6EAD2AvMBtNZ7lVK3Ah+Ht3WL1npvCmMVA0B9vZxkJ0RvqGw6P33mzJl62bJl6Q5DZBitNTNmzGDDhg1s3LiR4cPl/Akh2iillmutZyYyV670FllPKcUvf/lLPB4PX375ZbrDEaLfkoQhBoScnJx0hyBEvycJQwghREIkYYgBxefzpTsEIfotSRhiQKioqEApxR133JHuUITotyRhiAFh4sSJfOc732Hx4sXpDkWIfksShhgwhgwZku4QhOjXJGEIIYRIiCQM0W/5AkH2NHnYureVmmYPoVDnF6GazWYA1qxZ0/Ek1x6o3wJNO8Hv7nheSx00bIOmHeB1dTxPiCwiCUP0S75AkKWb93L8Pe9y5K/f5vT732djTedv3BdeeCG5ublcf/318Sc0bIVHToF7p8J9B8LaF+MnA9du+Nd58LspxtwP7odWKTsisp8kDNEv1bf6+d5jK2h0+wHY2ejh+//8hDpXxxVpKysrOfjgg2lpaYn9pqcRXrsOaj8z7vtb4cUrjPH2Aj5Y8ifYGm4cGfTDO3dA885k/FhCZDRJGKJfcvuDNHsDEWMbdjcT6OKwlFLxWq0Afg/sWBE5FgoaexMR81pg6wexj9/VyWEuIbKEJAzRL+VYzZTm2iLGZowowmruICF0xZYDo4+MHDPbID/qzCpbPow7Mfbxww/s2fMK0Y9IwhD9UkmujUcvmcWoUqNG1AHDC/n9vBmU5Nq7fOz27dsJBCL3TrDnw4n/B5Vzjfv5Q+G8f4GzOHKe2QIHXQRTzgKT2fj+1/4AeYOS8WMJkdGkvLnot7TW1Lp8BEMhbBZTQsnij3/8I1deeSX33XcfV111VeyE1noIeECZILfMSArxeJrA1wJKgbMELLb484TIcFLeXAwISinK8+0MKXQmlCwArrjiCgB27uxgkTqnGAqGQv7gjpMFgKMgPG+IJAsxYEjCEAOOxZLKRpNCZC9JGGJACgaD6Q5BiH5HEoYYcMrLy3nsscdoaGhIdyhC9CuSMMSAc9ddd7F9+3Y+/PDDdIciRL8iCUMMOGPHjk13CEL0S5IwhBBCJEQShhhw2sqDrFu3Ls2RCNG/SMIQA8706dOZPHkyCxYskB7fQnSDJAwx4Njtdi666CJaWlrw+/093o7f00rA13F13LQL+MEtZddF8sgVTGJA6rBqbQK8rnpMNWuxLv0zgZxBBOf8AAqGYc6kCwKbdsLyR2DnJzDhVBh/QmwhRSG6KYP+woXoH0w7P8H6+JlA+D/Q2mcJXr4ECoemNa59mnbAUxdCdbiu2mevw6FXwdwbjJImQvSQHJISA1pjY2PXk9rxuuqxLvl95KC7nsDWpUmMqpf87v3Jos3yv4G3OT3xiKwhCUMMSIcffjgmk4lrrrmmW49TJjMhW27suD0vWaH1ninOgQNrTt/HIbKOJAwxIB166KEce+yxbNy4sVuPs+UUEDrqp2BpVx23fAKmIVOSHGEvWJxwwDmRY8f8HHJK0xOPyBqyhiEGLIfD0aPH6eIxBK9YRmD9QsgbhHn0YVgKBic5ul7IHwTH3wLTzzfazlYdZyx4W3v28wrRRhKGGNB60kDManeCfSTmw76bgoiSpGCocRt7VLojEVkkZYeklFIOpdRSpdQqpdSnSqlfxpnzQ6XUWqXUaqXUW0qpUe2+F1RKrQzfXkpVnGLgKigoYPXq1axcuTLdoQjRL6RyDcMLHKO1ngZMB05SSs2OmvMJMFNrPRV4Bvh1u++5tdbTw7fTUxinGKBuv/12QqEQjzzySLpDEaJfSFnC0AZX+K41fNNRc97WWreG734IVKQqHiGijRw5kuLiYkKhULpDEaJfSOlZUkops1JqJbAHWKy1/qiT6ZcCC9vddyillimlPlRKnZHKOIUQQnQtpYveWusgMF0pVQQ8r5SaorX+X/Q8pdQFwExgbrvhkVrrHUqpMcC/lVJrtNZfxHnsZcBlYHxiFEIIkRp9ch2G1roB+A9wUvT3lFLHAT8DTtdae9s9Zkf4303hx87oYNsPaK1naq1nlpeXJz94kdWsVitLliyRqrVCJCCVZ0mVh/csUEo5geOA9VFzZgB/wUgWe9qNFyul7OGvy4A5wNpUxSoGrmuvvZZly5bxxhtvpDsUITJeKvcwhgJvK6VWAx9jrGG8opS6RSnVdtbTXUAe8HTU6bMTgWVKqVXA28CdWmtJGCLpTjvtNADcbneaIxEi86VsDUNrvZo4h5G01je1+/q4Dh77AXBAqmITQgjRfXKlt8g4zR4/Lm+AVl+QfIeFslw7JlPP+1ck9JzNqank6mvag9nfAiiC1lxsBR2ss7XWg68Zgn6w50PeoJTEE8PvBU89eJrAkQ+OIrA6Y+eFgtBSC94msOUaMdrz426yptmLyxvAbjGRazdT6LT1LsbWveBzQSgAtnzIk7XKdFE9KY2QqWbOnKmXLVvW9USRsZrcfv6+5Et+u/gzQhoG5dt56ruHMrostkJsMjQ2NjJmzBhyc3PZuHEjNlsv39zaCTTtxvT0RZi2fQhAcMzR6DMewFIQlQxaamHh9fC/Z437gyfDBc9DforrU4WCsHUJ/PMc8LWAxQFnPwpjjwFL1OtQsx4eOcWI1WSGE243alU5IpPGjgY38x78kC11xuVV3zpsNNccO47i3B6+ri218PK1sD58tHroNDj/acjLoNpd/ZxSarnWemYic6VarcgojW4/v3nDSBYAe5q93PzypzS5e95KtTOFhYX85Cc/Ydu2bezduzep2w6ufWVfsgAwb3qb4OZ3YyfWbNifLAB2fwofPwjBQFLjidFSC89+20gWAAEPPP9dcEe9Dq118NLVxnwwEs3rN4KvKWKa2xfkd29+ti9ZADz6wZfsafb0PMZda/YnC4Cdq2DFY0YMos9JwhAZZU9zbI/sz3c14wmk7g0iPz/+oZXeCIVC2Hd+HDNu3vFJ7OTdMZcmwY5PIJDihfhQAJp3Ro55GiAYdYpx0G8ktfZ0CNwNEUNuf5D1u2IP7W2qael5jDtXxY7tWA7BDO6lnsUkYYiMUlHsxGGN/LM8YfIQChzWNEXUMyaTCd/kc2LG9aSvxU4ee0zs2AFnd7hGkDQWOww/MHKsbJxxaKo9Wx5MiLqEylEY01+jwGHhqwdEtqk1mxRTK4p6HuP4E2PHDvimNIRKE0kYIqMU51h58rLZTBicT47NzNkHVXDV0VU4rOaUP3fS1/OGTsN//O2QWw75Q/B/9XeESsbGzssbDOf8A4pGgrPY6L097vjkxhJPbhmc/XcjYVmdMGoOnPd07IK7Pc/orzHlbOONeug0+NYrMQnDYjZxzswKLp4zmny7hcqyXB69+GCKc3qR7POHwTcehsIKyCmBo38OlUf0fHuiV2TRW2SkWpeXUEiTa7eQa0/tyXwvvvgiZ5xxBj/84Q+5++67k7rtgN+Hbq0DFKacUszWDt48Q0ForTXKczqLIjv6pZq7HgJeMNshp7jjeV6XcbaSyWIkm4425wvS7PGjlKIsz4ZSvTzDLRgEd5pemwGgO4vekjDEgKe1Zu7cuezcuZPPP/883eEI0afkLCkhukEpxYgRI9IdhhAZTxKGEEKIhEjCEALjrKbt27dTU1OT7lCEyFiSMIQAvvOd7+B2u7ntttvSHYoQGavL00+UUjOBI4BhgBv4H/Cm1jq5l8UKkUZHHnkkFRUVNDU1dT1ZiAGqwz0MpdR8pdQK4EbACWzAaLV6OLBYKfWoUkpa3Ims0evTP4XIcp3tYeQCc7TWcesTKKWmA+OArakITAghRGbpMGForf/Q2QO11iuTH44Q6bVz586uJwkxQHW56K2UqlRK/VYp9ZxS6qW2W18EJ0RfOuGEE1i0aBFvvfVWcjfsbgBPY3K3mQCvuwV3wx78SepXHvR7CTZsJ9Da0PVkkZUSqbnwAvAw8DIQSm04QqTPjTfeyMMPP8zWrUk6yupphl2r4J1fgTLDMT+DQZOMBkQpFmzcgfmdu7DvWolv3FfxH/QtrNF9OLoh1LwL06onUOteQpdNQB91I6p4VBIjFv1BIgnDo7X+fcojESLNLJYk16xq+NJoOtRm8ztw5UdQNj65zxPF27gb+2NnGk2PANuOFQSaqvEcdyuO3IJuby/ocWFa8gfUB8bbgNq+Ara8T+jiRZgKhyc1dpHZErkO416l1M1KqUOVUge23VIemRBpkpT6alrD0oeixkKw8oneb7sLZn/LvmTRxrLmCcyBnvWlUJ561Kp/Rg42bEV55NDUQJPIR6oDgAuBY9h/SEqH7wuRNfLz8zGbzTz88MPMnz8fk6kX17UqBUVx6lPFG0s2iw2UyUhQbXLK9nUx7C6NMkq0t3XcayM9KQacRP5HnAmM0VrP1VofHb5JshBZp6SkhBtuuIEPPviAzZs3936D08+HgnaHbIorYcIpHc9PEr85F/8hV+4fUCZ8J92FOa+8R9szF1WgT7zDKGsepqfNI2Rx9jZU0c8ksoexCijCuGhPiKw2ceJEIEmHpQqGwmVvw65PwWQyFryjmxOlgDO/GM+hP4Bp8wju2YBlxIEErMXk9GKNJjh0OubvL4dtS6G0Cp0/FHPBkCRGLfqDRP6CBgPrlVIfA/sa6WqtT09ZVEJki7zBUDW4z5/WUVgOheVYh04GEvuP3hlLTrHRXKl4NAByTfzAlMjf0c0pj0IIIUTGSyRhbAV2aq09AEopJ8ZehxBZx2432n8uXryYqqqqNEcjRGZJZNH7aSIv2AuGx4TIOqeeeiqTJk3izjvvTHcoQmScRBKGRWu9r7ZA+Gtb6kISIn2cTidHHHEEXq+368lCDDCJJIwapdS+BW6l1NeA2k7mCyGEyEKJrGFcDjyulLo/fL8a40I+IbJWU1MTwWAQs9mc7lCEyBhd7mForb/QWs8GJgGTtdaHaa2/SH1oQqTH7Nmzcbvd3HLLLekORYiM0lnHvQuUUvu+r7V2aa2b231/rFLq8FQHKERfmz9/PqNGjWLt2rXpDkWIjNLZIalS4BOl1HJgOVADOIAqYC7GOsZPOnqwUsoBvAvYw8/zjNb65qg5duDvwEFAHfBNrfWX4e/dCFyKcVbW1Vrr13vw8wnRI7m5qS9BLkR/01nHvXvD6xbHAHOAqYAbWAdcqLXuqmmAFzhGa+1SSlmB95RSC7XWH7abcylQr7WuUkqdC/wK+KZSahJwLjAZGAa8qZQar7UO9vDnzHpuX4BGd4AtdS0ML3ZS6LSS77D2aps7G91U73WTazdTmmdncIEj7rxal5fdjR4ABhc6KMuz9+p5fc21mDwNhJr3YCqthJxSLNY4J+Z5msDTAA3boKQSHEVgiy2I521txuJrIli3CXPxSAK2Qux5Rb2KMemadhjF/fwtUDgSOigb3tDqY2+Lj7oWH6NKcijNtWE2xx4o8LrqsXgbCTZsw1w2hqC9CJsjThL0tYC7Huq3QNFIcBaBPT/ZP118rj3QuB3MFsgfYhQ4jKelFly7IOCDwoo+Ka/SLX5P+DXcDPnDjNfQGefvKxSElhqo/xJySiCn1Lj1I50ueoffoBeHb92ijWI8rvBda/gWXaDna8Avwl8/A9yvlFLh8Se11l5gs1JqIzALWNLdOAaCUEizfEs9Fz/yMf6g8RLfdNokvjlzBLn2nhWF2La3lbP+/AG7m4zTSw8bW8pvz5nGkMLIgnO1zV7Of+gjNuw2jlaOH5zH49+eTXl+z5KGt7kW09u3YVnxV2PAnk9g/usQLnGxf2ILrPwnLLrBuG+ywPlPQ+VcMO1fqA4G/Ji2vo/5qfMxhwKgFMETf4Nv2jxszs73InxJ6lTXpcYd8Ny3Ycv7xv2C4XDJIuMNvJ36Fh+3v7aOp5dXG9McFp674jCqBkW+wftaGlErHsH8719gBjDbCJ33LLrycFT7CrxBP3zxNjx9kfFmphSc/geY8nWwpriwYPMu+NvJsHeTcX/YDDjvqdhk4KqBf50P2z4y7heNgkteN+p0ZYpdq+HR0yBgfGjiqBth9hXgiOo9Uv8lPHSskVwAppwFJ/8acvtP0uhF/eauKaXMSqmVGIULF2utP4qaMhzYBqC1DgCNGIfC9o2HVYfHRBy1LV6uf2b1vmQBcOdr62n2+Hu0vRaPnz/+Z+O+ZAHwwRd1fL7HFTN30ae79iULgM92u1j0v573xTZ7G7G2JQsAbzOW16/H21QXOdHbCIsX7L8fCsCLV0Fr5BnfoZZarK9cbXwfQGtsb/4Mk7fzlqkjR45k4cKFrFq1qsc/S8J2rdqfLACatsMH9xuf/tvZ2+LblywAmjwBbn1lLY3uyN+z2e/C9p9b9w8EfVhf/QH+5qj6oa118PL3jWQBRg+PhdcZLWVTKRSCFf/YnywAdnwCX74fO3f7x/uTBUDDFvj4wf2/z3Rz1cBL39+fLMDosOhtjpznaYY3FuxPFgD/e8bYc+pHUpowtNZBrfV0oAKYpZSaEjUlXg0z3cl4DKXUZUqpZUqpZTU1Nb0LuL/SsKvJEzHkC4bwBXpWcdXtD1Fd744Z/7I2tgHP57tjk8hnu5tjxhKlW+piBxu2Qijq037AB8GoseadxpteOwoNLVFvlAFP7GOj3Hvvvfj9ft55551EQ++5uk2xY/WbwRf5O6hxxV5MWF3vxheIPFKrA579SaBNw9bY/+w6BK17I8d8Lal/M9ZBqN0QOx53LM4JmbWfGXtHmUAHoXFb1FgI/FH/fwIeaIxzFL+55x+u0iGlCaON1roB+A9wUtS3qoERAEopC1AI7G0/HlYB7Ohg2w9orWdqrWeWl/es3n9/57CaOXFyZKnpMWW5OG09u4agLN/O12dE7tBZTIojxsW+vmcdVBEzds7MnjcJUkUjjLWIdvyTz8acUxw50ZYDZeMixyacHHMoJWSyExp7XOS8QRO77OVQVlbWrbh7ZcKJEYfRAJg2D/IiY6gsyyU36nd65ozhFOVEru9oa+6+qrJtQhO/RsgStQZlcUDlkZFjw2ak/nCU2QoHzY8cUwomnRE7d8LJRjOo9g66OPUxJsqeD5O/HjlWMCx2HchZYvxO27PmGCXv+5EuE4ZSyq6UOk8p9VOl1E1ttwQeV66UKgp/7QSOA9ZHTXsJ+Fb467OAf4fXPl4Czg0/dyUwDlia+I81sBQ4rdzytSlcOHsUI0qcnDxlCP+4dFaP1xEA5owr4+bTJjG2PI8DRxbxz+8cQklu7CL6qNIcHrzoICYPK2DS0AIeuPAgRpX1/AwjlVtG4OLXCY05GkrG4D/8etTs72GxRb3Z5Q2CC5433mSKRsHMS+HUe8BRGDHNll+KPu1+AtMvgqJRBCedSXDe09gKM6jS0BoMAAAgAElEQVR+pqMILnwBKmZC+QT46t0w6tCYaSW5Np67Yg6Hji1ldGkOPzx+POcdMhJr1KK3tXAIwQtfJDjhFCgejX/mdwideAe23KiF2JwS+PqDMOMC4zU84Bw495+Q2wfJcvAU+PpDxhvmsBlwwXPxF/rzh8BFL8LwA2HQRPjan4yvM4UtF469GWZfaSTp8SfD/Ndi12LMZph2Lhz3CygdC6MPh0vfgJw+/GCSBKqrRjFKqUUYawvLMU5xBUBrfXcXj5sKPAqYMRLTU1rrW5RStwDLtNYvhU+9/QcwA2PP4lyt9abw438GXAIEgGu01gu7+mFmzpyply1b1tW0rOX2BXF5/TitZvJ6eYYUgD8YoqbZi9mkOjxDqk1d+HBJSa4N47yF3vG69qICXkw5JVhsnSQ+TzMEWsGWH/cMqTY+dwt4m8CWgy2nsMN5bRobGykqKuK8887j8ccf78mP0H0N1UAI8oYYbVY7iq3Vhy+oKcqxxiSL9rwtDSi/G+UsxGrvpJ2qrxV8zWDNBXteL36AbtLaOANKqa6TVEudcagnp9RoRpVp/B5jXc3ijF3sbi8YAPdeMFmN/iIZQCm1XGs9M6G5CSSM/2mto9ceMtJATxgiuc4//3z++c9/smHDBsaPH5/ucIRIie4kjERS9QdKqQN6GZMQ/c7ZZ58NQEtL7GK/EANRhyfpK6XWYJyZZAEuVkptwrgYT2FcZjG1b0IUIj2ScWhNiGzS2VVdp/ZZFEIIITJeh4ektNZbtNZbgP9r+7r9WN+FKER6bd3aVRUcIQaGRNYwImoyKKXMGMUChchqs2fPpqysjB//+MfpDkWIjNBZefMblVLNwFSlVFP41oxR5uPFPotQiDQZPHgw559/Pjt39q+rcYVIlc4OSd2htc4H7tJaF4Rv+VrrUq31jX0YoxBpY7H0rHijENmos7Ok2i6nfLrd1/torVekLCohMkgoFEp3CEJkhM4+PrVdye0AZgKrME6pnQp8BEi3vSwXCIaob/VhMilKczu+2lprTV2LUcyvNElXeieq2ePH7Q+Sb7fgtHX859zqDeDyBXBazZ32CfH6gzS6/dgtJgpzbJSXl+N2u3n88cc5//zz908MBsBdB8rSaXnqUEizt8UHKnmvTX2rD38wRLHThtWSgVc9p1PrXqMwobO406vlRc8kcqX3k8BtWus14ftTgB9rreenPrzukSu9k6e+xceLK3fwyAebKXBaWXDKJCYPLyAn6k25ye3n/S9quWfxZwBcc9x45lSVUejsfWmSrlTXt3LLy2v53/ZGjhhfzo9OGM+g/NgSJnuaPNz1xgbe+7yWaRVFLDhtEsOLYovX1bm8PPDuJl5ds5ORJTnc8rXJDMuzMG5cFVOnTmXhwnB1mta9Ri+OZQ8bb0wn3QlDDogpiNfo9vHOZ7Xc99bnmE2KH50wnkMqSyno4WvjDwb5Yk8LN730KTsa3Jw5YzjzDxtNaS8bVmWFgBdq1sPC641eG9POg4O/3a96TaRLskuDrAyXKO90LBNIwkiel1Zu5+onV+67bzYp/vPjoxhRElmTaE11A6fdH9nH4KUr5zB1RGo72tU0eznnL0vY3K7k+nETB/Hbc6ZHvCE3uv1c/cQK3vlsf5+McYPyeOKy2RGdAT3+IL95fQMPvbd531ih08ria4/ktOPnUlJSYiQMrWHl4/DilfuDMVvh+59AUWSV3uVb9vKNP0X2/Hrt6iOYNKyTWkOd2N3k4ejf/IdW3/7S5T88fhyXz63CNtD3NJp2wH0HRpYVP/5Wo5GRWdahOpPs0iDrlFIPKaWOUkrNVUo9iNGmVWSpJrefp5ZVR4wFQ5oPvqiNmfvM8u0xY08t3xYzlmytvkBEsgB4a/0ePP7IPhAefzAiWQB8vseF2xc5r8nj56VVkRX0G91+djdH9aBwNxgJo72gH7Z+GDEUCmme/Dj2dXjhk9jXK1Gba1sikoWxvR00uvuoM2Am27M2tgfF6ifBUx9/vuiRRBLGxcCnwA+Aa4C14TGRpexWE2PKY0uUjy6NHZswJLa66VeG9OwTdHfYLWZsUZVahxY4iF4iMCnFoKgy7w6rKeYTudVsitl7AiiOPnxkdUBJVWxAJaMjn9ek4r4OE4b0vF92vHL1I0pzsFt61vckqxQMix0rrjR6foik6TJhaK09Wut7tNZnhm/3aK09XT1O9F92i5nvzR3L0ML9/9mOGl9O1aDY5HDCpCFMGrr/jXHi0PyYZk6pUOCw8PNTJ+5LEDazibvOnhazOF+SY+Wus6ZiNRsTlYKbT5tMgTPyMEVxjo3/O2MKee16oF925BjynRacTidLly41rsewOmHu9UafhjYTTjHenKKcPm0o49q9ZlOGFzB3fM+bfJXk2pg3a/9hr0KnlZtOmdTjNZGskjcYpp67/35OCZxwa2wjI9ErHa5hKKWe0lqf064IYYRMLD4oaxjJVdPsYVejB6fNQkmulZIOzpSqdXmpCR+6Kc+3R6wNpFKzx0+TJ8CuBjfDi3ModMY/U8rtC9Do9rO93s2QIicFDkvcM6X8wRB7W3xsb3BTlmujwGmlKMfG+++/z+GHH86vfvUrrr/+emMdw7XHOG5uzwVnaYeLq7UuL3uavZgUlOfZe71A3dDqo8Htp77Fx/AiJ6W5Nsyd9MQYUFr3Gj2z3Q1GM6bcQZnZOyPDdGcNo7PVoB+E/5UihANUeb6D8jhnHUUry+u7JNFevsNKvsMa94yn9pw2I5EMKex8ntVsYnCBI6ZZ1KxZswDw+8N9pJWC/MHGrQvJfm2KcmwU5djiHh4c8HJKjJtImQ4Thta6rR7CscB/tdaf901IQgghMlEi55uNBi5QSo3CaNP6X4wEsrLTRwmRZWpqatIdghBplcii901a62OAKcB7wHUYiUOIAcFisTB79mz++Mc/8uWXX6Y7HCHSpsuEoZT6uVJqIfAGUAX8GKhIdWBCZAqlFAsWLMDv90tvDDGgJXJI6utAAHgVeAf4UE6rFQONwyHn8wuRyCGpAzEWvpcCxwNrlFLvpTowIYQQmaXLPYxwscEjgLkYVWu3YSx8CzHgeDyycy0GrkSuavkVkA/8HpiotT5aa31TasMSIrOMGjUKi8XCrbfeSlcFO4XIVl3uYWitT+mLQITIZGPHjuXyyy/n/vvvT3coQqSN1P0V8QWD0LIHti8zej6UjYe8QXGn7mp0s7q6EYADKgoZ2tEV1a49UPuZUb5h+EyjdIM59YXz6lxeGlr9rNhaz+RhBZTl2RlUEGcR29cKrXVQ/TEUj4aiURElP8rKyowvggForYHqZZBbBqXjIK+DGlGN22HHCjCZYeg0KBged1pts5fPdjfj8gaYNqKIsjw7ZlPqG1E1uf3UurysqW5k0rACBuXbKczJ8sZDrXXG76X2M6g4GHJKwR5bJy3pAl5oqTX+vgqGQUkl5Pa8tlg6SMIQ8TVtg78cCR4jETB0Gpz/TEzS2Nng5qw/L2F7g1Faelihg2evOCw2abj2wONnw87w9Z6OQrjsHeM/TQq5fQHeXLebG55ds2/sqmOquHROJcW5UW+Mu1bBI6dCKGDcn/wNOOU3seUmGrbAg0eBt9m4P3wmzHsyNmk0VsNDx0FzuGhC0Si4ZFFMZdXaZi8XPPwR63cZ2yt0Wnn1+4dTEad6bjJ5A0FeXbOTG5/b/9r85OSvcNHsUeTYs/Stwd0A/77NaH4FoExw3lMw9tjU152q2wgPHbu/DHvlXDjrr8aHjn5CKnOJWH43vPPr/ckCYOcq2LUmZuoLK7fvSxYAOxo9PL8iTs+H3Z/uTxZgbPvdX8f2MEiy+lY/dyxcHzH2l3e+iOkrQUstLLxhf7IA+PRZ8DTsu2u1GgULP37w2v3JAoy9sNoNsU++4u/7kwUYiebTF2KmrdzWsC9ZgNGH40/vfIEvEIyZm0yNrX5ufzWytc09iz+jyRPo4BFZwOfanywAdMjo0tca2+slqTyN8MaCyL/3ze8Yezr9SIcfI5RSLxOnSm0brfXpKYlIpF8wAK7dseOuPTFDu5u8ccbinEkU57E07zaaD1k7LwrYW81Rb4D+oCYQCkVOCgWNQxXRfPubNH3rW9/irrt+zc8e+5DFZ0fNa4kqGxIKGa1CY4KJHdsT3aQJ4zUMhDSpPDgU0uDyRb423kCIYDYv6gdiX2taao0KxKkU9Mf/+3LvTe3zJllnexi/Ae7u5CaylSMfZn8vcszqhMojY6Z+8+ARtD/UblJw7qyRsdscfXhsYph9OThS22zJbjFx8pTI/hwHjiyKbTrkLIaDovqCFYRLZIcNHz6cgw6aidsRtZZjy4URh0SOmUww8xIiOjqZzDD9vJgY544vxx7V0OmSwytj+qcnW47NzAmTIivuzh5TgtOaxQ2Z7PlQGtUA68ALU/53iLMEZn07aqwYBk1M7fMmWZc9vfsT6YeRRO4G2LoElvwBnEVwzM+heAxYIj/z1rf42Fjj4v5/b0RrzVXHjGPcoFyKo3tnBHxQvxn+faux6H3oVTDyUGPbKba7ycNjH27h/Y21TK0o4rtzx8RfmG+pg3UvwqonjUX+uTfE9Ok+7rjj8LS6eO/hn8GHfzIWLY/5ubFIbo7qsdFaB7vXwnu/NY6Vz70eSsdDTnHENK8/yJa6Vn7zxgaaPQG+O3cMB44s7pPGSLUuL/9YsoX/fl7DrMoSLj28MqGS9v1a0w74792wazVMOhOmntM36wite2Hjm7Dsr1BQAcf81FjXMqU3QXenH0aXCUMpNQ64A5gE7PtL0lqP6U2QqSAJIwXcDWCydHkWSZ3L2NXvskGQ12WsE/RBooh4Wn+QhlY/+Q5L5wu6oZCxbmF1xj1Udtxxx+HxeHjvvfeMxGe2GXsYnXHVGHsaXbwptXgDBEKawj7uoOcPhnB5AuTZLVgtA2RZ0+8BfyvYC/vkTL0I7now28GW2pMaEpWsBkpt/gbcDNwDHI3Rz7vL8/2UUiOAvwNDgBDwgNb63qg51wHnt4tlIlCutd6rlPoSaAaCQCDRH0gkWYJv7Al3kuuL0xfjPa3VzODCBN4YTKYum/Bs27YNn8+HzVnc6bx9OjrlNkpums5MsppNsWeMZTurw7ilQ6J/NxkokY8TTq31Wxh7I1u01r8AjkngcQHgR1rricBs4Eql1KT2E7TWd2mtp2utpwM3Au9orduvAh0d/r4kC5ERLrjgArZu3SoX8IkBKZGE4VFKmYDPlVJXKaXOBOJfwdWO1nqn1npF+OtmYB0Q/6olwzzgiQTiESJt5s+fj8VikWZKYkBKJGFcA+QAVwMHARcC3+rOkyilRgMzgI86+H4OcBLwbLthDbyhlFqulLqsO88nRCqZUn2BlxAZKpFaUh8DhPcyrg7vLSRMKZWHkQiu0Vo3dTDtNOD9qMNRc7TWO5RSg4DFSqn1Wut342z/MuAygJEj45zOKUQKBAJZfHGbEB1IpOPeTKXUGmA1Ri+MVUqpgxLZuFLKipEsHtdaP9fJ1HOJOhyltd4R/ncP8DwwK94DtdYPaK1naq1nlpf3r7oson8aOnQof//736mtTfHVwUJkmET2rf8KXKG1Hq21Hg1ciXHmVKeUUgp4GFintf5tJ/MKMXptvNhuLFcpld/2NXAC8L8EYhUi5e6++2727NnD0qVL0x2KEH0qkfP4mrXW+xomaa3fU0olclhqDsZ6xxqlVFsRoZ8CI8Pb+XN47EzgDa11S7vHDgaeN3IOFuCfWutFCTynECk3YsSIricJkYUSSRhLlVJ/wThkpIFvAv9RSh0I0HYmVDSt9XskcL2G1voR4JGosU3AtARiE0II0UcSSRjTw//eHDV+GEYCSeSaDBFHrctLSGtyrGbyHH17dW8iPP4gTR4/CkVJrq3X/RmCfj+qxShqGLTlY80p7HWMe1u8BEMau8XcJ6U0YP9ZUquWvs9XjzwIcso7Lo0d8BlX9iqMekLR5UOE6EcSOUvq6L4IZCDxBYKs29nMdc+sYktdKydMGsxNp02mPD/Bq6X7wN4WH3955wse/2grBQ4LC06bxBFVZT1ObL6mPVi3vodafBN4GlDTLyA05xpMBUO6fnAcoZBmU62LHz21irU7mzhsbCl3fmNqx82bkmha1XAOrBrML2+7nR/mvYD9tN/A6CNir2Jv3QufPGbUkjKZ4agbjR4bOf33Sl8xsCVyltRgpdTDSqmF4fuTlFKXpj607FXf6mfegx/y2W4X3kCIl1fv5K7X19Pqy4xTNUMhzaL/7eQv727C5Q2wo9HDFY+voMYVpzR0gqzeetSzl0DjNvA2oz76E2rt8wSDPfuZa1u8XPjwUlZVN+IPat75rJYf/msVDa2+HseYkFAQ6/oXmFfZgDcAvrpt8OQ8o0R2tB0rYfECYw+jpRZe/ZHRREeIfiqRs6QeAV4H2tqEfYZxMZ/ooT3N3pgGPv9evwdXhjSucXkDvLJ6Z8SY1vDhpl7U7t/8bkzPAbX+VXRLnB4BCWj1BdnZGNl3Y8mmOryBUAePSBJvE6x9IXJxTmuojjpjKhSCNU/FPn5tbAMlIfqLRBJGmdb6KYwCgmitAxgFAUUPlebaItokAIwbnI8tQyqFOqxmDqiIXV/4ypD8nm908AExQ3rIAV1Xeu2A02qO6dtQWZaLKfqFTTaLE4bEOR+jfELkfZMJRsyOnVdxcGriEqIPJPIO1aKUKiXcfU8pNRto7PwhojP5DgsLTp2EJbyIPCjfzm1nTKEoJzMqhtosJi6dUxmRIL45cwSjSntejjlUNBLdvnnQoElw6FVYHD2rXlvotHL3OdP2NR4qcFr43TenU5aX4tfQ6oDDr93X27zOreHgb0NhRezcr5xiNI5qM+4EGD0ntfEJkUKJ9MM4ELgPmIJx8Vw5cJbWenXqw+ue/tQPo8UboNnjx+0PkWs3U5Zrx9TLs5CSrc7lxeUNYDWbyLVZKMzp3Rk+gcZdmENeCPrQ1hxMhZ3Vouya2x+gqTVAi8/o5VCca8Nq7pu9tBXvvckhR5/MSccexcvPP91xGfiWWqPNq1LG3lROaZ/EJ0SiktpAKbxBCzAB4+TADVprf+9CTI3+lDBE/3fKKadQXV3NqlWr0h2KED3WnYSRyFlSZ2P0xPgUOAP4V9tFe0IMZDZbZhxCFKKvJLL/vkBr3ayUOhw4EXgU+FNqwxKif0hkD12IbJFIwmg7I+oU4E9a6xcB+WglBrzi4mLWrFnDhx9+mO5QhOgTiSSM7eFaUucAryml7Ak+ToisdscddwDw+OOPpzkSIfpGIm/852BcuHeS1roBKAGuS2lUQvQDgwcPprS0VA5LiQEjkVpSrcBz7e7vBHZ2/AghhBDZSA4tCSGESIgkDCF6wW638+677+LxeLqeLEQ/JwlDiF644YYbWLNmDYsWSUNIkf0SaaAkskiLN8DuJg+L1+5mTHkeM0YWUZbX8z4coZCmxuXlrXVGY6RjvjKY8nx73GZLNc0ePviijr0tPo6fNJjyPDv2qAKCKdFaDw1fwhdvw4hDoPwrkJucEh3HH388AF5vz0u/iwHC1wqu3bD+FSgaBSNn76tJ1l9IwhhgVm5r4IKHP9pXafzg0cX8+YKDKO1h0tjT7OXke9+lvtWoFlOUs4GFPzgippFRTbOXs/68hC11rQDcuXA9r1x9OOMG9aICbiL8Hlj1OLz+s/1jB38Hjr0JHAWpfW4h2tvzKfz1RAiFL20bMhUueA7yytMbVzfIIakBpM7l5Y6F6yLaUnz8ZT21rp43HXpm+bZ9yQKgodXPM8uqY+atrm7YlywAvIEQ9775Oe5UN43yNMDbd0SOLXsYvM1JfZqGhoakbk9kGXcDvPnL/ckCYNdqaNiSvph6QBLGAKIBty+2wZAv0PP2Ji5v7Bt+c5yx6IZRAC3eIMG+uIYhGHW4SIcIt3fptREjRjBkyBBuvvlmWfgWHQsFwd8aO+53930svSAJYwApzrFx+dwxEWMjS3IY0os+2PNmjcTWrqS41aw4b9bImHmzKksodEaWR7/i6LHk2XtXMr1Ltjw4cH7kWNXxYO1Z46ZoeXl53HDDDezevZu9e3vRkVBkt9xSo49Ke/lDoWx8euLpIVnDGEDMJsXxkwbz6CWzeGLpVsYNyuOC2aMoz+/5ovfgAgcLf3AED7z7BSENl88dy5BCR8y8sjw7r119BA/9dxO1LV4uPXwMVeXJedPulD0PjroRhh0IG16B0UfClG9ATknSniInp+eNpcQAMvoI+NYr8PFDUDwaDvku5A9Od1TdklA/jP5C+mEkzuMPYjUrzKbk7GT6gyG0pss2s/5giJDW2C19cHZUNJ8bLHajfWoSPfDAA3z3u99l+/btDBs2LKnbFlnI7wGzBUyZ8Xm9O/0wMiNi0eccST6dNdFOd33VES8uW88PvSUiGJRW9yIB1tg98P5C1jCE6KWRI401m9tvvz3NkQiRWpIwhOilk046iWOPPZY33ngj3aEIkVKSMIRIgqFDh6Y7BCFSThKGEEKIhEjCECIJzGYz1dXVbN++Pd2hCJEykjCESIIrrrgCn8+3r22rENlIEoYQSTBr1ixGjhyJy+VKdyhCpIwkDCGSRKnYku5CZJOUJQyl1Ail1NtKqXVKqU+VUj+IM+copVSjUmpl+HZTu++dpJTaoJTaqJT6SarixNsMTTuheZdxBWYv+QIhdjd52NXoocnt7/oBadDQ6mNXo4c9TR78wY6L8DV5/OwOz/P6O7kozdsCzTuNm7clBRFnHq+rnkDDdvwNOwn4MrDoYChk9F5o3A4ttemORmSJVF7pHQB+pLVeoZTKB5YrpRZrrddGzfuv1vrU9gNKKTPwB+B4oBr4WCn1UpzH9k5LLbzxc1jzFFgcRs2hGReAs7hHm2ty+3ltzU5ue3UdLl+AkyYP4dYzpvSqQVGy7W7ycO2/VvLBF3WU5tr41TemctjYUnLskX8KdS4vt7yylpdX7cBpNXP9SRM4Y8ZwCp22yA221MEH98KHfzLuz/ouHHEt5CSnQVEmCjTtwbLwR5jXvwy2fPzH/hLvpDMB2Lp1K1rr9O5tBP2w4xN45hJo3AbDZsA5f4ei2KKQQnRHyvYwtNY7tdYrwl83A+uA4Qk+fBawUWu9SWvtA54EvpbUAEMh+PR5WPWEUXrY12Ikj4ZtPd5kXYuXnzy3hmZvAK1h4f928fhHWzv9FN+XWn0B7np9Ax98UQdAXYuPyx9bTqMnck8oGAzx7IpqXly5g5CGFl+Qm19ay+7GOF3ldqyA9++FoM+4LbkPqpf3xY+TFsGAj9Cyv2Fe9xJoDd4mrK9di7m1htNPP523336bhQsXpjfI1jp4/GwjWYCRPJ7/LrRKNV3RO32yhqGUGg3MAD6K8+1DlVKrlFILlVKTw2PDgfbv3NUknmwS42+Fz+L0Yd7yfo83uXpbY8zYOxtq4vaMSAeXN8CScLJoEwhpqvdG1uRv8QV5e0NNzOOXb62P3eiGOG+O61/tVZyZLNDahG3zW7Hj25bx4x//GIAdO3b0dViRfC6jcVR7W5dAKDMPkYr+I+UJQymVBzwLXKO1bor69gpglNZ6GnAf8ELbw+JsKm5ZXaXUZUqpZUqpZTU1sW9yHbI6oXJu7HjFwYlvI8rEYbEtP2dVFpNny4wajzk2M9NHFEWMmRQML3bGzDt0TOwhpakVhbEbHXtU7FjVMb0JM6OZHfn4Kg6LGbcMm4YpyVVwe8yaC7ao0vHDZoDKjL9D0X+l9C9cKWXFSBaPa62fi/6+1rpJa+0Kf/0aYFVKlWHsUYxoN7UCiPuxTWv9gNZ6ptZ6Znl5N3rjmswwbZ7RTAeMUsNzroWSMZ0/rhODCxxcf+KEfQ2FZo8p4dLDK7F2UfK7r+TZrfz8lIlMGmokthybmV+fNZUCR2QTI4vZxHmHjOTwKiNpWM2Kq4+tYnhRnGqvIw+D6eeDUsZt2jwYNSflP0u6WGx2zIdeTmj0EcaA2YZv7s8I5g3ZNycUSvMhSGcxnPOP/WtxxZVw5oNGEx8heiFl/TCUser3KLBXa31NB3OGALu11lopNQt4BhgFmIHPgGOB7cDHwHla6087e84e9cNo3WscnlImsOcbt15o8QZo9gQIhjROm4mS3MxZ8G5T5/Li9gexmE0UOa0dljqvb/Hh9gcxKUW+w0KuvYNPqO5G4zAIGJ9snUXx52URb9MezAEPmMwEbQXYc/JpbGxk0KBBTJ48mY8//hizOQ09P9oEfODeCwGvsTedW24kdCGiZEo/jDnAhcAapdTK8NhPgZEAWus/A2cB31NKBQA3cK42MlhAKXUV8DpG8vhrV8mix3JKgOR1X8u1d/LGmiFKEzxrqzjXRkLnizkLjdsAYi8YtO/rtt92YWEhCxYsYMGCBWzcuJEJEyakJzgAiw3yh3Q9T4huSNk7m9b6PeKvRbSfcz9wfwffew14LQWhCZEyY8eOTXcIQqRMZhxcF0IIkfEkYQghhEiIJAwhksjpNM4ke+WVV9IciRDJJwlDiCQ6+eSTmTFjBr/97W/THYoQSScJQ4gkstvtzJ49G79frqoW2UcShhBCiIRIwhAiBRobG/H5fOkOQ4ikkoQhRJLNnTsXn8/HggUL0h2KEEk1oBOG2x9gU42LW17+lPve+pxdjR5CodSUSskUtS4vy7fU89PnVvPwfzexqzEDm//0c9/85jepqqpi48aN6Q5FiKTK7BoWKba1rpVTfv8egXCS+NsHX7LwB0cwuMCR5shSIxQK8cHGWq5+cuW+saeWVfPoJbMYUpidP3O6OBzyeorsM2D3MDz+IH94e+O+ZAGwt8XHe59nbzvLXU1e/vD2FxFjG3Y3s6dJ9jKEEF0bsAkDwBSnemc2F/RUQNyWDVn8M6eTxyOJWGSXAZswHFYzVxxdhdW8/92yLM/G4VVlaYwqtQYX2Lnq6HERYxOH5jMoXw6fJFtVVRWLFi1i6dKl6Q5FiKRJWT+MdCWGzhQAABKESURBVOhuPwyPP8iuRg9PfryVohwbZ04fzqACOyqLdzNqXV6q6908t6KaqvI8Tpg8RNYvUuDLL7+ksrKSe+65h2uuidsORoiMkCn9MDKew2pmdFkuPzl5YrpD6TNleXbK8uwxrVpFchUVyesrss+APSQlhBCieyRhCJECbe1Z3333XbLpsK8Y2CRhCJEC+fn5fPvb3+b5559n3bp16Q5HiKSQhCFEipx++ukAuN3uNEciRHJIwhBCCJEQSRhCCCESIglDiBT74osvup4kRD8gCUOIFJkzZw7Dhg3juuuuS3coQiSFJAwhUqSkpIR58+ZRU1OT7lCESIoBfaV3dzS5/bR4A2ggx2amKMeW7pB6rNblxe0LYjObKMix4LTKn0F37W0xXkOzSZHnsJJnj/8amuJWexSif5J3igTUubzcsXA9z66oRms4ecoQ/u+MKZTm2dMdWrftaHAz/29L+Wy3C4fVxM2nTea0qUPJc1jTHVq/UdPs4fLHVrB8Sz0Wk+LKo6u4eM7oDj9EBAKBPo5QiNSQjz8JWFXdwDPLjWQBsPB/u/jPhv53mMHl8fN/r67ls90uADz+ED99fg2NHnlDS5Q/EOKh9zazfEs9AIGQ5t63Pmd3Bz1Fhg4dit/v5y9/+UtfhilESkjCSMCSL+pixt7bWNvv2rm2+oOs2tYYMaY17KiXC8sS1eILsOzL+pjxT3c0xZ3//e9/n1GjRvHss8+mOjQhUk4SRgKOmzg4ZuzkKUMwmfpXGfQ8m4U5VaURYxaTYkRJTpoi6n/y7BaO+cqgmPGOqv9aLBaGDRuW6rCE6BOSMBIwfnA+1xw3DqfVjN1i4jtHjGHm6JJ0h9VtOXYLPz5hAnMnlAMwKN/OgxfNpMApS1mJsphNnHvwCL42fRhmk6LQaeWus6ZS1g/Xs4TorgHdQKk73P4gTW4/APl2CzkdnBXTHzS6/f/f3v0H2VXWdxx/f7K/kuwuJCGLjUB+1KLVAJKYAUlaNOWX6IzoIFOstYowlGJFW+2U2oKtWlAq0MFOzaDQohWkYGBSxUDEiCCSGEgkIZEQJZHAhgTY5gcRNpv99o9zNr253Lv3bHbvPTmbz2vmzt77nOc8+33ybPa7z/nxHF7p3cuYMTBpfCtNTf67Yah2vrKH3b17ETBhfCutzdX/DefOnUt7eztLlixpXIBmGfkBSnUwrqWJcS1NeYcxIg4f18Lh43xV1HB0jm2hM+OVZe3t7SxfvpxNmzYxbdq0OkdmVj91+9NS0jGSlkpaJ+kJSZ+sUOdDkh5PXw9LemvJto2SVktaJak+0wazBrjmmmvYsWMHt956a96hmA1LPWcYfcCnI+IxSZ3Ao5KWRMTakjpPA++IiB5JZwM3AieXbJ8fES/UMUazujvhhBMA349hxVe3hBER3UB3+n6npHXAUcDakjoPl+zyCHB0veIxM7PhacjZTknTgVnAskGqXQj8oORzAPdJelTSxfWLzqwxtmzZkncIZsNS94QhqQP4LvCpiKh4d5Ok+SQJ429LiudFxGzgbODjkk6tsu/FklZIWuFF3uxgNGbMGObPn8+CBQt46qmn8g7H7IDVNWFIaiFJFt+OiIVV6pwAfAM4JyL23VIdEc+lX7cCdwEnVdo/Im6MiDkRMaerq2uku2A2bJK4/PLL6e/v59lnn807HLMDVs+rpATcBKyLiOuq1JkKLAQ+HBHrS8rb0xPlSGoHzgTW1CtWs3prbS3u6sZmA+p5ldQ84MPAakmr0rLPAlMBImIBcCVwBPDvSX6hL72B5HXAXWlZM3BrRCyuY6xmZlZDPa+SeggYdLGliLgIuKhC+a+Bt752D7P97e3bw97eV2gZ245G6NkTu3v7aG0aQ3Md7oDfvXv3iLdp1iheE8IKq2/H8+x96AZa776QPY9+iz07h3fRQ8/uXu5ds4XLblvJdUvWV12y/EDMmDGDtrY2rrzySkbTcjx2aPHSIFZIvTu20fzdC2je9FMAWtffS9/zq+n9o8/ROr5zyO319fdz98pn+af/SW4T+uG6rdyzups7LplLV+fwFxacNm0al156Kddffz39/f00NY2OZWbs0OIZhhVSU99uxqTJYkDzqm8yZs+uA2qv5+Vebnro6f3KNr64mxdffvWAYyw3ceLEEWvLLA9OGFZMY5pAZafIWsZzoAd7JNHe+toJd6tX8jXbx/8brJD6mtvZM+uC/cp633kFGndgzymZ3NHGZ9/z+/vloFPf2FX1Od0Hoq0tObT14IMPjlibZo3k52FYYfXu3IZe2ED/5p8z5g3z6e98PW2dR9TesYpdr/axbccrLH1yG8e+roO3TDmMI0bwwUhbt25l5syZHHfccSxdunTE2jUbDj8Pww4JrZ1d0NkFM04ZkfY62prp6OpgRlfHiLRX7sgjj2TWrFns2nVg51nM8uZDUmZmlokThpmZZeKEYdZAkti4caPv+LZCcsIwa6CLLrqI7u5ubrjhhrxDMRsyJwyzBjrvvPNoa2ujp6cn71DMhswJw6zBVH7DoVlBOGGY5aC3tzfvEMyGzAnDrMGmTp3KLbfcQnd3d96hmA2JE4ZZg1177bX09PTgVQmsaJwwzBpsypQpeYdgdkCcMMzMLBMnDLMGG3h40vLly3OOxGxonDDMGuz4449n3rx5fOlLX/Id31YoThhmDdbU1MS5555LX1+fL6+1QnHCMMuBb96zInLCMDOzTJwwzHK0ZcuWvEMwy8wJwywHZ5xxBm1tbVx22WV5h2KWmROGWQ5mzpzJWWed5eVBrFCcMMxy0tzcnHcIZkPihGGWo/7+/rxDMMvMCcMsJ5MnT2bt2rU88MADeYdilokThllOrr76apqamrj99tvzDsUsEycMs5xMmjSJSZMm5R2GWWZOGGZmlkndEoakYyQtlbRO0hOSPlmhjiTdIGmDpMclzS7Z9hFJT6Wvj9QrzqHY8ds9bN+9J+8wzMxyUc/r+vqAT0fEY5I6gUclLYmItSV1zgaOTV8nA18DTpY0CfgcMAeIdN9FEdFTx3irevnVPtY/v5Nr71vP3v7gstOO5fijDqNjbEse4dgoMm7cOO6//3527dpFR0dH3uGYDapuM4yI6I6Ix9L3O4F1wFFl1c4BvhmJR4AJkqYAZwFLIuKlNEksAd5Vr1hr2bLjFc792sM8tOEFfvbrF/ng1x9h00teltqG74orrmD9+vUsXrw471DMamrIOQxJ04FZwLKyTUcBz5R83pyWVSvPxcLHNtMf+5d962eb6C8vNBui008/nRNPPNGzCyuEut9qKqkD+C7wqYjYUb65wi4xSHml9i8GLgaYOnXqMCKt7uiJ4yuUjWPMGC9RbcMzffp0Vq5cmXcYZpnUdYYhqYUkWXw7IhZWqLIZOKbk89HAc4OUv0ZE3BgRcyJiTldX18gEXua0Nx/J9CP+P2lMOXws5805ZpA9zMxGn7rNMJQ8IeYmYF1EXFel2iLgLyV9h+Sk9/aI6JZ0L3CVpIlpvTOBv6tXrLUc2TmWOy6Zy1PP76SvP3jzlMPo6mzLKxwzs1zU85DUPODDwGpJq9KyzwJTASJiAXAP8G5gA7AbuCDd9pKkLwA/T/f7fES8VMdYa+rqbHOSMLNDWt0SRkQ8ROVzEaV1Avh4lW03AzfXITQzMzsAvtPbzMwyccIwM7NMnDDMzCwTJwwzM8vECcPMzDJxwjAzs0ycMMzMLBMnDDMzy8QJw8zMMnHCMDOzTJSszjE6SNoGbKrzt5kMvFDn79Eoo6Uvo6Uf4L4crEZLXyr1Y1pEZFrqe1QljEaQtCIi5uQdx0gYLX0ZLf0A9+VgNVr6Mtx++JCUmZll4oRhZmaZOGEM3Y15BzCCRktfRks/wH05WI2WvgyrHz6HYWZmmXiGYWZmmThhVCFpo6TVklZJWlFhuyTdIGmDpMclzc4jziwy9OWdkran21dJujKPOGuRNEHSnZJ+KWmdpFPKthdpTGr1pShj8qaSGFdJ2iHpU2V1DvpxydiPQowJgKS/kvSEpDWSbpM0tmx7m6Tb0zFZJml6poYjwq8KL2AjMHmQ7e8GfkDyGNq3A8vyjnkYfXkn8L2848zQj1uAi9L3rcCEAo9Jrb4UYkzKYm4CtpBc11/IcanRj0KMCXAU8DQwLv3838BHy+pcCixI358P3J6lbc8wDtw5wDcj8QgwQdKUvIMarSQdBpwK3AQQEb0R8b9l1QoxJhn7UkSnAb+KiPKbZwsxLiWq9aNImoFxkpqB8cBzZdvPIfmjBeBO4DRJqtWoE0Z1Adwn6VFJF1fYfhTwTMnnzWnZwahWXwBOkfQLST+QNLORwWX0u8A24D8krZT0DUntZXWKMiZZ+gIH/5iUOx+4rUJ5UcZlQLV+QAHGJCKeBb4C/AboBrZHxH1l1faNSUT0AduBI2q17YRR3byImA2cDXxc0qll2ytl44P1krNafXmMZPr9VuCrwN2NDjCDZmA28LWImAW8DFxeVqcoY5KlL0UYk30ktQLvBe6otLlC2cE4LrX6UYgxkTSRZAYxA3g90C7pT8urVdi15pg4YVQREc+lX7cCdwEnlVXZDBxT8vloXjvtOyjU6ktE7IiIXen7e4AWSZMbHujgNgObI2JZ+vlOkl+65XWKMCY1+1KQMSl1NvBYRDxfYVtRxgUG6UeBxuR04OmI2BYRe4CFwNyyOvvGJD1sdTjwUq2GnTAqkNQuqXPgPXAmsKas2iLgz9IrQN5OMu3rbnCoNWXpi6TfGTh+Kekkkp+LFxsd62AiYgvwjKQ3pUWnAWvLqhViTLL0pQhjUuaDVD+MU4hxSVXtR4HG5DfA2yWNT+M9DVhXVmcR8JH0/QeAH0V6BnwwzSMa5ujxOuCu9GejGbg1IhZLugQgIhYA95Bc/bEB2A1ckFOstWTpyweAv5DUB/wWOD/LD08OPgF8Oz1s8GvggoKOCdTuS1HGBEnjgTOAPy8pK9y4ZOhHIcYkIpZJupPkEFofsBK4UdLngRURsYjkgotvSdpAMrM4P0vbvtPbzMwy8SEpMzPLxAnDzMwyccIwM7NMnDDMzCwTJwwzM8vECcOsgnRl0u9lLR+B7/c+SW8p+fxjSTWfvSxpykjEI6lL0uLhtmOjmxOG2cHhfcBbatZ6rb8Gvj7cbx4R24BuSfOG25aNXk4YVkjpHezfTxeCWyPpj9Pyt0l6IF1o8d6BVVHTv9j/VdLDaf2T0vKT0rKV6dc3DfZ9K8Rws6Sfp/ufk5Z/VNJCSYslPSXpmpJ9LpS0Po3n65L+TdJckvWL/kXJcxbekFY/T9LytP4fVgnjXGBx2naTpK8oefbJ45I+kZZvlHSVpJ9JWiFpdvpv86uBG9NSdwMfytp/O/T4Tm8rqncBz0XEewAkHS6phWRRuHMiYluaRP4Z+Fi6T3tEzFWy+OLNwHHAL4FTI6JP0unAVSS/hLP4e5IlFT4maQKwXNIP020nArOAV4EnJX0V2AtcQbJu1E7gR8AvIuJhSYtInrVwZ9ofgOaIOEnSu4HPkawRtI+kGUBPRLyaFl1MsuDcrLQ/k0qqPxMRp0i6HvhPYB4wFngCWJDWWQF8MWPf7RDkhGFFtRr4iqQvk/yifVDScSRJYEn6C7eJZHnnAbcBRMRPJB2W/pLvBG6RdCzJap0tQ4jhTOC9kj6Tfh4LTE3f3x8R2wEkrQWmAZOBByLipbT8DuCNg7S/MP36KDC9wvYpJMukDzid5KE4fWk/SxeTW5R+XQ10RMROYKekVyRNSJ/HsZVkdVOzipwwrJAiYr2kt5GsUXS1pPtIVuJ9IiJOqbZbhc9fAJZGxPuVPKbyx0MIQ8C5EfHkfoXSySQziwF7Sf6v1XxATZmBNgb2L/dbkiRVGk+1tX4G2uovi62/pO2xaZtmFfkchhWSpNcDuyPiv0geFjMbeBLoUvp8bEkt2v8hNwPnOf6AZMXU7STLOj+bbv/oEMO4F/hEuiIokmbVqL8ceIekiUqWlC499LWTZLYzFOvZf+ZxH3BJ2jZlh6SyeCOvXZXZbB8nDCuq40nOGawiOZfwxYjoJVlR9MuSfgGsYv/nAPRIepjkmP2Fadk1JDOUn5IcwhqKL5Acwnpc0pr0c1Xpk9CuApYBPyRZ0nx7uvk7wN+kJ8/fUKWJ8vZeBn4l6ffSom+QLG39eNr/Pxlif+YD3x/iPnYI8Wq1dkiQ9GPgMxGxIuc4OiJiVzoLuAu4OSLuGkZ77wfeFhH/MAKx/YTkgoGe4bZlo5NnGGaN9Y/prGgN8DTDfMxnmmw2DjcoSV3AdU4WNhjPMMzMLBPPMMzMLBMnDDMzy8QJw8zMMnHCMDOzTJwwzMwsEycMMzPL5P8AFKuq9X9BclcAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_dataset_with_boundary(clf, features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"サンプルデータを分類する"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"正解率 = 0.75\n"
]
}
],
"source": [
"output = clf.predict(features)\n",
"accuracy = sum(output == labels) / len(labels)\n",
"print('正解率 = {}'.format(accuracy))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 線形分類器の実装"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"平面上のデータを分類する線形分類器クラスを定義する\n",
"\n",
"- データ (x, y) に対して ax + by + c の符号が正 (0 を含む) なら 1 と分類し、符号が負なら 0 と分類する\n",
"- a, b, c はコンストラクタに与える"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"class MyLinearClassifier():\n",
" \n",
" def __init__(self, a, b, c):\n",
" self.a = a\n",
" self.b = b\n",
" self.c = c\n",
" \n",
" def predict(self, x, y):\n",
" if self.a * x + self.b * y + self.c >= 0:\n",
" return 1\n",
" else:\n",
" return 0"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"適当に a, b, c を定めてサンプルデータを分類してみる"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"正解率 = 0.5\n"
]
}
],
"source": [
"clf = MyLinearClassifier(a=1, b=2, c=3)\n",
"\n",
"output = [clf.predict(x, y) for x, y in features]\n",
"accuracy = sum(output == labels) / len(labels)\n",
"print('正解率 = {}'.format(accuracy))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"先ほど scikit-learn の LogisticRegression で学習したパラメータを設定して分類してみる\n",
"\n",
"`coef_ = [[1.5890194 0.40894657]], intercept_ = [-11.10589861]`"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"正解率 = 0.75\n"
]
}
],
"source": [
"clf = MyLinearClassifier(a=1.5890194, b=0.40894657, c=-11.10589861)\n",
"\n",
"output = [clf.predict(x, y) for x, y in features]\n",
"accuracy = sum(output == labels) / len(labels)\n",
"print('正解率 = {}'.format(accuracy))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"決定境界を描画する\n",
"\n",
"- 先ほど定義した plot_dataset_with_boundary 関数を使いたいので predict 関数のインタフェースを揃える"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"class ClassifierAdaptor():\n",
" \n",
" def __init__(self, classifier):\n",
" self.inner_ = classifier\n",
" \n",
" def predict(self, features):\n",
" return np.array([self.inner_.predict(x, y) for x, y in features])"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_dataset_with_boundary(ClassifierAdaptor(clf), features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 線形分類器の学習"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"誤分類したデータ数を計算する関数を定義する"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"def count_errors(classifier, features, labels):\n",
" return sum([classifier.predict(x, y) != l for ([x, y], l) in zip(features, labels)])"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"誤分類数 = 25\n"
]
}
],
"source": [
"clf = MyLinearClassifier(a=1.5890194, b=0.40894657, c=-11.10589861)\n",
"\n",
"errors = count_errors(clf, features, labels)\n",
"print('誤分類数 = {}'.format(errors))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"素朴なパラメータ探索方法 (適当な範囲を決めて走査する)\n",
"\n",
"- 適当な範囲で a, b, c を走査して誤分類数が最小なものを選ぶ\n",
"- ここでは a, b, c それぞれ -10 から 10 の範囲まで 0.1 刻みで調べる\n",
"- 誤分類数の最小値を更新したときに a, b, c の値と最小値を出力する"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(a,b,c)=(-10.0,-10.0,-10.0), errors=50\n",
"(a,b,c)=(-3.0,8.0,-8.0), errors=49\n",
"(a,b,c)=(-3.0,8.0,-5.0), errors=48\n",
"(a,b,c)=(-3.0,10.0,-10.0), errors=47\n",
"(a,b,c)=(-1.0,4.0,-7.0), errors=46\n",
"(a,b,c)=(-1.0,5.0,-9.0), errors=45\n",
"(a,b,c)=(-1.0,6.0,-10.0), errors=44\n",
"(a,b,c)=(0.0,1.0,-3.0), errors=37\n",
"(a,b,c)=(1.0,0.0,-6.0), errors=31\n",
"(a,b,c)=(1.0,1.0,-9.0), errors=27\n"
]
}
],
"source": [
"import itertools\n",
"\n",
"min_errors = float('inf')\n",
"best_clf = None\n",
"for a, b, c in itertools.product(np.linspace(-10, 10, 21), repeat=3):\n",
" clf = MyLinearClassifier(a, b, c)\n",
" errors = count_errors(clf, features, labels)\n",
" if errors < min_errors:\n",
" print('(a,b,c)=({},{},{}), errors={}'.format(a, b, c, errors))\n",
" min_errors = errors\n",
" best_clf = clf"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_dataset_with_boundary(ClassifierAdaptor(best_clf), features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"素朴なパラメータ探索方法 (ランダムサンプリングを繰り返す)\n",
"\n",
"- 適当な範囲から a, b, c をランダムに選ぶことを繰り返す\n",
"- ここでは a, b, c それぞれ -10 から 10 の範囲からランダムサンプリングする。1 万回繰り返す\n",
"- 誤分類数の最小値を更新したときに a, b, c の値と最小値を出力する"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(a,b,c)=(5.023654468278789,-4.857622000171784,5.9002888244276175), errors=50\n",
"(a,b,c)=(3.968389076658765,-8.475770772574752,1.7627589801981962), errors=44\n",
"(a,b,c)=(3.9361276857384304,-5.455879845096687,-8.463415234198923), errors=39\n",
"(a,b,c)=(1.2128653154587141,0.0684290591204828,-7.87029638915649), errors=29\n"
]
}
],
"source": [
"import random\n",
"\n",
"min_errors = float('inf')\n",
"best_clf = None\n",
"for i in range(10000):\n",
" a, b, c = [random.uniform(-10, 10) for _ in range(3)]\n",
" clf = MyLinearClassifier(a, b, c)\n",
" errors = count_errors(clf, features, labels)\n",
" if errors < min_errors:\n",
" print('(a,b,c)=({},{},{}), errors={}'.format(a, b, c, errors))\n",
" min_errors = errors\n",
" best_clf = clf"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_dataset_with_boundary(ClassifierAdaptor(best_clf), features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"パラメータを一つだけ変えて誤分類数が変化する様子を確認する\n",
"\n",
"- a, b, c それぞれについて、設定値を中心にプラスマイナス r の範囲を描画する"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1296x288 with 3 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"a, b, c = 1.4, 0, -9\n",
"\n",
"r = 2\n",
"plt.figure(figsize=(18, 4))\n",
"\n",
"# a を変えたときの誤分類数の変化\n",
"xs = np.linspace(a - r, a + r, 401)\n",
"errors = [count_errors(MyLinearClassifier(x, b, c), features, labels) for x in xs]\n",
"plt.subplot(1, 3, 1)\n",
"plt.title('Errors by a')\n",
"sns.lineplot(x=xs, y=np.array(errors));\n",
"\n",
"# b を変えたときの誤分類数の変化\n",
"xs = np.linspace(b - r, b + r, 401)\n",
"errors = [count_errors(MyLinearClassifier(a, x, c), features, labels) for x in xs]\n",
"plt.subplot(1, 3, 2)\n",
"plt.title('Errors by b')\n",
"sns.lineplot(x=xs, y=np.array(errors));\n",
"\n",
"# c を変えたときの誤分類数の変化\n",
"xs = np.linspace(c - r, c + r, 401)\n",
"errors = [count_errors(MyLinearClassifier(a, b, x), features, labels) for x in xs]\n",
"plt.subplot(1, 3, 3)\n",
"plt.title('Errors by c')\n",
"sns.lineplot(x=xs, y=np.array(errors));"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## ロジスティック回帰の実装"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"シグモイド関数"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [],
"source": [
"def sigmoid(x):\n",
" return 1 / (1 + np.exp(-x))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"シグモイド関数を描画する"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 720x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"xs = np.linspace(-8, 8, 401)\n",
"ys = [sigmoid(x) for x in xs]\n",
"\n",
"plt.figure(figsize=(10, 4))\n",
"plt.title('Sigmoid function')\n",
"plt.xlabel('ax + by + c')\n",
"plt.ylabel('Probability')\n",
"sns.lineplot(x=xs, y=ys);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"ロジスティック回帰モデルに基づく線形分類器\n",
"\n",
"- MyLinearClassifier を継承して作成する\n",
"- predict_probability メソッドで確率を計算する\n",
"- predict メソッドは確率計算の結果が 0.5 以上か 0.5 未満かで分類する"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [],
"source": [
"class MyLogisticRegression(MyLinearClassifier):\n",
" \n",
" def predict_probability(self, x, y):\n",
" h = self.a * x + self.b * y + self.c\n",
" return sigmoid(h)\n",
"\n",
" def predict(self, x, y):\n",
" return 1 if self.predict_probability(x, y) >= 0.5 else 0"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"MyLinearClassifier のときと同様に a, b, c を定めてサンプルデータを分類してみる"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"正解率 = 0.5\n"
]
}
],
"source": [
"clf = MyLogisticRegression(a=1, b=2, c=3)\n",
"\n",
"output = [clf.predict(x, y) for x, y in features]\n",
"accuracy = sum(output == labels) / len(labels)\n",
"print('正解率 = {}'.format(accuracy))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"これも同様に scikit-learn の LogisticRegression で学習したパラメータを設定して分類してみる\n",
"\n",
"`coef_ = [[1.5890194 0.40894657]], intercept_ = [-11.10589861]`"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"正解率 = 0.75\n"
]
}
],
"source": [
"clf = MyLogisticRegression(a=1.5890194, b=0.40894657, c=-11.10589861)\n",
"\n",
"output = [clf.predict(x, y) for x, y in features]\n",
"accuracy = sum(output == labels) / len(labels)\n",
"print('正解率 = {}'.format(accuracy))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"決定境界を描画する"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_dataset_with_boundary(ClassifierAdaptor(clf), features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## ロジスティック回帰モデルの尤度、コスト、勾配"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"尤度の計算\n",
"\n",
"- 各データについて、正しく分類される確率を計算する\n",
" - 正解ラベルが 1 であれば predict_probability の値そのもの\n",
" - 正解ラベルが 0 であれば 1 - predict_probability の値\n",
"- それらを全データについて掛け合わせる"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [],
"source": [
"def calculate_likelihood(classifier, features, labels):\n",
" probs = [classifier.predict_probability(x, y) for x, y in features]\n",
" return np.product([p if l == 1 else 1 - p for l, p in zip(labels, probs)])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"対数尤度の計算\n",
"\n",
"- 各データについて、正しく分類される確率の log を計算する\n",
" - 正解ラベルが 1 であれば log(predict_probability)\n",
" - 正解ラベルが 0 であれば log(1 - predict_probability)\n",
"- それらを全データについて足し合わせる"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [],
"source": [
"def calculate_loglikelihood(classifier, features, labels):\n",
" probs = [classifier.predict_probability(x, y) for x, y in features]\n",
" return sum([np.log(p) if l == 1 else np.log(1 - p) for l, p in zip(labels, probs)])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"コストの計算\n",
"\n",
"- 対数尤度に -1 を掛けてデータ数で割る"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [],
"source": [
"def calculate_cost(classifier, features, labels):\n",
" return -calculate_loglikelihood(classifier, features, labels) / len(features)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"a=1, b=2, c=3 としたときの値を計算してみる"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Likelihood = 4.545991045e-315\n",
"Log likelihood = -723.8000585361501\n",
"Cost = 7.238000585361501\n"
]
}
],
"source": [
"clf = MyLogisticRegression(a=1, b=2, c=3)\n",
"\n",
"print('Likelihood = {}'.format(calculate_likelihood(clf, features, labels)))\n",
"print('Log likelihood = {}'.format(calculate_loglikelihood(clf, features, labels)))\n",
"print('Cost = {}'.format(calculate_cost(clf, features, labels)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"scikit-learn の LogisticRegression で学習したパラメータを設定したときの値を計算してみる\n",
"\n",
"`coef_ = [[1.5890194 0.40894657]], intercept_ = [-11.10589861]`"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Likelihood = 8.683660392802593e-25\n",
"Log likelihood = -55.40318418083119\n",
"Cost = 0.5540318418083119\n"
]
}
],
"source": [
"clf = MyLogisticRegression(a=1.5890194, b=0.40894657, c=-11.10589861)\n",
"\n",
"print('Likelihood = {}'.format(calculate_likelihood(clf, features, labels)))\n",
"print('Log likelihood = {}'.format(calculate_loglikelihood(clf, features, labels)))\n",
"print('Cost = {}'.format(calculate_cost(clf, features, labels)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"パラメータを一つだけ変えてコストが変化する様子を確認する"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1296x288 with 3 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"a, b, c = 1.4, 0, -9\n",
"\n",
"r = 2\n",
"plt.figure(figsize=(18, 4))\n",
"\n",
"# a を変えたときのコストの変化\n",
"xs = np.linspace(a - r, a + r, 401)\n",
"errors = [calculate_cost(MyLogisticRegression(x, b, c), features, labels) for x in xs]\n",
"plt.subplot(1, 3, 1)\n",
"plt.title('Costs by a')\n",
"sns.lineplot(x=xs, y=np.array(errors));\n",
"\n",
"# b を変えたときのコストの変化\n",
"xs = np.linspace(b - r, b + r, 401)\n",
"errors = [calculate_cost(MyLogisticRegression(a, x, c), features, labels) for x in xs]\n",
"plt.subplot(1, 3, 2)\n",
"plt.title('Costs by b')\n",
"sns.lineplot(x=xs, y=np.array(errors));\n",
"\n",
"# c を変えたときのコストの変化\n",
"xs = np.linspace(c - r, c + r, 401)\n",
"errors = [calculate_cost(MyLogisticRegression(a, b, x), features, labels) for x in xs]\n",
"plt.subplot(1, 3, 3)\n",
"plt.title('Costs by c')\n",
"sns.lineplot(x=xs, y=np.array(errors));"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"コストの勾配の計算\n",
"\n",
"- コスト関数を偏微分すれば勾配の式が得られる (これは数学を勉強しないとどうにもならない)\n",
"- 以下の二つの定義は同じ計算。前者は a, b, c の勾配をそれぞれ計算。後者は行列の乗算を利用して一気に計算"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [],
"source": [
"def calculate_gradient(classifier, features, labels):\n",
" probs = [classifier.predict_probability(x, y) for x, y in features]\n",
" grad_a = sum(features[:, 0].flatten() * (probs - labels)) / len(labels)\n",
" grad_b = sum(features[:, 1].flatten() * (probs - labels)) / len(labels)\n",
" grad_c = sum(probs - labels) / len(labels)\n",
" return [grad_a, grad_b, grad_c]"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [],
"source": [
"def calculate_gradient(classifier, features, labels):\n",
" probs = [classifier.predict_probability(x, y) for x, y in features]\n",
" features_with_bias = np.append(features, np.ones((len(labels), 1)), axis=1)\n",
" return np.dot(features_with_bias.T, probs - labels) / len(labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"コストの勾配をプロットして確認する"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1296x288 with 3 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"a, b, c = 1.4, 0, -9\n",
"\n",
"r = 2\n",
"plt.figure(figsize=(18, 4))\n",
"\n",
"# a を変えたときのコストの勾配の変化\n",
"xs = np.linspace(a - r, a + r, 401)\n",
"grads = [calculate_gradient(MyLogisticRegression(x, b, c), features, labels)[0] for x in xs]\n",
"plt.subplot(1, 3, 1)\n",
"plt.title('Gradients by a')\n",
"sns.lineplot(x=xs, y=np.array(grads));\n",
"\n",
"# b を変えたときのコストの勾配の変化\n",
"xs = np.linspace(b - r, b + r, 401)\n",
"grads = [calculate_gradient(MyLogisticRegression(a, x, c), features, labels)[1] for x in xs]\n",
"plt.subplot(1, 3, 2)\n",
"plt.title('Gradients by b')\n",
"sns.lineplot(x=xs, y=np.array(grads));\n",
"\n",
"# c を変えたときのコストの勾配の変化\n",
"xs = np.linspace(c - r, c + r, 401)\n",
"grads = [calculate_gradient(MyLogisticRegression(a, b, x), features, labels)[2] for x in xs]\n",
"plt.subplot(1, 3, 3)\n",
"plt.title('Gradients by c')\n",
"sns.lineplot(x=xs, y=np.array(grads));"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 勾配降下法によるロジスティック回帰モデルの学習"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"コストの勾配を利用してパラメータ a, b, c を更新する関数\n",
"\n",
"- 勾配を計算して、コストが減少する方向にパラメータを更新する\n",
"- learning_rate は、一回の更新でどのくらい大きく動くかを決める値\n",
" - ちょうどよい値に設定すると学習が効率的に進む\n",
" - 小さすぎると時間ばかりかかってしまう\n",
" - 大きすぎると最適な a, b, c を飛び越えてしまい上手くいかない"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {},
"outputs": [],
"source": [
"def update(classifier, features, labels, learning_rate=0.1):\n",
" grad_a, grad_b, grad_c = calculate_gradient(classifier, features, labels)\n",
" classifier.a = classifier.a - grad_a * learning_rate\n",
" classifier.b = classifier.b - grad_b * learning_rate\n",
" classifier.c = classifier.c - grad_c * learning_rate"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"update 関数を繰り返し適用することでロジスティック回帰モデルを学習できる\n",
"\n",
"- get_state 関数は学習途中の様子を確認できるように情報を取得するもの\n",
"- 初期値 a=0, b=0, c=0 で MyLogisticRegression を作り 10000 回反復する"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"outputs": [],
"source": [
"def get_state(i, classifier, features, labels):\n",
" return {\n",
" 'i': i,\n",
" 'a': classifier.a,\n",
" 'b': classifier.b,\n",
" 'c': classifier.c,\n",
" 'cost': calculate_cost(classifier, features, labels),\n",
" 'errors': count_errors(classifier, features, labels)\n",
" }"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'i': 0, 'a': 0, 'b': 0, 'c': 0, 'cost': 0.6931471805599458, 'errors': 50}\n",
"{'i': 1000, 'a': 0.6527979975308041, 'b': -0.6859713567653488, 'c': -2.0421856873156434, 'cost': 0.6381741604549783, 'errors': 31}\n",
"{'i': 2000, 'a': 0.8835216522425727, 'b': -0.6392722537049991, 'c': -3.631611355232831, 'cost': 0.6121947187776708, 'errors': 27}\n",
"{'i': 3000, 'a': 1.026187013708422, 'b': -0.5041353847274053, 'c': -4.920651307723492, 'cost': 0.5951374930720088, 'errors': 27}\n",
"{'i': 4000, 'a': 1.1372934383979765, 'b': -0.377594884307574, 'c': -5.985357616723448, 'cost': 0.5834863082688545, 'errors': 28}\n",
"{'i': 5000, 'a': 1.230021305749123, 'b': -0.2709540331939134, 'c': -6.876424066109596, 'cost': 0.575327183066264, 'errors': 29}\n",
"{'i': 6000, 'a': 1.3091353666923993, 'b': -0.18206707823227988, 'c': -7.6302791659182265, 'cost': 0.5694902718343982, 'errors': 29}\n",
"{'i': 7000, 'a': 1.377318253416175, 'b': -0.10750288153978221, 'c': -8.273860318710373, 'cost': 0.5652381388770142, 'errors': 28}\n",
"{'i': 8000, 'a': 1.436472352940802, 'b': -0.04439578467965338, 'c': -8.827499346036525, 'cost': 0.5620927225659905, 'errors': 27}\n",
"{'i': 9000, 'a': 1.4880633069028388, 'b': 0.009457474066263153, 'c': -9.30682969116081, 'cost': 0.5597357800808107, 'errors': 27}\n",
"{'i': 10000, 'a': 1.5332562820886249, 'b': 0.055743439781244894, 'c': -9.724080048611157, 'cost': 0.5579503148094289, 'errors': 27}\n"
]
}
],
"source": [
"clf = MyLogisticRegression(a=0, b=0, c=0)\n",
"\n",
"max_iter = 10000\n",
"states = []\n",
"for i in range(max_iter):\n",
" if i % 10 == 0:\n",
" s = get_state(i, clf, features, labels)\n",
" list.append(states, s)\n",
" if i % 1000 == 0:\n",
" print(s)\n",
" update(clf, features, labels)\n",
"\n",
"s = get_state(max_iter, clf, features, labels)\n",
"list.append(states, s)\n",
"print(s)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"反復を終えた状態で決定境界を描画する"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_dataset_with_boundary(ClassifierAdaptor(clf), features, labels)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"反復回数を横軸に取り、パラメータ a, b, c が動いていく様子を確認する"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKEAAAEWCAYAAAC+MIRNAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzs3Xl8VPW9//H3JwthDbsQ1gBhD0RkB6koiICAFCxWLbaX0lr1/lrvrb3X1nt/rV31Z6vXpdZq1arILVvFgqgUFEUUJIiRTZYgm+w7yJLt+/vjzEwmMEkmYSYzCa/n43EeZ+ac7znnc7IA8+b7/R5zzgkAAAAAAACIpoRYFwAAAAAAAICajxAKAAAAAAAAUUcIBQAAAAAAgKgjhAIAAAAAAEDUEUIBAAAAAAAg6gihAAAAAAAAEHWEUACAKmFmz5jZf4fZ9q9m9uto13SpyqrTzL5jZh+UceybZvbtKNQ0yszmR+hcO8xsZCTOVcY1hpnZ5mheI5rMzJlZRqzruJCZpZjZ52Z2RRltfmFmMyJ0vQ1mNjwS56rk9duZ2WkzS4xVDQAAoHyEUACAkMzsp2a26IJtW0vZ9s3yzuec+4Fz7lcRqi0uP/hXhHNujHPupSic+reSHorCeaPCObfcOdc11nXUNM6585JekPSfVXS9ns65ZVJkw63SXBiQOud2OefqO+cKo3ldAABwaQihAACleV/SUH/PAjNrKSlZ0lUXbMvwtUWMmVl/SQ2dcytjXUt15gtRfhHjGlwETjNT0rfNLCUC56oyZpYU6xoAAEB0EEIBAEqzWl7odKXv/dckvStp8wXbcp1zeyXJzLqZ2T/N7KiZbTazKf6TXTh0zcz+w8z2mdleM5seondTYzN7w8xOmdkqM+vkO84feOX4ht/cYmbNzGyhmR33XXu5mYX8O87MHjez3WZ20szWmNmwoH2/MLPZZvay77obzKxf0P4+ZvaJb98sSbXL+RqamT1pZid8Q6NGBO1YZmbTfa87mdk7ZnbEzA6b2atm1iio7X+a2Ze+624OPs8Fxkh6L9z7DVN/M9toZsfM7EUzK++e/detY2Z/MLOdvvv/wMzqhGg33Mz2BL3fYWb3mdlnvuNmlXbNsr5uvn1Hzewq3/tWvjbDK3j/4RhrZtt953/EzBLMGw531Mx6BdV7hZmdNbPmkbqwmSWa2c/MLNf387HGzNpKknNuj6RjkgaVcYravq/xKd/PdpbvvD8xs3kXXOtJM/ufUurYYWYjzWy0pJ9JusX3+5nj29/QzJ73/c5/aWa/tuIw+ztmtsLMHjOzo5J+Uc739hVJ7SQt8F3jP8ws3bw/Q5J8bVqZ2T9834NtZva9oFrL/D0HAADRQwgFAAjJOZcnaZW8oEm+9XJJH1yw7X1JMrN6kv4pr/fFFZJulfS0mfW88Ny+D6r/LmmkvJ5U14Qo4VZJD0pqLGmbpN/46vJfO8s3/GaWpB9L2iOpuaQW8j4El9aTZLW8EK2Jr9Y5F4QcEyT9TVIjSf+Q9JSv5lqS5kt6xXfsHEmTS7mG30BJ2yU1k/RzSX83syYh2pmk30lqJam7pLaSfuG7bldJ/yqpv3OugaQbJO0o5Xq95IWEFbnf8tzuu2YnSV0k/VeYx/1eUl9JQ3zX/g9JRWEeO0XSaEkdJPWW9J1S2pX6dXPO5cobivaqmdWV9KKkv/qHjEXY1yX1k3SVpJskTfMNh/ubpG8FtbtV0hLn3KEIXvvffecdKylV0jRJZ4L2b5KUVcbxN8n7Wfb/fMw3s2RJMySNDgp+kiTdIu/nv1TOubfkDQmd5fv99F/7JUkF8n7f+0gaJWl60KH+35Ur5P2ul/W9nSppl6Txvmv8vxCl/K+8PxNaSbpZ0m8vCG9D/p4DAIDoIoQCAJTlPRUHTsPkhVDLL9jm73kzTtIO59yLzrkC59wnkubJ+wB4oSmSXnTObXDOnZEXNl3o7865j51zBZJeVXHvq1DyJaVJau+cy/fNMxQyhHLOzXDOHfHV+AdJKZKC5yT6wDm3yDe3zCsq/gA/SF7PsP/xXWOuvICnLAeD2s+SFxDdGKKmbc65fzrnzvsCikdVHMwV+mrsYWbJzrkdvoAllEaSTlXwfsvzlHNut3PuqLxw4NbyDjCvF9o0ST9yzn3pnCt0zn3oC2bC8YRzbq/vmgtUyve+nK+bnHPPSdoqL0xNk/RAmNevqIedc0edc7sk/Y+Kv0YvSbrNinvlTVU5IU4lTJf0X865zc6T45w7ErT/lLyfi9Kscc7Ndc7ly/v61ZY0yDm3T17A/A1fu9GSDjvn1lS0QDNrIa+X3r3Oua+ccwclPSYpeC65vc65J30/p2fL+96Wc722kq6W9J/OuXPOuU8l/UXe19+vtN9zAAAQRYRQAICyvC/pajNrLKm5c26rpA8lDfFty1TxfFDtJQ00b0jccTM7Lq8XTcsQ520laXfQ+90h2uwPen1GUv0y6nxEXm+pxb5hUfeX1tDMfmxmm3xDvY5Laiivp1Jp163t6wXSStKXF4RbO8uoSaW0bxWipivM7G++YUon5fVCaSZ5QYuke+X1Ajnoa3fROXyOSWpQwfstT/D3JmT9ITSTF2aUFpaVJ6zvfVlftyDPyfs5fbKsEMyKh3Mel3S/pPuDfpYXllNvyK+Rc26VpK8kXWNm3eT1AvpHKde/+oLfHQW/N7OrS7l2W5X9dW4g6Xg4tTvnilTce0jyQjR/T65vqfIBWnt5Ae6+oPv7s7xeTxfVIYX9vS1NK0lHnXPBgexOSa2D3pf2ew4AAKKIEAoAUJaP5IUW35e0QpKccycl7fVt2+uc+8LXdrek95xzjYKW+s65u0Kcd5+kNkHv215Kkc65U865HzvnOkoaL+nfLcS8SebNh/Sf8npiNXbONZJ0Qt7Qn/Lsk9TazILbtivnmFDt94Zo9zt5wwd7O+dS5X3gDxznnJvpnLta3od5J+nhUq73mbwhc5Iu+X79gr83pdV/ocOSzskbwhdNZX7dzKy+vJ5Jz8ubZyjUUEhJknNunP/nVt7TBR8K+jkeV04dZX2N/EHOVElznXPnSrn+B8G/O75twb9LH5Ry7d0q++vcXVJOOLX7emy1Cap/vqTeZpYpr6fjq2Wcp8TthKjxvKRmQfeT6pzrWcYxZX5vQ7QPtldSEzMLDmTbSfoyzPoBAECUEEIBAErlnDsrKVvevDPLg3Z94NsW/FS8hZK6mNlUM0v2Lf3NrHuIU8+W9C9m1t03X8//rWBpByR19L8xs3FmluELfE7KG8IW6lHtDeTNS3NIUpKZ/V958+iE4yPfsT80syQzmyRpQDnHXOFrn2xm35AXCCwqpa7Tko6bWWtJPwm6t65mdp15Tzg7J+lsKfcm37mDhyyVeb/mTQpe3lPY7jGzNr4A52eSZgUd7yzERN++HjUvSHrUN0F0opkNtsg/pa3Ur5vP4/KGm02X9IakZyJ8fb+fmFlj3zCwHynoaySv99DX5YUoL0fh2n+R9Csz62ye3mbWVJJ8X5Mmksp6WmJfM5vk6wV0r7ywaKUk+QKzufLmivrYN9wwHAckpfuHIfqG9i2W9AczSzVv4vZOZlbW8Lryvrcl/gwI5pzbLa/H5u/MrLaZ9Zb0XYUfogEAgCghhAIAlOc9eWFKcE+M5b5tgRDKN/RllLx5XvbKG+7ysLw5iEpwzr0p6Ql5T9vbJi/gkbwPwOH4haSXfEN7pkjqLGmJvA+tH0l62oWegPptSW9K2iJveM45hR4KeBHnTdQ+Sd4k2cfkTdL893IOW+Wr7bC8+ZRuvmC+Hr8H5U1qfUJeWBJ83hR5PXMOy/uaXiEvDApV4yeSTpjZQN+m8u63rYq/9qWZKS9A2O5bfi1JZtZG3td7XSnH3efbt1rSUXk/C5H+d0epXzczu0nePEY/8G36d0lXmdntEa5Bkl6XtEbSp746nvfvcN4T6j6R13NnecijL82j8kLdxfIC2Ocl+Z9CeJukl8qZi+t1eT/Lx+T11prkmx/K7yV5E95XZCjeHN/6iJl94nt9h6Rakjb6rjVX3jxdpSnrd0Lyekr9l+/PgPtCHH+rpHR5fxa9Junnzrl/VuAeAABAFFgp87YCAFBlfL2l1ktKcd5E5KgkMxsl6W7n3MQw2v5F0hzn3NuVuM63JPV0zv20EmVeVszsBXlDV8N9smAkrpkibxje13wTgVf2PO0kfS6ppW8oLgAAQKURQgEAYsLMvi6vh0M9eb0tisIJToDqxMzS5fWQ6hM0f1q14BtO96ikVOfctFjXAwAAqj+G4wEAYuVOeXMV5cqb4yjUBOZAtWVmv5LXw++RahhA1ZM3vO96ST+PcTkAAKCGoCcUAAAAAAAAoi4ue0KZWVsze9fMNpnZBjP7UaxrAgAAAAAAQOXFZU8oM0uTlOac+8TMGsh74sxE59zGUO2bNWvm0tPTq7JEAAAAAAAQhjVr1hx2zjWPdR2IvaRYFxCKc26fpH2+16fMbJOk1vIe63uR9PR0ZWdnV2GFAAAAAAAgHGa2M9Y1ID7E5XC8YL6nyvSRtOqC7d83s2wzyz506FAsSgMAAAAAAECY4jqEMrP6kuZJutc5dzJ4n3PuWedcP+dcv+bN6dUHAAAAAAAQz+I2hDKzZHkB1KvOub/Huh4AAAAAAABUXlyGUGZmkp6XtMk592is6wEAAAAAAMClicsQStJQSVMlXWdmn/qWsbEuCgAAAAAAAJUTr0/H+0CSxboOAAAAAAAAREa89oQCAAAAAABADRKXPaEAAAAAAAhXUVHxUlhYch2NbaUt0W7Ttat0222x/moDlUcIBQAAAAClcM4LBC5cIhluVFVwEo/bInWey8WECYRQqN4IoQAAAIBqKDgc8X8YLy0sqch2zldyu3Ox/k5HnpmUmCglJHiL/3WktyUkSLVqRefc8bCttCWcNpU5lzFrMmoAQigAAADEjHPFAUBBQcl1OK+rc9tLDViqazji/2DtXy58X9l9yclS7dqVO9+l1BBOEBNvwQlhBoBYIYQCAACoAkVFXgBR3uIPKi51CXWeeA1i4pWZlJRUHDiU97qs/f6AJHh7WUskw5JIhTyRCmwIQADg8kUIBQAAos4/bKigQMrP95ZIBS7RDG0ieY546LUSHKpcSqDi73VSp054bSty3nhp6w9NAABA5BBCAQAQB/whjT+cCV6H2hbOvks9PtLnjjV/yFDRxX9crVpS3bqVO/ZSrhuJ4/zb6IECAABiiRAKAFBtOVccduTnS3l55b8Ot115x0Q6zIlFSOPvzeIfKnThurR9tWtX/LhQ24KvH+1ghiFAAAAAsUcIBQCXuaKi4mAl1HL+fOSCnUgFQMHBTrQlJno9YPxBin+pVav0EKZ2bal+/fACncrsi8S5GGoEAACAqkYIBQBR4u+lU1a4U9q+SOwP9xzRDnL8gU1weBPqtf+9P7wJta+s46Kxz9+DBgAAAMClI4QCUCP4A5/z54uXc+dKvq/M9vLaltd7KBqSk6WUFC8kCbX496WkSA0alL6/rGODl+CApqKBTmIiQ6AAAAAAeAihAEREYaEXzJw9e2nrygZFeXmRe/KUP+TxL7Vrl3yfkiKlppZ8X5FQJ5x9ZQVChDoAAAAAqiNCKKCGysuTzpy5ePnqq5LvLzU08q8vtddPnToXhz3B7+vUkRo1Kj0UCrWtottr1/aCHoZfAQAAAEDkEUIBMeCc14Pn9GlvOXXKW/sDoguDotK2lbW9MvP8mBWHQaHWDRpIV1xR+v4L1+G08Qc/9O4BAAAAgJqNEAoIg3NeSHTihHTyZMngKNzXF76vaEhUt+7FS716UuPGUuvWF28P1TbUOYIDIYZ6AQAAAACihRAKNV5hYXF4dOJEyaUi28Kdb6hePe/pXg0aeOv69aWmTaX09OL3F+73v65XL3RYVKcO4RAAAAAAoHojhEK1ce6cdPSotxw7Vvy6vPfHj5d/7lq1pIYNvSU11Vt36nTxNv9rf2gUHCT5QyTmEwIAAAAA4GKEUIgJ57yhaYcOSQcPhl4Hvz561JsAuzSJid6wtCZNvKV5c6lr1+L3jRoVh0ihgqXatavu3gEAAAAAuBwRQiGizp2T9u2T9u69eH3gQMmgKS8v9Dnq1/dCpObNpTZtpD59vOFs/kApOGzyLw0aMFwNAAAAAIB4RgiFsDjnhUe7dnnL7t3FAVNw2HTs2MXHJidLaWlSixZSq1bSlVcWh0xXXFFy3by5N/8RAAAAAACoWQihIMnrleQPmHbuLH4dvJw7V/IYf7jUqpXUrZt07bXea/82/7pJE+ZJAgAAAADgckcIdRk5fVrKzZW2bfPWwcuuXVJRUcn2aWlSu3ZSVpY0frz3un17b92mjdSsGUPgAAAAAABAeAihapjCQmnHDmnTpuJl82YveDp4sGTbpk29J8ANGSJNnSp17OiFTO3bS61bSykpMbkFAAAAAABQAxFCVVMFBdKWLdL69RcHTufPF7dr0cIbKjd+vBc4ZWR4606dvKfCAQAAAAAAVAVCqGrgxAnps8+knBzp00+99fr1xXM0mUnp6VL37tL113tr/9K4cUxLBwAAAAAAkBTHIZSZjZb0uKRESX9xzj0U45KqxOnT0po10qpV0scfS598In3xRfH+pk29OZruvttb9+olde0q1a0bu5oBAAAAAADKE5chlJklSvqjpOsl7ZG02sz+4ZzbGNvKIqugQNqwoThwWrVK2rixeILwjh2lfv2k6dO9wOnKK72nzTEZOAAAAIDLlnPehyb/UlgYeh2LfRculd1X2v6ePb0PiEA1FZchlKQBkrY557ZLkpn9TdJNkmpECJWXJ03rOFjHD3XU53k/Va4y1aSJNGCANHmytx4wwHv6HAAAAIAY8gcehYUVW8o7JtZhSWX2xUtNzsX6pyK6EhIuXhITvfWYMYRQqNbiNYRqLWl30Ps9kgYGNzCz70v6viS1a9eu6iqLgKL8M8re+6k2u5VK00z9snEz3XX7bWp2261e+pSQEOsSAQAAUN0UFXld7QsLi9eVWSoTuFT1cVV5rZoSePhDDP86+HUk99WqFdlzRrveSO278HVZ28razmdB1HDm4vAPVTP7hqQbnHPTfe+nShrgnPs/odr369fPZWdnV2WJl+yrr5w+mPOSHn34YS3+/HPVkfRtSfc2a6aukydLEyZI11wj1asX61IBAABiy7mSwUqk1tE4ZyyvVZ2YeR/Cgz/IV3SpzHFVea1wjquqsIT5PBBjZrbGOdcv1nUg9uI1hBos6RfOuRt8738qSc6534VqXx1DqGDr16/XYw89pFdnz9b5/HyNTUzUvxUWakRysmzYMGnUKG/JyiIZBwDgclRUJOXne2FDWUt5beLlHBUNbfwTZsabpCTvA/6F61DbIr0Ot01ll2gHPIQiwGWFEAp+8RpCJUnaImmEpC8lrZZ0m3NuQ6j21T2E8jt48KD+9Kc/6emnn9bBgwfVq1kz/Vvt2rp1zx7VlqTmzaWvfU0aNky6+movlEqK1xGVAABUgcJCL/Dwhx7+12Vtq0zbWAc7sf73WnKy92+O4CXUtvLa+AOSeA1tKrLmPwYBIGyEUPCLyxBKksxsrKT/kZQo6QXn3G9Ka1tTQii/c+fOaebMmXrssce0fv16XdGsme4eNkx3JSbqiuxsaccOr2H9+tLgwV4oNXiw1Lev1LhxTGsHAMSxoiLv6RiRCGVi2TZ4W1X+OyYhoWKBSyRCm3i4DmELAOASEULBL25DqIqoaSGUn3NOS5cu1WOPPaZFixYpJSVFt99+u/7t1luVefiwtHy59MEH0rp1xf8I79hR6tfPC6T69ZOuukpq1Ci2NwIANY1/aFReXnGoE2odb/uqckhTcIiRnFxyCbUtHtqWdTxhDAAAlUYIBT9CqGri888/1+OPP66XXnpJZ8+e1ciRI/XDH/5QY8eOVeKpU1J2dvGyZk1xbylJatNGysyUevb0lsxMqUcPJj0HEF+c84KS8+crv/a/Li2QiVS4E+0JgGvV8pbk5NDrS90XblBT2bAnKYn5XgAAQAAhFPwIoaqZI0eO6Nlnn9VTTz2lvXv3Kj09XXfffbemTZumpk2bFjc8fFj65BNv2bBBWr9e2rTJ+4Dml54ude0qZWRInTp564wMqUMHqXbtKr83AFWgqKhyoU4k16Xty8+P/P1WNKyJZvAT7j4m7AUAADUMIRT8CKGqqfz8fL3++ut66qmn9N5776l27dq67bbbdM899+iqq64KfVBhobR9e3EotWGDtG2btHWrdOJEcTszr/dUhw5S27ahlyZN+JAElKagoGrCnMqcO9I9eBITveAkJcVb/K8jva7oMbVq0RsHAAAgThBCwY8QqgZYt26d/vjHP+qVV17RmTNnNGTIEN1zzz26+eabVatWrfJP4Jx09KgXSOXmFgdTO3dKu3dLe/Z4H6qD1a0rtW4ttWghXXGFtw5+HbxOTeWDICLLP2wrVNAS7rZo9v6J9Lw7/h4ysQhzylsnJkb2XgEAAFDjEELBjxCqBjl+/Lj++te/6o9//KO2bdumFi1a6M4779Sdd96pVq1aVf7ERUXSgQNeILVrl7fevVv68kvp4EFvOXBAOnIk9PEJCd7k6I0aeU/v8y/B7xs1kho08Oapql+/5OLfVrs2YVa0OVf6U6uCl8oGP5HaFq1hW/EQ6lx47uRkJkMGAABAtUYIBT9CqBqoqKhIixcv1lNPPaVFixYpMTFRkyZN0j333KNhw4bJohXkFBRIhw4Vh1L+gOrYsZLL8eMl3+flhXf+hITiUMr/AT0lxQungt+H2ubvsZGU5K3Len3h+0h8vYqKvGFQhYUlXwcvldkeTmBUkeXCHm+RlJwceshULLZduE5OJuAEAAAAooQQCn6EUDXc9u3b9ac//UnPP/+8jh07pu7du+vOO+/UHXfcocaNG8e6PK/nzdmzXjB1+rS3fPVV8evS3vuHTJ07V/w6eLlwe16eF9wUFHjXrC78QVhCQsmQLHgp7UlX0VyCw71wgh9CHgAAAOCyRQgFP0Koy8SZM2c0e/ZsPfPMM1q1apVq166tKVOm6M4779TgwYOj1zsqHjlX3JuooCD06+D3kWBWMjgqLVQK3s4QLAAAAAA1ACEU/AihLkM5OTn685//rBkzZujUqVPq1auX7rzzTn3rW99Sw4YNY10eAAAAAKAGIYSCH10tLkNZWVl6+umntXfvXj377LOqVauW/vVf/1WtWrXSd7/7XX388ceqCeEkAAAAAACIH4RQl7H69evre9/7nrKzs5Wdna3bb79ds2bN0sCBA3XVVVfpz3/+s06dOhXrMgEAAAAAQA1ACAVJUt++ffXss89q7969evrpp+Wc0w9+8AO1atVK3/ve97Ry5Up6RwEAAAAAgEojhEIJqampuuuuu7R27Vp99NFHuvnmmzVz5kwNHjxYmZmZevTRR3Xo0KFYlwkAAAAAAKoZQiiEZGYaNGiQXnzxRe3bt0/PPfecUlNT9eMf/1itWrXS5MmTtWjRIhVG6ulxAAAAAACgRiOEQrlSU1M1ffp0ffTRR1q/fr1++MMfavny5brxxhvVvn17PfDAA8rNzY11mQAAAAAAII4RQqFCevbsqT/84Q/as2eP5s2bp6ysLD300EPKyMjQtddeqxkzZujMmTOxLhMAAAAAAMQZQihUSq1atTRp0iS98cYb2rVrl37zm99o9+7dmjp1qlq1aqW77rpLq1atYjJzAAAAAAAgSbKaEBL069fPZWdnx7qMy15RUZGWL1+u559/XnPnztXZs2fVtWtX3XHHHZo6daratm0b6xIBAAAAAFXMzNY45/rFug7EHj2hEDEJCQm65ppr9PLLL2v//v36y1/+ohYtWuiBBx5Q+/btNXLkSL388ss6ffp0rEsFAAAAAABVjJ5QiLrt27frlVde0csvv6zt27erXr16uvnmm3XHHXdo+PDhSkggCwUAAACAmoqeUPAjhEKVcc5pxYoVeumllzR79mydPHlSbdu21dSpU/Xtb39bXbp0iXWJAAAAAIAII4SCHyEUYuLs2bN6/fXX9dJLL2nx4sUqKirSoEGDdMcdd+iWW25RkyZNYl0iAAAAACACCKHgxzgoxESdOnX0zW9+U2+++aZ2796tRx55RKdPn9bdd9+ttLQ0ff3rX9ecOXN09uzZWJcKAAAAAAAigJ5QiBvOOa1du1YzZszQ3/72N+3bt08NGjTQ5MmTddttt+m6665TYmJirMsEAAAAAFQAPaHgRwiFuFRYWKhly5bp1Vdf1bx583Ty5Em1bNlS3/zmN3XbbbepX79+MrNYlwkAAAAAKAchFPzKHY5nZj8ys1TzPG9mn5jZqKooDpevxMREjRgxQi+88IL279+vOXPmaPDgwXr66ac1YMAAdevWTQ8++KC2bt0a61IBAAAAAEAYwpkTappz7qSkUZKaS/oXSQ9FqyAze8TMPjezz8zsNTNrFK1roXqoU6eObr75Zv3973/X/v379dxzz6l169Z68MEH1aVLFw0YMECPP/649u/fH+tSAQAAAABAKcIJofxjnsZKetE5lxO0LRr+KSnTOddb0hZJP43itVDNNG7cWNOnT9c777yjXbt26ZFHHlF+fr7uvfdetW7dWqNGjdKLL76oY8eOxbpUAAAAAAAQJJwQao2ZLZYXQr1tZg0kFUWrIOfcYudcge/tSkltonUtVG9t2rTRfffdp7Vr12rDhg366U9/qm3btmnatGlq0aKFxo8frxkzZujkyZOxLhUAAAAAgMteuROTm1mCpCslbXfOHTezppJaO+c+i3pxZgsk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mItq4MCBatKkSSxvAQAAAADCCqEKnHN/inolAICwpaam6vrrr9f1118vSSoqKtKWLVu0cuXKwPLrX/9aRUVFkqQuXboEQqlBgwapV69eSkoK568AAAAAAIiMsp6O5/9v8wVmdrek1ySd9+93zh2Ncm0AgDAlJCSoW7du6tatW2DC89OnTys7OzsQSr311lt6+eWXJUl169ZVv379SgRTaWlpMbwDAAAAADVdWf8NvkaSk2S+9z8J2uckdYxWUQCAS1e/fn0NHz5cw4cPlyQ557Rjx44SvaUee+wx5efnS5LatWsXmFtq4MCB6tOnj2rXrh3DOwAAAABQk5T1dLwOVVkIACC6zEwdOnRQhw4ddOutt0qSzp07p7Vr15YIpmbPni1JSkpKUu/evTVgwAD1799fAwYMUPfu3ZWYmBjL2wAAAABQTZU7IYiZTQqx+YSkdc65g5EvCQBQVWrXrq3Bgwdr8ODBgW179+7VypUrtXr1aq1evVozZ87UM888I0mqV6+e+vbtWyKYat++vcystEsAAAAAqIGeeuqppk888UQLM1P37t3Pzp8//4vyjglnVtrvShos6V3f++GSVkrqYma/dM69UumKAQBxp1WrVpo0aZImTfL+D6KoqEhbt27Vxx9/rNWrV+vjjz/Wk08+qfPnvWkCmzVrViKU6t+/v5o3bx7LWwAAAAAuC9OmTWu7fv36upE8Z2Zm5pkXXnhhd1ltsrOza//+979P++ijjz5PS0srOHDgQFjDJcIJoYokdXfOHZAkM2sh6U+SBkp6XxIhFADUYAkJCeratau6du2qqVOnSpLy8vK0bt26EsHUm2++KeecJCk9PT0QSg0YMEBXXXWV6tevH8vbAAAAABAhb7/9dur48eOPpaWlFUhSixYtCsM5LpwQKt0fQPkclNTFOXfUzPIrUSsAoJqrVauW+vbtq759++quu+6SJJ06dUqffPJJIJRavXq15syZI8kLsnr06KH+/furf//+6tevn3r16sXE5wAAAMAlKK/HUrQ452RmrqLHhRNCLTezhZLm+N5PlvS+mdWTdLyiFwQA1EwNGjTQNddco2uuuSaw7dChQyVCqQULFujFF1+U5E18npmZGQiz+vbtq969exNMAQAAAHFu9OjRJ2+++eaMn/3sZwdatmxZeODAgcRwekOZf+hEqQ282WYnSxoqySR9IGme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\n",
"text/plain": [
"<Figure size 1296x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(18, 4))\n",
"plt.title('Weights and bias (a, b, c in ax + by + c) by iteration')\n",
"plt.xlabel('Iteration')\n",
"plt.ylabel('Weights and bias')\n",
"ax = sns.lineplot(x=[s['i'] for s in states], y=[s['a'] for s in states], color='b', label='a', legend=False)\n",
"sns.lineplot(x=[s['i'] for s in states], y=[s['b'] for s in states], color='r', label='b', legend=False)\n",
"sns.lineplot(x=[s['i'] for s in states], y=[s['c'] for s in states], color='k', label='c', legend=False)\n",
"ax.figure.legend(loc='center right')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"同様に、コスト関数の値と誤分類数が減少していく様子を確認する"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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iYiIiIiIiEi6ONTdu7p79+j1NcC/3b0j8O/otVRjmhEVo/9e9SqbJn7NvvsUulCvHlx8MeTkxFKXiIiIiIiISJroBxwSPX8KGAVcHVcxsvUURMVo02tv0OP75/GRYImTiebxbdvC6afHVZqIiIiIiIhIZco0s3FJr4e4+5BCYxx438wceDS63sLd5wO4+3wz276K6pUUURAVo3l3PEvG75/l41Fw0EHRyTVrICsL5syJszQRERERERGRypSftNyuOPu7+7wobBppZt9VRWFStdQjKkaHHw6ZmfDuu0kn69eHRo1g7tzY6hIRERERERGpau4+L3pcBLwO9AAWmllLgOhxUXwVSmVQEBWjnBw45BB46in45ZekC7m5mhElIiIiIiIi2wwzyzKz7MRzoDcwCRgGnBUNOwt4M54KpbIoiIrZLbfAwoVwTXLf/9xczYgSERERERGRbUkL4FMzmwj8F3jb3d8DbgOOMLPpwBHRa6nG1CMqZnvvDZddBvfcA6edBgccQAiiJk2KuzQRERERERGRKuHuM4EuRZxfAvSq+ookVTQjKg3ccAO0awcDBsC6dUDr1rBgAeTnx12aiIiIiIiIiEilURCVBrKy4NFH4bvvwlI9cnNh06awZk9EREREREREpIZQEJUmeveGM86AW2+FWRtyw0k1LBcRERERERGRGkRBVBq55x5o3Biuvi8KotSwXERERERERERqEAVRaaRZMxg6FD6ariBKRERERERERGoeBVFp5rjj4PjzmrGe2sweoyBKRERERERERGoOBVFp6O57a7EwM5dxb8xlxYq4qxERERERERERqRwKotJQdjY03C2XRqvncNllcVcjIiIiIiIiIlI5FESlqZzdctmjyVyefBJefDHuakREREREREREtp6CqHSVm0vTdXPZr6czYABMmxZ3QSIiIiIiIiIiWyelQZSZ9TGzqWY2w8yuKWbMSWY2xcwmm9nzSefviM59a2b3mZmlsta0k5uLrVnDS0N+oW5dOPFEWLs27qJERERERERERCouZUGUmWUADwJHAZ2A/mbWqdCYjsAgYH933x24LDq/H7A/sCfQGdgbODhVtaalVq0AaJ0xn2eega+/Rv2iRERERERERKRaS+WMqB7ADHef6e7rgReBfoXGDAAedPdlAO6+KDrvQD2gDlAXqA0sTGGt6adhw/C4YgVHHQXX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fhpGjgwzo/bZB844IzRB3377uCsUEREREZHqzszWuHtWij57I7CaMPtpO2BN4hJQz91rp+K+FTFx4sRZXbp0+TnuOh566KEmDz/8cIsNGzbYXnvttfrpp5/+MScn5zcDBw5c+OGHH+bceeedc84999z2/fv3//mjjz7KueCCCxZ17tx53UUXXbTj2rVra+24446/Pv/887OaN2++sUePHrv06NFj1ZgxYxocffTRy6+//vrNOhNPnDixWZcuXdolXqvDtxQtLw/eeqvg9cUXw7PPxlePpExWVthh79RTQz+p558PodTFF8Oll4ZeU6ecAr/9LTRqVPrniYiIiIiIVCV3z4i7hgo599w2TJpUv1I/s3PnNTzxxOyShnz55Zf1Xn311Sbjxo37rm7dun766ae3feSRR5quXbu2VufOndcOHjz4f/2969Wrt2n8+PFTAfLy8jrde++9P/Xt23fVZZdd1urqq69u9UR0r+XLl2eMHTt2allKLK1HlEjQujX88kuYPiM1VsuWYSLcxInwzTdwzTUwYwacey60aBHCqJdegjVrSv8sERERERERST/vvfde9qRJk+p36dJlt1133bXTp59+mjNz5sy6GRkZnH322cuSx5555pnLAJYsWZKxcuXKjL59+64CGDBgwJIvvviiQWJc//79l5b1/poRJWWTmxse584Ns6WkxuvcGW66CW68EcaOhRdfDCHUG2+EWVTHHQf9+8ORR0KdOnFXKyIiIiIiUs2UMnMpVdzdTjzxxCUPPvjg3OTzjzzySIvMzM1jouzs7DJta1XWcaAZUVJWyUGUbFPMoEeP0Kv+p59g1Cg4/XR4//0QRrVoEXbeGzkSytCXTkRERERERGLUp0+fFcOHD288d+7cTICFCxdmTJs2rcTpBU2bNt2Yk5Oz8b333msA8Pjjjzft2bPnqorcX0GUlI2CKAEyMsIOe488EvpJvfMOHHtsmCnVuzfssAOcdx68+25Bn3sRERERERFJH926dVt37bXXzu3Vq1deXl5ep8MOOyxv9uzZpTZ0f/LJJ3+4+uqrW+fl5XX6+uuvt7vtttvmlfaeomjXPCmbVasgOxtuvTU0DhJJsnYtjBgB//oXDBsGK1ZAw4bQrx+ccAIccQTUqxd3lSIiIiIiEpdU7ppXnaTLrnlVqfCueZoRJWXToEFIFjQjSoqw3XZw/PHw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\n",
"text/plain": [
"<Figure size 1296x288 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(18, 4))\n",
"plt.title('Costs and errors by iteration')\n",
"plt.xlabel('Iteration')\n",
"plt.ylabel('Cost')\n",
"ax = sns.lineplot(x=[s['i'] for s in states], y=[s['cost'] for s in states], color='b', label='cost', legend=False)\n",
"ax2 = ax.twinx()\n",
"sns.lineplot(x=[s['i'] for s in states], y=[s['errors'] for s in states], color='r', label='error', legend=False)\n",
"plt.ylabel('Error')\n",
"ax.figure.legend(loc='center right')\n",
"plt.show()"
]
}
],
"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.7.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment