代价函式讲告诉我们模型的运行情况,以便让我们可以尝试让它做的更好
x是input,y是output,w和b是可调节的参数 ,我们也可以称这两个为系数或者权重
选择不同的w和b能得到不同的函数和图像
当我们做出代价函数后就可以进行预测
所有现在的问题是如何找到合适的w和b,以便预测y hat i
要回答这个问题我们先来看看如何衡量一条直线与训练数据的拟合程度
为此我们构建一个cost function ,讲预测值和实际值的差值做比较,这个差值称之为误差
每一个i的误差都进行平方,最后测量整个训练集的误差
m是训练实例的数量,m越大最后的计算结果也就越大
为了构建一个不会随训练集大小改变而改变的成本函数,我们通常是计算均方误差而不是总平方误差
所以此处要divide m ,并且为例之后求导方便,我们还会多除一个2
在ML中,不同的程序会使用不同的成本函数,但平方差误差是迄今为止最常用的函数,多用于线性回归
Cost Function Intuition
对成本函数的实际作用建立一些直觉
不同的w会有不同的J(w),然后慢慢绘制出下图
鉴于此图,我们可以选择一个w使得J尽可能的小
当w=1时最小,这也是为什么直线(w=1)时最适合训练数据
上面只是考虑了w,忽略了b的影响
当同时考虑w和b时,可视化看起来很像一个碗
会出现类似等高线的情况,从上往下看这个碗,在这个圆圈上的点的J取值相等