Merci de vous être connecté à Google I/O. Voir toutes les sessions à la demande Regarder à la demande

Tensor

Interface publique Tenseur

Un 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. Cependant, une fois que le NativeInterpreterWrapper a été fermé, la poignée du tenseur sera invalidée.

Classes imbriquées

classer Tensor.QuantizationParamsTensor.QuantizationParams Paramètres de quantification qui correspondent à la table, QuantizationParameters , dans le fichier de schéma du modèle TFLite.

Méthodes publiques

abstract ByteBuffer
asReadOnlyBuffer ()
Renvoie une vue ByteBuffer en lecture seule des données du tenseur.
Type de données abstrait
type de données ()
Renvoie le DataType des éléments stockés dans le Tensor.
entier abstrait
nombreOctets ()
Renvoie la taille, en octets, des données du tenseur.
entier abstrait
nombreDimensions ()
Renvoie le nombre de dimensions (parfois appelé rang ) du tenseur.
entier abstrait
numÉléments ()
Renvoie le nombre d'éléments dans une vue aplatie (1-D) du tenseur.
abstract Tensor.QuantizationParams
quantizationParams ()
Renvoie les paramètres de quantification du tenseur dans l'interpréteur propriétaire.
entier abstrait[]
forme ()
Renvoie la forme du Tensor, c'est-à-dire les tailles de chaque dimension.
entier abstrait[]
formeSignature ()
Renvoie la forme d'origine du Tensor, c'est-à-dire la taille de chaque dimension - avant tout redimensionnement.

Méthodes publiques

public abstract ByteBuffer asReadOnlyBuffer ()

Renvoie une vue ByteBuffer en lecture seule des données du tenseur.

En général, cette méthode est plus utile pour obtenir une vue en lecture seule des données de tenseur de sortie, * après * l'inférence a été exécutée (par exemple, via InterpreterApi.run(Object, Object) ). En particulier, certains graphiques ont des sorties de forme dynamique, ce qui peut compliquer l'alimentation 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 tenseur n'a pas encore été alloué, par exemple avant l'exécution de l'inférence, le résultat est indéfini. Notez que le pointeur de tenseur sous-jacent peut également changer lorsque le tenseur est invalidé de quelque manière que ce soit (par exemple, si l'inférence est exécutée ou si le graphique est redimensionné), il n'est donc *pas* sûr de conserver une référence au tampon renvoyé au-delà de l'utilisation immédiate suite directe à 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).

Lance
Exception d'argument illégal si les données du tenseur n'ont pas été allouées.

public abstract DataType dataType ()

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

public abstract int numBytes ()

Renvoie la taille, en octets, des données du tenseur.

public abstract int numDimensions ()

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

Sera 0 pour un scalaire, 1 pour un vecteur, 2 pour une matrice, 3 pour un tenseur tridimensionnel etc.

public abstract int numElements ()

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

public abstract Tensor.QuantizationParams quantizationParams ()

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

Seuls les tenseurs quantifiés ont des QuantizationParameters valides. Pour les tenseurs qui ne sont pas quantifiés, les valeurs de scale et zero_point sont toutes les deux 0.

public abstract int [] forme ()

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

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

public abstract int[] shapeSignature ()

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

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