TensorFlow函數(shù):tf.layers.AveragePooling2D

2018-08-02 10:43 更新

tf.layers.AveragePooling2D函數(shù)

AveragePooling2D類

定義在:tensorflow/python/layers/pooling.py.

2D輸入的平均池層(如圖像).

參數(shù):

  • pool_size:2個整數(shù)的整數(shù)或元組/列表:(pool_height,pool_width),用于指定池窗口的大小;可以是單個整數(shù),以指定所有空間維度的相同值.
  • strides:2個整數(shù)的整數(shù)或元組/列表,指定池操作的步幅.可以是單個整數(shù),以指定所有空間維度的相同值.
  • padding:一個字符串,填充方法:“'valid”或“same”,不區(qū)分大小寫.
  • data_format:一個字符串,輸入中維度的排序,默認為channels_last(默認)并且支持channels_first,channels_last對應于具有形狀(batch, height, width, channels)的輸入,而channels_first對應于具有形狀(batch, channels, height, width)的輸入.
  • name:一個字符串,圖層的名稱.

屬性

  • activity_regularizer

    可選的調節(jié)功能用于該層的輸出.

  • dtype
  • graph
  • input

    檢索圖層的輸入張量.

    只適用于圖層只有一個輸入,即如果它連接到一個輸入層.

    返回:

    輸入張量或輸入張量列表.

    可能引發(fā)的異常:

    • AttributeError:如果圖層連接到多個輸入圖層.
    • RuntimeError:如果在Eager模式下調用.
    • AttributeError:如果找不到入站節(jié)點.
  • input_shape

    檢索圖層的輸入形狀.

    只適用于層只有一個輸入,即如果它連接到一個輸入層,或者如果所有輸入具有相同的形狀.

    返回:

    輸入形狀,作為整數(shù)形狀元組(或形狀元組列表,每個輸入張量一個元組).

    可能引發(fā)的異常:

    • AttributeError:如果圖層沒有定義input_shape.
    • RuntimeError:如果在Eager模式下調用.
  • losses

    與此Layer相關的損失.

    請注意,在急切執(zhí)行時,獲取此屬性會計算regularizers.當使用圖形執(zhí)行時,變量正則化操作已經創(chuàng)建完成,并簡單地在這里返回.

    返回:

    張量列表.

  • name
  • non_trainable_variables
  • non_trainable_weights
  • output

    檢索圖層的輸出張量.

    只適用于圖層只有一個輸出的情況,即,如果它連接到一個輸入層.

    返回:

    輸出張量或輸出張量列表.

    可能引發(fā)的異常:

    • AttributeError:如果圖層連接到多個輸入圖層.
    • RuntimeError:如果在Eager模式下調用.
  • output_shape

    檢索圖層的輸出形狀.

    僅適用于圖層具有一個輸出,或者所有輸出具有相同形狀的情況.

    返回:

    輸出形狀,作為整數(shù)形狀元組(或形狀元組列表,每個輸出張量一個元組).

    可能引發(fā)的異常:

    • AttributeError:如果圖層沒有定義的輸出形狀.
    • RuntimeError:如果在Eager模式下調用.
  • scope_name
  • trainable_variables
  • trainable_weights
  • updates
  • variables

    返回所有圖層變量/權重的列表.

    返回:

    變量列表.

  • weights

    返回所有圖層變量/權重的列表.

    返回:變量列表.

方法

  • __init__
    __init__(
        pool_size,
        strides,
        padding='valid',
        data_format='channels_last',
        name=None,
        **kwargs
    )

    初始化自我.

  • __call__
    __call__(
        inputs,
        *args,
        **kwargs
    )

    包裝call,應用預處理和后處理步驟.

    參數(shù):

    • inputs:輸入張量(s).
    • *args:傳遞給self.call的附加的位置參數(shù).
    • **kwargs:傳遞給self.call的其他關鍵字參數(shù).注意:保留kwarg scope以供圖層使用.

    返回:

    輸出張量(s).

    注意:- 如果圖層的call方法采用scope關鍵字參數(shù),則該參數(shù)將自動設置為當前變量范圍.- 如果圖層的call方法接受了一個mask參數(shù)(如一些Keras圖層所做的那樣),則其默認值將被設置為inputs前input一圖層生成的蒙版(如果確實來自生成相應蒙版的圖層,即它來自具有掩蔽支持的Keras層.

    可能引發(fā)的異常:

    • ValueError:如果圖層的call方法返回None(無效值).
  • __deepcopy__
    __deepcopy__(memo)
  • add_loss
    add_loss(
        losses,
        inputs=None
    )

    添加損失張量,可能取決于圖層輸入.

    某些損失(例如,活動正則化損失)可能取決于調用圖層時通過的輸入.因此,當在不同的輸入a和b上重用同一層時,在layer.losses中的一些條目可以取決于a并且另外一些取決于b.該方法會自動跟蹤相關性.

    該get_losses_for方法允許檢索與特定的一組輸入相關的損失.

    請注意,急切執(zhí)行時不支持add_loss.相反,可以通過add_variable增加變量正規(guī)化器.活動正規(guī)化不直接支持(但Layer.call()可能會返回此類損失).

    參數(shù):

    • losses:損失張量,或張量/張量的元組.
    • inputs:如果除None之外的任何內容都被傳遞,則表示損失取決于某些圖層的輸入,因此只能在這些輸入可用的情況下運行.例如,活動正則化損失就是這種情況.如果None通過,則認為損失是無條件的,并且將適用于該層的所有數(shù)據(jù)流(例如,權重正則化損失).

    可能引發(fā)的異常:

    • RuntimeError:如果在Eager模式下調用.
  • add_update
    add_update(
        updates,
        inputs=None
    )

    添加更新操作,可能依賴于圖層輸入.

    權重更新(例如,BatchNormalization圖層中移動均值和方差的更新)可能取決于調用圖層時傳遞的輸入.因此,當在不同的輸入a和b上重用同一層時,在layer.updates中的一些條目可以取決于a并且一些取決于b.該方法會自動跟蹤相關性.

    該get_updates_for方法允許檢索與特定輸入集相關的更新.

    這種調用在Eager模式下被忽略.

    參數(shù):

    • updates:更新操作,或更新操作的列表/元組.
    • inputs:如果傳遞了除None之外的任何內容,則表示更新是以某些層的輸入為條件的,因此它們只應在這些輸入可用的地方運行.例如,BatchNormalization更新就是這種情況.如果為None,則無條件地考慮更新,并且您有責任確保它們可能具有的任何依賴性在運行時可用.步數(shù)計數(shù)器可能屬于此類別.
  • add_variable
    add_variable(
        name,
        shape,
        dtype=None,
        initializer=None,
        regularizer=None,
        trainable=True,
        constraint=None,
        partitioner=None
    )

    向圖層添加新變量,或者獲取現(xiàn)有的變量;返回它.

    參數(shù):

    • name: 變量名.
    • shape:可變的形狀.
    • dtype:變量的類型;默認為self.dtype或float32.
    • initializer:初始化程序實例(可調用).
    • regularizer:regularrizer實例(可調用).
    • trainable:變量是否應該是圖層的“trainable_variables”(例如變量,偏差)或“non_trainable_variables”(例如BatchNorm mean,stddev)的一部分.請注意,如果當前變量作用域被標記為不可訓練,則該參數(shù)將被忽略,并且所有添加的變量也會被標記為不可訓練.
    • constraint:約束實例(可調用).
    • partitioner:(可選)分區(qū)程序實例(可調用).如果提供了,當創(chuàng)建請求的變量時,它將根據(jù)來分割成多個分區(qū)partitioner.在這種情況下,PartitionedVariable返回一個實例.可用的分區(qū)包括tf.fixed_size_partitioner和tf.variable_axis_size_partitioner.有關更多詳細信息,請參閱tf.get_variableAPI指南的文檔和“變量分區(qū)程序和分片”部分.

    返回:

    創(chuàng)建的變量.通常是一個Variable或一個ResourceVariable實例.如果partitioner不是None,PartitionedVariable則返回一個實例.

    可能引發(fā)的異常:

    • RuntimeError:如果使用分區(qū)變量正則化調用,并且啟用了急切執(zhí)行.
  • apply
    apply(
        inputs,
        *args,
        **kwargs
    )

    在輸入上應用圖層.

    這只是包裝self.__call__.

    參數(shù):

    • inputs:輸入張量(s).
    • *args:傳遞給self.call的附加的位置參數(shù).
    • **kwargs:傳遞給self.call的其他關鍵字參數(shù).

    返回:

    輸出張量(s).

  • build
    build(_)

    創(chuàng)建圖層的變量.

  • call
    call(inputs)

    層的邏輯在這里體現(xiàn).

    參數(shù):

    • inputs:輸入張量(s).
    • **kwargs:附加的關鍵字參數(shù).

    返回:

    輸出張量(s).

  • compute_output_shape
    compute_output_shape(input_shape)

    計算給定輸入形狀的圖層的輸出形狀.

    參數(shù):

    • input_shape:一個TensorShape(可能是嵌套元組).它不需要完全定義(例如批量大小可能是未知的).

    返回:

    一個TensorShape(可能是嵌套的元組).

    可能引發(fā)的異常:

    • TypeError:如果input_shape不是TensorShape(可能是嵌套的元組).
    • ValueError:如果input_shape不完整或與圖層不兼容.
  • count_params
    count_params()

    計算構成權重的標量總數(shù).

    返回:

    一個整數(shù).

    可能引發(fā)的異常:

    • ValueError:如果圖層尚未構建(在這種情況下,其權重尚未定義).
  • get_input_at
    get_input_at(node_index)

    檢索給定節(jié)點處的層的輸入張量.

    參數(shù):

    • node_index:整數(shù),從中檢索屬性的節(jié)點的索引.例如,node_index=0將對應于圖層第一次被調用.

    返回:

    張量(如果圖層有多個輸入,則為張量列表).

    可能引發(fā)的異常:

    • RuntimeError:如果在Eager模式下調用.
  • get_input_shape_at
    get_input_shape_at(node_index)

    檢索給定節(jié)點上圖層的輸入形狀.

    參數(shù):

    • node_index:整數(shù),從中檢索屬性的節(jié)點的索引.例如,node_index=0將對應于圖層第一次被調用.

    返回:

    形狀元組(如果圖層具有多個輸入,則為形狀元組??列表).

    可能引發(fā)的異常:

    • RuntimeError:如果在Eager模式下調用.
  • get_losses_for
    get_losses_for(inputs)

    檢索與特定輸入集有關的損失.

    參數(shù):

    • inputs:輸入張量或輸入張量的列表/元組.

    返回:

    依賴層的損耗張量列表inputs.

    可能引發(fā)的異常:

    • RuntimeError:如果在Eager模式下調用.
  • get_output_at
    get_output_at(node_index)

    檢索給定節(jié)點處的圖層的輸出張量.

    參數(shù):

    • node_index:整數(shù),從中檢索屬性的節(jié)點的索引.例如,node_index=0將對應于圖層第一次被調用.

    返回:

    張量(或張量列表,如果圖層具有多個輸出).

    可能引發(fā)的異常:

    • RuntimeError:如果在Eager模式下調用.
  • get_output_shape_at
    get_output_shape_at(node_index)

    檢索給定節(jié)點上圖層的輸出形狀.

    參數(shù):

    • node_index:整數(shù),從中檢索屬性的節(jié)點的索引.例如,node_index=0將對應于圖層第一次被調用.

    返回:

    形狀元組(如果圖層具有多個輸出,則為形狀元組??列表).

    可能引發(fā)的異常:

    • RuntimeError:如果在Eager模式下調用.
  • get_updates_for
    get_updates_for(inputs)

    檢索與特定輸入集相關的更新.

    參數(shù):

    • inputs:輸入張量或輸入張量的列表/元組.

    返回:

    依賴于inputs的圖層的更新操作列表.

    可能引發(fā)的異常:

    • RuntimeError:如果在Eager模式下調用.
以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號