La regularización en regresión (lineal, logística ...) es la forma más popular de reducir el sobreajuste.
Cuando el objetivo es la precisión de la predicción (no explicar), ¿hay alguna buena alternativa a la regularización, especialmente adecuada para grandes conjuntos de datos (mi / billones de observaciones y millones de características)?
regression
regularization
overfitting
Benoit Sanchez
fuente
fuente
Respuestas:
Dos puntos importantes que no están directamente relacionados con su pregunta:
Primero, incluso el objetivo es la precisión en lugar de la interpretación, la regularización sigue siendo necesaria en muchos casos, ya que garantizará la "alta precisión" en el conjunto de datos de pruebas / producción reales, no en los datos utilizados para el modelado.
En segundo lugar, si hay miles de millones de filas y millones de columnas, es posible que no se necesite regularización. Esto se debe a que los datos son enormes y muchos modelos computacionales tienen "potencia limitada", es decir, es casi imposible sobreajustar. Es por eso que alguna red neuronal profunda tiene miles de millones de parámetros.
Ahora, sobre tu pregunta. Como lo mencionaron Ben y Andrey, hay algunas opciones como alternativas a la regularización. Me gustaría agregar más ejemplos.
Utilice un modelo más simple (por ejemplo, reduzca el número de unidades ocultas en la red neuronal. Use un núcleo polinomial de orden inferior en SVM. Reduzca el número de gaussianos en una mezcla de gaussianos, etc.)
Pare temprano en la optimización. (Por ejemplo, reduzca la época en el entrenamiento de redes neuronales, reduzca el número de iteraciones en la optimización (CG, BFGS, etc.)
Promedio en muchos modelos (por ejemplo, bosque aleatorio, etc.)
fuente
Dos alternativas a la regularización:
Geoff Hinton (co-inventor de la propagación posterior) una vez contó una historia de ingenieros que le contaron (parafraseando): "Geoff, no necesitamos abandonar nuestras redes profundas porque tenemos demasiados datos". Y su respuesta fue: "Bueno, entonces usted debe construir redes aún más profundas, hasta que se ajuste por exceso, y luego usar la deserción". Un buen consejo aparte, aparentemente puede evitar la regularización incluso con redes profundas, siempre que haya suficientes datos.
Con un número fijo de observaciones, también puede optar por un modelo más simple. Probablemente no necesite regularización para estimar una intersección, una pendiente y una varianza de error en una regresión lineal simple.
fuente
Algunas posibilidades adicionales para evitar el sobreajuste
Reducción de dimensionalidad
Selección de características (también reducción de dimensionalidad)
Puede realizar una ronda de selección de características (por ejemplo, usando LASSO) para obtener un espacio de características de menor dimensión. Algo como la selección de características con LASSO puede ser útil si algún subconjunto de características grande pero desconocido es irrelevante.
Utilice algoritmos menos propensos al sobreajuste, como el bosque aleatorio. (Dependiendo de la configuración, el número de características, etc., estos pueden ser más costosos computacionalmente que los mínimos cuadrados ordinarios).
Algunas de las otras respuestas también han mencionado las ventajas de las técnicas / algoritmos de refuerzo y embolsado.
Métodos bayesianos
Agregar un previo en el vector de coeficientes y reducir el sobreajuste. Esto está conceptualmente relacionado con la regularización: por ejemplo. La regresión de cresta es un caso especial de estimación máxima a posteriori.
fuente
Si usa un modelo con un solucionador, donde puede definir el número de iteraciones / épocas, puede rastrear el error de validación y aplicar la detención temprana: detenga el algoritmo, cuando el error de validación comience a aumentar.
fuente
Dos pensamientos:
Secundo la estrategia de "usar un modelo más simple" propuesta por Ben Ogorek .
Trabajo en modelos de clasificación lineal realmente escasos con coeficientes enteros pequeños (por ejemplo, máximo 5 variables con coeficientes enteros entre -5 y 5). Los modelos se generalizan bien en términos de precisión y métricas de rendimiento más complicadas (por ejemplo, calibración).
Si puede especificar restricciones adicionales para su modelo (por ejemplo, restricciones de monotonicidad, información adicional), esto también puede ayudar con la generalización al reducir el espacio de hipótesis (consulte, por ejemplo, este documento ).
Esto debe hacerse con cuidado (por ejemplo, es probable que desee comparar su modelo con una línea de base sin restricciones y diseñar su proceso de capacitación de manera que se asegure de que no está restringiendo las restricciones).
fuente