Glossario

Rete neurale (NN)

Scopri la potenza delle reti neurali, chiave per le innovazioni dell'intelligenza artificiale e del ML come la computer vision, l'NLP e le scoperte dell'apprendimento profondo.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

Le reti neurali (NN), spesso chiamate reti neurali artificiali (ANN), sono modelli computazionali ispirati alla complessa struttura e funzione del cervello umano. Costituiscono una pietra miliare della moderna Intelligenza Artificiale (AI) e dell'Apprendimento Automatico (ML), progettate principalmente per riconoscere schemi intricati all'interno dei dati. Queste reti alimentano molti sistemi intelligenti con cui interagiamo quotidianamente, dai sofisticati strumenti di riconoscimento delle immagini ai servizi avanzati di traduzione linguistica, e sono fondamentali per campi come la computer vision (CV) e l'elaborazione del linguaggio naturale (NLP).

Capire le reti neurali

Una rete neurale è composta da strati di nodi interconnessi, o neuroni. Questi strati includono tipicamente uno strato di input che riceve i dati grezzi (come i valori dei pixel in un'immagine o le parole in una frase), uno o più strati nascosti che elaborano i dati attraverso calcoli e uno strato di output che produce il risultato finale, come un'etichetta di classificazione o un valore previsto. Ogni connessione tra i neuroni ha un "peso", un valore numerico che indica l'importanza della connessione nei calcoli della rete.

I neuroni elaborano i loro input combinati utilizzando una funzione di attivazione, come la ReLU o la Sigmoide, che determina il segnale di uscita che viene trasmesso allo strato successivo. La rete "impara" regolando questi pesi durante un processo di addestramento, in genere utilizzando esempi etichettati in un contesto di apprendimento supervisionato. Algoritmi come la discesa del gradiente e l'algoritmo di retropropagazione sono comunemente utilizzati per modificare iterativamente i pesi al fine di minimizzare una funzione di perdita, che misura la differenza tra le previsioni della rete e i valori effettivi. L'addestramento efficace del modello richiede spesso un'attenta regolazione degli iperparametri e strategie descritte in guide come i nostri Suggerimenti per l'addestramento del modello.

I modelli che impiegano il Deep learning (DL) sono essenzialmente NN con più strati nascosti (da qui "profondi"). Questa profondità consente loro di apprendere modelli molto complessi e caratteristiche gerarchiche da grandi insiemi di dati, rendendoli eccezionalmente efficaci per compiti come il rilevamento di oggetti e la segmentazione di istanze. A differenza dei modelli ML più semplici, come la regressione lineare o le macchine a vettori di supporto (SVM), che potrebbero richiedere l'ingegnerizzazione manuale delle caratteristiche, le NN eccellono nell'estrazione automatica delle caratteristiche da dati grezzi e non strutturati come immagini e testi.

Tipi di reti neurali e distinzioni

Sebbene la struttura di base descritta sopra sia valida in generale, esistono diverse architetture di NN specializzate:

Le NN differiscono in modo significativo dagli algoritmi tradizionali come gli alberi decisionali o i k-Nearest Neighbors (KNN), che funzionano in base a principi diversi e sono spesso meno adatti a dati complessi e ad alta dimensione come le immagini senza un'estesa pre-elaborazione.

Applicazioni delle reti neurali

Le reti neurali sono incredibilmente versatili e sono state applicate in numerosi settori. Ecco due esempi chiave:

  1. Visione artificiale (CV): Le NN, in particolare le CNN, sono la forza trainante dei principali progressi nella CV. Vengono utilizzate per:

  2. Elaborazione del linguaggio naturale (NLP): Le NN, comprese le RNN e i Transformer, hanno rivoluzionato il modo in cui le macchine comprendono e generano il linguaggio umano. Le applicazioni includono:

Strumenti e strutture

Lo sviluppo e l'implementazione delle NN è facilitato da diversi strumenti e framework di deep learning:

  • Biblioteche: Framework come PyTorch e TensorFlow forniscono gli elementi fondamentali e le funzionalità di differenziazione automatica necessarie per l'addestramento delle NN. Keras offre un'API di alto livello spesso utilizzata con TensorFlow.
  • Piattaforme: Ultralytics HUB offre una piattaforma per l'addestramento dei modelli YOLO , la gestione dei dataset e la semplificazione del processo di distribuzione dei modelli.
  • Modelli: Modelli pre-addestrati come quelli di Ultralytics YOLO rappresentano un ottimo punto di partenza per diverse attività di CV e spesso richiedono solo una messa a punto su specifici set di dati. Puoi trovare un confronto tra i diversi modelli YOLO nella nostra documentazione.

La comprensione delle NN è fondamentale per chiunque lavori nel campo dell'IA o del ML, in quanto costituiscono la base di molte soluzioni all'avanguardia in diversi settori, dall'IA nella sanità all'IA nell'agricoltura.

Leggi tutto