@frozen
public struct SeparableConv2D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint
Une couche de convolution séparable 2D.
Cette couche effectue une convolution en profondeur qui agit séparément sur les canaux, suivie d'une convolution ponctuelle qui mélange les canaux.
Le noyau de convolution en profondeur 4D.
Déclaration
public var depthwiseFilter: Tensor<Scalar>
Le noyau de convolution ponctuelle 4D.
Déclaration
public var pointwiseFilter: Tensor<Scalar>
Le vecteur de biais.
Déclaration
public var bias: Tensor<Scalar>
La fonction d'activation par élément.
Déclaration
@noDerivative public let activation: Activation
Les avancées de la fenêtre glissante pour les dimensions spatiales.
Déclaration
@noDerivative public let strides: (Int, Int)
L'algorithme de remplissage pour la convolution.
Déclaration
@noDerivative public let padding: Padding
Crée un calque
SeparableConv2D
avec le filtre en profondeur et par point, le biais, la fonction d'activation, les foulées et le remplissage spécifiés.Déclaration
public init( depthwiseFilter: Tensor<Scalar>, pointwiseFilter: Tensor<Scalar>, bias: Tensor<Scalar>? = nil, activation: @escaping Activation = identity, strides: (Int, Int) = (1, 1), padding: Padding = .valid )
Paramètres
depthwiseFilter
Le noyau de convolution en profondeur 4D
[filter height, filter width, input channels count, channel multiplier]
.pointwiseFilter
Le noyau de convolution ponctuelle 4D
[1, 1, channel multiplier * input channels count, output channels count]
.bias
Le vecteur de biais.
activation
La fonction d'activation par élément.
strides
Les avancées de la fenêtre glissante pour les dimensions spatiales.
padding
L'algorithme de remplissage pour la convolution.
Crée un calque
SeparableConv2D
avec la forme de filtre en profondeur et par point, les foulées, le remplissage et la fonction d'activation par élément spécifiés.Déclaration
public init( depthwiseFilterShape: (Int, Int, Int, Int), pointwiseFilterShape: (Int, Int, Int, Int), strides: (Int, Int) = (1, 1), padding: Padding = .valid, activation: @escaping Activation = identity, useBias: Bool = true, depthwiseFilterInitializer: ParameterInitializer<Scalar> = glorotUniform(), pointwiseFilterInitializer: ParameterInitializer<Scalar> = glorotUniform(), biasInitializer: ParameterInitializer<Scalar> = zeros() )
Paramètres
depthwiseFilterShape
La forme du noyau de convolution en profondeur 4D.
pointwiseFilterShape
La forme du noyau de convolution ponctuelle 4D.
strides
Les progrès de la fenêtre glissante pour les dimensions spatiales/spatio-temporelles.
padding
L'algorithme de remplissage pour la convolution.
activation
La fonction d'activation par élément.
filterInitializer
Initialiseur à utiliser pour les paramètres de filtre.
biasInitializer
Initialiseur à utiliser pour les paramètres de biais.