gpt4 book ai didi

php - 余弦相似度 PHP

转载 作者:搜寻专家 更新时间:2023-10-31 20:43:28 27 4
gpt4 key购买 nike

我想在 PHP 中计算 1 (ID1) 和 3 (ID1) 之间的余弦相似度,类似地计算 1 和 4、3 和 4。公式如下所示:

similarity = (1.1 * 3.1 + 1.4 * 3.4)/(((1.1)^2+(1.3)^2+(1.4)^2)^0.5)(((3.1)^2+ (3.4)^2)^0.5) = (4*4+8*4)/(((16+16+64)^0.5)(16+16)^0.5))

我的数据集如下所示:

ID1    ID2    Value  
1 1 4
1 3 4
1 4 8
3 1 4
3 4 4
4 1 8
4 3 4

PHP 中是否有为此计算余弦相似度的代码?

最佳答案

公式在数学中很常见,与编程语言无关。

如果你有两个长度为 n 的向量:

u = (u1, u2, ...., un) and v = (v1, v2, ...., vn)

那么余弦相似度(又名点积)是:

u1*v1 + u2*v2 + .... + un*vn
_____________________________
len(u) * len(v)

其中 len(u) = sqrt(u1*u1 + u2*u2 + .... + un*un); len(v)

也类似

关于php - 余弦相似度 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16803289/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com