• 最小二乘法


    1、相关的矩阵公式

    P r e c o n d i t i o n : ξ ∈ R n , A ∈ R n ∗ n i : σ A ξ σ ξ = A T i i : σ ξ T A ξ σ ξ = A T ξ + A ξ i i i : ( A B ) T = B T A T i v : ( A + B ) T = A T + B T v : ∥ ξ ∥ = ξ T ξ Precondition:ξRn,ARnni:σAξσξ=ATii:σξTAξσξ=ATξ+Aξiii:(AB)T=BTATiv:(A+B)T=AT+BTv:ξ=ξTξ

    Precondition:ξRn,ARnni:σAξσξ=ATii:σξTAξσξ=ATξ+Aξiii:(AB)T=BTATiv:(A+B)T=AT+BTv:ξ=ξTξ
    Precondition:ξRn,ARnni:σξσAξ=ATii:σξσξTAξ=ATξ+Aξiii:(AB)T=BTATiv:(A+B)T=AT+BTv:ξ=ξTξ

    2、线性回归

    线性回归(Linear Regression)个人理解大概是说,一组数据基本上服从线性分布。举一个在二维平面中线性回归的例子,如下图所示,我们可以找到一条表达式为 y = a x + b y=ax+b y=ax+b的直线来大概的拟合这些数据。进而,我们可以用这条直线去预测新输入的点的相应的坐标。那么这种寻找线性方程去拟合数据的方式我们称之为线性回归
    在这里插入图片描述

    3、最小二乘法

    3.1、损失函数(Loss Function)

    在二维平面中,我们可以设这条可以拟合大多数数据的直线的表达式如下:
    h ( θ ) = θ 1 x + θ 2 h\left( \theta \right) = {\theta _1}{x} + {\theta _2} h(θ)=θ1x+θ2
    其中 θ 1 {{\theta _1}} θ1 θ 2 {{\theta _2}} θ2就是 y = a x + b y = ax + b y=ax+b中的 a a a b b b,只是换了一种表达而已。
    接着,可以求得平面上每一个点在这条直线上对应的坐标(即估计值):
    h 1 ( θ ) = θ 1 x 1 + θ 2 h 2 ( θ ) = θ 1 x 2 + θ 2 . . . . h n ( θ ) = θ 1 x n + θ 2 h1(θ)=θ1x1+θ2h2(θ)=θ1x2+θ2....hn(θ)=θ1xn+θ2

    h1(θ)=θ1x1+θ2h2(θ)=θ1x2+θ2....hn(θ)=θ1xn+θ2
    h1(θ)=θ1x1+θ2h2(θ)=θ1x2+θ2....hn(θ)=θ1xn+θ2

    再求这些点在直线上的坐标和真实坐标的差的平方,就得到损失函数的表达式。
    L ( θ ) = ∑ i = 1 m ( h i ( θ ) − f ( x i ) ) 2 L\left( \theta \right) = \sum\limits_{i = 1}^m {{{\left( {{h_i}\left( \theta \right) - f\left( {{x_i}} \right)} \right)}^2}} L(θ)=i=1m(hi(θ)f(xi))2
    其中 f ( x i ) {f\left( {{x_i}} \right)} f(xi)则是 x i {{x_i}} xi对应的真实坐标值。
    因此,可以通过损失函数 L ( θ ) L\left( \theta \right) L(θ)来找出适当的 θ 1 {{\theta _1}} θ1 θ 2 {{\theta _2}} θ2,使其 f ( x i ) {f\left( {{x_i}} \right)} f(xi)之间的方差最小。求解方法放在后面讲。

    3.2、多维空间的损失函数

    m m m维线性空间中,有 n n n个点。其对应的预测方程应该如下:

    h 1 ( θ ) = θ 1 x 11 + θ 2 x 12 + . . . + θ m − 1 x 1 m − 1 + θ m h 2 ( θ ) = θ 1 x 21 + θ 2 x 22 + . . . + θ m − 1 x 2 m − 1 + θ m . . . h n ( θ ) = θ 1 x n 1 + θ 2 x n 2 + . . . + θ m − 1 x n m − 1 + θ m h1(θ)=θ1x11+θ2x12+...+θm1x1m1+θmh2(θ)=θ1x21+θ2x22+...+θm1x2m1+θm...hn(θ)=θ1xn1+θ2xn2+...+θm1xnm1+θm

    h1(θ)=θ1x11+θ2x12+...+θm1x1m1+θmh2(θ)=θ1x21+θ2x22+...+θm1x2m1+θm...hn(θ)=θ1xn1+θ2xn2+...+θm1xnm1+θm
    h1(θ)=θ1x11+θ2x12+...+θm1x1m1+θmh2(θ)=θ1x21+θ2x22+...+θm1x2m1+θm...hn(θ)=θ1xn1+θ2xn2+...+θm1xnm1+θm
    其中 n > m n>m n>m(方程数量等比未知数多才能有解)。损失函数的表达式依旧如此:
    L ( θ ) = ∑ i = 1 m ( h i ( θ ) − f ( x i ) ) 2 L\left( \theta \right) = \sum\limits_{i = 1}^m {{{\left( {{h_i}\left( \theta \right) - f\left( {{x_i}} \right)} \right)}^2}} L(θ)=i=1m(hi(θ)f(xi))2
    那么再将以上的所有变量矩阵化:
    在这里插入图片描述
    可以得到损失函数的表达式为:
    L ( θ ) = ∥ X θ − F ∥ 2 = ( X θ − F ) T ( X θ − F ) L\left( \theta \right) = {\left\| {X\theta - F} \right\|^2} = {\left( {X\theta - F} \right)^T}\left( {X\theta - F} \right) L(θ)=F2=(F)T(F)
    再展开化简:
    L ( θ ) = ∥ X θ − F ∥ 2 = ( X θ − F ) T ( X θ − F ) = ( θ T X T − F T ) ( X θ − F ) = θ T X T X θ − θ T X T F − F T X θ + F T F = θ T X T X θ − 2 F T X θ + F T F L(θ)=XθF2=(XθF)T(XθF)=(θTXTFT)(XθF)=θTXTXθθTXTFFTXθ+FTF=θTXTXθ2FTXθ+FTF
    L(θ)=XθF2=(XθF)T(XθF)=(θTXTFT)(XθF)=θTXTXθθTXTFFTXθ+FTF=θTXTXθ2FTXθ+FTF
    L(θ)=F2=(F)T(F)=(θTXTFT)(F)=θTXTθTXTFFT+FTF=θTXT2FT+FTF

    根据上文,我们知道化简的目的是为了找到适当的 θ \theta θ使得损失函数 L ( θ ) L\left( \theta \right) L(θ)最小,而常用的求 θ \theta θ有两种,分别是解析法求解和梯度下降法。

    3.3、解析法求解

    从高数可以知,当偏导等于零时,该点是极值点(说的不严谨emm)。所以我们直接求偏导,另其为零即可得 θ \theta θ
    σ L ( θ ) σ θ = 2 X T X θ − 2 X T F = 0 θ = ( X T X ) − 1 X T F σL(θ)σθ=2XTXθ2XTF=0θ=(XTX)1XTF

    σθσL(θ)=2XT2XTF=0θ=(XTX)1XTF
    但这种方法要求 X T X {{{X^T}X}} XTX是可逆的,即行列式不为零or满秩。很多时候这个条件并不成立,所以在机器学习(Machine Learning)中经常用到梯度下降法。

    3.4、梯度下降法求解

    梯度下降基本思想是先随便取一个 θ i {\theta _i} θi,然后带入下式看看损失函数多大,然后再在 θ i {\theta _i} θi基础上,取一个稍微小一点或大一点的 θ j {\theta _j} θj带入下式,看看此时的损失函数多大。如此往复,找到那个最优的 θ \theta θ的取值。
    L ( θ i ) = θ i T X T X θ i − 2 F T X θ i + F T F L\left( {{\theta _{\rm{i}}}} \right) = {\theta _i}^T{X^T}X{\theta _i} - 2{F^T}X{\theta _i} + {F^T}F L(θi)=θiTXTXθi2FTXθi+FTF

  • 相关阅读:
    CTFhub-SSRF-内网访问
    SecureRandom那些事|真伪随机数
    Vue (十一) --------- 过渡与动画
    Selenium上传文件有多少种方式?不信你有我全
    【数据结构-字符串 三】【字符串转换】字符串解码
    k8s-服务网格实战-配置 Mesh(灰度发布)
    centos 文件分割
    linux线程池
    uni-app - 城市选择索引列表 / 通过 A-Z 排序的城市列表(uview 组件库 IndexList 索引列表)
    【WEB前端2024】开源智体世界:乔布斯3D纪念馆-第30课-门的移动动画
  • 原文地址:https://blog.csdn.net/weixin_45885074/article/details/132921693