
La piattaforma K Nearest Neighbours, o KNN, prevede un valore di risposta per una data osservazione utilizzando le risposte delle osservazioni nelle vicinanze locali di quell'osservazione. Può essere utilizzato per classificare una risposta categorica e per prevedere una risposta continua.
KNN è un algoritmo di machine learning non parametrico e supervisionato. Funziona sul presupposto di base che le somiglianze in alcuni parametri (le osservazioni) riflettono somiglianze in altri parametri (la previsione). Per soddisfare questa ipotesi, KNN classifica le k distanze più piccole tra l'osservazione data e tutte le altre osservazioni.
Per questo motivo, K-Nearest Neighbours può classificare le osservazioni con confini di previsione irregolari. Tuttavia, poiché l'algoritmo è sensibile ai predittori irrilevanti, la scelta dei predittori può influenzare i risultati.
Calcola la distanza
JMP pro 17 utilizza le distanze euclidee per calcolare le distanze tra i valori del predittore e quelli degli altri. In uno spazio 2D, la distanza euclidea d tra (x1, y1) e (x2, y2) è semplicemente:
d = quadrato((x2-x1)^2 + (y2-y1)^2)
il metodo euclideo richiede che tutti i valori siano reali.
Fare previsioni
La KNN fornisce la sua previsione in base al tipo di risposte che ha.
- Risposte continue
JMP prevede i valori come media delle risposte dei k vicini più vicini. Ogni predittore continuo viene ridimensionato in base alla sua deviazione standard. I valori mancanti per un predittore continuo vengono sostituiti dalla media di tale predittore.
- Risposte categoriche
In JMP, il valore previsto è il livello di risposta più frequente per i k vicini più vicini. Se è presente più di una risposta principale, la risposta prevista viene assegnata selezionando in modo casuale uno di questi livelli.
Il valore k o n_neighbors
Valori diversi di k possono dare previsioni diverse. In JMP è sufficiente specificare il numero massimo di k. Per ogni k, 1 ≤ k ≤ k_max, JMP crea un modello utilizzando solo le osservazioni del set di addestramento. Ciascuno di questi modelli viene utilizzato per classificare le osservazioni del set di validazione. I risultati del set di convalida vengono utilizzati per selezionare il modello con il tasso di classificazione errata più basso (ovvero il miglior k).
Convalida per KNN nella modellazione JMP
È possibile aggiungere una colonna numerica come convalida per la modellazione KNN in JMP Pro. JMP utilizza la convalida per suddividere i dati in set prima della modellazione per ridurre l'adattamento eccessivo e selezionare un buon modello predittivo. Per KNN, questa funzione è facoltativa. Tuttavia, l'adattamento eccessivo può portare a una mancata corrispondenza tra addestramento e previsione, ovvero l'algoritmo è eccessivamente specifico per i dati di addestramento, determinando previsioni meno accurate.
Per KNN, puoi suddividere i dati in due o tre set con i seguenti metodi:
|
Metodo
|
Impostato
|
Funzione
|
|
Allenati e sintonizzati
|
Formazione
|
Stima dei parametri del modello
|
|
Validazione
|
Ottimizza i parametri del modello nell'algoritmo di adattamento del modello e, infine, scegli un modello con una buona capacità predittiva
|
|
Formare, sintonizzare e valutare
|
Formazione
|
Stimare i parametri del modello
|
|
Validazione
|
Ottimizza i parametri del modello nell'algoritmo di adattamento del modello e, infine, scegli un modello con una buona capacità predittiva
|
|
Test
|
Valutare in modo indipendente le prestazioni del modello montato
|
Ulteriori informazioni sulla convalida nel documentario JMP: esempio della piattaforma Make Validation Column (jmp.com)
Esempio
In questo esempio, vogliamo utilizzare KNN per classificare un cliente tra Buon rischio e Cattivo rischio in base alla sua storia finanziaria.
- Selezionare Guida > Cartella dati di esempio e aprire Equity.jmp .
- Selezionare Analizza > Modellazione predittiva > K Vicini più vicini .
- Selezionare BAD e fare clic su Y, Risposta . È il valore da analizzare.
- Selezionare PRESTITO e CLNO e fare clic su X, Fattore . Queste sono le variabili predittive.
- Selezionare Convalida e fare clic su Convalida . Questo è il valore utilizzato per suddividere i dati in set prima della modellazione per evitare un adattamento eccessivo e selezionare un buon modello predittivo. Nell'esempio abbiamo utilizzato il metodo Train, Tune e Evaluate.
- Fare clic su OK .
Per salvare l'equazione di previsione
- Fare clic con il pulsante destro del mouse sul triangolo rosso BAD e selezionare Pubblica formula di previsione .
- Accanto a Numero di vicini, K , lascia il valore predefinito di 7.
- Fare clic su OK .
L'equazione di previsione viene salvata nel Deposito formule . È possibile confrontare le prestazioni dei modelli alternativi pubblicati nel Deposito formule con quelle del modello del vicino più vicino K = 7 utilizzando l'opzione Confronto modelli nel Deposito formule. Ulteriori informazioni sul deposito formule sono reperibili nella Guida/Libreria documentazione JMP, pagina 3763 .
Se sei interessato, puoi tornare al passaggio 4. Questa volta inserisci tutti i parametri tra LOAN e CLNO come X, Factor. Cosa è cambiato e perché?
Shuran,
Recensito da Jeremy T. @jeteez
Gennaio 2024, basato su JMP(R) Pro 17.2.0
Questo articolo non riflette le posizioni e le opinioni di JMP Statistical Discovery né di SAS Institute.