微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

回归两个多维数据集?

如何解决回归两个多维数据集?

假设我有两个数据集,X1X2,每个维度都是 N×D,其中 N 是样本数,D 是数据集的维数。

在我当前的项目中,X1X2 是操作不同阶段的相同数据集(例如,先是 X1,然后是 X2)。我正在寻找一种简单的方法来确定操作在哪一点不再引起 X2 上的任何重大变化。如果数据集是一维的,实现这一点的一种简单方法是将 X1X2 相互回归,然后检查 r 值与 1 的接近程度。

但是,如果 X1X2 都是多维的,我就不知道如何实现了。我假设我可以独立地回归每对维度,然后平均结果,但这感觉就像一个黑客。你知道我如何计算一个多维的等价于 Python 中的 r 值吗?

编辑:与下面的示例相反,两个数据集中的样本彼此对应。我本质上只是在寻找一种方法来量化将 X1 带到 X2 的操作引起了多少变化(如果有的话)。

这里有一个简单的设置作为基础:

import numpy as np
import scipy.stats
import matplotlib.pyplot as plt

# Set the dimensions
N   = 100
D   = 3

# Create two correlated datasets
cov = np.identity(D*2)
cov[3,0] = 0.5
cov[4,1] = 0.5
cov[5,2] = 0.5
cov[0,3] = 0.5
cov[1,4] = 0.5
cov[2,5] = 0.5
X   = scipy.stats.multivariate_normal.rvs(
    mean    = np.zeros(D*2),cov     = cov,size    = N)

# Extract the two correlated datasets
X1  = X[:,:D]
X2  = X[:,D:]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。