Font size
WorksheetsMi primer CNN
Total questions: 36
Worksheet time: 18mins
¿Cuál es el objetivo principal de normalizar las imágenes en el dataset MNIST?
Aumentar el contraste de las imágenes.
Reducir el tamaño de las imágenes.
Facilitar el aprendizaje del modelo al trabajar con valores entre 0 y 1.
Convertir las imágenes a vectores one-hot.
¿Cuál es la ventaja principal de usar `padding='same'` en una capa convolucional?
Reduce el tiempo de entrenamiento.
Permite que la salida tenga las mismas dimensiones que la entrada.
Aumenta la precisión del modelo automáticamente.
Cambia el número de filtros aplicados.
¿Qué hace la función `to_categorical`?
Normaliza los valores de entrada.
Convierte las imágenes a escala de grises.
Codifica etiquetas como vectores con un 1 en la posición correspondiente.
Aplica softmax a las predicciones.
¿Qué representa la matriz de confusión?
Los pesos aprendidos por la red.
La activación de cada neurona.
La comparación entre etiquetas verdaderas y predichas.
El gradiente de pérdida por época.
¿Qué ocurriría si cambiamos la última capa Dense(10) por Dense(8) en este modelo?
El modelo tendría mayor precisión.
El modelo funcionaría correctamente solo con 8 clases.
El modelo fallaría porque hay 10 clases reales.
Nada cambiaría en el modelo.
¿Qué función cumple el optimizador 'adam' en el entrenamiento de la red?
Mezcla varias funciones de pérdida.
Controla el aprendizaje actualizando pesos eficientemente.
Evalúa el rendimiento del modelo.
Genera predicciones automáticas.
¿Cuál es la función de activación más común en capas convolucionales?
Softmax
Sigmoid
ReLU
Tanh
¿Por qué se aplica MaxPooling después de una convolución?
Para aumentar la resolución de la imagen.
Para eliminar canales redundantes.
Para reducir dimensionalidad y conservar características relevantes.
Para normalizar el mapa de activaciones.
¿Qué significa que MNIST tenga un canal?
La imagen está en formato RGB.
Tiene profundidad tridimensional.
Es una imagen en escala de grises.
Usa colores aleatorios.
¿Cuál es el propósito de la función Flatten() en una CNN?
Convertir matrices 2D en vectores 1D
Reducir la imagen a blanco y negro.
Cambiar los filtros de convolución.
Calcular métricas de precisión.
¿Qué es el one-hot encoding?
Proceso para normalizar datos.
Representación de etiquetas como vectores binarios
Técnica para reducir el número de clases
Método para ajustar los pesos del modelo
¿Qué función tiene la capa Dense(128, activation='relu') en una red CNN?
Predice
Calcula la pérdida.
Actúa como capa oculta totalmente conectada
Reduce el número de clases.
¿Por qué se usa validation_data=(X_test, Y_test) en model.fit()?
Para ajustar el batch size.
Para probar el modelo sobre los datos de entrenamiento.
Para seleccionar la mejor función de activación.
Para verificar desempeño con datos no vistos durante entrenamiento.
¿Qué representa la métrica 'accuracy' en el entrenamiento?
El número de filtros utilizados.
La relación entre predicciones correctas y totales
El número de épocas.
El tamaño del dataset.
¿Qué rol cumple callbacks=[PlotLossesKeras()]?
Aplica activación ReLU.
Visualiza en tiempo real las curvas de pérdida y precisión.
Muestra métricas en consola.
Evalúa la matriz de confusión.
model.add(Conv2D(64, (3, 3), activation='relu', padding='valid')) ¿Qué efecto tiene el uso de padding='valid'?
Mantiene igual el tamaño de la imagen.
Rellena con ceros alrededor.
Reduce las dimensiones espaciales.
Incrementa la profundidad del canal.
¿Qué hace esta línea?: X_train = X_train.reshape(-1, 28, 28, 1)
Cambia el tamaño de píxeles a 1x1.
Reestructura los datos para incluir canal de grises.
Normaliza los valores a 1
Convierte etiquetas en vectores
¿Qué hace esta línea?:
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
Ejecutar el entrenamiento.
Aplicar softmax a los datos.
Configurar el modelo con optimizador, pérdida y métricas
Cargar el dataset MNIST.
¿Qué valor devuelve np.argmax([0.1, 0.3, 0.6])?
0
2
1
0.6
¿Qué valor tiene Y_train[3] si la etiqueta original era 3 y se aplicó to_categorical?
3
[0, 0, 0, 1, 0, 0, 0, 0, 0, 0]
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 3, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 3, 0, 0, 0, 0, 0, 0]
¿Qué hace esta línea?: model.add(MaxPooling2D(pool_size=(2,2)))
Duplica la resolución.
Reduce las dimensiones espaciales a la mitad.
Aumenta los canales.
Cambia las etiquetas.
¿Qué hace esta línea?:
plt.imshow(X_test[34].reshape(28, 28), cmap='gray')
Normaliza la imagen
Muestra imagen 34 en escala de grises.
Convierte la imagen a vector
redimensiona la imagen
¿Qué representa axis=1 en np.argmax(Y_test, axis=1)?
Obtiene la clase más probable por fila
Calcula la media.
Suma vertical.
Cambia el batch size.
¿Qué hace model.fit(X_train, Y_train, epochs=10)?
Entrena el modelo durante 10 épocas.
Visualiza el dataset.
Evalúa el modelo.
Convierte etiquetas a números.
¿Cuál es el valor correcto de input_shape para imágenes MNIST?
(28, 28)
(28, 28, 1)
(1, 28, 28)
(3, 28, 28)
¿Qué hace Flatten() antes de Dense()?
Convierte salida 2D en vector 1D.
Normaliza la salida.
Aplica pooling.
Agrega canales de color.
¿Qué tipo de capa es model.add(Dense(10, activation='softmax'))?
Capa de salida para clasificación multiclase.
Capa de pooling.
Capa de entrada.
Capa convolucional.
¿Cómo se normalizan las imágenes de entrada en una CNN
Dividiendo por 10 y usando el canal azul únicamente.
Dividiendo por 255.0 para tener valores entre 0 y 1;
Aplicando pooling sobre cada canal;
Aplicando softmax y luego ReLU a cada canal.
¿En qué casos se debe usar to_categorical y cuándo no es necesario en una CNN?
Siempre que tengamos datos de entrada numéricos.
Cuando se trabaja con etiquetas categóricas para clasificación multiclase.
En regresión lineal para convertir variables independientes.
Solo en redes neuronales profundas sin convoluciones.
¿Qué pasaría si en la línea model.add(Dense(10, activation='softmax')) cambiamos 10 por 8?
El modelo arrojaría error al entrenar porque no coincide con el número de clases.
El modelo se entrenaría más rápido.
La precisión sería mayor automáticamente.
No afectaría porque se usa softmax.
¿Qué efecto tendría eliminar el parámetro padding='same' en una capa convolucional?
Aumentaría el tamaño de salida.
Las dimensiones de salida se reducirían.
No habría ningún cambio.
El modelo se vuelve más lento.
¿Podemos usar un tipo distinto de pooling en cada capa de una red CNN?
Sí, mientras se mantenga la compatibilidad dimensional.
No, todas deben ser iguales.
Solo si usamos solo convoluciones 1D.
No es posible en Keras.
¿Cuáles de las siguientes capas de una red neuronal convolucional (CNN) tienen parámetros entrenables, y cuáles no?
Todas las capas, incluidas MaxPooling2D y Flatten, tienen parámetros que se actualan durante el entrenamiento.
Ninguna capa convolucional tiene parámetros entrenables, solo las densas.
Todas las capas
capas Conv2D
Capa Dense
cuantos mapas de caracteristicas entran a la capa densa
32
64
32+64
48
cuantas caracteristicas entra a la capa densa si en la ulitma capa se aplican 10 filtros 4x4, stride 1 y como entrada un mapa de 10x10, con pading y un max pooling 2x2 stride 2
100
250
10
500
cuantas caracteristicas entra a la capa densa si en la ulitma capa se aplican 10 filtros 4x4 stride 4 y como entrada un mapa de 10x10, sin pading y un max pooling 2x2 stride 2
10
40
4
8
