扩展线性回归,以处理多个输入特征;
学习一些改进模型训练和性能的方法,如矢量化、特征缩放、特征工程和多项式回归。
1.1 多维特征
Multiple Features

箭头用于强调数据是个向量,可写可不写

1.2 向量化
vectorization
向量化的好处:
- 简化代码,更易编写
- 矢量化代码运行速度更快
为什么矢量化运行更快:并行计算
看代码:C1_W2_Lab01_Python_Numpy_Vectorization_Soln
1.3 多元线性回归的梯度下降
Gradient Descent For Multiple Regression
2.1 特征缩放
Feature Scaling
引入:多个特征的取值范围相差较大,比如一个100~1000(房屋面积),一个0~5(卧室数量),通过对特征进行缩放,使其具有可比较的值范围

这种情况其实是会降低梯度下降速度的
实现:



2.2 判断梯度下降收敛与否
checking gradient descent for convergence
即能否成本函数全局最小值对应的参数

但通常阈值比较难确定,因此更推荐左边的方法
2.3 设置学习率
choosing the learning rate
optional lab:C1_W2_Lab03_Feature_Scaling_and_Learning_Rate_Soln
2.4 特征工程
feature engineering
引入:实际应用中,选择正确的特征是使算法运行良好的关键。
实现:利用直觉(intuition)通过转换或组合设计新的特征
2.5 多项式回归
polynomial regression
引入:利用多元线性回归和特征工程的思想,为数据提供更好的模型,可用于拟合曲线、非线性函数。
原理:利用特征重要性改变次方,次方越高该特征模型的影响权重越大
目标:这里仅仅是知道可以选择哪些功能,具体怎么选,后面学
optional lab:C1_W2_Lab04_FeatEng_PolyReg_Soln