Ejemplo de generación de incorporaciones

En este ejemplo, se muestra cómo generar las incorporaciones que se usan en una medida de similitud supervisada.

Imagina que tienes el mismo conjunto de datos de viviendas que usaste cuando creaste una medida de similitud manual:

AtributoTipo
PrecioNúmero entero positivo
Tamaño Valor de punto flotante positivo en unidades de metros cuadrados
Código postalInteger
Cantidad de dormitoriosInteger
Tipo de casaUn valor de texto de "single_family", "multi-family", "apartment", "condo"
Cochera0/1 para no/sí
Colorescategórico multivalente: Uno o más valores de los colores estándar “blanco”, “amarillo”, “verde”, etcétera

Procesamiento previo de datos

Antes de usar datos de atributos como entrada, debes procesarlos previamente. Los pasos de procesamiento previo se basan en los pasos que seguiste cuando creaste una medida de similitud manual. Aquí encontrarás un resumen:

AtributoTipo o distribuciónAcción
PrecioDistribución de Poisson Cuantiza y escala a [0,1].
TamañoDistribución de Poisson Cuantiza y escala a [0,1].
Código postalCategóricos Convertir a longitud, latitud, cuantización y escala a [0,1].
Cantidad de dormitoriosInteger Recorte los valores atípicos y escale a [0,1].
Tipo de casaCategóricos Convertir a codificación one-hot.
Cochera0 o 1 Déjalo así.
ColoresCategóricos Convertir en valores RGB y procesar como datos numéricos

Para obtener más información sobre la codificación one-hot, consulta Incorporaciones: Datos de entrada categóricos.

Elige el predictor o el codificador automático

Para generar incorporaciones, puedes elegir un codificador automático o un predictor. Recuerda que tu elección es un codificador automático. Debes elegir un predictor si los atributos específicos de tu conjunto de datos determinan la similitud. Para obtener más información, analicemos ambos casos.

Entrena un predictor

Debes elegir esas características como etiquetas de entrenamiento para la DNN que sean importantes a fin de determinar la similitud entre tus ejemplos. Supongamos que el precio es más importante para determinar la similitud entre las casas.

Elige el precio como la etiqueta de entrenamiento y quítala de los datos de atributos de entrada a la DNN. Entrenar la DNN con todas las demás características como datos de entrada Para el entrenamiento, la función de pérdida es simplemente el ECM entre el precio previsto y el real. Para aprender a entrenar una DNN, consulta Entrena redes neuronales.

Entrena un codificador automático

Entrena un codificador automático en nuestro conjunto de datos mediante estos pasos:

  1. Asegúrate de que las capas ocultas del codificador automático sean más pequeñas que las capas de entrada y salida.
  2. Calcula la pérdida para cada resultado como se describe en Medición de similitud supervisada.
  3. Crea la función de pérdida mediante la suma de las pérdidas para cada resultado. Asegúrate de ponderar la pérdida de forma equitativa para cada atributo. Por ejemplo, debido a que los datos de color se procesan en RGB, pondera cada una de las salidas de RGB en un tercio.
  4. Entrena la DNN.

Extrae incorporaciones de la DNN

Después de entrenar tu DNN, ya sea el predictor o el codificador automático, extrae la incorporación para obtener un ejemplo de la DNN. Extrae la incorporación mediante los datos de atributos del ejemplo como entrada y lee los resultados de la capa final oculta. Estos resultados forman el vector de incorporación. Recuerda que los vectores de casas similares deben estar más cerca que los vectores de casas diferentes.

A continuación, verás cómo cuantificar la similitud de pares de ejemplos mediante sus vectores de incorporación.