Come mostrato in precedenza, k-means assegna punti al baricentro più vicino. Ma cosa "il più vicino" media?
Per applicare K-means ai dati delle caratteristiche, devi definire una misura somiglianza che combina tutti i dati delle caratteristiche in un unico valore numerico, chiamata misurazione manuale di somiglianza.
Considera un set di dati sulle scarpe. Se il set di dati ha il numero di scarpa come unica caratteristica, puoi definire la somiglianza tra due scarpe in termini della differenza le loro dimensioni. Minore è la differenza numerica tra le dimensioni, maggiore è la la somiglianza tra le scarpe.
Se il set di dati relativo alle scarpe conteneva due caratteristiche numeriche, taglia e prezzo, puoi combinare in un unico numero che rappresenta la somiglianza. Innanzitutto scala i dati in modo entrambe le funzionalità sono alla pari:
- Taglia (s): la taglia delle scarpe probabilmente forma una distribuzione gaussiana. Conferma. Poi normalizza i dati.
- Prezzo (p): i dati sono probabilmente una distribuzione di Poisson. Conferma. Se disponi di dati sufficienti, converti i dati in quantili e scala in \([0,1]\).
Quindi, combina le due caratteristiche calcolando errore quadratico medio (RMSE). Questa misura approssimativa della somiglianza è data da \(\sqrt{\frac{(s_i - s_j)^2+(p_i - p_j)^2}{2}}\).
Come semplice esempio, calcola la somiglianza per due scarpe con taglie statunitensi 8 e 11 e i prezzi 120 e 150. Poiché non disponiamo di dati sufficienti per comprendere la distribuzione, scaleremo i dati senza normalizzare o utilizzare quantili.
Azione | Metodo |
---|---|
Scala le dimensioni. | Supponiamo che il numero massimo di scarpe sia 20. Dividi 8 e 11 per la dimensione massima 20 per ottenere 0,4 e 0,55. |
Scala il prezzo. | Dividi 120 e 150 per il prezzo massimo di 150 per ottenere 0,8 e 1. |
Trova la differenza nelle dimensioni. | \(0.55 - 0.4 = 0.15\) |
Trova la differenza di prezzo. | \(1 - 0.8 = 0.2\) |
Calcola l'RMSE. | \(\sqrt{\frac{0.2^2+0.15^2}{2}} = 0.17\) |
Intuitivamente, la misura della somiglianza dovrebbe aumentare quando i dati delle caratteristiche sono più simili. Invece, la misura di somiglianza (RMSE) in realtà diminuisce. Rendi il tuo misura la somiglianza, segui la tua intuizione sottraendo il valore da 1.
\[\text{Similarity} = 1 - 0.17 = 0.83\]
In generale, puoi preparare i dati numerici come descritto in Prepara i dati, quindi combina utilizzando la distanza euclidea.
E se il set di dati includesse sia il numero che il colore della scarpa? Il colore è dati categorici, in Machine Learning Crash Course in Lavorare con i dati categorici. I dati categorici sono più difficili da combinare con i dati numerici sulle dimensioni. Può essere:
- Valore singolo (univalente), ad esempio il colore di un'auto ("bianco" o "blu" ma mai entrambi)
- Multivalore (multivalente), ad esempio il genere di un film (un film può essere "azione" e "umorismo", o solo "azione")
Se i dati univalenti corrispondono, ad esempio nel caso di due paia di scarpe blu, la somiglianza tra gli esempi è 1. In caso contrario, la somiglianza è pari a 0.
È più difficile lavorare con i dati multivalenti, come i generi cinematografici. Se sono presenti un insieme fisso di generi cinematografici, la somiglianza può essere calcolata utilizzando il rapporto tra di valori comuni, chiamati Somiglianza con Jacquard. Esempio calcoli della somiglianza con Jaccard:
- ["commedia","azione"] e ["commedia","azione"] = 1
- ["commedia","azione"] e ["azione"] = 1⁄2
- ["commedia", "azione"] e ["azione", "dramma"] = 1⁄3
- ["commedia","azione"] e ["non-fiction","biografica"] = 0
La somiglianza con Jacquard non è l'unica misura manuale di somiglianza possibile per dati categorici. Altri due esempi:
- I codici postali possono essere convertiti in latitudine e longitudine prima di calcolare la distanza euclidea tra loro.
- Il colore può essere convertito in valori RGB numerici, con differenze di combinati nella distanza euclidea.
Consulta Utilizzo dei dati categorici per saperne di più.
In generale, una misura manuale di somiglianza deve corrispondere direttamente alla somiglianza effettiva. Se la metrica scelta non corrisponde, significa che non codifica il le informazioni che vuoi codificare.
Pre-elabora i dati con attenzione prima di calcolare una misura di somiglianza. La gli esempi su questa pagina sono semplificati. La maggior parte dei set di dati del mondo reale sono grandi e complesso. Come accennato in precedenza, i quantili sono una buona scelta predefinita per l'elaborazione dei dati numerici.
Man mano che la complessità dei dati aumenta, diventa sempre più difficile creare un la misura della somiglianza. In tal caso, passa a una misurazione di somiglianza supervisionata, in cui una macchina supervisionata di machine learning calcola la somiglianza. Questo argomento verrà discusso più nel dettaglio in un secondo momento.