当前位置: 首页 > news >正文

矩阵的QR分解

矩阵的QR分解

GramSchmidt

设存在 B = { x 1 , x 2 , … , x n } \mathcal{B}=\left\{\mathbf{x}_{1},\mathbf{x}_{2},\ldots,\mathbf{x}_{n}\right\} B={x1,x2,,xn}在施密特正交化过程中

  1. q 1 = x 1 ∣ ∣ x 1 ∣ ∣ q_1=\frac{x_1}{||x_1||} q1=∣∣x1∣∣x1
  2. q k = x k − ∑ i = 1 k − 1 < q i , x k > u i ∣ ∣ x k − ∑ i = 1 k − 1 < q i , x k > u i ∣ ∣ q_k=\frac{x_k-\sum_{i=1}^{k-1}\left< q_i,x_k\right>u_i}{||x_k-\sum_{i=1}^{k-1}\left< q_i,x_k\right>u_i||} qk=∣∣xki=1k1qi,xkui∣∣xki=1k1qi,xkui

对于任意一个矩阵 A m × n = { a 1 ∣ a 2 ∣ … ∣ a n } A_{m\times n}=\{a_1|a_2|\dots|a_n\} Am×n={a1a2an},其行向量线性无关,则存在 A = Q R A=QR A=QR,其 Q m × n = { q 1 ∣ q 2 ∣ … ∣ q n } Q_{m\times n}=\{q_1|q_2|\dots|q_n\} Qm×n={q1q2qn}矩阵是 R ( A ) R(A) R(A)的一组正交基, R m × m R_{m\times m} Rm×m是一个上三角矩阵,则
R = ( ν 1 q 1 ∗ a 2 q 1 ∗ a 3 ⋯ q 1 ∗ a n 0 ν 2 q 2 ∗ a 3 ⋯ q 2 ∗ a n 0 0 ν 3 ⋯ q 3 ∗ a n ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 0 ⋯ ν n ) \mathbf{R}=\begin{pmatrix}\nu_1&\mathbf{q}_1^*\mathbf{a}_2&\mathbf{q}_1^*\mathbf{a}_3&\cdots&\mathbf{q}_1^*\mathbf{a}_n\\0&\nu_2&\mathbf{q}_2^*\mathbf{a}_3&\cdots&\mathbf{q}_2^*\mathbf{a}_n\\0&0&\nu_3&\cdots&\mathbf{q}_3^*\mathbf{a}_n\\\vdots&\vdots&\vdots&\ddots&\vdots\\0&0&0&\cdots&\nu_n\end{pmatrix} R= ν1000q1a2ν200q1a3q2a3ν30q1anq2anq3anνn
其中 v 1 = ∣ ∣ a 1 ∣ ∣ , v k = ∣ ∣ a k − ∑ i = 1 k − 1 < q i , a k > q i ∣ ∣ for k>1 v_1=||a_1||,v_k=||a_k-\sum_{i=1}^{k-1}<q_i,a_k>q_i|| \quad\text{for k>1} v1=∣∣a1∣∣,vk=∣∣aki=1k1<qi,ak>qi∣∣for k>1

image-20231115204616157

Householder

酉矩阵:一个复数矩阵 U n × n U_{n\times n} Un×n它的行或列构成一个 C n C^n Cn的正交基,其中 U ∗ U = I , ∣ ∣ U x ∣ ∣ 2 = ∣ ∣ x ∣ ∣ 2 U^*U=I,||Ux||_2=||x||_2 UU=I∣∣Ux2=∣∣x2

对于非0向量 U ∈ C n × 1 U \in C^{n\times 1} UCn×1 ,则 U U U的正交投影是 P u = U U ∗ U ∗ U P_u=\frac{UU^*}{U^*U} Pu=UUUU,其垂直方向的投影是 P u ⊥ = I − U U ∗ U ∗ U P_{u\perp}=I-\frac{UU^*}{U^*U} Pu=IUUUU

初等反射( householder 变换)

其中对于 u ⊥ u^{\perp} u 的初等反射为 R = I − 2 U U ∗ U ∗ U R=I-2\frac{UU^*}{U^*U} R=I2UUUU

对于矩阵 A m × n = [ A ∗ 1 ∣ A ∗ 2 ∣ ⋯ ∣ A ∗ n ] \mathbf{A}_{m\times n}=[\mathbf{A}_{*1}|\mathbf{A}_{*2}|\cdots|\mathbf{A}_{*n}] Am×n=[A1A2An]

构建基本反射 R = I − 2 U U ∗ U ∗ U R=I-2\frac{UU^*}{U^*U} R=I2UUUU,其中 u = A ∗ 1 ± μ ∣ ∣ A ∗ 1 ∣ ∣ e 1 , μ = { 1 if  x 1 is real , x 1 / ∣ x 1 ∣ if  x 1 is not real , u=A_{*1}\pm\mu||A_{*1}||e_1,\quad\left.\mu=\left\{\begin{matrix}1&\text{if }x_1\text{ is real},\\x_1/|x_1|&\text{if }x_1\text{ is not real},\end{matrix}\right.\right. u=A1±μ∣∣A1∣∣e1,μ={1x1/∣x1if x1 is real,if x1 is not real,

根据householder变换可得 R 1 A ∗ 1 = ∓ μ ∥ A ∗ 1 ∥ e 1 = ( t 11 , 0 , ⋯ , 0 ) T \mathbf{R}_1\mathbf{A}_{*1}=\mp\mu\|\mathbf{A}_{*1}\|\mathbf{e}_1=(t_{11},0,\cdots,0)^T R1A1=μA1e1=(t11,0,,0)T

所以 R 1 A = [ R 1 A ∗ 1 ∣ R 1 A ∗ 2 ∣ ⋯ ∣ R 1 A ∗ n ] = ( t 11 t 1 T 0 A 2 ) \left.\mathbf{R}_1\mathbf{A}=[\mathbf{R}_1\mathbf{A}_{*1}|\mathbf{R}_1\mathbf{A}_{*2}|\cdots|\mathbf{R}_1\mathbf{A}_{*n}]=\left(\begin{array}{cc}t_{11}&\mathbf{t}_1^T\\\mathbf{0}&\mathbf{A}_2\end{array}\right.\right) R1A=[R1A1R1A2R1An]=(t110t1TA2),其中 A 2 A_2 A2 是一个 ( m − 1 × n − 1 ) (m-1\times n-1) (m1×n1)的矩阵

若同时对 A 2 A_2 A2矩阵进行操作可以得到一个上三角矩阵 ( m = n ) (m=n) (m=n),即 P A = T PA=T PA=T,其中 P P P矩阵为elementary reflector矩阵的乘积, T T T矩阵为上梯形

image-20231116091638599

image-20231116091656605

Givens 旋转

image-20231115234630004

对于正交矩阵 P P P形式如上,表示在平面 ( i , j ) (i,j) (i,j)上旋转,其中 s 2 + c 2 = 1 s^2+c^2=1 s2+c2=1

对于向量 X = { x 1 , x 2 … , x n } T X=\{x_1,x_2\dots,x_n\}^T X={x1,x2,xn}T P i j X = { x 1 , x 2 , … , c x i + s x j , … , − s x i + c x j , … , x n } T P_{ij}X=\{x_1,x_2,\dots,cx_i+sx_j,\dots,-sx_i+cx_j,\dots,x_n\}^T PijX={x1,x2,,cxi+sxj,,sxi+cxj,,xn}T,易知旋转矩阵乘某一个向量,其只有在该旋转平面上的值发生改变,若存在:
c = x i x i 2 + x j 2 , s = x j x i 2 + x j 2 c=\frac{x_i}{\sqrt{x_i^2+x_j^2}},s=\frac{x_j}{\sqrt{x_i^2+x_j^2}} c=xi2+xj2 xi,s=xi2+xj2 xj
P i j X = { x 1 , x 2 , … , x i 2 + x j 2 , … , 0 , … , x n } T P_{ij}X=\{x_1,x_2,\dots,\sqrt{x_i^2+x_j^2},\dots,0,\dots,x_n\}^T PijX={x1,x2,,xi2+xj2 ,,0,,xn}T

由此可以实现消去向量的第j个值,即存在:
P 12 x = ( x 1 2 + x 2 2 0 x 3 x 4 ⋮ x n ) , P 13 P 12 x = ( x 1 2 + x 2 2 + x 3 2 0 x 4 ⋮ x n ) , … , P 1 n ⋯ P 13 P 12 x = ( ∥ x ∥ 0 0 ⋮ 0 ) . \mathbf P_{12}\mathbf x=\begin{pmatrix}\sqrt{x_1^2+x_2^2}\\0\\x_3\\x_4\\\vdots\\x_n\end{pmatrix},~\mathbf P_{13}\mathbf P_{12}\mathbf x=\begin{pmatrix}\sqrt{x_1^2+x_2^2+x_3^2}\\0\\x_4\\\vdots\\x_n\end{pmatrix},~\ldots,~\mathbf P_{1n}\cdots\mathbf P_{13}\mathbf P_{12}\mathbf x=\begin{pmatrix}\|\mathbf x\|\\0\\0\\\vdots\\0\end{pmatrix}. P12x= x12+x22 0x3x4xn , P13P12x= x12+x22+x32 0x4xn , , P1nP13P12x= x000 .

A A A矩阵是非奇异矩阵,则可以利用householder、givens以及Gram-schmidt来产生一个正交矩阵 Q Q Q以及一个上三角矩阵 R R R其对角线上全为正数,可以得到形如 A = Q R A=QR A=QR的形式

相关文章:

矩阵的QR分解

矩阵的QR分解 GramSchmidt 设存在 B { x 1 , x 2 , … , x n } \mathcal{B}\left\{\mathbf{x}_{1},\mathbf{x}_{2},\ldots,\mathbf{x}_{n}\right\} B{x1​,x2​,…,xn​}在施密特正交化过程中 q 1 x 1 ∣ ∣ x 1 ∣ ∣ q_1\frac{x_1}{||x_1||} q1​∣∣x1​∣∣x1​​ q k …...

STL总结

STL vector 头文件<vector> 初始化,定义,定义长度&#xff0c;定义长度并且赋值&#xff0c;从数组中获取数据返回元素个数size()判断是否为空empty()返回第一个元素front()返回最后一个数back()删除最后一个数pop_back()插入push_back(x)清空clear()begin()end()使用s…...

资深测试总结,现在软件测试有未来吗?“你“的底气在哪里?

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、为什么会有 “…...

Scalable Exact Inference in Multi-Output Gaussian Processes

Orthogonal Instantaneous Linear Mixing Model TY are m-dimensional summaries&#xff0c;ILMM means ‘Instantaneous Linear Mixing Model’&#xff0c;OILMM means ‘Orthogonal Instantaneous Linear Mixing Model’ 辅助信息 作者未提供代码...

sqli-labs(Less-3)

1. 通过构造id1’ 和id1’) 和id1’)–确定存在注入 可知原始url为 id(‘1’) 2.使用order by 语句猜字段数 http://127.0.0.1/sqlilabs/Less-3/?id1) order by 4 -- http://127.0.0.1/sqlilabs/Less-3/?id1) order by 3 --3. 使用联合查询union select http://127.0.0.1…...

集合框架面试题

一、集合容器的概述 1. 什么是集合 集合框架&#xff1a;用于存储数据的容器。 集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。 任何集合框架都包含三大块内容&#xff1a; 对外的接口、接口的实现和对集合运算的算 法。 接口&#xff1a;表示集合的抽象数据…...

【LeetCode刷题日志】225.用队列实现栈

&#x1f388;个人主页&#xff1a;库库的里昂 &#x1f390;C/C领域新星创作者 &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏✨收录专栏&#xff1a;LeetCode 刷题日志&#x1f91d;希望作者的文章能对你有所帮助&#xff0c;有不足的地方请在评论区留言指正&#xff0c;…...

【JavaScript】fetch 处理流式数据,实现类 chatgpt 对话

本文只包含最基础的请求后端大佬给得对话接口&#xff0c;大部分模型的传参是差不多的&#xff0c;核心还是如何处理 fetch 获取的流数据 import { defineStore } from pinia; import { ElMessage } from element-plus;type Role system | user | assistant; export interfac…...

收发电子邮件

电子邮件是Internet提供的又一个重要服务项目。早在1987年9月20日&#xff0c;中国首封电子邮件就是从北京经意大利向前联邦德国卡尔斯鲁厄大学发出的&#xff0c;在中国首次实现了与Internet的连接&#xff0c;使中国成为国际互联网大家庭中的一员。现在随着Internet的迅速发展…...

sql13(Leetcode570至少有5名直接下属的经理)

代码&#xff1a; 脑子记不住 语法全靠试.. # Write your MySQL query statement below select b.name from (select managerId,count(managerId) as numfrom Employeegroup by managerId ) a left join Employee b on a.managerIdb.id where a.num>5 and b.name is not N…...

15分钟,不,用模板做数据可视化只需5分钟

测试显示&#xff0c;一个对奥威BI软件不太熟悉的人来开发数据可视化报表&#xff0c;要15分钟&#xff0c;而当这个人去套用数据可视化模板做报表&#xff0c;只需5分钟&#xff01; 数据可视化模板是奥威BI上的一个特色功能板块。用户下载后更新数据源&#xff0c;立即就能获…...

C 语言字符串函数

C 语言字符串函数 在本文中&#xff0c;您将学习使用诸如gets()&#xff0c;puts&#xff0c;strlen()等库函数在C中操作字符串。您将学习从用户那里获取字符串并对该字符串执行操作。 您通常需要根据问题的需要来操作字符串。大多数字符串操作都可以自定义方法完成&#xff…...

nvm安装详细教程(卸载旧的nodejs,安装nvm、node、npm、cnpm、yarn及环境变量配置)

文章目录 一、完全卸载旧的nodejs1、打开系统的控制面板&#xff0c;点击卸载程序&#xff0c;卸载nodejs&#xff08;1&#xff09;打开系统的控制面板&#xff0c;点击程序下的卸载程序&#xff08;2&#xff09;找到node.js&#xff0c;鼠标右击出现下拉框&#xff0c;点卸载…...

详细步骤记录:持续集成Jenkins自动化部署一个Maven项目

Jenkins自动化部署 提示&#xff1a;本教程基于CentOS Linux 7系统下进行 Jenkins的安装 1. 下载安装jdk11 官网下载地址&#xff1a;https://www.oracle.com/cn/java/technologies/javase/jdk11-archive-downloads.html 本文档教程选择的是jdk-11.0.20_linux-x64_bin.tar.g…...

Python学习(一)基础语法

文章目录 1. 入门1.1 解释器的作用1.2 下载1.3 基础语法输入输出语法与引号注释&#xff1a;变量&#xff1a; 数据类型与四则运算数据类型四则运算数据类型的查看type()数据类型的转换int()、int()、float() 流程控制格式化输出循环与遍历逻辑运算符list遍历字典dict遍历 跳出…...

【C刷题】day7

&#x1f3a5; 个人主页&#xff1a;深鱼~&#x1f525;收录专栏&#xff1a;【C】每日一练&#x1f304;欢迎 &#x1f44d;点赞✍评论⭐收藏 一、选择题 1、以下对C语言函数的有关描述中&#xff0c;正确的有【多选】&#xff08; &#xff09; A: 在C语言中&#xff0c;一…...

数据挖掘复盘——apriori

read_csv函数返回的数据类型是Dataframe类型 对于Dataframe类型使用条件表达式 dfdf.loc[df.loc[:,0]2]df: 这是一个DataFrame对象的变量名&#xff0c;表示一个二维的表格型数据结构&#xff0c;类似于电子表格或SQL表。 df.loc[:, 0]: 这是使用DataFrame的.loc属性来进行…...

Windows10下Maven3.9.5安装教程

文章目录 1.下载maven2.安装3.配置系统变量3.1.新建系统变量 MAVEN_HOME3.2.编辑系统变量Path 4.CMD命令测试是否安装成功5.配置maven本地仓库6.配置国内镜像仓库 1.下载maven 官网 https://maven.apache.org/download.cgi 点击下载。 2.安装 解压到指定目录 D:\installSoft…...

【开源】基于JAVA的校园失物招领管理系统

项目编号&#xff1a; S 006 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S006&#xff0c;文末获取源码。} 项目编号&#xff1a;S006&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 招领管理模块2.2 寻物管理模块2.3 系…...

requests爬虫IP连接初始化问题及解决方案

问题背景 在使用HTTPS爬虫IP连接时&#xff0c;如果第一次请求是chunked方式&#xff0c;那么HTTPS爬虫IP连接将不会被初始化。这个问题可能会导致403错误&#xff0c;或者在使用HTTPS爬虫IP时出现SSL错误。 解决方案 为了解决这个问题&#xff0c;我们可以在requests库的ada…...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化&#xff1a;人工智能的自我改进与监管挑战 文章目录 递归进化&#xff1a;人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管&#xff1f;3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook&#xff0c;用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途&#xff0c;下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

跨链模式:多链互操作架构与性能扩展方案

跨链模式&#xff1a;多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈&#xff1a;模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展&#xff08;H2Cross架构&#xff09;&#xff1a; 适配层&#xf…...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全&#xff1a;零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言&#xff1a;云原生安全的范式革命 随着云原生技术的普及&#xff0c;安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测&#xff0c;到2025年&#xff0c;零信任架构将成为超…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...