K significa con centri fissiCiao, esiste un metodo per calcolare k mezzi per un set di dati ma alcuni centri sono predefiniti?Cioè, ho i seguenti dati casuali e voglio trovare k=3 centri, ma 2 dei centri sono già fissi in una data posizione.La funzionalità esiste in JMP 14.2.0?Grazie!
Punti:
| Etichetta | X | Y |
| Punto1 | 3 | 3 |
| Punto2 | 4 | 4 |
| Punto3 | 6 | 6 |
| Punto4 | 50 | 30 |
| Punto5 | 60 | 60 |
| Punto6 | 70 | 90 |
| Punto7 | 90 | 90 |
| Punto8 | 99 | 99 |
| Punto9 | 101 | 101 |
| Punto10 | 102 | 102 |
Trova il 3° cluster se questi due centri sono già definiti:
| Etichetta | X | Y |
| Centroide1 | 5 | 5 |
| Centroide2 | 100 | 100 |
L'output regolare che analizza i punti funziona correttamente e ottimizza i 3 cluster, ma non tiene conto dei cluster fissi desiderati:

AnaliticaRe: K significa con centri fissiCiao @AvgRegression52 ,
La tua idea sembra controintuitiva per un algoritmo non supervisionato come K-Means, poiché sembra che tu abbia già informazioni a priori sui diversi cluster/gruppi.Per curiosità, perché dovresti cambiare la posizione dei centroidi trovati dall'algoritmo K-Means?
Potrebbe esserci una soluzione alternativa per ottenere i risultati previsti:
- Nel tuo datatable, crea due nuove righe ("Centroid1" e "Centroid 2") con i valori X e Y che vorresti avere per questi due centroidi (nel tuo esempio, [5,5] e [100,100]).
- Quindi, crea una colonna numerica "Peso", in cui tutte le osservazioni precedenti hanno un valore basso (ad esempio: 1 o meno), e le 2 righe "centroïds" appena aggiunte hanno valori molto grandi (ad esempio: 1000000 o più) .
- Quindi, quando si avvia la piattaforma di analisi K-Means, utilizzare X e Y come "Y, colonne" e utilizzare la nuova colonna "Peso" in "Freq" o "Peso" per influenzare le posizioni dei centroidi. Avvia K-Means con 3 cluster (o qualsiasi numero tu preferisca).
In questo modo, le due righe appena aggiunte avranno "artificialmente" molta più frequenza (o importanza) rispetto alle altre righe della tua tabella, e due dei centri dei cluster saranno fortemente distorti per essere il più vicino possibile alle coordinate di queste coordinate di due righe di centroidi (vedi cattura "Biased_K-Means").
Usa questa soluzione alternativa con estrema cautela, poiché l'ultima posizione del centro del cluster potrebbe essere influenzata da questo processo, dipende dalla distribuzione dei punti nelle dimensioni: nel tuo esempio, i tre cluster sono ben definiti e distanti, quindi aggiungi molto di più frequenza/peso a due nuovi valori di coordinate "centroide" (che sono agli estremi delle distribuzioni X e Y) non influiranno sulla posizione del terzo centroide del cluster ("nel mezzo").
L'esempio datatable è anche allegato con lo script K-Means "prevenuto" se vuoi dare un'occhiata.
Spero che questa soluzione alternativa ti possa aiutare,
Re: K significa con centri fissiGrazie @Victor_G , quella frequenza potenziata sembra funzionare bene per il mio caso d'uso!Punto preso sulla posizione del terzo cluster manipolato, poiché i dati del mondo reale non sono così evidenti di un cluster come il campione.
Spiacenti, non posso condividere i dati effettivi o i dettagli specifici, ma i dati principali si concentrano sulle reti di assistenza clienti.Al momento disponiamo di più strutture in una determinata città come Los Angeles e desideriamo essere vicini a tutti i punti di servizio.Tuttavia, oggi possediamo già proprietà immobiliari in 2 località e stiamo indagando su una terza, quindi ci sono alcuni scenari diversi:
1) Se rinunciassimo a tutte le nostre attuali proprietà, dove trasferiremmo tutte e 3 le nuove proprietà (k-significa che va bene)?
2) Se manteniamo le 2 posizioni esistenti, qual è la posizione ideale di una terza proprietà?
3) Se la proprietà non è disponibile nella posizione ideale, dov'è il terreno in vendita e quanto "meno ideale" è questa posizione rispetto all'esempio 2?
Re: K significa con centri fissiCiao @AvgRegression52 ,
Sono contento di sapere che questo trucco sembra funzionare bene per te! Sì, poiché la frequenza/peso viene manipolata per controllare le posizioni dei primi due centroidi, l'ultima posizione del terzo centroide potrebbe essere interessata da questa modifica.
Nessun problema, non volevo essere invadente, ora capisco meglio perché volevi mantenere 2 centroidi, suona come clustering K-Means iterativo (o clustering K-Means con vincoli): essere in grado di raggruppare nuove osservazioni grazie a cluster già esistenti (ad esempio dall'analisi precedente) e cluster appena creati (se necessario). Ho già visto una domanda simile su StackOverflow, ecco perché ero un po' curioso del contesto.
Grazie per le tue spiegazioni!
Ti auguro il meglio,