Skip to content

Instantly share code, notes, and snippets.

@riodeja5
Created November 18, 2018 13:49
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 riodeja5/5b075a3f1f3f2ae70864905160bbbdc4 to your computer and use it in GitHub Desktop.
Save riodeja5/5b075a3f1f3f2ae70864905160bbbdc4 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import mglearn\n",
"from IPython.display import display\n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3.3.1 さまざまな前処理"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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vDzCw8NdFp+ISHN8+GEhv/nNEbKzC/nWtwJISvoWJ06UUFbW8ESt4mJ77QqBzz2Xy4svHudf/xpXZ8W7lJSOZGbeVvt9XNwT/PSnzwMwc+ZMxowZw69+9asWeT733BPJsWOHG9wDzGL5eo7Yyy+f4OGHc6iqclBdXVNcbdlyjkmTerB69QivW1TCMAxeeGEgs2dn15unFRRkIT6+LaNGdfZQdOItsrKyePfdd4GWzzXxPPVoiV85e/br8fGZmZkkJibWa5OSksLRo0c5efIklZWVrF69Wt32IuIRL710nFGj3mHNmtMcO1ZMdnYhmZl5mKbZwPC/+srLHZw9W878+R85bffFF1/Qo0dNgdOjRw/On294+F55eTnJycmMGDGC9evXN/8JAfPm9SU01Npgz1ZIiJWf/jSGn//8IA899CFlZfbaIgugpMTOpk1n+fOfj9/QtVva9Om9+OMfh9C+fQDt2tlo185GcLCF1NRubNs22q/2GJOGuTPXxPPUoyV+5amnniInJwfDMIiKiuKll14C4MyZM8yZM4fNmzdjs9lYvnw5aWlp2O12Zs+eTUJCgocjFxF/c+pUCY88klOv56e01EFgoMHAge05dqyEoqIqgoIsVFU5GlyNsLraZOPGs4wZcwcXLnxR7/ySJUuaHNPnn39OeHg4J06c4Pbbb2fgwIH07du3XruMjAwyMjIA6s1f7dIliN27b+euu97n889LsVoNTBPatQvg/vt7cccd/0d1tdnoyoqlpXZeeOEI8+fHNDlud5o9uw/33deb994roKSkmltu6UBkZKinwxI3GjduHOfOnat33N25Jp5nNHOss3cOjBbxAsnJyWRnZ3s6DBFv5W0f5Xv9+9miRR/zu9992ujGxG3a2CgsnIrDAQsWfMjLL59q9LHatLHx4Yfj6NevbYPn4+LiePfdd+nRowdnz55lzJgxHDlyxGl8s2bNYsqUKUybNs1pO2evjfv2FXL8eAk9egRjmiZpaTsbXB79WoYBdvs09RDV542/EK/PNXfyVK6JyzUp1zR0UERExAvl5l5utMgCqKpycOlSFYGBFvr2bUtwcONv6VVVjjpztK6Vnp7OypUrAVi5ciVTp06t16awsJCKigoALly4wO7du296f8EhQzowbVoEt93WmSVLDjepyIKawlFFlvgiT+WaeIYKLRERES8UFRXmdDlw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mWegXPN2KrRERET8wPbt22/6McLDa+Zfde3alTvvvJO9e/c2eAM4d+5c5s6dC6DJ/OJX3JlnoFzzdho6KH5l+vTpJCUlkZSURFRUFElJSQ2204o/IiJ1lZSUcOXKldp/v/XWWyQmJno4KpHWRXnWuqjQEr/yj3/8g5ycHHJycrj77ru56667Gm37zjvvkJOT43QJVhGR1iAzM5OIiAj27NnD5MmTSUtLA+DMmTNMmjQJgC+++IKRI0cyePBghg0bxuTJk5kwYYInwxbxKcoz/2OYptmc9s1qLOKtTNOkV69e7Nixg9jY2Hrno6KiyM7ObtbSqsnJySrKRBpneDqAa+j9zE302uhW3pZnoFxzG+WaWzUp19SjJX5p586ddOvWrcEiC7Tij4iIiIjcHC2GIa1OU1b8WbVqFffee2+jj6GVtURERETkZmjooPid6upqevbsyYcffkhERMR12y9evJg2bdrwxBNPOG2nLnsRp7xtSJPez9xEr41u5W15Bso1t1GuuZWGDoo0ZPv27fTv37/RIksr/oiIiIjIzVKhJX5n9erV9YYNasUfEREREXElzdESv7NixYp6x8LDw9m8eTMA0dHR7N+/381RiYiIiEhroh4tERERERERF1OhJSIiIiIi4mIqtERERERERFxMhZaIiIiIiIiLqdASERERERFxMRVaIiIiIiIiLqZCS0RERERExMVUaImIiIiIiLiYCi0REREREREXU6ElIiIiIiLiYiq0RERE/NyTTz5J//79GTRoEHfeeSeXLl1qsN3WrVuJi4sjJiaGZcuWuTlKEd+nXPMvKrRERET8XGpqKgcPHuTAgQP069eP559/vl4bu93O/Pnz2bJlC7m5uaxatYrc3FwPRCviu5Rr/kWFloiIiJ8bP348NpsNgBEjRpCXl1evzd69e4mJiSE6OprAwEBmzJhBVlaWu0MV8WnKNf+iQktERERqvfrqq0ycOLHe8fz8fCIjI2u/j4iIID8/352hibQqyrXWzzBN09MxiLQKhmFsNU1zgqfjEBFpiGEY24HuDZx6xjTNrK/aPAMkA3eZ19wgGIbxfSDNNM05X31/PzDMNM2fNHCtucDcr74NNk0z0XXPRMS7KdfkKpunAxBpLVRkiYg3M01znLPzhmHMBKYAd1x74/eVPCDyG99HAGcauVYGkHGDoYr4NOWaXKWhgyIiIn7OMIwJwNNAummapY00+xcQaxhGH8MwAoEZwAZ3xSjSGijX/IsKLREREVkOtAW2GYaRYxjGfwEYhhFuGMZmANM0q4EFwJvAYWCNaZqHPBWwiI9SrvkRzdESERERERFxMfVoiYiIiIiIuJgKLRERERERERdToSUiIiIiIuJiKrRERERERERcTIWWiIiIiIiIi6nQEhERERERcTEVWiIiIiIiIi6mQktERERERMTF/h9RG98Ikyk7jgAAAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 1080x576 with 5 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"mglearn.plots.plot_scaling()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"疑問:RebustScalerは中央値と四方位数を用いるが、なぜ外れ値を無視できるのか?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3.3.2 データ変換の適用"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.datasets import load_breast_cancer\n",
"from sklearn.model_selection import train_test_split\n",
"cancer = load_breast_cancer()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"X_train, X_test, y_train, y_test = train_test_split(cancer.data, cancer.target, random_state=1)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(426, 30)\n",
"(143, 30)\n"
]
}
],
"source": [
"print(X_train.shape)\n",
"print(X_test.shape)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"# 前処理 MinMaxScalerをインポートし、インスタンスを生成\n",
"from sklearn.preprocessing import MinMaxScaler\n",
"scaler = MinMaxScaler()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"MinMaxScaler(copy=True, feature_range=(0, 1))"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# スケール変換器を適合させる\n",
"# ※スケール変換器のfitメソッドには、データXのみを与え、yは与えない\n",
"scaler.fit(X_train)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"# データを変換\n",
"X_train_scaled = scaler.transform(X_train)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"transformed shape: (426, 30)\n",
"per-feature minimum before scaling:\n",
" [6.981e+00 9.710e+00 4.379e+01 1.435e+02 5.263e-02 1.938e-02 0.000e+00\n",
" 0.000e+00 1.060e-01 5.024e-02 1.153e-01 3.602e-01 7.570e-01 6.802e+00\n",
" 1.713e-03 2.252e-03 0.000e+00 0.000e+00 9.539e-03 8.948e-04 7.930e+00\n",
" 1.202e+01 5.041e+01 1.852e+02 7.117e-02 2.729e-02 0.000e+00 0.000e+00\n",
" 1.566e-01 5.521e-02]\n",
"per-feature maximum before scaling:\n",
" [2.811e+01 3.928e+01 1.885e+02 2.501e+03 1.634e-01 2.867e-01 4.268e-01\n",
" 2.012e-01 3.040e-01 9.575e-02 2.873e+00 4.885e+00 2.198e+01 5.422e+02\n",
" 3.113e-02 1.354e-01 3.960e-01 5.279e-02 6.146e-02 2.984e-02 3.604e+01\n",
" 4.954e+01 2.512e+02 4.254e+03 2.226e-01 9.379e-01 1.170e+00 2.910e-01\n",
" 5.774e-01 1.486e-01]\n",
"per-feature minimum after scaling:\n",
" [0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
" 0. 0. 0. 0. 0. 0.]\n",
"per-feature maximum after scaling:\n",
" [1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.\n",
" 1. 1. 1. 1. 1. 1.]\n"
]
}
],
"source": [
"# スケール変換の前後のデータ特性をプリント\n",
"print(\"transformed shape: {}\".format(X_train_scaled.shape))\n",
"print(\"per-feature minimum before scaling:\\n {}\".format(X_train.min(axis=0)))\n",
"print(\"per-feature maximum before scaling:\\n {}\".format(X_train.max(axis=0)))\n",
"print(\"per-feature minimum after scaling:\\n {}\".format(X_train_scaled.min(axis=0)))\n",
"print(\"per-feature maximum after scaling:\\n {}\".format(X_train_scaled.max(axis=0)))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"# テストデータを変換\n",
"X_test_scaled = scaler.transform(X_test)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"per-feature minimum after scaling:\n",
" [ 0.0336031 0.0226581 0.03144219 0.01141039 0.14128374 0.04406704\n",
" 0. 0. 0.1540404 -0.00615249 -0.00137796 0.00594501\n",
" 0.00430665 0.00079567 0.03919502 0.0112206 0. 0.\n",
" -0.03191387 0.00664013 0.02660975 0.05810235 0.02031974 0.00943767\n",
" 0.1094235 0.02637792 0. 0. -0.00023764 -0.00182032]\n",
"per-feature maximum after scaling:\n",
" [0.9578778 0.81501522 0.95577362 0.89353128 0.81132075 1.21958701\n",
" 0.87956888 0.9333996 0.93232323 1.0371347 0.42669616 0.49765736\n",
" 0.44117231 0.28371044 0.48703131 0.73863671 0.76717172 0.62928585\n",
" 1.33685792 0.39057253 0.89612238 0.79317697 0.84859804 0.74488793\n",
" 0.9154725 1.13188961 1.07008547 0.92371134 1.20532319 1.63068851]\n"
]
}
],
"source": [
"# スケール返還の前後のデータ特性をプリント\n",
"print(\"per-feature minimum after scaling:\\n {}\".format(X_test_scaled.min(axis=0)))\n",
"print(\"per-feature maximum after scaling:\\n {}\".format(X_test_scaled.max(axis=0)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"※訓練データと同じ変換をテストデータに施すため、テストデータは0~1の範囲からはみ出してスケーリングされる場合もある!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3.3.3 訓練データとテストデータを同じように変換する"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.datasets import make_blobs"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"# 合成データを作成\n",
"X, _ = make_blobs(n_samples=50, centers=5, random_state=4, cluster_std=2)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"# 訓練セットとデータセットに分割\n",
"X_train, X_test, = train_test_split(X, random_state=5, test_size=.1)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 936x288 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 訓練セットとテストセットをプロット\n",
"fig, axes = plt.subplots(1, 3, figsize=(13, 4))\n",
"axes[0].scatter(X_train[:, 0], X_train[:, 1],\n",
" c=mglearn.cm2(0), label=\"Training set\", s=60)\n",
"axes[0].scatter(X_test[:, 0], X_test[:, 1], marker='^',\n",
" c=mglearn.cm2(1), label=\"Test set\", s=60)\n",
"axes[0].legend(loc='upper left')\n",
"axes[0].set_title(\"Original Data\")\n",
"\n",
"# MinMaxScalerでデータをスケール変換\n",
"scaler = MinMaxScaler()\n",
"scaler.fit(X_train)\n",
"X_train_scaled = scaler.transform(X_train)\n",
"X_test_scaled = scaler.transform(X_test)\n",
"\n",
"# スケール変換されたデータの特性を可視化\n",
"axes[1].scatter(X_train_scaled[:, 0], X_train_scaled[:, 1],\n",
" c=mglearn.cm2(0), label=\"Training set\", s=60)\n",
"axes[1].scatter(X_test_scaled[:, 0], X_test_scaled[:, 1], marker='^',\n",
" c=mglearn.cm2(1), label=\"Test set\", s=60)\n",
"axes[1].set_title(\"Scaled Data\")\n",
"\n",
"# テストセットを訓練セットとは別にスケール変換\n",
"# 最大値と最小値が0,1になる。ここでは説明のためにわざとやっている\n",
"# *実際にやってはいけない!*\n",
"test_scaler = MinMaxScaler()\n",
"test_scaler.fit(X_test)\n",
"X_test_scaled_badly = test_scaler.transform(X_test)\n",
"\n",
"# 間違ってスケール変換されたデータを可視化\n",
"axes[2].scatter(X_train_scaled[:, 0], X_train_scaled[:, 1],\n",
" c=mglearn.cm2(0), label=\"Training set\", s=60)\n",
"axes[2].scatter(X_test_scaled_badly[:, 0], X_test_scaled_badly[:, 1], marker='^',\n",
" c=mglearn.cm2(1), label=\"Test set\", s=60)\n",
"axes[2].set_title(\"Scaled Data\")\n",
"\n",
"for ax in axes:\n",
" ax.set_xlabel(\"Feature 0\")\n",
" ax.set_xlabel(\"Feature 1\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3.3.4 教師あり学習における前処理の効果"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.svm import SVC"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [],
"source": [
"X_train, X_test, y_train, y_test = train_test_split(cancer.data, cancer.target, random_state=0)"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Test set accuracy: 0.63\n"
]
}
],
"source": [
"svm = SVC(C=100)\n",
"svm.fit(X_train, y_train)\n",
"print(\"Test set accuracy: {:.2f}\".format(svm.score(X_test, y_test)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"前処理をしなかった場合の精度はこんなもの。。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"今度はSVCに掛ける前に、MinMaxScalerを使ってスケール変換してみる"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Scaled test set accuracy: 0.97\n"
]
}
],
"source": [
"# 0-1 スケール変換で前処理\n",
"scaler = MinMaxScaler()\n",
"scaler.fit(X_train)\n",
"X_train_scaled = scaler.transform(X_train)\n",
"X_test_scaled = scaler.transform(X_test)\n",
"\n",
"# 変換された訓練データで学習\n",
"svm.fit(X_train_scaled, y_train)\n",
"\n",
"# 変換されたテストセットでスコア計算\n",
"print(\"Scaled test set accuracy: {:.2f}\".format(svm.score(X_test_scaled, y_test)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"精度めっちゃ上がった!"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Scaled test set accuracy: 0.96\n"
]
}
],
"source": [
"# 平均を0に分散を1に前処理\n",
"from sklearn.preprocessing import StandardScaler\n",
"scaler = StandardScaler()\n",
"scaler.fit(X_train)\n",
"X_train_scaled = scaler.transform(X_train)\n",
"X_test_scaled = scaler.transform(X_test)\n",
"\n",
"# 変換された訓練データで学習\n",
"svm.fit(X_train_scaled, y_train)\n",
"\n",
"# 変換されたテストセットでスコア計算\n",
"print(\"Scaled test set accuracy: {:.2f}\".format(svm.score(X_test_scaled, y_test)))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment