1 模型概述
给出一些带有标签的数据(即带有“正确答案”的数据),用y=ax+b 的形式去拟合数据(线性,单变量)。
大致过程如下:给出训练集(带有标签的数据),通过学习算法选择不错的参数 theta0, theta1 得到假设函数h(从x到y 的映射)
2代价函数
所谓代价函数主要是为了用来评估预测值和实际值的误差,一般选择用平方误差函数。
3 梯度下降
一般通过梯度下降(沿着代价函数导数方向寻找最小值)的方法来找到合适的theta1, theta2使代价函数最小。
梯度下降例子
梯度下降算法
注意更新梯度的时候,需要先计算当前各个参数方向的偏导(梯度),再更新。
学习率很重要,不能过大也不能过小。过大会导致overshooting,导致找不到最小值,过小需要走很多步才能找到最小值。
当学习率固定时,在靠近最小值时梯度会慢慢变小,也可以找到最值。不用逐渐减小学习速率。
局部极值
有时候梯度下降会找到局部极值,不能到达最小值。
但是不用担心,在单变量线性回归问题中,代价函数是凸函数(碗状)只有一个最值没有局部极值。
批梯度下降
每次更新梯度时,使用所有训练数据。