Pregunta:
Preparación de datos para regresión
movingabout
2011-03-29 02:53:25 UTC
view on stackexchange narkive permalink

Estoy tratando de predecir los precios de venta de bienes raíces.

  • En mi conjunto de datos hay variables independientes que son tanto nominales como numéricas (metros cuadrados, precios, etc.)
  • Antes de alimentar los datos a cualquier algoritmo de regresión que me gustaría para preprocesarlo correctamente (agrupamiento, normalización de la desviación media / estándar, discretización, etc.)
  • Estoy abrumado por los muchos métodos enumerados en varios libros de texto y trato de averiguar qué funciona bien en la práctica

Aunque la respuesta más razonable a esta pregunta es probablemente 'depende', ¿podrías darme algunas reglas generales / historias de guerra / consejos generales?

  • ¿Cómo generalmente preprocesan los datos para la regresión?
  • ¿Qué métodos aplica habitualmente?
  • ¿Qué algoritmos de regresión necesitan un tratamiento especial?

Como mis herramientas, estoy usando weka y R.

¡Muchas gracias!

Cuatro respuestas:
Dmitrij Celov
2011-03-29 18:38:46 UTC
view on stackexchange narkive permalink

(Puede comenzar desde la sección posterior a la línea, para obtener una respuesta más corta). Para empezar, tiene toda la razón al decir que eso en primer lugar depende de los propósitos de su análisis: previsión del precio medio (a nivel macro) o de un precio particular (a nivel micro), análisis causal de las preferencias del consumidor (distrito, tamaño, edad, número de dormitorios, gas, desplazamientos al trabajo, nivel de ruido, etc. ). En segundo lugar, esta especialización verbal lo guiará a la elección adecuada de un modelo y, finalmente, los requisitos para sus datos .

Por lo que ha escrito, supongo que se ocupa de los modelos de precios inmobiliarios. Después de que se mostró la búsqueda rápida en Google, hay muchas formas de especificar un modelo. Una buena referencia inicial podría ser el artículo de Simon P. Leblond, Comparación de la precisión predictiva de los modelos de precios inmobiliarios: un estudio aplicado para la ciudad de Montreal . Desde el punto de vista práctico, debe elegir entre modelos de regresión aditiva o multiplicativa. Este último tiene varias ventajas en comparación con los modelos aditivos:

  • las estimaciones de los parámetros (pero el término de intersección, el parámetro de regresión basura de todos modos) no se ven afectados por los cambios en la escala
  • parámetros para variables transformadas logarítmicamente tienen una buena interpretación de elasticidad, que ...
  • naturalmente permite rendimientos decrecientes a las restricciones de escala ser restricciones cruciales)
  • si uno estudia los precios promedio, un promedio más sólido es la media geométrica ponderada que el promedio (aunque esto no será demasiado relevante a nivel micro)
  • puede establecer el precio a cero, si, por ejemplo, su apartamento no tiene dormitorios (es difícil hacerlo con modelos aditivos)

Una cosa más importante antes de continuar es pensar en cada una de sus observaciones como un punto de datos único que fue establecido conjuntamente en el mercado por un tomador de decisiones sobre la base de un comportamiento de maximización de la utilidad. Conjuntamente , lo que significa que no se pueden separar las variables entre sí (por ejemplo, el valor de los apartamentos sin dormitorio es cero para la mayoría de los consumidores), pero a un consumidor le pueden gustar o no todos paquete de atributos juntos, después de eso, su presupuesto (dinero en el bolsillo) es todo lo que importa. Por lo tanto, la estandarización es útil para el análisis de la importancia relativa de las variables explicativas, pero tenga cuidado al juzgar qué variables no son significativas (todos los factores pueden ser importantes). La heterogeneidad de preferencias y presupuestos (los compradores son hogares diferentes) en cada caso de su observación también muestra por qué la regresión a nivel micro (sin promediar o algo así) también podría ser engañosa. Finalmente, tiene datos transversales (estáticos). Al tratar de predecir precios para diferentes años (que el año de sus observaciones), las imágenes estáticas funcionan mal para diferentes períodos de tiempo (digamos que construye un modelo basado en los datos del año 2009, no será muy útil predecir retrospectivamente los precios para digamos 2007, o para 2011). Al menos trate de corregir los resultados sobre la base del cambio en el precio promedio para un año en particular en este caso.


Con respecto a sus preguntas particulares (lo que hago personalmente para mis proyectos, o al menos pretendo hacer):

  1. Enumere todas las variables que tiene y sus unidades de medida
  2. Verifique y vuelva a verificar los datos para detectar errores de imputación
  3. Haga más imputación de los puntos con valores perdidos (también puede simplemente excluir las observaciones si tiene un conjunto de datos grande con pocos valores perdidos)
  4. Haga que todas las unidades de medida sean iguales en variables similares (metros cuadrados, unidades monetarias , etc.)
  5. Piense en una estructura de marco de datos simple a la vez (necesita comunicarse con $ R $ convenientemente)
  6. Lleve solo los datos brutos a $ R $, haga todas las transformaciones de log, diferencias y fracciones en $ R $ directamente (los logaritmos son importantes para los modelos multiplicativos, algunas ventajas de uno están en el preludio anterior; las fracciones también son buenas para usted) desea eliminar el efecto de escala (tamaño) de una vez y enfatizar las diferencias causadas por otros factores)
  7. Deje las variables ficticias como están, pero siempre deje un nivel de atributo cualitativo para el término de intersección (si no, este sería una fuente para el problema de multicolinealidad pura en su modelo)
  8. Para sus propósitos, puede aplicar mínimos cuadrados ordinarios (MCO), aunque en los modelos de precios también consideraría los modelos tobit o Heckman, que sí necesitan un tratamiento especial ( Una de mis primeras publicaciones que quizás no sean tan exitosas sobre precios fue sobre esto)
  9. OLS es sencillo y se realiza un análisis residual habitual (que se encuentra en libros de texto sobre econometría) . Violando algunas de las suposiciones, puede optar por métodos generalizados, variables instrumentales, regresión estriada, curas para residuos autorregresivos, pero ... Lo que realmente necesita saber: ¿son las estimaciones de los parámetros teóricamente razonables (valores, signos, etc.)?
  10. Solo un buen número ... cualquier adición de la comunidad es bienvenida.
Iba a escribir una respuesta separada, pero me gusta la tuya. Ampliaría el n. ° 6 para decir que traiga TODOS los datos a R y no tenga prisa por agregarlos, agruparlos, etc. Creo que un error que cometemos los no expertos es forzar los datos en una forma que creemos que ' necesitará, o que hemos visto hacer a otros. Deje que los datos reales y los factores del mundo real detrás de esos datos lo guíen en lugar de suposiciones ingenuas relacionadas con el procesamiento de los datos.
Gracias por una respuesta detallada.¿Cómo encajaría en los pasos de 1) selección de características y 2) verificación de multicolinealidad y eliminación de variables basadas en eso?Además, si desea utilizar KNN para la imputación, ¿hay algún inconveniente en escalar antes de imputar?
IrishStat
2011-03-29 04:57:32 UTC
view on stackexchange narkive permalink

Los precios inmobiliarios que desea predecir son valores consecutivos / cronológicos, es decir, datos de series de tiempo o son precios para diferentes clases, p. ej. precios de este año para diferentes clases para el mismo período de tiempo. Es posible que desee leer algo que escribí sobre estos dos tipos de problemas, ya que advierte que si está tratando con datos longitudinales (series de tiempo), las herramientas de regresión transversal ordinaria no se aplicarán normalmente. Se titula "Regresión vs Box-Jenkins" http://www.autobox.com/pdfs/regvsbox.pdf.

¡Hola! ¡Gracias por la pista! Estoy tratando de predecir los precios de diferentes objetos en función de las propiedades que tienen (por ejemplo, tamaño, ubicación, etc.) independientemente del momento en que se realizó la venta, por lo que no es una serie de tiempo.
Gracias por el buen artículo, lo estoy leyendo ahora. Actualmente estoy trabajando en el uso de electricidad en función de la temperatura exterior y creo que tengo un buen modelo lineal (dos partes: temperatura exterior por debajo de 55F y temperatura exterior por encima de 55F) ... Dicho esto, es posible que desee resumir uno o dos puntos en su respuesta: la política CrossValidated desalienta las respuestas que consisten principalmente en enlaces a sitios que no son sus sitios de referencia básicos como Wikipedia.
@Wayne: Punto tomado. Desde que leyó el artículo, me pregunto si puede ayudarme a seleccionar el "punto o dos" que habría comunicado mis ideas sobre el uso indebido de la regresión para el análisis de datos de series de tiempo. En mi opinión, esta fue una de esas ocasiones en las que se necesitaba más de una oración o un fragmento para comunicar las ideas. ¿Quiere que extraiga el artículo completo y lo pegue en mi respuesta para no reflexionar sobre fuentes ajenas a Wiki?
@Wayne: Hasta el punto que dijo acerca de tener dos modelos lineales agradables, uno para menos de 55F y otro para más de 55F. Anheuser-Busch usó modelos de función de transferencia para lidiar con el hecho de que el consumo de cerveza no se vio afectado por temperaturas por debajo de 65 ° F, sino por temperaturas superiores a 65 ° F. Si desea discutir este modelo que incorporó esta estructura, no dude en contactarme.
Te entiendo. Es un tema complicado, y sin una respuesta a su primera pregunta, no está claro cómo responder al OP. Quizás solo un poco más de información (no soy el experto local, solo alguien que lee mucho CV). Algo como: si intenta hacer análisis de series de tiempo con herramientas de regresión comunes, es posible que le den una falsa sensación de confianza debido a problemas con los residuos correlacionados automáticamente o respuestas sesgadas que no se pueden corregir ni siquiera con grandes cantidades de datos. Exploro los problemas en profundidad en un artículo que escribí: http: ___.
PD En un destello de luz cegador, cegador para mí, probablemente tenue para la mayoría, me di cuenta de que simplemente tenía que crear un factor, el clima, que indicara cuándo la temperatura estaba por encima o por debajo de 55F, y cambiar mi modelo R de lm (diario ~ temp) a lm (~ clima diario / temperatura). Puf, funciona mágicamente, aunque un poco más difícil para mí interpretar los coeficientes.
mark999
2011-03-29 11:38:54 UTC
view on stackexchange narkive permalink

Por lo general, agrupar sus datos es una mala idea porque hará que pierda información, lo que probablemente resultará en una pérdida de energía. Además, rara vez estandarizaría las variables antes de hacer la regresión, aunque a algunas personas les gustaría hacerlo.

Un libro realmente bueno para leer, si puede conseguirlo, es "Regression Modeling Strategies" de Frank Harrell.

Tengo que estar en desacuerdo. Para alguien que ya ha dicho que se siente abrumado por la información disponible, Harrell con su nivel de detalle seguramente empeorará las cosas.
Ralph Winters
2011-03-29 19:11:33 UTC
view on stackexchange narkive permalink

Para el preprocesamiento, siempre me gusta incluir la detección de valores atípicos y la eliminación de datos incorrectos. Si sus datos son de diferentes escalas, normalizar los datos es una buena idea (estandarización). En lo que respecta a la técnica, siempre vale la pena graficar y trazar todas sus variables entre sí, así como con la variable predicha. Eso le dirá mucho sobre qué suposiciones puede hacer sobre los datos, como linealidad, igualdad de varianzas, normalidad y puede ayudarlo mejor a elegir una técnica.



Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 2.0 bajo la que se distribuye.
Loading...