przepływ tensorowy:: ops:: DepthwiseConv2dNative
#include <nn_ops.h>
Oblicza splot wgłębny 2-D, biorąc pod uwagę input
4-D i tensory filter
.
Streszczenie
Biorąc pod uwagę tensor wejściowy kształtu [batch, in_height, in_width, in_channels]
i tensor filtra/jądra kształtu [filter_height, filter_width, in_channels, channel_multiplier]
zawierający filtry splotowe in_channels
o głębokości 1, depthwise_conv2d
stosuje inny filtr do każdego kanału wejściowego (rozszerzając się z 1 kanału do kanałów channel_multiplier
dla każdego), a następnie łączy wyniki razem. Zatem na wyjściu znajdują się kanały in_channels * channel_multiplier
.
for k in 0..in_channels-1 for q in 0..channel_multiplier-1 output[b, i, j, k * channel_multiplier + q] = sum_{di, dj} input[b, strides[1] * i + di, strides[2] * j + dj, k] * filter[di, dj, k, q]
Musi mieć strides[0] = strides[3] = 1
. W najczęstszym przypadku tych samych kroków poziomych i wierzchołków, strides = [1, stride, stride, 1]
.
Argumenty:
- zakres: Obiekt Scope
- kroki: 1-D o długości 4. Krok przesuwanego okna dla każdego wymiaru
input
. - dopełnienie: typ algorytmu dopełniania, który ma zostać użyty.
Opcjonalne atrybuty (patrz Attrs
):
- data_format: Określ format danych wejściowych i wyjściowych. Przy domyślnym formacie „NHWC” dane są zapisywane w kolejności: [partia, wysokość, szerokość, kanały]. Alternatywnie formatem może być „NCHW”, a kolejność przechowywania danych: [partia, kanały, wysokość, szerokość].
- dylatacje: 1-D tensor długości 4. Współczynnik dylatacji dla każdego wymiaru
input
. Jeśli ustawione na k > 1, pomiędzy każdym elementem filtrującym w tym wymiarze zostanie pominiętych komórek k-1. Kolejność wymiarów jest określona przez wartośćdata_format
, szczegóły znajdziesz powyżej. Dylatacje w wymiarach partii i głębokości muszą wynosić 1.
Zwroty:
-
Output
: Tensor wyjściowy.
Konstruktory i destruktory | |
---|---|
DepthwiseConv2dNative (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding) | |
DepthwiseConv2dNative (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding, const DepthwiseConv2dNative::Attrs & attrs) |
Atrybuty publiczne | |
---|---|
operation | |
output |
Funkcje publiczne | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
Publiczne funkcje statyczne | |
---|---|
DataFormat (StringPiece x) | |
Dilations (const gtl::ArraySlice< int > & x) | |
ExplicitPaddings (const gtl::ArraySlice< int > & x) |
Struktury | |
---|---|
tensorflow:: ops:: DepthwiseConv2dNative:: Attrs | Opcjonalne moduły ustawiające atrybuty dla DepthwiseConv2dNative . |
Atrybuty publiczne
działanie
Operation operation
wyjście
::tensorflow::Output output
Funkcje publiczne
DepthwiseConv2dNative
DepthwiseConv2dNative( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding )
DepthwiseConv2dNative
DepthwiseConv2dNative( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding, const DepthwiseConv2dNative::Attrs & attrs )
węzeł
::tensorflow::Node * node() const
operator::tensorflow::Wejście
operator::tensorflow::Input() const
operator::tensorflow::Wyjście
operator::tensorflow::Output() const
Publiczne funkcje statyczne
Format danych
Attrs DataFormat( StringPiece x )
Dylatacje
Attrs Dilations( const gtl::ArraySlice< int > & x )
Wyraźne wyściółki
Attrs ExplicitPaddings( const gtl::ArraySlice< int > & x )