Tensor

interface publique Tensor

Tableau multidimensionnel typé utilisé dans TensorFlow Lite.

Le handle natif d'un Tensor est géré par NativeInterpreterWrapper et n'a pas besoin d'être fermé par le client. Toutefois, une fois le NativeInterpreterWrapper fermé, le handle du Tensor ne sera plus valide.

Classes imbriquées

classe Tensor.QuantizationParams Paramètres de quantification correspondant à la table QuantizationParameters dans le fichier de schéma du modèle TFLite .

Méthodes publiques

abstrait ByteBuffer
asReadOnlyBuffer()
Renvoie une vue ByteBuffer en lecture seule des données de Tensor.
abstrait DataType
dataType()
Renvoie la valeur DataType des éléments stockés dans le Tensor.
abstrait entier
numBytes()
Renvoie la taille, en octets, des données de Tensor.
abstrait entier
numDimensions()
Renvoie le nombre de dimensions du Tensor (parfois appelé rang).
abstrait entier
numElements()
Renvoie le nombre d'éléments dans une vue aplatie (1-D) du Tensor.
extrait Tensor.QuantizationParams
quantizationParams()
Renvoie les paramètres de quantification du Tensor dans l'interpréteur propriétaire.
abstrait int[]
forme()
Renvoie la forme du Tensor, c'est-à-dire les tailles de chaque dimension.
abstrait int[]
shapeSignature().
Renvoie la forme d'origine du Tensor, c'est-à-dire les tailles de chaque dimension, avant tout redimensionnement.

Méthodes publiques

public abstrait ByteBuffer asReadOnlyBuffer ()

Renvoie une vue ByteBuffer en lecture seule des données de Tensor.

En général, cette méthode est particulièrement utile pour obtenir une vue en lecture seule des données de Tensor de sortie, *après* l'exécution de l'inférence (par exemple, via InterpreterApi.run(Object, Object)). En particulier, certains graphiques ont des sorties mises en forme de manière dynamique, ce qui peut compliquer l'envoi d'un tampon de sortie prédéfini à l'interpréteur. Exemple d'utilisation :

 interpreter.run(input, null);
 ByteBuffer outputBuffer = interpreter.getOutputTensor(0).asReadOnlyBuffer();
 // Copy or read from outputBuffer.

AVERTISSEMENT: Si le Tensor n'a pas encore été alloué, par exemple avant l'exécution de l'inférence, le résultat n'est pas défini. Notez que le pointeur de Tensor sous-jacent peut également changer lorsque le Tensor est invalidé de quelque façon que ce soit (par exemple, si l'inférence est exécutée ou si le graphe est redimensionné). Il n'est donc *pas* sûr de conserver une référence au tampon renvoyé au-delà d'une utilisation immédiate juste après l'inférence. Exemple d'utilisation *mauvaise* :

 ByteBuffer outputBuffer = interpreter.getOutputTensor(0).asReadOnlyBuffer();
 interpreter.run(input, null);
 // Copy or read from outputBuffer (which may now be invalid).

Génère
IllegalArgumentException si les données de Tensor n'ont pas été allouées.

public abstrait DataType dataType ()

Renvoie la valeur DataType des éléments stockés dans le Tensor.

public abstract int numBytes ()

Renvoie la taille, en octets, des données de Tensor.

public abstrait int numDimensions ()

Renvoie le nombre de dimensions du Tensor (parfois appelé rang).

Les valeurs sont 0 pour un scalaire, 1 pour un vecteur, 2 pour une matrice, 3 pour un Tensor tridimensionnel, etc.

public abstract int numElements ()

Renvoie le nombre d'éléments dans une vue aplatie (1-D) du Tensor.

public abstrait Tensor.QuantizationParams quantizationParams ()

Renvoie les paramètres de quantification du Tensor dans l'interpréteur propriétaire.

Seuls les Tensors quantifiés ont une valeur QuantizationParameters valide. Pour les Tensors qui ne sont pas quantifiés, les valeurs d'échelle et de point_zéro sont toutes deux 0.

public abstract int[] shape ()

Renvoie la forme du Tensor, c'est-à-dire les tailles de chaque dimension.

Renvoie
  • un tableau où le i-ième élément est la taille de la i-ième dimension du Tensor.

public abstract int[] shapeSignature ()

Renvoie la forme d'origine du Tensor, c'est-à-dire les tailles de chaque dimension, avant tout redimensionnement. Les dimensions inconnues sont désignées par la valeur -1.

Renvoie
  • un tableau où le i-ième élément est la taille de la i-ième dimension du Tensor.