首页 > 其他分享 >非齐次线性最小二乘

非齐次线性最小二乘

时间:2024-06-12 16:58:05浏览次数:31  
标签:模型 最小 齐次 线性 80 二乘

非齐次线性最小二乘问题是线性代数中一种重要的优化问题,用于寻找一组最接近给定数据的线性模型参数。当模型预测值与实际观测值之间存在误差,且模型是线性的,但观测值并不完全满足模型时,就使用非齐次线性最小二乘法。其目标是最小化模型预测值与实际观测值之间的残差平方和。

计算机视觉:在计算机视觉领域,如相机校准、三维重建、图像配准等,非齐次线性最小二乘用于估计几何变换参数,使得模型预测的特征点位置与实际检测到的特征点位置误差最小。

具体来说,假设我们有 (m) 个观测数据点和 (n) 个未知参数,用矩阵表示为:
A x = b Ax = b Ax=b
其中,(A) 是一个 (m *n) 的矩阵((m > n)),表示观测数据与未知参数之间的关系;(x) 是一个 (n *1) 的向量,包含我们想要估计的未知参数;(b) 是一个 (m *1) 的向量,代表实际观测值。

非齐次线性最小二乘的目标是找到一个向量 x ^ ,使得模型 A x ^ 尽可能接近实际值 b ,通过最小化残差向量 b − A x ^ 的欧几里得长度的平方,即: min ⁡ x ∣ ∣ b − A x ∣ ∣ 2 非齐次线性最小二乘的目标是找到一个向量 \hat{x},使得模型 A\hat{x} 尽可能接近实际值 b,通过最小化残差向量 b - A\hat{x} 的欧几里得长度的平方,即: \min_{x} ||b - Ax||^2 非齐次线性最小二乘的目标是找到一个向量x^,使得模型Ax^尽可能接近实际值b,通过最小化残差向量b−Ax^的欧几里得长度的平方,即:xmin​∣∣b−Ax∣∣2

具体例子:

假设我们要根据一些学生的考试成绩来估计他们的最终分数。已知学生的历史考试成绩(数学、英语、科学)以及他们最终的综合得分,我们想找到一个线性模型来预测综合得分。给出的数据如下:

学生数学英语科学综合得分
180759085
270858082
390707580

我们可以建立一个线性模型 y = w 1 x 1 + w 2 x 2 + w 3 x 3 + b ,其中 x 1 , x 2 , x 3 分别是数学、英语、科学的成绩, y 是综合得分, w 1 , w 2 , w 3 是权重参数, b 是偏置项。 我们可以建立一个线性模型 y = w_1x_1 + w_2x_2 + w_3x_3 + b,其中 x_1, x_2, x_3 分别是数学、英语、科学的成绩,y 是综合得分,w_1, w_2, w_3 是权重参数,b 是偏置项。 我们可以建立一个线性模型y=w1​x1​+w2​x2​+w3​x3​+b,其中x1​,x2​,x3​分别是数学、英语、科学的成绩,y是综合得分,w1​,w2​,w3​是权重参数,b是偏置项。我们的任务是找到这些参数,使得模型预测尽可能接近实际的综合得分。

计算步骤:

  1. 构造矩阵:首先,我们将数据组织成矩阵形式。

    • 设计矩阵 A = ( 80 75 90 70 85 80 90 70 75 ) A = \begin{pmatrix} 80 & 75 & 90 \\ 70 & 85 & 80 \\ 90 & 70 & 75 \end{pmatrix} A= ​807090​758570​908075​ ​(每一列为一个学生的成绩)
    • 观测值向量 b = ( 85 82 80 ) b = \begin{pmatrix} 85 \\ 82 \\ 80 \end{pmatrix} b= ​858280​ ​(学生的综合得分)
  2. 解正规方程:为了解非齐次线性最小二乘问题,我们通常解正规方程 (A^TAx = A^Tb)。

  3. 计算: 计算 A T A 和 A T b 。 计算 A^TA 和 A^Tb。 计算ATA和ATb。

    • A T = ( 80 70 90 75 85 70 90 80 75 ) A^T = \begin{pmatrix} 80 & 70 & 90 \\ 75 & 85 & 70 \\ 90 & 80 & 75 \end{pmatrix} AT= ​807590​708580​907075​
    • A T A = ( 2350 1875 2350 1875 2225 1875 2350 1875 2350 ) A^TA = \begin{pmatrix} 2350 & 1875 & 2350 \\ 1875 & 2225 & 1875 \\ 2350 & 1875 & 2350 \end{pmatrix} ATA= ​235018752350​187522251875​235018752350​
    • A T b = ( 2355 1925 2355 ) A^Tb = \begin{pmatrix} 2355 \\ 1925 \\ 2355 \end{pmatrix} ATb= ​235519252355​
  4. 求解向量 (x):解方程 A T A x = A T b A^TAx = A^Tb ATAx=ATb 得到 (x)。
    为了简化计算,可以使用矩阵求逆或更高效的数值方法(如QR分解或SVD分解)求解。

  5. 结果: 假设我们得到 x = ( w 1 w 2 w 3 b ) ,则 w 1 , w 2 , w 3 分别是数学、英语、科学成绩的权重, b 是偏置项。 假设我们得到 x = \begin{pmatrix} w_1 \\ w_2 \\ w_3 \\ b \end{pmatrix},则 w_1, w_2, w_3 分别是数学、英语、科学成绩的权重,b是偏置项。 假设我们得到x= ​w1​w2​w3​b​ ​,则w1​,w2​,w3​分别是数学、英语、科学成绩的权重,b是偏置项。利用这些参数,我们可以预测任何学生基于他们的历史考试成绩的综合得分。

请注意,在实际操作中,直接计算 (A^TA) 的逆可能会遇到数值稳定性问题,特别是在 (A^TA) 几乎奇异时。因此,通常会使用数值线性代数包(如Python的NumPy或SciPy)提供的稳定算法来直接求解最小二乘问题。

import numpy as np

# 数据准备
# 学生历史成绩数据,每一行为一个学生(数学、英语、科学成绩)
scores = np.array([[80, 75, 90],
                   [70, 85, 80],
                   [90, 70, 75]])

# 对应的综合得分
final_scores = np.array([85, 82, 80])

# 解非齐次线性最小二乘问题
# 构造设计矩阵A,并添加一列全为1的向量作为偏置项(如果模型需要考虑偏置)
A = np.c_[scores, np.ones(scores.shape[0])]
b = final_scores

# 使用lstsq函数求解,它返回最小二乘解,残差,rank,以及singular values
coefficients, residuals, _, _ = np.linalg.lstsq(A, b, rcond=None)

# 输出权重参数(包括特征权重和偏置项)
w1, w2, w3, bias = coefficients
print(f"权重参数(w1, w2, w3): ({w1}, {w2}, {w3})")
print(f"偏置项(bias): {bias}")

# 使用求得的参数进行预测
# 假设有一个新的学生,数学95分,英语88分,科学82分
new_student_scores = np.array([95, 88, 82])
prediction = np.dot(coefficients, np.append(new_student_scores, 1))

print(f"预测该学生的综合得分: {prediction}")

权重参数(w1, w2, w3): (0.27450066286203956, 0.3681258285775476, 0.39362516571550965)
偏置项(bias): 0.004244913324906249
预测该学生的综合得分: 90.75414438871465

作用

非齐次线性最小二乘(Non-homogeneous Linear Least Squares, NLLS)是一种优化方法,用于解决当线性模型的预测值与实际观测值之间存在偏差时,如何找到模型参数的最佳估计问题。它在众多科学和工程领域有着广泛的应用,主要作用包括但不限于以下几个方面:

  1. 数据拟合:非齐次线性最小二乘常用于曲线拟合。例如,当我们有一组实验数据点,希望通过这些点拟合出一条直线、抛物线或其他类型的曲线时,可以使用非齐次线性最小二乘方法来确定最佳拟合参数,使得模型曲线与数据点的偏差(通常采用残差平方和作为度量)最小。

  2. 参数估计:在物理、工程、经济学等领域,我们经常需要从观测数据中估计未知参数。例如,通过观测到的响应数据估计系统模型的参数,非齐次线性最小二乘提供了一种有效的方法来实现这一目的。

  3. 预测和控制:在预测模型中,如时间序列分析,非齐次线性最小二乘可以帮助建立预测模型,预测未来的趋势或行为。在控制系统设计中,它也用于确定控制器参数,以最小化系统误差。

  4. 信号处理:在信号处理中,非齐次线性最小二乘用于滤波、去噪和信号重构,通过最小化预测信号与实际信号之间的差异,提高信号质量。

  5. 计算机视觉:在计算机视觉领域,如相机校准、三维重建、图像配准等,非齐次线性最小二乘用于估计几何变换参数,使得模型预测的特征点位置与实际检测到的特征点位置误差最小。

  6. 机器学习:在机器学习的某些模型中,如线性回归,非齐次线性最小二乘是寻找最优模型参数的基础方法,确保模型能够很好地泛化到未见数据。

通过非齐次线性最小二乘方法,我们可以得到一组参数,使得模型预测与实际观测值之间的偏差最小,从而更好地理解数据、做出预测或优化决策。在实际计算中,可以利用正规方程、梯度下降、高斯-牛顿法、列文伯格-马夸特法(LM算法)等多种方法求解。

标签:模型,最小,齐次,线性,80,二乘
From: https://blog.csdn.net/weixin_50569789/article/details/139629719

相关文章

  • R:microtable包线性判别分析LEfSe
    rm(list=ls())setwd("C:\\Users\\Administrator\\Desktop\\New_microtable")#设置工作目录library(microeco)library(magrittr)library(dplyr)library(tibble)feature_table<-read.table('Bac_species.txt',header=TRUE,row.names=......
  • 6.12(1)线性规划应用案例的求解
    (1)线性规划应用案例的求解1、基本要求通过一个农业生产计划优化安排的实例求解,培养学生解决实际线性规划问题的初步能力;熟悉线性规划的建模过程;掌握Matlab优化工具箱中线性规划函数的调用。2、主要内容某村计划在100公顷的土地上种植a、b、c三种农作物。可以提供的劳力、粪肥和......
  • Pytorch 实现简单的 线性回归 算法
    Pytorch实现简单的线性回归算法简单tensor的运算Pytorch涉及的基本数据类型是tensor(张量)和Autograd(自动微分变量)importtorchx=torch.rand(5,3)#产生一个5*3的tensor,在[0,1)之间随机取值y=torch.ones(5,3)#产生一个5*3的Tensor,元素都是1z=x+y......
  • 线性规划对偶学习笔记
    对于一个线性规划问题,若其有最优解,那么其对偶问题也有最优解,且最优值相等。如果对于一个困难的线性规划问题,其对偶形式比较简单,此时就可以通过线性规划对偶,解决其对偶问题,从而解决原问题。线性规划的原问题与对偶问题的变化规则:对于一个标准型线性规划:\[\max\quadC^Tx\\s.t......
  • 数据结构之线性表(3)
    数据结构之线性表(3)上文我们了解了线性表的静动态存储的相关操作,此篇我们对线性表中链表的相关操作探讨。在进行链表的相关操作时,我们先来理解单链表是什么?1.链表的概念及结构链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接......
  • 线性表总结(数据结构C++,大二下写,初学者)
    这段时间,我学到了这门课的第一种数据结构——线性表。关于线性表的知识,我总结为三方面:课本上学到的知识、上机实现课本上的例子的过程所学到的知识和力扣做题学到的知识和技巧。顺序表线性表中第一个学到的是顺序表,为此我翻了一下课本。顺序表,顾名思义,是线性表的顺序存储结构......
  • 第二章、线性表
    目录一、线性表的基本概念1.定义2.线性表的一些操作(1).基本操作(增删改查)(2).线性表其他常用操作(3)在定义这些操作时的注意事项3.重要考点总结4.易错题总结二、顺序表1.顺序表定义2.顺序表实现方式3.顺序表元素的插入和删除(1)插入元素(2)删除元素4.顺序表查......
  • 数据结构严蔚敏版精简版-线性表以及c语言代码实现
    线性表、栈、队列、串和数组都属于线性结构。线性结构的基本特点是除第一个元素无直接前驱,最后一个元素无直接后继之外,其他每个数据元素都有一个前驱和后继。1 线性表的定义和特点如此类由n(n大于等于0)个数据特性相同的元素构成的有限序列称为线性表。线性表中元素的个数n定......
  • 【线性代数】向量空间,子空间
    向量空间设V为n维向量的集合,如果V非空,且集合V对于向量的加法以及数乘两种运算封闭,那么就称集合V为向量空间x,y是n维列向量。x向量组等价说明可以互相线性表示向量组等价则生成的向量空间是一样的子空间例题18是三位向量的全体R3的子空间。而例题19只是全体R3的子集......
  • 应用广义线性模型二|二响应广义线性模型
    系列文章目录文章目录系列文章目录一、二响应模型的不同表达方式和响应函数二、二响应模型的性质(一)二响应变量的条件数学期望与方差(二)二响应模型参数的极大似然估计(三)二响应模型的优势三、二响应模型参数的假设检验(一)对数似然比检验方法(二)Wald统计量(三)得分统计量(四)模型......