Ciao e benvenuto all'ultimo passaggio del nostro processo per fare in modo che il cervello abbia una funzione da rendere a sinistra.
Questa è la funzione diretta che propagherà i segnali in tutti gli strati della rete neurale
compresi i tre strati convoluzionali e lo strato completamente connesso.
E quindi questa funzione è la funzione diretta esattamente come per l'auto che si guida da
sola eccetto che questa volta dobbiamo propagare i segnali negli strati convoluzionali prima dello strato completamente connesso.
E la buona notizia è che l'abbiamo già fatto nel passaggio precedente con la funzione di conteggio Newnes.
Quindi abbiamo già il codice per propagare il segnale nel paese.
E così sarà molto veloce.
Combineremo solo ciò che abbiamo fatto qui e ciò che abbiamo fatto per l'auto sottomarina e avremo la
nostra funzione avanzata per il nostro cervello.
Quindi facciamolo.
Introduciamo una nuova funzione qui l'ultima per il cervello e questa funzione è la funzione forward
che prende una discussione.
Bene esattamente come prima di me stesso per riferirsi agli oggetti e X che saranno le prime immagini di input e quindi
saprai che X sarà aggiornato mentre il segnale viene propagato nella nuova rete.
Tutto ok.
Quindi Cullen e poi entriamo nella funzione.
Quindi, come ho appena detto, abbiamo già realizzato il codice per propagare i segnali nei tre strati convoluzionali.
Sono esattamente queste tre righe di codice.
Quindi li copio e li incollo qui e là.
Abbiamo già la nostra propagazione del segnale nei tre strati convoluzionali.
abbiamo solo bisogno di propagare il segnale dai livelli convoluzionali al livello nascosto e poi infine
allo strato di output che si trova all'estremità della rete neurale e per fare questo
dobbiamo prima appiattire il terzo strato convoluzionale che ottenuto qui ricorda che X all'inizio è l'immagine di input.
E così ora
Quindi qui X diventa il primo strato convoluzionale, quindi X diventa il secondo convoluzionale lì.
E poi qui X diventa il terzo convoluzionale lì.
Quindi in questo momento X è il terzo strato convoluzionale.
E ora per prendere lo spianamento ci dobbiamo appiattire questo terzo strato convoluzionale X e per fare questo faremo qualcosa
di molto simile, come abbiamo fatto qui solo questa volta non abbiamo bisogno del numero
di neuroni che abbiamo semplicemente bisogno di appiattire il canali nel terzo convoluzionale lì.
Quindi questo sarà molto più semplice ma molto simile.
E per fare questo bene, prenderemo X di nuovo perché X diventerà lo strato di appiattimento.
Stiamo aggiornando X così x uguale allora riprendiamo X ma questa X è la vecchia X che è il terzo strato
convoluzionale.
Quindi prendiamo il terzo convoluzionale lì, ma poi prendiamo la funzione view a cui applichiamo
gli argomenti.
Il primo è X quella dimensione zero.
pixel di tutti i canali e il terzo strato convoluzionale e li mettiamo uno dopo l'altro in questo
enorme vettore che diventerà questa X qui e questa X diventerà l'input di la rete completamente connessa.
Quindi di nuovo prendiamo la funzione di dimensione per prendere tutti i
Ma non è tutto ciò di cui abbiamo bisogno.
E qui vieni.
E meno uno.
Quindi quel trucco lo puoi trovare nei tutorial di orologi da tasca.
È così che puoi appiattire un convoluzionale sono composti da più canali usando la funzione dimensione.
E, naturalmente, se vuoi maggiori dettagli su come funziona, puoi andare ai tutorial di orologi da tasca.
Fornirò il collegamento.
Così ora che abbiamo ottenuto il nostro appiattimento lì, sai che questo appiattimento diventerà l'input
di una classica rete completamente connessa con una semplice trasmissione lineare del segnale.
E così ora non useremo una funzione di convoluzione per trasmettere il segnale, useremo una
trasmissione lineare con una classe lineare e quindi per rompere la linearità perché quando lavoriamo
con immagini e immagini non abbiamo relazioni lineari.
Bene, useremo una funzione rettificabile per essere in grado di imparare queste relazioni non lineari.
Quindi facciamolo.
Questo è in realtà il prossimo passo.
E così ora è esattamente come quello che abbiamo fatto per l'auto che guida.
Prendiamo X perché vogliamo aggiornarlo di nuovo, vogliamo ora ottenere il livello nascosto.
E quindi prima di tutto quello che facciamo è prendere la nostra piena connessione SE1 perché la connessione completa.
L'FC uno è quello che collega lo strato di appiattimento al nascosto lì e quindi abbiamo
bisogno di prendere SE1 e applicarlo alla X che abbiamo adesso, che è l'allagamento lì.
E non dimentichiamo il sé naturalmente perché ognuno è una variabile della nostra funzione di init.
Così da autodidatta SE1 X e quindi che trasmette linearmente il segnale dal lusinghiero al nascosto lì.
Ma ora abbiamo bisogno di attivare questi neuroni e allo stesso tempo infrangere la legge in caso di erranza.
E questo è esattamente ciò che facciamo con la funzione di attivazione del raddrizzatore.
Quindi ora quello che dobbiamo fare è prendere il nostro modulo funzionale e da questo modulo funzionale prendiamo naturalmente una
funzione rettificabile che è il vero te.
E mettiamo SE1 autodidatta dentro la parentesi.
Va bene quindi ciò che accade in questa riga di codice è che per prima cosa propagiamo i segnali dallo
strato di appiattimento al livello nascosto della rete completamente connessa.
E poi attiviamo i neuroni di questo strato nascosto rompendo l'aria con questa funzione di attivazione
del raddrizzatore e otteniamo la nostra testa lì che è qui perfetta.
E ora abbiamo un ultimo passo per farlo è ovviamente propagare il segnale dal livello nascosto al livello
di output con i neuroni finali di uscita e per fare ciò.
Bene, è molto semplice.
È esattamente come quello che abbiamo fatto con la macchina.
Prendiamo la nostra seconda collezione completa di C2 e la applichiamo naturalmente ai neuroni del livello nascosto
che è adesso x.
Quindi ecco i neuroni qua e là.
Questo tutto xe x qui diventa ovviamente i neuroni di uscita del livello di output contenente i valori del cubo.
Infine, restituiamo semplicemente i neuroni di output x con i valori del cubo.
Così perfetta.
Congratulazioni, abbiamo appena creato un cervello che abbiamo creato il cervello della nostra IA AI con gli occhi e il
resto delle cellule.
Quindi congratulazioni.
Ora è il momento di creare il corpo che sta definendo il modo in cui interpreteremo l'azione.
Dopo tutto, i segnali vengono elaborati nel cervello.
Questo è il nostro secondo grande passo.
Facciamo questo nei prossimi tutorial.
E fino ad allora AI.