тензорный поток:: опс:: Глубина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) | |
ExplicitPaddings (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 )
Явные отступы
Attrs ExplicitPaddings( const gtl::ArraySlice< int > & x )