dòng chảy căng:: ôi:: Theo chiều sâuConv2dBản địa

#include <nn_ops.h>

Tính toán tích chập theo chiều sâu 2-D cho input 4-D và filter tensor.

Bản tóm tắt

Cho một tensor đầu vào có hình dạng [batch, in_height, in_width, in_channels] và một tensor bộ lọc/nhân có hình dạng [filter_height, filter_width, in_channels, channel_multiplier] , chứa các bộ lọc tích chập in_channels có độ sâu 1, depthwise_conv2d áp dụng một bộ lọc khác nhau cho mỗi kênh đầu vào (mở rộng từ 1 kênh sang kênh channel_multiplier cho mỗi kênh), sau đó ghép các kết quả lại với nhau. Do đó, đầu ra có các kênh 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]

Phải có strides[0] = strides[3] = 1 . Đối với trường hợp phổ biến nhất của cùng một bước tiến ngang và đỉnh, strides = [1, stride, stride, 1] .

Lập luận:

  • phạm vi: Một đối tượng Phạm vi
  • bước tiến: 1-D có chiều dài 4. Bước tiến của cửa sổ trượt cho từng chiều của input .
  • phần đệm: Loại thuật toán đệm sẽ sử dụng.

Thuộc tính tùy chọn (xem Attrs ):

  • data_format: Chỉ định định dạng dữ liệu của dữ liệu đầu vào và đầu ra. Với định dạng mặc định "NHWC", dữ liệu được lưu trữ theo thứ tự: [lô, chiều cao, chiều rộng, kênh]. Ngoài ra, định dạng có thể là "NCHW", thứ tự lưu trữ dữ liệu là: [lô, kênh, chiều cao, chiều rộng].
  • độ giãn nở: tensor 1-D có chiều dài 4. Hệ số giãn nở cho từng chiều của input . Nếu được đặt thành k > 1, sẽ có k-1 ô bị bỏ qua giữa mỗi phần tử bộ lọc trên thứ nguyên đó. Thứ tự thứ nguyên được xác định bởi giá trị của data_format , xem chi tiết ở trên. Độ giãn nở của kích thước lô và độ sâu phải bằng 1.

Trả về:

Hàm tạo và hàm hủy

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)

Thuộc tính công khai

operation
output

Chức năng công cộng

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

Các hàm tĩnh công khai

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

Cấu trúc

tensorflow:: ops:: DepthwiseConv2dNative:: Attrs

Trình thiết lập thuộc tính tùy chọn cho DepthwiseConv2dNative .

Thuộc tính công khai

hoạt động

Operation operation

đầu ra

::tensorflow::Output output

Chức năng công cộng

Theo chiều sâuConv2dBản địa

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

Theo chiều sâuConv2dBản địa

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

nút

::tensorflow::Node * node() const 

toán tử::tenorflow::Đầu vào

 operator::tensorflow::Input() const 

toán tử::tenorflow::Đầu ra

 operator::tensorflow::Output() const 

Các hàm tĩnh công khai

Định dạng dữ liệu

Attrs DataFormat(
  StringPiece x
)

Sự giãn nở

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

Đệm rõ ràng

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