tensorflow::ops::DepthwiseConv2dNative
#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] .
Аргументы:
- scope: Объект Scope
- strides: 1-мерный интервал длиной 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
Общественные функции
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 )
узел
::tensorflow::Node * node() const
оператор::tensorflow::Input
operator::tensorflow::Input() const
оператор::tensorflow::Output
operator::tensorflow::Output() const
Открытые статические функции
Формат данных
Attrs DataFormat( StringPiece x )
Расширения
Attrs Dilations( const gtl::ArraySlice< int > & x )