Konw3D

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

Warstwa splotu 3-D do splotu przestrzennego/przestrzenno-czasowego na obrazach.

Warstwa ta tworzy filtr splotu, który jest splatany z wejściem warstwy w celu wytworzenia tensora wyników.

  • Filtr splotu 5-D.

    Deklaracja

    public var filter: Tensor<Scalar>
  • Wektor odchylenia.

    Deklaracja

    public var bias: Tensor<Scalar>
  • Elementowa funkcja aktywacji.

    Deklaracja

    @noDerivative
    public let activation: Activation
  • Kroki okna przesuwnego dla wymiarów przestrzennych.

    Deklaracja

    @noDerivative
    public let strides: (Int, Int, Int)
  • Algorytm dopełniania splotu.

    Deklaracja

    @noDerivative
    public let padding: Padding
  • Współczynnik dylatacji dla wymiarów przestrzennych/przestrzenno-czasowych.

    Deklaracja

    @noDerivative
    public let dilations: (Int, Int, Int)
  • Elementowy typ funkcji aktywacji.

    Deklaracja

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • Tworzy warstwę Conv3D z określonym filtrem, odchyleniem, funkcją aktywacji, krokami i dopełnieniem.

    Deklaracja

    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)
    )

    Parametry

    filter

    Filtr splotu 5-D o kształcie [głębokość filtra, wysokość filtra, szerokość filtra, liczba kanałów wejściowych, liczba kanałów wyjściowych].

    bias

    Wektor odchylenia kształtu [liczba kanałów wyjściowych].

    activation

    Elementowa funkcja aktywacji.

    strides

    Kroki okna przesuwnego dla wymiarów przestrzennych tj. (głębokość kroku, wysokość kroku, szerokość kroku)

    padding

    Algorytm dopełniania splotu.

    dilations

    Współczynnik dylatacji dla wymiarów przestrzennych/przestrzenno-czasowych.

  • Zwraca wynik uzyskany po zastosowaniu warstwy do podanych danych wejściowych.

    Wyjściowe wymiary przestrzenne oblicza się jako:

    głębokość wyjściowa = (głębokość wejściowa + 2 * głębokość wyściółki - (głębokość dylatacji * (głębokość filtra - 1) + 1)) / głębokość kroku + 1

    wysokość wyjściowa = (wysokość wejściowa + 2 * wysokość wyściółki - (wysokość dylatacji * (wysokość filtra - 1) + 1)) / wysokość kroku + 1

    szerokość wyjściowa = (szerokość wejściowa + 2 * szerokość wyściółki - (szerokość dylatacji * (szerokość filtra - 1) + 1)) / szerokość kroku + 1

    a rozmiary dopełnienia są określone przez schemat dopełnienia.

    Notatka

    Rozmiar dopełnienia wynosi zero w przypadku użycia .valid .

    Deklaracja

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

    Parametry

    input

    Dane wejściowe do warstwy kształtu [liczba partii, głębokość wejściowa, wysokość wejściowa, szerokość wejściowa, liczba kanałów wejściowych].

    Wartość zwracana

    Wynik kształtu [liczba partii, głębokość wyjściowa, wysokość wyjściowa, szerokość wyjściowa, liczba kanałów wyjściowych].

  • Tworzy warstwę Conv3D z określonym kształtem filtra, krokami, dopełnieniem, rozszerzeniami i funkcją aktywacji opartej na elementach. Tensor filtra jest inicjowany przy użyciu jednolitej inicjalizacji Glorot z określonym ziarnem. Wektor odchylenia jest inicjowany zerami.

    Deklaracja

    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()
    )

    Parametry

    filterShape

    Kształt filtra splotu 5-D reprezentujący (głębokość filtra, wysokość filtra, szerokość filtra, liczba kanałów wejściowych, liczba kanałów wyjściowych).

    strides

    Kroki okna przesuwnego dla wymiarów przestrzennych tj. (głębokość kroku, wysokość kroku, szerokość kroku)

    padding

    Algorytm dopełniania splotu.

    dilations

    Współczynnik dylatacji dla wymiarów przestrzennych/przestrzenno-czasowych.

    activation

    Elementowa funkcja aktywacji.

    filterInitializer

    Inicjator do użycia dla parametrów filtra.

    biasInitializer

    Inicjator do użycia dla parametrów odchylenia.