机器学习就是去拟合一种函数,它可能在高维上,十分抽象,但是却可以有丰富的语义含义,从而完成一系列任务
回归任务是预测一个准确的值,例如拟合一条直线的时候,我们希望每一个点的值都能对应上
分类任务则是输出一个带有概率含义的Logits,经过一些操作(如softmax)得到每个类别对应的概率
除此之外模型还可以有结构化的输出,例如一张图、一篇文章
案例学习
面对一个问题,我们总是需要用自身已有知识对其进行一定程度的假设,例如案例中的问题,根据我们的生活常识,猜测模型可能长什么样,从而确定大致的模型框架并设置需要学习的参数
评价模型的能力需要一个标准,就是与真实标签之间的损失。在回归任务中一般使用MSE作为损失函数,代表拟合函数的差距;在分类任务中一般使用交叉熵作为损失函数,因为在求分类任务梯度的时候,使用MSE求出的梯度与激活函数的梯度成正比,但某些激活函数梯度的性质不太行,而使用交叉熵时则没有这个问题。至于什么是MSE、交叉熵、梯度、激活函数,这是后话了,在这里不需要过多了解
梯度下降:我们希望降低loss,这代表着模型在这个任务上的能力进一步提升,梯度是上升最快的方向,所以我们要按负梯度方向进行下降。光有方向可不够,我们还需要知道在这个方向上走多远,因此就有学习率这个概念
全局最小和局部最小:高数中有极小点和最小点的概念,在这里就是这个意思
从图中可以看出一共有三个极小点(两边都比它大),但只有最右边的是最小点。在梯度下降的过程中,我们不一定每一次都能达到全局最小点,甚至绝大多数时候我们都只能达到局部最小点。但没必要灰心,在好数据好模型的条件下,局部最小点的效果也足够完成我们的任务了