监督学习:分析训练数据,并产生一个推断的功能,其可以用于映射出新的实例。对应每个数据,事先给出了“正确的答案或标签”。当我们输入数据时,该算法会给显示一个相应的结果。如回归问题,根据之前的数据预测一个准确的输出值,根据房价走势预测房价;分类问题,预测离散的输出值,输入肿瘤大小、病人年龄等预测肿瘤是良性还是恶性。
m表示训练集样本数;x表示输入量,也称特征变量;y表示输出变量或目标变量
监督学习的过程:将训练集丢给算法———》得到假设模型(函数模型),将测试变量X传入,根据h,映射出变量Y。最简单的是单变量线性回归。
--------------------------------------------------------------------------------------------------------------------------------------------
线性回归问题:
代价函数(Cost Function )是定义在整个训练集上的,是所有样本误差的平均,也就是损失函数的平均。
平方误差函数,解决回归问题最常用的代价函数。
m代表训练集样本数量,xi代表第i个输入样本,y代表训练集中第i个输出样本。
要求得θ0和θ1,使代价函数最小,确定好θ0和θ1后,既可以确定假设函数h(x).
------------------------------------------------------------------------------------------------------
求代价函数J的最小值
θ1=0,即h(x)=θ0x时,J函数对应的是一条二维曲线,很容易求J最小时对应的θ0;
θ1不等于0时,h(x)=θ0x+θ1,J函数对应三维曲面图:
为方便表示,不再用三维立体图,而用轮廓图表示。每一个圆圈上的点的J(θ0,θ1)值相同。
----------------------------------------------------------------
使用梯度下降算法(Gradient Descent)来解J最小值问题。在最小化损失函数时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数,和模型参数值。反过来,如果我们需要求解损失函数的最大值,这时就需要用梯度上升法来迭代了。
重复公式,直到收敛;:=是赋值;a是学习速率,控制着我们以多大的幅度更新θj,太大容易发散,太小收敛过慢;需要同时更新θ0和θ1,左下是正确的,右下是错误的。