	{"id":49861,"date":"2021-03-08T13:20:33","date_gmt":"2021-03-08T13:20:33","guid":{"rendered":"https:\/\/www.artefact.com\/?post_type=news&#038;p=49861"},"modified":"2024-09-20T17:45:39","modified_gmt":"2024-09-20T16:45:39","slug":"sales-forecasting-in-retail-what-we-learned-from-the-m5-competition-published-in-medium-tech-blog","status":"publish","type":"blog","link":"https:\/\/www.artefact.com\/es\/blog\/sales-forecasting-in-retail-what-we-learned-from-the-m5-competition-published-in-medium-tech-blog\/","title":{"rendered":"Previsi\u00f3n de ventas en el comercio minorista: lo que aprendimos del concurso M5"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-1 description\"><p>5 de febrero de 2021<br \/>\nEn este art\u00edculo, el cient\u00edfico de Data Maxime Lutel resume sus aprendizajes del concurso de previsi\u00f3n de ventas M5, que consist\u00eda en predecir las ventas futuras en varias tiendas Walmart. Le guiar\u00e1 a trav\u00e9s de nuestra soluci\u00f3n y comentar\u00e1 qu\u00e9 modelo de aprendizaje autom\u00e1tico funcion\u00f3 mejor para esta tarea.<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-1 hover-type-none\"><img decoding=\"async\" width=\"300\" height=\"74\" title=\"Mediano Blog\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog.png\" data-orig-src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-300x74.png\" alt class=\"lazyload img-responsive wp-image-60582\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%274000%27%20height%3D%27992%27%20viewBox%3D%270%200%204000%20992%27%3E%3Crect%20width%3D%274000%27%20height%3D%27992%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-200x50.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-400x99.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-600x149.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-800x198.png 800w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-1200x298.png 1200w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 300px\" \/><\/span><\/div><\/div><\/div><\/div><\/div><article class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-1 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Utilizar el aprendizaje autom\u00e1tico para resolver los retos empresariales de los minoristas<\/h2><\/div><div class=\"fusion-text fusion-text-2\"><p>Una previsi\u00f3n precisa de las ventas es fundamental para que las empresas minoristas produzcan la cantidad necesaria en el momento adecuado. Pero aunque evitar el despilfarro y la escasez sea una de sus principales preocupaciones, los minoristas a\u00fan tienen mucho margen de mejora. Al menos, eso es lo que piensa la gente que trabaja en Walmart, que en marzo de 2020 lanz\u00f3 un desaf\u00edo cient\u00edfico abierto data-. <a href=\"https:\/\/www.kaggle.com\/c\/m5-forecasting-accuracy\/overview\" target=\"_blank\" rel=\"noopener\">el concurso M5<\/a>\u00a0- para ver c\u00f3mo pod\u00edan mejorar sus modelos de previsi\u00f3n.<\/p>\n<p>El concurso ten\u00eda como objetivo predecir las ventas futuras a nivel de producto, bas\u00e1ndose en el hist\u00f3rico de data. M\u00e1s de 5000 equipos de amantes del data y expertos en previsi\u00f3n han debatido durante meses sobre los m\u00e9todos, las caracter\u00edsticas y los modelos que mejor funcionar\u00edan para abordar este conocido problema de aprendizaje autom\u00e1tico. Estos debates pusieron de manifiesto algunos problemas recurrentes que se plantean en casi todos los proyectos de previsi\u00f3n. Y lo que es a\u00fan m\u00e1s importante, pusieron de manifiesto una gran variedad de enfoques para abordarlos.<\/p>\n<p>Este art\u00edculo aspira a resumir algunos\u00a0<strong>ideas clave que surgieron del desaf\u00edo<\/strong>. En Artefact creemos en el aprendizaje a trav\u00e9s de la pr\u00e1ctica, as\u00ed que decidimos arriesgarnos y codificar nuestra propia soluci\u00f3n para ilustrarlo. Ahora vamos a recorrer todo el proceso de previsi\u00f3n y a detenernos por el camino para comprender qu\u00e9 funcion\u00f3 y qu\u00e9 fall\u00f3.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-2 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Planteamiento del problema: Previsi\u00f3n jer\u00e1rquica de series temporales<\/h2><\/div><div class=\"fusion-text fusion-text-3\"><p>El dataset contiene el hist\u00f3rico de ventas de 5 a\u00f1os, de 2011 a 2016, de varios productos y tiendas. Se proporciona alguna informaci\u00f3n adicional, como los precios de venta y los eventos del calendario. Data est\u00e1 organizado jer\u00e1rquicamente: las tiendas se dividen en 3 estados y los productos se agrupan por categor\u00edas y subcategor\u00edas.<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-2 hover-type-none\"><img decoding=\"async\" width=\"700\" height=\"424\" title=\"Imagen-1-\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-1-.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/Image-1-.png\" alt class=\"lazyload img-responsive wp-image-54226\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27700%27%20height%3D%27424%27%20viewBox%3D%270%200%20700%20424%27%3E%3Crect%20width%3D%27700%27%20height%3D%27424%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-1--200x121.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-1--400x242.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-1--600x363.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-1-.png 700w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 700px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-4\"><p>Nuestra tarea es\u00a0<strong>predecir las ventas de todos los productos de cada tienda, en los d\u00edas inmediatamente posteriores al dataset disponible<\/strong>. Significa que hay que hacer 30 490 previsiones para cada d\u00eda del horizonte de predicci\u00f3n.<\/p>\n<p>Esta jerarqu\u00eda guiar\u00e1 nuestras opciones de modelizaci\u00f3n, porque las interacciones dentro de las categor\u00edas de productos o las tiendas contienen informaci\u00f3n muy \u00fatil a efectos de predicci\u00f3n. En efecto, los art\u00edculos de las mismas tiendas y categor\u00edas podr\u00edan tener una evoluci\u00f3n de ventas similar o, por el contrario, podr\u00edan canibalizarse mutuamente. Por lo tanto, vamos a describir cada muestra mediante caracter\u00edsticas que capten estas interacciones, y\u00a0<strong>dar prioridad a los enfoques basados en el aprendizaje autom\u00e1tico frente a los tradicionales de previsi\u00f3n<\/strong>, para tener en cuenta esta informaci\u00f3n a la hora de entrenar el modelo.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-3 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Dos retos principales: valores intermitentes y un horizonte de predicci\u00f3n ampliado<\/h2><\/div><div class=\"fusion-text fusion-text-5\"><p>A estas alturas, podr\u00eda pensar que se trata de un problema de previsi\u00f3n muy com\u00fan. Tiene raz\u00f3n y por eso es interesante: puede relacionarse con una amplia gama de otros proyectos, aunque cada industria tenga sus propias caracter\u00edsticas. Sin embargo, este reto tiene 2 especificidades importantes que har\u00e1n que la tarea sea m\u00e1s dif\u00edcil de lo esperado.<\/p>\n<p>La primera es que las series temporales con las que trabajamos tienen muchos valores intermitentes, es decir, largos periodos de d\u00edas consecutivos sin ventas, como se ilustra en el gr\u00e1fico siguiente. Esto podr\u00eda deberse al agotamiento de las existencias o a la limitaci\u00f3n de la superficie de las estanter\u00edas de las tiendas. En cualquier caso, esto complica la tarea, ya que el error se disparar\u00e1 si las ventas se predicen a un nivel regular mientras el producto est\u00e1 fuera de las estanter\u00edas.<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-3 hover-type-none\"><img decoding=\"async\" width=\"700\" height=\"355\" title=\"imagen-2-\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-2-.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/image-2-.png\" alt class=\"lazyload img-responsive wp-image-54231\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27700%27%20height%3D%27355%27%20viewBox%3D%270%200%20700%20355%27%3E%3Crect%20width%3D%27700%27%20height%3D%27355%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-2--200x101.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-2--400x203.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-2--600x304.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-2-.png 700w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 700px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-6\"><p>La segunda proviene de la propia tarea, y m\u00e1s concretamente de la\u00a0<strong>tama\u00f1o del horizonte de predicci\u00f3n<\/strong>. Los competidores deben generar previsiones no s\u00f3lo para la pr\u00f3xima semana, sino para un periodo de 4 semanas. \u00bfPreferir\u00eda confiar en la previsi\u00f3n meteorol\u00f3gica para el d\u00eda siguiente o para dentro de 1 mes? Lo mismo ocurre con la previsi\u00f3n de ventas: un horizonte de predicci\u00f3n ampliado hace que el problema sea m\u00e1s complejo, ya que la incertidumbre aumenta con el tiempo.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-4 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Ingenier\u00eda de funciones - Modelizaci\u00f3n de los factores impulsores de las ventas<\/h2><\/div><div class=\"fusion-text fusion-text-7\"><p>Ahora que hemos comprendido la tarea que tenemos entre manos, podemos empezar a calcular caracter\u00edsticas que modelen todos los fen\u00f3menos que puedan afectar a la evoluci\u00f3n de las ventas. El objetivo aqu\u00ed es describir cada tripleta D\u00eda x Producto x Tienda mediante un conjunto de indicadores que capten los efectos de factores como la estacionalidad, las tendencias o la fijaci\u00f3n de precios.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-5 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Estacionalidad<\/h2><\/div><div class=\"fusion-text fusion-text-8\"><p>En lugar de utilizar directamente la fecha de venta como predictor, suele ser m\u00e1s pertinente descomponerla en varios rasgos para caracterizar la estacionalidad: a\u00f1o, mes, n\u00famero de semana,\u00a0<strong>d\u00eda de la semana<\/strong>... Esto \u00faltimo es especialmente perspicaz porque el problema tiene una fuerte periodicidad semanal: los vol\u00famenes de ventas son mayores los fines de semana, cuando la gente pasa m\u00e1s tiempo en los supermercados.<\/p>\n<p><strong>Calendario de eventos<\/strong>\u00a0como las vacaciones o las finales de la NBA tambi\u00e9n tienen un fuerte impacto estacional. Se ha creado una caracter\u00edstica para cada acontecimiento, con los siguientes valores:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-1 fusion-checklist-default type-icons\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Valores negativos para los 15 d\u00edas anteriores al acontecimiento (de -15 a -1)<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>0 el d\u00eda D<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Valores positivos durante los 15 d\u00edas siguientes al suceso (1 a 15)<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Sin valor en periodos a m\u00e1s de 15 d\u00edas del acontecimiento<\/div><\/li><\/ul><div class=\"fusion-text fusion-text-9\"><p>La idea es modelizar el impacto estacional no s\u00f3lo en el d\u00eda D, sino tambi\u00e9n antes y despu\u00e9s. Por ejemplo, un producto que se ofrecer\u00e1 mucho como regalo de Navidad experimentar\u00e1 un pico de ventas los d\u00edas previos y un descenso justo despu\u00e9s.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-6 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Tendencias<\/h2><\/div><div class=\"fusion-text fusion-text-10\"><p>Las tendencias recientes tambi\u00e9n proporcionan informaci\u00f3n \u00fatil sobre las ventas futuras y se modelan gracias a\u00a0<strong>caracter\u00edsticas del retraso<\/strong>. Un desfase es el valor de la variable objetivo desplazado un cierto periodo. Para un art\u00edculo concreto de una tienda determinada, el valor de desfase de una semana ser\u00eda las ventas realizadas hace una semana para este art\u00edculo y tienda concretos. Se pueden considerar diferentes valores de desfase, y tambi\u00e9n se calcula la media de varios desfases, para obtener predictores m\u00e1s robustos. Los desfases tambi\u00e9n pueden calcularse sobre las ventas agregadas para captar tendencias m\u00e1s globales, por ejemplo a nivel de tienda o de categor\u00eda de producto.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-7 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Precios<\/h2><\/div><div class=\"fusion-text fusion-text-11\"><p>El precio de un producto puede cambiar de una tienda a otra, e incluso de una semana a otra dentro de la misma tienda. Estas variaciones influyen mucho en las ventas y, por tanto, deben describirse mediante algunas caracter\u00edsticas. En lugar de precios absolutos,\u00a0<strong>es m\u00e1s probable que las diferencias de precios relativos entre productos relevantes expliquen la evoluci\u00f3n de las ventas<\/strong>. Por eso se han calculado los siguientes predictores:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-2 fusion-checklist-default type-icons\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Diferencia relativa entre el precio actual de un art\u00edculo y su precio medio hist\u00f3rico, para destacar el impacto de las ofertas promocionales.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Diferencia relativa de precios con el mismo art\u00edculo vendido en otras tiendas, para comprender si la tienda tiene un precio atractivo o no.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Diferencia relativa de precios con otros art\u00edculos vendidos en la misma tienda y la misma categor\u00eda de productos, para captar algunos efectos de canibalizaci\u00f3n.<\/p>\n<\/div><\/li><\/ul><div class=\"fusion-title title fusion-title-8 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Codificaci\u00f3n de variables categ\u00f3ricas<\/h2><\/div><div class=\"fusion-text fusion-text-12\"><p>Las variables categ\u00f3ricas como el estado, la tienda, el nombre del producto o su categor\u00eda tambi\u00e9n tienen un importante poder predictivo. Esta informaci\u00f3n debe codificarse en caracter\u00edsticas para ayudar al modelo aprovechando la jerarqu\u00eda dataset. La codificaci\u00f3n en una sola variable no es una opci\u00f3n en este caso porque algunas de estas variables categ\u00f3ricas tienen una cardinalidad muy alta (3049 productos distintos). En su lugar, hemos utilizado una\u00a0<strong>codificaci\u00f3n ordenada del objetivo<\/strong>, lo que significa que cada observaci\u00f3n se codifica mediante el promedio de ventas de las observaciones anteriores que tienen el mismo valor categ\u00f3rico. Para esta tarea, el conjunto data se ordena por tiempo para evitar fugas de data.<\/p>\n<p>Todas las variables categ\u00f3ricas y algunas de sus combinaciones se han codificado con este m\u00e9todo. Esto da como resultado caracter\u00edsticas muy informativas, la mejor de las cuales es la codificaci\u00f3n de la combinaci\u00f3n de producto y tienda. Si desea experimentar otros codificadores, puede encontrar una amplia gama de m\u00e9todos\u00a0<a href=\"http:\/\/contrib.scikit-learn.org\/category_encoders\/\" target=\"_blank\" rel=\"noopener\">aqu\u00ed<\/a>.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-9 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">P\u00e9rdida de Tweedie para manejar valores intermitentes<\/h2><\/div><div class=\"fusion-text fusion-text-13\"><p>Se pueden utilizar diferentes estrategias posibles para tratar el tema de los valores intermitentes. Algunos participantes decidieron crear 2 modelos distintos: uno para predecir si el producto estar\u00e1 disponible o no un d\u00eda concreto, y otro para prever las ventas. Como muchos otros, hemos elegido otra opci\u00f3n, que consiste en basarnos en una funci\u00f3n objetivo adaptada al problema: la\u00a0<strong>p\u00e9rdida de tweedie<\/strong>.<\/p>\n<p>Sin entrar en los detalles matem\u00e1ticos, vamos a intentar comprender por qu\u00e9 esta funci\u00f3n de p\u00e9rdida es adecuada para nuestro problema, comparando la distribuci\u00f3n de ventas en el entrenamiento data y la distribuci\u00f3n tweedie:<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-4 hover-type-none\"><img decoding=\"async\" width=\"463\" height=\"169\" title=\"imagen-3-\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-3-.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/image-3-.png\" alt class=\"lazyload img-responsive wp-image-54241\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27463%27%20height%3D%27169%27%20viewBox%3D%270%200%20463%20169%27%3E%3Crect%20width%3D%27463%27%20height%3D%27169%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-3--200x73.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-3--400x146.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-3-.png 463w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 463px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-14\"><p>Se parecen bastante y ambas tienen valores concentrados en torno a 0. Establecer la p\u00e9rdida tweedie como funci\u00f3n objetivo obligar\u00e1 b\u00e1sicamente al modelo a\u00a0<strong class=\"ia ld\">maximizar la probabilidad de esa distribuci\u00f3n<\/strong>\u00a0y predecir as\u00ed la cantidad correcta de 0s. Adem\u00e1s, esta funci\u00f3n de p\u00e9rdida viene con un par\u00e1metro -cuyos valores van de 1 a 2- que puede ajustarse para adaptarse a la distribuci\u00f3n del problema en cuesti\u00f3n:<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-5 hover-type-none\"><img decoding=\"async\" width=\"696\" height=\"157\" title=\"imagen-4-\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-4-.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/image-4-.png\" alt class=\"lazyload img-responsive wp-image-54246\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27696%27%20height%3D%27157%27%20viewBox%3D%270%200%20696%20157%27%3E%3Crect%20width%3D%27696%27%20height%3D%27157%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-4--200x45.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-4--400x90.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-4--600x135.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-4-.png 696w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 696px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-15\"><p>Bas\u00e1ndonos en nuestra distribuci\u00f3n dataset, podemos esperar que el valor \u00f3ptimo est\u00e9 entre 1 y 1,5, pero para ser m\u00e1s precisos afinaremos ese par\u00e1metro m\u00e1s adelante con validaci\u00f3n cruzada. Esta funci\u00f3n objetivo tambi\u00e9n est\u00e1 disponible para otros modelos de refuerzo de gradiente como XGBoost o CatBoost, por lo que merece la pena probarla si est\u00e1 tratando con valores intermitentes.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-10 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">\u00bfC\u00f3mo hacer previsiones con 28 d\u00edas de antelaci\u00f3n?: C\u00f3mo aprovechar al m\u00e1ximo las funciones de desfase<\/h2><\/div><div class=\"fusion-text fusion-text-16\"><p>Como ya se ha explicado, las caracter\u00edsticas de desfase son ventas desplazadas en un periodo de tiempo determinado. Por lo tanto, sus valores dependen de en qu\u00e9 punto del horizonte de previsi\u00f3n se encuentre. Las ventas realizadas en un d\u00eda concreto D pueden considerarse como un desfase de 1 d\u00eda si est\u00e1 pronosticando con un d\u00eda de antelaci\u00f3n, o como un desfase de 28 d\u00edas si est\u00e1 pronosticando con 28 d\u00edas de antelaci\u00f3n. El siguiente diagrama ilustra este punto:<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-6 hover-type-none\"><img decoding=\"async\" width=\"700\" height=\"214\" title=\"imagen-5\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-5.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/image-5.png\" alt class=\"lazyload img-responsive wp-image-54251\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27700%27%20height%3D%27214%27%20viewBox%3D%270%200%20700%20214%27%3E%3Crect%20width%3D%27700%27%20height%3D%27214%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-5-200x61.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-5-400x122.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-5-600x183.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-5.png 700w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 700px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-17\"><p>Este concepto es importante para entender qu\u00e9 caracter\u00edsticas ser\u00e1n\u00a0<strong>disponible en el momento de la predicci\u00f3n<\/strong>. En este caso, estamos en el d\u00eda D y queremos predecir las ventas de los 28 d\u00edas siguientes. Si queremos utilizar el mismo modelo -y, por tanto, las mismas caracter\u00edsticas- para hacer predicciones para todo el horizonte de previsi\u00f3n, s\u00f3lo podemos utilizar los desfases disponibles para predecir todos los d\u00edas entre D+1 y D+28. Esto significa que si utilizamos la caracter\u00edstica de desfase de 1 d\u00eda para entrenar el modelo, esa variable tambi\u00e9n tendr\u00e1 que rellenarse para las predicciones en D+2, D+3, ... y D+28, ya que se refiere a fechas en el futuro.<\/p>\n<p>Aun as\u00ed, los retrasos son probablemente el\u00a0<strong>caracter\u00edsticas con mayor poder predictivo<\/strong>, por lo que es importante encontrar una forma de sacar el m\u00e1ximo partido a esta informaci\u00f3n. Hemos considerado 3 opciones para sortear este problema, veamos c\u00f3mo han funcionado.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-11 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Opci\u00f3n 1: Un modelo para todas las semanas<\/h2><\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-7 hover-type-none\"><img decoding=\"async\" width=\"700\" height=\"397\" title=\"imagen-6\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-6.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/image-6.png\" alt class=\"lazyload img-responsive wp-image-54256\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27700%27%20height%3D%27397%27%20viewBox%3D%270%200%20700%20397%27%3E%3Crect%20width%3D%27700%27%20height%3D%27397%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-6-200x113.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-6-400x227.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-6-600x340.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-6.png 700w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 700px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-18\"><p>La primera opci\u00f3n es la m\u00e1s obvia. Consiste en utilizar el mismo modelo para realizar predicciones para todas las semanas del horizonte de previsi\u00f3n. Como acabamos de explicar, conlleva una gran restricci\u00f3n: s\u00f3lo se pueden utilizar las caracter\u00edsticas disponibles para predecir en D+28. Por lo tanto, tenemos que\u00a0<strong class=\"ia ld\">deshacerse de toda la informaci\u00f3n proporcionada por los 27 rezagos m\u00e1s recientes<\/strong>. Es una pena, ya que los rezagos m\u00e1s recientes son tambi\u00e9n los m\u00e1s informativos, por lo que hemos considerado otra opci\u00f3n.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-12 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Opci\u00f3n 2: Modelos semanales<\/h2><\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-8 hover-type-none\"><img decoding=\"async\" width=\"700\" height=\"396\" title=\"imagen-7-\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-7-.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/image-7-.png\" alt class=\"lazyload img-responsive wp-image-54261\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27700%27%20height%3D%27396%27%20viewBox%3D%270%200%20700%20396%27%3E%3Crect%20width%3D%27700%27%20height%3D%27396%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-7--200x113.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-7--400x226.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-7--600x339.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-7-.png 700w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 700px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-19\"><p>Esta alternativa consiste en entrenar un modelo LightGBM diferente para cada semana. En el diagrama anterior, cada modelo est\u00e1 aprendiendo de los rezagos posibles m\u00e1s recientes con respecto a la restricci\u00f3n impuesta por su horizonte de predicci\u00f3n. Siguiendo la misma l\u00f3gica que la opci\u00f3n anterior, significa que cada modelo puede aprovechar todos los rezagos excepto los que son m\u00e1s recientes que el d\u00eda m\u00e1s lejano para predecir.<\/p>\n<p>M\u00e1s concretamente:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-3 fusion-checklist-default type-icons\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">El modelo 1 realiza previsiones para los d\u00edas 1-7, bas\u00e1ndose en todos los retardos excepto los 6 m\u00e1s recientes.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">El modelo 2 realiza previsiones para los d\u00edas 8-14, bas\u00e1ndose en todos los desfases excepto los 13 m\u00e1s recientes.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">El modelo 3 realiza previsiones para los d\u00edas 15-21, bas\u00e1ndose en todos los desfases excepto los 20 m\u00e1s recientes.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">El modelo 4 realiza previsiones para los d\u00edas 22-28, bas\u00e1ndose en todos los retardos excepto los 27 m\u00e1s recientes, igual que en la opci\u00f3n 1.<\/div><\/li><\/ul><div class=\"fusion-text fusion-text-20\"><p>Este m\u00e9todo nos permite<strong>\u00a0aprovechar mejor la informaci\u00f3n rezagada de las 3 primeras semanas y mejorar as\u00ed la precisi\u00f3n de las previsiones de nuestra soluci\u00f3n<\/strong>. Vali\u00f3 la pena porque era una competici\u00f3n de Kaggle, pero\u00a0<strong>para un proyecto industrializado, tambi\u00e9n deben tenerse en cuenta cuestiones de complejidad, mantenimiento e interpretabilidad<\/strong>.<\/p>\n<p>De hecho, esta opci\u00f3n podr\u00eda ser costosa desde el punto de vista inform\u00e1tico y, si pretendemos una implantaci\u00f3n a escala de todo un pa\u00eds, requerir\u00eda mantener cientos de modelos en vivo. En ese caso, habr\u00eda que evaluar si el incremento de rendimiento es lo suficientemente grande como para justificar esta implementaci\u00f3n m\u00e1s compleja.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-13 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Opci\u00f3n 3: Modelado recursivo<\/h2><\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-9 hover-type-none\"><img decoding=\"async\" width=\"700\" height=\"388\" title=\"imagen-8\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-8.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/image-8.png\" alt class=\"lazyload img-responsive wp-image-54266\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27700%27%20height%3D%27388%27%20viewBox%3D%270%200%20700%20388%27%3E%3Crect%20width%3D%27700%27%20height%3D%27388%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-8-200x111.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-8-400x222.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-8-600x333.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/image-8.png 700w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 700px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-21\"><p>La \u00faltima opci\u00f3n tambi\u00e9n utiliza modelos semanales, pero esta vez de forma recursiva.\u00a0<strong>Modelado recursivo<\/strong>\u00a0significa que las predicciones generadas para una semana determinada se utilizar\u00e1n como caracter\u00edsticas de retraso para las semanas siguientes. Esto ocurre\u00a0<strong>secuencialmente<\/strong>: primero realizamos predicciones para la primera semana utilizando todos los rezagos excepto los 6 m\u00e1s recientes. A continuaci\u00f3n, predecimos la segunda semana utilizando nuestras predicciones anteriores como rezagos de una semana, en lugar de excluir m\u00e1s rezagos como en la opci\u00f3n 2. Repitiendo el mismo proceso, siempre disponemos de rezagos recientes, incluso para las semanas 3 y 4, lo que nos permite aprovechar esta informaci\u00f3n para entrenar los modelos.<\/p>\n<p>Merece la pena probar este m\u00e9todo, pero tenga en cuenta que es bastante\u00a0<strong>inestable ya que los errores se extienden de una semana a otra<\/strong>. Si el modelo de la primera semana comete errores importantes, estos errores ser\u00e1n tomados como la verdad por el siguiente modelo, que entonces tendr\u00e1 inevitablemente malos resultados, y as\u00ed sucesivamente. Por eso decidimos\u00a0<strong>qu\u00e9dese con la opci\u00f3n 2<\/strong>, que parece ser m\u00e1s fiable.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-14 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Garantizar la solidez del modelo con una validaci\u00f3n cruzada adecuada: Por qu\u00e9 la validaci\u00f3n cruzada es fundamental para las series temporales<\/h2><\/div><div class=\"fusion-text fusion-text-22\"><p>En cualquier proyecto de aprendizaje autom\u00e1tico, adoptar una estrategia de validaci\u00f3n cruzada adecuada es fundamental para simular correctamente la precisi\u00f3n fuera de la muestra, seleccionar bien los hiperpar\u00e1metros y evitar el sobreajuste. Cuando se trata de pron\u00f3sticos, esto debe hacerse con cuidado porque existe una dependencia temporal entre las observaciones que debe preservarse. Dicho de otro modo, <strong>queremos evitar que el modelo mire hacia el futuro cuando lo entrenamos<\/strong>.<\/p>\n<p>El periodo de validaci\u00f3n durante el que se prueba el modelo tambi\u00e9n tiene una mayor importancia cuando se trata de series temporales. El rendimiento del modelo y el conjunto \u00f3ptimo de hiperpar\u00e1metros pueden variar mucho en funci\u00f3n del periodo durante el que se entrene y se pruebe el modelo. <strong>Por lo tanto, nuestro objetivo es encontrar qu\u00e9 par\u00e1metros tienen m\u00e1s probabilidades de maximizar el rendimiento no durante un periodo aleatorio, sino durante el periodo que queremos pronosticar<\/strong>, es decir, las pr\u00f3ximas 4 semanas.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-15 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Adaptar el proceso de validaci\u00f3n al problema en cuesti\u00f3n<\/h2><\/div><div class=\"fusion-text fusion-text-23\"><p>Para lograr ese objetivo, hemos seleccionado 5 conjuntos de validaci\u00f3n que fueron\u00a0<strong>relevantes para el periodo de predicci\u00f3n<\/strong>. El diagrama siguiente muestra c\u00f3mo se distribuyen en el tiempo. Para cada pliegue de validaci\u00f3n cruzada, el modelo se entrena con varias combinaciones de par\u00e1metros en el conjunto de entrenamiento y se eval\u00faa en el conjunto de validaci\u00f3n utilizando el error cuadr\u00e1tico medio.<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-10 hover-type-none\"><img decoding=\"async\" width=\"700\" height=\"314\" title=\"Imagen-9-\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-9-.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/Image-9-.png\" alt class=\"lazyload img-responsive wp-image-54271\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27700%27%20height%3D%27314%27%20viewBox%3D%270%200%20700%20314%27%3E%3Crect%20width%3D%27700%27%20height%3D%27314%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-9--200x90.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-9--400x179.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-9--600x269.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-9-.png 700w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 700px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-24\"><p>Los pliegues 1, 2 y 3 pretenden identificar los par\u00e1metros que habr\u00edan maximizado el rendimiento en periodos recientes, b\u00e1sicamente en los \u00faltimos 3 meses. El problema es que estos 3 meses pueden tener especificidades diferentes a las del pr\u00f3ximo periodo que queremos pronosticar. Por ejemplo, imaginemos que las tiendas lanzaron una gran temporada de promociones durante los \u00faltimos meses, y que acaba de terminar hoy.<\/p>\n<p>Estos ascensos probablemente repercutir\u00edan en el comportamiento del modelo, pero ser\u00eda arriesgado basarse s\u00f3lo en estos periodos recientes para afinarlo, ya que no es representativo de lo que va a ocurrir despu\u00e9s.<\/p>\n<p>Para mitigar este riesgo, tambi\u00e9n hemos incluido los pliegues 4 y 5, que corresponden al periodo de previsi\u00f3n desplazado respectivamente 1 y 2 a\u00f1os. Es probable que estos periodos sean similares porque el problema tiene una fuerte estacionalidad anual, lo que suele ocurrir en el comercio minorista. En caso de que tuvi\u00e9ramos una periodicidad diferente, podr\u00edamos elegir cualquier estrategia de validaci\u00f3n cruzada que tenga m\u00e1s sentido desde el punto de vista empresarial. Al final, hemos seleccionado la combinaci\u00f3n de hiperpar\u00e1metros con el error m\u00e1s bajo sobre los 5 pliegues para entrenar el modelo final.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-16 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Resultados<\/h2><\/div><div class=\"fusion-text fusion-text-25\"><p>Las diferentes t\u00e9cnicas mencionadas nos permitieron llegar a un\u00a0<strong>0,59 RMSSE ponderado<\/strong>\u00a0- la m\u00e9trica utilizada en Kaggle- que equivale a una precisi\u00f3n de previsi\u00f3n ponderada de 82,8%. El gr\u00e1fico siguiente resume el rendimiento incremental generado por cada paso:<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-11 hover-type-none\"><img decoding=\"async\" width=\"454\" height=\"262\" title=\"Imagen-10\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-10.png\" data-orig-src=\"https:\/\/www.artefact.com\/wp-content\/uploads\/2021\/03\/Image-10.png\" alt class=\"lazyload img-responsive wp-image-54276\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27454%27%20height%3D%27262%27%20viewBox%3D%270%200%20454%20262%27%3E%3Crect%20width%3D%27454%27%20height%3D%27262%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-10-200x115.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-10-400x231.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/Image-10.png 454w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 454px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-26\"><p>Estas cifras son indicativas: la precisi\u00f3n incremental tambi\u00e9n depende del orden en que se aplique cada paso.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-17 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Principales conclusiones<\/h2><\/div><div class=\"fusion-text fusion-text-27\"><p>Hemos aprendido mucho de este reto gracias a las ideas compartidas por los participantes y esperamos que a usted tambi\u00e9n le haya servido para reflexionar. \u00c9stos son nuestros puntos clave:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-4 fusion-checklist-default type-icons\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Trabaje con un subconjunto peque\u00f1o pero representativo de data para iterar r\u00e1pidamente.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Tenga mucho cuidado con las fugas data en el proceso de ingenier\u00eda de caracter\u00edsticas: aseg\u00farese de que todas las caracter\u00edsticas que calcule estar\u00e1n disponibles en el momento de la predicci\u00f3n.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Seleccione una arquitectura de modelo que le permita aprovechar al m\u00e1ximo los retrasos, pero tenga tambi\u00e9n en cuenta las consideraciones de complejidad si est\u00e1 dispuesto a pasar a la producci\u00f3n.<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Establezca una estrategia de validaci\u00f3n cruzada adaptada a su problema empresarial para evaluar correctamente el rendimiento de sus experimentos.<\/div><\/li><\/ul><div class=\"fusion-text fusion-text-28\"><p>Muchas gracias por leer hasta aqu\u00ed y no dude en ponerse en contacto con nosotros si tiene alg\u00fan comentario sobre el tema.<\/p>\n<\/div><\/div><\/div><\/div><\/article><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-3 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-29\"><p>Este art\u00edculo se public\u00f3 por primera vez en el Artefact Tech Blog en Medium.<\/p>\n<\/div><div ><a class=\"fusion-button button-flat fusion-button-default-size button-default fusion-button-default button-1 fusion-button-default-span fusion-button-default-type button-primary-medium\" target=\"_self\" href=\"https:\/\/medium.com\/artefact-engineering-and-data-science\" rel=\"noopener\"><span class=\"fusion-button-text awb-button__text awb-button__text--default\">Ver el art\u00edculo<\/span><\/a><\/div><\/div><\/div><\/div><\/div><\/p>","protected":false},"excerpt":{"rendered":"<p>5 de febrero de 2021<br \/>\nEn este art\u00edculo, el cient\u00edfico de Data Maxime Lutel resume sus aprendizajes del concurso de previsi\u00f3n de ventas M5, que consist\u00eda en predecir las ventas futuras en varias tiendas Walmart. Le guiar\u00e1 a trav\u00e9s de nuestra soluci\u00f3n y comentar\u00e1 qu\u00e9 modelo de aprendizaje autom\u00e1tico funcion\u00f3 mejor para esta tarea.<\/p>","protected":false},"featured_media":49866,"parent":0,"template":"","meta":{"_acf_changed":false,"ep_exclude_from_search":false},"blog-category":[2995],"blog-language":[2991],"class_list":["post-49861","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog-category-ai-technology","blog-language-en"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.artefact.com\/es\/wp-json\/wp\/v2\/blog\/49861","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.artefact.com\/es\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.artefact.com\/es\/wp-json\/wp\/v2\/types\/blog"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.artefact.com\/es\/wp-json\/wp\/v2\/media\/49866"}],"wp:attachment":[{"href":"https:\/\/www.artefact.com\/es\/wp-json\/wp\/v2\/media?parent=49861"}],"wp:term":[{"taxonomy":"blog-category","embeddable":true,"href":"https:\/\/www.artefact.com\/es\/wp-json\/wp\/v2\/blog-category?post=49861"},{"taxonomy":"blog-language","embeddable":true,"href":"https:\/\/www.artefact.com\/es\/wp-json\/wp\/v2\/blog-language?post=49861"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}