{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import numpy as np\n", "from sklearn import linear_model\n", "import statsmodels.api as sm\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "\n", "np.random.seed(4873)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "data = pd.read_csv('./data/simple_example.csv')\n", "Y = data[['y']]\n", "X = data[['x']]\n", "# 加入新的随机变量,此变量的系数应为0\n", "X['z'] = np.random.randint(2, size=20)\n", "X = sm.add_constant(X)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "alphas = np.linspace(-6, -1, 100)\n", "coefs = []\n", "for alpha in alphas:\n", " # 如果直接使用scikit-learn提供的lasso模型,则模型惩罚并不包括截距项。\n", " # 因此我们在模型中手动添加截距项const\n", " model = linear_model.Lasso(alpha=np.exp(alpha), fit_intercept=False)\n", " model.fit(X[['x', 'z', 'const']], Y)\n", " coefs.append(model.coef_.tolist())\n", "coefs = np.array(coefs)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhIAAAITCAYAAABSYfUaAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB5pklEQVR4nO3ddZhV1f7H8fea7oEZBhi6QVpKQFGkBMEO7Lrqtbuv92fHRa/dfRU7UGwFRQQUQUBCujumO85Zvz/2mZ6BmcM5TH1ez7OfPWfttdZec4jzPau2sdYiIiIi4o2A2m6AiIiI1F8KJERERMRrCiRERETEawokRERExGsKJERERMRrCiRERETEawokRERExGsKJERERMRrCiRERETEa34NJIwxCcaYrcaYkV6UjTfG/M8Yk2yMyTPGLDXGHO37VoqIiIi3/BZIGGPCgY+ANl6UDQA+AU4BXgBuAqKBb40x7X3ZThEREfFekD8qNcY0A6YD3n7oTwKOAoZZaxd66pwLLAbOBh71RTtFRETk4PirR+JcoBA40cvyScA/i4IIj+Wec8LBNExERER8x1+BxHTgWJyAoMastXOttW+USx7oOa84mIaJiIiI7/hlaMNauxHAGOPLam8C0oHPq8pgjAkFQsslxwHJvmyIiIhIIxEN7LDW2qoy+CWQ8DVjzDHAGcC91tr9BQV3AvccmlaJiIg0Cm2A7VVdNPsJMg6aMaYDsBE41lo7y8s6ooClQAYw2Fqbv5+85XskooFtW7duJSYmxpvbi4iINErp6em0bdsWINZam15VvvrQI/Ey0AKYtL8gAsBamwfkFb0uGlqJiYlRICEiIuIHdTqQMMbcAJwDXGCt/buWmyMiIiLl1Nktso0xpwD/BZ631r5T2+0RERGRimqlR8IYMxYIstZ+W8X15sCbQBrwpzHmvFKXd1trfzwEzRQREZEDqK2hjX8BUUClgQTOrpaxnp/L7yfxC6BAQkREpA7wayBhrd0EVNhMwlo78gDlPqusnIiIiNQtdXaOhIiIiNR9CiRERETEawokRERExGsKJERERMRrCiRERETEawokRERExGsKJERERMRrCiRERETEawokRERExGsKJERERMRrCiRERETEawokRERExGsKJERERMRrCiRERETEawokRERExGsKJERERMRrCiRERETEawokRERExGsKJERE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zk6a212x3qKy+2t7x45ObxU4Q19btjjLkIvqBVixouzmgVXVX/qcmFhSb1aW82caFlb278WmTSUTiPdXV9HZmJKVSOAMw+3Z4/S6lf57sm+fU68xTjBctPneIWet9dsBdMAZohhZw3IPAFsqSX8IWFeDemIAm5aWZkVE6ovvvrP2gQesXbCgJO3zzyvb7u7AR0pKSR2XXuqkPfhgSdqiRd7Vu3ZtSR133umk3XBDSdrWrd7VO3duSR1PPOGknXtuSVpennf1fv55SR3vvOOkjR1b9n2Pial5va++WvbPDazt379svZ0717zehx+u+GfUunXZeocOLck/YYL1ubS0NOv5DI+x+/msras9EruARGNMoLXWVSq9GZBRS20SETkkjjuu4p4lJ57ofAPdvNk5du0q2ZG16Cja8Kxor5GCgpJeA3A2Vzv22JJeA3C+PffsWbI77YFYz0K/0vM54uOdjcVKzx8JDCz5tl9U5kB1Qtk9S2JinG/2pesFZ5Js+ToP9Lr0kFB4uPPNPi6ubJ7mzZ1rpctWVW/RuXR7g4KcnoTocv3mUVHO71K+7P7OpSfnGlPS41Ra0bOMoHaXLvt1Z0tjTAdgIzVf/jkCmA0Ms9b+Xip9AbDPWjuhmvVo+aeIiIgXqrv8s65uv/I7sA8o3tfPGHMYMBCYVUttEhERkXJqZWjDGDMWCLLWflvZdWttgTHmceBRY8xWYD7wGJAJvFtZGRERETn0amuOxL+AKKDSQMLjMaAlcBfOKo40nGd2aBWGiIhIHVHnn/5pjOkMdAfmW2uTalhWcyRERES8UNtbZPuMtXY9sL622yEiIiIV1dXJliIiIlIPKJAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERr/ktkDDGjDTGLDTGZBtjZhtjOtewfIQx5lVjzE5jTJYxZpEx5kx/tVdERERqzi+BhDFmMPAdEArcBVjgG2NMaA2qeRo4EXgSuBnYB3xojDnBx80VERERLxlrre8r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PwIJ4zlnl0vP9Zyr1UtgjBkKXAVcYa3NqOa9H8GZS1F0tKlmOREREfFCkB/qLAoYTLn0otcHXLlhjAkGXgXes9Z+W90bW2vzgLxS9VS3qIiIiHjBH4HELs+5LbChVHozz7k6vQu3esqfbowpKhcF4HldYK1N80FbRURE5CD4I5BYB+QAw4BfSqUPAHKqGQCMwxmaWFXJtb2eekceXDNFRETkYPk8kLDW5hljfgAuNsY8Za3N9QxVTKZsYLE/NwNNy6WNw+mpGAuk+KzBIiIi4jV/9EiAswvlr8CHxpgXcSZNtgWuATDG9AX6Ah9YawvLF7bW/lk+zRjTxnNthp/aLCIiIjXkl50trbXzgAuB0cC3wETgfmvtdE+WU4F3gJosBRUREZE6xljrv+dgGWPigSHAWmvtOr/dqOr7xwBpaWlpxMTEHOrbi4iI1Fvp6enExsYCxFpr06vK56+hDQCstUk4PRIiIiLSAPntMeIiIiLS8CmQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGvKZAQERERrymQEBEREa8pkBARERGv+S2QMMaMNMYsNMZkG2NmG2M617B8gDHm38aYrcaYAmPMNmPMlf5qr4iIiNScXwIJY8xg4DsgFLgLsMA3xpjQGlRzr+eYAVwFrAVeMMac4dPGioiIiNeMtdb3lRozC+gB9LTWJhtjIoF1wMPW2merUT4B2Arcbq192pMWBmwCllhrx1ezHTFAWlpaGjExMV79LiIiIo1Reno6sbGxALHW2vSq8vm8R8IY0xQYAbxprU0GsNZmAR8AJ1WzmkjgPuD5ogRrbS5OMJLg0waLiIiI1/wxtHGYp9455dKXAv2qU4G1dpO19hFrbWFRmjEmGOgDrKiqnDEm1BgTU3QA0TVuvYiIiFSbPwKJJp7zpnLpe4FmniEKb1wKxABv7yfPnUBaqWObl/cSERGRavBHIGE85+xy6bmec417CYwxzXAmXv5srZ2xn6yPALGljjY1vZeIiIhUX5Af6iwKGEy5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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# 为在Matplotlib中显示中文,设置特殊字体\n", "plt.rcParams['font.sans-serif'] = ['SimHei']\n", "plt.rcParams['axes.unicode_minus'] = False\n", "plt.rcParams.update({'font.size': 13})\n", "# 创建一个图形框\n", "fig = plt.figure(figsize=(6, 6), dpi=100)\n", "# 在图形框里只画一幅图\n", "ax = fig.add_subplot(111)\n", "ax.plot(alphas, coefs[:, 0], 'b-.', label='x的参数a')\n", "ax.plot(alphas, coefs[:, 1], 'r:', label='z的参数b')\n", "ax.plot(alphas, coefs[:, 2], 'g', label='const的参数c')\n", "# 设置图例的样式\n", "legend = plt.legend(loc=4, shadow=True)\n", "legend.get_frame().set_facecolor(\"#6F93AE\")\n", "ax.set_yticks(np.arange(-1.0, 1.3, 0.2))\n", "ax.set_xlabel(\"$\\log(alpha)$\")\n", "plt.savefig('linear_ml_reg.png', dpi=200)\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.8.5" } }, "nbformat": 4, "nbformat_minor": 4 }