TensorFlow函数:tf.layers.AveragePooling2D
tf.layers.AveragePooling2D函数
AveragePooling2D类
定义在:tensorflow/python/layers/pooling.py.
2D输入的平均池层(如图像).
参数:
- pool_size:2个整数的整数或元组/列表:(pool_height,pool_width),用于指定池窗口的大小;可以是单个整数,以指定所有空间维度的相同值.
- strides:2个整数的整数或元组/列表,指定池操作的步幅.可以是单个整数,以指定所有空间维度的相同值.
- padding:一个字符串,填充方法:“'valid”或“same”,不区分大小写.
- data_format:一个字符串,输入中维度的排序,默认为channels_last(默认)并且支持channels_first,channels_last对应于具有形状(batch, height, width, channels)的输入,而channels_first对应于具有形状(batch, channels, height, width)的输入.
- name:一个字符串,图层的名称.
属性
- activity_regularizer
可选的调节功能用于该层的输出.
- dtype
- graph
- input
检索图层的输入张量.
只适用于图层只有一个输入,即如果它连接到一个输入层.
返回:
输入张量或输入张量列表.
可能引发的异常:
- AttributeError:如果图层连接到多个输入图层.
- RuntimeError:如果在Eager模式下调用.
- AttributeError:如果找不到入站节点.
- input_shape
检索图层的输入形状.
只适用于层只有一个输入,即如果它连接到一个输入层,或者如果所有输入具有相同的形状.
返回:
输入形状,作为整数形状元组(或形状元组列表,每个输入张量一个元组).
可能引发的异常:
- AttributeError:如果图层没有定义input_shape.
- RuntimeError:如果在Eager模式下调用.
- losses
与此Layer相关的损失.
请注意,在急切执行时,获取此属性会计算regularizers.当使用图形执行时,变量正则化操作已经创建完成,并简单地在这里返回.
返回:
张量列表.
- name
- non_trainable_variables
- non_trainable_weights
- output
检索图层的输出张量.
只适用于图层只有一个输出的情况,即,如果它连接到一个输入层.
返回:
输出张量或输出张量列表.
可能引发的异常:
- AttributeError:如果图层连接到多个输入图层.
- RuntimeError:如果在Eager模式下调用.
- output_shape
检索图层的输出形状.
仅适用于图层具有一个输出,或者所有输出具有相同形状的情况.
返回:
输出形状,作为整数形状元组(或形状元组列表,每个输出张量一个元组).
可能引发的异常:
- 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,应用预处理和后处理步骤.
参数:
- inputs:输入张量(s).
- *args:传递给self.call的附加的位置参数.
- **kwargs:传递给self.call的其他关键字参数.注意:保留kwarg scope以供图层使用.
返回:
输出张量(s).
注意:- 如果图层的call方法采用scope关键字参数,则该参数将自动设置为当前变量范围.- 如果图层的call方法接受了一个mask参数(如一些Keras图层所做的那样),则其默认值将被设置为inputs前input一图层生成的蒙版(如果确实来自生成相应蒙版的图层,即它来自具有掩蔽支持的Keras层.
可能引发的异常:
- ValueError:如果图层的call方法返回None(无效值).
- __deepcopy__
__deepcopy__(memo)
- add_loss
add_loss( losses, inputs=None )
添加损失张量,可能取决于图层输入.
某些损失(例如,活动正则化损失)可能取决于调用图层时通过的输入.因此,当在不同的输入a和b上重用同一层时,在layer.losses中的一些条目可以取决于a并且另外一些取决于b.该方法会自动跟踪相关性.
该get_losses_for方法允许检索与特定的一组输入相关的损失.
请注意,急切执行时不支持add_loss.相反,可以通过add_variable增加变量正规化器.活动正规化不直接支持(但Layer.call()可能会返回此类损失).
参数:
- losses:损失张量,或张量/张量的元组.
- inputs:如果除None之外的任何内容都被传递,则表示损失取决于某些图层的输入,因此只能在这些输入可用的情况下运行.例如,活动正则化损失就是这种情况.如果None通过,则认为损失是无条件的,并且将适用于该层的所有数据流(例如,权重正则化损失).
可能引发的异常:
- RuntimeError:如果在Eager模式下调用.
- add_update
add_update( updates, inputs=None )
添加更新操作,可能依赖于图层输入.
权重更新(例如,BatchNormalization图层中移动均值和方差的更新)可能取决于调用图层时传递的输入.因此,当在不同的输入a和b上重用同一层时,在layer.updates中的一些条目可以取决于a并且一些取决于b.该方法会自动跟踪相关性.
该get_updates_for方法允许检索与特定输入集相关的更新.
这种调用在Eager模式下被忽略.
参数:
- updates:更新操作,或更新操作的列表/元组.
- inputs:如果传递了除None之外的任何内容,则表示更新是以某些层的输入为条件的,因此它们只应在这些输入可用的地方运行.例如,BatchNormalization更新就是这种情况.如果为None,则无条件地考虑更新,并且您有责任确保它们可能具有的任何依赖性在运行时可用.步数计数器可能属于此类别.
- add_variable
add_variable( name, shape, dtype=None, initializer=None, regularizer=None, trainable=True, constraint=None, partitioner=None )
向图层添加新变量,或者获取现有的变量;返回它.
参数:
- name: 变量名.
- shape:可变的形状.
- dtype:变量的类型;默认为self.dtype或float32.
- initializer:初始化程序实例(可调用).
- regularizer:regularrizer实例(可调用).
- trainable:变量是否应该是图层的“trainable_variables”(例如变量,偏差)或“non_trainable_variables”(例如BatchNorm mean,stddev)的一部分.请注意,如果当前变量作用域被标记为不可训练,则该参数将被忽略,并且所有添加的变量也会被标记为不可训练.
- constraint:约束实例(可调用).
- partitioner:(可选)分区程序实例(可调用).如果提供了,当创建请求的变量时,它将根据来分割成多个分区partitioner.在这种情况下,PartitionedVariable返回一个实例.可用的分区包括tf.fixed_size_partitioner和tf.variable_axis_size_partitioner.有关更多详细信息,请参阅tf.get_variableAPI指南的文档和“变量分区程序和分片”部分.
返回:
创建的变量.通常是一个Variable或一个ResourceVariable实例.如果partitioner不是None,PartitionedVariable则返回一个实例.
可能引发的异常:
- RuntimeError:如果使用分区变量正则化调用,并且启用了急切执行.
- apply
apply( inputs, *args, **kwargs )
在输入上应用图层.
这只是包装self.__call__.
参数:
- inputs:输入张量(s).
- *args:传递给self.call的附加的位置参数.
- **kwargs:传递给self.call的其他关键字参数.
返回:
输出张量(s).
- build
build(_)
创建图层的变量.
- call
call(inputs)
层的逻辑在这里体现.
参数:
- inputs:输入张量(s).
- **kwargs:附加的关键字参数.
返回:
输出张量(s).
- compute_output_shape
compute_output_shape(input_shape)
计算给定输入形状的图层的输出形状.
参数:
- input_shape:一个TensorShape(可能是嵌套元组).它不需要完全定义(例如批量大小可能是未知的).
返回:
一个TensorShape(可能是嵌套的元组).
可能引发的异常:
- TypeError:如果input_shape不是TensorShape(可能是嵌套的元组).
- ValueError:如果input_shape不完整或与图层不兼容.
- count_params
count_params()
计算构成权重的标量总数.
返回:
一个整数.
可能引发的异常:
- ValueError:如果图层尚未构建(在这种情况下,其权重尚未定义).
- get_input_at
get_input_at(node_index)
检索给定节点处的层的输入张量.
参数:
- node_index:整数,从中检索属性的节点的索引.例如,node_index=0将对应于图层第一次被调用.
返回:
张量(如果图层有多个输入,则为张量列表).
可能引发的异常:
- RuntimeError:如果在Eager模式下调用.
- get_input_shape_at
get_input_shape_at(node_index)
检索给定节点上图层的输入形状.
参数:
- node_index:整数,从中检索属性的节点的索引.例如,node_index=0将对应于图层第一次被调用.
返回:
形状元组(如果图层具有多个输入,则为形状元组列表).
可能引发的异常:
- RuntimeError:如果在Eager模式下调用.
- get_losses_for
get_losses_for(inputs)
检索与特定输入集有关的损失.
参数:
- inputs:输入张量或输入张量的列表/元组.
返回:
依赖层的损耗张量列表inputs.
可能引发的异常:
- RuntimeError:如果在Eager模式下调用.
- get_output_at
get_output_at(node_index)
检索给定节点处的图层的输出张量.
参数:
- node_index:整数,从中检索属性的节点的索引.例如,node_index=0将对应于图层第一次被调用.
返回:
张量(或张量列表,如果图层具有多个输出).
可能引发的异常:
- RuntimeError:如果在Eager模式下调用.
- get_output_shape_at
get_output_shape_at(node_index)
检索给定节点上图层的输出形状.
参数:
- node_index:整数,从中检索属性的节点的索引.例如,node_index=0将对应于图层第一次被调用.
返回:
形状元组(如果图层具有多个输出,则为形状元组列表).
可能引发的异常:
- RuntimeError:如果在Eager模式下调用.
- get_updates_for
get_updates_for(inputs)
检索与特定输入集相关的更新.
参数:
- inputs:输入张量或输入张量的列表/元组.
返回:
依赖于inputs的图层的更新操作列表.
可能引发的异常:
- RuntimeError:如果在Eager模式下调用.