上一篇文章大致写了假设函数和损失函数在实际问题中的抽象定义,这篇文章我会用几个公式来表达完整的假设函数和损失函数。
假设函数
首先,在前两篇文章中,我一直在用 a,b,c 来表示 h(x) 的参数,但实际上用的比较多的是 Θ1,Θ2,Θ3... 。
其次,我在上一篇文章说,实际问题中的数据是以数据集的形式存在的。如果想要表示数据集中的某一组数据,可以用下标 i,还是以预测房价为例子,比如有一组数据为:
房子大小 x1: 100(平米)
卧室数量 x2: 3(个)
如果这组数据在数据集中是第 i 组,那么基于这组数据的假设函数就可以用下面这个式子表示:
其实这就是对之前的 h(x) 的一个完善而已。
损失函数
在上一篇文章中,我说最后的损失函数应该是数据集中每组数据的损失函数的平均值,也就是说,这里应该有一个先求和再求平均的操作。如果数据集中一共有 m 组数据,那么应该先把 m 个损失函数加起来再除以 m。那么可以用下面这个式子表示:
但是由于在 Machine Learning 中,刻画预测结果和实际结果一般用的都是均方误差,因此实际计算的是 h𝜃((xi) - yi) 的平方项,即 h𝜃((xi) - yi)^2。但是还没完,由于在接下来的文章中我会介绍使损失函数减小的方法 —— 梯度下降法,而在梯度下降法中需要对损失函数进行求导,由于式子中有平方项,因此为了方便,对整个式子乘上了一个 1/2 用来抵消求导后出现的 2,那么就是:
如果乍一看这个式子可能会觉得很复杂,但是经过这么多分析,应该不难理解了。
最后一点就是,我在上一篇文章也提到了,损失函数的自变量是 h𝜃(xi) 中的 参数 𝜃,因此,应该把 𝜃 写在 J 后面的括号中,最终的式子为:
小结
这篇文章写出了假设函数和损失函数的公式表达,现在来看应该不难理解,什么东西都是这样,只要经过层层抽丝剥茧,就会发现顶多是复杂,谈不上难。
下篇文章介绍减小损失函数的方法 —— 梯度下降法。
(简书不能写公式真麻烦╭(╯^╰)╮)