考虑以下实验:给一组人一个城市列表,并要求他们在世界地图(否则未标记)上标记相应的位置。对于每个城市,您将获得大致以各自城市为中心的分散点。一些城市,比如伊斯坦布尔,会比其他城市表现出更少的分散,比如莫斯科。
假设对于给定的城市,我们得到一组 2D 样本,表示城市在 test 分配的地图上的位置(例如在本地坐标系中)主题。我想将此集合中点的“分散”量表示为适当单位(公里)的单个数字。
对于 1D 问题,我会选择标准偏差,但是对于上述情况,是否可以合理选择 2D 模拟?
考虑以下实验:给一组人一个城市列表,并要求他们在世界地图(否则未标记)上标记相应的位置。对于每个城市,您将获得大致以各自城市为中心的分散点。一些城市,比如伊斯坦布尔,会比其他城市表现出更少的分散,比如莫斯科。
假设对于给定的城市,我们得到一组 2D 样本,表示城市在 test 分配的地图上的位置(例如在本地坐标系中)主题。我想将此集合中点的“分散”量表示为适当单位(公里)的单个数字。
对于 1D 问题,我会选择标准偏差,但是对于上述情况,是否可以合理选择 2D 模拟?
您可以使用的一件事是距中心点的距离度量,例如点的样本均值,或者可能是观察点的质心。那么分散的度量将是与该中心点的平均距离:
其中。距离度量有许多潜在的选择,但范数(例如欧几里德距离)可能是一个合理的选择:
不过,还有很多其他潜在的选择。见http://en.wikipedia.org/wiki/Norm_%28mathematics%29
我最近实际上遇到了类似的问题。听起来您想要一种方法来测量点在区域上的分散程度。当然,对于给定的测量,您必须意识到如果所有点都在一条直线上,则答案为零,因为没有二维变化。
根据我所做的计算,这就是我想出的:
在这种情况下,Sxx 和 Syy 分别是 x 和 y 的方差,而 Sxy 有点像 x 和 y 的混合方差。
详细来说,假设有n个元素,表示x的平均值,表示y的平均值:
希望这对你有用。
此外,如果您想知道如何在更高维度上执行此操作,例如在 4 个维度上测量体积扩展或 surteron 体积,您必须形成这样的矩阵:
Sxx Sxy Sxz ...
Syx Syy Syz ...
Szx Szy Szz ...
………………
并继续您需要的许多维度。您应该能够根据上面提供的定义计算出 S 值,但对于不同的变量。
矩阵形成后,取行列式,求平方根,就大功告成了。
我认为您应该使用“马氏距离”而不是欧几里得距离范数,因为它考虑了数据集的相关性并且是“尺度不变的”。链接在这里:
http://en.wikipedia.org/wiki/Mahalanobis_distance
您也可以使用“半空间深度”。它有点复杂,但具有许多吸引人的特性。给定点 a 相对于数据集 P 的半空间深度(也称为位置深度)是 P 位于由通过 a 的线确定的任何闭合半平面内的最小点数。以下是链接:
http://www.cs.unb.ca/~bremner/research/talks/depth-survey.pdf http://depth.johnhugg.com/DepthExplorerALENEXslides.pdf