椭圆的标准方程与协方差矩阵的特征值和特征向量的关系

news2024/12/23 10:36:35

椭圆的标准方程与协方差矩阵的特征值和特征向量的关系

flyfish

  • 单位圆 :单位圆表示在标准正交基下的分布。

  • 椭圆 :通过协方差矩阵的特征向量和特征值变换得到的椭圆,表示数据在新的坐标系下的分布。

  • 特征向量 :红色箭头表示特征向量方向,即椭圆的主要轴方向。

  • 特征值 :红色箭头的长度表示特征值大小,即椭圆沿主要轴的伸缩程度。

import numpy as np
import matplotlib.pyplot as plt

# 示例协方差矩阵
covariance_matrix = np.array([[4, 2], [2, 3]])

# 计算特征值和特征向量
eigenvalues, eigenvectors = np.linalg.eigh(covariance_matrix)

# 生成单位圆
theta = np.linspace(0, 2 * np.pi, 100)
circle = np.array([np.cos(theta), np.sin(theta)])

# 变换单位圆以得到椭圆
ellipsoid = eigenvectors @ np.diag(np.sqrt(eigenvalues)) @ circle

# 绘制单位圆和椭圆
plt.plot(circle[0], circle[1], label='Unit Circle')
plt.plot(ellipsoid[0], ellipsoid[1], label='Ellipse')

# 绘制特征向量
mean = np.array([0, 0])
for i in range(len(eigenvalues)):
    eigval = np.sqrt(eigenvalues[i])
    eigvec = eigenvectors[:, i]
    start, end = mean, mean + eigval * eigvec * 2  # 伸长因子
    plt.annotate('', xy=end, xytext=start, arrowprops=dict(facecolor='red', width=2.0))

# 设置图表
plt.xlabel('X')
plt.ylabel('Y')
plt.title('Unit Circle and Transformed Ellipse')
plt.legend()
plt.grid()
plt.axis('equal')
plt.show()

在这里插入图片描述

椭圆方程的推导

  1. 协方差矩阵的定义
    对于一个随机向量 x = ( x y ) \mathbf{x} = \begin{pmatrix} x \\ y \end{pmatrix} x=(xy),协方差矩阵 Σ \Sigma Σ 表示其分布的协方差信息: Σ = ( σ x x σ x y σ y x σ y y ) \Sigma = \begin{pmatrix} \sigma_{xx} & \sigma_{xy} \\ \sigma_{yx} & \sigma_{yy} \end{pmatrix} Σ=(σxxσyxσxyσyy)
    其中, σ x x \sigma_{xx} σxx σ y y \sigma_{yy} σyy x x x y y y 的方差 σ x y = σ y x \sigma_{xy} = \sigma_{yx} σxy=σyx x x x y y y 的协方差。

  2. 特征值和特征向量
    通过求解特征方程 det ⁡ ( Σ − λ I ) = 0 \det(\Sigma - \lambda I) = 0 det(ΣλI)=0,可以得到协方差矩阵的特征值 λ 1 \lambda_1 λ1 λ 2 \lambda_2 λ2,以及对应的特征向量 v 1 \mathbf{v}_1 v1$ 和 v 2 \mathbf{v}_2 v2

  3. 椭圆方程
    椭圆在二维空间中的一般方程为: x T Σ − 1 x = 1 \mathbf{x}^T \Sigma^{-1} \mathbf{x} = 1 xTΣ1x=1
    其中, x = ( x y ) \mathbf{x} = \begin{pmatrix} x \\ y \end{pmatrix} x=(xy) Σ − 1 \Sigma^{-1} Σ1 是协方差矩阵的逆矩阵。

几何意义

  • 特征向量 :表示椭圆的主要轴方向。

  • 特征值 :表示椭圆沿特征向量方向的伸缩因子。

椭圆方程的几何解释

考虑一个标准单位圆的方程:
z T z = 1 \mathbf{z}^T \mathbf{z} = 1 zTz=1
其中, z \mathbf{z} z 是在标准正交基下的坐标向量。通过线性变换 x = L z \mathbf{x} = L \mathbf{z} x=Lz,其中 L L L 是由协方差矩阵的特征值和特征向量构成的变换矩阵,可以将单位圆变换成椭圆: x = L z \mathbf{x} = L \mathbf{z} x=Lz

变换后的方程为:
x T ( L − 1 ) T L − 1 x = 1 \mathbf{x}^T (L^{-1})^T L^{-1} \mathbf{x} = 1 xT(L1)TL1x=1
由于 Σ = L L T \Sigma = L L^T Σ=LLT,得到: x T Σ − 1 x = 1 \mathbf{x}^T \Sigma^{-1} \mathbf{x} = 1 xTΣ1x=1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1840739.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言】一维数组(详解)

目录 1. 数组的概念 2. 一维数组的创建和初始化 3. 一维数组的使用 4. 一维数组在内存中的存储 5. sizeof 计算数组元素个数 正文开始—— 1. 数组的概念 数组是一组相同类型元素的集合。 数组中存放的是1个或者多个数据,但是数组元素个数不能为0。…

运算放大器(运放)同相放大器电路

设计目标 输入电压ViMin输入电压ViMax输出VoMin输出VoMax电源Vcc电源Vee-1V1V-10V10V15V–15V 设计说明 这种设计将输入信号 Vi 放大,信号增益为 10V/V。输入信号可能来自高阻抗源(例如 MΩ),因为该电路的输入阻抗由运算放大器…

vue3delete请求报403forbidden,前后端解决方式,cookie无效问题

在做开发时,前期已经在Controller类加上CrossOrigin(origins "*"),发送get和post请求都没问题,但遇到delete请求时,又报出跨域问题 一.前端添加proxy代理服务器(未能解决) 在vue.config.js中使…

PHP转Go系列 | 字符串的使用姿势

大家好&#xff0c;我是码农先森。 输出 在 PHP 语言中的输出比较简单&#xff0c;直接使用 echo 就可以。此外&#xff0c;在 PHP 中还有一个格式化输出函数 sprintf 可以用占位符替换字符串。 <?phpecho 码农先森; echo sprintf(码农:%s, 先森);在 Go 语言中调用它的输…

pikachu靶场之XSS漏洞测试

一、环境配置 1.pikachu官网下载 下载地址&#xff1a;https://github.com/zhuifengshaonianhanlu/pikachu 2.百度网盘&#xff08;里面含有pikachu跟phpstudy&#xff09; 链接&#xff1a;pikachu下载 密码&#xff1a;abcd 配置&#xff1a;pikachu下载及安装-图文详解…

14K屏FPGA通过MIPI接口点亮

一、屏参数 屏分辨率为13320*5120&#xff0c;MIPI接口8 LANE。 二、驱动接口电路 屏偏置电压5.5V&#xff0c;逻辑供电1.8V。8 LANE MIPI&#xff0c;2 PORT。 三、MIPI DSI规范 DCS (Display Command Set)&#xff1a;DCS是一个标准化的命令集&#xff0c;用于命令模式的显…

基于单片机的智能窗户控制系统的设计

摘 要&#xff1a; 根据单片机技术和现代传感器技术 &#xff0c; 本文主要针对基于单片机的智能窗户控制系统的设计进行探讨 &#xff0c; 仅供参考 。 关键词&#xff1a; 单片机 &#xff1b; 智能窗户 &#xff1b; 控制系统 &#xff1b; 设计 在现代科学技术持续发展的带…

融资融券两融利率最低多少?两融利率最低账户怎么申请?

融资融券账户余额理财技巧 融资融券账户不支持货币基金申赎、逆回购等业务&#xff0c;投资者可以将资金大于维保比例300%的部分通过银证转账转出再转入到普通账户&#xff0c;参与证券公司现金理财或逆回购等业务。 融券卖出和还券技巧 融券卖出所得的资金仅能用于买券还券&…

Linux操作系统学习:day05

内容来自&#xff1a;Linux介绍 视频推荐&#xff1a;[Linux基础入门教程-linux命令-vim-gcc/g -动态库/静态库 -makefile-gdb调试]( 目录 day0530、删除用户31、添加和删除用户组创建用户组删除用户组 32、修改密码33、使用tar工具进行压缩和解压缩压缩解压缩 34、使用zip u…

▶《强化学习的数学原理》(2024春)_西湖大学赵世钰 Ch4 值迭代 与 策略迭代 【动态规划 算法】

PPT 截取必要信息。 课程网站做习题。总体 MOOC 过一遍 1、视频 学堂在线 习题 2、过 电子书 补充 【下载&#xff1a; 本章 PDF 电子书 GitHub】 [又看了一遍视频。原来第一次跳过了好多内容。。。] 3、总体 MOOC 过一遍 习题 学堂在线 课程页面链接 中国大学MOOC 课程页面链…

【宠粉赠书】科技图表绘制:R语言数据可视化

为了回馈粉丝们的厚爱&#xff0c;今天小智给大家送上一套科研绘图的必备书籍——《R语言数据可视化&#xff1a;科技图表绘制》。下面我会详细给大家介绍这套图书&#xff0c;文末留有领取方式。 图书介绍 《R语言数据可视化&#xff1a;科技图表绘制》结合编者多年的数据分析…

jenkins安装和使用 (二)

参考视频资料 https://www.bilibili.com/video/BV1bS4y1471A?p10&vd_sourcee0dcd147bd5d730317de804d788cd6f9 安装maven插件 新建item 配置构建信息 项目地址替换为自己的实际地址 其余保持先保持默认 先然后在主页就看到了这个项目 查看控制台输出 稍等一…

Java 17的新特性

Java 17引入了多项新特性&#xff0c;以下是一些重要的更新&#xff1a; 增强的伪随机数生成器&#xff08;JEP 356&#xff09; Java 17为伪随机数生成器&#xff08;PRNG&#xff09;提供了新的接口类型和实现&#xff0c;包括可跳转的PRNG和另一类可拆分的PRNG算法&#xf…

聊聊 Mybatis 动态 SQL

这篇文章&#xff0c;我们聊聊 Mybatis 动态 SQL &#xff0c;以及我对于编程技巧的几点思考 &#xff0c;希望对大家有所启发。 1 什么是 Mybatis 动态SQL 如果你使用过 JDBC 或其它类似的框架&#xff0c;你应该能理解根据不同条件拼接 SQL 语句有多痛苦&#xff0c;例如拼…

得物面试:什么是零复制?说说 零复制 底层原理?(吊打面试官)

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中&#xff0c;最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格&#xff0c;遇到很多很重要的零复制的问题&#xff1a; 说一说Rocketmq、是如何实现每秒上百万数据的超…

ACIS采用自底向上的方式创建box

在学习任何CAD几何内核的时候&#xff0c;首先需要学习的是这个几何内核的几何拓扑数据结构&#xff0c;学习完毕后&#xff0c;一个很好的练习是自己采用底层的几何、拓扑构建API&#xff0c;创建一个box。通过这个练习&#xff0c;可以加深初学者对所学几何内核数据结构的理解…

AXI三板斧之Outstanding、Out-of-order、interleaving

1、AXI三板斧之Outstanding 可以不用等单个命令的响应&#xff0c;直接连续发送N个命令&#xff08;N>1&#xff09;&#xff0c;假设Slave端的Outstanding能力为N时&#xff08;N>1&#xff09;&#xff0c;那么Master端可以在Slave不返回读数据的情况下&#xff0c;连…

从小白到大神:算法工程师的核心竞争力养成计划!

从小白到大神&#xff1a;算法工程师的核心竞争力养成计划&#xff01; 我们会发现&#xff0c;本科及研究生所学的知识&#xff0c;比如高等数学、线性代数、传统机器学习方法及深度学习理论等这些&#xff0c;都只是作为算法学习的基础&#xff0c;并不能成为算法工程师的核…

React@16.x(34)动画(中)

目录 3&#xff0c;SwitchTransition3.1&#xff0c;原理3.1.2&#xff0c;key3.1.2&#xff0c;mode 3.2&#xff0c;举例3.3&#xff0c;结合 animate.css 4&#xff0c;TransitionGroup4.1&#xff0c;其他属性4.1.2&#xff0c;appear4.1.2&#xff0c;component4.1.3&…

【Python】对应接口url 被编码后的处理

Python 系列 文章目录 Python 系列前言一、网页链接是什么&#xff1f;二、使用步骤1.解码 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 我们在查找网页的开发代码的时候&#xff0c;可能经常查看到接口的链接是&#xff1a; %7B%22funName%22%…