SeparableConv1D

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

Una capa de convolución separable 1-D.

Esta capa realiza una convolución en profundidad que actúa por separado en los canales seguida de una convolución puntual que mezcla canales.

  • El núcleo de convolución profunda tridimensional.

    Declaración

    public var depthwiseFilter: Tensor<Scalar>
  • El núcleo de convolución puntual 3-D.

    Declaración

    public var pointwiseFilter: Tensor<Scalar>
  • El vector de sesgo.

    Declaración

    public var bias: Tensor<Scalar>
  • La función de activación por elementos.

    Declaración

    @noDerivative
    public let activation: Activation
  • Los pasos de la ventana corredera para las dimensiones espaciales.

    Declaración

    @noDerivative
    public let stride: Int
  • El algoritmo de relleno para la convolución.

    Declaración

    @noDerivative
    public let padding: Padding
  • El tipo de función de activación por elementos.

    Declaración

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • Crea una capa SeparableConv1D con el filtro en profundidad y en puntos, el sesgo, la función de activación, los avances y el relleno especificados.

    Declaración

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

    Parámetros

    depthwiseFilter

    El núcleo de convolución en profundidad tridimensional [filter width, input channels count, channel multiplier] .

    pointwiseFilter

    El núcleo de convolución puntual 3-D [1, channel multiplier * input channels count, output channels count] .

    bias

    El vector de sesgo.

    activation

    La función de activación por elementos.

    strides

    Los pasos de la ventana corredera para las dimensiones espaciales.

    padding

    El algoritmo de relleno para la convolución.

  • Devuelve el resultado obtenido al aplicar la capa a la entrada dada.

    Declaración

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

    Parámetros

    input

    La entrada a la capa.

    Valor de retorno

    La salida.

  • Crea una capa SeparableConv1D con la forma de filtro puntual y en profundidad, los pasos, el relleno y la función de activación de elementos especificados.

    Declaración

    public init(
      depthwiseFilterShape: (Int, Int, Int),
      pointwiseFilterShape: (Int, Int, Int),
      stride: Int = 1,
      padding: Padding = .valid,
      activation: @escaping Activation = identity,
      useBias: Bool = true,
      depthwiseFilterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      pointwiseFilterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      biasInitializer: ParameterInitializer<Scalar> = zeros()
    )

    Parámetros

    depthwiseFilterShape

    La forma del núcleo de convolución en profundidad tridimensional.

    pointwiseFilterShape

    La forma del núcleo de convolución puntual tridimensional.

    strides

    Los pasos de la ventana corredera para las dimensiones temporales.

    padding

    El algoritmo de relleno para la convolución.

    activation

    La función de activación por elementos.

    filterInitializer

    Inicializador que se utilizará para los parámetros del filtro.

    biasInitializer

    Inicializador que se utilizará para los parámetros de polarización.