问题标签 [dot-product]

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 投票
2 回答
97 浏览

arrays - 寻找为 3D 网格定义点积函数的最佳方法

我正在尝试在三维域中构建以下函数。

在此处输入图像描述

其中在此处输入图像描述是常数向量,在此处输入图像描述是位置向量,在此处输入图像描述是常数,在此处输入图像描述是时间。

在此处输入图像描述是一个大小为 的向量,是一个大小[1 3]为3 维域中的点的在此处输入图像描述数组,是一个常数,是一个大小为 的数组。[NX*NY*NZ 3]在此处输入图像描述在此处输入图像描述[1 NT]

以下是问题的设置。

事实上,下面的循环可以工作,但速度很慢(~200秒)。

我考虑过使用和arrayfun重复使用向量并在第二维中点它,但我不知道我应该为and的乘法做些什么。krepmatXct

什么是为所有点和所有时间定义函数的有效方法?例如,此函数的输出看起来像一个 size 数组[NX*NY*NZ NT]

0 投票
0 回答
852 浏览

image - imread 命令是否有替代方法来减少 matlab 程序中的延迟?

我在这条路径 G:\newdatabase\ 中有 2900 张图像读取图像需要太多时间。对于点积也需要太多时间。

问题:

1.imread 命令有什么替代方法可以提高性能吗?

2. dot 命令有什么替代方法可以提高性能吗?

我试过的源代码:

我试过的源代码:

0 投票
3 回答
460 浏览

python - 点(A,B,3)的numpy等价物

假设我有两个 3 维矩阵,就像这样(取自这个 matlab 示例http://www.mathworks.com/help/matlab/ref/dot.html):

如果我想沿第三维取成对点积,我可以在 matlab 中这样做:

这将给出结果:

什么是 numpy 中的等效操作,最好是矢量化选项,以避免必须在整个数组中编写双 for 循环。我似乎无法理解应该做什么np.tensordotnp.inner应该做什么,但它们可能是选项。

0 投票
1 回答
342 浏览

opencl - OpenCL kernel works with certain data types but not others

I'm trying to learn OpenCL, and currently I'm practising making different kernels. In my attempt to make a dot product using reduction methods, I ran into an issue I don't understand. When I run my code with int inputs and output, it works fine. When I change all the int types to float types (for the inputs and outputs) it gives me a result that is close but is slightly off. Can anyone figure out why this is or what is causing it?

Here's the host code

And here's the kernel code.

I'm sure it's something very silly, but I'm just not understanding it.

0 投票
1 回答
1607 浏览

c - MPI - 平行点积计算

我正在努力修改一个程序,该程序将两个文件作为输入(每个文件代表一个向量)并计算它们之间的点积。它应该并行完成,但有人告诉我,每个文件中的点数可能无法被可用处理器的数量整除,并且每个进程可能从文件中的错误位置读取。我的意思是,如果有四个处理器,前 250 个点可能会被正确读取和计算,但第二个处理器可能会读取相同的 250 个点并提供不正确的结果。这是我到目前为止所做的。我所做的任何修改都会被记录下来。

除了这些变化,我不知道从这里去哪里。我可以做些什么来使这个程序使用并行处理以两个文本文件作为输入来正确计算两个向量的点积?每个包含 100000 个点,因此手动修改文件是不切实际的。

0 投票
2 回答
889 浏览

matlab - Matlab:矩阵中每一行的Argmax和点积

我有 2 个矩阵 =X in R^(n*m)W in R^(k*m)where k<<n。设x_iX 的第 iw_j行和 W 的第 j 行。我需要为每个 x_i 找到最大化的 j<w_j,x_i>

我看不到遍历 X 中所有行的方法,但是有一种方法可以找到最大点积,而无需每次都遍历整个 W?

一个天真的实现是:

0 投票
1 回答
1555 浏览

java - 墙壁的球反射角度不起作用

我正在尝试让球在墙上反弹。墙壁可以是任意角度,球可以任意角度撞击墙壁。球有一个速度矢量。我已经计算并归一化了球碰撞的墙壁的法线。下面的代码是我用来计算点积的代码:

由于某种原因,球只是以高速向某个奇怪的方向反弹。这是计算反射速度的主要函数:

startX、startY、stopX 和 stopY 是墙的坐标。

有谁知道我做错了什么?

0 投票
1 回答
749 浏览

similarity - 将 TFIDF 用于相对频率、余弦相似度

我正在尝试使用 TFIDF 作为相对频率来计算余弦距离。我从一个文档中选择了 10 个单词说:文件 1 并从我的文件夹中选择了另外 10 个文件,使用 10 个单词及其频率来检查 10 个文件中哪些与文件 1 相似。说文件夹中的文件总数是46.我知道 DF(是该单词出现在的文档数) IDF(是 log(文件总数(46)/DF)和 TFIDF(是 TF(一个文档中单词的频率)的乘积)和以色列国防军)

问题:

  1. 假设我上面所说的是 100% 正确,在获得一个文档中所有 10 个单词的 TFIDF 之后说:文件 2,我是否将 10 个单词中的每一个单词的所有 TFIDF 加在一起以获得文件 2 的 TFIDF?

  2. 余弦距离是多少?

谁能帮忙举个例子?

0 投票
1 回答
323 浏览

arrays - 如何使单精度数组的 Fortran SUM 命令结果超过 2^24

为了检查内存分配,我们使用单位值填充单精度数组并使用SUMandDOT_PRODUCT命令进行查询。这些内在函数在 16777216 (= 2^24) 之后停止计数。我们如何让这些命令来计算数十亿个元素?我们更喜欢避免DO循环。对于更高精度的阵列,这不是问题。

输出:

0 投票
1 回答
272 浏览

python - ValueError:由于复制错误和 x[:],矩阵未对齐

我得到了如下所示的 ValueError。

ValueError:由于复制错误,矩阵未对齐

它被追溯到以下行(我没有编写此代码,我正在尝试使用它):

点积就像 numpy 点积,它工作得很好,printing _dotproduct(x1, u)给出了一个有效的答案。那x1[:]是行不通的。

是什么[:]意思?我从来没有见过。

另外我该如何解决对齐错误?

编辑:
我现在已经将错误跟踪到x1[:],所以我可以执行以下操作:

x1[0:hh]=_dotproduct(x1, u)?