做微视频的网站组工网站建设方案
news/
2025/9/29 16:15:45/
文章来源:
做微视频的网站,组工网站建设方案,学生做的网站成品,南京网站如何制作二、学习回归
1. y y y与 f θ ( x ) f_\theta(x) fθ(x) y y y 是实际数据x对应的值 f θ ( x ) f_\theta(x) fθ(x)是我们构造出来的函数#xff0c;例如 f θ ( x ) θ 0 θ 1 x f_\theta(x) \theta_0 \theta_1 x fθ(x)θ0θ1x
所以我们希望这两个越接近例如 f θ ( x ) θ 0 θ 1 x f_\theta(x) \theta_0 \theta_1 x fθ(x)θ0θ1x
所以我们希望这两个越接近同时我们把 y − f θ ( x ) y - f_\theta(x) y−fθ(x)称为误差
2.目标函数
假设有 n 个训练数据那么它们的误差之和可以用这样的表达式表示。这个表达式称为
目标函数E(θ)的E是误差的英语单词 Error 的首字母 E ( θ ) 1 2 ∑ i 1 n [ y ( i ) − f θ ( x ( i ) ) ] 2 E(\theta) \frac{1}{2}\sum_{i1}^n[y^{(i)}-f_\theta(x^{(i)})]^2 E(θ)21i1∑n[y(i)−fθ(x(i))]2 找到使 E(θ) 的值最小的 θ。这样的问题称为最优化问题。
3.最小二乘法
修改 θ \theta θ使得 E ( θ ) E(\theta) E(θ)越来越小这种做法成为最小二乘法。
4.最速下降法
要让 E(θ) 越来越小一边随意修改 θ 的值一边计算 E(θ) 并与之前的值相比较的做法实在是太麻烦了。
微分是计算变化的快慢程度时使用的方法。
书中举了一个例子 g ( x ) x 2 − 2 x 1 d g ( x ) d x 2 x − 2 g(x) x^2 - 2x 1 \\ \frac{dg(x)}{dx} 2x-2 g(x)x2−2x1dxdg(x)2x−2
增减表 图像
比如在 x 3 这一点为了使 g(x)的值变小我们需要向左移动x也就是必须减小 x。
只要向与导数的符号相反的方向移动 xg(x) 就会自然而然地沿着最小值的方向前进了。
最速下降法或梯度下降法 x : x − η d g ( x ) d x x:x - \eta \frac{dg(x)}{dx} x:x−ηdxdg(x) η \eta η称为学习率的常数A:B就是用B来定义A
这个同样适用于目标函数目标函数也是个开口向上的 θ 0 : θ 0 − η ∂ E ∂ θ 0 θ 1 : θ 1 − η ∂ E ∂ θ 1 \theta_0 : \theta_0 - \eta \frac{\partial E}{\partial \theta_0} \\ \theta_1 : \theta_1 - \eta \frac{\partial E}{\partial \theta_1} θ0:θ0−η∂θ0∂Eθ1:θ1−η∂θ1∂E
复合函数的微分 u E ( θ ) v f θ ( x ) ∂ u ∂ θ 0 ∂ u ∂ v ⋅ ∂ v ∂ θ 0 u E(\theta)\\ vf_\theta(x)\\ \frac{\partial u}{\partial \theta_0} \frac{\partial u}{\partial v} ·\frac{\partial v}{\partial \theta_0} uE(θ)vfθ(x)∂θ0∂u∂v∂u⋅∂θ0∂v 其中 所以有 同理可以得到 ∂ u ∂ θ 1 \frac{\partial u}{\partial \theta_1} ∂θ1∂u
所以最终可以得到 θ 0 : θ 0 − η ∂ E ∂ θ 0 θ 0 − η ∑ i 1 n [ f θ ( x ( i ) − y ( i ) ) ] θ 1 : θ 1 − η ∂ E ∂ θ 1 θ 0 − η ∑ i 1 n [ f θ ( x ( i ) − y ( i ) ) ] x ( i ) \theta_0 : \theta_0 - \eta \frac{\partial E}{\partial \theta_0} \theta_0 - \eta\sum_{i1}^n[f_\theta(x^{(i)} - y^{(i)})] \\ \theta_1 : \theta_1 - \eta \frac{\partial E}{\partial \theta_1} \theta_0 - \eta\sum_{i1}^n[f_\theta(x^{(i)} - y^{(i)})]x^{(i)} θ0:θ0−η∂θ0∂Eθ0−ηi1∑n[fθ(x(i)−y(i))]θ1:θ1−η∂θ1∂Eθ0−ηi1∑n[fθ(x(i)−y(i))]x(i) 根据这个表达式来更新 θ 0 \theta_0 θ0和 θ 1 \theta_1 θ1就可以找到好的一次函数 f θ ( x ) f_\theta(x) fθ(x)
缺点
计算量大计算时间长容易陷入局部最优解
5.多项式回归
将一次函数拓展为多次函数即 f θ ( x ) θ 0 θ 1 x → f θ ( x ) θ 0 θ 1 x θ 2 x 2 . . . θ n x n f_\theta(x) \theta_0 \theta_1 x \to f_\theta(x) \theta_0 \theta_1 x \theta_2x^2...\theta_nx^n fθ(x)θ0θ1x→fθ(x)θ0θ1xθ2x2...θnxn 同理对于 θ n \theta_n θn的更新规则也和最速下降法中一样 6.多重回归
将一次函数中的x变为多个x即 f θ ( x ) θ 0 θ 1 x → f θ ( x 1 , x 2 , . . . , x n ) θ 0 θ 1 x 1 . . . θ n x n f_\theta(x) \theta_0 \theta_1 x \to f_\theta(x_1,x_2,...,x_n) \theta_0 \theta_1 x_1 ... \theta_n x_n fθ(x)θ0θ1x→fθ(x1,x2,...,xn)θ0θ1x1...θnxn 然后为了方便我们可以用向量来表示 θ [ θ 0 θ 1 . . . θ n ] , x [ 1 x 1 . . . x n ] (2) \theta \begin{bmatrix} \theta_0\\ \theta_1\\ ...\\ \theta_n \end{bmatrix} \tag{2} , x \begin{bmatrix} 1\\ x_1\\ ...\\ x_n \end{bmatrix} θ θ0θ1...θn ,x 1x1...xn (2) 对应的 f θ ( x ) θ T x θ 0 θ 1 x θ 2 x 2 . . . θ n x n f_\theta(x) \theta^Tx \theta_0 \theta_1 x \theta_2x^2...\theta_nx^n fθ(x)θTxθ0θ1xθ2x2...θnxn 要求出合适的更新规则其实也和前面的做法一样复合函数求微分 u E ( θ ) v f θ ( x ) ∂ u ∂ θ j ∂ u ∂ v ⋅ ∂ v ∂ θ j u E(\theta)\\ vf_\theta(x)\\ \frac{\partial u}{\partial \theta_j} \frac{\partial u}{\partial v} ·\frac{\partial v}{\partial \theta_j} uE(θ)vfθ(x)∂θj∂u∂v∂u⋅∂θj∂v 所以 对应的第j个参数的更新表达式为 θ j : θ j − η ∑ i 1 n [ f θ ( x ( i ) − y ( i ) ) ] x j ( i ) \theta_j : \theta_j - \eta\sum_{i1}^n[f_\theta(x^{(i)} - y^{(i)})]x_j^{(i)} θj:θj−ηi1∑n[fθ(x(i)−y(i))]xj(i)
7.随机梯度下降法
最速下降法的参数更新表达式 θ j : θ j − η ∑ i 1 n [ f θ ( x ( i ) − y ( i ) ) ] x j ( i ) \theta_j : \theta_j - \eta\sum_{i1}^n[f_\theta(x^{(i)} - y^{(i)})]x_j^{(i)} θj:θj−ηi1∑n[fθ(x(i)−y(i))]xj(i) 这个表达式使用了所有训练数据的误差而在随机梯度下降法中会随机选择一个训练数据并使用它来更新参数。这个表达式中的 k 就是被随机选中的数据索引。 θ j : θ j − η [ f θ ( x ( k ) − y ( k ) ) ] x j ( k ) \theta_j : \theta_j - \eta[f_\theta(x^{(k)} - y^{(k)})]x_j^{(k)} θj:θj−η[fθ(x(k)−y(k))]xj(k) 因此最速下降法更新 1 次参数的时间随机梯度下降法可以更新 n 次。
此外随机梯度下降法由于训练数据是随机选择的更新参数时使用的又是选择数据时的梯度所以不容易陷入目标函数的局部最优解。
8.小批量梯度下降法
这个方法介于最速下降法和随机梯度下降法之间的方法。 最速下降法是用了全部的训练数据 随机梯度下降法是只用了一个数据。 小批量梯度下降法就是选择部分的数据。
假设训练数据有 100 个那么在 m 10 时创建一个有 10 个随机数的索引的集合例如 K {61, 53, 59, 16, 30, 21, 85, 31, 51, 10}、
对应的更新规则为 θ j : θ j − η ∑ k ∈ K [ f θ ( x ( k ) − y ( k ) ) ] x j ( k ) \theta_j : \theta_j - \eta\sum_{k\in K}[f_\theta(x^{(k)} - y^{(k)})]x_j^{(k)} θj:θj−ηk∈K∑[fθ(x(k)−y(k))]xj(k)
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/921974.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!