Vectorgelijkeniscalculator
Bereken afstand en gelijkenis tussen numerieke vectoren met behulp van methoden zoals cosinus, euclidische, jaccard en meer.
Invoer
Uitvoer
Readme
Wat is vectorgelijkenis?
Vectorgelijkenis meet hoe vergelijkbaar twee vectoren zijn in een multidimensionale ruimte. Vectoren zijn geordende lijsten met getallen die gegevenspunten vertegenwoordigen — ze verschijnen in machine learning embeddings, aanbevelingssystemen, natuurlijke taalverwerking, beeldherkenning en wetenschappelijk rekenen. Het vergelijken van twee vectoren vertelt u hoe dicht de onderliggende gegevenspunten bij elkaar liggen of hoe gerelateerd ze zijn.
Twee kernconcepten worden gebruikt:
- Gelijkenis: Een score die aangeeft hoe vergelijkbaar twee vectoren zijn. Hogere waarden betekenen meestal meer gelijkenis (bijvoorbeeld, cosinus-gelijkenis van 1 betekent identieke richting).
- Afstand: Een maat voor hoe ver twee vectoren uit elkaar liggen. Lagere waarden betekenen meestal meer gelijkenis (bijvoorbeeld, Euclidische afstand van 0 betekent identieke vectoren).
Hulpprogrammabeschrijving
Dit hulpprogramma berekent de gelijkenis of afstand tussen twee numerieke vectoren met behulp van meer dan 50 bekende methoden uit informatietheorie, statistiek en geometrie. Voer twee vectoren in, kies een methode uit het gelijkenis- of afstandtabblad, en het resultaat wordt onmiddellijk in uw browser berekend.
Voorbeelden
Invoer
Vector A: 1, 2, 3
Vector B: 4, 5, 6| Methode | Resultaat |
|---|---|
| Cosinus-gelijkenis | 0.9746318461970762 |
| Euclidische afstand | 5.196152422706632 |
| Manhattan-afstand | 16.5 |
Ondersteunde invoerformaten
Al het volgende is gelijkwaardig:
1, 2, 3
[1, 2, 3]
(1 2 3)
1;2;3Functies
- 50+ methoden — kies uit afstanden (Euclidisch, Manhattan, Chebyshev, Cosinus, Kullback-Leibler, Jensen-Shannon en meer) of gelijkenissen (Cosinus, Jaccard, Dice, Tanimoto en meer)
- Flexibele invoer — accepteert waarden gescheiden door komma's, spaties of puntkomma's met of zonder haakjes
- Directe resultaten — alle berekeningen worden aan de clientzijde uitgevoerd zonder dat gegevens naar een server worden verzonden
Ondersteunde methoden
Gelijkenismethoden
| Methode | Beschrijving |
|---|---|
| Cosinus | Meet de hoek tussen twee vectoren; veel gebruikt in NLP en aanbevelingssystemen |
| Kumar-Hassebrook | Gegeneraliseerde gelijkenis die Jaccard en cosinus combineert |
| Dice | Twee keer het snijpunt gedeeld door de som van elementtellingen |
| Tanimoto | Uitgebreide Jaccard-coëfficiënt voor continue vectoren |
| Snijpunt | Som van de element-wise minima |
| Czekanowski | Verhouding van twee keer de som van minima tot de totale som |
| Motyka | Snijpunt gedeeld door de som van alle elementen |
| Kulczynski | Harmonisch gemiddelde van precisie- en recall-achtige verhoudingen |
| Squared Chord | Gebaseerd op de vierkantswortels van de elementproducten |
| Pearson | Lineaire correlatiecoëfficiënt tussen de twee vectoren |
Afstandsmethoden
| Methode | Beschrijving |
|---|---|
| Euclidisch | Rechtlijnige afstand in n-dimensionale ruimte |
| Squared Euclidisch | Euclidische afstand zonder de vierkantswortel |
| Manhattan (City Block) | Som van absolute element-wise verschillen |
| Chebyshev | Maximaal absoluut verschil over alle dimensies |
| Canberra | Gewogen Manhattan-afstand gevoelig voor waarden dicht bij nul |
| Sørensen | Som van absolute verschillen gedeeld door som van alle waarden |
| Gower | Genormaliseerd gemiddelde van absolute verschillen |
| Soergel | Verhouding van absolute verschillen tot element-wise maxima |
| Lorentzian | Som van natuurlijke logaritmen van absolute verschillen plus één |
| Clark | Gewogen afstand met absolute verschillen over sommen |
| Wave Hedges | Som van absolute verschillen gedeeld door element-wise maxima |
| Czekanowski | Afstandsvorm van de Czekanowski-coëfficiënt |
| Motyka | Afstandsvorm van de Motyka-coëfficiënt |
| Kulczynski | Afstandsvorm van de Kulczynski-coëfficiënt |
| Tanimoto | Afstandsvorm van de Tanimoto-coëfficiënt |
| Ruzicka | Complement van de Ruzicka-gelijkenis |
| Inner Product | Negatief inproduct als afstandsmaat |
| Harmonic Mean | Afstand gebaseerd op harmonische gemiddelden van elementparen |
| Jaccard | Verhouding van niet-overeenkomende componenten |
| Dice | Afstandsvorm van de Dice-coëfficiënt |
| Fidelity | Gebaseerd op de vierkantswortel van elementproducten (Bhattacharyya-gerelateerd) |
| Bhattacharyya | Meet overlap tussen twee waarschijnlijkheidsverdelingen |
| Hellinger | Vierkantswortel van de Bhattacharyya-afstand |
| Matusita | Vierkantswortel van de helft van de som van gekwadrateerde verschillen van vierkantswortels |
| Squared Chord | Afstandsvorm van de Squared Chord-coëfficiënt |
| Pearson | Afstandsvorm van de Pearson-correlatiecoëfficiënt |
| Neyman | Chi-kwadraat-achtige divergentie |
| Squared | Gekwadrateerde chi-kwadraat-afstand |
| Probabilistic Symmetric | Symmetrische versie van de chi-kwadraat-divergentie |
| Divergence | Dubbel gewogen gekwadrateerde afstand |
| Additive Symmetric | Gemiddelde van Neyman en Pearson chi-kwadraat-divergenties |
| Kullback-Leibler | Informatietheorische divergentie tussen verdelingen |
| Jeffreys | Symmetrische Kullback-Leibler-divergentie |
| K Divergence | Asymmetrische divergentie gebaseerd op gemiddelde verdeling |
| Topsøe | Twee keer de Jensen-Shannon-divergentie |
| Jensen-Shannon | Gladgestreken, symmetrische versie van Kullback-Leibler |
| Jensen Difference | Gebaseerd op de Jensen-ongelijkheid voor convexe functies |
| Taneja | Rekenkundig-geometrische gemiddelde divergentie |
| Kumar-Johnson | Gebaseerd op gekwadrateerde verschillen van even machten |
| Intersection | Complement van de snijpunt-gelijkenis |
| Average (City Block + Chebyshev) | Gemiddelde van Manhattan en Chebyshev-afstanden |
Hoe het werkt
Het hulpprogramma parseert elke vectorinvoer in een reeks getallen, verwijdert optionele haakjes en splitst op komma's, spaties of puntkomma's. Vervolgens geeft het beide arrays door aan de geselecteerde functie uit de ml-distance-bibliotheek, die de berekening in pure JavaScript uitvoert. Beide vectoren moeten hetzelfde aantal dimensies hebben; anders toont het hulpprogramma een validatiefout.
Beperkingen
- Sommige methoden (bijvoorbeeld Kullback-Leibler, Bhattacharyya) vereisen dat alle waarden strikt positief zijn en optellen tot 1 (waarschijnlijkheidsverdelingen). Het gebruik van willekeurige vectoren kan
InfinityofNaNopleveren, wat het hulpprogramma als een rekenfout behandelt. - Zeer grote vectoren (duizenden dimensies) worden ondersteund, maar kunnen een korte vertraging veroorzaken, afhankelijk van de gekozen methode.