¿Existe la posibilidad de que el error de entrenamiento aumente junto con el aumento de la complejidad del modelo?

No es que se me ocurra. Pero debe comprender que la bondad de ajuste del modelo no se basa en los datos de entrenamiento, por lo que solo mirar el error de entrenamiento en sí mismo puede ser muy engañoso. Una comprensión clave esencial cuando se construyen modelos es The Bias-Variance Tradeoff. Idealmente, desearía un modelo que funcione bien en el conjunto de entrenamiento y se generalice a datos invisibles, pero esto es típicamente imposible y, por lo tanto, tenemos una compensación. Una vez que comprenda la compensación, debe tomar decisiones sobre la complejidad de su modelo, los datos reales que se usarán para la capacitación, qué modelo usar y qué tan bueno es lo suficientemente bueno, entre otras cosas.

Una de las cosas que he aprendido es que un modelo más simple siempre es preferible a uno más complejo. Digo esto, porque aunque cada modelo y conjunto de datos es un poco diferente, generalmente puede ser muy inteligente y reducir el error al agregar una complejidad loca. Mira el Premio Netflix. Los equipos pudieron hacer mejores predicciones, pero eventualmente las cosas se volvieron tan complejas que la implementación real puede no ser práctica, por lo que usar un modelo más simple, que puede funcionar peor, puede ser más deseable.

Mayor precisión / Menos error no siempre es mejor. Los modelos de datos a menudo deben ser entendidos por personas que no son necesariamente científicos de datos, pero tal vez solo ejecutivos de negocios, personal de marketing, equipos de ventas, etc. Si les das algo muy complejo con muchas palabras griegas y polinomios de alto orden, puede que no Sé muy entusiasta. Necesitan comprender las entradas, cómo están afectando los resultados y cómo todo se relaciona con el negocio. Las covariables como “edad”, “peso”, “colesterol”, etc. serán mucho más interesantes que algunos parámetros gamma que haya encontrado a través de alguna función de perplejidad y otros 50 términos que no entenderán. De esta manera, pueden hacer cambios, obtener información y, de hecho, tener un modelo de trabajo que está en mejora continua … en lugar de una caja negra construida por un tipo inteligente de matemática / computadora.

De todos modos, me desvié bastante, pero mi punto es no enfocarme demasiado en minimizar el error de entrenamiento. Puede ver en su gráfico que publicó que no cambia mucho después de cierto punto, por lo que todo lo que hace es introducir complejidad y, lo que es peor, el error de predicción comienza a aumentar. Así que encuentre el punto óptimo, lo que probablemente significa menos que perfecto en el conjunto de entrenamiento, pero va a generalizar mejor a datos invisibles, que es el punto principal de por qué construye un modelo en primer lugar.

Las redes neuronales funcionan como aproximadores universales de alguna función. Ahora supongamos que un modelo más complejo significa una función más compleja que su NN debe aprender. Entonces tiene más picos y valles. Si te pierdes un extremo local, porque durante el entrenamiento no has presentado un ejemplo cerca de ese extremo local, entonces, obviamente, las predicciones para cerca de este extremo estarán muy lejos, pero si te alejas más, las predicciones pueden ser bastante buenas.

Si ahora agrega un ejemplo de entrenamiento cerca del extremo, las predicciones cercanas a este valor extremo pueden mejorar, pero si se aleja, ha alterado la curva de la función aprendida mientras se estaba desempeñando bastante bien. Por lo tanto, necesita más capacitación (no necesariamente con nuevos datos de prueba: vuelva a entrenar más con el conjunto de prueba anterior pero ahora incluye el ejemplo extremo) para deshacer este efecto.

Todo esto es intuición.

Debería poder acelerar el aprendizaje si, de alguna manera, puede lidiar con los extremos, primero.

Observe también las redes “gaussianas”. Aquí, aproxima una curva al agregar funciones gaussianas cerca de valores extremos. Su influencia es mucho más local.

Sí, puede aumentar con la complejidad del modelo (generalmente cuando ya se encuentra en un nivel muy alto de complejidad y aumentarlo aún más). La intuición (para explicarlo) detrás de esto es que con un modelo muy complejo, el espacio n-dimensional en el que opera el modelo se vuelve muy sensible a los cambios en los pesos y, por lo tanto, a cualquier pequeño cambio (hecho a través de la tasa de aprendizaje * valor derivado del peso) más bien puede empujar algunos pesos para cruzar sus respectivos puntos de inflexión (donde la dirección de la derivada está cambiando) porque la capacitación se realizaba a una tasa de aprendizaje predefinida. Esto puede conducir a un aumento en el error. Tal vez las posibilidades de que ocurra sean menores cuando la tasa de aprendizaje es muy pequeña (supongo, nunca lo intenté), sin embargo, el aprendizaje general puede volverse muy lento o ineficaz en ese caso.

Este aumento en el error de entrenamiento con más complejidad es una de las razones por las cuales se diseñaron las redes residuales.

El error de entrenamiento no aumenta con la complejidad del modelo. A medida que aumenta la complejidad, el modelo se ajusta mejor a los datos y, por lo tanto, se vuelve más sensible a los datos de capacitación. Esto lleva al modelo a sobre ajustar los datos. Nunca me he encontrado con una situación en la que el aumento en la complejidad del modelo haya aumentado el error de entrenamiento.