Rete neurale (NN)
Scoprite la potenza delle reti neurali, chiave per le innovazioni nel campo dell'intelligenza artificiale e del ML, come la computer vision, l'NLP e le scoperte nel campo dell'apprendimento profondo.
Una rete neurale (NN) è un modello computazionale ispirato alla struttura e al funzionamento del cervello umano. Costituisce la spina dorsale della maggior parte dei modelli di deep learning (DL) ed è un concetto fondamentale della moderna intelligenza artificiale (AI). Le NN sono progettate per riconoscere i modelli nei dati elaborando le informazioni attraverso strati interconnessi di nodi, o "neuroni". Questa struttura consente loro di apprendere da grandi quantità di dati, rendendoli incredibilmente potenti per compiti complessi come il riconoscimento delle immagini e l'elaborazione del linguaggio naturale (NLP).
Come funzionano le reti neurali?
Una rete neurale è composta da tre tipi principali di strati: uno strato di ingresso, uno o più strati nascosti e uno strato di uscita. Ogni strato contiene neuroni che sono collegati ai neuroni dello strato successivo.
- Livello di ingresso: Questo livello riceve i dati iniziali, come i pixel di un'immagine o le parole di una frase.
- Strati nascosti: Sono gli strati intermedi tra l'ingresso e l'uscita. È qui che avviene la maggior parte della computazione. Ogni neurone applica una trasformazione matematica ai suoi input, che comporta l'apprendimento dei pesi del modello e di una funzione di attivazione come ReLU o Sigmoid per determinare la sua uscita. Le reti con più strati nascosti sono note come reti neurali "profonde".
- Strato di uscita: Questo livello finale produce il risultato, come un'etichetta di classificazione o un valore previsto.
Il processo di apprendimento, noto come addestramento, prevede l'alimentazione della rete con grandi insiemi di dati. La rete fa una previsione, la confronta con il risultato effettivo e calcola un errore utilizzando una funzione di perdita. Utilizza quindi un algoritmo chiamato backpropagation per regolare i pesi delle connessioni in modo da minimizzare l'errore nel corso di molte iterazioni, o epoche. Questo processo è guidato da un algoritmo di ottimizzazione come Adam.
Reti neurali e concetti correlati
È importante distinguere le NN da altri termini correlati:
- Apprendimento automatico e reti neurali: L 'apprendimento automatico (ML) è un campo ampio dell'IA e le NN sono solo un tipo di modello ML. Altri modelli di ML sono gli alberi decisionali e le macchine a vettori di supporto (SVM), che non utilizzano l'architettura a strati dei neuroni.
- Apprendimento profondo e reti neurali: L 'apprendimento profondo è un sottocampo del ML che utilizza specificamente reti neurali profonde, ovvero reti neurali con molti strati nascosti. Pertanto, tutti i sistemi di apprendimento profondo sono basati sulle reti neurali, ma una semplice rete neurale con un solo strato nascosto potrebbe non essere considerata "profonda".
Tipi e applicazioni delle reti neurali
Le reti neurali sono incredibilmente versatili e sono state adattate in varie architetture specializzate. Ecco due esempi chiave:
Visione artificiale (CV): Le reti neurali convoluzionali (CNN) sono la forza dominante nella computer vision.
Elaborazione del linguaggio naturale (NLP): Le NN, comprese le reti neurali ricorrenti (RNN) e i trasformatori, hanno rivoluzionato il modo in cui le macchine elaborano il linguaggio.
Strumenti e strutture
Lo sviluppo di NN è reso accessibile da potenti strumenti e framework.
- Librerie: Framework come PyTorch e TensorFlow forniscono gli elementi essenziali per la creazione e l'addestramento delle NN. Per saperne di più, consultare i siti web ufficiali di PyTorch e TensorFlow.
- Piattaforme: Ultralytics HUB offre una piattaforma integrata per l'addestramento dei modelli YOLO, la gestione dei set di dati e la semplificazione del processo di distribuzione dei modelli.
- Modelli pre-addestrati: Molti ricercatori e sviluppatori iniziano con modelli pre-addestrati disponibili presso hub come Hugging Face o all'interno dell'ecosistema Ultralytics. Questi modelli spesso richiedono solo una messa a punto su un set di dati specifico, con un notevole risparmio di tempo e risorse computazionali. Nella nostra documentazione è possibile confrontare i diversi modelli YOLO.