Sobes.tech
Middle — Senior

Comment prendre en compte l'intervalle de temps entre les achats pour la pertinence des produits?

sobes.tech IA

Réponse de l'IA

Pour prendre en compte l’intervalle de temps entre les achats lors de l’évaluation de la pertinence des produits, on utilise souvent des poids temporels ou des fonctions de décroissance, qui réduisent l’impact des achats plus anciens. Par exemple, on peut appliquer une décroissance exponentielle, où le poids d’un achat diminue avec le temps écoulé depuis sa réalisation.

On peut également utiliser des fenêtres temporelles — ne considérer que les achats des N derniers jours, afin que les recommandations reflètent les intérêts actuels de l’utilisateur.

Dans les modèles d’apprentissage automatique, le facteur temporel peut être intégré comme une caractéristique supplémentaire (par exemple, le temps depuis le dernier achat), ou utiliser des réseaux neuronaux récurrents ou des mécanismes d’attention qui prennent en compte la séquence et la dynamique temporelle des achats.

Exemple de pondération exponentielle :

import numpy as np

def time_decay_weight(days_ago, decay_rate=0.1):
    return np.exp(-decay_rate * days_ago)

# Exemple : achat il y a 5 jours
weight = time_decay_weight(5)
print(weight)  # inférieur à 1, diminue avec l’augmentation de days_ago

Ainsi, les achats plus récents reçoivent un poids plus élevé lors de la formation des recommandations.