文章目录
2.1代价函数
提示:这里可以添加本文要记录的大概内容:
对于回归问题,我们需要求出代价函数来求解最优解,常用的是平方误差代价函数。
提示:以下是本篇文章正文内容,下面案例可供参考
一、具体内容
里面有θ0和θ1两个参数,参数的改变将会导致假设函数的变化,比如:
现实的例子中,数据会以很多点的形式给我们,我们想要解决回归问题,就需要将这些点拟合成一条直线,找到最优的θ0和θ1来使这条直线更能代表所有数据。
而如何找到最优解呢,这就需要使用代价函数来求解了,以平方误差代价函数为例。
从最简单的单一参数来看,假设函数为:
平方误差代价函数的主要思想就是将实际数据给出的值与我们拟合出的线的对应值做差,这样就能求出我们拟合出的直线与实际的差距了。
而在前面乘以1/2,是因为后面求导会有2,为了简便计算。这样,就产生了代价函数:
而最优解即为代价函数的最小值,根据以上公式多次计算可得到
代价函数的图像:
可以看到该代价函数的确有最小值,这里恰好是横坐标为1的时候。
如果更多参数的话,就会更为复杂,两个参数的时候就已经是三维图像了:
高度即为代价函数的值,可以看到它仍然有着最小值的,而到达更多的参数的时候就无法像这样可视化了,但是原理都是相似的。
因此,对于回归问题,我们就可以归结为得到代价函数的最小值:
2.2梯度下降法
梯度下降法,α小下山步子就小。:=是加等于1的意思。当j=0/1的时候代表更新了θ0和θ1
讲α的
线性回归的梯度下降(batch梯度下降法):随着每一次梯度下降,都遍历了整个训练集样本。最终计算的是m个训练样本的总和
关键在于求导部分
算出微积分后可以代入到回归梯度下降法公式:
只要使用的是线性函数,就只有一个全局最优解:
当达到全局最小的拟合值时,曲线很好拟合了数据集:
4.多元梯度下降法
多元线性回归
、
多元线性回归模型推导数学公式:
如果特征值之间差距很大,等高线会细长,梯度下降需要来回折回很多次,如果使特征值转换一下,等高线的数值会成圆形,会更快地接近中间最小值
教授认为特征值相差的范围太大或者太小都可能存在问题,根据经验只要在右边的范围相差不太大,梯度下降法都可以正常工作的。
均值归一化操作
有一个特征Xi,可以用xi-μi来替换。让特征均值为0(当X0==1时不适用,因为不可能存在均值为0的恒为1的值)
特征转换只是为了让梯度下降的更快而已,可以用下面的公示(手写),(本身-均值)/取值范围。
另外,可以通过画梯度下降曲线来判断是否已经收敛
当J(θ)代价函数呈现左边的曲线形势时,说明梯度下降不工作了或者出现错误,此时需要采用更小的学习率α。
正规方程(区别于迭代方法的直接解法)
正规矩阵不需要进行特征值范围的变换
正规方程在矩阵不可逆情况下的方法
第五部分
5.1基本操作
WHO显示当前空间里的所有变量
whos显示更加详细的信息,比如变量维度等
clear情空了文件
把第二列换了
元素运算
如果是一个矩阵,max(A)得到的是每一列的最大值
a<3返回的是布尔值
find(a)<3返回的是元素值
幻方矩阵,各种方式出来的总和一样,可以用于生成某种维度的随机数矩阵
r代表行,c代表列
floor向下取整,ceil向上取整
max(A)求得是每一列最大值,矩阵最大值用max(max(A))
每列各自和sum(A,1),每列用sum(A,2)
1.对于方阵A,如果为非奇异方阵,则存在逆矩阵inv(A)
2.对于奇异矩阵或者非方阵,并不存在逆矩阵,但可以使用pinv(A)求其伪逆