问题标签 [n-dimensional]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
51 浏览

java - Java使用外部驱动器存储n维数组

我有一些对我的处理器来说非常密集的计算,为了加快速度,我发现我可以使用 6 维数组。

我计算出我需要大约 50GB 的内存来存储我的数组,这是不可能的,因为我只有 4GB 的 RAM。我知道如果有办法将它存储在外部存储器中,get 和 set 操作会慢很多,但考虑到我不必执行很多这些操作,而且我有 SSD,我认为它会大大提高我的程序的性能。

当我设法制作一个数组时,解决方案是在其中找到 10 个最大的元素。但是没有它,没有超级计算机我就无法进行计算。

我曾考虑使用 写入文件BufferedWriter,并存储从哪一行开始的维度,但在这种情况下,从中获取数据效率极低。

编辑:我使用的是 Ubuntu 16。

0 投票
1 回答
61 浏览

python-3.x - 如何在numpy中确定n维数组的形状

例如,我如何在 numpy 中说出 n 维矩阵的形状

这些的输出是(1,2,2)我怎么能不使用电脑说出来。谢谢你的帮助。

0 投票
1 回答
499 浏览

python - 如何使用 scipy.optimize.minimize(...) 找到 z = f(x, y) 的最优参数(如椭圆)?

我正在尝试学习如何使用 python // 优化适合更高维度的numpy数据scipy。成功地使用 scipy 来适应表格的一行后y = f(x),我尝试扩展逻辑以适应表格的椭圆z = f(x, y);两者都如下所示。我希望这种方法可以推广到适合更高维度(即球体)的形状。

线拟合示例

将此逻辑应用于椭圆的情况,

minimize算法viascipy没有找到最优参数;以下输出显示为print(result)

我已经看到了这个问题的另一种解决方案,它使用最小二乘的矩阵公式,但是这个例子对我来说有点难以理解。我见过的几乎所有方法都基于发布链接中的方法。我更喜欢使用minimize,除非由于我目前不知道的原因,线性代数方法更好。

无论如何,我上面的方法可以以一种可行的方式进行调整/调整,并且可以推广到更高的维度吗?

0 投票
2 回答
184 浏览

r - 计算每个样本与组质心的 n 维欧几里德距离,并为 R 中的每个组选择最低的 3 个

这是一个由两部分组成的问题,非常复杂。

第一的。我想计算数据帧“ind_scores”中每个样本之间的“n”维欧几里德距离,它是数据帧“质心”中的相应组质心。

然后,我想选择最接近各自组质心的 3 个单独样本。我想将这些保存到一个新的数据框中,其中包含“单个样本名称”、“组”和“到质心的距离”的信息。

以下是数据示例:

提前谢谢了!干杯。迪翁。

0 投票
1 回答
483 浏览

python - 在 n 维数组上使用带有 meshgrid 的 scipy interpn

我正在尝试翻译大型 4D 数组的 Matlab“interpn”插值,但 Matlab 和 Python 之间的公式差异很大。几年前这里有一个很好的问题/答案,我一直在尝试使用。我想我快到了,但显然我的网格插值器仍然没有正确制定。

我尽可能按照上面链接答案中给出的示例对我的代码示例进行建模,同时使用我实际工作的尺寸。唯一的变化是我将 rollaxis 切换为 moveaxis,因为前者已被弃用。

本质上,给定 4D 数组 skyrad0(取决于第一个代码块中定义的四个元素)以及第三个块中定义的两个常量和两个 1D 数组,我想要插值的 2D 结果。

我期待一个 4D 数组“结果”,我可以 numpy.squeeze 到我需要的 2D 答案中,但是 interpn 会产生错误:

在这个例子中我最模糊的地方是查询点网格的结构,以及将第一个维度移动到末尾并重新塑造它。这里还有更多内容,但我仍然不清楚如何将其应用于这个问题。

如果有人能在我的配方中发现明显的低效率,那将是一个奖励。我需要在许多不同的结构上运行这种类型的插值数千次——甚至扩展到 6D——所以效率很重要。

更新下面的答案非常优雅地解决了这个问题。然而,随着计算和数组变得更加复杂,另一个问题开始出现,即数组中的元素似乎不是单调增加的问题。这是在 6D 中重构的问题:

就目前而言,它会运行,但是如果将 wave 的定义更改为注释行,则会引发错误:

最后,为了回应下面的评论(并帮助提高效率),我将包含实际构建这个“rad_boa”6D 数组的 HDF5 文件(在 Matlab 中创建)的结构(上面的这个例子只使用了模拟随机大批)。实际数据库读入 Xarray 如下:

生成的 Xarray 看起来像这样: Xarray VSC 指南

0 投票
1 回答
4342 浏览

opengl - 如何在没有重复顶点的情况下在 OpenGL 中实现平面着色?

我正在尝试使用平面阴影在 LWJGL OpenGL 中渲染 3D 棱镜。例如,我有一个索引如下的多维数据集:

在此处输入图像描述

我在顶点缓冲区中只有 8 个顶点,我已按上述方式对其进行了索引。有没有办法在立方体上实现平面法线着色,如下所示?如果可能的话,我不想重写我的顶点和索引缓冲区以包含重复的顶点。

0 投票
2 回答
252 浏览

python - Numpy 矩阵减法不同维度

我目前有一个尺寸为 40 x 3 x 3 x 5 x 1000 的 5D numpy 数组,其中尺寸分别由 axbxcxdxe 标记。

我有另一个 3 x 1000 尺寸的 2D numpy 数组,其中尺寸分别由 bxe 标记。

我希望从 2D 数组中减去 5D 数组。

我想到的一种方法是将 2D 扩展为 5D 数组(因为 2D 数组不会因其他 3 维的所有组合而改变)。我不确定我可以使用什么数组方法/numpy 函数来执行此操作。

我倾向于开始迷失 nD 数组操作。谢谢你的帮助。

0 投票
0 回答
13 浏览

knn - 最近邻算法对非匹配快速

我有一个在 100 维空间中有数百万个点的数据集。我需要快速检查查询点是否不在集合中任何点的一定距离内。

有没有快速的算法呢?

该算法可能有误报(比如查询靠近另一个点),但不能有误报(比如查询远离每个点,但不是)。

这里的难点是:

  • 维数被诅咒了。这是一个广阔的空间,但一切都相对靠近。

  • 大多数 KNN 算法专注于寻找最佳候选者,并拒绝比最佳候选者更远的所有点。在我的情况下,几乎每个查询都是“未命中”,因此最好的候选人始终无法拒绝甚至超过一半的分数。

0 投票
0 回答
30 浏览

classification - 如何以 zarr 格式动态存储一组图像和标签?

我已阅读 zarr 文档,但无法做到这一点。我想要这样的树格式:

谢谢你。

0 投票
1 回答
351 浏览

python - N维数据集的质心

由于我是 python 和一般编程的新手,我的老师给了我一些工作。其中一些是与 MNIST 手写数字数据库一起使用的。每个数字都是 728 个分量的向量。当我想计算每个类的质心时,问题就来了。这是 728 个维度中每个数字的平均值。如果我有两个维度,我知道我应该做类似的事情

等等......但我不知道如何用728维来做。我试过的是这样的:

但它返回<generator object <genexpr> at 0x000002ADA1818F90>而不是返回一个 728 维向量,这将是数字 0 的质心,然后是数字 1,依此类推......

编辑:感谢一个答案,我将代码修改为:

而且效果很好,非常感谢