@frozen
public struct Conv2D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint
Una capa de convolución 2-D (por ejemplo, convolución espacial sobre imágenes).
Esta capa crea un filtro de convolución que se convoluciona con la entrada de la capa para producir un tensor de salidas.
El filtro de convolución 4-D.
Declaración
public var filter: 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 deslizante para dimensiones espaciales.
Declaración
@noDerivative public let strides: (Int, Int)
El algoritmo de relleno para convolución.
Declaración
@noDerivative public let padding: Padding
El factor de dilatación de las dimensiones espaciales.
Declaración
@noDerivative public let dilations: (Int, Int)
Crea un
Conv2D
capa con el filtro, el sesgo, la función de activación, zancadas, dilataciones y el relleno especificados.Declaración
public init( filter: Tensor<Scalar>, bias: Tensor<Scalar>? = nil, activation: @escaping Activation = identity, strides: (Int, Int) = (1, 1), padding: Padding = .valid, dilations: (Int, Int) = (1, 1) )
Parámetros
filter
El filtro de convolución 4-D de forma [altura del filtro, ancho del filtro, recuento de canales de entrada, recuento de canales de salida].
bias
El vector de polarización de la forma [recuento de canales de salida].
activation
La función de activación por elementos.
strides
Los pasos de la ventana deslizante para las dimensiones espaciales, es decir (altura de paso, ancho de paso).
padding
El algoritmo de relleno para convolución.
dilations
Los factores de dilatación para las dimensiones espaciales, es decir (altura de dilatación, ancho de dilatación).
Devuelve la salida obtenida al aplicar la capa a la entrada dada.
Las dimensiones espaciales de salida se calculan como:
altura de salida = (altura de entrada + 2 * altura de relleno - (altura de dilatación * (altura de filtro - 1) + 1)) / altura de zancada + 1
ancho de salida = (ancho de entrada + 2 * ancho de relleno - (ancho de dilatación * (ancho de filtro - 1) + 1)) / ancho de zancada + 1
y los tamaños de acolchado están determinados por el esquema de acolchado.
Nota
Relleno tamaño es igual a cero cuando se utiliza
.valid
.Parámetros
input
La entrada a la capa de forma [tamaño de lote, altura de entrada, ancho de entrada, recuento de canales de entrada].
Valor devuelto
La salida de forma [recuento de lotes, altura de salida, ancho de salida, recuento de canales de salida].
init (filterShape: strides: padding: dilations: activación: useBias: filterInitializer: biasInitializer :)
Crea un
Conv2D
capa con el filtro de forma, zancadas, relleno, dilataciones especificados y la función de activación de elemento a elemento.Declaración
public init( filterShape: (Int, Int, Int, Int), strides: (Int, Int) = (1, 1), padding: Padding = .valid, dilations: (Int, Int) = (1, 1), activation: @escaping Activation = identity, useBias: Bool = true, filterInitializer: ParameterInitializer<Scalar> = glorotUniform(), biasInitializer: ParameterInitializer<Scalar> = zeros() )
Parámetros
filterShape
La forma del filtro de convolución 4-D, que representa (altura del filtro, ancho del filtro, recuento de canales de entrada, recuento de canales de salida).
strides
Los pasos de la ventana deslizante para las dimensiones espaciales, es decir (altura de paso, ancho de paso).
padding
El algoritmo de relleno para convolución.
dilations
Los factores de dilatación para las dimensiones espaciales, es decir (altura de dilatación, ancho de dilatació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.