PHPで1(ID1)と3(ID1)のコサイン類似度を計算したいです。式は次のようになります。
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でコサイン類似度を計算するアルゴリズムはありますか?