吴恩达机器学习(二)多元线性回归(假设、代价、梯度、特征缩放、多项式)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhq9695/article/details/82805097

目录

0. 前言

1. 假设函数(Hypothesis)

2. 代价函数(Cost Function)

3. 梯度下降(Gradient Descent)

4. 特征缩放(Feature Scaling)

5. 多项式回归方程(Polynomial Regression)


学习完吴恩达老师机器学习课程的多变量线性回归,简单的做个笔记。文中部分描述属于个人消化后的理解,仅供参考。

0. 前言

多元线性回归(Multivariate Linear Regression)是多个变量的线性回归函数。初始作如下定义:

  • n --- 特征的数量
  • x^{(i)} --- 第 i 个样本
  • x_{j}^{(i)} --- 第 i 个样本的第 j 个特征

1. 假设函数(Hypothesis)

用一线性函数拟合样本数据集,与单变量线性回归不同的是,其中的变量 x 有多个,给出如下定义:

\large h_{\theta}=\theta_{0}+\theta_{1}x_{1}+\theta_{2}x_{2}+...+\theta_{n}x_{n}

我们可定义 x_{0}=1 \ or\ x_{0}^{(i)}=1,则可将 \vec{x} 和 \vec{\theta} 写成 x=\begin{bmatrix} x_{0} \\ x_{1} \\ ...\\ x_{n} \end{bmatrix} 和 \theta=\begin{bmatrix} \theta_{0}\\ \theta_{1}\\ ...\\ \theta_{n} \end{bmatrix},则 h_{\theta} 可定义成如下:

\large h_{\theta}=\theta^{T}x

2. 代价函数(Cost Function)

\large J(\theta)=\frac{1}{2m}\sum_{i=1}^{m}(h_{\theta}(x^{(i)})-y^{(i)})^2

3. 梯度下降(Gradient Descent)

\large \theta_{j}:=\theta_{j}-\alpha \frac{\partial }{\partial \theta_{j} }J(\theta)\\ \Rightarrow \theta_{j}:=\theta_{j}-\alpha \frac{1}{m}\sum_{i=1}^{m}(h_{\theta}(x^{(i)})-y^{(i)})x_{j}^{(i)}

4. 特征缩放(Feature Scaling)

假设多元线性回归中的两个变量 x_{1}\in (0,2000)\ x_{2} \in (0,5),由于它们的取值范围相差甚远,会造成梯度下降的收敛速度慢,可将其归一化于 (0,1) 之间,可加快梯度下降的收敛。有时,可采用均值归一化(Mean normalization),给出定义如下:

\large x_{i}=\frac{x_{i}-\mu_{i}}{s_{i}}

其中,\mu_{i} 为均值,s_{i} 为取值范围的最大值减去最小值。

注:不一定需要归一化至 (-1,1),只需要几个变量的取值范围相对合适接近,即可。

5. 多项式回归方程(Polynomial Regression)

对于 h_{\theta}=\theta_{0}+\theta_{1}x+\theta_{2}x^{2}+\theta_{3}x^{3},可令 x_{1}=x ,\ x_{2}=x^{2},\ x_{3}=x^{3},再采用多元梯度下降即可。但对于这种情况,不同变量之间的取值范围可能相差很大,特征缩放是必要的。有时也可采用平方根进行拟合,h_{\theta}=\theta_{0}+\theta_{1}x+\theta_{2}\sqrt{x}+...

猜你喜欢

转载自blog.csdn.net/zhq9695/article/details/82805097