吴恩达机器学习——回归问题
问题分析
特征的选取
-
不一定非要使用原有的特征,可以将多个关联的特征合并为一个
-
当进行多项式拟合的时候,可以根据选定的拟合多项式选择和构造特征
-
-
为选定的三个特征
-
线性回归模型
线性回归问题
-
相关概念
- 训练集:用于学习的数据集
x
:输入变量或特性y
:输出变量或目标变量m
:训练集包含的训练实例的个数,一个(x,y)
表示一个训练实例。
-
运行模式
学习算法根据训练集得出一个映射关系
h
,h
将输入x
映射为输出y
。h
的模式表示为,是一元线性函数,因此称为线性回归算法。其中称为模型参数。线性回归算法的要点就是选择。
-
定义:线性回归问题是一个最小化问题。即为求和,使得最小。
- 模型参数:、
- 假设函数:
- 代价函数:
-
扩展——多元线性回归
n
表示特征的数量- 假设函数:
- ,,
二元线性回归算法
- 使用梯度下降算法求解线性回归问题即为线性回归算法
- 线性回归的代价函数是凸函数,因此会得到全局最优解
- 求解过程
多元线性回归算法
-
使用梯度下降算法求解多元线性回归问题
-
求解过程
求解算法
梯度下降算法
-
重复以下步骤直至收敛
:表示赋值操作
:为学习速率,控制每次更新的幅度。可理解为下山的步子大小
运算的时候要同时更新
-
实际运算时的步骤
-
单纯的梯度下降算法得到的是局部最优解,当代价函数为凸函数时,才一定会得到全局最优解。
-
特征值缩放
- 将每个特征值缩放到的范围,可以有效减少迭代次数,更快收敛。
-1
和1
并不重要,只要缩放后特征值大致在一个相近的范围即可。- 可以使用均值归一化方式来进行特征值缩放
- 用代替使得此特征平均值大概为0,且缩放到合适的范围。为原来的平均值,为极差
- 例如:
-
判断是否收敛
- 一般绘制出代价函数值和迭代次数之间的关系图像。迭代次数为横坐标,相应的代价函数值为纵坐标。当图像近乎水平的时候就可视为收敛,此外此图像还可以指示算法是否正常运行。常用
- 或者使用一些自动判断条件,如当两次迭代值之间的差距小于一个指定的极小值时就视为收敛。
-
选取
- 当迭代曲线出现上升等异常情况时,可以考虑值过大的问题
- 值一般可以每隔10倍取一个进行测试
0.001,0.01,0.1,1,...
,最终选取迭代次数较少的一个。
-
适用范围
n
比较大时,梯度下降法仍然可以正常工作。
标准方程
m
个训练集实例,每个实例有n
个特征,其中每个特征可表示为一个n+1
维的向量,,,,此时。此处得出的即为最优值。
使用此方式不需要进行特征缩放和归一化。此方式适用于n
比较小的情况n<10000
。
不可逆时的处理
- 两种情况
- 存在多余的、线性相关的特征。删除多余属性
- 属性过多,而数据太少()。此时可以考虑删除一些属性或者进行正则化