Redes N
Redes N
Redes N
Los núcleos
Las redes neuronales son construidas a partir de las neuronas artificiales. Como en las
neuronas de los seres humanos, las neuronas artificiales tienen vías de entrada que llevan las
señales a la neurona, y vías de salida que llevan la señal de salida.
Los valores de las señales de entrada han sido unidas (usualmente en una suma ponderada), y
luego el valor de la salida final de la neurona es definida por una función. ¿Cómo se llama esta
función?
a) Función de Activación
b) Función de Pérdida
c) Función de Transferencia
TEST 02
Cómo entrenar a tu dragón
Por mucho tiempo, las redes neuronales eran sólo un concepto teórico más que una
herramienta práctica. La razón de esto era por la falta de un algoritmo eficiente de
entrenamiento.
Todo esto cambio en 1986 cuando un grupo de autores publicaron un famoso artículo. ¿Qué
algoritmo revolucionario en este artículo hizo que las redes neuronales mejoraran y se
popularizaran?
a) Algoritmo Backpropagation
b) Algoritmo Descenso Gradiente
c) Algoritmo Optimización
TEST 03
Primera Red Neuronal
Complete el código:
# Initialize the model
model = Sequential()
# Add the hidden and the output layer, specify the layer type,
number of units and input/output dimensions
model.add(Dense(units= 8, input_dim= 16, activation = 'relu'))
model.add(Dense(units= 1, activation= 'softmax'))
TEST 04
Capas
Hay muchos tipos de capas en el Aprendizaje Profundo. Un tipo en particular es muy popular y
poderoso cuando es usado para la clasificación de imágenes. ¿Cuál es ese tipo?
a) Capa Convolutional
b) Capa Dropout
c) Capa MaxPooling
d) Capa Flattening
TEST 05
Adivina la arquitectura
Streamify, es una nueva plataforma de transmisión de audio que entro al mercado. Desde el
primer día se encuentran con el siguiente problema: Ya que a diario cargan cientos de nuevos
artistas y canciones no tienen el tiempo para clasificar los contenidos por géneros, lo que
perjudica significativamente a sus usuarios.
Streamify quiere que se entrene un modelo de aprendizaje profundo para realizar esta tarea
automáticamente ya que hay una cantidad gigantesca de datos de audio, cuya dimensión
principal es el tiempo. ¿Cuál de las siguientes redes en la candidata perfecta para extraer
patrones?
a) Redes CNN
b) Redes RNN
c) Redes Feedfordward
TEST 06
Cayendo en la profundidad
Sus datos de entrada son imágenes de dígitos, 28 pixeles de ancho por 28 pixeles de alto, cada
una con una etiqueta que indica cuál de los 10 dígitos posibles está presente en la imagen.
Construya una Red Neuronal Profunda usando las siguientes capas:
Complete el código:
# Initialize the model
model = Sequential()
TEST 07
La Bella y la Bestia
TEST 08
Modelo de una sola línea
Las bibliotecas modernas de Deep Learning ayudan a abstraer cada vez una parte mayor del
trabajo que alguna vez se requirió para construir redes neuronales.
Con solo 10 líneas de código se puede especificar una red extremadamente poderosa que
podría entrenarse durante días, utilizando terabytes de datos.
Pero a veces se puede ir aún más lejos en la abstracción: con la configuración de una red que
se usa frecuentemente, basta con solo cambiar algunos parámetros por lo tanto es una buena
idea usar una función.
return model
TEST 09
Modelo de una sola línea
A veces estos resultados, tienen la forma de matrices planas con valores sin nombre, y se debe
leer la documentación para interpretar cada uno de los significados de estos valores.
Complete la función evaluate_deep_net que formatea y retorna los resultados de una manera
ordenada y comprensible.
TEST 10
Reconocimiento de dígitos con Aprendizaje Profundo
Complete el código para construir una red neuronal profunda para reconocer los dígitos
escritos a mano usando las funciones make_deep_net() y evaluate_deep_net() definidas en los
tests anteriores. Del mismo modo complete el código para entrenar y probar el modelo
utilizando el dataset MNIST, que contiene una colección de imágenes de dígitos individuales
escritos a mano, cada uno de 28x28 pixeles de tamaño. Además el dataset está dividido en un
conjunto de entrenamiento y otro de prueba: (x_train, y_train) y (x_test, y_test)
En la primera imagen se ve que tiene un 0.87 de perdida y tenemos 74.17% de accuracy con
tan solo una época. Mientras que en la segunda se puede ver la mejora con 3 épocas, la
perdida disminuyo en un 0.50 y el accuracy aumento, ahora es 91.29%.
Se puede decir que, mientras más épocas tenga el modelo entrenado, mejores serán los
resultados.