问题标签 [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.
c++ - 使用通用算法的 C++ 中的点积
我敢肯定有一个聪明的单线使用 C++ stl 通用算法来实现任何有序容器中元素的点积,例如向量或列表。只是好像不记得了!
花哨的实现将是:
我认为我正在重新发明轮子,并且有更聪明的方法来做到这一点。
java - 余弦相似度
我计算了两个文档的 tf/idf 值。以下是 tf/idf 值:
文件如下:
如何使用这些值来计算余弦相似度?
我知道我应该计算点积,然后找到距离并将点积除以它。如何使用我的值计算这个?
还有一个问题:两个文档的字数相同是否重要?
python - python中的点积
这个 Python 代码是否真的找到了两个向量的点积?
c - 使用 SSE 内在函数将 4 个点积存储到 C 中的连续数组中的最有效方法
我正在使用 SSE 内在函数为 Intel x86 Nehalem 微架构优化一些代码。
我的程序的一部分计算 4 个点积,并将每个结果添加到数组的连续块中的先前值。进一步来说,
请注意,我将使用 4 个临时 xmm 寄存器来保存每个点积的结果。在每个 xmm 寄存器中,相对于其他临时 xmm 寄存器,结果被放入一个唯一的 32 位中,因此最终结果如下所示:
tmp0= R0-零-零-零
tmp1= 零-R1-零-零
tmp2= 零-零-R2-零
tmp3=零-零-零-R3
我将每个 tmp 变量中包含的值合并为一个 xmm 变量,方法是使用以下指令将它们相加:
最后,我将包含点积的所有 4 个结果的寄存器添加到数组的连续部分,以便数组的索引按点积递增,就像这样(C_0n 是数组中当前要更新的 4 个值; C_2 是指向这4个值的地址):
我想知道是否有一种不那么迂回、更有效的方法来获取点积的结果并将它们添加到数组的连续块中。这样,我在其中只有 1 个非零值的寄存器之间进行了 3 次加法。似乎应该有一种更有效的方法来解决这个问题。
我感谢所有帮助。谢谢你。
python - 每个元素与数组的每个其他元素的点积
有没有一种简单的方法可以将数组的一个元素的点积彼此相乘?所以给出:
我想得到结果:
即a[0]点a[1],a[0]点a[2],a[1]点a[2]。
我正在使用的数组不是正方形的;这只是一个例子。
谢谢!
python - 计算点积的pythonic方法是什么?
我有两个列表,一个名为 A,另一个名为 B。A 中的每个元素都是三元组,B 中的每个元素只是一个数字。我想计算定义为的结果:
结果 = A[0][0] * B[0] + A[1][0] * B[1] + ... + A[n-1][0] * B[n-1]
我知道逻辑很简单,但是如何以 Python 的方式编写呢?
谢谢!
python - 加速 numpy.dot
我有一个numpy
脚本在以下代码中花费了大约 50% 的运行时间:
s = numpy.dot(v1, v1)
在哪里
v1 = v[1:]
并且是存储在连续内存中v
的 4000 元素一维( is )。ndarray
float64
v.strides
(8,)
有什么建议可以加快速度吗?
编辑这是在英特尔硬件上。这是我的输出numpy.show_config()
:
python - numpy:按列点积
给定一个二维numpy
数组,我需要计算每一列与其自身的点积,并将结果存储在一维数组中。以下作品:
有没有一种简单的方法可以避免 Python 循环?以上几乎不是世界末日,但如果有一个numpy
原语,我想使用它。
编辑在实践中,矩阵有很多行和相对较少的列。因此,我并不太热衷于创建大于O(A.shape[1])
. 我也无法A
就地修改。
c++ - 复杂向量与openMP的点积
我正在使用一个不支持 reduce() 复杂参数的 openMP 版本。我需要一个快速的点积函数,比如
显然,这段代码并没有加快问题的速度,而是减慢了速度。您是否有一个快速的解决方案,而不使用 reduce() 来处理复杂的参数?
opengl - 矩阵组件和点积
我有以下 GLSL 代码:
例程RGBtoXYZ具有三个代码块(最后两个已注释)。第一个按预期工作,而其他评论的则不起作用。
问题是我认为它们是等价的。为什么他们不是?