Accéder à :
- Fonctionnement de l'argument
knots
- Choisir le nombre de nœuds pour les effets temporels dans le modèle
- Utiliser des nœuds et des valeurs fictives binaires
Fonctionnement de l'argument knots
Meridian utilise une approche à intercept aléatoire pour modéliser les effets temporels (Spline (mathématiques), Wikipédia). Ng, Wang et Dai. 2021). Cette approche modélise les effets temporels \(\mu = [\mu_1, \dots, \mu_T]\) pour chacune des périodes \(T\)(une MMM au niveau hebdomadaire sur trois ans comporte \(52 \times 3\) périodes). Les effets temporels \(T\) sont modélisés avec potentiellement moins de \(T\)paramètres à l'aide de la relation suivante :
\[\mu = W \ast b\]
Où :
\(\mu\) est \(1 \times T\) représentant l'effet de chaque période où \(t=1, \dots ,T\), \(W\) est une matrice de pondération déterministe \(T \times K\) ;
\(b\) (appelé
knot_values
dans Meridian) correspond à \(K \times 1\)où \(K \leq T\).
L'inférence bayésienne a posteriori est effectuée sur \(b\), qui est traduit en termes de\(\mu\) selon la matrice de pondération \(W\). Le nombre de nœuds \(K\)est déterminé par l'entrée utilisateur. La matrice de pondération \(W\) est déterminée par la distance L1 entre une période et les deux nœuds voisins.
Pour comprendre comment la distance L1 détermine la matrice de pondération, considérons la période\(9\), où les deux nœuds voisins sont respectivement à \(6\) et \(11\). La distance L1 entre la période \(9\) et le nœud \(11\) est \(2\). La distance L1 entre la période \(9\) et le nœud \(6\) est \(3\). Ainsi, le nœud à \(6\)obtient la pondération \(0.4 = 1 - \frac{3}{2+3} \) et le nœud à \(11\) obtient la pondération\(0.6 = 1 - \frac{2}{2+3} \). La moyenne pondérée de ces deux nœuds voisins détermine la valeur de \(\mu_9\).
Notez que lorsque knots < n_times
, il existe un certain niveau de réduction de la dimensionnalité. Les périodes n_times
sont modélisées avec un nombre de paramètres inférieur à n_times
. La fonction de pondération détermine la manière dont les périodes sont combinées.
Choisir le nombre de nœuds pour les effets temporels dans le modèle
Lorsque vous réfléchissez à la façon de définir les knots
de ModelSpec
, nous vous recommandons de penser aux deux extrêmes : les nœuds peuvent être n'importe où entre 1 et le nombre de périodes (n_times
). Lorsque knots = n_times
, il n'y a pas de réduction de la dimensionnalité et chaque période obtient son propre paramètre. Dans un modèle au niveau géographique, il est possible d'avoir autant de nœuds que de périodes, car vous disposez de plusieurs zones géographiques (et donc de plusieurs observations) par période. Lorsque knots = 1
, toutes les périodes sont mesurées avec un seul paramètre, ce qui revient à dire que le temps n'a aucun effet. Cette absence d'effet devient un intercept commun à toutes les périodes.
Lorsque 1 < knots < n_times
, vous êtes au milieu de ces deux extrêmes. Vous pouvez essayer une plage de valeurs couvrant l'espace des valeurs éligibles. Pour en savoir plus sur la façon de considérer le milieu de ces deux extrêmes, consultez Compromis entre variance et biais.
Nous vous recommandons d'essayer les solutions suivantes :
Les modèles au niveau géographique doivent commencer par la valeur par défaut (
knots = n_times
). Si vous constatez que le surapprentissage est extrême ou que les estimations de l'effet média sont irréalistes, envisagez de réduire le nombre de nœuds. La nécessité de réduire le nombre de nœuds est plus susceptible de s'appliquer à mesure que le nombre de zones géographiques par point temporel diminue.Les modèles au niveau national doivent commencer par le nœud
1
par défaut et augmenter le nombre de nœuds à partir de là. Continuez à augmenter la valeur jusqu'à ce que le surapprentissage devienne extrême ou que les estimations de l'effet média deviennent irréalistes.Un nombre de nœuds similaire peut renvoyer des résultats similaires, tels que
knots = 10
etknots = 11
. Il peut donc être utile de répartir les valeurs que vous souhaitez essayer.
Pour obtenir des informations qui pourraient vous aider à développer des algorithmes de sélection de nœuds, consultez Knot selection in sparse Gaussian processes with a variational objective function dans la bibliothèque en ligne Wiley.
Compromis entre biais et variance
Il peut être utile de considérer le paramètre du nombre de nœuds comme un compromis entre biais et variance. Lorsque knots = n_times
, chaque période obtient son propre paramètre. L'effet d'une période donnée est alors estimé en utilisant uniquement les données de cette période. Cependant, la variance de knots = n_times
est élevée, car moins de points de données sont disponibles à un moment donné.
Lorsque knots < n_times
, chaque nœud est estimé à l'aide des données des périodes proches, les périodes plus proches ayant une pondération plus élevée. Étant donné que les deux nœuds les plus proches déterminent l'inférence d'une période donnée, l'effet d'une période donnée est estimé selon les données de cette période et celles des périodes proches. À mesure que le nombre de nœuds diminue, les points temporels proches ont de plus en plus d'influence sur l'inférence pour un point temporel donné, les points temporels les plus proches ayant une pondération plus élevée. Cela réduit la variance, car de plus en plus de points temporels sont utilisés pour estimer l'effet d'une période donnée. Toutefois, les données ne proviennent pas de la période donnée, ce qui augmente le biais.
En résumé, plus il y a de nœuds, moins les estimations de l'effet temporel sont biaisées, et moins il y a de nœuds, moins les estimations de l'effet temporel présentent une variance. En tant qu'analyste, vous pouvez ajuster le compromis entre biais et variance. Si le temps est un facteur de confusion important entre le média et le KPI, le compromis entre biais et variance dans l'estimation des effets temporels se traduit par un compromis entre biais et variance dans l'estimation des effets de causalité du média.
Vous pouvez également choisir d'avoir différents compromis entre biais et variance pour différentes périodes. Pour ce faire, définissez knots
sur une liste qui spécifie les emplacements des nœuds. Les emplacements des nœuds peuvent être denses lors des périodes où vous préférez un biais faible dans les estimations (par exemple, pendant la période des fêtes) et rares lors des périodes où l'analyste préfère une variance faible dans l'estimation (par exemple, en dehors de la période des fêtes).
Quand envisager d'utiliser moins de nœuds ?
Lorsque vous définissez le nombre de nœuds, il peut également être utile de réfléchir à l'impact du temps sur l'exécution média. Les variables de contrôle doivent être des variables de confusion qui ont une incidence sur l'exécution média et sur le KPI. Pour en savoir plus sur les variables de contrôle, consultez Sélectionner des variables de contrôle.
La même logique s'applique au temps. Si le temps n'est pas un facteur pour l'exécution média, il ne s'agit pas d'une véritable variable de confusion. Vous pouvez ainsi éviter de donner trop de marge de manœuvre à la modélisation du temps avec un biais faible, par exemple avec un nombre de nœuds élevé. Les annonceurs doivent déterminer si le temps joue un rôle dans la planification de l'exécution média. Par exemple, un voyagiste utilisera probablement le temps pour la planification média, contrairement à une marque de chips. Demandez-vous également si le temps est vraiment la variable de confusion importante ou s'il s'agit d'un substitut pour une autre variable qui peut être directement modélisée, probablement avec moins de marge de manœuvre. Par exemple, le temps était-il vraiment la variable de confusion qui a généré l'exécution média ? Ou s'agissait-il du nombre de cas de COVID-19 au niveau national ? Les annonceurs connaissent leur propre stratégie de planification média et ont une bonne connaissance de ces thèmes.
Quand utiliser knots < n_times
?
Vous devez définir knots < n_times
dans certaines situations, par exemple dans un modèle national où vous ne disposez pas de plusieurs observations par période et où il n'y a pas assez de marge de manœuvre pour que chaque période dispose de son propre paramètre. Notez qu'un certain niveau de réduction de la dimensionnalité est nécessaire.
Autre exemple : lorsque vous devez inclure un média ou une variable de contrôle au niveau national. Par définition, les variables au niveau national changent au fil du temps, mais pas selon les zones géographiques. Ce type de variable est parfaitement colinéaire avec le temps et est donc redondant avec un modèle qui comporte un paramètre pour chaque période. Si vous définissez knots
sur une valeur proche de n_times
, vous pouvez techniquement avoir un modèle identifiable. Toutefois, il peut toujours être faiblement identifiable et entraîner des problèmes. Compte tenu des préoccupations liées à l'estimation des effets temporels dans un modèle national, il est encore plus important de disposer de contrôles de haute qualité dans un modèle national que dans un modèle géographique. Pour en savoir plus sur les contrôles de haute qualité, consultez Sélectionner des variables de contrôle.
Choisir des nœuds ou des valeurs fictives binaires
Cette section fournit des conseils sur l'utilisation de nœuds pour les effets saisonniers par rapport aux valeurs fictives binaires pour certains événements, tels que les fêtes de fin d'année et les événements sportifs. Les utilisateurs se demandent souvent si les nœuds et les valeurs fictives binaires peuvent ou doivent être utilisés ensemble dans ces circonstances.
Tenez compte des points suivants lorsque vous choisissez ce que vous allez utiliser :
Les
knots
deModelSpec
peuvent également être utilisé pour définir les emplacements des nœuds. Il faut généralement privilégier cette méthode au lieu de définir des valeurs fictives binaires sur les contrôles.Les valeurs fictives binaires placées dans l'argument
controls
deInputData
obtiennent une hiérarchie géographique, contrairement aux nœuds. Cela peut être souhaitable pour la période des fêtes ou les événements qui peuvent avoir des effets très différents selon la zone géographique. Par exemple, certains types d'événements sportifs peuvent avoir plus d'impact dans certaines zones géographiques.