Ultralytics YOLO27:
Torna al glossario di Ultralytics

K-Nearest Neighbors (KNN)

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

K-vicini più prossimi (KNN) è un algoritmo robusto e intuitivo utilizzato nel campo dell'apprendimento supervisionato per attività di classificazione e regressione. Grazie alla sua semplicità, KNN è spesso classificato come "apprendista pigro" perché non costruisce un modello né apprende parametri durante una fase di addestramento. Memorizza invece l'intero set di dati di addestramento ed esegue i calcoli solo quando viene richiesta una previsione. Il principio fondamentale dell'algoritmo si basa sulla similarità delle caratteristiche: presuppone che i punti dati con attributi simili si trovino vicini gli uni agli altri all'interno di uno spazio delle caratteristiche multidimensionale.

Come funziona l'algoritmo#

Il meccanismo dei K-vicini più prossimi si basa sui calcoli delle distanze. Quando viene introdotto un nuovo punto di query, l'algoritmo cerca nel dataset memorizzato i campioni di addestramento, in numero pari a 'K', 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 distanza euclidea, che misura la distanza in linea retta tra i punti. A seconda del tipo di dati, possono essere utilizzate altre metriche, come la distanza di Manhattan (geometria dei taxi) o la distanza di Minkowski.

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

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

Scegliere il valore corretto di 'K'#

La selezione del valore ottimale di 'K' è un passaggio fondamentale nell'ottimizzazione degli iperparametri. La scelta di K influenza significativamente le prestazioni del modello e la sua capacità di generalizzare a nuovi dati.

  • Valore basso di K: un valore ridotto di K (ad esempio, K=1) rende il modello molto sensibile al rumore e ai valori anomali nei dati, il che può portare all'overfitting.
  • Valore alto di K: un valore elevato di K rende più uniformi i confini decisionali, riducendo l'effetto del rumore ma potenzialmente sfumando schemi distinti, con conseguente underfitting.

Applicazioni nel mondo reale#

Nonostante la sua semplicità rispetto alle reti neurali profonde, KNN rimane molto rilevante nell'AI moderna, in particolare quando viene combinato con tecniche avanzate di estrazione delle caratteristiche.

  • Sistemi di raccomandazione: KNN facilita il filtraggio collaborativo nei servizi di streaming multimediale e nell'e-commerce. Identificando gli utenti con cronologie di visualizzazione o comportamenti di acquisto simili (i vicini), le piattaforme possono suggerire prodotti che probabilmente piaceranno a un utente, sulla base delle preferenze dei suoi "vicini più prossimi".
  • Rilevamento delle anomalie: nella sicurezza informatica e nella finanza, KNN viene utilizzato per il rilevamento delle anomalie. Le transazioni o le attività di rete vengono mappate in uno spazio delle caratteristiche; qualsiasi nuovo punto dati che si trovi lontano dai cluster densi delle attività "normali" viene segnalato come potenziale frode o violazione della sicurezza.
  • Ricerca visiva: i moderni motori di ricerca vettoriale si basano spesso su algoritmi di Nearest Neighbor approssimato (ANN), una variante ottimizzata di KNN, per recuperare rapidamente immagini simili sulla base di embedding ad alta dimensionalità generati da modelli come YOLO26.

Sfide e considerazioni#

Sebbene sia efficace, KNN è soggetto alla maledizione della dimensionalità. All'aumentare del numero di caratteristiche (dimensioni), i punti dati diventano sparsi e le metriche di distanza perdono efficacia. Inoltre, poiché memorizza tutti i dati di addestramento, KNN può richiedere molta memoria e soffrire di un'elevata [latenza di inferenza](https://ultralytics-translation-1.invalid su dataset di grandi dimensioni. Per affrontare questo problema, i professionisti spesso preelaborano i dati utilizzando tecniche di riduzione della dimensionalità come l'Analisi delle componenti principali (PCA) oppure utilizzano strutture dati specializzate come gli alberi KD per velocizzare la ricerca. Per la scalabilità a livello enterprise dei dataset e dell'addestramento dei modelli, l'utilizzo della Ultralytics Platform può aiutare a gestire le risorse di calcolo necessarie per la preelaborazione di dati complessi.

Distinguere KNN da K-Means#

È importante distinguere i K-vicini più prossimi dal clustering K-Means, 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 apprendimento non supervisionato utilizzato per raggruppare dati non etichettati in cluster sulla base di similarità strutturali.

Esempio di implementazione#

Il seguente frammento di codice dimostra un semplice workflow di classificazione KNN utilizzando la popolare libreria Scikit-learn. In un contesto di computer vision, le "caratteristiche" di input verrebbero in genere 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

Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision 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 nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision 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 nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision 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 nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

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

Costruiamo insieme il futuro dell'AI!

Inizia il tuo percorso verso il futuro del machine learning