Saltar al contenido principal
LibreTexts Español

4.2: Identificar predictores potenciales

  • Page ID
    149812
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    El primer paso para desarrollar el modelo de regresión multifactorial es identificar todos los posibles predictores que podríamos incluir en el modelo. Para el desarrollador novato del modelo, puede parecerle que deberíamos incluir todos los factores disponibles en los datos como predictores, porque es probable que más información sea mejor que no suficiente información. Sin embargo, un buen modelo de regresión explica la relación entre las entradas y la salida de un sistema de la manera más simple posible. Por lo tanto, debemos usar el menor número de predictores necesarios para proporcionar buenas predicciones. Además, el uso de demasiados predictores o redundantes construye el ruido aleatorio en los datos en el modelo. En esta situación, obtenemos un modelo sobreajustado que es muy bueno para predecir las salidas del conjunto de datos de entrada específico utilizado para entrenar el modelo. Sin embargo, no modela con precisión la respuesta general del sistema y no predice adecuadamente la salida del sistema para un rango de entradas más amplio que aquellos en los que fue entrenado. Los predictores redundantes o innecesarios también pueden conducir a inestabilidades numéricas al calcular los coeficientes.

    Debemos encontrar un equilibrio entre incluir muy pocos y demasiados predictores. Un modelo con muy pocos predictores puede producir predicciones sesgadas. Por otro lado, agregar más predictores al modelo siempre provocará que el valor de R2 aumente. Esto puede confundirte haciéndole pensar que los predictores adicionales generaron un mejor modelo. En algunos casos, agregar un predictor mejorará el modelo, por lo que el aumento en el valor de R 2 tiene sentido. En algunos casos, sin embargo, el valor de R 2 aumenta simplemente porque hemos modelado mejor el ruido aleatorio.

    El R 2 ajustado intenta compensar el comportamiento regular de R2 cambiando el valor de R2 de acuerdo con el número de predictores en el modelo. Este ajuste nos ayuda a determinar si agregar un predictor mejora el ajuste del modelo, o si simplemente está modelando mejor el ruido. Se calcula como:

    \(\ R_{adjusted}^2 = {1-\frac{n-1}{n-m}(1-R^2)}\)

    donde n es el número de observaciones y m es el número de predictores en el modelo. Si agregar un nuevo predictor al modelo aumenta el valor R 2 del modelo anterior en más de lo que esperaríamos de las fluctuaciones aleatorias, entonces el R 2 ajustado aumentará. Por el contrario, disminuirá si eliminar un predictor disminuye la R2 en más de lo que esperaríamos debido a variaciones aleatorias. Recordemos que el objetivo es utilizar el menor número posible de predictores, mientras se sigue produciendo un modelo que explique bien los datos.

    Debido a que no sabemos a priori qué parámetros de entrada serán predictores útiles, parece razonable comenzar con todas las columnas disponibles en los datos medidos como el conjunto de predictores potenciales. Enumeramos todos los nombres de las columnas en la Tabla 2.1. Antes de lanzar todas estas columnas al proceso de modelado, sin embargo, necesitamos dar un paso atrás y considerar lo que sabemos sobre el sistema subyacente, para ayudarnos a encontrar cualquier parámetro que obviamente deberíamos excluir desde el principio.

    Hay dos columnas de salida: perf y nperf. El modelo de regresión puede tener solo una salida, sin embargo, por lo que debemos elegir solo una columna para usar en nuestro proceso de desarrollo del modelo. Como se discute en la Sección 4.1, nperf es una transformación lineal de perf que desplaza el rango de salida para que esté entre 0 y 100. Este rango es útil para obtener rápidamente un sentido de la calidad de las predicciones futuras, por lo que decidimos usar nperf como resultado de nuestro modelo e ignorar la columna perf.

    Casi todos los posibles predictores restantes parecen potencialmente útiles en nuestro modelo, por lo que los mantenemos disponibles como posibles predictores por ahora. La única excepción es TDP. El nombre de este factor, potencia de diseño térmico, no indica claramente si esto podría ser un predictor útil en nuestro modelo, por lo que debemos hacer un poco de investigación adicional para entenderlo mejor. Descubrimos [10] que la potencia de diseño térmico es “la cantidad promedio de potencia en vatios que un sistema de enfriamiento debe disipar. También llamada 'guía térmica' o 'punto de diseño térmico', el TDP es proporcionado por el fabricante del chip al proveedor del sistema, quien se espera que construya un estuche que se adapte a los requisitos térmicos del chip”. A partir de esta definición, concluimos que TDP no es realmente un parámetro que afecte directamente el rendimiento. Más bien, es una especificación proporcionada por el fabricante del procesador para garantizar que el diseñador del sistema incluya una capacidad de enfriamiento adecuada en el producto final. Así, decidimos no incluir TDP como predictor potencial en el modelo de regresión.

    Además de excluir algunos factores aparentemente inútiles (como el TDP) al inicio del proceso de desarrollo del modelo, también debemos considerar si debemos incluir algún parámetro adicional. Por ejemplo, los términos en un modelo de regresión se suman linealmente para producir la salida predicha. Sin embargo, los propios términos individuales pueden ser no lineales, como a i x i m, donde m no tiene que ser igual a uno.Esta flexibilidad nos permite incluir potencias adicionales de los factores individuales. Deberíamos incluir estos términos no lineales, sin embargo, solo si tenemos alguna razón física para sospechar que la salida podría ser una función no lineal de una entrada particular.

    Por ejemplo, sabemos por nuestra experiencia previa modelando el rendimiento del procesador que estudios empíricos han sugerido que las tasas de pérdida de caché son aproximadamente proporcionales a la raíz cuadrada del tamaño de la caché [5]. En consecuencia, incluiremos términos para la raíz cuadrada (m = 1/2) de cada tamaño de caché como posibles predictores. También debemos incluir términos de primer grado (m = 1) de cada tamaño de caché como posibles predictores. Finalmente, notamos que solo algunas de las entradas en el marco de datos int00.dat incluyen valores para la caché L3, por lo que decidimos excluir el tamaño de caché L3 como predictor potencial. La explotación de este tipo de conocimiento específico de dominio al seleccionar predictores en última instancia puede ayudar a producir mejores modelos que aplicar ciegamente el proceso de desarrollo del modelo.

    La lista final de posibles predictores que pondremos a disposición para el proceso de desarrollo del modelo se muestra en la Tabla 4.1.

    Cuadro 4.1: La lista de posibles predictores a utilizar en el proceso de desarrollo del modelo.

    Screen Shot 2020-01-09 a las 12.05.10 PM.png


    This page titled 4.2: Identificar predictores potenciales is shared under a CC BY-NC 4.0 license and was authored, remixed, and/or curated by David Lilja (University of Minnesota Libraries Publishing) via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.