vexo / compare
比较向量的函数集合
1.0.0
2023-05-25 00:41 UTC
Requires
- php: >=8.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.17
- pestphp/pest: ^2.6
- phpstan/phpstan: ^1.10
- phpunit/php-code-coverage: ^10.1
- phpunit/phpunit: ^10.1
- rector/rector: ^0.16.0
- symfony/var-dumper: ^6.2
This package is auto-updated.
Last update: 2024-09-29 10:43:28 UTC
README
比较向量的函数集合。最初从 mljs/distance 转移。
安装
composer require vexo/compare
用法
<?php declare(strict_types=1); use Vexo\Compare\Distance; use Vexo\Compare\Similarity; $one = [0.21, -0.32, 0.01]; $two = [0.42, -0.11, -0.02]; // Get the euclidean distance between vector one and two $distance = euclidean($one, $two); // Get the average of cosine distances between vector one and two $similarity = Similarity\cosine($one, $two);
可用函数
距离
additiveSymmetric(array $a, array $b): floatavg(array $a, array $b): floatbhattacharyya(array $a, array $b): floatcanberra(array $a, array $b): floatchebyshev(array $a, array $b): floatclark(array $a, array $b): floatczekanowski(array $a, array $b): floatdice(array $a, array $b): floatdivergence(array $a, array $b): floateuclidean(array $a, array $b): floatfidelity(array $a, array $b): floatgower(array $a, array $b): floatharmonicMean(array $a, array $b): floathellinger(array $a, array $b): floatinnerProduct(array $a, array $b): floatintersection(array $a, array $b): floatjaccard(array $a, array $b): floatjeffreys(array $a, array $b): floatjensenDifference(array $a, array $b): floatjensenShannon(array $a, array $b): floatkdivergence(array $a, array $b): floatkulczynski(array $a, array $b): floatkullbackLeibler(array $a, array $b): floatkumarJohnson(array $a, array $b): floatlorentzian(array $a, array $b): floatmanhattan(array $a, array $b): floatmatusita(array $a, array $b): floatminkowski(array $a, array $b, float $p): floatmotyka(array $a, array $b): floatneyman(array $a, array $b): floatpearson(array $a, array $b): floatprobabilisticSymmetric(array $a, array $b): floatruzicka(array $a, array $b): floatsoergel(array $a, array $b): floatsorensen(array $a, array $b): floatsquared(array $a, array $b): floatsquaredChord(array $a, array $b): floattaneja(array $a, array $b): floattanimoto(array $a, array $b, bool $bitvector = false): floattopsoe(array $a, array $b): floatwaveHedges(array $a, array $b): float
相似度
cosine(array $a, array $b): floatczekanowski(array $a, array $b): floatdice(array $a, array $b): floatintersection(array $a, array $b): floatkulczynski(array $a, array $b): floatkumarHassebrook(array $a, array $b): floatmotyka(array $a, array $b): floatpearson(array $a, array $b): floatsquaredChord(array $a, array $b): floattanimoto(array $a, array $b, bool $bitvector = false): float