Executa pooling máximo fracionário na entrada.
O pool máximo fracionário é um pouco diferente do pool máximo normal. No pooling máximo regular, você reduz o tamanho de um conjunto de entrada pegando o valor máximo das subseções N x N menores do conjunto (geralmente 2x2) e tenta reduzir o conjunto por um fator de N, onde N é um número inteiro. O agrupamento máximo fracionário, como você pode esperar da palavra "fracionário", significa que a taxa de redução geral N não precisa ser um número inteiro.
Os tamanhos das regiões de agrupamento são gerados aleatoriamente, mas são bastante uniformes. Por exemplo, vejamos a dimensão da altura e as restrições na lista de linhas que serão limites do pool.
Primeiro definimos o seguinte:
1. input_row_length: o número de linhas do conjunto de entrada 2. output_row_length: que será menor que a entrada 3. alpha = input_row_length / output_row_length: nossa taxa de redução 4. K = floor(alpha) 5. row_pooling_sequence: este é o resultado lista de linhas de limite do pool
Então, row_pooling_sequence deve satisfazer:
1. a[0] = 0: o primeiro valor da sequência é 0 2. a[end] = input_row_length: o último valor da sequência é o tamanho 3. K <= (a[i+1] - a[ i]) <= K+1: todos os intervalos são K ou K+1 tamanho 4. length(row_pooling_sequence) = output_row_length+1
Para obter mais detalhes sobre pooling máximo fracionário, consulte este artigo: [Benjamin Graham, Fractional Max-Pooling](http://arxiv.org/abs/1412.6071)
Classes aninhadas
aula | FractionalMaxPool.Options | Atributos opcionais para FractionalMaxPool |
Constantes
Corda | OP_NAME | O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow |
Métodos Públicos
Saída < TInt64 > | colPoolingSequence () sequência de agrupamento de colunas, necessária para calcular o gradiente. |
estático <T estende TNumber > FractionalMaxPool <T> | create (escopo do escopo , valor do operando <T>, List<Float> poolingRatio, Options... opções) Método de fábrica para criar uma classe que envolve uma nova operação FractionalMaxPool. |
FractionalMaxPool.Options estático | determinístico (determinístico booleano) |
Saída <T> | saída () tensor de saída após pooling máximo fracionário. |
FractionalMaxPool.Options estático | sobreposição (sobreposição booleana) |
FractionalMaxPool.Options estático | pseudoRandom (pseudoRandom booleano) |
Saída < TInt64 > | rowPoolingSequence () sequência de agrupamento de linhas, necessária para calcular o gradiente. |
FractionalMaxPool.Options estático | semente (semente longa) |
FractionalMaxPool.Options estático | seed2 (semente2 longa) |
Métodos herdados
Constantes
String final estática pública OP_NAME
O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow
Métodos Públicos
Saída pública < TInt64 > colPoolingSequence ()
sequência de agrupamento de colunas, necessária para calcular o gradiente.
public static FractionalMaxPool <T> create ( escopo do escopo , valor do operando <T>, List<Float> poolingRatio, Options... opções)
Método de fábrica para criar uma classe que envolve uma nova operação FractionalMaxPool.
Parâmetros
escopo | escopo atual |
---|---|
valor | 4-D com forma `[lote, altura, largura, canais]`. |
poolingRatio | A proporção de agrupamento para cada dimensão de `valor`, atualmente suporta apenas dimensões de linha e coluna e deve ser >= 1,0. Por exemplo, uma proporção de agrupamento válida se parece com [1,0, 1,44, 1,73, 1,0]. O primeiro e o último elementos devem ser 1,0 porque não permitimos agrupamento em dimensões de lote e canais. 1,44 e 1,73 são a proporção de agrupamento nas dimensões de altura e largura, respectivamente. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância de FractionalMaxPool
public static FractionalMaxPool.Options determinístico (determinístico booleano)
Parâmetros
determinístico | Quando definido como True, uma região de pooling fixa será usada ao iterar sobre um nó FractionalMaxPool no gráfico de computação. Usado principalmente em testes de unidade para tornar FractionalMaxPool determinístico. |
---|
public static FractionalMaxPool.Options sobreposto (sobreposição booleana)
Parâmetros
sobreposição | Quando definido como True, significa que durante o pool, os valores no limite das células adjacentes do pool serão usados por ambas as células. Por exemplo: `índice 0 1 2 3 4` `valor 20 5 16 3 7` Se a sequência de agrupamento for [0, 2, 4], então 16, no índice 2, será usado duas vezes. O resultado seria [20, 16] para pool máximo fracionário. |
---|
public static FractionalMaxPool.Options pseudoRandom (Boolean pseudoRandom)
Parâmetros
pseudoRandom | Quando definido como True, gera a sequência de agrupamento de forma pseudoaleatória, caso contrário, de forma aleatória. Verifique o artigo [Benjamin Graham, Fractional Max-Pooling](http://arxiv.org/abs/1412.6071) para ver a diferença entre pseudoaleatório e aleatório. |
---|
Saída pública < TInt64 > rowPoolingSequence ()
sequência de agrupamento de linhas, necessária para calcular o gradiente.
semente estática pública FractionalMaxPool.Options (semente longa)
Parâmetros
semente | Se seed ou seed2 forem definidos como diferentes de zero, o gerador de números aleatórios será propagado pela semente fornecida. Caso contrário, é semeado por uma semente aleatória. |
---|
público estático FractionalMaxPool.Options seed2 (seed2 longo)
Parâmetros
semente2 | Uma segunda semente para evitar colisão de sementes. |
---|