协方差矩阵

协方差矩阵是一个对称矩阵,用来描述多个随机变量之间的协方差关系。协方差反映了两个随机变量如何共同变化的趋势,协方差矩阵将这种关系扩展到了多维数据。

1. 定义

假设有一个 n 维随机向量 X = [X_1, X_2, \dots, X_n]^T,协方差矩阵 Σ 定义为:

\Sigma = \begin{bmatrix} \text{Var}(X_1) & \text{Cov}(X_1, X_2) & \cdots & \text{Cov}(X_1, X_n) \\ \text{Cov}(X_2, X_1) & \text{Var}(X_2) & \cdots & \text{Cov}(X_2, X_n) \\ \vdots & \vdots & \ddots & \vdots \\ \text{Cov}(X_n, X_1) & \text{Cov}(X_n, X_2) & \cdots & \text{Var}(X_n) \end{bmatrix}

其中:

  • \text{Var}(X_i) = \mathbb{E}[(X_i - \mu_i)^2]是变量 X_i 的方差;
  • \text{Cov}(X_i, X_j) = \mathbb{E}[(X_i - \mu_i)(X_j - \mu_j)] 是 X_i 和 X_j 的协方差;
  • \mu_i 是 X_i ​ 的期望。

协方差矩阵中的每个元素 \Sigma_{ij} 表示第 i 随机变量和第 j 个随机变量之间的协方差。

2. 协方差的取值范围

  1. \text{Cov}(X_i, X_j) > 0:表示 X_iX_j 正相关,两个变量趋于同向变化。

  2. \text{Cov}(X_i, X_j) < 0:表示 X_iX_j 负相关,两个变量趋于反向变化。

  3. \text{Cov}(X_i, X_j) = 0:表示 X_i 和 X_j 不相关。

协方差矩阵的对角线上的值是每个变量的方差。

3. 计算协方差矩阵的步骤:

给定一个数据矩阵 X(每行代表一个样本,每列代表一个特征),计算协方差矩阵的步骤如下:

  1. 数据中心化: 对每一列(即每个特征),计算其均值,然后减去该列的均值,使得数据矩阵的每一列的均值为零。

    X = [x_1, x_2, \dots, x_n] 是 n×m 的数据矩阵,其中每一列 x_i​ 对应一个特征。对每个特征 x_i,计算均值 \mu_i​,然后通过:

    X_{\text{centered}} = X - \mu

    其中 μ 是每列的均值向量。

  2. 计算协方差矩阵: 协方差矩阵 Σ 由以下公式计算:

    \Sigma = \frac{1}{n-1} X_{\text{centered}}^T X_{\text{centered}}

    其中,X_{\text{centered}}^TX_{\text{centered}} 的转置,n-1是自由度的调整因子(对于样本协方差矩阵)。


协方差矩阵的作用

1. 描述数据分布的特性
  • 协方差矩阵描述了多维数据中每对特征之间的线性相关性(通过协方差)。
  • 对角线上的方差描述了各特征的分布范围。
  • 协方差矩阵可以反映数据的变化模式,例如是否有某些特征具有强相关性。
2. 数据降维
  • 在主成分分析(PCA)中,协方差矩阵用于特征提取:
    • 通过对协方差矩阵进行特征值分解,可以找出数据分布方差最大的方向(主成分)。
    • PCA利用协方差矩阵将高维数据投影到低维空间,保留尽可能多的信息。
3. 特征相关性分析
  • 协方差矩阵可以帮助判断数据集中哪些特征具有强相关性(高协方差),哪些特征相对独立(低协方差)。
  • 这对于特征选择和特征工程非常有用。
4. 多元概率分布
  • 在多元高斯分布中,协方差矩阵描述了不同随机变量的分布和相关性,影响分布的形状和方向。
5. 信号处理与图像分析
  • 协方差矩阵在图像处理、信号分析中广泛应用,例如在光谱数据分析中用于分离独立成分。

协方差矩阵的局限性

  1. 线性相关性

    • 协方差仅能衡量线性相关性,无法反映非线性相关性。
    • 如果变量间具有复杂的非线性关系,协方差矩阵可能无法完全描述。
  2. 单位依赖性

    • 协方差的值受到特征单位的影响。例如,米和厘米的协方差会有数量级的差异。
    • 为避免这种影响,常使用相关系数矩阵(对协方差矩阵进行标准化)。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

6 分布式限流框架

限流的作用 在API对外互联网开放的情况下&#xff0c;是无法控制调用方的行为的。当遇到请求激增或者黑客攻击的情况下&#xff0c;会导致接口占用大量的服务器资源&#xff0c;使得接口响应效率的降低或者超时&#xff0c;更或者导致服务器宕机。 限流是指对应用服务进行限制…

LINUX 下 NODE 安装与配置

一、官网地址&#xff1a; &#xff08;中文网&#xff09;https://nodejs.cn/ &#xff08;英文网&#xff09;https://nodejs.org/en/ 二、下载安装包 2.1、下载地址&#xff1a;下载 | Node.js 中文网 https://nodejs.cn/download/ 2.2、使用 wget 命令下载到linux 服务器…

Qt重写webrtc的demo peerconnection

整个demo为&#xff1a; 可以选择多个编码方式&#xff1a; cmake_minimum_required(VERSION 3.5)project(untitled LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_INCLUDE_CURRENT_DIR ON)set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON)set(CMA…

el-tabs中tabs过多造成form表单输入的时候卡顿

这里写自定义目录标题 tabs过多造成的输入卡顿解决方案方案一方案二 出现的并发问题解决方案 tabs过多造成的输入卡顿 描述&#xff1a;前端要写一个需求&#xff0c;大概有一百多个tab渲染过来&#xff0c;每个tab中都是一个表单&#xff0c;这个时候数据渲染任务加重&#x…

【python/html/js 鼠标点选/框选图片内容】

html代码 注意修改图片地址&#xff0c;坐标会保存为coordinates.json <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0&q…

Zustand selector 发生 infinate loops的原因以及解决

Zustand selector 发生 infinate loops 做zustand tutorial project的时候&#xff0c;使用选择器方法引入store&#xff0c;出现Maximum update depth exceeded,也就是组件一直重新渲染&#xff0c;改成直接使用store就没有不会出现这个问题。如下&#xff1a; // const [xIs…

AngularJs指令中出错:Error: $compile:nonassign Non-Assignable Expression

Expression {resumeId: item.resumeId} used with directive rwdsDelete is non-assignable! 在AngularJS中&#xff0c;$compile服务用于将指令编译成HTML。当你在模板中使用了一个表达式&#xff0c;但这个表达式不是一个左值&#xff08;即不能被赋值的表达式&#xff09;时…

moviepy 将mp4视频文件提取音频mp3 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 需要更多数据资源和技术解决方案&#xff0c;知识星球&#xff1a; “DataBall - X 数据球(free)” -------------------------------------------------------------…

openssl编译

关于windows下&#xff0c;openssl编译 环境准备 安装 perl:https://djvniu.jb51.net/200906/tools/ActivePerl5_64.rar安装nasm&#xff1a;https://www.nasm.us/pub/nasm/releasebuilds/2.13.01/win64/nasm-2.13.01-installer-x64.exe下载opensll源码&#xff1a;https://o…

QT c++ 样式 设置 标签(QLabel)的渐变色美化

上一篇文章中描述了按钮的纯色&#xff0c;本文描述标签的渐变色美化。 1.头文件 #ifndef WIDGET_H #define WIDGET_H #include <QWidget> //#include "CustomButton.h"#include <QVBoxLayout> #include <QLinearGradient> #include <QLabel…

学习打怪日记

目录 0 关于1 SpringBoot上传大文件抛出异常&#xff1a;MaxUploadSizeExceededException2 SpringBoot警告&#xff1a;HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl6221f160 (No operations allowed after connection closed.). Possibly …

xss-labs关卡记录15-20关

十五关 随便传一个参数&#xff0c;然后右击查看源码发现&#xff0c;这里有一个陌生的东西&#xff0c;就是ng-include。这里就是&#xff1a; ng-include指令就是文件包涵的意思&#xff0c;用来包涵外部的html文件&#xff0c;如果包涵的内容是地址&#xff0c;需要加引号。…

(五)ROS通信编程——参数服务器

前言 参数服务器在ROS中主要用于实现不同节点之间的数据共享&#xff08;P2P&#xff09;。参数服务器相当于是独立于所有节点的一个公共容器&#xff0c;可以将数据存储在该容器中&#xff0c;被不同的节点调用&#xff0c;当然不同的节点也可以往其中存储数据&#xff0c;关…

自动化测试框架搭建-数据库方法连接-初阶

目的 将数据库连接的步骤封装成一个方法&#xff0c;在需要连接数据库时&#xff0c;传入指定的参数&#xff08;SQL&#xff09;即可实现对数据查询和修改 代码实现 1、编写数据库连接方法 2、导入其他方法中使用步骤一 import pymysqldef mysqlConnetion(Sql):# 数据库连…

vivado 时钟指南

时钟指南 每个 FPGA 架构都为时钟提供有专用资源。掌握 FPGA 架构中的时钟资源&#xff0c;使您能够规划好自己的时钟&#xff0c;从而实现时钟 资源的最佳利用。大多数设计无需您了解这些细节。但如果您能够控制布局&#xff0c;同时对每个时钟域上的扇出有良好的思 路&a…

【微信小程序】回到顶部图标-页面滚动事件 | 漫画-综合实训

一、回到顶部-页面滚动事件 在微信小程序中&#xff0c;如果你想将“回到顶部”的功能按钮换成图标&#xff0c;你可以通过以下步骤实现&#xff1a; 1. 准备图标 首先&#xff0c;你需要准备一个图标图片。这个图标可以是任何你选择的格式&#xff0c;如 PNG 或 SVG。将图标…

通过一个含多个包且引用外部jar包的项目实例感受Maven的便利性

目录 1 引言2 手工构建3 基于Maven的构建4 总结 1 引言 最近在阅读一本Java Web的书籍1时&#xff0c;手工实现书上的一个含多个Packages的例子&#xff0c;手工进行编译、运行&#xff0c;最终实现了效果。但感觉到整个构建过程非常繁琐&#xff0c;不仅要手写各个源文件的编…

el-tree拖拽光标错位问题

背景&#xff1a;el-tree实现的分类树增加拖拽功能后&#xff0c;当分类树由于数量较多产生滚动条&#xff0c;如果分类树已滚动&#xff0c;进行拖拽时会造成光标错位的问题: 原因&#xff1a;el-tree拖拽光标定位的高度并未加上滚动的高度解决&#xff1a;将滚动的样式属性放…

【YashanDB知识库】解决mybatis的mapper文件sql语句结尾加分号“;“报错

本文内容来自YashanDB官网&#xff0c;原文内容请见 https://www.yashandb.com/newsinfo/7863046.html?templateId1718516 现象 mybatis或mybaits-plus的mapper文件sql结尾加分号";" 执行时报错&#xff1a;”YAS-04209 unexpected word;“ 解决办法 将sql结尾…

day03-前端Web-Vue3.0基础

目录 前言1. Vue概述2. 快速入门2.1 需求2.2 步骤2.3 实现 3. Vue指令3.1 介绍3.2 v-for3.2.1 介绍3.2.2 演示3.2.3 v-for的key3.2.4 案例-列表渲染 3.3 v-bind3.3.1 介绍3.3.2 演示3.3.3 案例-图片展示 3.4 v-if & v-show3.4.1 介绍3.4.2 案例-性别职位展示 3.6 v-model3.…