Valores negativos en las predicciones para una variable de respuesta siempre positiva en regresión lineal

8

Estoy tratando de predecir una variable de respuesta en regresión lineal que siempre debe ser positiva (costo por clic). Es una cantidad monetaria. En AdWords, usted paga a Google por los clics en sus anuncios, y un número negativo significaría que Google le paga cuando la gente hace clic: P

Los predictores son todos valores continuos. El Rsquared y el RMSE son decentes en comparación con otros modelos, incluso fuera de muestra:

  RMSE        Rsquared 
1.4141477     0.8207303

No puedo reescalar las predicciones, porque es dinero, por lo que incluso un pequeño factor de reescalado podría cambiar los costos significativamente.

Por lo que entiendo, para el modelo de regresión no hay nada especial en los números cero y negativos, por lo que encuentra el mejor hiperplano de regresión sin importar si la salida es parcialmente negativa.

Este es un primer intento, usando todas las variables que tengo. Entonces hay espacio para el refinamiento.

¿Hay alguna forma de decirle al modelo que la salida no puede ser negativa?

usillos
fuente
66
Puede garantizar predicciones positivas utilizando un modelo lineal generalizado con función de enlace logarítmico. Por cierto, aunque su valor es bastante alentador, una mejor comprobación de si el modelo sigue la forma principal de los datos es un gráfico de residual frente a predicho. Los gráficos de lo observado frente a lo previsto también pueden ayudar a aclarar su problema. R2
Nick Cox
1
@ NickCox dio una sugerencia. Trazaría los datos en más formas que solo residuales vs. predichas. Sin embargo, ciertamente puede reescalar las variables de dinero. Un método común es tomar log (costo) como la variable dependiente. (Creo que esto es equivalente a la función de enlace de registro, pero podría ser más fácil de comprender). El registro (costo) puede, por supuesto, ser negativo. Y los registros de variables de dinero a menudo son razonables porque, por ejemplo, una diferencia entre 0.01 y 0.02 por clic es importante, pero la diferencia entre 1.01 y 10.2 por clic no lo es.
Peter Flom
@ Peter Flom Creo que significaba 1.02 no 10.2.
Nick Cox
1
Una pequeña muestra de datos ayudaría a las personas a ilustrar posibles soluciones.
Glen_b -Reinstate Monica

Respuestas:

4

Supongo que está utilizando el estimador OLS en este modelo de regresión lineal. Puede usar el estimador de mínimos cuadrados con restricciones de desigualdad , que será la solución a un problema de minimización bajo restricciones de desigualdad. Usando la notación matricial estándar (los vectores son vectores de columna), el problema de minimización se establece como

minβ(yXβ)(yXβ)s.t.Zβ0

... donde es , es , es y es la matriz que contiene la serie de regresores fuera de muestra de longitud que se utilizan para la predicción. Tenemos restricciones de desigualdad lineal (y la función objetivo es convexa, por lo que las condiciones de primer orden son suficientes para un mínimo).yn×1Xn×kβk×1Zm×kmm

El lagrangeano de este problema es

L=(yXβ)(yXβ)λZβ=yyyXββXy+βXXβλZβ

=yy2βXy+βXXβλZβ

donde es un vector de columna de multiplicadores Karush -Kuhn -Tucker no negativos. Las condiciones de primer orden son (es posible que desee revisar las reglas para la diferenciación de matrices y vectores)λm×1

Lβ=02Xy+2XXβZλ

β^R=(XX)1Xy+12(XX)1Zλ=β^OLS+(XX)1Zξ[1]

... donde , por conveniencia, y es el estimador que obtendríamos de la estimación de mínimos cuadrados ordinarios.ξ=12λβ^OLS

El método está completamente elaborado en Liew (1976) .

Alecos Papadopoulos
fuente
3
He votado a favor porque es una solución legítima, pero en la práctica es arriesgado. Después de todo, la solución es arbitrariamente sensible a los valores de : un solo valor de alto apalancamiento alejará las estimaciones de un ajuste decente simplemente para imponer la restricción. Por lo tanto, como mínimo, este procedimiento debe ir acompañado de una cuidadosa prueba de bondad de ajuste a los datos. Z
whuber
@whuber Tienes razón. Entonces, OP, camina con cuidado aquí.
Alecos Papadopoulos