Qual è la funzione di distanza ottimale per gli individui quando gli attributi sono nominali?


12

Non so quale funzione di distanza tra individui utilizzare in caso di attributi nominali (non ordinati categorici). Stavo leggendo alcuni libri di testo e suggeriscono la funzione Abbinamento semplice , ma alcuni libri suggeriscono che dovrei cambiare gli attributi nominali in binari e usare Jaccard Coefficient. Tuttavia, cosa succede se i valori dell'attributo nominale non sono 2? cosa succede se ci sono tre o quattro valori in quell'attributo?

Quale funzione di distanza dovrei usare per gli attributi nominali?


1
Ho trovato utile questo post sulla statistica al quadrato di V e Chi di Cramer.
KarthikS,

Risposte:


18

Tecnicamente per calcolare una misura dis (somiglianza) tra individui su attributi nominali, la maggior parte dei programmi ricodifica prima ciascuna variabile nominale in un insieme di variabili binarie fittizie e quindi calcola alcune misure per variabili binarie. Ecco le formule di alcune misure di somiglianza binaria e di dissomiglianza frequentemente utilizzate .

Che cosa sono le variabili fittizie (chiamate anche one-hot)? Di seguito sono 5 individui, due variabili nominali (A con 3 categorie, B con 2 categorie). 3 manichini creati al posto di A, 2 manichini creati al posto di B.

ID   A    B      A1 A2 A3      B1 B2
1    2    1       0  1  0       1  0
2    1    2       1  0  0       0  1
3    3    2       0  0  1       0  1
4    1    1       1  0  0       1  0
5    2    1       0  1  0       1  0

(Non è necessario eliminare una variabile fittizia come "ridondante" come in genere la faremmo in regressione con i manichini. Non è praticata nel raggruppamento, anche se in situazioni speciali potresti considerare quell'opzione.)

Esistono molte misure per le variabili binarie, tuttavia, non tutte sono logicamente adatte a variabili binarie fittizie , vale a dire quelle nominali precedenti. Vedete, per una variabile nominale, il fatto che "i 2 individui corrispondono" e il fatto che "i 2 individui non corrispondono" sono della stessa importanza. Ma considera la popolare misura Jaccard , doveaa+b+c

  • a - numero di manichini 1 per entrambi gli individui
  • b - numero di manichini 1 per questo e 0 per quello
  • c - numero di manichini 0 per questo e 1 per quello
  • d - numero di manichini 0 per entrambi

Qui disadattamento consiste di due varianti, e ; ma per noi, come già detto, ognuno di essi ha la stessa importanza della partita . Quindi dovremmo pesare due volte e ottenere la formula , nota come Dice (dopo Lee Dice) o misura di Czekanovsky-Sorensen . È più appropriato per variabili fittizie. In effetti, il famoso coefficiente composito di Gower (che è raccomandato per te con i tuoi attributi nominali) è esattamente uguale a Dadi quando tutti gli attributi sono nominali. Nota anche che per le variabili fittizie Dice misura (tra individui) = Ochiai misura (che è semplicemente ac a a 2 abcaa2a2a+b+ccoseno ) = misura di Kulczynsky 2 . E altro per tua informazione, 1-Dice = distanza binaria di Lance-Williams nota anche come distanza di Bray-Curtis . Guarda quanti sinonimi: troverai sicuramente qualcosa del genere nel tuo software!

La validità intuitiva del coefficiente di somiglianza dei dadi deriva dal fatto che è semplicemente la proporzione di coincidenza (o accordo relativo ). Per lo snippet di dati sopra, prendi la colonna nominale Ae calcola la 5x5matrice quadrata simmetrica con 1(entrambi gli individui rientrano nella stessa categoria) o 0(non nella stessa categoria). Calcola anche la matrice per B.

A    1  2  3  4  5        B    1  2  3  4  5
     _____________             _____________
  1| 1                      1| 1
  2| 0  1                   2| 0  1
  3| 0  0  1                3| 0  1  1
  4| 0  1  0  1             4| 1  0  0  1
  5| 1  0  0  0  1          5| 1  0  0  0  1

Somma le voci corrispondenti delle due matrici e dividi per 2 (numero di variabili nominali) - eccoti con la matrice dei coefficienti Dadi. (Quindi, in realtà non devi creare manichini per calcolare i dadi, con le operazioni con le matrici potresti probabilmente farlo più velocemente nel modo appena descritto.) Vedi un argomento correlato sui dadi per l'associazione delle attribuzioni nominali .

Sebbene i dadi siano la misura più evidente da usare quando si desidera una funzione di (dis) somiglianza tra i casi in cui gli attributi sono categorici, si potrebbero usare altre misure binarie - se si trova la loro formula soddisfa le considerazioni sui dati nominali.

Misure come Simple Matching (SM o Rand) che contengono nel numeratore non ti soddisfano perché trattano 0-0 (entrambe le persone lo fanno non hanno uno specifico attributo / categoria comune) come corrispondenza, che è ovviamente senza senso con caratteristiche qualitative originariamente nominali. Quindi controlla la formula della somiglianza o della dissomiglianza che prevedi di usare con gli insiemi di variabili fittizie: se ha o implica come motivi di identità, non usare quella misura per i dati nominali. Ad esempio, la distanza euclidea quadrata , quale formula diventa con i dati binari appena ddb+cdd2=p(1-SM)pa+da+b+c+dddb+c(ed è sinonimo in questo caso di distanza di Manhattan o distanza di Hamming) considera come la base dell'identità. In realtà, , dove è il numero di attributi binari; pertanto la distanza euclidea ha un valore informativo uguale a quello di SM e non dovrebbe essere applicata ai dati nominali originari.dd2=p(1SM)p

Ma ...

Dopo aver letto il precedente paragrafo "teorico" Ho capito che - nonostante quello che ho scritto - la maggior parte dei coefficienti binari (anche quelli che utilizzano ) praticamente farà la maggior parte del tempo. Ho stabilito verificando che con variabili fittizie ottenute da un numero di valori nominali il coefficiente di dadi è strettamente funzionalmente correlato con un numero di altre misure binarie (acronimo è la parola chiave della misura in SPSS):d

                                                       relation with Dice
    Similarities
       Russell and Rao (simple joint prob)    RR          proportional
       Simple matching (or Rand)              SM          linear
       Jaccard                                JACCARD     monotonic
       Sokal and Sneath 1                     SS1         monotonic
       Rogers and Tanimoto                    RT          monotonic
       Sokal and Sneath 2                     SS2         monotonic
       Sokal and Sneath 4                     SS4         linear
       Hamann                                 HAMANN      linear
       Phi (or Pearson) correlation           PHI         linear
       Dispersion similarity                  DISPER      linear
    Dissimilarities
       Euclidean distance                     BEUCLID     monotonic
       Squared Euclidean distance             BSEUCLID    linear
       Pattern difference                     PATTERN     monotonic (linear w/o d term omitted from formula)
       Variance dissimilarity                 VARIANCE    linear

Poiché in molte applicazioni di una matrice di prossimità, come in molti metodi di analisi dei cluster, i risultati non cambieranno o cambieranno uniformemente in trasformazioni lineari (e talvolta anche in monotoniche) di prossimità, sembra che uno possa essere giustificato per un vasto numero di misure binarie oltre a Dadi per ottenere risultati uguali o simili. Ma dovresti prima considerare / esplorare come il metodo specifico (ad esempio un collegamento nel clustering gerarchico) reagisce a una determinata trasformazione di prossimità.

Se il clustering pianificato o l'analisi MDS è sensibile alle trasformazioni monotoniche di distanze, è meglio astenersi dall'utilizzare le misure indicate come "monotoniche" nella tabella sopra (e quindi sì, non è una buona idea usare la somiglianza di Jaccard o la distanza euclidea non quadrata con il manichino , ovvero attributi nominali precedenti).


sì, hai ragione i valori .. quindi un attributo ha tre possibili valori
Jane Doe,

2
supponiamo di avere due valori con lo stesso attributo, "palla", "nall", "pall" e ho convertito questo in 11 01 e 00. Voglio misurare la distanza di Jaccard tra 11 e 00. In questo caso, allora è il distanza 1? da a = 0 b = 2 c = 0 e d = 0? Per favore mi faccia sapere!
Jane Doe,

Mi manca il punto del tuo ultimo commento. Si prega di chiedere chiaramente. Oppure usa i miei dati di esempio sopra con 5 persone e 2 attributi nominali e indica quale individuo con cui vorresti confrontare e in base a quale dis (somiglianza) misura.
ttnphns,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.