Aprendizaje profundo Flashcards
Redes convolutivas, Redes recurrentes
¿Qué tipo de problemas puede ser aprendido por un perceptrón?
Lineal
¿Cuál es el rango de la función sigmoide?
(0,1)
¿Cuál es una propiedad sobre el algoritmo ORIGINAL del perceptrón?
Si los datos no son linealmente separables, el algoritmo del percepton no converge y se mantiene ciclando entre algún conjunto de pesos
¿Qué es lo que calcula una neurona?
Una neurona calcula la media de todos los atributos antes de aplicar la salida a la función de activación
¿Qué hace una función de activación?
Agrega no linearidades al modelo
En el contexto del entrenamiento de redes neuronales ¿Qué representa el gradiente?
La tasa de cambio del error con respecto a los pesos
¿Cuál es la función de activación que, en general, no es susceptible al desvanecimiento de gradiente?
ReLU
La última capa de una clasificación binaria debería ser:
Sigmoide
El principal objetivo de backpropagation es:
Propagar el error para ajustar los pesos de la Red Neuronal
¿Qué hacen las capas convolucionales?
Son extractores de características y atributos importantes.
¿Dónde se hace la clasificación final de las entradas del modelo?
La clasificación es hecha en las capas totalmente conectadas al final.
¿Qué es una red neuronal?
Modelo matemático para el aprendizaje inspirado en redes neuronales biológicas. Modela funciones matemáticas desde inputs hasta outputs en función de la estructura y parámetros de la red. Permite aprender los parámetros de la red en función de
datos.
¿Para qué se utiliza el descenso de gradiente en redes neuronales?
Se utiliza para entrenar redes neuronales minimizando las pérdidas.
¿Qué es una red neuronal multicapa?
Red neuronal artificial con una capa de entrada, una
capa de salida y al menos una capa oculta
¿Qué es el backpropagation?
Es un algoritmo para entrenar redes neuronales con
capas ocultas
¿Cómo funciona el backpropagation?
Comenzar con una elección aleatoria de pesos.
Repites:
1. Calcular el error para la capa de salida.
2. Para cada capa, comenzando con la capa de salida y moviéndose
hacia adentro, hacia la primera capa oculta:
* Propagar el error una capa atrás.
* Actualizar pesos.
¿Qués es una red neuronal profunda?
Es una red neuronal con múltiples capas ocultas.
¿Qué es overfitting?
Es cuando un modelo aprende los datos de entrenamiento con demasiada precisión, incluido su ruido y peculiaridades, que le impide generalizar bien a datos nuevos e invisibles
¿Cuáles son técnicas para evitar overfitting?
Dropout
¿Qué es dropout?
Eliminar neuronas (unidades) temporalmente - seleccionadas en
aleatorio: de una red neuronal para evitar
dependencia excesiva de ciertas neuronas
¿Qué es una feed-forward neural network?
Es una red neuronal que tiene conexiones sólo en una dirección
¿Qué es una red neuronal recurrente?
Es una red neuronal que genera resultados que
se retroalimenta con sus propios inputs
¿Qué es modelado de lenguaje?
El modelado de lenguaje es la tarea de predecir qué palabra viene a continuación.
¿Qué es un n-grama?
Un n-grama es un fragmento de n palabras consecutivas.
¿Qué es una red neuronal recurrente?
Es una clase de redes neuronales artificiales diseñadas para procesar datos secuenciales, como texto, voz y series de tiempo, donde el orden de los elementos es importante.
¿Para que se usa el cross entropy?
Es una función de pérdida utilizada en el aprendizaje automático para medir el rendimiento de un modelo de clasificación.
¿Qué es Stochastic Gradient Descent?
El SDG es un método iterativo para optimizar una función objetivo con propiedades de suavidad adecuadas.
Ventajas de RNN
○ Puede procesar cualquier longitud de entrada
○ El cálculo del paso t puede (en teoría) utilizar información de muchos pasos.
atrás
○ El tamaño del modelo no aumenta para un contexto de entrada más largo
○ Se aplican los mismos pesos en cada paso de tiempo, por lo que hay simetría (información
compartir) en cómo se procesan las entradas.
Desventajas de RNN
○ El cálculo recurrente es lento
○ En la práctica, es difícil acceder a la información desde muchos pasos.
atrás
○ Fijado mediante técnicas más avanzadas
¿Qué es una red neuronal convolucional?
Clase de redes neuronales diseñadas para procesar datos en forma de cuadrícula, como imágenes. Son especialmente adecuados para tareas de reconocimiento y procesamiento de imágenes.
¿Qué es pooling?
Reducir el tamaño de un input mediante muestreo de
regiones en el input.
¿Qué es max-pooling?
Pooling eligiendo el valor máximo en
cada región
¿Qué es vanishing gradient?
Es el problema de las magnitudes de gradiente muy divergentes entre las capas anteriores y posteriores que se encuentran al entrenar redes neuronales con retropropagación
¿Qué es exploding gradient?
Es un problema que se presenta durante el entrenamiento de redes neuronales profundas. Se produce cuando los gradientes de la función de pérdida de la red con respecto a los pesos (parámetros) se vuelven excesivamente grandes.
¿Qué es gradient clipping (recorte de gradiente)?
Es la solución al exploding gradient. Si la norma del gradiente es mayor que un cierto umbral, escálelo
hacia abajo antes de aplicar la actualización de SGD
¿Qué es un transformer?
El transformador es una arquitectura de aprendizaje profundo que se basa en el mecanismo de atención de múltiples cabezas. El texto se convierte en representaciones numéricas llamadas tokens, y cada token se convierte en un vector a través de una búsqueda en una tabla de incrustación de palabras (word embedding). En cada capa, cada token se contextualiza dentro del alcance de la ventana de contexto con otros tokens (sin máscara) a través de un mecanismo de atención de múltiples cabezas paralelo, lo que permite que la señal de los tokens clave se amplifique y los tokens menos importantes se reduzcan.
¿Qué es seq2seq?
Seq2seq es una familia de enfoques de aprendizaje automático utilizados para el procesamiento del lenguaje natural. Las aplicaciones incluyen traducción de idiomas, subtítulos de imágenes, modelos conversacionales y resúmenes de texto. Seq2seq utiliza la transformación de secuencias: convierte una secuencia en otra secuencia.
¿Qué es atención en aprendizaje automático?
Es un método que determina la importancia relativa de cada componente de una secuencia en relación con los demás componentes de esa secuencia. En el procesamiento del lenguaje natural, la importancia se representa mediante pesos “suaves” asignados a cada palabra de una oración. En términos más generales, la atención codifica vectores denominados incrustaciones de tokens en una secuencia de ancho fijo que puede tener un tamaño que va desde decenas hasta millones de tokens.
¿Qué es Multi Head Attention?
Es un módulo para mecanismos de atención que ejecuta un mecanismo de atención varias veces en paralelo. Las salidas de atención independientes se concatenan y se transforman linealmente en la dimensión esperada. Intuitivamente, múltiples cabezas de atención permiten atender partes de la secuencia de manera diferente (por ejemplo, dependencias a largo plazo frente a dependencias a corto plazo).