Conv3D

@frozen
public struct Conv3D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint

Uma camada de convolução 3-D para convolução espacial/espaço-temporal sobre imagens.

Esta camada cria um filtro de convolução que é convoluído com a entrada da camada para produzir um tensor de saídas.

  • O filtro de convolução 5-D.

    Declaração

    public var filter: Tensor<Scalar>
  • O vetor de polarização.

    Declaração

    public var bias: Tensor<Scalar>
  • A função de ativação elemento a elemento.

    Declaração

    @noDerivative
    public let activation: Activation
  • Os avanços da janela deslizante para dimensões espaciais.

    Declaração

    @noDerivative
    public let strides: (Int, Int, Int)
  • O algoritmo de preenchimento para convolução.

    Declaração

    @noDerivative
    public let padding: Padding
  • O fator de dilatação para dimensões espaciais/espaço-temporais.

    Declaração

    @noDerivative
    public let dilations: (Int, Int, Int)
  • O tipo de função de ativação elemento a elemento.

    Declaração

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • Cria uma camada Conv3D com filtro, polarização, função de ativação, avanços e preenchimento especificados.

    Declaração

    public init(
      filter: Tensor<Scalar>,
      bias: Tensor<Scalar>? = nil,
      activation: @escaping Activation = identity,
      strides: (Int, Int, Int) = (1, 1, 1),
      padding: Padding = .valid,
      dilations: (Int, Int, Int) = (1, 1, 1)
    )

    Parâmetros

    filter

    O filtro de convolução 5-D de formato [profundidade do filtro, altura do filtro, largura do filtro, contagem de canais de entrada, contagem de canais de saída].

    bias

    O vetor de polarização da forma [contagem de canais de saída].

    activation

    A função de ativação elemento a elemento.

    strides

    Os avanços da janela deslizante para dimensões espaciais, ou seja, (profundidade do passo, altura do passo, largura do passo)

    padding

    O algoritmo de preenchimento para convolução.

    dilations

    O fator de dilatação para dimensões espaciais/espaço-temporais.

  • Retorna a saída obtida ao aplicar a camada à entrada fornecida.

    As dimensões espaciais de saída são calculadas como:

    profundidade de saída = (profundidade de entrada + 2 * profundidade de preenchimento - (profundidade de dilatação * (profundidade do filtro - 1) + 1)) / profundidade da passada + 1

    altura de saída = (altura de entrada + 2 * altura de preenchimento - (altura de dilatação * (altura do filtro - 1) + 1)) / altura da passada + 1

    largura de saída = (largura de entrada + 2 * largura de preenchimento - (largura de dilatação * (largura do filtro - 1) + 1)) / largura da passada + 1

    e os tamanhos de preenchimento são determinados pelo esquema de preenchimento.

    Observação

    O tamanho do preenchimento é igual a zero ao usar .valid .

    Declaração

    @differentiable
    public func forward(_ input: Tensor<Scalar>) -> Tensor<Scalar>

    Parâmetros

    input

    A entrada para a camada de forma [contagem de lote, profundidade de entrada, altura de entrada, largura de entrada, contagem de canais de entrada].

    Valor de retorno

    A saída da forma [contagem de lote, profundidade de saída, altura de saída, largura de saída, contagem de canais de saída].

  • Cria uma camada Conv3D com a forma de filtro especificada, avanços, preenchimento, dilatações e função de ativação por elemento. O tensor do filtro é inicializado usando a inicialização uniforme Glorot com a semente especificada. O vetor de polarização é inicializado com zeros.

    Declaração

    public init(
      filterShape: (Int, Int, Int, Int, Int),
      strides: (Int, Int, Int) = (1, 1, 1),
      padding: Padding = .valid,
      dilations: (Int, Int, Int) = (1, 1, 1),
      activation: @escaping Activation = identity,
      useBias: Bool = true,
      filterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      biasInitializer: ParameterInitializer<Scalar> = zeros()
    )

    Parâmetros

    filterShape

    A forma do filtro de convolução 5-D, representando (profundidade do filtro, altura do filtro, largura do filtro, contagem de canais de entrada, contagem de canais de saída).

    strides

    Os avanços da janela deslizante para dimensões espaciais, ou seja, (profundidade do passo, altura do passo, largura do passo)

    padding

    O algoritmo de preenchimento para convolução.

    dilations

    O fator de dilatação para dimensões espaciais/espaço-temporais.

    activation

    A função de ativação elemento a elemento.

    filterInitializer

    Inicializador a ser usado para os parâmetros de filtro.

    biasInitializer

    Inicializador a ser usado para os parâmetros de polarização.