Datos numéricos: cómo un modelo transfiere datos mediante vectores de atributos

Hasta ahora, te dimos la impresión de que un modelo actúa directamente en las filas de un conjunto de datos. Sin embargo, los modelos, en realidad, transfieren datos de manera un poco diferente.

Por ejemplo, supongamos que un conjunto de datos proporciona cinco columnas, pero solo dos de ellas (b y d) son atributos del modelo. Cuando se procesa el ejemplo de la fila 3, ¿el modelo simplemente toma el contenido de las dos celdas destacadas (3b y 3d) de la siguiente manera?

Figura 1: Un modelo que transfiere un ejemplo directamente desde un conjunto de datos.
            Las columnas b y d de la fila 3 están destacadas.
Figura 1: No es exactamente la forma en que un modelo obtiene sus ejemplos.

De hecho, el modelo transfiere un array de valores de punto flotante llamado vector de características. Puedes pensar en un vector de características como los valores de punto flotante que componen un ejemplo.

Figura 2: El vector de características es un intermediario entre el conjunto de datos
            y el modelo.
Figura 2: Está más cerca de la verdad, pero no es realista.

Sin embargo, los vectores de características rara vez usan los valores sin procesar del conjunto de datos. En cambio, por lo general, debes procesar los valores del conjunto de datos en representaciones de las que tu modelo pueda aprender mejor. Por lo tanto, un vector de características más realista podría verse de la siguiente manera:

Figura 3: El vector de características contiene dos valores de punto flotante: 0.13 y 0.47. Un vector de atributos más realista.
Figura 3: Un vector de atributos más realista.

¿No sería mejor que un modelo generara mejores predicciones si se entrenara con los valores reales del conjunto de datos en lugar de los valores alterados? Sorprendentemente, la respuesta es no.

Debes determinar la mejor manera de representar los valores del conjunto de datos sin procesar como valores entrenables en el vector de atributos. Este proceso se denomina ingeniería de atributos y es una parte vital del aprendizaje automático. Las técnicas de ingeniería de atributos más comunes son las siguientes:

En esta unidad, se explica la normalización y el agrupamiento. En la siguiente unidad, Trabaja con datos categóricos, se abordan otras formas de procesamiento previo, como convertir datos no numéricos, como cadenas, en valores de punto flotante.

Cada valor de un vector de atributos debe ser un valor de punto flotante. Sin embargo, muchas funciones son, de forma natural, cadenas o valores no numéricos. En consecuencia, gran parte de la ingeniería de atributos consiste en representar valores no numéricos como valores numéricos. Verás mucho de esto en módulos posteriores.