Ciao e benvenuto nella prima parte di questa implementazione di IA parte prima costruendo l'intelligenza artificiale.
E come puoi vedere ho già aggiunto delle dimensioni nella struttura di questa rientranza con queste tre sezioni che
compongono la Parte 1 che mostrano chiaramente come costruiremo questa IA.
Per prima cosa creeremo il cervello.
Non c'è nient'altro che la rete neurale, quindi faremo il corpo che definirà come
le azioni verranno giocate.
E poi, una volta che avremo il cervello e il corpo, li assembleremo per creare l'IA che sarà
nell'ultima sezione di questa prima parte.
Quindi ora puoi già avere una buona visione della struttura di questa implementazione.
Per prima cosa creiamo il cervello, poi creiamo il corpo e poi assembliamo i due per creare l'intelligenza artificiale.
E poi questo è tutto ciò che inizieremo con la prima sezione che riguarda la creazione del cervello.
E questo ci porterà per esercitazioni.
Puoi immaginare che creare un cervello non è come fare una torta.
Quindi questo richiederà più di un tutorial.
al solito, rappresenteremo quel cervello con una classe perché avremo bisogno di diverse funzioni e
per avere una struttura di diverse funzioni che saranno organizzate in una sorta di istruzioni.
Ovviamente, come
Beh, certo, abbiamo bisogno di una lezione e questo è Berkeley perché una volta abbiamo fatto quella lezione.
Bene, saremo in grado di creare il maggior numero di cervelli che vogliamo semplicemente creando alcuni oggetti di questa classe.
Quindi ancora una volta le classi in Python e in generale i linguaggi di programmazione orientati agli oggetti sono molto pratici perché
si crea un modello di qualcosa che si vuole costruire e quindi si è in grado di creare il
numero di oggetti che si desidera e avranno tutte le funzionalità che si definire nella classe.
E per il nostro cervello le caratteristiche saranno ovviamente.
neuroni di input ai neuroni di output che sarà ovviamente la funzione Ford che realizzerà.
Beh, prima di tutto l'architettura della rete neurale che ricordo sarà della CNN e naturalmente due
funzioni diverse come ad esempio il passaggio dei segnali dai
Facciamo così, iniziamo a fare il cervello.
Sarà molto eccitante.
È una delle mie parti preferite.
E quindi entriamo subito.
Quindi inizieremo con l'introduzione della classe, ovviamente, e chiameremo questa classe.
cervello ma siamo più diretti e chiamiamolo CNN perché in realtà il cervello è una rete della CNN.
Beh, ho esitato a chiamarlo
Rete neurale involutiva.
Quindi mentre guardi puoi chiamare il cervello se vuoi, ma almeno ora sappiamo cosa stiamo costruendo.
E la CNN per quanto riguarda la rete della macchina auto-guida erediterà dalla fine di Mudgal.
Quindi ricorda che la fine del modulo è ciò che mettiamo qui e vogliamo essere in grado di utilizzare tutti
gli strumenti di questo e di un modulo e quindi vogliamo usare questa tecnica nella programmazione
orientata agli oggetti che è ereditaria e che ci consente di sapere bene usa tutti gli strumenti di
una classe genitore e questa stessa classe sarà su quel modulo.
Eccoci.
E ora possiamo usare tutti gli strumenti e gli oggetti alla fine di quel modulo.
Bene, ora che abbiamo la nostra eredità, possiamo andare in classe per fare la nostra prima funzione.
E come probabilmente intuisci la prima funzione è la funzione finale che definirà tutte le variabili
dei futuri oggetti cerebrali.
Conosci il futuro e gli oggetti che verranno creati.
Va bene, facciamolo
Def quindi due underscore in esso per i punteggi di nuovo.
E ora abbiamo bisogno di mettere alcune variabili.
Quindi, prima di tutto, stavo per essere io che ovviamente si riferisce all'oggetto.
Ora credo che tu sia abbastanza a tuo agio con questo, quindi aggiungeremo un'altra variabile
che sarà il numero di azioni nell'ambiente di Dumah.
Quindi chiameremo quelle azioni numeriche.
Numero di azioni
E in realtà questa variabile non è obbligatoria per la funzione.
È solo che se vuoi mettere alla prova l'idea che costruiremo su altri ambienti.
Beh, questo sarà molto pratico perché importeremo questo numero di azioni orribili dal doom e
dai wrapper di Varman con due discreti e quando lo faremo sapremo inserire il
nome dell'ambiente da zero.
Quindi, se vuoi farti sperimentare con questo su altri ambienti e giocare bene con altri giochi, non avrai
nulla da fare perché questo numero di azioni otterrà direttamente il numero di azioni
nell'ambiente di Dumor.
Ti divertirai.
OK, questo è tutto per i due argomenti di questa funzione.
Quindi ora possiamo entrare e ora ricordare cosa dobbiamo fare.
La prima cosa che dobbiamo fare è attivare l'ereditarietà con la superfunzione.
Quindi è esattamente come per l'auto che guida.
Prendiamo la superfunzione, quindi iniziamo inserendo la classe che definirà la rete neurale e
che è la CNN.
Quindi dobbiamo inserire self per riferirsi all'oggetto.
Ma ricorda che non è tutto quello che dobbiamo aggiungere qui al DOT e poi la funzione init con alcune parentesi.
E facendo ciò attiviamo l'eredità.
E ora possiamo usare tutti gli strumenti dalla fine e dal modulo.
Va bene, ora penso che sia tempo di costruire l'architettura della rete neurale.
E così come ricorderai, costruiremo una rete neuronale convoluzionale della CNN semplicemente perché
questa volta l'IA avrà occhi e gli occhi saranno gli strati convoluzionali di questa rete
neurale convoluzionale.
E poi, dopo che i ai visualizzano le immagini con gli strati convoluzionali, passeranno i segnali in
un classico della nostra rete neurale visiva.
Questo è quello che avevamo prima con i livelli completamente connessi.
Ed è qui che proverà a prevedere i valori del cubo per ogni azione possibile che possiamo giocare.
Quindi hai in mente l'architettura, prima avremo alcuni strati convoluzionali e poi alcuni strati
completamente connessi e questo sarà il cervello della nostra intelligenza artificiale.
Quindi, cosa faremo per essere in grado di fare un passo indietro a ciò che stiamo facendo.
Bene, facciamo questa architettura con le variabili che vogliamo creare.
Quindi, parlando di questa architettura, costruiremo una CNN con tre strati convoluzionali.
E poi dopo quello strato nascosto significa che avremo bisogno di tre connessioni convoluzionali
e due connessioni complete.
E parlando di connessioni che è esattamente quello che stiamo per definire saranno le variabili per la classe
CNN e quindi in questo momento ho intenzione di definire cinque variabili.
Tre per le connessioni convoluzionali e due connessioni politiche.
Quindi facciamolo.
Cominceremo con le connessioni di convoluzione.
Quindi li chiamerò convoluzione autodidatta.
Uno andando a copiare quello e basato sul basso.
convoluzionale lì e quindi questo convoluzionale otterrà alcune nuove immagini ognuna di esse rilevando una caratteristica specifica.
E poi passiamo all'autoconcessione e all'autocompattazione tre che sono le connessioni di convoluzione a questa
prima conclusione, qui applicheremo qualche convoluzione alle immagini di input per ottenere un primo strato convoluzionale,
quindi il secondo contributo a qui prenderà il primo convoluzionale strato come
input e applicando di nuovo una convoluzione creerà un secondo
Quindi otterremo queste nuove immagini in modo convoluzionale, quindi applicheremo questa convoluzione qui per connettere queste
nuove immagini da questo primo strato convoluzionale ad alcune nuove immagini di un secondo strato di
convoluzione.
E queste nuove immagini rileveranno ancora alcune caratteristiche nelle immagini del primo convoluzionale lì.
Quindi è solo per rafforzare il rilevamento futuro e quindi per l'emergere del secondo convoluzionale
lì.
Abbiamo applicato il terzo convoluzionale qui per ottenerlo per ciascuno di essi.
Altre immagini che rilevano ancora più funzioni all'interno delle immagini di input.
E così più lo facciamo e più applichiamo alcune convoluzioni ai diversi livelli di immagini.
Bene, più siamo in grado di rilevare alcune caratteristiche ed è così che rilevando le caratteristiche l'occhio
capirà dove sono i mostri dove deve sparare per ucciderli e dove dovrebbe andare.
Rileverà anche i muri gli ostacoli.
Beh, letteralmente dove deve andare e questo è grazie a ciò che tutti questi strati convoluzionali
rilevano nelle immagini originali.
Va bene così è per la parte convoluzione della CNN.
Ma poi ricorda che dopo gli strati convoluzionali dobbiamo appiattire tutti i pixel ottenuti dalle diverse serie di
convoluzioni che sono state applicate e appiattendo tutti gli array di pixel otteniamo questo
enorme vettore che diventerà l'input di una rete neurale artificiale classica.
Ed è qui che riceviamo le nostre lettere completamente collegate e quindi le nostre connessioni.
qua e là e il livello di uscita composto dai neuroni di uscita che sono i valori chiave.
E così ora quello che dobbiamo fare è creare due nuove variabili perché ne
avremo una qua e là in questa classica rete neurale artificiale che verrà dopo e quindi abbiamo bisogno di una connessione completa
da questo enorme vettore Flaten a questo qui e lì e una seconda connessione completa tra questo
Quindi facciamo queste prime due connessioni e poi definiremo tutte queste connessioni.
Quindi chiedi la colonna sonora nel codice che chiameremo sé stesso e poi anche l'autodidatta.
Va bene così ora abbiamo tutti i nostri oggetti di valore e per sapere cosa dobbiamo
fare è definito chiaramente con le classi del modulo motore.
pratica creeremo l'architettura della rete neurale e questo è ciò che faremo nel prossimo domani.
Ciò significa che in
Fino ad allora I.