Representación

Un modelo de aprendizaje automático no puede ver, escuchar ni percibir ejemplos de entrada de forma directa. En su lugar, debes crear una representación de los datos para proporcionar al modelo un punto de vista útil sobre las cualidades clave de los datos. Es decir, para entrenar un modelo, debes elegir el conjunto de atributos que mejor representen los datos.

Representación

La idea es asignar cada parte del vector de la izquierda a uno o más campos en el vector de atributos de la derecha.

Los datos sin procesar se asignan a un vector de atributos a través de un proceso llamado ingeniería de atributos.
Un ejemplo de una función que se puede copiar directamente desde los datos sin procesar
Un ejemplo de un atributo de string (nombre de la calle) que no se puede copiar directamente desde los datos sin procesar
Asignación de un valor de string (
  • El diccionario asigna cada nombre de calle a un int en {0, ...,V-1}.
  • Ahora, representa un vector one-hot anterior como <i>

Los valores de los atributos deben aparecer con un valor distinto de cero más que unas pocas veces en el conjunto de datos.

my_device_id:8SK982ZZ1242Z

device_model:galaxy_s6

Los atributos deben tener un significado claro y evidente.

user_age:23

user_age:123456789

Las funciones no deben tener valores "mágicos"

(en su lugar, usa un atributo booleano adicional, como is_watch_time_defined).

watch_time: -1.0

watch_time: 1.023

watch_time_is_defined: 1.0

La definición de un elemento no debe cambiar con el tiempo.

(Cuidado con la dependencia de otros sistemas de AA).

city_id:"br/sao_paulo"

inferred_city_cluster_id:219

La distribución no debe tener valores atípicos extremos

Idealmente, todos los atributos se transforman en un rango similar, como (-1, 1) o (0, 5).

Distribución con valores atípicos y una distribución con un límite
Gráfico que muestra una distribución con una curva de ajuste en función de la ubicación
Gráfico que muestra una distribución con una curva de ajuste en función de la ubicación
  • Crear varios discretizaciones booleanas, cada una asignada a un nuevo atributo único
  • Permite que el modelo se ajuste a un valor diferente para cada discretización

CONOCE SUS DATOS

  • Visualizar: Traza histogramas, ordenados del más al menos común.
  • Depuración: ¿Hay ejemplos duplicados? ¿Faltan valores? ¿Valores atípicos? ¿Los datos coinciden con los paneles? ¿Los datos de entrenamiento y validación son similares?
  • Monitor: Cuaniles de funciones, cantidad de ejemplos a lo largo del tiempo