8月18日(周六)成都源创会火热报名中,四位一线行业大牛与你面对面,探讨区块链技术热潮下的冷思考。
Watch Star Fork

Cynhard85 / MachineLearningTutorial

加入码云
与超过 300 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
暂无描述
一键复制 编辑 原始数据 按行查看 历史
机器学习 - 线性回归.ipynb 288.89 KB liuxinyang 提交于 2018-07-06 16:43 . modify names
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 概述"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"%matplotlib inline\n",
"import numpy as np\n",
"\n",
"plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体\n",
"plt.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f106275588>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"x = np.linspace(1, 5, 5)\n",
"unit_price = 52\n",
"y = unit_price * x\n",
"plt.plot(x, y, linewidth=2)\n",
"plt.xticks(x, fontsize=18)\n",
"plt.yticks(y, fontsize=18)\n",
"plt.xlabel(u'斤数', fontsize=18)\n",
"plt.ylabel(u'价格', fontsize=18)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f106377668>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"m = 500 # 样本个数\n",
"w = np.array([[2], [3]]) # 实际的模型参数\n",
"\n",
"def data_set(m, w):\n",
" np.random.seed(42)\n",
" x = np.linspace(-10, 10, m).reshape(-1, 1)\n",
" X = np.c_[np.ones([m, 1]), x]\n",
" y = np.dot(X, w) + np.random.normal(0, 10, m).reshape(-1, 1)\n",
" return X, y\n",
"\n",
"def plot_scatter(X, y):\n",
" plt.figure(figsize=(8, 6))\n",
" plt.scatter(X[:,1], y, s=10)\n",
" plt.xticks(fontsize=18)\n",
" plt.yticks(fontsize=18)\n",
" plt.xlabel(\"$x$\", fontsize=24)\n",
" plt.ylabel(\"$y$\", fontsize=24, rotation=0)\n",
" \n",
"X, y = data_set(m, w)\n",
"plot_scatter(X, y)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f10630b5c0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_scatter(X, y)\n",
"\n",
"for i in range(5):\n",
" wi1 = np.array([w[0][0] + 5*(i-2), w[1][0]])\n",
" wi2 = np.array([w[0][0], w[1][0] + 0.5*i])\n",
" yi1 = np.dot(X, wi1)\n",
" yi2 = np.dot(X, wi2)\n",
" plt.plot(X[:,1], yi1, c='r', linewidth=2, alpha=0.8)\n",
" plt.plot(X[:,1], yi2, c='r', linewidth=2, alpha=0.8)\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 最小二乘法\n",
"# 最大似然法\n",
"## 基础知识"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f106262ba8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"x = np.linspace(-4, 4, 1000)\n",
"y = 1 / np.sqrt(2 * np.pi) * np.exp(- x**2/2)\n",
"plt.plot(x, y)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f106774630>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"def normal(x, mu=0, squared_sigma=1):\n",
" return 1 / np.sqrt(2 * np.pi * squared_sigma) * np.exp(- (x - mu)**2/ (2 * squared_sigma))\n",
"\n",
"plt.figure(figsize=(10,4))\n",
"x = np.linspace(-4, 4, 1000)\n",
"y = normal(x)\n",
"plt.plot(x, y, label=\"$X+5$\")\n",
"plt.plot(x+5, y, label=\"$X$\")\n",
"plt.plot(x-5, y, label=\"$X-5$\")\n",
"plt.vlines(5, -0.01, 0.41, linestyle=\"--\", alpha=0.5)\n",
"plt.vlines(0, -0.01, 0.41, linestyle=\"--\", alpha=0.5)\n",
"plt.vlines(-5, -0.01, 0.41, linestyle=\"--\", alpha=0.5)\n",
"plt.legend(loc=\"upper left\", fontsize=14)\n",
"plt.xlim(-11,10)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 求解"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f10677a3c8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"mu = 5\n",
"mu1 = 5.25\n",
"sigma = 0.1\n",
"\n",
"plt.figure(figsize=(10,4))\n",
"x = np.linspace(-1, 1, 1000)\n",
"y = normal(x+mu, mu, sigma)\n",
"y1 = normal(x+mu1, mu1, sigma)\n",
"plt.plot(x+mu, y)\n",
"plt.plot(x+mu1, y1, linestyle='--', color='r')\n",
"ax = 5\n",
"a = (ax, normal(ax, mu, sigma))\n",
"bx = 5.25\n",
"b = (bx, normal(bx, mu, sigma))\n",
"plt.annotate(u'输出 {:.2f}'.format(a[0]), xy=a, xytext=(a[0]-0.6, a[1]-0.15), \n",
" arrowprops=dict(facecolor='blue', shrink=0.01), fontsize=18)\n",
"plt.annotate(u'实际 {:.2f}'.format(b[0]), xy=b, xytext=(b[0]+0.2, b[1]-0.15), \n",
" arrowprops=dict(facecolor='blue', shrink=0.01), fontsize=18)\n",
"plt.annotate(u'A', xy=a, xytext=(a[0], a[1]+0.05), fontsize=18)\n",
"plt.annotate(u'B', xy=b, xytext=(b[0], b[1]+0.05), fontsize=18)\n",
"plt.vlines(a[0], 0, a[1], linestyle=\"--\", alpha=0.5)\n",
"plt.vlines(b[0], 0, b[1], linestyle=\"--\", alpha=0.5)\n",
"plt.ylim(-0.05, 1.5)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 示例"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f10678a160>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"m = 500 # 样本个数\n",
"w = np.array([[2], [3]]) # 实际的模型参数\n",
"\n",
"X, y = data_set(m, w)\n",
"plot_scatter(X, y)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[2.06837995]\n",
" [3.03694869]]\n"
]
}
],
"source": [
"best_w = np.linalg.inv(X.T.dot(X)).dot(X.T).dot(y)\n",
"print(best_w)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f1062fe940>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_scatter(X, y)\n",
"y_pred = np.dot(X, best_w)\n",
"plt.plot(X[:,1], y_pred, color='r', linewidth=2)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 模型的评估"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"96.04753271883293\n"
]
}
],
"source": [
"mse = np.mean(np.square(y_pred - y))\n",
"print(mse)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 多项式回归"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f1062ad7f0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"m = 10\n",
"\n",
"np.random.seed(42)\n",
"x = 4 * np.random.rand(m, 1)\n",
"y = 3 * x**2 + 4 * x + 5 + 1.5 * np.random.randn(m, 1)\n",
"plt.plot(x, y, 'b.')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[ 1.49816048 17.02188475]\n",
" [ 3.80285723 64.4104382 ]\n",
" [ 2.92797577 41.73590281]\n",
" [ 2.39463394 31.08275619]\n",
" [ 0.62407456 9.02764883]\n",
" [ 0.62397808 5.7940379 ]\n",
" [ 0.23233445 3.50389893]\n",
" [ 3.46470458 54.02792058]\n",
" [ 2.40446005 30.44287786]\n",
" [ 2.83229031 40.86613746]]\n"
]
}
],
"source": [
"print(np.c_[x, y])"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[-4.01593792]\n",
" [16.24923118]]\n"
]
}
],
"source": [
"X = np.c_[np.ones([m, 1]), x]\n",
"best_w = np.linalg.inv(X.T.dot(X)).dot(X.T).dot(y)\n",
"print(best_w)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f1062ad470>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(x, y, 'b.')\n",
"x_plot = np.linspace(0, 4, 2)\n",
"X_plot = np.c_[np.ones([2, 1]), x_plot]\n",
"y_plot = X_plot.dot(best_w)\n",
"plt.plot(x_plot, y_plot, 'r-')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[2.9937327 ]\n",
" [4.56883305]\n",
" [2.99927292]]\n"
]
}
],
"source": [
"X = np.c_[np.ones([m, 1]), x, x**2]\n",
"best_w_poly = np.linalg.inv(X.T.dot(X)).dot(X.T).dot(y)\n",
"print(best_w_poly)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f10784c550>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(x, y, 'b.')\n",
"x_plot_poly = np.linspace(0, 4, 1000)\n",
"X_plot_poly = np.c_[np.ones([1000, 1]), x_plot_poly, x_plot_poly**2]\n",
"y_plot_poly = X_plot_poly.dot(best_w_poly)\n",
"plt.plot(x_plot_poly, y_plot_poly, 'r-')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[ 116.21141935]\n",
" [ -896.17156581]\n",
" [ 2305.72649171]\n",
" [-2649.00289328]\n",
" [ 1581.09144523]\n",
" [ -509.86317057]\n",
" [ 84.37417362]\n",
" [ -5.6214629 ]]\n"
]
}
],
"source": [
"X = np.c_[np.ones([m, 1]), x, x**2, x**3, x**4, x**5, x**6, x**7]\n",
"best_w_poly = np.linalg.inv(X.T.dot(X)).dot(X.T).dot(y)\n",
"print(best_w_poly)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1f107876438>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(x, y, 'b.')\n",
"x_plot_poly = np.linspace(0, 4, 1000)\n",
"X_plot_poly = np.c_[np.ones([1000, 1]), x_plot_poly, x_plot_poly**2, \n",
" x_plot_poly**3, x_plot_poly**4, x_plot_poly**5, x_plot_poly**6, x_plot_poly**7]\n",
"y_plot_poly = X_plot_poly.dot(best_w_poly)\n",
"plt.plot(x_plot_poly, y_plot_poly, 'r-')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"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.4"
},
"toc": {
"base_numbering": 1,
"nav_menu": {},
"number_sections": true,
"sideBar": true,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": true,
"toc_window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 2
}

评论 ( 0 )

你可以在登录后,发表评论