Forum


Reti Neurali? Provi...
 

Reti Neurali? Proviamo a fare un semplice esempio 🙂  

Pagina 1 / 2

Post: 3113
The President
(@divh)
Famed Member
Registrato: 3 annifa

Molti, moltissimi mi chiedono “Ma cosa cavolo sono queste reti neurali?”, se ne sente parlare così tanto ormai e soprattutto l’Autopilot della nostra tanto amata Teslina che nella versione 3 avrà degli Acceleratori NN (dove NN è l’acronimo di Neural Networks in inglese).

Bene, quindi proverò (speriamo di cavarci un ragno dal buco!) a fare un esempio pratico di una NN applicata a cose a noi famigliari.

Ora facciamo una statistica “virtuale” di cosa porta all’acquisto di una Tesla e scegliendo delle condizioni quindi una tabellina scaturita da un potenziale sondaggio.

Come detto metto delle condizioni a caso 🙂 e simulo un sondaggio.

Nel nostro caso è: Si riesce a convincere un interessato ad una Tesla in base alle sue esperienze e sopratutto lo convinco all'acquisto o al Noleggio a Lungo Termine?

 

Dal vivo in Store Facebook Forum Teslari Acquisto Noleggio L.T. Riesco a convincerlo
No Si No Si No No
Si No Si No No
Si No No Si No Si
Si No No Si Si No
No No Si No Si No
Si Si No Si No No
No No No Si Si Si

Questa tabella è quello che viene definito un "dataset", ovvero una serie di situazioni reali dalle quali ci si aspetta che la nostra NN sia in grado di "imparare" per prevedere un risultato.

Distinguiamo le prime 5 colonne come variabili e l'ultima (riesco a convincerlo) come "risposta".

Ora mettiamo il caso che vorremmo tipo indovinare se per le condizioni seguenti il soggetto potremmo convincerlo a noleggiare l'auto una volta vista in store e letto il nostro forum?

Dal Vivo in Store Facebook Forum Teslari Acquisto NLT
Si No Si No Si

Bene … per poter farci qualcosa con queste informazioni tradurremo i “Si” in 1 ed i “No” in 0.

Ma non è sufficiente 🙂 diciamo che dobbiamo affidarci a quello che è un “Neurone Artificiale”.

 

!AIUTO!

 

Quello che vedete in immagine è la rappresentazione di uno dei vari miliardi di neuroni che compongono il nostro cervello, le connessioni in "entrata" (dendriti) e quelle in "uscita" (assoni terminali o bottoni sinaptici) ed il nucleo ... ma qua siam molto oltre la "roba da nerd".

Ora si dovrebbe rappresentare il nostro "neurone d'acquisto tesla" così semplificato:

 

A sinistra abbiamo gli input dati alla macchina (vedi tabella) che equivalgono ai dendriti.

Le frecce invece indicano le "connessioni" e "collegano" appunto i nostri input al corpo principale, più queste connessioni son forti e più le variabili relazionate diventano importanti.

Il corpo centrale si assimila al nucleo che alla fine non fa che sommare le componenti moltiplicate e ridimensionate con i pesi relativi.

L'output (assone) nel nostro caso sarà una funzione di tipo "sigmoide" e restituirà la nostra risposta.

Bene ora quello che va fatto è "dare in pasto" i dati collezionati al nostro neurone in modo che impari ...

!AIUTO!

Se ti fa paura la matematica salta pure questo passaggio 🙂 ma comunque "sarò breve".

 

Il Sigmoide qui sopra rappresentato che corrisponde alla funzione qui sotto lavora su valori compresi tra 0 e 1.

Bene ora van ponderati quelli che sono i pesi e quindi

Il dataset va quindi messo in una matrice nel nostro caso di 7 x 5 mentre il vettore delle risposte (riesco a convincerlo) di 7 x 1.

Ora la nostra NN procederà quindi a ponderare casualmente i pesi cercando di imparare a dare le risposte corrette in base ai dati già inseriti (variabili + risposte).

Lo farà provando a dare delle risposte ad ogni situazione e confrontando i dati reali raccolti, poi calcolerà l'errore (differenza) rimandando l'output nella derivata della sigmoide (backpropagation), in base a quanto avrà sbagliato e a quanto sia importante l'errore, aggiusterà di conseguenza i pesi per poi riprendere il processo di nuovo.

In realtà c'è un dettaglino in quanto invece della derivata della sigmoide possiamo usare anche una approssimazione

x (1-x)

Ma non voglio tediarvi troppo con le cose matematiche...

Però è importante dire che il nostro "neuroncino" dovrà fare i compitini a casa e quindi "ripassare" il tutto almeno un migliaio di volte (non è mai abbastanza 🙂  ).

Bene fatto questo con 2 righe di codice maldestro che magari più avanti condividerò, ecco i "pesi" che escono fuori in base ai dati:

Dal Vivo in Store:  -  3.685983

Facebook:              -12.278145

Forum Teslari:            5.732072

Acquisto:                    9.594078

Noleggio LT:            -7.888415

Quindi potremmo dire che tendendenzialmente Facebook non aiuta ma il nostro forum dei Teslari si e sarà più facile convincere all'acquisto che al noleggio.

Quindi alla domanda iniziale dove si diceva:

Riusciremo a convincere il soggetto se ha visitato il nostro forum e visto l'auto in store?

Risposta: 0.002889887 --> molto vicino allo zero e quindi --> No!

La cosa andrebbe in modo molto diverso se si fosse invece voluto convincere all'acquisto 🙂

Lo so che il tema è poco "user friendly" ma consideriamolo come un primo approccio di spiegazione tentando di essere il più semplici possibile su un tema che semplice non è ma se ne parla veramente tantissimo ed è parte del "cuore" del sistema Autopilot del futuro.

In realtà il numero di variabili ad esempio per l'autopilot è molto più di 5 e si passa per le immagini e non solo valori tipo si e no (0 e 1).

Dove se lo schema del nostro neurone teslaro sarebbe qualcosa di simile...

Uno po' più complesso potrebbe essere per esempio

Mentre questo è solo una parte di quanto si è potuto fare di reverse engineer sul nuovo AP3 di Tesla

Questo invece ad esempio rappresenta una NN per studiare e prevenire terremoti...

12 Replies
Post: 2155
Moderator
(@devix)
Noble Member
Registrato: 2 annifa

Wow!!! Pazzesco.
Non ho avuto problemi a seguire il regolamento, complimenti per la chiarezza di esposizione.
Da profano ti chiedo: che differenza c’è tra una rete neurale e un algoritmo (sistema di algoritmi)?

Risposta
1 Risposta
The President
(@divh)
Registrato: 3 annifa

Famed Member
Post: 3113
Postato da: Devix

Wow!!! Pazzesco.
Non ho avuto problemi a seguire il regolamento, complimenti per la chiarezza di esposizione.
Da profano ti chiedo: che differenza c’è tra una rete neurale e un algoritmo (sistema di algoritmi)?

Ci provo...

Algoritmo è una serie di operazioni semplici eseguite in sequenza

Rete Neurale è un sistema che auto apprende in base ad una serie di dati che gli vengono "dati in pasto"

Risposta
Post: 2155
Moderator
(@devix)
Noble Member
Registrato: 2 annifa

Immaginavo, il primo passo verso Skynet😂😂😂

Risposta
1 Risposta
The President
(@divh)
Registrato: 3 annifa

Famed Member
Post: 3113
Postato da: Devix

Immaginavo, il primo passo verso Skynet😂😂😂

Si va OT ed il rischio di parlare di coivolgimenti militari e politica è moooooolto elevato ... let's keep a low profile! 🙂

Risposta
Post: 630
Owner
(@thedream)
Honorable Member
Registrato: 1 annofa

Leggere questo la mattina presto quando i miei 4 neuroni sono ancora mezzi addormentati, ognuno nel suo angolo del cervello, é come.. che dire.. ricordate la Mafalda dei fumetti? Ecco!

Prometto di rileggerlo perché è molto interessante e sebbene mi sia sempre interessato il tema non ho mai avuto modo di avere una spiegazione e/o di approfondire le mie conoscenze in questo campo.

Grazie DiV@h, come sempre hai una marcia in più (si può ancora dire, ora che sulle elettriche non abbiamo più il cambio?)  😉 

Risposta
Post: 3113
The President
(@divh)
Famed Member
Registrato: 3 annifa
Risposta
Pagina 1 / 2
Share: