课程链接 : 吴恩达机器学习 - 网易云课堂
第一章 绪论:初识机器学习
机器学习(Machine Learning):
- 在没有明确设置的情况下使计算机具有学习能力的研究领域
- 计算机程序从经验E中学习,解决某一任务T,进行某一性能度量P,通过P测定在T上的表现因经验E而提高
监督学习(Supervised Learning):数据集中包含“正确答案”
无监督学习(Unsupervised Learning):数据集中不包含有标签或全部带有相同标签
回归问题(Regression):预测连续的数值输出
分类问题(Classification):预测离散的数值输出
第二章 单变量线性回归(Univariate Linear Regression )
回归模型:m表示训练样本数,x为输入变量即特征,y为输出变量即目标,(x,y)表示一个训练样本,(x(i),y(i))表示第i个训练样本,则假设函数(hypothesis) 为:
hθ(x)=θ0+θ1x
其中,θ0,θ1为参数。在训练时应选择合理的θ0,θ1使得对于任意的x都能够准确地预测y的值。
代价函数(Cost Function)-平方误差函数(Square Error Cost Function):
J(θ0,θ1)=2m1i=1∑m(hθ(x(i))−y(i))2
训练以设定的θ0,θ1开始,不断改变θ0,θ1以达到θ0,θ1minimizeJ(θ0,θ1)
梯度下降算法(Gradient Descent Algorithm):重复下面的公式直到收敛
θj:=θj−α∂θj∂J(θ0,θ1) (for j=0 and j=1)
其中,α代表学习率。并且在更新时,θ0,θ1需要进行同步更新。使用梯度下降算法时,选用不同的θ0,θ1初始值,可能会得到不同的局部收敛点。
对于学习率的选择,如果α选择的过小,则梯度下降速率则会过于缓慢,而α选择的过大,则会出现不收敛的情况,当选择合适的学习率后,梯度下降的步伐会随着最优点的接近而逐步变小。
Batch 梯度下降:“batch”的含义为每一步的梯度下降使用了所有的训练样本
第三章 线性代数回顾
第四章 配置
第五章 多变量线性回归
定义:n为特征数量,x(i)为输入的第ith个特征向量,xj(i)为输入的第ith个特征向量中的第j个值。为了标记简便,定义x0=1且
x=⎣⎢⎢⎢⎢⎢⎡x0x1x2⋮xn⎦⎥⎥⎥⎥⎥⎤∈Rn+1θ=⎣⎢⎢⎢⎢⎢⎡θ0θ1θ2⋮θn⎦⎥⎥⎥⎥⎥⎤∈Rn+1
则多元线性回归的假设函数为:
hθ(x)=θ0x0+θ1x1+⋯+θnxn=θTx
代价函数:
J(θ)=2m1i=1∑m(hθ(x(i))−y(i))2
梯度下降:
θj:=θj−α∂θj∂J(θ0,⋯,θn) (for j=0,⋯,n)θj:=θj−αm1i=1∑m(hθ(x(i))−y(i))xj(i) (for j=0,⋯,n)
特征缩放(Feature Scaling): 确保特征值在相近的范围内,以使得梯度下降算法更快的收敛。
均值归一化(Mean normalization): 使用xi−μi代替xi使得特征值具有近似零均值(除了x0=1)
xi=sixi−μi
学习率(Learning rate)的选择: 如果学习率过小,则可能出现收敛速度过慢的情况;如果学习率过大,则可能出现不收敛的情况。
对于多特征预测的问题,可以合理的将特征进行组合,创建新的特征,可能会得到更好的模型。
多项式回归(Polynomial Regression): 可以选择不同的多项式去更好的拟合数据
hθ(x)x1x2x3or hθ(x)=θ0+θ1x1+θ2x2+θ3x3=θ0+θ1(size)+θ2(size)2+θ3(size)3=(size)=(size)2=(size)3=θ0+θ1(size)+θ2(size)
正规方程(Normal Equation): 一种直接求得θ的解析解法
θ=(XTX)−1XTy
当数据集中包含有多余的特征,或者特征数量过多而样本过少时,则会出现矩阵不可逆的情况,这时候在计算时用伪逆替换即可得到正确的结果。(伪逆与逆的区别)
对于正规方程,他不需要选择学习率,也不需要多次的迭代,但当特征n的数量较大时,梯度下降法仍然可以很好的工作而正规方程因为需要计算矩阵的逆,因此会变得特别慢。