Los métodos tradicionales para indicar la población de propaganda (ads) en internet emplean datos demográficos e información del lugar. Se elige un conjunto de lugares y de atributos demográficos para dirigir la propaganda a un segmento de la población en particular. Otro método tradicional emplean los datos de comportamiento del usuario. Los usuarios son colocados en categorías de interés predefinidas. Los grupos no son creados en base a una retroalimentación individual de los anunciantes. El registro se lleva a cabo en base a clics y no a compras.
Se asume que los eventos previos a una conversión (compra de un producto) contienen indicativos de su ocurrencia y se dejan de considerar eventos participantes a los ocurridos después de la compra. El historial se emplea como una secuencia de eventos relativos a un tiempo en el que el usuario es considerado como objetivo. La siguiente figura muestra un ejemplo del historial:
Por su parte, la arquitectura general del sistema se muestra en la siguiente figura:
En el historial de cada usuario se manejan eventos pasivos (visualización de anuncios y visitas a páginas) y activos (consultas en sitios y clics en anuncios). Dado que los intereses del usuario cambian, se considera tener un modelo actual (actualizado cada día). Para llevar esto a cabo, se hace uso de un método incremental para actualizar el perfil. Se usa el formato JSON para representar las actividades de un usuario den disco, mientras que en memoria se hace uso de mapas de C++ (implementados como árboles binarios de búsqueda balanceados).
Se creó un framework encargado de actualizar los valores dentro de los modelos de usuario. Se tienen varios módulos que se encargan de leer del disco el modelo, pasarlo a memoria, agregarlo al modelo que ya estaba en memoria, actualizar los datos y reescribirlo en disco. La arquitectura permite que cada módulo trabaje independientemente. La siguiente figura muestra el framework desarrollado:
Para el entrenamiento de las campañas se hace uso de SVM (Support Vector Machines). Se hace uso de dos conjuntos de datos por separado, los casos positivos (se realizó una compra) y los negativos (no se realizó la compra).
Para las pruebas se emplearon 7.7 billones de usuarios únicos, cada uno con un historial de 2 meses. Se recolectaron datos de 4 semanas de anuncios para 1776 campañas. Se encontraron que para los ejemplos negativos se logra un buen entrenamiento con alrededor de 200,000 casos.
Los resultados respecto al tiempo se muestran a continuación comparados con su sistema previo:
El resto de experimentos comprende la elección de rasgos y los pesos que emplean.
Las aportaciones principales del artículo son:
- Mecanismos para construir perfiles de usuario a escala de la red en forma incremental por día.
- Exploración del procesamiento en memoria para lidiar con billones de registros de usuarios.
- Se presenta una técnica de etiquetamiento escalable al compartir ejemplos negativos de entrenamiento entre las campañas.
- Se prueban distintas técnicas para asignar pesos a los rasgos. Se muestra la importancia de hacer uso de historia reciente sobre actividades más viejas.
- Se muestra la importancia de tener una robusta selección de rasgos para optimizar actuar día con día sin afectar la precisión del modelo.
Aly, M., Hatch, A., Josifovski, V., & Narayanan, V. K. (2012). Web-scale user modeling for targeting. Proceedings of the 21st international conference companion on World Wide Web - WWW ’12 Companion (pp. 3–12). New York, New York, USA: ACM Press. doi:10.1145/2187980.2187982
No comments:
Post a Comment