Los algoritmos actuales de aprendizaje automático (ML) se basan en la optimización, por lo que el concepto más simple y básico del aprendizaje automático es el del aprendizaje basado en el descenso de gradientes. La mayoría de los algoritmos de ML actuales utilizan una función de pérdida diferenciable para definir algún objetivo y luego usan gradientes para guiar la búsqueda de los parámetros que minimizan la pérdida en todos los ejemplos de entrenamiento, con la regla de actualización en cada paso definido como:
[math] \ Phi_ {t + 1} = \ Phi_ {t} – \ alpha \ frac {\ partial L} {\ partial w} [/ math]
Donde [math] \ Phi [/ math] = parámetros, [math] w [/ math] = pesos, [math] L [/ math] = función de pérdida y [math] \ alpha [/ math] = tasa de aprendizaje.
El otro concepto básico es el uso de la regla de la cadena para acelerar los cálculos de gradiente. Este encadenamiento de derivados comienza desde la capa de salida que está directamente conectada a la función de pérdida, por lo tanto, es más fácil evaluar los gradientes y luego retroceder hacia la capa de entrada. Esto se denomina algoritmo de propagación hacia atrás (backprop) y es uno de los algoritmos más importantes de ML.
El otro concepto importante en ML es el apilamiento de muchas capas simples una sobre la otra. Esto crea una representación jerárquica de datos, con las capas inferiores que capturan características primitivas mientras que las capas superiores capturan representaciones más abstractas en los datos. Esto se denomina aprendizaje profundo (DL) y existen varias variedades de arquitecturas apiladas de capas profundas, como las redes neuronales convolucionales (convNet), buenas para datos espacialmente relacionados y redes neuronales profundas (DNN) completamente conectadas, buenas para la inferencia general.
A veces, la información temporal tiene que procesarse, por lo que aparece el concepto de recurrencia. Por lo tanto, una extensión natural para procesar señales temporales son las llamadas redes neuronales recurrentes (RNN). Básicamente, solo tienen un estado en un momento dado que depende no solo de la entrada actual sino también de los estados anteriores en el tiempo, lo que hace que las redes neuronales recurrentes puedan manejar las dependencias a largo plazo, al menos en papel.
El algoritmo de entrenamiento para RNNs todavía sigue el mismo enfoque basado en gradiente utilizando backprop para evaluar los gradientes de parámetros pero con la capacidad de retroceder a los estados anteriores. Por lo tanto, este backprop modificado se denomina algoritmo de backprop a través del tiempo (BPTT), simplemente simplemente encadena nuevamente la regla.
Sin embargo, los RNNs de vainilla sufren de gradientes de desaparición / explosión fácilmente y, por lo tanto, no pueden lidiar con las dependencias a largo plazo, por lo que las redes de memoria a corto y largo plazo (LSTM) entran en escena. La celda LSTM básicamente tiene una celda de memoria para almacenar información, la celda tiene lectura / escritura y olvida las puertas, todas las cuales son entrenables. Por lo tanto, la LSTM puede decidir recordar un estado pasado durante el tiempo que quiera.
Hay muchos otros conceptos en ML como el concepto de maximización de margen que resulta en las máquinas de vectores de soporte (SVM). El concepto de truco del núcleo para proyectar puntos de datos en un nuevo espacio dimensional superior en el que los vectores se pueden separar fácilmente se usa ampliamente para extender SVM a problemas no linealmente separables.
Espero que esto ayude.