Ambos métodos pueden adaptarse al Lazo, en un rango de parámetros de ajuste, para un modelo lineal estándar. Ambos comienzan desde el modelo nulo (todos ceros) y lentamente agregan más predictores. Defina un “punto de cambio” para que sea un parámetro de ajuste en el que un nuevo término ingrese al modelo; en este punto de cambio, el nuevo término sigue siendo cero. Sin embargo, cuando el modelo crezca un poco más, entrará este término. El algoritmo de Lars encuentra exactamente estos puntos de cambio. Cualquier modelo entre estos puntos de cambio se puede encontrar exactamente (hasta un error numérico) mediante el uso de interpolación lineal. Glmnet no encuentra estos puntos de cambio. En cambio, en la configuración predeterminada, encuentra una secuencia de 100 modelos que se eligen de una manera más relacionada con la pérdida Y – X \ beta. Me parece más agradable a este respecto.
Sin embargo, hay dos razones por las que glmnet claramente supera los niveles anteriores porque se ajusta a una clase más amplia de funciones objetivas. Primero, puede encajar en “modelos lineales generalizados penalizados” (de ahí “glm”). En segundo lugar, puede incorporar una regularización de Tikhonov, o penalización de “cresta”, de manera análoga a la red elástica (de ahí la “red”).
Si su variable de resultado (“y”) es un recuento o una variable binaria, claramente querrá usar las capacidades del modelo lineal generalizado dentro de glmnet; vea pensar “función de enlace” en la documentación. La segunda ventaja, la penalización neta elástica, a veces puede mejorar la precisión de la predicción. Creo que esto está sintonizado con \ alpha en la documentación de glmnet.
- ¿Cómo se ajustan los pesos en una red neuronal mientras estoy entrenando la red?
- ¿Cuáles son las unidades de análisis utilizadas en el reconocimiento de voz automático?
- ¿Cómo funcionan los aceleradores de procesador?
- En forma de estudios de caso, ¿cómo utilizan las empresas financieras el aprendizaje automático?
- ¿Debo aplicar PCA antes o después de la selección de funciones?
Una última cosa: descubrí que glmnet se ejecuta un poco más rápido en R. Entonces, para simulaciones, es un poco más fácil.