當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.compat.v1.nn.separable_conv2d用法及代碼示例


帶有可分離濾波器的二維卷積。

用法

tf.compat.v1.nn.separable_conv2d(
    input, depthwise_filter, pointwise_filter, strides, padding, rate=None,
    name=None, data_format=None, dilations=None
)

參數

  • input 4-D Tensor 形狀根據 data_format
  • depthwise_filter 4-D Tensor 形狀為 [filter_height, filter_width, in_channels, channel_multiplier] 。包含深度為 1 的 in_channels 卷積濾波器。
  • pointwise_filter 4-D Tensor 形狀為 [1, 1, channel_multiplier * in_channels, out_channels]depthwise_filter 空間卷積後的逐點過濾以混合通道。
  • strides 大小為 4 的一維。input 的每個維度的深度卷積的步幅。
  • padding 控製在應用深度卷積之前如何填充圖像。可以是字符串 "SAME""VALID" 指示要使用的填充算法的類型,或者是一個 Python 列表,指示每個維度的開始和結束處的顯式填充。當使用顯式填充且 data_format 為 "NHWC" 時,應采用 [[0, 0], [pad_top, pad_bottom], [pad_left, pad_right], [0, 0]] 的形式。當使用顯式填充且 data_format 為 "NCHW" 時,應采用 [[0, 0], [0, 0], [pad_top, pad_bottom], [pad_left, pad_right]] 的形式。
  • rate 大小為 2 的 1-D。我們在空洞卷積中跨 heightwidth 維度對輸入值進行采樣的膨脹率。如果大於 1,則所有步幅值都必須為 1。
  • name 此操作的名稱(可選)。
  • data_format 輸入的數據格式。 "NHWC"(默認)或"NCHW"。
  • dilations 費率的別名。

返回

  • 一個 4-D Tensor,形狀根據 'data_format'。例如,data_format="NHWC",形狀為 [batch, out_height, out_width, out_channels]。

執行單獨作用於通道的深度卷積,然後執行混合通道的點卷積。請注意,這是維度 [1, 2]3 之間的可分離性,而不是維度 12 之間的空間可分離性。

詳細地說,使用默認的 NHWC 格式,

output[b, i, j, k] = sum_{di, dj, q, r}
    input[b, strides[1] * i + di, strides[2] * j + dj, q] *
    depthwise_filter[di, dj, q, r] *
    pointwise_filter[0, 0, q * channel_multiplier + r, k]

strides 僅控製深度卷積的步幅,因為逐點卷積的隱含步幅為 [1, 1, 1, 1] 。必須有 strides[0] = strides[3] = 1 。對於相同水平和垂直步幅的最常見情況,strides = [1, stride, stride, 1]。如果 rate 中的任何值大於 1,我們將執行深度深度卷積,在這種情況下,strides 張量中的所有值都必須等於 1。

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.compat.v1.nn.separable_conv2d。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。