平方Pearson相关系数(SPCC)相关公式的推导

2024-08-29 02:08

本文主要是介绍平方Pearson相关系数(SPCC)相关公式的推导,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、PCC及SPCC的定义
最近推导了维纳滤波的公式,其中最重要的是当然是最小平方误差准则(MSE)。但是在很多实际应用中,参考信号是不可知的,因此MSE准则不具有实际意义。为了解决这个问题,我们需要寻找另一个准则替代MSE成为新的代价函数。这就是皮尔逊相关系数(Pearson Correlation Coefficient, PCC)的来历。通过研究发现,相较于MSE,PCC具有许多吸引人的优秀性质,尤其在输出信噪比分析方面。因此经典最优或次优滤波器的设计通常都是以后者为指导的。

x y是两个均值为 0 的实随机变量,PCC的原始定义是:

ρ(x,y)=E[xy]σxσy

其中, E[xy] 表示 x y的互相关系数; σx=E[x2] σy=E[y2] 分别为信号 x y的方差。
不过为了分析方便,通常使用的是平方Pearson相关系数(SPCC),其定义式如下:

ρ2(x,y)=E2[xy]σ2xσ2y

SPCC一个很重要的性质就是:
0ρ2(x,y)1

其意义是表示两个随机变量之间线性相关的程度。
2、SPCC的重要性质
在讲SPCC之前,需要把SPCC涉及到的维纳滤波中加性噪声的四个信号定义清楚。
在维纳滤波中,假设一个纯净的语音信号 x(k) 受到零均值噪声信号 ν(k) 的干扰,且 x(k) ν(k) 不相关。那么在离散采样 k 时刻,带噪声的语音信号描述为:
y(k)=x(k)+ν(k)

维纳滤波的目的,就在于根据观测信号 y(k) 找到信源信号 x(k) 的最优估计 z(k)
而维纳滤波的思想,就在于假设 z(k) 可以通过一个滤波器 h 和多个观测值序列 y(k) 组合得到。
z(k)=hTy(k)

其中,
y(k)=[y(k)y(k1)y(kL+1)] L 为滤波器长度。
根据z(k) x(k) 之间的关系我们可以通过二者作差定义误差代价函数,利用MSE准则来求取最优滤波器,该滤波器就是维纳滤波器。但是这不是本文要阐述的重点,感兴趣的同学可以到网上搜索相关的文章来学习。

2.1 四个SPCC系数的定义
推导之前需要注意几个关键的代换关系,有了这几个代换关系公式的推导就不是什么难事。但是几乎所有的书上都认为这些关系是不言而喻的。有时候多提点一笔就可以节省很多时间,所以在此点破。
x=hT1x hTx=xTh
类似的,
ν=hT1ν hTν=νTh
其中, hT1=[10...0] ,长度还是 L .
有了这个关系,公式推导起来就很方便了。这也正是这篇博文的意义所在。

首先是信源信号x(k) y(k) 之间的SPCC。根据定义是可以写成:
ρ2(x,y)=E2[xy]E[x2]E[y2]=SNR1+SNR
推导:
E[xy]=E[x(x+v)]=E[x2+xv]=E[x2]+E[xv]=E[x2]=σ2x
E[y2]=E[(x+v)2]==E[x2]+E[v2]=σ2x+σ2v
定义: SNR=E[x2]E[v2]=σ2xσ2v
上式容易得出。
其次是信源信号 x(k) z(k) 之间的SPCC。根据定义是可以写成:

ρ2(x,z)=E2[xz]E[x2]E[z2]=(E(xhTy))2σ2xhTRyyh

关键推导步骤:
E[xz]=E[xhTy]=E[xhT(x+v)]=E[xhTx+xhTv]=E[xhTx]=E[hT1xhTx]=E[hT1xxTh]=hT1Rxxh
E[z2]=E(hTyyTh)=hTRyyh

所以上式可以写成:

ρ2(x,z)=(hT1Rxxh)2σ2xhTRyyh=(hT1Rxxh)2σ2xhTRxxhhTRxxhσ2xhTRyyh

容易发现:
(hT1Rxxh)2σ2xhTRxxh=ρ2(x,hTx)

ρ2(hTx,hTy)=hTRxxhσ2xhTRyyh=hTRxxhhTRvvh1+hTRxxhhTRvvh=1+SNR(h)SNR(h)

所以可以得到下述性质:
ρ2(x,z)=ρ2(x,hTx)ρ2(hTx,hTy)

由于公式编辑实在是太过于耗费时间和精力,我直接改成贴图了,希望大家理解。
这里写图片描述
类似的,可以得到相似的性质。

ρ2(v,z)=ρ2(v,hTy)=ρ2(v,hTv)ρ2(hTv,hTy)

关于SPCC的其他性质的推导在此就不一一展示了。注意变量的定义和变量的代换,基本都能推导出来。如果有问题可以留言交流。

这篇关于平方Pearson相关系数(SPCC)相关公式的推导的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1116538

相关文章

Linux使用fdisk进行磁盘的相关操作

《Linux使用fdisk进行磁盘的相关操作》fdisk命令是Linux中用于管理磁盘分区的强大文本实用程序,这篇文章主要为大家详细介绍了如何使用fdisk进行磁盘的相关操作,需要的可以了解下... 目录简介基本语法示例用法列出所有分区查看指定磁盘的区分管理指定的磁盘进入交互式模式创建一个新的分区删除一个存

关于Maven生命周期相关命令演示

《关于Maven生命周期相关命令演示》Maven的生命周期分为Clean、Default和Site三个主要阶段,每个阶段包含多个关键步骤,如清理、编译、测试、打包等,通过执行相应的Maven命令,可以... 目录1. Maven 生命周期概述1.1 Clean Lifecycle1.2 Default Li

numpy求解线性代数相关问题

《numpy求解线性代数相关问题》本文主要介绍了numpy求解线性代数相关问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 在numpy中有numpy.array类型和numpy.mat类型,前者是数组类型,后者是矩阵类型。数组

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

python中的与时间相关的模块应用场景分析

《python中的与时间相关的模块应用场景分析》本文介绍了Python中与时间相关的几个重要模块:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateu... 目录1. time 模块2. datetime 模块3. calendar 模块4. timeit

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

uva 10014 Simple calculations(数学推导)

直接按照题意来推导最后的结果就行了。 开始的时候只做到了第一个推导,第二次没有继续下去。 代码: #include<stdio.h>int main(){int T, n, i;double a, aa, sum, temp, ans;scanf("%d", &T);while(T--){scanf("%d", &n);scanf("%lf", &first);scanf

hdu 4565 推倒公式+矩阵快速幂

题意 求下式的值: Sn=⌈ (a+b√)n⌉%m S_n = \lceil\ (a + \sqrt{b}) ^ n \rceil\% m 其中: 0<a,m<215 0< a, m < 2^{15} 0<b,n<231 0 < b, n < 2^{31} (a−1)2<b<a2 (a-1)^2< b < a^2 解析 令: An=(a+b√)n A_n = (a +

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

log4j2相关配置说明以及${sys:catalina.home}应用

${sys:catalina.home} 等价于 System.getProperty("catalina.home") 就是Tomcat的根目录:  C:\apache-tomcat-7.0.77 <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /> 2017-08-10