吴恩达机器学习笔记(1)

一.初识机器学习

1.监督学习

在监督学习中,训练数据既有特征又有标签,通过训练,让机器可以自己找到特征和标签之间的联系,在面对只有特征没有标签的数据时,可以判断出标签。监督学习可以分为回归问题和分类问题。回归问题是利用训练出的模型,预测连续的数值输出;分类问题是预测离散值的输出。

2.无监督学习

无监督学习是给算法大量的数据,要求它找出数据的类型结构。无监督学习的数据没有标签,或是所有数据都是同一种标签。聚类算法就属于无监督学习。

二.单变量线性回归

1.模型描述

线性回归就是用直线模型来拟合数据,它解决的是最小化问题,要求预测值与准确值之间的差异最小。
\begin{cases} 假设函数(hypothesis):h_\theta (x)=\theta_0+\theta_1 x \\ 参数(parameters):\theta_0,\theta_1\\ 损失函数(cost function):J(\theta_0,\theta_1)=\frac{1}{2m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})^2}\\ 目标(goal):min_{\theta_0,\theta_1} J(\theta_0,\theta_1) \end{cases}

2.梯度下降法
(1)梯度下降法思路

给定\theta_0\theta_1的初始值(通常取0);不断更新\theta_0\theta_1,使得J(\theta_0,\theta_1)变小,直到找到最小值。

(2)梯度下降法的参数更新公式:

\theta_j:=\theta_j-\alpha\frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1)
其中,\alpha是学习率,即控制梯度下降迈出的步长;\frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1)是导数项,即梯度下降的方向。要注意,在更新时必须要同时更新\theta_0\theta_1
梯度下降时,不用刻意减小\alpha,因为随着离最小值越来越近,导数项(斜率)会越来越小,所以下降幅度会自动变小。

3.线性回归中的梯度下降
(1)线性回归中的更新公式

\frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1)=\frac{\partial}{\partial\theta_j}\frac{1}{2m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})^2}=\frac{\partial}{\partial\theta_j}\frac{1}{2m}\sum_{i=1}^{m}{(\theta_0+\theta_1x^{(i)}-y^{(i)})^2}
\frac{\partial}{\partial\theta_0}J(\theta_0,\theta_1)=\frac{1}{m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})},\frac{\partial}{\partial\theta_1}J(\theta_0,\theta_1)=\frac{1}{m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})x^{(i)}}.
所以 \theta_0:=\theta_0-\alpha\frac{1}{m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})},\theta_1:=\theta_1-\alpha\frac{1}{m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})x^{(i)}}
重复上述更新,直至收敛。需要强调的是,梯度下降法容易陷入局部最优的问题,但如果目标函数为凸函数,则梯度下降法只有全局最优解,没有局部最优解,线性回归的损失函数就是凸函数。

三.多变量线性回归

1.模型描述

多变量线性回归模型和单变量线性回归模型类似,单变量线性回归模型每个训练样本有一个特征,而多变量线性回归模型每个训练样本有多个特征。
\begin{cases} 假设函数(hypothesis):h_\theta (x)=\theta_0x_0+\theta_1 x_1+...+\theta_nx_n (x_0=1)\\ 参数(parameters):\theta_0,\theta_1,...,\theta_n\\ 损失函数(cost function):J(\theta_0,\theta_1,...,\theta_n)=\frac{1}{2m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})^2}\\ 目标(goal):min_{\theta_0,\theta_1,...,\theta_n} J(\theta_0,\theta_1,...,\theta_n) \end{cases}
需要注意的是:线性回归中的“线性”的含义是指预测值h_\theta(x)与未知的回归系数\theta_0,\theta_1,...,\theta_n是线性的,并不是指跟特征x是线性的。所以可以根据解决问题的不同,选择合适的特征去拟合数据(比如将已知的特征相乘等)。

2.多变量线性回归的梯度下降法
(1)更新公式

\theta_j:=\theta_j-\alpha\frac{1}{m}\sum_{i=1}^{m}{(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)}}(j=0,1,...,n)
重复上式,直至收敛。

(2)多元梯度下降法演练

特征缩放:在梯度下降中,如果每个特征值的范围相差太大,则损失函数的等高线呈椭圆状,会导致梯度下降来回震荡(下降方向与等高线切线垂直),需要很长时间才会收敛;所以如果能确保每个特征值都在相近的范围内,这样梯度下降就可以更快地收敛。
特征缩放的方法主要有:每个特征值都除以它的最大值;或均值归一化\frac{x-\mu}{max-min}等;具体方法视情况而定。
学习率的选择:一般可以用损失函数的值和迭代次数的函数来判断梯度下降是否收敛。如图:

如果函数如上述三种情况所示,则都说明学习率过大,应该减小学习率。只有当函数图像如下图所示时,才说明梯度下降法是收敛的:

总之,只要学习率足够小,则每次迭代后的损失函数都会下降,但如果学习率过小,则梯度下降法可能收敛速度过慢。

3.正规方程法

正规方程法是通过求解该方程:\frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1,...,\theta_n)=0来寻找使得损失函数最小的 \theta

假设有m个训练样本:(x^{(1)},y^{(1)}),(x^{(2)},y^{(2)}),...,(x^{(m)},y^{(m)}),和n个特征变量。
x^{(i)} = \left[ \begin{matrix} x_0^{(i)}\\ x_1^{(i)}\\ ...\\ x_n^{(i)}\\ \end{matrix} \right],设计矩阵X = \left[ \begin{matrix} x^{(1)T}\\ x^{(2)T}\\ ...\\ x^{(m)T}\\ \end{matrix} \right] _{m*(n+1)},y = \left[ \begin{matrix} y^{(1)}\\ y^{(2)}\\ ...\\ y^{(m)}\\ \end{matrix} \right]

\theta=(X^TX)^{-1}X^Ty。具体数学推导可参考链接

4.梯度下降法与正规方程法比较

梯度下降法缺点:(1)需要选择合适的学习率;(2)需要多次迭代,计算较慢。(这些缺点正规方程法都可避免)
梯度下降法优点:特征变量很多时,也能运行的相当好。(但特征变量过多的话,正规方程法计算逆的速度会很慢)
所以,当n较小时,选正规方程法;当n>10000时,更倾向于梯度下降法。

5.正规方程在矩阵不可逆情况下的解决方法

若矩阵不可逆,首先看是否有多余特征,比如x_1x_2线性相关,则可删除其中一个;如果没有多余的特征,则检查是否有过多的特征,如果特征过多,则考虑删除一些影响很小的特征或考虑正则化。

四.总结

这两周学习了吴恩达的机器学习视频,主要是线性回归的部分,内容都还是比较基础的,之前也都学习过,但之前的学习主要是从统计角度的理解,从机器学习的角度重新学习后,也有一些新的收获。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,193评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,306评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,130评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,110评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,118评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,085评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,007评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,844评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,283评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,508评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,395评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,985评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,630评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,797评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,653评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,553评论 2 352

推荐阅读更多精彩内容