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

监督学习

监督学习是已经知道数据的label,例如预测房价问题,给出了房子的面积和价格。(每一个例子都有一个正确的答案)

回归问题是预测连续值的输出,例如预测房价。 拟合出一条直线或者是二次函数,用来预测输出

分类问题是预测离散值输出,例如判断肿瘤是良性还是恶性。

image

无监督学习

无监督学习是不知道数据具体的含义,比如给定一些数据但不知道它们具体的信息,对于分类问题无监督学习可以得到多个不同的聚类,从而实现预测的功能。(聚类是无监督学习中的一种),没有给定正确答案,而是让机器算法自动的进行分类,例如新闻的分类,再例如给定客户数据,划分更细地市场。
image

线性回归

image

线性回归是拟合一条线,将训练数据尽可能分布到线上。另外还有多变量的线性回归称为多元线性回归。
记号:m(训练样本的数量)
(x(i),y(i)):一个训练的例子,x代表输入变量或特征,y代表输出。
监督学习算法:给定一个训练集,学习算法给出一个假设函数,这样可以根据输入来预测输出。
单变量线性回归。

代价函数

cost function,一般使用最小均方差来评估参数的好坏。我们的目标就是最小化代价函数,来获得假设函数中的两个参数。
常用的是平方误差代价函数
image

多维代价函数

image

梯度下降

梯度下降,首先为每个参数赋一个初值,通过代价函数的梯度,然后不断地调整参数,最终得到一个局部最优解。初值的不同可能会得到两个不同的结果,即梯度下降不一定得到全局最优解。
image

梯度下降在具体的执行时,每一次更新需要同时更新所有的参数。
image

梯度下降公式中有两个部分,学习率和偏导数。
偏导数,用来计算当前参数对应代价函数的斜率,导数为正则θ减小,导数为负则θ增大,通过这样的方式可以使整体向θ=0收敛。
image

α用来描述学习率,即每次参数更新的步长。α的大小不好确定,如果太小则需要很多步才能收敛,如果太大最后可能不会收敛甚至可能发散。
image

θ处于局部最优解时,θ的值将不再更新,因为偏导为0。
image

这也说明了如果学习率α不改变,参数也可能收敛,假设偏导>0,因为偏导一直在向在减小,所以每次的步长也会慢慢减小,所以α不需要额外的减小。
image

单元梯度下降

梯度下降每次更新的都需要进行偏导计算,这个偏导对应线性回归的代价函数。
image

对代价函数求导的结果为:
image

梯度下降的过程容易出现局部最优解:
image

但是线性回归的代价函数,往往是一个凸函数。它总能收敛到全局最优。(碗状)
image

梯度下降过程的动图展示:
image

多元梯度下降

通常问题都会涉及到多个变量,例如房屋价格预测就包括,面积、房间个数、楼层、价格等
image

因此代价函数就不再只包含一个变量,为了统一可以对常量引入变量x_0=1。
利用向量点乘进行运算
虽然参数的个数增多,但是对每个参数求偏导时和单个参数类似。

特征缩放

多个变量的度量不同,数字之间相差的大小也不同,如果可以将所有的特征变量缩放到大致相同范围,这样会减少梯度算法的迭代。

特征缩放不一定非要落到[-1,1]之间,只要数据足够接近就可以。
常用方法:

均值归一化

1:计算某个特征的平均值
2:用特征的每个值减去平均值再除以最大值减最小值 这样数据会落在[-1,1]之间
image

方差和标准差
在概率论和统计方差是衡量随机变量或一组数据时离散程度的度量。概率论中方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。统计中的方差(样本方差)是各个样本数据和平均数之差的 平方和 的平均数。在许多实际问题中,研究方差即偏离程度有着重要意义。
对于一组随机变量或者统计数据,其期望值(平均数)用E(X)表示,即随机变量或统计数据的均值, 然后对各个数据与均值的差的 平方和,如下所示:
image

最后对平方和再求期望就得到了方差公式,方差的公式如下:
image

这个公式描述了随机变量(统计数据)与均值的偏离程度。
标准差是方差的平方根,标准差的公式如下:u表示期望
image

根号里的内容就是我们刚提到的方差
image

Z-score归一化:
计算得到某个特征的标准差 和平均值
用变量-平均值除以标准差得到归一化结果。
image

目的是使每一个特征的取值范围都落在-1到1附近 太大或太小都要重新放缩
image

多项式回归

有些时候直线并不能很好地拟合数据,这时需要用上特征工程的方法,特征工程指的是通过经验等一系列手段,创造出一些更具有代表性的特征,多项式回归是利用曲线来进行回归,可能包含二次项和三次项 可以通过某个变量的平方或立方得到多项式函数,也许这样可以找到更适合原始数据的函数。
image

posted @   池鱼柳林  阅读(75)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示