@frozen
public struct Conv1D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint
1-D 畳み込み層 (時系列にわたる時間畳み込みなど)。
この層は、層の入力と畳み込まれて出力のテンソルを生成する畳み込みフィルターを作成します。
3D 畳み込みフィルター。
宣言
public var filter: Tensor<Scalar>
バイアスベクトル。
宣言
public var bias: Tensor<Scalar>
要素ごとの活性化関数。
宣言
@noDerivative public let activation: Activation
時間次元のスライディング ウィンドウのストライド。
宣言
@noDerivative public let stride: Int
畳み込み用のパディング アルゴリズム。
宣言
@noDerivative public let padding: Padding
時間次元の拡張係数。
宣言
@noDerivative public let dilation: Int
指定されたフィルター、バイアス、活性化関数、ストライド、拡張、およびパディングを使用して
Conv1D
レイヤーを作成します。宣言
public init( filter: Tensor<Scalar>, bias: Tensor<Scalar>? = nil, activation: @escaping Activation = identity, stride: Int = 1, padding: Padding = .valid, dilation: Int = 1 )
パラメータ
filter
[フィルター幅、入力チャンネル数、出力チャンネル数] の形状の 3D 畳み込みフィルター。
bias
形状 [出力チャンネル数] のバイアス ベクトル。
activation
要素ごとの活性化関数。
stride
時間次元のスライディング ウィンドウのストライド。
padding
畳み込み用のパディング アルゴリズム。
dilation
時間次元の拡張係数。
指定された入力にレイヤーを適用して得られた出力を返します。
出力幅は次のように計算されます。
出力幅 = (入力幅 + 2 * パディング サイズ - (拡張 * (フィルター幅 - 1) + 1)) / ストライド + 1
パディング サイズはパディング スキームによって決まります。
注記
.valid
を使用する場合、パディング サイズはゼロになります。パラメータ
input
レイヤーへの入力 [バッチ サイズ、入力幅、入力チャネル数]。
戻り値
形状 [バッチ サイズ、出力幅、出力チャネル数] の出力。
指定されたフィルター形状、ストライド、パディング、拡張、および要素ごとのアクティベーション関数を使用して
Conv1D
レイヤーを作成します。宣言
public init( filterShape: (Int, Int, Int), stride: Int = 1, padding: Padding = .valid, dilation: Int = 1, activation: @escaping Activation = identity, useBias: Bool = true, filterInitializer: ParameterInitializer<Scalar> = glorotUniform(), biasInitializer: ParameterInitializer<Scalar> = zeros() )
パラメータ
filterShape
(フィルター幅、入力チャンネル数、出力チャンネル数) を表すフィルターの 3D 形状。
stride
時間次元のスライディング ウィンドウのストライド。
padding
畳み込み用のパディング アルゴリズム。
dilation
時間次元の拡張係数。
activation
要素ごとの活性化関数。
filterInitializer
フィルタパラメータに使用するイニシャライザ。
biasInitializer
バイアスパラメータに使用するイニシャライザ。