深度学习DeepLearning多元线性回归 学习笔记

文章目录

多维特征

变量与术语

列属性x~j~ 属性数n x ⃗ \vec{x} x ^(i)^行向量 某个值 x ⃗ j i \vec{x}_j^i x ji上行下列
均值μ 标准化 标准差σ sigma(σ)

公式

w ⃗ \vec{w} w = [w~1~ w~2~ w~3~ ...]
x ⃗ \vec{x} x = [x~1~ x~2~ x~3~ ...]

f w ⃗ , b ( x ⃗ ) = w ⃗ ∗ x ⃗ + b = w 1 x 1 + w 2 x 2 + ... + w n x n + b f_{\vec{w},b} (\vec{x}) = \vec{w} * \vec{x} + b = w_1x_1 + w_2x_2 + ... + w _nx_n + b fw ,b(x )=w ∗x +b=w1x1+w2x2+...+wnxn+b

多元线性回归

python 复制代码
import numpy
f = np.dot(w, x) + b

注:n很大的时候很快(并行处理)

正规方程法

  1. 大于1000效率低
  2. 不能推广到其他算法,如逻辑回归,神经网络或其他算法。
  3. 没有迭代

w n = w n − α 1 m ∑ i = 1 m f w ⃗ , b ( x ⃗ ( i ) − y ( i ) ) x n ( i ) w_n = w_n - α\dfrac{1}{m} \sum\limits_{i=1}^mf_{\vec{w},b}(\vec{x}^{(i)}-y^{(i)})x_n^{(i)} wn=wn−αm1i=1∑mfw ,b(x (i)−y(i))xn(i)

b = b − α 1 m ∑ i = 1 m ( f w ⃗ , b ( x ⃗ ( i ) − y ( i ) ) b = b - α{\dfrac{1}{m}}\sum\limits_{i=1}^m(f_{\vec{w},b}(\vec{x}^{(i)}-y^{(i)}) b=b−αm1i=1∑m(fw ,b(x (i)−y(i))

较大范围的自变量对应权重趋于更小,较小范围的自变量对应权重趋于更大。

Mean normalization

除以范围的最大值以求得权重与自变量的[0, 1]

横坐标: x 1 = x 1 − μ 1 2000 − 300 x_1 = \dfrac{x_1-μ_1}{2000-300} x1=2000−300x1−μ1 纵坐标: x 2 = x 2 − μ 2 5 − 0 x_2 = \dfrac{x_2 - μ_2}{5-0} x2=5−0x2−μ2

− 0.18 ≤ x 1 ≤ 0.82 -0.18\le x_1\le0.82 −0.18≤x1≤0.82 − 0.46 ≤ x 2 ≤ 0.54 -0.46\le x_2\le0.54 −0.46≤x2≤0.54

Z-score normalization

300 ≤ x 1 ≤ 2000 300\le x_1\le2000 300≤x1≤2000 0 ≤ x 2 ≤ 5 0\le x_2\le5 0≤x2≤5

x 1 = x 1 − μ 1 σ 1 x1 = \dfrac{x_1-μ_1}{σ_1} x1=σ1x1−μ1 − 0.67 ≤ x 1 ≤ 3.1 -0.67\le x_1\le3.1 −0.67≤x1≤3.1

通过缩放尽量让所有特征的取值在差不多范围,这样它们的变化对预测值的影响都是接近的 接近(-3,3)

如果成本函数J变大,那么说明步长(学习率)不合适,或代码有误

注:迭代次数因机器而异

除了通过绘制曲线判断迭代到什么地步之外还可以采用自动收敛测试

让 ε 等于 1 0 − 3 10^{-3} 10−3,J的减小幅度小于这个很小的数则视作收敛。

设置合适的学习率

  1. 测试时可以设置一个很小的值, 看J是否减小
  2. 迭代时学习率不宜过大不宜过小
  3. 测试时每次 * 3,选择尽可能大的学习率,或是比合理值略小的

Feature engineering

通过变换或组合建立特征工程,给予更多选择

f w ⃗ , b ( x ⃗ ) = w 1 x 1 + w 2 x 2 + w 3 x 3 + b f_{\vec{w},b}(\vec{x}) = w_1x_1+w_2x_2+w_3x_3+b fw ,b(x )=w1x1+w2x2+w3x3+b

注:多项式回归可以用于线性和非线性拟合

相关推荐
春末的南方城市8 分钟前
开源音乐分离器Audio Decomposition:可实现盲源音频分离,无需外部乐器分离库,从头开始制作。将音乐转换为五线谱的程序
人工智能·计算机视觉·aigc·音视频
矢量赛奇29 分钟前
比ChatGPT更酷的AI工具
人工智能·ai·ai写作·视频
KuaFuAI38 分钟前
微软推出的AI无代码编程微应用平台GitHub Spark和国产AI原生无代码工具CodeFlying比到底咋样?
人工智能·github·aigc·ai编程·codeflying·github spark·自然语言开发软件
Make_magic1 小时前
Git学习教程(更新中)
大数据·人工智能·git·elasticsearch·计算机视觉
shelly聊AI1 小时前
语音识别原理:AI 是如何听懂人类声音的
人工智能·语音识别
源于花海1 小时前
论文学习(四) | 基于数据驱动的锂离子电池健康状态估计和剩余使用寿命预测
论文阅读·人工智能·学习·论文笔记
雷龙发展:Leah1 小时前
离线语音识别自定义功能怎么用?
人工智能·音频·语音识别·信号处理·模块测试
4v1d1 小时前
边缘计算的学习
人工智能·学习·边缘计算
风之馨技术录1 小时前
智谱AI清影升级:引领AI视频进入音效新时代
人工智能·音视频
sniper_fandc1 小时前
深度学习基础—Seq2Seq模型
人工智能·深度学习