Introduzione

Completato

Il Deep Learning è una forma avanzata di Machine Learning che tenta di emulare il modo in cui il cervello umano impara.

Nel cervello, hai cellule nervose chiamate neuroni, che sono collegati l'uno all'altro da estensioni nervose che passano segnali elettrochimici attraverso la rete.

Un cervello umano con una rete di neuroni

Quando il primo neurone della rete viene stimolato, il segnale di input viene elaborato e se supera una determinata soglia, il neurone viene attivato e passa il segnale ai neuroni a cui è connesso. Questi neuroni a loro volta possono essere attivati e passare il segnale attraverso il resto della rete. Nel corso del tempo, le connessioni tra i neuroni sono rafforzate da uso frequente mentre si impara a rispondere in modo efficace. Ad esempio, se qualcuno lancia una palla verso di te, le connessioni neurali consentono di elaborare le informazioni visive e coordinare i movimenti per catturare la palla. Se esegui ripetutamente questa azione, la rete di neuroni coinvolti nel catturare una palla crescerà più forte mentre impari a essere meglio a prendere una palla.

Il Deep Learning emula questo processo biologico usando reti neurali artificiali che elaborano input numerici anziché stimoli elettrochimici.

Una rete neurale artificiale

Le connessioni nervose in ingresso vengono sostituite da input numerici che vengono in genere identificati come x. Quando sono presenti più valori di input, x viene considerato un vettore con elementi denominati x1, x2 e così via.

Associato a ogni valore x è un peso (w), che viene usato per rafforzare o indebolire l'effetto del valore x per simulare l'apprendimento. Inoltre, viene aggiunto un input di distorsione (b) per abilitare il controllo granulare sulla rete. Durante il processo di training, i valori w e b verranno regolati per ottimizzare la rete in modo che "impari" a produrre output corretti.

Il neurone stesso incapsula una funzione che calcola una somma ponderata di x, w e b. Questa funzione è a sua volta racchiusa in una funzione di attivazione che vincola il risultato (spesso a un valore compreso tra 0 e 1) per determinare se il neurone passa o meno un output al livello successivo dei neuroni nella rete.