nemo_rl.data.multimodal_utils
nemo_rl.data.multimodal_utils
Contenu du Module
Classes
Fonctions
API
Enveloppe autour d’une liste de tensors torch et d’une dimension le long de laquelle assembler les tensors.
Cette classe est utilisée pour envelopper une liste de tensors avec un paramètre dim_to_pack.
Elle peut être utilisée pour des données qui peuvent être assemblées le long de différentes dimensions (comme des données multimodales).
dim_to_pack est utilisé pour spécifier la dimension le long de laquelle assembler les tensors.
La liste des tensors peut être renvoyée comme un seul tensor assemblé en appelant as_tensor qui concatènera les tensors le long de la dimension dim_to_pack.
Concatène une liste d’objets PackedTensor en un seul PackedTensor.
Les tensors sous-jacents des PackedTensors sont combinés dans une seule liste de tensors et utilisés pour créer un nouveau PackedTensor.
Chaque batch doit avoir le même dim_to_pack.
Exemple :
Étant donné une liste d’objets PackedTensor, aplatit chaque PackedTensor puis les concatène en un seul PackedTensor.
Chaque PackedTensor est d’abord aplati en assemblant le long de la dimension dim_to_pack du PackedTensor. Ensuite, les tensors aplatis résultants sont utilisés pour créer un nouveau PackedTensor.
Ceci est différent de PackedTensor.concat qui étend simplement la liste sous-jacente des tensors. Ceci est important car les méthodes slice et __len__ opèrent sur la liste sous-jacente des tensors. Notez cependant qu’appeler as_tensor sur le PackedTensor résultant donnera le même tensor que concat.
Chaque batch doit avoir le même dim_to_pack.
Exemple :
Obtenir les clés des données multimodales pouvant être utilisées comme entrées du modèle.
Cela sera utilisé dans la fonction de traitement des données pour déterminer quelles clés utiliser comme entrées du modèle.
Considérations spéciales pour l’assemblage de certaines clés à partir de certains processeurs.
Dans la plupart des cas, les éléments assemblés sont le long de la dimension 0