тензорный поток:: опс:: ГлубинаConv2dNative

#include <nn_ops.h>

Вычисляет двумерную глубинную свертку с учетом четырехмерных input и тензоров filter .

Краткое содержание

Учитывая входной тензор формы [batch, in_height, in_width, in_channels] и тензор фильтра/ядра формы [filter_height, filter_width, in_channels, channel_multiplier] , содержащий сверточные фильтры in_channels глубины 1, depthwise_conv2d применяет разные фильтры к каждому входному каналу (расширяясь от 1 канала до каналов channel_multiplier для каждого), затем объединяет результаты вместе. Таким образом, на выходе есть каналы 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]

Должно быть strides[0] = strides[3] = 1 . Для наиболее распространенного случая одинаковых шагов по горизонтали и вершинам, strides = [1, stride, stride, 1] .

Аргументы:

  • область: объект области .
  • шаги: 1-D длиной 4. Шаг скользящего окна для каждого измерения input .
  • дополнение: тип используемого алгоритма заполнения.

Необязательные атрибуты (см. Attrs ):

  • data_format: укажите формат входных и выходных данных. В формате по умолчанию «NHWC» данные сохраняются в следующем порядке: [пакет, высота, ширина, каналы]. Альтернативно, формат может быть «NCHW», порядок хранения данных: [пакет, каналы, высота, ширина].
  • расширения: одномерный тензор длины 4. Коэффициент расширения для каждого измерения input . Если установлено значение k > 1, между каждым фильтрующим элементом в этом измерении будет k-1 пропущенных ячеек. Порядок измерений определяется значением data_format , подробности см. выше. Расширения размеров партии и глубины должны быть равны 1.

Возврат:

  • Output : выходной тензор.

Конструкторы и деструкторы

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)

Публичные атрибуты

operation
output

Общественные функции

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Публичные статические функции

DataFormat (StringPiece x)
Dilations (const gtl::ArraySlice< int > & x)

Структуры

tensorflow::ops:: DepthwiseConv2dNative:: Attrs

Дополнительные установщики атрибутов для DepthwiseConv2dNative .

Публичные атрибуты

операция

Operation operation

выход

::tensorflow::Output output

Общественные функции

ГлубинаConv2dNative

 DepthwiseConv2dNative(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input filter,
  const gtl::ArraySlice< int > & strides,
  StringPiece padding
)

ГлубинаConv2dNative

 DepthwiseConv2dNative(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input filter,
  const gtl::ArraySlice< int > & strides,
  StringPiece padding,
  const DepthwiseConv2dNative::Attrs & attrs
)

узел

::tensorflow::Node * node() const 

оператор::tensorflow::Input

 operator::tensorflow::Input() const 

оператор::tensorflow::Выход

 operator::tensorflow::Output() const 

Публичные статические функции

Формат данных

Attrs DataFormat(
  StringPiece x
)

Расширения

Attrs Dilations(
  const gtl::ArraySlice< int > & x
)