公司做网站的费用怎么记账/公司网站制作网络公司
文章目录
- 第四章 多变量线性回归
- 4.1 多变量 Multiple features
- 4.2 多元梯度下降法
- 4.3 特征和多项式回归
- 4.4 正规方程
第四章 多变量线性回归
4.1 多变量 Multiple features
- 标记 Notation:
- nnn:特征数量(变量数量)
- mmm :样本数量
- x(i)x^{(i)}x(i) :索引样本(一个 nnn 维变量)
- xj(i)x^{(i)}_jxj(i):第 iii 个样本的第 jjj 个特征量的值

- 函数变化:hθ(x)=θ0+θ1x1+θ2x2+...+θnxnh_{\theta}(x)=\theta_0+\theta_1x_1+\theta_2x_2+...+\theta_nx_nhθ(x)=θ0+θ1x1+θ2x2+...+θnxn.
- 内积 inner product 表示:设 x0=1x_0=1x0=1,则 hθ(x)=θT⋅x=[θ0,θ1,θ2,...,θn]⋅[x0x1x2...xn]h_{\theta}(x)={\color{red}\theta^T\cdot x}=\begin{bmatrix}\theta_0,\theta_1,\theta_2,...,\theta_n\end{bmatrix}\cdot \begin{bmatrix}x_0\\x_1\\x_2\\...\\x_n\end{bmatrix}hθ(x)=θT⋅x=[θ0,θ1,θ2,...,θn]⋅⎣⎢⎢⎢⎢⎡x0x1x2...xn⎦⎥⎥⎥⎥⎤,记为多元线性回归 Multivariate linear regression。
4.2 多元梯度下降法
Hypothesis:hθ(x)=θTx=θ0x0+θ1x1+θ2x2+...+θnxnh_{\theta}(x)=\theta^Tx=\theta_0x_0+\theta_1x_1+\theta_2x_2+...+\theta_nx_nhθ(x)=θTx=θ0x0+θ1x1+θ2x2+...+θnxn
Parmeters:θ^=θ0,θ1,...,θn\hat\theta=\theta_0,\theta_1,...,\theta_nθ^=θ0,θ1,...,θn
Cost function:J(θ0,θ1,...,θn)=J(θ^)=12m∑i=1m(hθ(x(i))−y(i))2J(\theta_0,\theta_1,...,\theta_n)=J(\hat\theta)=\dfrac{1}{2m}\sum\limits_{i=1}^m\left(h_{\theta}(x^{(i)})-y^{(i)}\right)^2J(θ0,θ1,...,θn)=J(θ^)=2m1i=1∑m(hθ(x(i))−y(i))2
-
梯度下降法 Gradient Descent:当 n≥1n\ge 1n≥1 时
Repeat{θj:=θj−α1m∑i=1m(hθ(x(i))−y(i))xj(i)}j=0,1,...,nRepeat\left\{\theta_j:=\theta_j-\alpha\dfrac{1}{m}\sum\limits_{i=1}^m\left(h_{\theta}(x^{(i)})-y^{(i)} \right)x_j^{(i)}\right\}\qquad j=0,1,...,n Repeat{θj:=θj−αm1i=1∑m(hθ(x(i))−y(i))xj(i)}j=0,1,...,n
-
特征缩放 Feature Scaling:
- 目的:使得特征量范围相近,减少迭代次数,增加下降速度
- 方法:使得每个特征量在 [−1,1][-1,1][−1,1] 的范围内。(若大于 [−3,3][-3,3][−3,3] 或小于 [−13,13][-\frac{1}{3},\frac{1}{3}][−31,31] 时就需要除以最大值进行调整)
-
均值归一化 Mean Normalization:先用 xi−μix_i-\mu_ixi−μi 代替 xix_ixi 来使平均值约为 000
近似即可
xi⟵x−μisi=x−μimax−minx_i\longleftarrow \dfrac{x-\mu_i}{s_i}= \dfrac{x-\mu_i}{\max-\min} xi⟵six−μi=max−minx−μi
-
学习率 Learning Rate:α\alphaα
Gradient descent:θj:=θj−α∂∂θjJ(θ)\theta_j:=\theta_j-\alpha\dfrac{\partial}{\partial\theta_j}J(\theta)θj:=θj−α∂θj∂J(θ)
-
自动收敛测试:J(θk)−J(θk+1)≤εJ(\theta_k)-J(\theta_{k+1})\le \varepsilonJ(θk)−J(θk+1)≤ε
-
代价函数随迭代步数增加的变化曲线:
-
可判断梯度下降法是否已收敛(当曲线几乎平坦时)
-
可判断梯度下降法是否正常工作(保证曲线单调下降)。若曲线上升,说明需用更小的学习率
-
-
总结:α\alphaα 太小,导致收敛过慢。α\alphaα 太大,可能导致代价函数 J(θ)J(\theta)J(θ) 不下降或不收敛。
-
α\alphaα 选择方法:三倍一取,即 α=0.001,0.003,0.01,0.03,0.1,0.3\alpha=0.001,0.003,0.01,0.03,0.1,0.3α=0.001,0.003,0.01,0.03,0.1,0.3
-
4.3 特征和多项式回归
-
选择特征 Choose Features:当预测房价时,已知临街宽度 frontage 与纵深宽度 depth 得到回归方程
hθ(x)=θ0+θ1×frontage+θ2×depthh_\theta(x)=\theta_0+\theta_1\times \text{frontage} +\theta_2\times \text{depth} hθ(x)=θ0+θ1×frontage+θ2×depth但是更好的回归方程应该为
area=frontage×depthhθ(x)=θ0+θ1×area\color{red}\text{area}=\text{frontage}\times\text{depth}\\ h_\theta(x)=\theta_0+\theta_1\times \text{area} area=frontage×depthhθ(x)=θ0+θ1×area即 area 为新的更合适的特征(变量)。 -
多项式回归 Polynomial Regression:利用线性回归拟合复杂函数(例:非线性函数)
- 选择特征为初始特征的函数,代入回归方程中
- 应用特征缩放:使不同函数的特征值可比较
4.4 正规方程
正规方程:一种求线性回归的代价函数 J(θ)J(\theta)J(θ) 取最小值时的 θ\thetaθ 的解析解法,无需运行迭代方程
-
微积分求(偏)导,使(偏)导数为零,解方程。
缺点:计算量太大
-
正规方程法 Normal equation:
-
例题:样本数量 m=4m=4m=4 的数据集
方法:加入 x0x_0x0,使其均置为 111。建立设计矩阵 Design Matrix Xm×(n+1)X_{m\times(n+1)}Xm×(n+1) 和 ymy_mym,则
θ=(XTx)−1XTy\theta=(X^Tx)^{-1}X^Ty θ=(XTx)−1XTy为函数取最小值时的解 θ\thetaθMatlab 代码:
pinv(X' * X) * X' * y # Octave
-
优点:
- 不需要根据迭代次数最少尝试不同的学习率 α\alphaα
- 不需要迭代
-
缺点:由于 (XTX)−1(X^TX)^{-1}(XTX)−1 是 n×nn\times nn×n 矩阵,计算逆矩阵复杂度为 O(n3)O(n^3)O(n3),若 nnn 很大时,计算将会很慢。一般 n<10000n<10000n<10000 时可以用正规方程法。
-
-
正规方程的不可逆性:当 (XTX)−1(X^TX)^{-1}(XTX)−1 为奇异 Singular 或退化矩阵 Degenerate Matrices 时
Octave 内使用 pinv() 函数(即伪逆函数 pseudo-inverse),可无视是否可逆
- 主要原因:
- 存在冗余变量 Redundant Features:即线性相关
方法:删除相关变量 - 变量太多(数据太少):即 m≤nm\le nm≤n
方法:删除变量或使用正则化 Regularization
即线性相关
- 存在冗余变量 Redundant Features:即线性相关
- 主要原因: