1.1机器学习的定义:
机器学习是指让计算机自主学习的科学,它可以通过处理大量数据来改进自身的性能。
机器学习的应用: 机器学习已经广泛应用于日常生活中,如搜索引擎,社交媒体,视频流媒体,电子邮件和反垃圾邮件过滤。
机器学习的两个主要类型是监督学习和非监督学习。
1.2监督学习:
定义:
监督机器学习或更常见的监督学习是指学习x到y或输入到输出映射的算法
回归算法
回归示例:房价预测 任务:通过回归从无限多个可能的数字中预测一个数字
分类算法
类别可以是数字的也可以是非数字的。分类和回归的不同之处在于,分类预测的是可能输出类别的有限集合,例如0,1和2,但不是介于两者之间的所有可能数字。
监督学习将输入x映射到输出y,其中学习算法从引用的正确答案中学习
监督学习的两种主要类型是回归和分类
1.3无监督学习:
定义:
数据仅带有输入标签x而没有输出标签y。
聚类算法
获取没有标签的数据并尝试自动将它们分组到集群中。
异常检测
降维
2.1线性回归模型:
为数据拟合一条直线。特殊的监督学习模型,被称为回归模型,用来解决回归问题。
另一种最常见的监督学习模型为分类模型(预测类别或离散类别)
区别:
在分类中只有少量可能的输出,在回归中模型可以输出无限可能的数字。
训练集:
训练模型的数据集,包括输入特征或输出目标。
x:输入变量,也称为特征或输入特征。 y:输出变量。
函数f
称为模型,模型的输出为预测,y-hat
2.2代价函数
如何在线性回归中使用代价函数找到是 J 最小化的 w 的值
公式:
对代价函数的理解:
线性回归的目标是找到w或w和b使代价函数 J 的值最小,更好的拟合数据
可视化代价函数:
带有参数w和b的原始模型
将3D碗装曲线图可视化为等高线图
以上三个图中的三条线或三个点对应的代价函数 J 的值相同
图中椭圆的中心点或碗底的点是代价函数 J 的值最小的点
3.1梯度下降
通过梯度下降的算法找到w和b的值,使得 J 最小。
梯度下降是一种可以尝试最小化任何函数的方法。
使用梯度下降算法,每次都稍微改变参数w和b以尝试降低w和b的成本J,知道J 稳定在或接近最小值。
对于某些可能不是弓形或吊床形的函数J ,可能存在不止一个可能的最小值。
3.2梯度下降的实现
左下角是正确的同步更新。
α是0到1之间的一个小正数。
通过收敛,意思是达到局部最小值,其中参数w和b不再随着每个采取的步骤而发生太大变化。
3.3理解梯度下降中导数项的意义
梯度下降让 J 接近最小值。
3.4学习率
学习率的选择将对实现梯度下降的效率产生巨大影响
如果α非常小,这个过程的结果确实降低了成本 J ,但是速度非常慢
如果α非常大,可能永远无法到达最小值
如果参数已经使 J 达到局部最小值,梯度下降会使w保持不变。
当运行梯度下降时,最终会采取非常小的步骤,直到最终达到局部最小值,因为当我们接近局部最小值时,导数会自动变小。
3.5用于线性回归的梯度下降
导数的计算
根据初始化参数w和b的位置,可能会以不同的局部最小值结束。
在凸函数上实现梯度下降时,一个很好的特性是只要选择适当的学习率,总会收敛到全局最小值
4.1多维特征
多元线性回归
4.2向量化
向量化运行更快
循环和向量化的区别
4.3用于多元线性回归的梯度下降法
5.1特征缩放
特征缩放使梯度下降运行更快
当一个特征值的可能范围很大时,一个好的模型更有可能学会选择一个相对较小的参数值。
当特征的可能值较小时,则其参数的合理值将相对较大。
当有不同的特征,它们的取值范围非常不同时,它可能会导致梯度下降运行缓慢,但会重新缩放不同的特征,使它们都具有可比较的取值范围。
特征的范围对代价函数等值线的影响
均值归一化
zero-score 归一法
5.2判断梯度下降是否收敛
左:学习图表
右:自动收敛测试:成本J在迭代中减少的幅度小于数字ε,可以宣布收敛