Índice del contenido[Esconder][Espectáculo]
- 1. ¿Qué es exactamente el aprendizaje profundo?
- 2. ¿Qué distingue al aprendizaje profundo del aprendizaje automático?
- 3. ¿Cuál es su comprensión actual de las redes neuronales?
- 4. ¿Qué es exactamente un perceptrón?
- 5. ¿Qué es exactamente una red neuronal profunda?
- 6. ¿Qué es exactamente un perceptrón multicapa (MLP)?
- 7. ¿Qué función cumplen las funciones de activación en una red neuronal?
- 8. ¿Qué es exactamente el descenso de gradiente?
- 9. ¿Qué es exactamente la función de costo?
- 10. ¿Cómo pueden las redes profundas superar a las superficiales?
- 11. Describa la propagación directa.
- 12. ¿Qué es la retropropagación?
- 13. En el contexto del aprendizaje profundo, ¿cómo comprende el recorte de gradiente?
- 14. ¿Qué son las funciones Softmax y ReLU?
- 15. ¿Se puede entrenar un modelo de red neuronal con todos los pesos establecidos en 0?
- 16. ¿Qué distingue una época de un lote y una iteración?
- 17. ¿Qué son la normalización y el abandono de lotes?
- 18. ¿Qué separa el descenso de gradiente estocástico del descenso de gradiente por lotes?
- 19. ¿Por qué es crucial incluir no linealidades en las redes neuronales?
- 20. ¿Qué es un tensor en el aprendizaje profundo?
- 21. ¿Cómo elegiría la función de activación para un modelo de aprendizaje profundo?
- 22. ¿Qué quieres decir con CNN?
- 23. ¿Cuáles son las muchas capas de CNN?
- 24. ¿Cuáles son los efectos del ajuste excesivo y deficiente, y cómo puede evitarlos?
- 25. En aprendizaje profundo, ¿qué es un RNN?
- 26. Describa el Adam Optimizer
- 27. Autocodificadores profundos: ¿qué son?
- 28. ¿Qué significa Tensor en Tensorflow?
- 29. Una explicación de un gráfico computacional
- 30. Redes adversariales generativas (GAN): ¿qué son?
- 31. ¿Cómo elegirá la cantidad de neuronas y capas ocultas para incluir en la red neuronal al diseñar la arquitectura?
- 32. ¿Qué tipos de redes neuronales se emplean en el aprendizaje por refuerzo profundo?
- Conclusión
El aprendizaje profundo no es una idea nueva. Las redes neuronales artificiales sirven como la única base del subconjunto de aprendizaje automático conocido como aprendizaje profundo.
El aprendizaje profundo es una imitación del cerebro humano, al igual que las redes neuronales, ya que fueron creadas para imitar el cerebro humano.
Ha habido esto por un tiempo. En estos días, todo el mundo habla de ello, ya que no tenemos tanta potencia de procesamiento o datos como ahora.
En los últimos 20 años, el aprendizaje profundo y el aprendizaje automático surgieron como resultado del aumento espectacular de la capacidad de procesamiento.
Con el fin de ayudarlo a prepararse para cualquier consulta que pueda enfrentar al buscar el trabajo de sus sueños, esta publicación lo guiará a través de una serie de preguntas de entrevista de aprendizaje profundo, que van desde simples a complicadas.
1. ¿Qué es exactamente el aprendizaje profundo?
Si asiste a un deep learning entrevista, sin duda entiende lo que es el aprendizaje profundo. El entrevistador, sin embargo, espera que proporcione una respuesta detallada junto con una ilustración en respuesta a esta pregunta.
Para entrenar redes neuronales para el aprendizaje profundo, se deben usar cantidades significativas de datos organizados o no estructurados. Para encontrar patrones y características ocultas, realiza procedimientos complicados (por ejemplo, distinguir la imagen de un gato de la de un perro).
2. ¿Qué distingue al aprendizaje profundo del aprendizaje automático?
Como una rama de la inteligencia artificial conocida como aprendizaje automático, entrenamos computadoras utilizando datos y técnicas estadísticas y algorítmicas para que mejoren con el tiempo.
como un aspecto de máquina de aprendizaje, el aprendizaje profundo imita la arquitectura de la red neuronal que se ve en el cerebro humano.
3. ¿Cuál es su comprensión actual de las redes neuronales?
Los sistemas artificiales conocidos como redes neuronales se parecen mucho a las redes neuronales orgánicas que se encuentran en el cuerpo humano.
Utilizando una técnica que se asemeja a cómo el cerebro humano funciones, una red neuronal es una colección de algoritmos que tiene como objetivo identificar las correlaciones subyacentes en una pieza de datos.
Estos sistemas adquieren conocimientos específicos de la tarea al exponerse a una variedad de conjuntos de datos y ejemplos, en lugar de seguir reglas específicas de la tarea.
La idea es que, en lugar de tener una comprensión preprogramada de estos conjuntos de datos, el sistema aprenda las características distintivas de los datos que recibe.
Las tres capas de red que se utilizan con mayor frecuencia en las redes neuronales son las siguientes:
- Capa de entrada
- Capa oculta
- Capa de salida
4. ¿Qué es exactamente un perceptrón?
La neurona biológica que se encuentra en el cerebro humano es comparable a un perceptrón. El perceptrón recibe múltiples entradas, que luego realiza numerosas transformaciones y funciones y produce una salida.
En la clasificación binaria se emplea un modelo lineal llamado perceptrón. Simula una neurona con una variedad de entradas, cada una con un peso diferente.
La neurona calcula una función utilizando estas entradas ponderadas y emite los resultados.
5. ¿Qué es exactamente una red neuronal profunda?
Una red neuronal profunda es una red neuronal artificial (ANN) con varias capas entre las capas de entrada y salida (DNN).
Las redes neuronales profundas son redes neuronales de arquitectura profunda. La palabra "profundo" se refiere a funciones con muchos niveles y unidades en una sola capa. Se pueden crear modelos más precisos agregando más capas y más grandes para capturar mayores niveles de patrones.
6. ¿Qué es exactamente un perceptrón multicapa (MLP)?
Las capas de entrada, ocultas y de salida están presentes en las MLP, al igual que en las redes neuronales. Está construido de manera similar a un perceptrón de una sola capa con una o más capas ocultas.
La salida binaria de un perceptrón de una sola capa solo puede categorizar clases separables lineales (0,1), mientras que MLP puede clasificar clases no lineales.
7. ¿Qué función cumplen las funciones de activación en una red neuronal?
Una función de activación determina si una neurona debe activarse o no en el nivel más fundamental. Cualquier función de activación puede aceptar la suma ponderada de las entradas más el sesgo como entrada. Las funciones de activación incluyen la función de paso, Sigmoid, ReLU, Tanh y Softmax.
8. ¿Qué es exactamente el descenso de gradiente?
El mejor enfoque para minimizar una función de costo o un error es el descenso de gradiente. El objetivo es encontrar los mínimos locales-globales de una función. Esto especifica la ruta que debe seguir el modelo para minimizar el error.
9. ¿Qué es exactamente la función de costo?
La función de costo es una métrica para evaluar qué tan bien funciona su modelo; a veces se le conoce como “pérdida” o “error”. Durante la retropropagación, se utiliza para calcular el error de la capa de salida.
Aprovechamos esa inexactitud para promover los procesos de entrenamiento de la red neuronal empujándola hacia atrás a través de la red neuronal.
10. ¿Cómo pueden las redes profundas superar a las superficiales?
Las capas ocultas se agregan a las redes neuronales además de las capas de entrada y salida. Entre las capas de entrada y salida, las redes neuronales superficiales emplean una sola capa oculta, mientras que las redes neuronales profundas utilizan numerosos niveles.
Una red superficial requiere varios parámetros para poder encajar en cualquier función. Las redes profundas pueden adaptarse mejor a las funciones incluso con una pequeña cantidad de parámetros, ya que incluyen varias capas.
Ahora se prefieren las redes profundas debido a su versatilidad para trabajar con cualquier tipo de modelado de datos, ya sea para el reconocimiento de voz o de imágenes.
11. Describa la propagación directa.
Las entradas se transmiten junto con los pesos a la capa enterrada en un proceso conocido como propagación de reenvío.
La salida de la función de activación se calcula en todas y cada una de las capas ocultas antes de que el procesamiento pueda pasar a la capa siguiente.
El proceso comienza en la capa de entrada y progresa hasta la última capa de salida, de ahí el nombre de propagación directa.
12. ¿Qué es la retropropagación?
Cuando se ajustan los pesos y los sesgos en la red neuronal, se usa la retropropagación para reducir la función de costo observando primero cómo cambia el valor.
Comprender el degradado en cada capa oculta simplifica el cálculo de este cambio.
El proceso, conocido como retropropagación, comienza en la capa de salida y retrocede hasta las capas de entrada.
13. En el contexto del aprendizaje profundo, ¿cómo comprende el recorte de gradiente?
Gradient Clipping es un método para resolver el problema de los gradientes explosivos que surgen durante la retropropagación (una condición en la que se acumulan gradientes incorrectos significativos con el tiempo, lo que lleva a ajustes significativos en los pesos del modelo de red neuronal durante el entrenamiento).
La explosión de gradientes es un problema que surge cuando los gradientes aumentan demasiado durante el entrenamiento, lo que hace que el modelo sea inestable. Si el gradiente ha cruzado el rango esperado, los valores del gradiente se empujan elemento por elemento a un valor mínimo o máximo predefinido.
El recorte de gradiente mejora la estabilidad numérica de una red neuronal durante el entrenamiento, pero tiene un impacto mínimo en el rendimiento del modelo.
14. ¿Qué son las funciones Softmax y ReLU?
Una función de activación llamada Softmax produce una salida en el rango entre 0 y 1. Cada salida se divide para que la suma de todas las salidas sea uno. Para las capas de salida, se emplea con frecuencia Softmax.
La Unidad Lineal Rectificada, a veces conocida como ReLU, es la función de activación más utilizada. Si X es positivo, genera X, de lo contrario, genera ceros. ReLU se aplica regularmente a las capas enterradas.
15. ¿Se puede entrenar un modelo de red neuronal con todos los pesos establecidos en 0?
La red neuronal nunca aprenderá a completar un trabajo determinado, por lo que no es posible entrenar un modelo inicializando todos los pesos en 0.
Las derivadas seguirán siendo las mismas para cada peso en W [1] si todos los pesos se inicializan a cero, lo que dará como resultado que las neuronas aprendan las mismas funciones de forma iterativa.
No simplemente inicializar los pesos a 0, sino que a cualquier forma de constante es probable que resulte en un resultado mediocre.
16. ¿Qué distingue una época de un lote y una iteración?
Las diferentes formas de procesamiento de conjuntos de datos y técnicas de descenso de gradiente incluyen lote, iteración y época. Epoch implica una red neuronal de una sola vez con un conjunto de datos completo, tanto hacia adelante como hacia atrás.
Para proporcionar resultados confiables, el conjunto de datos se pasa con frecuencia varias veces, ya que es demasiado grande para pasar en un solo intento.
Esta práctica de ejecutar repetidamente una pequeña cantidad de datos a través de una red neuronal se conoce como iteración. Para garantizar que el conjunto de datos atraviese con éxito las redes neuronales, se puede dividir en varios lotes o subconjuntos, lo que se conoce como procesamiento por lotes.
Según el tamaño de la recopilación de datos, los tres métodos (época, iteración y tamaño del lote) son esencialmente formas de usar el algoritmo de descenso de gradiente.
17. ¿Qué son la normalización y el abandono de lotes?
El abandono evita el sobreajuste de datos al eliminar aleatoriamente las unidades de red visibles y ocultas (por lo general, elimina el 20 por ciento de los nodos). Duplica el número de iteraciones necesarias para que la red converja.
Al normalizar las entradas en cada capa para tener una activación de salida media de cero y una desviación estándar de uno, la normalización por lotes es una estrategia para mejorar el rendimiento y la estabilidad de las redes neuronales.
18. ¿Qué separa el descenso de gradiente estocástico del descenso de gradiente por lotes?
Descenso de gradiente por lotes:
- El conjunto de datos completo se utiliza para construir el gradiente para el gradiente por lotes.
- La enorme cantidad de datos y los pesos que se actualizan lentamente dificultan la convergencia.
Descenso de gradiente estocástico:
- El gradiente estocástico utiliza una sola muestra para calcular el gradiente.
- Debido a los cambios de peso más frecuentes, converge significativamente más rápido que el gradiente del lote.
19. ¿Por qué es crucial incluir no linealidades en las redes neuronales?
No importa cuántas capas haya, una red neuronal se comportará como un perceptrón en ausencia de no linealidades, haciendo que la salida dependa linealmente de la entrada.
Dicho de otro modo, una red neuronal con n capas y m unidades ocultas y funciones de activación lineal es equivalente a una red neuronal lineal sin capas ocultas y con la capacidad de detectar únicamente fronteras de separación lineal.
Sin no linealidades, una red neuronal no puede resolver problemas complicados y categorizar con precisión la entrada.
20. ¿Qué es un tensor en el aprendizaje profundo?
Una matriz multidimensional conocida como tensor sirve como una generalización de matrices y vectores. Es una estructura de datos crucial para el aprendizaje profundo. Las matrices N-dimensionales de tipos de datos fundamentales se utilizan para representar tensores.
Cada componente del tensor tiene el mismo tipo de datos, y este tipo de datos siempre se conoce. Es posible que solo se conozca una parte de la forma, es decir, cuántas dimensiones hay y qué tamaño tiene cada una.
En situaciones en las que las entradas también se conocen por completo, la mayoría de las operaciones producen tensores totalmente conocidos; en otros casos, la forma de un tensor solo se puede establecer durante la ejecución del gráfico.
21. ¿Cómo elegiría la función de activación para un modelo de aprendizaje profundo?
- Tiene sentido emplear una función de activación lineal si el resultado que debe anticiparse es real.
- Se debe utilizar una función sigmoidea si el resultado que debe pronosticarse es una probabilidad de clase binaria.
- Se puede utilizar una función Tanh si la salida proyectada contiene dos clasificaciones.
- Debido a su facilidad de cálculo, la función ReLU es aplicable en una amplia gama de situaciones.
22. ¿Qué quieres decir con CNN?
Las redes neuronales profundas que se especializan en evaluar imágenes visuales incluyen redes neuronales convolucionales (CNN o ConvNet). Aquí, en lugar de redes neuronales donde un vector representa la entrada, la entrada es una imagen multicanal.
Las CNN utilizan perceptrones multicapa de una manera especial que requiere muy poco preprocesamiento.
23. ¿Cuáles son las muchas capas de CNN?
Capa convolucional: la capa principal es la capa convolucional, que tiene una variedad de filtros que se pueden aprender y un campo receptivo. Esta capa inicial toma los datos de entrada y extrae sus características.
Capa ReLU: al hacer que las redes no sean lineales, esta capa convierte los píxeles negativos en cero.
Capa de agrupación: Al minimizar el procesamiento y la configuración de red, la capa de agrupación minimiza gradualmente el tamaño espacial de la representación. La agrupación máxima es el método de agrupación más utilizado.
24. ¿Cuáles son los efectos del ajuste excesivo y deficiente, y cómo puede evitarlos?
Esto se conoce como sobreajuste cuando un modelo aprende las complejidades y el ruido en los datos de entrenamiento hasta el punto en que afecta negativamente el uso de datos nuevos por parte del modelo.
Es más probable que suceda con modelos no lineales que son más adaptables mientras aprenden una función objetivo. Se puede entrenar un modelo para detectar automóviles y camiones, pero es posible que solo pueda identificar vehículos con una forma de caja particular.
Dado que solo se entrenó en un tipo de camión, es posible que no pueda detectar un camión de plataforma. En datos de entrenamiento, el modelo funciona bien, pero no en el mundo real.
Un modelo insuficientemente ajustado se refiere a uno que no está suficientemente capacitado en datos o no es capaz de generalizar a nueva información. Esto suele ocurrir cuando se entrena un modelo con datos insuficientes o inexactos.
Tanto la precisión como el rendimiento se ven comprometidos por la falta de ajuste.
Volver a muestrear los datos para estimar la precisión del modelo (validación cruzada de K-fold) y usar un conjunto de datos de validación para evaluar el modelo son dos formas de evitar el ajuste excesivo y el ajuste insuficiente.
25. En aprendizaje profundo, ¿qué es un RNN?
Las redes neuronales recurrentes (RNN), una variedad común de redes neuronales artificiales, se conocen con la abreviatura RNN. Se emplean para procesar genomas, escritura a mano, texto y secuencias de datos, entre otras cosas. Para el entrenamiento necesario, los RNN emplean retropropagación.
26. Describa el Adam Optimizer
El optimizador de Adam, también conocido como impulso adaptativo, es una técnica de optimización desarrollada para manejar situaciones ruidosas con gradientes escasos.
Además de proporcionar actualizaciones por parámetro para una convergencia más rápida, el optimizador de Adam mejora la convergencia a través del impulso, asegurando que un modelo no quede atrapado en el punto de silla.
27. Autocodificadores profundos: ¿qué son?
Autocodificador profundo es el nombre colectivo de dos redes simétricas de creencias profundas que generalmente incluyen cuatro o cinco capas superficiales para la mitad de codificación de la red y otro conjunto de cuatro o cinco capas para la mitad de decodificación.
Estas capas forman la base de profundas redes de creencias y están restringidas por las máquinas de Boltzmann. Después de cada RBM, un codificador automático profundo aplica cambios binarios al conjunto de datos MNIST.
También se pueden usar en otros conjuntos de datos en los que se preferirían las transformaciones rectificadas de Gauss a RBM.
28. ¿Qué significa Tensor en Tensorflow?
Esta es otra pregunta de entrevista de aprendizaje profundo que se hace regularmente. Un tensor es un concepto matemático que se visualiza como matrices de dimensiones superiores.
Los tensores son estas matrices de datos que se proporcionan como entrada a la red neuronal y tienen varias dimensiones y clasificaciones.
29. Una explicación de un gráfico computacional
La base de un TensorFlow es la construcción de un gráfico computacional. Cada nodo funciona en una red de nodos, donde los nodos representan operaciones matemáticas y los bordes tensores.
A veces se lo denomina "gráfico de flujo de datos", ya que los datos fluyen en forma de gráfico.
30. Redes adversariales generativas (GAN): ¿qué son?
En Deep Learning, el modelado generativo se logra utilizando redes antagónicas generativas. Es un trabajo no supervisado donde el resultado se produce identificando patrones en los datos de entrada.
El discriminador se usa para categorizar las instancias producidas por el generador, mientras que el generador se usa para producir nuevos ejemplos.
31. ¿Cómo elegirá la cantidad de neuronas y capas ocultas para incluir en la red neuronal al diseñar la arquitectura?
Dado un desafío comercial, la cantidad precisa de neuronas y capas ocultas necesarias para construir una arquitectura de red neuronal no puede determinarse mediante reglas estrictas y rápidas.
En una red neuronal, el tamaño de la capa oculta debe estar en algún lugar en el medio del tamaño de las capas de entrada y salida.
Sin embargo, se puede lograr una ventaja en la creación de un diseño de red neuronal con algunos métodos sencillos:
Comenzar con algunas pruebas sistemáticas básicas para ver qué funcionaría mejor para cualquier conjunto de datos específico en función de la experiencia previa con redes neuronales en entornos similares del mundo real es la mejor manera de abordar cada desafío único de modelado predictivo del mundo real.
La configuración de la red se puede elegir según el conocimiento del dominio del problema y la experiencia previa en redes neuronales. Al evaluar la configuración de una red neuronal, la cantidad de capas y neuronas utilizadas en problemas relacionados es un buen punto de partida.
La complejidad de la red neuronal debe aumentarse gradualmente en función del resultado y la precisión proyectados, comenzando con un diseño de red neuronal simple.
32. ¿Qué tipos de redes neuronales se emplean en el aprendizaje por refuerzo profundo?
- En un paradigma de aprendizaje automático llamado aprendizaje por refuerzo, el modelo actúa para maximizar la idea de la recompensa acumulativa, tal como lo hacen las cosas vivas.
- Los juegos y los vehículos autónomos se describen como problemas que involucran aprendizaje reforzado.
- La pantalla se utiliza como entrada si el problema a representar es un juego. Para producir una salida para las siguientes fases, el algoritmo toma los píxeles como entrada y los procesa a través de muchas capas de redes neuronales convolucionales.
- Los resultados de las acciones del modelo, ya sean favorables o malos, actúan como refuerzo.
Conclusión
Deep Learning ha ganado popularidad a lo largo de los años, con aplicaciones en prácticamente todas las áreas de la industria.
Las empresas buscan cada vez más expertos competentes que puedan diseñar modelos que repliquen el comportamiento humano utilizando enfoques de aprendizaje profundo y aprendizaje automático.
Los candidatos que aumenten su conjunto de habilidades y mantengan su conocimiento de estas tecnologías de vanguardia pueden encontrar una amplia gama de oportunidades laborales con una remuneración atractiva.
Puede comenzar con las entrevistas ahora que tiene una sólida comprensión de cómo responder a algunas de las preguntas de entrevistas de aprendizaje profundo más solicitadas. Da el siguiente paso en función de tus objetivos.
Visita Hashdork´s Serie de entrevistas para prepararse para las entrevistas.
Deje un comentario