Revenir au contenu principal

Que sont les Hash Buckets ?

Une technique d'ingénierie des caractéristiques qui transforme les variables catégorielles à cardinalité élevée en vecteurs de taille fixe à l'aide de fonctions de hachage pour une utilisation efficace de la mémoire ML

10 Personas Data Management

Summary

  • Utilise des fonctions de hachage (comme MurmurHash3) pour convertir les variables catégorielles en compartiments de taille fixe, évitant ainsi la consommation excessive de mémoire liée à l'encodage one-hot pour les variables à forte cardinalité.
  • Accepte les collisions de hachage (plusieurs valeurs associées au même compartiment), au détriment d'une légère perte de précision, pour une efficacité mémoire et de calcul accrue dans le traitement en flux continu et l'apprentissage à grande échelle.
  • Couramment utilisé pour le filtrage anti-spam, les systèmes de recommandation et la prédiction du taux de clics (CTR), où les espaces de caractéristiques peuvent contenir des millions de valeurs uniques, rendant l'encodage traditionnel impraticable.

En informatique, une table de hachage [tableau de hachage] est une structure de données qui donne un accès quasi direct aux objets grâce à une clé [une chaîne ou un nombre entier unique]. Une table de hachage utilise une fonction de hachage pour calculer un index dans un tableau de compartiments ou d’emplacements, dans lequel on peut trouver la valeur souhaitée. Les principales caractéristiques d’une clé sont les suivantes :

  • Il peut s’agir de votre numéro de sécurité sociale, votre numéro de téléphone, votre numéro de compte, etc.
  • Elle doit être unique.
  • Chaque clé est associée à une valeur.
UN LEADER 5X

Gartner® : Databricks, leader des bases de données cloud

Les compartiments de hachage sont utilisés pour répartir les éléments de données à des fins de tri ou de recherche. L’objectif de cette répartition est de réduire les listes chaînées afin que la recherche d’un élément spécifique puisse se faire dans un délai plus court. Compartiments de hachage Une table de hachage qui utilise des compartiments est en fait la combinaison d’un tableau et d’une liste chaînée. Chaque élément du tableau [la table de hachage] est un en-tête pour une liste chaînée. Tous les éléments qui se trouvent au même endroit seront stockés dans la liste. La fonction de hachage affecte chaque enregistrement au premier emplacement de l’un des compartiments. Si cet emplacement est occupé, le système va parcourir séquentiellement les autres emplacements du compartiment jusqu’à ce qu’il en trouve un de libre. Si un compartiment est complètement plein, l’enregistrement est stocké dans un compartiment de débordement de capacité infinie situé à la fin de la table. Tous les compartiments utilisent le même compartiment de débordement. Toutefois, une bonne solution consiste à utiliser une fonction de hachage qui distribue équitablement les enregistrements entre les compartiments. De cette façon, le compartiment de débordement contiendra le moins d’enregistrements possible.

Ressources complémentaires

Ne manquez jamais un article Databricks

Abonnez-vous à notre blog et recevez les derniers articles dans votre boîte mail.