Copiez un tenseur mettant à zéro tout ce qui se trouve en dehors d'une bande centrale dans chaque matrice la plus interne.
La partie « bande » est calculée comme suit : Supposons que « l'entrée » ait des « k » dimensions « [I, J, K, ..., M, N] », alors la sortie est un tenseur de même forme où
`bande[i, j, k, ..., m, n] = in_band(m, n) * input[i, j, k, ..., m, n]`.
La fonction indicateur
`in_band(m, n) = (num_lower < 0 || (mn) <= num_lower)) && (num_upper < 0 || (nm) <= num_upper)`.
Par exemple:
# if 'input' is [[ 0, 1, 2, 3]
[-1, 0, 1, 2]
[-2, -1, 0, 1]
[-3, -2, -1, 0]],
tf.matrix_band_part(input, 1, -1) ==> [[ 0, 1, 2, 3]
[-1, 0, 1, 2]
[ 0, -1, 0, 1]
[ 0, 0, -1, 0]],
tf.matrix_band_part(input, 2, 1) ==> [[ 0, 1, 0, 0]
[-1, 0, 1, 0]
[-2, -1, 0, 1]
[ 0, -2, -1, 0]]
Cas particuliers utiles : tf.matrix_band_part(input, 0, -1) ==> Upper triangular part.
tf.matrix_band_part(input, -1, 0) ==> Lower triangular part.
tf.matrix_band_part(input, 0, 0) ==> Diagonal.
Constantes
Chaîne | OP_NAME | Le nom de cette opération, tel que connu par le moteur principal TensorFlow |
Méthodes publiques
Sortie <T> | comme Sortie () Renvoie le handle symbolique du tenseur. |
Sortie <T> | groupe () Tenseur de rang « k » de la même forme que l'entrée. |
static <T étend TType , U étend TNumber > BandPart <T> |
Méthodes héritées
Constantes
chaîne finale statique publique OP_NAME
Le nom de cette opération, tel que connu par le moteur principal TensorFlow
Méthodes publiques
sortie publique <T> asOutput ()
Renvoie le handle symbolique du tenseur.
Les entrées des opérations TensorFlow sont les sorties d'une autre opération TensorFlow. Cette méthode est utilisée pour obtenir un handle symbolique qui représente le calcul de l’entrée.
bande de sortie publique <T> ()
Tenseur de rang « k » de la même forme que l'entrée. Le tenseur bandes extrait.
public static BandPart <T> créer (portée de portée , entrée d' opérande <T>, opérande <U> numLower, opérande <U> numUpper)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération BandPart.
Paramètres
portée | portée actuelle |
---|---|
saisir | Tenseur de rang « k ». |
numInférieur | Tenseur 0-D. Nombre de sous-diagonales à conserver. Si négatif, conservez tout le triangle inférieur. |
numUpper | Tenseur 0-D. Nombre de superdiagonales à conserver. Si négatif, conservez tout le triangle supérieur. |
Retours
- une nouvelle instance de BandPart