Autores:
(1) P Aditya Sreekar, Amazon y estos autores contribuyeron igualmente a este trabajo {[email protected]};
(2) Sahil Verm, Amazon y estos autores contribuyeron igualmente a este trabajo {[email protected];}
(3) Varun Madhavan, Instituto Indio de Tecnología, Kharagpur. Trabajo realizado durante la pasantía en Amazon {[email protected]};
(4) Abhishek Persad, Amazon {[email protected]}.
En esta sección, el desempeño del RCT se demuestra en un conjunto de datos de paquetes enviados en 2022. El error absoluto medio (MAE) entre el costo de envío previsto y el real se selecciona como métrica de desempeño, ya que es representativo del error absoluto en términos monetarios. En este artículo, los valores de MAE están normalizados por la estimación heurística de MAE del día 0, que se expresa como porcentaje de MAE (MAE%). Esta métrica enfatiza la mejora lograda con respecto a la línea de base heurística.
4.1.1. Arquitectura e hiperámetros
La dimensión de incrustación se estableció en 128 y se utilizaron 6 capas de codificador de transformador, cada una con 16 cabezales de autoatención. Se utilizó el optimizador Adam (Kingma y Ba, 2014) con una tasa de aprendizaje inicial de 0,0001 y un tamaño de lote de 2048. Para mejorar la convergencia, la tasa de aprendizaje se redujo en un factor de 0,7 cada vez que la métrica de validación se estancó. El código modelo se implementó utilizando los marcos PyTorch (Prokhorenkova et al., 2018) y PyTorch Lightning (Falcon y The PyTorch Lightning team, 2019).
4.1.2. Preparación de datos
Se tomó una muestra de un conjunto de datos de entrenamiento de 10 millones de paquetes enviados durante un período de 45 días en 2022. Los datos se procesaron previamente mediante etiquetas que codifican características categóricas y estandarizan características numéricas. El conjunto de datos de prueba contiene todos los paquetes (sin muestreo) que se enviaron durante una semana separada y no superpuesta a partir de 2022.
4.1.3. Métodos de referencia
Comparamos el rendimiento de RCT con varios modelos con un nivel de complejidad creciente: GBDT, AWS AutoGluon (Erickson et al., 2020), red neuronal Feedforward, TabTransformer y FT-Transformer. Para el modelo GBDT, las características numéricas no estaban estandarizadas y se utilizó la codificación de destino (Micci-Barreca, 2001) para codificar características categóricas en lugar de codificación de etiquetas. AWS AutoGluon se configuró para aprender un conjunto de modelos LightGBM (Ke et al., 2017). Se utilizó una red neuronal de avance que contiene 5 capas, cuya entrada se generó incorporando y concatenando características de dimensión, ruta y servicio. Se utilizaron implementaciones disponibles públicamente [1] de TabTransformer y FT-Transformer, y todos los hiperparámetros se hicieron consistentes con RCT. Dado que las líneas de base no manejan colecciones de artículos y cargos, solo utilizamos características de dimensión, ruta y servicio.
La Tabla 1a compara los ECA con los modelos de referencia analizados en la sección 4.1.3. Los modelos de la tabla están organizados en orden creciente de complejidad del modelo. Ambos modelos basados en árboles, GBDT y AutoGluon, funcionan a un nivel similar. Los modelos de aprendizaje profundo superan consistentemente a los modelos basados en árboles, lo que indica que la arquitectura propuesta es eficiente para la predicción de costos de envío. Los modelos basados en transformadores tienen puntuaciones de MAE% más bajas que las redes neuronales de alimentación directa, lo que demuestra que los transformadores aprenden a interactuar de manera efectiva. El modelo RCT supera a ambos modelos de transformador: TabTransformer y FT-Transformer (SOTA), lo que sugiere que una arquitectura personalizada que codifica la estructura latente de la hoja de tarifas está contribuyendo a mejorar el rendimiento. La Tabla 2 compara el rendimiento de los modelos FT-Transformer y RCT en diferentes tamaños de modelo. Los resultados muestran que RCT supera a FT-Transformer en todos los tamaños de modelos probados, lo que indica que la estructura de la hoja de tarifas de codificación proporciona beneficios de rendimiento en diferentes capacidades de modelos.
Se ha demostrado que los transformadores tienen fuertes capacidades de aprendizaje de representación en una variedad de tareas. En este experimento, investigamos la efectividad de la representación de la hoja de tarifas aprendida por RCT. Para evaluar esto, comparamos el rendimiento de nuestro modelo GBT con y sin la representación de la hoja de tarifas aprendida como característica de entrada.
La salida agrupada de la capa Transformer final se trata como la representación aprendida de la hoja de tarifas. Agregar esta característica mejoró el rendimiento del GBDT en un 9,79% (consulte la Tabla 1b). Además, se observó que incluso cuando se eliminan todas las funciones diseñadas manualmente, el GBDT aún funciona de manera comparable, con un porcentaje MAE del 69,21 %. Esto indica que las representaciones aprendidas de las hojas de tarifas no solo son efectivas para capturar mejor información sobre las características, sino que también son una representación suficiente de la hoja de tarifas del paquete. Sin embargo, incluso con esta característica, el GBDT tiene un MAE% un 13,5% más alto que el RCT. Es probable que esto se deba a que el RCT se entrena de un extremo a otro, mientras que el GBDT utiliza características aprendidas como parte de un modelo separado.
En la sección 4.2, se observó que las redes neuronales de retroalimentación (FF) fueron superadas por los transformadores, lo que llevó a la hipótesis de que la autoatención es un aprendiz de interacción superior. Esta sección tiene como objetivo explorar más esta hipótesis utilizando FF en lugar de autoatención para codificar características de dimensión, ruta y servicio, al tiempo que limita el ancho de la autoatención solo a las características de artículo y carga. Las codificaciones de salida tanto de FF como de autoatención se concatenan y se introducen en una capa de FF para predecir el costo de envío. A medida que se reduce el ancho de la autoatención, no logra capturar las interacciones entre todas las funciones de la hoja de tarifas. El modelo resultante exhibe un MAE% más alto de 64,73% en comparación con el 55,72% del RCT. Estos resultados sugieren que los modelos FF son aprendices de interacción inferiores en comparación con los transformadores.
En la sección 3.2, analizamos la competencia de los transformadores en la agregación de características, debido a la autoatención. En esta sección, se realizan experimentos de ablación para analizar el efecto de la profundidad de la atención y el recuento de atención. Aumentar el número de cabezas de atención permite que el modelo aprenda interacciones de características más independientes. Para este experimento, el
La capacidad del modelo está fijada en 128 dimensiones, por lo que un aumento en el número de cabezas también reduce la complejidad de las interacciones aprendidas por cabeza. Por lo tanto, elegir el recuento óptimo de personas es una compensación entre el aprendizaje de interacciones independientes y la complejidad de cada interacción aprendida. La compensación se puede observar en la Fig. 2a, donde el rendimiento mejora de 4 cabezas a 16 cabezas porque la atención aprendida por cada cabeza es lo suficientemente compleja. Sin embargo, el rendimiento se degrada cuando las cabezas de atención aumentan de 16 a 32 porque la complejidad de las cabezas se ha reducido sustancialmente, negando el beneficio de aprender interacciones más independientes.
A continuación, ilustramos el efecto de aumentar la profundidad de atención agregando capas de codificador transformador. Las redes de transformadores más profundas aprenden interacciones más complejas de orden superior, mejorando así el rendimiento del modelo, como se observa en la figura 2b. Sin embargo, aumentar el número de capas de 6 a 12 reduce el rendimiento del modelo debido al sobreajuste, causado por el aumento en el recuento de parámetros que se pueden aprender. La evidencia del sobreajuste se puede encontrar en la Fig. 2b, donde la brecha entre el tren y el val MAE aumenta en un 30% cuando se pasa de 6 a 12 capas.
Finalmente, en la Fig. 3, mostramos los mapas de calor generados usando el Algoritmo 1. Estos mapas de calor ilustran la cantidad de veces que se atendió cada característica como parte de las cinco características más atendidas. Cada columna corresponde a un encabezado y cada fila corresponde a una característica. El mapa de calor de la izquierda se generó usando RCT con nheads = 16, y el de la derecha se generó con nheads = 4. Al comparar ambos mapas de calor, se puede ver que la Fig. 3a tiene menos interacciones de características activas por columna, lo que confirma nuestra hipótesis de que un mayor número de cabezas de atención lleva a que cada cabeza aprenda interacciones independientes entre características.
Para minimizar los costos de experimentación, todos los experimentos en este artículo se realizaron utilizando un conjunto de datos de entrenamiento de un tamaño de 10 millones. Sin embargo, es importante utilizar el modelo de mejor rendimiento; el tamaño del conjunto de datos de entrenamiento se puede aumentar para lograr un rendimiento óptimo.
Para verificar la escalabilidad de RCT con datos, entrenamos el modelo en diferentes tamaños de conjuntos de datos de entrenamiento y representamos los resultados en la Fig. 4. Los resultados demuestran que el rendimiento de RCT continúa mejorando con conjuntos de datos más grandes. Por lo tanto, podemos esperar con confianza que los modelos entrenados en conjuntos de datos más grandes superen al modelo explorado en este artículo.
Este documento está disponible en arxiv bajo licencia CC BY-NC-ND 4.0 DEED.
[1] https://github.com/lucidrains/tab-transformer-pytorc