matrix 相关问题

在数学中,矩阵(多个矩阵)是以行和列排列的数字,符号或表达式的矩形阵列。矩阵中的各个项称为其元素或条目。

在 JAX 中进行“移位”矩阵乘法的更快方法

我有两个数组 f 和 g,f 是 N × T × J 维,f 是 T × J 维。我正在尝试在 JAX 中计算以下内容(对于所有 0<=t 我有两个数组 f 和 g,f 是 N × T × J 维,f 是 T × J 维。我正在尝试在 JAX 中计算以下内容(对于所有 0<=t 请注意,如果 t-a<0 I’d like it to default to 0. What would be the fastest approach? 现在,我创建一个所有可能索引的列表,将相关索引中计算的两个数组按元素相乘,然后将它们相加: import jax.numpy as jnp all_indices = jnp.array([(θ, t, a) for θ in range(N) for t in range(T) for a in range(J)]) θ_idx, t_idx, a_idx = all_indices[:, 0], all_indices[:, 1], all_indices[:, 2] tma_idx = jnp.maximum(t_idx - a_idx, 0) unrolled = f[θ_idx, t_idx, a_idx] * g[tma_idx, a_idx] s = unrolled.reshape(N, T, J).sum(axis=(0,2)) 这似乎不是特别有效或优雅,我希望有更好的解决方案。 我怀疑实现这一点的最佳方法是首先移动 2D 矩阵,然后通过 einsum 执行完全缩减。例如: t = jnp.arange(T)[:, None] a = jnp.arange(J) g_shifted = g[jnp.maximum(t - a, 0), a] s = jnp.einsum("ntj,tj->t", f, g_shifted) 与原始解决方案相比,这将g中的索引操作数量减少了T倍,并且依赖于高效的einsum操作来计算最终结果。

回答 1 投票 0

不同形状的矩阵乘法

我的目标是使用Python对表示图像的矩阵进行多次转换。特别是,我希望通过矩阵乘法来实现转换。我坚持

回答 1 投票 0

如何在C中按顺序填充二维数组而不指定索引?

尝试编写拉普拉斯展开式,因为我在大学学习拉普拉斯展开式,但在获取大矩阵的小矩阵时我陷入了困境。这始终是方阵,次要矩阵是...

回答 1 投票 0

如何通过在c中选择行和列来查找二维数组的子集?

在存储为 double *d (列主)的(m x n)数组中,选择一系列行和/或列的最快方法是什么: 双 *filter(双 *mat, int m, int n, int rows[], int cols[]); 我...

回答 2 投票 0

减少矩阵乘法中的分配次数?

在 Julia 中矩阵相乘时有什么方法可以减少分配次数吗?如果可能的话,我想减少这个数字。我已附上显示此内容的屏幕截图。

回答 1 投票 0

追加到递归函数内的列表会更改所有项目吗?河内塔

我正在尝试使用 numpy 制作一个矩阵列表来表示解决河内塔问题的最小移动次数。当我在每次移动后打印 m 时,我的解决方案有效,但是当我尝试......

回答 2 投票 0

在 Julia 中连接数组的高效/廉价方法?

在 Julia 中,我想连接几个数组(也可以将它们相乘)。在我的程序中,我将其编写如下: [Uᵣ Qₐ]*Uₖ [VᵣQᵦ]*Vₖ 然而,这个数组串联非常expe...

回答 1 投票 0

在Java中对角循环方阵的上半部分?

不知道如何构建循环以按此顺序迭代矩阵。红色是对角线的中间,应该被忽略。黄色是我需要处理的细胞,但按照a的顺序...

回答 1 投票 0

特定格式的CUDA cublasSgemm矩阵乘法

我想使用CUDA的cublasSgemm函数将两个矩阵A和B相乘。 但是,A 采用行优先格式,B 采用列优先格式,我希望输出采用行优先格式。 我...

回答 2 投票 0

DataMatrix 与 GS1 DataMatrix

我一直在尝试找出 DataMatrix 与 GS1 DataMatrix 表单中的信息存储方式是否存在差异。我想知道常规 DataMatrix 扫描仪是否可以扫描 GS1 Data...

回答 2 投票 0

选择列的子集以最大化多于零的行数

考虑一个具有 m 的矩阵 < 10000 rows and n < 1000 columns containing ones and zeros. I need to select k <= n columns so that the number of rows containing more ones than zeros is maximal ...

回答 1 投票 0

如何修复:TypeError:'numpy.ndarray'对象不可调用

我目前正在致力于实现牛顿-拉夫森算法来解决统计问题。但是,我遇到了矩阵乘法的问题,导致出现以下错误...

回答 1 投票 0

如何实现表示二阶差分的矩阵来解决惠特克平滑问题?

我正在尝试使用 Whittaker-Eilers 来平滑噪声数据。使用本文创建一个方法来求解我所写页面上的方程 11 和 12 中的 A: 私人 LUDecomposition buildMatrices...

回答 1 投票 0

Swift并发执行中的双重释放错误

我有以下稀疏矩阵乘以向量的代码。在稀疏矩阵中,存储每行非零元素的数量,以及元素数组中第一个

回答 1 投票 0

使用 Numpy 高效计算欧几里德距离矩阵

我在二维空间中有一组点,需要计算每个点到其他点的距离。 我的积分比较少,可能最多100。但是因为我...

回答 6 投票 0

通过块将向量转换为矩阵 -reshape

只是一个简单的问题 我在 R 中努力将数字列表转换为具有固定行数的矩阵 并且数字一次放置在三元组(3 行块)中 元素...

回答 1 投票 0

生成绝对值为一的复数数组

我想随机生成一个任意大小的数组,其中数组的所有元素都是绝对值为一的复数。在 Julia 中有什么办法可以做到这一点吗?

回答 3 投票 0

如果行和列名称以相同前缀开头,则将矩阵值设置为 0

假设您有以下数据框: df <- data.frame(industry = c("DEU_10T12", "DEU_13T15", "DEU_16", "DEU_17", "ITA_10T12", "ITA_13T15&

回答 3 投票 0

矩阵中的循环效率问题

假设您有以下数据框: df <- data.frame(industry = c("DEU_10T12", "DEU_13T15", "DEU_16", "DEU_17", "ITA_10T12", "ITA_13T15&

回答 1 投票 0

Julia 中的矩阵分解

我有一个大网格,每个点都有一个关联的矩阵(3x3)。我想要执行对称和斜对称分解。我知道算法是 𝐴=0.5(𝐴+𝐴T)+0.5(𝐴−𝐴T) 我正在检查...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.