Esta página foi traduzida pela API Cloud Translation.
Switch to English

tf.boolean_mask

TensorFlow 1 versão Ver fonte no GitHub

Aplicar boolean máscara para tensor.

Equivalente Numpy é tensor[mask] .

 # 1-D example
tensor = [0, 1, 2, 3]
mask = np.array([True, False, True, False])
boolean_mask(tensor, mask)  # [0, 2]
 

Em geral, 0 < dim(mask) = K <= dim(tensor) , e mask da forma devem coincidir com os primeiros K dimensões de tensor 'forma s. Temos então: boolean_mask(tensor, mask)[i, j1,...,jd] = tensor[i1,...,iK,j1,...,jd] onde (i1,...,iK) é o om True entrada de mask (ordem da maior linha). O axis pode ser usado com mask para indicar o eixo para mascarar a partir. Nesse caso, axis + dim(mask) <= dim(tensor) e mask da forma deve corresponder ao primeiro axis + dim(mask) dimensões do tensor 'forma s.

Veja também: tf.ragged.boolean_mask , que pode ser aplicado tanto densa e tensores irregulares, e pode ser usado se você precisar preservar as dimensões mascarados de tensor (em vez de achatamento eles, como tf.boolean_mask faz).

tensor tensor ND.
mask KD booleano tensor, K <= N e K tem que ser conhecido estaticamente.
axis A 0-D int Tensor representando o eixo em tensor para mascarar a partir de. Por padrão, o eixo é 0, que irá mascarar a partir da primeira dimensão. Caso contrário, K + eixo <= N.
name Um nome para esta operação (opcional).

(N-K + 1) tensor -dimensional povoada por entradas no tensor correspondentes aos True valores na mask .

ValueError Se formas não estão em conformidade.

Exemplos:

 # 2-D example
tensor = [[1, 2], [3, 4], [5, 6]]
mask = np.array([True, False, True])
boolean_mask(tensor, mask)  # [[1, 2], [5, 6]]