7 votos

Cómo evitar el sobreajuste al usar crossvalidación en algoritmos genéticos

Este es un tiempo de set-up, pero la pura reto intelectual valdrá la pena lo prometo ;-)

Tengo datos de marketing, donde existe un tratamiento y un control (i.e un cliente recibe ningún tratamiento). El evento de interés (la obtención de un préstamo) es relativamente poco frecuente (<1%). Mi objetivo es modelar el incremento de elevación entre la tasa de respuesta, el tratamiento y el de control (grupo tratado libro de la tasa de control de grupo de la libreta de tasa) y utilizar el modelo para tomar decisiones acerca de la oms para promover en el futuro.

El grupo tratado es grande (de 600.000 registros) y el control es de aproximadamente un 15% el tamaño.

Este es un ejercicio de marketing y queremos orientar a aquellos que necesitan ser dirigidos a tomar la medida de su interés y no perder fondos en los que va a "hacer de todos modos".

Tengo cientos de variables y han experimentado con diversas formas de Elevar el modelado AKA Neto de Modelos de Elevación. He probado muchos de los estado-de-la-arte de los métodos en la literatura y en la práctica común. Ninguno muy estable en este conjunto de datos por desgracia.

Sé que (teóricamente y después de algunos experimentos) que hay algunas variables que pueden afectar el incremento de ascensor. Así, he creado una matriz con las combinaciones de los niveles de estas variables y el número de registros en el grupo tratado, el número en el grupo de control y el número de eventos de interés en cada uno. Así, a partir de cada fila de la matriz se puede calcular el incremento de ascensor. Hay 84 filas de la matriz.

enter image description here

Yo era pensar en el modelado de este (diferencia) proporción el uso de un beta de la regresión, pero la cuenta en algunas filas son muy repuestos (tal vez no hay registros en el control y con más frecuencia, no hay eventos de interés). Esto se puede ver en la parte superior par de filas de los datos de la muestra anterior.

Comencé a pensar en la búsqueda de la solución óptima a las filas de la matriz para seleccionar. Las filas que se han seleccionado el número de treatedHH y treatedLoans se suman, junto con el control. Estoy buscando maximizar los beneficios que puede ser estimado a partir de estos números.

Me empujaron a los datos a través de un algoritmo genético para determinar las filas que se van a mantener. Tengo una solución que se devuelve y el resultado fue mejor que incluir a todos (que es el caso base). Pero, cuando me encontré con que la selección de la validación de la muestra I de particiones, el resultado no fue así.

Mi pregunta: ¿existe una forma de diseño de la validación cruzada en esta función de aptitud, de modo que la solución no más de fit - supongo que sucedió en mi primer intento.

Aquí es la función de aptitud he utilizado:

calcProfit<-function(selectVec=c())
{

    TreatLoans<-sum(selectVec*dat$TreatedLoans)
    	ControLoans<-sum(selectVec*dat$ControlLoans)
    TreatHH<-sum(selectVec*dat$treatedHH)
    	ControlHH<-sum(selectVec*dat$controlHH)


    Incre.RR<-(TreatLoans/TreatHH)-(ControLoans/ControlHH)
    Incre.Loans<- Incre.RR * TreatHH
    Incre.Rev <- Incre.Loans*1400
    Incre.Profit<- (-1)*(Incre.Rev - (0.48*TreatHH))

    Incre.Profit


}

y la llamada en R: rbga.results = rbga.bin(size=84, zeroToOneRatio=3,evalFunc=calcProfit,iters=5000)

6voto

John Richardson Puntos 1197

La validación cruzada no va a eliminar el exceso de ajuste, tan solo (con suerte) la reducen. Si usted minimizar cualquier estadística con un valor distinto de cero varianza evaluado a través de una muestra finita de datos que hay un riesgo de sobre-ajuste. El más decisiones que tome, mayor es la probabilidad de sobre-ajuste. El más difícil de tratar para minimizar la estadística, la más grande es la posibilidad de ajuste, que es uno de los problemas con el uso de GAs está tratando muy duro para encontrar el mínimo más bajo.

La regularización es probablemente una mejor aproximación si el rendimiento predictivo es lo que es importante, ya que implica menos opciones.

Esencialmente en las estadísticas, la optimización es la raíz de todo ajustada, por lo que la mejor manera de evitar el sobre-ajuste es minimizar la cantidad de optimización de hacer.

0voto

Gaurav Puntos 113

hay solamente un paradigma que puede evitar los modelos de overfiting - de datos de futuro - que por supuesto es VC obligado. Muchos investigadores dicen que VC obligado es un caso de pecimistic pero no entiendo .if allí es solamente una mujer en el espacio, es posible hacer comentario sobre la belleza de la sólo una hembra...

0voto

Tim Puntos 21

No hay nada te impide incluyendo una penalización de regularización en el loop de optimización a ser minimizada, además de mínimos cuadrados. He hecho esto con buenos resultados. Estoy de acuerdo con Dikran que optimización causará todavía por encajar en un modelo de regresión (incluso Cruz validado uno) si no se toman las medidas.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X