本讲内容:
- 线性回归
- 梯度下降
- 正规方程组
- 线性回归
首先看一组关于房价的数据,该数据集只有一个特征。
living areas(feet2) | price($1000s) |
2104 | 400 |
1416 | 232 |
1534 | 315 |
852 | 178 |
1940 | 240 |
.. | .. |
下面
介绍几个符号概念:
![](https://i-blog.csdnimg.cn/blog_migrate/cc46b65e6810911ec77e350b8eb615c8.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0f9b4e55f04d635813e95e55324f94b3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/717fb0f5596fab8c0ccf215495a4c331.png)
![](https://i-blog.csdnimg.cn/blog_migrate/170682f4ec3837657026d404175b0580.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d4f8247cfa176e82bc3484774af065ee.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5d5ab4b12d7632a612d75b5333d219aa.png)
![](https://i-blog.csdnimg.cn/blog_migrate/268d2249b8859f415be8111683f3104d.png)
监督学习的一般流程:
在该数据集上,假设
为了使问题更有趣,引入房间数的特征,则
为房屋面积,
为房间数,那么有
![](https://i-blog.csdnimg.cn/blog_migrate/3a33915e8f993321e5ca33bd0bee09cd.png)
![](https://i-blog.csdnimg.cn/blog_migrate/170682f4ec3837657026d404175b0580.png)
living areas(feet2) | #bed rooms | price($1000s) |
2104 | 3 | 400 |
1416 | 2 | 232 |
1534 | 2 | 315 |
852 | 1 | 178 |
1940 | 3 | 240 |
.. | .. | .. |
为简便起见,令
,则有
![](https://i-blog.csdnimg.cn/blog_migrate/43131e77da85a9e1194aa975193db22d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9683971605edf54d13c9e82a76cb90cd.png)
n为特征数,
为参数集。
![](https://i-blog.csdnimg.cn/blog_migrate/559ff26227aa333ada309a913f838068.png)
然后,令
![](https://i-blog.csdnimg.cn/blog_migrate/9dd65780006c42965f99340ca6698019.png)
目标是
。
![](https://i-blog.csdnimg.cn/blog_migrate/46c65ac153030e035937ade61871f916.png)
首先,我们将
从某个值开始(比如说零向量),然后不断更新
以减小
。
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f5c1353aadd8ae943778c05fd8c0bd92.png)
- 梯度下降算法
更新
的算法称之为梯度下降算法,其思想如下:
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png%20_%7Bi%7D%3A%3D%5CTheta%20_%7Bi%7D-%5Calpha%20%5Cfrac%7B%5Cpartial%20%7D%7B%5Cpartial%20%5CTheta%20_%7Bi%7D%7DJ%28%5CTheta%20%29)
因此,按
的方式更新
,直到收敛。
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png%20_%7Bi%7D%3A%3D%5CTheta%20_%7Bi%7D-%5Calpha%20%28h_%7B%5CTheta%20%7D%28x%29-y%29%5Ccdot%20x_%7Bi%7D)
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png)
以以上推导为基础,分别有批处理梯度下降和随机梯度下降算法两种方法。
批处理梯度下降算法:
----------------------------------------------------
随机梯度下降算法:
{
for j =1 to m
{
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png%20_%7Bi%7D%3A%3D%5CTheta%20_%7Bi%7D-%5Calpha%20%28h_%7B%5CTheta%20%7D%28x%5E%7B%28j%29%7D%29-y%5E%7B%28j%29%7D%29%5Ccdot%20x_%7B%28j%29%7D%5E%7Bi%7D)
(for all i)
}
}
批处理和随机梯度下降算法的比较:
批处理梯度下降算法每次更新需要对所有的训练集进行计算,计算量较大。
而随机梯度下降算法每次更新只用一组训练数据,收敛时会在最小值附近徘徊。
- 正规方程式
下面介绍第二种最小化
的方法。
![](https://i-blog.csdnimg.cn/blog_migrate/f5c1353aadd8ae943778c05fd8c0bd92.png)
对一个由mxn的矩阵映射到实数的函数f,可以这样定义
,f对A的导数为:
![](https://i-blog.csdnimg.cn/blog_migrate/cd5f26e2848a38a9f6d34f200c87d47d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b1d009f4363f0630f1ee81a78fbff0da.png)
如果
,则
。
![](https://i-blog.csdnimg.cn/blog_migrate/42ce20735a4b13718ad5773633dddd0e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4003f308bb4f9c82e17d3214563f9c81.png)
下面不加证明地陈述几个事实:
![](https://i-blog.csdnimg.cn/blog_migrate/143df35d634425af5a678add1b0fb612.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4aa28d3c495adce82237a1499828a977.png)
if
![](https://i-blog.csdnimg.cn/blog_migrate/6f68070ae8ac5284acda483cdcc7b126.png)
最小二乘法回顾
为推导方便,设计下面几个符号。
![](https://i-blog.csdnimg.cn/blog_migrate/d9bded05c382ffbd36431ec9c15b0796.png)
![](https://i-blog.csdnimg.cn/blog_migrate/7f2331d9768a4922bafd6446588ce700.png)
因为
![](https://i-blog.csdnimg.cn/blog_migrate/71cbd341a25432dd58664ad2cd5d6149.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e109a9c0a7b0e5de9f1e8c16173bc0cc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/def682fcd1f2ef9a339640829d519d78.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f97ffe519f75aa77acc9cca898133ccf.png)
令
![](https://i-blog.csdnimg.cn/blog_migrate/5f0b048901bc3cb283404ec404cfaf8a.png)
则
![](https://i-blog.csdnimg.cn/blog_migrate/f28d48bc54c99b25b3e05ace5f210020.png%20%3D%28X%5E%7BT%7DX%29%5E%7B-1%7DX%5E%7BT%7Dy)