Una rete neurale (chiamata anche ANN o rete neurale artificiale) è una sorta di software per computer, ispirato ai neuroni biologici. I cervelli biologici sono capaci di risolvere problemi difficili, ma ogni neurone è responsabile solo per risolvere una parte molto piccola del problema. Allo stesso modo, una rete neurale è composta da cellule che lavorano insieme per produrre un risultato desiderato, anche se ogni singola cellula è responsabile solo della risoluzione di una piccola parte del problema. Questo è un metodo per creare programmi artificialmente intelligenti.

Le reti neurali sono un esempio di apprendimento automatico, dove un programma può cambiare mentre impara a risolvere un problema. Una rete neurale può essere addestrata e migliorata con ogni esempio, ma più grande è la rete neurale, più esempi ha bisogno di eseguire bene, spesso ha bisogno di milioni o miliardi di esempi nel caso del deep learning.