YOLO Vision 2026:
Torna al glossario Ultralytics

K-Nearest Neighbors (KNN)

Esplora i K-Nearest Neighbors (KNN). Impara come funziona questo algoritmo di apprendimento supervisionato per classificazione e regressione, il suo uso nella ricerca visiva e l'integrazione con Ultralytics YOLO26.

K-Nearest Neighbors (KNN) è un algoritmo robusto e intuitivo utilizzato nel campo del supervised learning sia per attività di classificazione che di regressione. Contraddistinto dalla sua semplicità, KNN viene spesso classificato come "apprendista pigro" poiché non costruisce un modello o apprende parametri durante una fase di addestramento. Al contrario, memorizza l'intero set di training data ed esegue calcoli solo quando viene richiesta una previsione. Il principio fondamentale dell'algoritmo si basa sulla somiglianza delle caratteristiche: presuppone che punti di dati con attributi simili esistano in stretta prossimità l'uno rispetto all'altro all'interno di uno spazio di caratteristiche multidimensionale.

Come opera l'algoritmo#

Il meccanismo di K-Nearest Neighbors è guidato dai calcoli di distanza. Quando viene introdotto un nuovo punto di query, l'algoritmo cerca nel set di dati memorizzato per trovare il numero 'K' di campioni di addestramento più vicini al nuovo input.

  1. Misurazione della distanza: Il sistema calcola la distanza tra il punto di query e ogni altro punto nel database. La metrica più comune è la Euclidean distance, che misura la distanza in linea retta tra i punti. Altre metriche come Manhattan distance (geometria del taxicab) o Minkowski distance possono essere utilizzate a seconda del tipo di dati.

  2. Selezione dei vicini: Dopo aver calcolato le distanze, l'algoritmo le ordina e identifica le prime 'K' voci più vicine.

  3. Processo decisionale: - Per la classificazione: L'algoritmo utilizza un sistema di "voto a maggioranza". L'etichetta di classe che appare più frequentemente tra i K vicini viene assegnata al punto di query. Questo è ampiamente utilizzato nelle attività di base di image classification. - Per la regressione: La previsione viene calcolata mediando i valori dei K vicini più prossimi per stimare una variabile continua.

Scegliere il 'K' giusto#

La selezione del valore ottimale per 'K' è un passaggio critico nell'hyperparameter tuning. La scelta di K influenza significativamente le prestazioni del modello e la sua capacità di generalizzare su nuovi dati.

  • Valore K basso: Un K piccolo (ad es. K=1) rende il modello altamente sensibile al rumore e ai valori anomali nei dati, il che può portare a overfitting.
  • Valore K alto: Un K grande attenua i confini decisionali, riducendo l'effetto del rumore ma potenzialmente sfocando i pattern distinti, il che risulta in underfitting.

Applicazioni nel mondo reale#

Nonostante la sua semplicità rispetto alle reti neurali profonde, KNN rimane altamente rilevante nell'AI moderna, in particolare se combinato con tecniche avanzate di feature extraction.

  • Sistemi di raccomandazione: KNN facilita il collaborative filtering nello streaming multimediale e nell'e-commerce. Identificando utenti con cronologie di visione o comportamenti di acquisto simili (vicini), le piattaforme possono suggerire prodotti che un utente probabilmente apprezzerà in base alle preferenze dei suoi "vicini più prossimi".
  • Rilevamento delle anomalie: Nella sicurezza informatica e nella finanza, KNN viene utilizzato per il anomaly detection. Transazioni o attività di rete vengono mappate in uno spazio di caratteristiche; qualsiasi nuovo punto di dati che cade lontano dai cluster densi di attività "normale" viene segnalato come potenziale frode o violazione della sicurezza.
  • La moderna vector search basata su motori di ricerca spesso si affida ad algoritmi Approximate Nearest Neighbor (ANN)—una variazione ottimizzata di KNN—per recuperare rapidamente immagini simili basate su embeddings ad alta dimensionalità generati da modelli come YOLO26.

Sfide e considerazioni#

Sebbene efficace, KNN affronta la curse of dimensionality. Con l'aumentare del numero di caratteristiche (dimensioni), i punti di dati diventano sparsi e le metriche di distanza perdono la loro efficacia. Inoltre, poiché memorizza tutti i dati di addestramento, KNN può richiedere molta memoria e soffrire di un'alta inference latency su dataset di grandi dimensioni. Per affrontare questo problema, i professionisti spesso pre-elaborano i dati utilizzando tecniche di dimensionality reduction come Principal Component Analysis (PCA) o utilizzano strutture dati specializzate come KD-Trees per accelerare la ricerca. Per il ridimensionamento di livello aziendale dei dataset e dell'addestramento dei modelli, l'utilizzo di Ultralytics Platform può aiutare a gestire le risorse di calcolo richieste per pre-elaborare dati complessi.

Distinguere KNN da K-Means#

È importante differenziare K-Nearest Neighbors da K-Means clustering, poiché i loro nomi simili causano spesso confusione.

  • KNN è un algoritmo di apprendimento supervisionato che utilizza dati etichettati per effettuare previsioni.
  • K-Means è un algoritmo di unsupervised learning utilizzato per raggruppare dati non etichettati in cluster basati su somiglianze strutturali.

Esempio di Implementazione#

Il seguente snippet di codice dimostra un semplice flusso di lavoro di classificazione KNN utilizzando la popolare libreria Scikit-learn. In un contesto di visione artificiale, le "caratteristiche" di input verrebbero tipicamente estratte da un modello di deep learning come YOLO26 prima di essere passate al classificatore KNN.

from sklearn.neighbors import KNeighborsClassifier

# Simulated feature vectors (e.g., extracted from YOLO26) and labels
# Features: [Size, Redness], Labels: 0=Apple, 1=Orange
features = [[0.8, 0.9], [0.9, 0.8], [0.2, 0.3], [0.3, 0.2]]
labels = [0, 0, 1, 1]

# Initialize KNN with 3 neighbors
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(features, labels)

# Predict the class of a new object [Size=0.85, Redness=0.85]
prediction = knn.predict([[0.85, 0.85]])
print(f"Predicted Class: {prediction[0]} (0=Apple, 1=Orange)")

Explore solutions

Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.
Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.
Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.
Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.
Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.
Scopri di più
Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.
Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.
Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.
Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.
Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.
Scopri di più
Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.
Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.
Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.
Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.
Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'AI!

Inizia il tuo viaggio con il futuro del machine learning