Anchura vs. Profundidad, Rota tus sales forecasts por 90 grados

Ya hemos discutido por qué a Lokad no le importaba tanto el forecast de comida china en lugar de bebidas de Sport Bar. Otra forma de entender nuestra tecnología consiste en rotar tus sales forecasts por 90 grados.
Observamos que un producto de consumo tiene, en promedio, un ciclo de vida de 3 años. Esto significa que, en promedio, la cantidad de datos disponibles para cada producto es de alrededor de 18 meses. Cuando observamos el historial de ventas con una agregación mensual, 18 meses de datos equivalen a 18 puntos.
Con 18 data points, no importa cuán inteligente o avanzada sea tu teoría de forecast, no se puede hacer mucho simplemente porque nos enfrentamos a una absoluta falta de datos para realizar un análisis estadístico robusto. Con 18 puntos, incluso un patrón tan obvio como la estacionalidad se convierte en un desafío para observar, porque ni siquiera tenemos 2 ciclos estacionales completos.
Los resultados pueden variar de una industria a otra, pero a menos que tus productos permanezcan en el mercado durante décadas, es muy probable que te enfrentes a este problema.
Como consecuencia directa, los toolkits clásicos de forecast requieren que los estadísticos ajusten los modelos de forecast para cada producto, ya que ningún modelo estadístico no trivial puede ajustarse robustamente con tan solo 18 points como data de entrada.
Sin embargo, Lokad no requiere ningún estadístico, y la magia reside en la rotación de 90 grados: nuestros modelos no iteran sobre los datos de una única serie temporal a la vez, sino sobre todas las series temporales a la vez. De este modo, disponemos de mucha más input data, y en consecuencia podemos tener éxito con modelos más avanzados.
Este enfoque es simplemente sentido común: si quieres forecast la estacionalidad de tu nueva barra de chocolate, la estacionalidad de las otras barras de chocolate parece ser una buena candidata. ¿Por qué deberías tratar cada barra de chocolate en estricto aislamiento de las demás?
Sin embargo, desde una perspectiva computacional, el problema se acaba de volver mucho más difícil: si tienes 10,000 SKUs, el número de asociaciones entre dos SKUs es aproximadamente de 100 millones (y 10,000 SKU no es en absoluto un número grande). Es precisamente ahí donde entra en juego la computación en la nube: incluso si tus algoritmos están bien diseñados para no sufrir una complejidad estrictamente cuadrática, aún vas a necesitar mucha potencia de procesamiento. La computación en la nube hace que esta potencia de procesamiento esté disponible on demand a un precio muy bajo.
Sin la computación en la nube, simplemente no es posible ofrecer este tipo de tecnología.