{ "cells": [ { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "LkTpaRRWZNc3" }, "source": [ "# Линейная регрессия\n" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "Y5HVNycSZNc5" }, "source": [ "Загрузим необходимые библиотеки" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "Lrhz2sFvZNc7" }, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "from matplotlib import pyplot as plt\n", "plt.style.use('ggplot')\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "BqWbfcF3ZNdB" }, "source": [ "# Линейная регрессия" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "Ro-ttLpiZNdC" }, "source": [ "Линейные методы предполагают, что между признаками объекта и целевой переменной существует линейная зависимость, то есть:\n", "$$ y = w_1 x_1 + w_2 x_2 + ... + w_k x_k + b,$$\n", "где у - целевая переменная (что мы хотим предсказать), $x_i$ -- признак объекта х, $w_i$ -- вес i-го признака, b -- bias (смещение, свободный член)\n", "\n", "Часто предполагают, что объект х содержит в себе фиктивный признак, который всегда равен 1, тогда bias это есть вес этого признака. В этом случае формула принимает простой вид:\n", "$$ y = . $$\n", "\n", "В матричной форме, в случае, когда у нас есть n объектов формулу можно переписать следующим образом:\n", "$$ Y = Xw,$$\n", "Y -- вектор размера n, X -- матрица объекты-признаки размера $n \\times k$, w -- вектор весов размера k.\n", "\n", "Решение по методу наименьших квадратов дает \n", "$$ w = (X^TX)^{-1}X^TY $$" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "aStEfJYSZNdE" }, "source": [ "Сгенерируем искусственные данные. " ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "d3tzSTkrZNdF" }, "outputs": [], "source": [ "def generate_data(n_points=20):\n", " \"\"\"\n", " Принимает на вход n_points точек \n", " Возвращает данные для обучения и теста\n", " \"\"\"\n", " X = np.linspace(-5, 5, n_points)\n", " y = 10 * X - 7\n", "\n", " X_train = X[0::2].reshape(-1, 1)\n", " y_train = y[0::2] + np.random.randn(int(n_points/2)) * 10\n", "\n", " X_test = X[1::2].reshape(-1, 1)\n", " y_test = y[1::2] + np.random.randn(int(n_points/2)) * 10\n", "\n", " print(f'Generated {len(X_train)} train samples and {len(X_test)} test samples')\n", " return X_train, y_train, X_test, y_test" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "colab_type": "code", "id": "bnYHO2TjZNdJ", "outputId": "2b4e9029-7860-4073-e82a-9e7e0a767e59" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Generated 50 train samples and 50 test samples\n" ] } ], "source": [ "X_train, y_train, X_test, y_test = generate_data(100)" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "qNoMoAS_ZNdN" }, "source": [ "Визуализируем данные, используя библиотеку matplotlib." ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 320 }, "colab_type": "code", "id": "NhP-hMcZZNdO", "outputId": "c3172665-9656-4d8e-dfc4-79f128361df2" }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(10, 5))\n", "plt.plot(X, y, label='real')\n", "plt.scatter(X_train, y_train, label='train')\n", "plt.scatter(X_test, y_test, label='test')\n", "plt.legend(loc='best')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "d9YIzZZbZNdS" }, "source": [ "Поработаем с простейшим одномерным случаем регрессии. Обучим нашу модель на тренировочной выборке и предскажем значения на тестовой выброке.\n", "Предсказанные ответы сохраним в переменную $\\textbf{predictions}$, а веса модели сохраним в переменные $\\textbf{w}$, $b$." ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "OZdxUF6bZNdU" }, "outputs": [], "source": [ "from sklearn.linear_model import LinearRegression" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "f_4FQwTFZNdX" }, "outputs": [], "source": [ "model = LinearRegression()\n", "\n", "model.fit(X_train, y_train) # обучение модели\n", "\n", "w = model.coef_\n", "b = model.intercept_" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "colab_type": "code", "id": "a2y8H_BZZNdZ", "outputId": "66dca6f7-3eda-4db2-b8ea-49d4a58cb662" }, "outputs": [ { "data": { "text/plain": [ "(array([10.47529992]), -7.2406428307811455)" ] }, "execution_count": 32, "metadata": { "tags": [] }, "output_type": "execute_result" } ], "source": [ "w, b" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "RckNQHn1ZNdc" }, "source": [ "Визуализируем предсказания." ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 320 }, "colab_type": "code", "id": "4VsfN70CZNdd", "outputId": "e515e8ae-c880-41ba-84d9-adccddbf9167" }, "outputs": [ { "data": { "image/png": "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\nODCL3xdjNb8AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(10, 5))\n", "plt.plot(X, y, label='real')\n", "plt.scatter(X_train, y_train, label='train')\n", "plt.scatter(X_test, y_test, label='test')\n", "plt.plot(X[1::2], X[1::2].reshape(-1, 1).dot(w) + b, label='predicted')\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "dFQqRj1lZNdg" }, "source": [ "## Оценка результатов\n", "\n", "Вычислим среднеквадратичную ошибку на трейне и на тесте. Также вычислим среднюю абсолютную ошибку." ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "colab_type": "code", "id": "_4zvxDHyZNdh", "outputId": "ecc9564d-968e-44cd-f83c-dc9882f2c4a6", "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Train MSE: 88.77300880739152\n", "Test MSE: 122.86660907304123\n" ] } ], "source": [ "from sklearn.metrics import mean_squared_error\n", "\n", "y_train_predicted = model.predict(X_train)\n", "y_test_predicted = model.predict(X_test)\n", "\n", "print('Train MSE: ', mean_squared_error(y_train, y_train_predicted))\n", "print('Test MSE: ', mean_squared_error(y_test, y_test_predicted))" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "colab_type": "code", "id": "yfxuHthgZNdk", "outputId": "5446a2cc-3370-46d1-ca69-492eac539010" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Train MAE: 7.237859725601128\n", "Test MAE: 8.206583753196504\n" ] } ], "source": [ "from sklearn.metrics import mean_absolute_error\n", "\n", "print('Train MAE: ', mean_absolute_error(y_train, y_train_predicted))\n", "print('Test MAE: ', mean_absolute_error(y_test, y_test_predicted))" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "feMIFS82ZNdn" }, "source": [ "# Реальный датасет" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "_NVLc80wZNdn" }, "source": [ "Будем работать с датасетом Boston. Этот датасет описывает средние цены на недвижимость в районах Бостона в $1000. \n", "Примеры признаков города: количество преступлений на душу населения, процент старых домов в районе, количество учеников на одного учителя и т.д. Обратите внимание на то, что данные уже оцифрованы там, где изначально признаки были качественными." ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "yMC-plFGZNdo" }, "source": [ "Загрузим датасет, выведем информацию" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "ZN6sApHcZNdo" }, "outputs": [], "source": [ "from sklearn.datasets import load_boston\n", "from sklearn.metrics import accuracy_score, roc_curve, roc_auc_score, f1_score" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "YBgnP7HcZNdq" }, "outputs": [], "source": [ "house_data = load_boston()" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "xEVoaQjaZNdu" }, "outputs": [], "source": [ "X = pd.DataFrame(house_data['data'], columns=house_data['feature_names'])\n", "y = house_data['target']" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 419 }, "colab_type": "code", "id": "rb3z1v7oZNdy", "outputId": "5dc0ff6e-c345-4f4d-a744-3d1a3eb6be98" }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTATmy_feature
00.0063218.02.310.00.5386.57565.24.09001.0296.015.3396.904.980.11376
10.027310.07.070.00.4696.42178.94.96712.0242.017.8396.909.140.00000
20.027290.07.070.00.4697.18561.14.96712.0242.017.8392.834.030.00000
30.032370.02.180.00.4586.99845.86.06223.0222.018.7394.632.940.00000
40.069050.02.180.00.4587.14754.26.06223.0222.018.7396.905.330.00000
.............................................
5010.062630.011.930.00.5736.59369.12.47861.0273.021.0391.999.670.00000
5020.045270.011.930.00.5736.12076.72.28751.0273.021.0396.909.080.00000
5030.060760.011.930.00.5736.97691.02.16751.0273.021.0396.905.640.00000
5040.109590.011.930.00.5736.79489.32.38891.0273.021.0393.456.480.00000
5050.047410.011.930.00.5736.03080.82.50501.0273.021.0396.907.880.00000
\n", "

506 rows × 14 columns

\n", "
" ], "text/plain": [ " CRIM ZN INDUS CHAS ... PTRATIO B LSTAT my_feature\n", "0 0.00632 18.0 2.31 0.0 ... 15.3 396.90 4.98 0.11376\n", "1 0.02731 0.0 7.07 0.0 ... 17.8 396.90 9.14 0.00000\n", "2 0.02729 0.0 7.07 0.0 ... 17.8 392.83 4.03 0.00000\n", "3 0.03237 0.0 2.18 0.0 ... 18.7 394.63 2.94 0.00000\n", "4 0.06905 0.0 2.18 0.0 ... 18.7 396.90 5.33 0.00000\n", ".. ... ... ... ... ... ... ... ... ...\n", "501 0.06263 0.0 11.93 0.0 ... 21.0 391.99 9.67 0.00000\n", "502 0.04527 0.0 11.93 0.0 ... 21.0 396.90 9.08 0.00000\n", "503 0.06076 0.0 11.93 0.0 ... 21.0 396.90 5.64 0.00000\n", "504 0.10959 0.0 11.93 0.0 ... 21.0 393.45 6.48 0.00000\n", "505 0.04741 0.0 11.93 0.0 ... 21.0 396.90 7.88 0.00000\n", "\n", "[506 rows x 14 columns]" ] }, "execution_count": 45, "metadata": { "tags": [] }, "output_type": "execute_result" } ], "source": [ "X['my_feature'] = X['CRIM'] * X['ZN']\n", "X" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "CoQsbQuNZNd0" }, "source": [ "Визуализируем распределения признаков в датасете" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 609 }, "colab_type": "code", "id": "Yg_KNjVwZNd0", "outputId": "5189563a-cdcb-4f35-ae56-cf97ac27cc67" }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" } ], "source": [ "_ = X.hist(X.columns, figsize=(10, 10))" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "NooZ9aKZdT-p" }, "source": [ "Посмотрим на то, как скоррелированы данные" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 329 }, "colab_type": "code", "id": "cyfN1MHdZNd3", "outputId": "94ef5d5d-f095-4401-9f5c-70dbed42dcae" }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 48, "metadata": { "tags": [] }, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" } ], "source": [ "import seaborn as sns\n", "\n", "sns.heatmap(X.corr())" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "RGWh_vjvZNd4" }, "source": [ "Сделаем предсказание: какие факторы окажутся наиболее значимыми и в какую сторону?" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "YuLPyVk0ZNd5" }, "source": [ "## Обучение на реальных данных\n", "\n", "Разобьём выборку на train и test в соотношении 70/30." ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "xuKzTLNoZNd5" }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, train_size=0.7)" ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "colab_type": "code", "id": "DLotzZGfZNd7", "outputId": "d962406e-7f86-46c5-afbe-7970f3ec500b" }, "outputs": [ { "data": { "text/plain": [ "((354,), (152,))" ] }, "execution_count": 50, "metadata": { "tags": [] }, "output_type": "execute_result" } ], "source": [ "y_train.shape, y_test.shape" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "Nx6qQ1DhZNd9" }, "source": [ "Выполним нормировку данных" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "Zlnwdj1zZNd9" }, "outputs": [], "source": [ "from sklearn.preprocessing import StandardScaler\n", "\n", "scaler = StandardScaler()\n", "\n", "X_train = scaler.fit_transform(X_train)\n", "X_test = scaler.transform(X_test)" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "xalTD7QhZNeA" }, "source": [ "Обучим линейную регрессию и подсчитаем её качество на тесте." ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "QN5tHR5cZNeA" }, "outputs": [], "source": [ "model = LinearRegression()\n", "\n", "model.fit(X_train, y_train)\n", "\n", "y_train_prediction = model.predict(X_train)\n", "y_test_prediction = model.predict(X_test)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 85 }, "colab_type": "code", "id": "AxBaxPBlZNeC", "outputId": "c0b5c7e4-9320-44f4-8c06-9f10ccd8b3a7" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Train MSE: 20.59134823193381\n", "Test MSE: 25.89285169586869\n", "Train MAE: 3.240607383349824\n", "Test MAE: 3.51198527132136\n" ] } ], "source": [ "print('Train MSE: ', mean_squared_error(y_train, y_train_prediction))\n", "print('Test MSE: ', mean_squared_error(y_test, y_test_prediction))\n", "\n", "print('Train MAE: ', mean_absolute_error(y_train, y_train_prediction))\n", "print('Test MAE: ', mean_absolute_error(y_test, y_test_prediction))" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "ifKs5lU9ZNeD" }, "source": [ "Визуализируем получившиеся веса" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 502 }, "colab_type": "code", "id": "JzEISYKVZNeE", "outputId": "11f65944-ad12-4c61-eab3-b586cd1fff3e" }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 54, "metadata": { "tags": [] }, "output_type": "execute_result" }, { "data": { "image/png": "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\nAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(20, 8))\n", "plt.bar(X.columns, model.coef_)" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "DQQn1Y-fZNeH" }, "source": [ "## Ridge & Lasso\n", "\n", "Попытаемся исправить проблему переобучения для линейной регрессии. Замечено, что линейная регрессия переобучается, когда вектор весов имеет очень большие значения. Постараемся избежать этого, прибавив к функции потерь дополнительное слагаемое.\n", "\n", "### Ridge regression:\n", "$$L(x, y) = \\overline{( - y_{true})^2} + \\lambda ||w||^2 \\rightarrow \\min_{w}.$$\n", "\n", "### Lasso regression:\n", "\n", "$$L(x, y) = \\overline{( - y_{true})^2} + \\lambda ||w|| \\rightarrow \\min_{w}.$$" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "otS4C5rRZNeH" }, "outputs": [], "source": [ "from sklearn.linear_model import Ridge, Lasso" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "pMy5mYrSZNeJ" }, "source": [ "Ridge (L2-регуляризация) сильно штрафует за слишком большие веса и не очень за малые. При увеличении коэффициента перед регуляризатором веса меняются плавно" ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 483 }, "colab_type": "code", "id": "Oap5fAZWZNeJ", "outputId": "8a713bf6-e031-4b5c-85ec-da3c3ce1cb59" }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" } ], "source": [ "alphas = np.linspace(1, 1000, 100)\n", "\n", "weights = np.empty((len(X.columns), 0))\n", "for alpha in alphas:\n", " ridge_regressor = Ridge(alpha)\n", " ridge_regressor.fit(X_train, y_train)\n", " weights = np.hstack((weights, ridge_regressor.coef_.reshape(-1, 1)))\n", "plt.figure(figsize=(15,8))\n", "plt.plot(alphas, weights.T)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "6RByTtFvZNeL" }, "source": [ "Lasso одинаково сильно штрафует малые и большие веса, поэтому при достаточно большом коэффициенте регуляризации многие признаки становятся равными нулю, при этом остаются только наиболее инфромативные. Этот факт можно использовать для решения задачи отбора признаков." ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 500 }, "colab_type": "code", "id": "eJYxVCXFZNeL", "outputId": "8fc5d31d-3ea5-4ea1-ad48-7cf6f5cfe49f" }, "outputs": [ { "data": { "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" }, { "data": { "image/png": "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\nd9MAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] }, "output_type": "display_data" } ], "source": [ "alphas = np.linspace(0.1, 1, 100)\n", "\n", "plt.figure(figsize=(10, 5))\n", "weights = np.empty((len(X.columns), 0))\n", "for alpha in alphas:\n", " lasso_regressor = Lasso(alpha)\n", " lasso_regressor.fit(X_train, y_train)\n", " weights = np.hstack((weights, lasso_regressor.coef_.reshape(-1, 1)))\n", "plt.figure(figsize=(15,8))\n", "plt.plot(alphas, weights.T)\n", "plt.grid()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "cY0OimI5fbfF" }, "source": [ "# Предсказание отклика на маркетинговую кампанию" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "BOCl3mOtZNex" }, "source": [ "Возьмем датасет содержащий информацию о клиентах и маркетинговой кампании некоторого банка. Наша задача --- предсказать успешность кампании для каждого клиента. Признаками являются различные характеристики клиента и кампании." ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "BX9DR2iOZNex" }, "source": [ "Какие признаки вы бы использовали?" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "4mzAhrbnZNex" }, "source": [ "http://archive.ics.uci.edu/ml/datasets/Bank+Marketing" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "cMt0yBeLZNey" }, "outputs": [], "source": [ "# Считаем данные\n", "data = pd.read_csv('bank.csv', sep=';')" ] }, { "cell_type": "code", "execution_count": 80, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 204 }, "colab_type": "code", "id": "iFRnFlSIZNez", "outputId": "fa259155-0c70-4025-a0a1-e93fa6afac90" }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
agejobmaritaleducationdefaultbalancehousingloancontactdaymonthdurationcampaignpdayspreviouspoutcomey
030unemployedmarriedprimaryno1787nonocellular19oct791-10unknownno
133servicesmarriedsecondaryno4789yesyescellular11may22013394failureno
235managementsingletertiaryno1350yesnocellular16apr18513301failureno
330managementmarriedtertiaryno1476yesyesunknown3jun1994-10unknownno
459blue-collarmarriedsecondaryno0yesnounknown5may2261-10unknownno
\n", "
" ], "text/plain": [ " age job marital education ... pdays previous poutcome y\n", "0 30 unemployed married primary ... -1 0 unknown no\n", "1 33 services married secondary ... 339 4 failure no\n", "2 35 management single tertiary ... 330 1 failure no\n", "3 30 management married tertiary ... -1 0 unknown no\n", "4 59 blue-collar married secondary ... -1 0 unknown no\n", "\n", "[5 rows x 17 columns]" ] }, "execution_count": 80, "metadata": { "tags": [] }, "output_type": "execute_result" } ], "source": [ "data.head()" ] }, { "cell_type": "code", "execution_count": 81, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 391 }, "colab_type": "code", "id": "_fJs6-GJZNe1", "outputId": "208b3530-7926-46ea-cffe-1e2cfb85e7d0" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 4521 entries, 0 to 4520\n", "Data columns (total 17 columns):\n", "age 4521 non-null int64\n", "job 4521 non-null object\n", "marital 4521 non-null object\n", "education 4521 non-null object\n", "default 4521 non-null object\n", "balance 4521 non-null int64\n", "housing 4521 non-null object\n", "loan 4521 non-null object\n", "contact 4521 non-null object\n", "day 4521 non-null int64\n", "month 4521 non-null object\n", "duration 4521 non-null int64\n", "campaign 4521 non-null int64\n", "pdays 4521 non-null int64\n", "previous 4521 non-null int64\n", "poutcome 4521 non-null object\n", "y 4521 non-null object\n", "dtypes: int64(7), object(10)\n", "memory usage: 600.6+ KB\n" ] } ], "source": [ "data.info()" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "Zf4NIGjAZNe3" }, "outputs": [], "source": [ "X = data.iloc[:, :-1].copy()\n", "y = data.iloc[:, -1].copy()\n", "\n", "# Бинаризуем таргет\n", "from sklearn.preprocessing import LabelBinarizer\n", "y = LabelBinarizer().fit_transform(y).ravel()" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "xhlZqXTrZNe4" }, "source": [ "Классы очень несбалансированы:" ] }, { "cell_type": "code", "execution_count": 83, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "colab_type": "code", "id": "kqF4d9GIZNe5", "outputId": "b5fe072d-f5b9-40a8-996c-921d14fdec1e" }, "outputs": [ { "data": { "text/plain": [ "0.11523999115239991" ] }, "execution_count": 83, "metadata": { "tags": [] }, "output_type": "execute_result" } ], "source": [ "y.mean()" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "nq3rBxkYZNe6" }, "source": [ "Заметим, что среди признаков достаточно много категориальных, в то время как линейные модели работают с числовыми признаками.\n", "\n", "Одним из способов получить числовые значения категориальных параметров является One-hot encoding. Его суть состоит в том, что для каждого категориального признака $f$ и каждого его значения $v$ создается новый признак, который равен 1 если у объекта значение $f$ равно $v$ и 0 иначе.\n", "\n", "One-hot encoding с помощью pandas можно сделать одной строчкой:" ] }, { "cell_type": "code", "execution_count": 84, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 969 }, "colab_type": "code", "id": "urbqCU2zZNe6", "outputId": "2520f1ed-5848-4dec-ee41-9c81dd0ea018" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 4521 entries, 0 to 4520\n", "Data columns (total 51 columns):\n", "age 4521 non-null int64\n", "balance 4521 non-null int64\n", "day 4521 non-null int64\n", "duration 4521 non-null int64\n", "campaign 4521 non-null int64\n", "pdays 4521 non-null int64\n", "previous 4521 non-null int64\n", "job_admin. 4521 non-null uint8\n", "job_blue-collar 4521 non-null uint8\n", "job_entrepreneur 4521 non-null uint8\n", "job_housemaid 4521 non-null uint8\n", "job_management 4521 non-null uint8\n", "job_retired 4521 non-null uint8\n", "job_self-employed 4521 non-null uint8\n", "job_services 4521 non-null uint8\n", "job_student 4521 non-null uint8\n", "job_technician 4521 non-null uint8\n", "job_unemployed 4521 non-null uint8\n", "job_unknown 4521 non-null uint8\n", "marital_divorced 4521 non-null uint8\n", "marital_married 4521 non-null uint8\n", "marital_single 4521 non-null uint8\n", "education_primary 4521 non-null uint8\n", "education_secondary 4521 non-null uint8\n", "education_tertiary 4521 non-null uint8\n", "education_unknown 4521 non-null uint8\n", "default_no 4521 non-null uint8\n", "default_yes 4521 non-null uint8\n", "housing_no 4521 non-null uint8\n", "housing_yes 4521 non-null uint8\n", "loan_no 4521 non-null uint8\n", "loan_yes 4521 non-null uint8\n", "contact_cellular 4521 non-null uint8\n", "contact_telephone 4521 non-null uint8\n", "contact_unknown 4521 non-null uint8\n", "month_apr 4521 non-null uint8\n", "month_aug 4521 non-null uint8\n", "month_dec 4521 non-null uint8\n", "month_feb 4521 non-null uint8\n", "month_jan 4521 non-null uint8\n", "month_jul 4521 non-null uint8\n", "month_jun 4521 non-null uint8\n", "month_mar 4521 non-null uint8\n", "month_may 4521 non-null uint8\n", "month_nov 4521 non-null uint8\n", "month_oct 4521 non-null uint8\n", "month_sep 4521 non-null uint8\n", "poutcome_failure 4521 non-null uint8\n", "poutcome_other 4521 non-null uint8\n", "poutcome_success 4521 non-null uint8\n", "poutcome_unknown 4521 non-null uint8\n", "dtypes: int64(7), uint8(44)\n", "memory usage: 441.6 KB\n" ] } ], "source": [ "X = pd.get_dummies(X)\n", "\n", "# Обратите внимание на признаки\n", "X.info()" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "_UeZs591ZNe8" }, "source": [ "Разобьем выборку на трейн и тест" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "bmBrZLoWZNe8" }, "outputs": [], "source": [ "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "VtJFKexMZNfB" }, "source": [ "Обучим линейную регрессию." ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "bOMpsuYnZNfB" }, "outputs": [], "source": [ "model_linear = LinearRegression()\n", "model_linear.fit(X_train, y_train)\n", "\n", "y_predicted = model_linear.predict(X_test)\n" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "DTmUWR21f2CT" }, "source": [ "Наконец, посчитаем метрики" ] }, { "cell_type": "code", "execution_count": 88, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 68 }, "colab_type": "code", "id": "-xZBuldMZNfF", "outputId": "150518f4-6044-479b-99f2-2f626d59ccef" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Test accuracy: 0.856353591160221\n", "Test F measure: 0.5517241379310345\n", "Test ROC-AUC: 0.8981742200768749\n" ] } ], "source": [ "print('Test accuracy: ', accuracy_score(y_test, y_predicted > 0.2))\n", "print('Test F measure: ', f1_score(y_test, y_predicted > 0.2))\n", "print('Test ROC-AUC: ', roc_auc_score(y_test, y_predicted))" ] } ], "metadata": { "colab": { "name": "LinReg.ipynb", "provenance": [] }, "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.4" } }, "nbformat": 4, "nbformat_minor": 1 }