FractionalMaxPool

FractionalMaxPool classe final pública

Executa o pooling máximo fracionário na entrada.

O pool máximo fracionário é ligeiramente diferente do pool máximo regular. No pool máximo regular, você reduz o tamanho de um conjunto de entrada tomando o valor máximo de N x N subseções menores do conjunto (geralmente 2x2) e tenta reduzir o conjunto por um fator de N, onde N é um inteiro. O pooling 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 pool são gerados aleatoriamente, mas são bastante uniformes. Por exemplo, vamos examinar a dimensão da altura e as restrições na lista de linhas que serão os 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 do 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 da piscina

Então, row_pool_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. comprimento (row_pooling_sequence) = output_row_length + 1

Para obter mais detalhes sobre o pool máximo fracionário, consulte este artigo: [Benjamin Graham, Fractional Max-Pooling] (http://arxiv.org/abs/1412.6071)

Classes aninhadas

classe FractionalMaxPool.Options Atributos opcionais para FractionalMaxPool

Constantes

Fragmento OP_NAME O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Métodos Públicos

Output < TInt64 >
colPoolingSequence ()
sequência de agrupamento de colunas, necessária para calcular o gradiente.
estática <T estende TNumber > FractionalMaxPool <T>
criar ( Scope escopo, Operando <T> valor, List <float> poolingRatio, Options ... Opções)
Método de fábrica para criar uma classe envolvendo uma nova operação FractionalMaxPool.
estáticos FractionalMaxPool.Options
determinista (booleano determinístico)
Output <T>
saída ()
tensor de saída após pooling máximo fracionário.
estáticos FractionalMaxPool.Options
sobreposição (booleano sobreposição)
estáticos FractionalMaxPool.Options
pseudo-aleatório (booleano Pseudorandom)
Output < TInt64 >
rowPoolingSequence ()
sequência de pooling de linhas, necessária para calcular o gradiente.
estáticos FractionalMaxPool.Options
sementes (semente Long)
estáticos FractionalMaxPool.Options
seed2 (seed2 Long)

Métodos herdados

Constantes

nome_op final String public static

O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Valor constante: "FractionalMaxPool"

Métodos Públicos

pública Output < TInt64 > colPoolingSequence ()

sequência de agrupamento de colunas, necessária para calcular o gradiente.

public static FractionalMaxPool <T> create ( Scope escopo, Operando <T> valor, List <float> poolingRatio, Options ... Opções)

Método de fábrica para criar uma classe envolvendo uma nova operação FractionalMaxPool.

Parâmetros
alcance escopo atual
valor 4-D com forma `[lote, altura, largura, canais]`.
poolingRatio A proporção de pooling para cada dimensão de `valor`, atualmente suporta apenas dimensão 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 o agrupamento em dimensões de lote e canais. 1,44 e 1,73 são a proporção de pool 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 determinista (determinista Boolean)

Parâmetros
determinista Quando definido como True, uma região de pool fixa será usada ao iterar sobre um nó FractionalMaxPool no gráfico de computação. Usado principalmente em teste de unidade para tornar FractionalMaxPool determinístico.

pública Output <T> de saída ()

tensor de saída após pooling máximo fracionário.

public static FractionalMaxPool.Options sobrepostas (Boolean sobreposição)

Parâmetros
sobreposto Quando definido como True, significa que, ao agrupar, os valores no limite das células de agrupamento adjacentes sã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 pooling máximo fracionário.

public static FractionalMaxPool.Options pseudo-aleatórios (Boolean pseudo-aleatórios)

Parâmetros
pseudoRandom Quando definido como True, gera a sequência de agrupamento de forma pseudo-aleatória, caso contrário, de forma aleatória. Verifique o papel [Benjamin Graham, Fractional Max-Pooling] (http://arxiv.org/abs/1412.6071) para diferenças entre pseudo-aleatório e aleatório.

pública Output < TInt64 > rowPoolingSequence ()

sequência de pooling de linhas, necessária para calcular o gradiente.

public static FractionalMaxPool.Options semente (seed Long)

Parâmetros
semente Se seed ou seed2 forem definidos como diferentes de zero, o gerador de número aleatório é propagado por um determinado seed. Caso contrário, é semeado por uma semente aleatória.

public static FractionalMaxPool.Options seed2 (seed2 Long)

Parâmetros
seed2 Uma segunda semente para evitar a colisão de sementes.