Suponiendo un conjunto de datos de entrenamiento de [math] N [/ math] ejemplos y que el algoritmo de aprendizaje automático (ML) muestrea ese conjunto de datos con un tamaño de muestra de [math] s [/ math] para evaluar los gradientes en cada paso de actualización. Podemos identificar las siguientes técnicas basadas en gradientes.
- Descenso de gradiente estocástico (SDG): que se encuentra en el extremo usando solo un ejemplo para evaluar los gradientes antes de dar un pequeño paso. Entonces [math] s = 1 [/ math] para SGD.
- El intermediario es el descenso de gradiente por lotes que utiliza un grupo (lote) de ejemplos de modo que el tamaño de la muestra es [matemática] 1 <s <N [/ matemática] para evaluar los gradientes.
- Descenso de gradiente que se encuentra en el otro extremo usando los ejemplos completos de entrenamiento para evaluar los gradientes en cada paso. Por lo tanto, esto tiene un tamaño de muestra [matemática] s = N [/ matemática] y, por lo tanto, es computacionalmente exigente. Esto normalmente se limita a la optimización numérica en matemáticas.
Mirando esos tres enfoques, ¿cuál crees que se puede aplicar comúnmente? SGD, por supuesto, la simplicidad, escalabilidad y efectividad de SGD es muy atractiva para entrenar modelos ML especialmente si los recursos computacionales son insuficientes, como es el caso para la mayoría de los problemas.
En la práctica real, el descenso de gradiente por lotes se usa comúnmente debido a que realiza SGD pero a un costo de cierta sobrecarga computacional proveniente del procesamiento de lotes de ejemplos por paso de actualización. Los dos, SGD y descenso de gradiente normal son solo una forma de descenso de gradiente por lotes con [math] s = 1 [/ math] y [math] s = N [/ math] respectivamente. Al aumentar el tamaño de la muestra [math] s [/ math], el rendimiento aumenta hasta cierto punto cuando el rendimiento comienza a disminuir, por lo tanto, normalmente el tamaño del lote se mantiene razonablemente pequeño y [math] s = 1 [/ math] es un buen Tamaño del lote para la mayoría de los problemas.
- ¿Cuáles son algunos de los desafíos y oportunidades sobresalientes en el análisis predictivo con respecto a la privacidad y la propiedad de los datos, el análisis de los datos del usuario, el escalado de algoritmos y los ecosistemas e intercambios de datos emergentes?
- ¿Cómo califica Kaggle los envíos?
- ¿Qué tan diferente es el aprendizaje automático de las estadísticas?
- ¿Cómo empiezo a analizar una base de datos de análisis web?
- ¿Por qué los NN recurrentes son tan susceptibles al problema del gradiente de fuga?
Entonces
¿La retropropagación de redes neuronales convolucionales utiliza un algoritmo en línea o por lotes?
Bueno, puede usar cualquiera de las tres técnicas mencionadas anteriormente, de las cuales SGD es casi la técnica estándar, pero en la práctica, el descenso de gradiente de lote se usa con un tamaño de lote lo suficientemente grande por razones de precisión. El enfoque por lotes normalmente encuentra valores de parámetros de mayor calidad.
Espero que esto ayude.