Hola y bienvenidos a la primera parte de la implementación de AI. Parte uno construyendo la IA.
Y como pueden ver, ya agregué una dimensión en la estructura de esta sangría con estas tres secciones que componen
la Parte 1, que muestran claramente cómo vamos a construir esta IA.
Primero vamos a hacer el cerebro.
No hay nada más que la red neuronal, entonces vamos a hacer el cuerpo que definirá cómo
se van a jugar las acciones.
Y una vez que tengamos el cerebro y el cuerpo, los reuniremos para hacer la IA que estará en
la última sección de esta primera parte.
Entonces, ahora ya puede tener una buena visión de la estructura de esta implementación.
Primero hacemos el cerebro, luego hacemos el cuerpo y luego armamos los dos para hacer la IA.
Y luego, esto es todo lo que vamos a comenzar con la primera sección que trata de hacer el cerebro.
Y esto nos va a llevar a tutoriales.
Puedes imaginar que hacer un cerebro no es como hacer un pastel.
Entonces esto requerirá más de un tutorial.
supuesto como de costumbre vamos a representar ese cerebro con una clase porque necesitaremos varias funciones
y para tener una estructura de varias funciones que se organizarán en algún tipo de instrucciones.
Y por
Bueno, por supuesto, necesitamos una clase y esa es Berkeley porque una vez que hicimos esa clase.
Bueno, podremos crear tantos cerebros como queramos creando solo algunos objetos de esta clase.
Así que de nuevo las clases en Python y, en general, los lenguajes de programación orientados a objetos son muy
prácticos porque usted hace un modelo de algo que desea construir y luego puede crear tantos objetos
como desee y tendrán todas las características que usted necesita. definir en la clase.
Y para nuestro cerebro, las características serán, por supuesto.
de entrada a las neuronas de salida que serán, por supuesto, la función de Ford que hará.
Bueno, ante todo la arquitectura de la red neuronal que recuerdo será de CNN y, por supuesto, dos
funciones diferentes, como por ejemplo transmitir las señales de las neuronas
Entonces, hagamos esto, comencemos a hacer el cerebro.
Esto va a ser muy emocionante.
Es una de mis partes favoritas
Y, por lo tanto, vamos directo a eso.
Así que vamos a comenzar presentando la clase por supuesto y vamos a llamar a esta clase.
pero seamos más directos y llamémoslo CNN porque en realidad el cerebro es una red de CNN.
Bueno, dudé en llamarlo cerebro,
Red neuronal convolucional.
Así que mientras miras puedes llamar al cerebro si quieres, pero al menos ahora sabemos lo que estamos construyendo.
Y CNN En cuanto a la red del auto sin conductor heredará desde el final de Mudgal.
Así que recuerda que el final del módulo es lo que ponemos aquí y queremos poder usar todas las herramientas
de este y un módulo y, por lo tanto, queremos utilizar esta técnica en la programación
orientada a objetos que es herencia y que nos permite conocerte usar todas las herramientas de una clase
para padres y esta misma clase va a estar en ese módulo.
Aquí vamos.
Y ahora podemos usar todas las herramientas y objetos al final de ese módulo.
Muy bien, ahora que tenemos nuestra herencia, podemos ingresar a la clase para realizar nuestra primera función.
Y como probablemente adivine, la primera función es la función final que definirá todas las variables de
los futuros objetos cerebrales.
Usted sabe el futuro y los objetos que se crearán.
Está bien, así que hagámoslo.
Def luego dos subrayados en los puntajes de nuevo.
Y ahora tenemos que poner algunas variables.
Entonces, antes que nada, iba a ser yo mismo, por supuesto, para referirme al objeto.
Ahora supongo que estás bastante cómodo con esto, entonces vamos a agregar otra variable que será
el número de acciones en el entorno de Dumah.
Entonces vamos a llamar a esas acciones numéricas.
Cantidad de acciones
Y en realidad esta variable no es obligatoria para la función.
Es solo que si quieres probar la idea, vamos a construir en otros entornos.
Bueno, esto será muy práctico porque importaremos este número de acciones horribles de los contenedores Doom
y Varman con dos discretos y cuando lo hagamos sabremos ingresar el nombre del entorno
haciendo el cero.
Entonces, si quieres saber experimentar con esto en otros entornos y jugar bien a otros juegos, no tendrás nada
que hacer porque este número de acciones obtendrá directamente el número de acciones en el
entorno de Dumor.
Estarás jugando con.
OK, así que eso es todo por los dos argumentos de esta función.
Entonces ahora podemos entrar y recordar lo que tenemos que hacer.
Lo primero que tenemos que hacer es activar la herencia con la superfunción.
Así que eso es exactamente como para el auto sin conductor.
Tomamos la superfunción y luego adentro comenzamos ingresando la clase que definirá la red neuronal
y que es CNN.
Luego tenemos que ingresar a uno mismo para referirnos al objeto.
Pero recuerde que no es todo lo que necesitamos agregar aquí en DOT y luego la función init con algunos paréntesis.
Y al hacerlo, activamos la herencia.
Y ahora podemos usar todas las herramientas desde el final y el módulo.
Está bien, así que ahora creo que es hora de construir la arquitectura de la red neuronal.
Y para que lo recuerden vamos a construir una red neuronal convolucional de CNN simplemente porque
esta vez la IA tendrá ojos y los ojos del ojo serán las capas convolucionales de esta red
neuronal convolucional.
Y luego, después de que ai ai visualice las imágenes con las capas convolucionales, pasará las señales a
un clásico de nuestra red neuronal visual.
Así que ese es el que teníamos antes con capas completamente conectadas.
Y ahí es donde intentará predecir los valores del cubo para cada posible acción que podamos ejecutar.
Para tener en cuenta la arquitectura, primero tendremos algunas capas convolucionales y luego algunas
capas completamente conectadas, y este será el cerebro de nuestra IA.
Entonces, ¿qué vamos a hacer para poder dar un paso atrás en lo que estamos haciendo?
Bueno, vamos a hacer esta arquitectura con las variables que queremos crear.
Entonces hablando de esta arquitectura vamos a construir una CNN con tres capas convolucionales.
Y luego de esa capa oculta que significa que necesitaremos tres conexiones convolucionales
y dos conexiones completas.
Y hablando de conexiones, eso es exactamente lo que vamos a definir que serán las variables para la
clase CNN y, por lo tanto, ahora mismo voy a definir cinco variables.
Tres para las conexiones convolucionales y dos conexiones políticas.
Entonces, hagamos esto.
Vamos a comenzar con las conexiones de convolución.
Así que los llamaré convolución autodidacta.
Uno va a copiar eso y basado en lo bajo.
convolucional y luego esta convolucional obtendrá algunas nuevas imágenes cada una de ellas detectando una característica específica.
Y luego vamos a la autoconvicción y la autoconvicción tres que son conexiones de convolución a
esta primera conclusión. Aquí aplicaremos algo de convolución a las imágenes de entrada para obtener una primera
capa convolucional, luego la segunda contribución aquí tomará la primera convolucional. capa
como entrada y aplicando de nuevo alguna convolución creará una segunda
Así que obtendremos estas nuevas imágenes en forma convolucional y luego aplicaremos esta convolución aquí para conectar
estas nuevas imágenes de esta primera capa convolucional a algunas imágenes nuevas de una segunda capa de
convolución.
Y estas nuevas imágenes nuevamente detectarán algunas características en las imágenes del primer convolucional allí.
Entonces es solo para reforzar la detección futura y luego para la aparición del segundo convolucional
allí.
Aplicamos el tercer convolucional aquí para obtenerlo para cada uno de ellos.
Algunas imágenes más que detectan aún más características dentro de las imágenes de entrada.
Y así, cuanto más hacemos esto, más aplicamos algunas circunvoluciones a las diferentes capas de imágenes.
Bueno, cuanto más podamos detectar algunas características, así es como mediante la detección de características, el ojo comprenderá
dónde están los monstruos, dónde tiene que disparar para matarlos y hacia dónde debería ir.
También detectará las paredes de los obstáculos.
Bueno, literalmente, donde tiene que ir y eso es gracias a lo que todas estas capas convolucionales detectan
en las imágenes originales.
Está bien así que eso es para la parte de la convolución de la CNN.
Pero recuerde que después de las capas convolucionales tenemos que aplanar todos los píxeles obtenidos por las diferentes series de
convoluciones que se aplicaron y aplanando todas las matrices de píxeles obtenemos este vector enorme que
se convertirá en la entrada de una red neuronal artificial clásica.
Y ahí es donde obtenemos nuestras letras completamente conectadas y, por lo tanto, nuestras conexiones.
y allá y la capa de salida compuesta de las neuronas de salida que son los valores clave.
Y ahora lo que tenemos que hacer es crear dos nuevas variables porque vamos a
tener una aquí y otra en esta red neuronal artificial clásica que viene después y por lo tanto necesitamos una conexión completa de
este enorme vector de Flaten a esta aquí y allí y una segunda conexión completa entre éste aquí
Entonces hagamos estas dos primeras conexiones y luego definiremos todas estas conexiones.
Así que pregunta por la banda sonora del código y vamos a llamarlos uno mismo y luego autodidactas a C también.
Muy bien, ahora tenemos todos nuestros objetos de valor y, por supuesto, saber qué tenemos que
hacer está definido con las clases del módulo del motor.
básicamente crearemos la arquitectura de la red neuronal y eso es lo que haremos el próximo mañana.
Entonces eso significa que
Hasta entonces I.