тензорный поток:: опс:: Конв2D

#include <nn_ops.h>

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

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

Учитывая входной тензор формы [batch, in_height, in_width, in_channels] и тензор фильтра/ядра формы [filter_height, filter_width, in_channels, out_channels] , эта операция выполняет следующее:

  1. Сглаживает фильтр до двумерной матрицы формы [filter_height * filter_width * in_channels, output_channels] .
  2. Извлекает патчи изображения из входного тензора, чтобы сформировать виртуальный тензор формы [batch, out_height, out_width, filter_height * filter_width * in_channels] .
  3. Для каждого патча умножается вправо матрица фильтра и вектор патча изображения.

Подробно, с форматом NHWC по умолчанию

output[b, i, j, k] =
    sum_{di, dj, q} input[b, strides[1] * i + di, strides[2] * j + dj, q] *
                    filter[di, dj, q, k]

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

Аргументы:

  • область: объект области .
  • вход: 4-D тензор. Порядок измерений интерпретируется в соответствии со значением data_format , подробности см. ниже.
  • фильтр: четырехмерный тензор формы [filter_height, filter_width, in_channels, out_channels]
  • шаги: 1D тензор длины 4. Шаг скользящего окна для каждого измерения input . Порядок измерений определяется значением data_format , подробности см. ниже.
  • дополнение: тип используемого алгоритма заполнения.

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

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

Возврат:

  • Output : 4-D тензор. Порядок измерений определяется значением data_format , подробности см. ниже.

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

Conv2D (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding)
Conv2D (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding, const Conv2D::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)
ExplicitPaddings (const gtl::ArraySlice< int > & x)
UseCudnnOnGpu (bool x)

Структуры

tensorflow::ops::Conv2D::Attrs

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

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

операция

Operation operation

выход

::tensorflow::Output output

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

Конв2D

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

Конв2D

 Conv2D(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input filter,
  const gtl::ArraySlice< int > & strides,
  StringPiece padding,
  const Conv2D::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
)

Явные отступы

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

Усекудннонгпу

Attrs UseCudnnOnGpu(
  bool x
)