标签: n-dimensional

使用NumPy查找所有n维线和对角线

使用NumPy,我想生成一个长度为k的n维数组的所有行和对角线的列表.


以长度为3的以下三维数组为例.

array([[[ 0,  1,  2],
        [ 3,  4,  5],
        [ 6,  7,  8]],

       [[ 9, 10, 11],
        [12, 13, 14],
        [15, 16, 17]],

       [[18, 19, 20],
        [21, 22, 23],
        [24, 25, 26]]])
Run Code Online (Sandbox Code Playgroud)

对于这种情况,我想获得以下所有类型的序列.对于任何给定的情况,我想获得每种类型的所有可能序列.对于每种情况,在下面的括号中给出了所需序列的实例.

  • 1D线
    • x轴(0, 1, 2)
    • y轴(0, 3, 6)
    • z轴(0, 9, 18)
  • 2D对角线
    • x/y轴(0, 4, 8,2, 4, 6)
    • x/z轴(0, 10, 20,2, 10, 18)
    • y/z轴(0, 12, 24,6, 12, 18)
  • 3D对角线
    • x/y/z轴( …

python arrays numpy n-dimensional diagonal

13
推荐指数
1
解决办法
720
查看次数

如何将ND阵列的最后两个维度作为2D阵列?

我在MATLAB中有一个3D数组,有size(myArray) = [100 100 50].现在,我想以2D矩阵的形式获得由第一维中的索引指定的特定层.我试过了myMatrix = myArray(myIndex,:,:);,但这给了我一个3D数组size(myMatrix) = [1 100 50].

我如何告诉MATLAB我对第一维不感兴趣(因为只有一层),所以它可以简化矩阵?

注意:我还需要使用第二个索引来执行此操作,size(myMatrix) = [100 1 50]而不是所需的渲染[100 50].解决方案应该适用于两种情况,并且优选地适用于第三维.

arrays matlab matrix multidimensional-array n-dimensional

12
推荐指数
1
解决办法
1万
查看次数

OpenCL:工作项,处理元素,NDRange

我的同学和我第一次面对OpenCL.正如所料,我们遇到了一些问题.下面我总结了我们遇到的问题和我们找到的答案.但是,我们不确定我们是否做得好,所以如果你们能够看看我们的答案和他们下面的问题,那就太好了.

为什么我们不把它分成单个问题?

  1. 它们部分地相互关联.
  2. 我们认为这些是典型的初学者问题.那些同学谁,我们所有的咨询回复"嗯,我不明白无论是."

工作项与处理元素

在我见过的OpenCL大部分讲座中,他们使用相同的插图来介绍计算单元和处理元素以及工作组和工作项.这导致我的同学和我不断混淆这些概念.因此,我们现在提出了一个定义,强调处理元素与工作项非常不同的事实:

  • 工作项是正在执行的内核,而处理元素是表示实际执行计算的事物的抽象模型.工作项只是临时存在于软件中的东西,而处理元素则抽象出物理存在于硬件中的东西.但是,取决于硬件并因此取决于OpenCL实现,工作项可能被映射到由所谓的处理元素表示的某个硬件并由其执行.

问题1:这是正确的吗?有没有更好的方式表达这个?

NDRange

这就是我们如何看待NDRange的概念:

  • 那里的工作项数量由NDRange大小表示.通常,这也被称为全球规模.但是,NDRange可以是一维,二维或三维("ND"):
    • 一维问题是某些计算是线性向量.如果向量的大小为64并且有64个工作项来处理该向量,则NDRange大小等于64.
    • 二维问题是对图像的一些计算.在1024x768图像的情况下,NDRange大小Gx将是1024并且NDRange大小Gy将是768.这假设有1024x768个工作项来处理该图像的每个像素.NDRange大小则等于1024x768.
    • 三维示例将是对3D模型左右的一些计算.此外,还有NDRange尺寸Gz.

问题2:再次,这是正确的吗?

问题3:这些维度只是为了便利吗?可以简单地将图像的每个像素的颜色值存储在该尺寸的线性矢量中width * height.任何3D问题都是如此.

各个

问题4:我们被告知内核的执行(换句话说:工作项)可以使用barrier(CLK_LOCAL_MEM_FENCE);Understood 在工作组中同步.我们也(反复)被告知工作组无法同步.好的.但那么有什么用barrier(CLK_GLOBAL_MEM_FENCE);呢?

问题5:在我们的主机程序中,我们指定一个上下文,其中包含一个或多个来自其中一个可用平台的设备.但是,我们只能将内核排入所谓的命令队列中,该命令队列只链接到一个设备(必须在上下文中).同样:命令队列未链接到先前定义的上下文,而是链接到单个设备.对?

opencl n-dimensional

12
推荐指数
1
解决办法
6643
查看次数

如何在OpenGL中实现没有重复顶点的平面着色?

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

在此输入图像描述

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

opengl shader glsl lwjgl n-dimensional

10
推荐指数
1
解决办法
7763
查看次数

使用python和DBSCAN聚类高维数据

我有一个1000维的数据集,我试图用Python中的DBSCAN集群数据.我很难理解选择哪个指标以及为什么.

有人可以解释一下吗?我应该如何决定要设置的值eps

我对数据的更精细结构感兴趣所以min_value设置为2.现在我使用sklearn中为dbscan预设的常规度量,但是对于小的eps值,例如eps<0.07,我得到一些簇但是错过了很多点和较大的值我得到几个较小的簇和一个巨大的.我确实理解一切都取决于手头的数据,但我对如何以连贯和结构化的方式选择eps值以及选择哪些指标感兴趣!

我已经阅读了这个问题以及有关10个维度的答案我有1000个:)而且我也不知道如何评估我的度量标准所以如果有更详细的解释那么会很有趣:评估你的指标!

编辑:或者有关使用现有python实现处理高维数据的其他聚类算法的提示.

python cluster-analysis data-mining n-dimensional dbscan

7
推荐指数
1
解决办法
5156
查看次数

n维匹配算法

在这里寻找一些建议.有没有人知道在n维空间中开始研究匹配算法的好地方.例如,任何约会网站必须使用某种算法来匹配2个人.我所读到的是,我们可以使用针对每个特征的点系统来映射n维阵列中的人的特征.一旦我们拥有了一个人的所有(可用)特征,我们就可以在n维数组中的某个点上表示这个人.然后,匹配2个人就像在这个n-dim阵列中找到2点之间的最短距离一样简单.有没有人对这类算法的实现有任何参考?写这些东西的最佳语言是什么?

algorithm matching n-dimensional

5
推荐指数
2
解决办法
4084
查看次数

C++如何生成n维元组的笛卡尔积的集合

我希望生成一些数据来表示代表n维n维立方体的点云的坐标.这些点应该均匀地分布在整个n空间中,并且应该能够在它们之间以用户定义的间隔生成.该数据将存储在一个数组中.

c++ tuples cartesian-product n-dimensional hypercube

5
推荐指数
1
解决办法
3197
查看次数

在一维数组中找到k最长的序列?

在实现项目的上下文中,我需要在PHP中找到k最长的序列.有很多方法可以实现这一点 - 但哪种算法对PHP最快?

你会实现哪种算法?(概述)

哪一个最有效率和动态(数字,字符串等)?(快?,时间为n-elems?)

你会如何实现它?(例)

谢谢!


Post Scriptum

我即将实施ONISI k-nearest neightbour算法.在该示意图中可视化最长的序列. 自t以来的交互历史和直接历史. 该shematic简要概述了ONISI算法.在此输入图像描述

total/immediate-history-elements是表示$ state - > $ action模式的字符串.这意味着,考虑到原理图(1)的前3个元素,将显示数据,例如:$immediate_history = array( array( "s2" => "a2" ), array( "s3" => "a3" ), array( "s1" => "a1" ) [..] );

关于这个问题还有什么问题吗?

干杯!

php algorithm math sequence n-dimensional

5
推荐指数
1
解决办法
489
查看次数

求n维矩形的坐标

C++中计算n维矩形(超矩形)坐标的最佳方法是什么?

我有一维向量中矩形的尺寸定义,例如:

[min1, max1, min2, max2, ...., minN, maxN]
Run Code Online (Sandbox Code Playgroud)

例如,在 2d 维度中,向量为

[min1, max1, min2, max2]
Run Code Online (Sandbox Code Playgroud)

我正在寻找的角坐标是

[min1, min2], [min1, max2], [max1, min2], [max1, max2]
Run Code Online (Sandbox Code Playgroud)

对于 n 维超矩形,我们如何做到这一点?

c++ coordinates n-dimensional

4
推荐指数
1
解决办法
648
查看次数

C++ 2D矢量和操作

一个人怎么可以创建一个2D vector在C++中,找到它lengthcoordinates

在这种情况下,向量元素如何填充值?

谢谢.

c++ vector n-dimensional

3
推荐指数
1
解决办法
1万
查看次数

配置文件的多属性匹配

我正在尝试解决约会网站的问题.这是问题所在

app的每个用户都有一些属性 - 比如他读的书,他看的电影,音乐,电视节目等.这些是定义的顶级属性类别.这些类别中的每一个都可以具有任意数量的值.例如在书中:喷泉头,爱情故事......

现在,我需要根据配置文件属性匹配用户.这是我打算做的事情:

使用反向索引存储数据.如果每个Fountain Head,Love Story等都是具有该属性的用户集的索引键.

当新用户加入时,获取该用户的属性,找到该用户的哪些索引键,获取这些键的所有用户,存储桶(或基数排序或类似排序),以根据用户输入的次数进行排序这个合并的清单.

这好,坏,更糟吗?还有其他建议吗?

谢谢Ajay

algorithm matching n-dimensional

3
推荐指数
1
解决办法
4972
查看次数

在Python中生成n维随机数

我正试图从高斯分布中生成随机数.Python有非常有用的random.gauss()方法,但这只是一维随机变量.我如何以编程方式从n维度中的此分布生成随机数?

例如,在两个维度中,此方法的返回值基本上是与平均值的距离,因此我仍然需要(x,y)坐标来确定实际数据点.我想我可以生成两个以上的随机数,但我不确定如何设置约束.

我很欣赏任何见解.谢谢!

python random n-dimensional

2
推荐指数
1
解决办法
3572
查看次数

在C中,如何编写N维嵌套for循环,其中N是可变的

我需要写一下这句话:

for ( int i1 = i1_min; i1 < width; ++i1 )
    for ( int i2 = i2_min; i2 < i2_max; ++i2 )
        for ( int i3 = i3_min; i3 < i3_max; ++i3 )
            ...
                for ( int iN = iN_min; iN < iN_max; ++iN )
Run Code Online (Sandbox Code Playgroud)

怎么做?

c nested-loops n-dimensional

0
推荐指数
1
解决办法
95
查看次数