Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Deep learning 不共享变量的Tensorflow_Deep Learning_Tensorflow - Fatal编程技术网

Deep learning 不共享变量的Tensorflow

Deep learning 不共享变量的Tensorflow,deep-learning,tensorflow,Deep Learning,Tensorflow,我们修改了(卷积神经网络)运行在Adience数据库上,用于人脸性别分类。我们了解到,“参数共享”是有用的,因为假设一个面片特征在图像中无论位置如何都是有用的。除: 请注意,有时参数共享假设可能没有意义。当输入到ConvNet的图像具有特定的中心结构时,情况尤其如此,例如,我们应该期望在图像的一侧学习到与另一侧完全不同的特征。一个实际的例子是当输入是位于图像中心的面时 目标:因此,我们希望关闭CNN的参数共享 代码 我认为CIFAR-10教程使用参数共享?def推断(图像)函数中的这部分代码似乎

我们修改了(卷积神经网络)运行在Adience数据库上,用于人脸性别分类。我们了解到,“参数共享”是有用的,因为假设一个面片特征在图像中无论位置如何都是有用的。除:

请注意,有时参数共享假设可能没有意义。当输入到ConvNet的图像具有特定的中心结构时,情况尤其如此,例如,我们应该期望在图像的一侧学习到与另一侧完全不同的特征。一个实际的例子是当输入是位于图像中心的面时

目标:因此,我们希望关闭CNN的参数共享

代码 我认为CIFAR-10教程使用参数共享?
def推断(图像)
函数中的这部分代码似乎与此有关:

biases = _variable_on_cpu('biases', [64], tf.constant_initializer(0.0))
bias = tf.nn.bias_add(conv, biases)
这要求:

def _variable_on_cpu(name, shape, initializer):
    with tf.device('/cpu:0'):
        var = tf.get_variable(name, shape, initializer=initializer)
    return var
问题:
  • 在CIFAR-10教程中是否确实发生了参数共享
  • 您能否告诉我们,我们正在寻找关闭参数共享的正确代码,还是在其他地方寻找
  • 欢迎提供任何其他帮助/建议,因为我们不知道从哪里开始
本教程中的在前两层(和)中使用“参数共享”。通过使用操作符,可以有效地从输入图像中提取面片,并对每个面片应用相同的过滤器(即共享参数),从而实现共享

当您有一组卷积层时,“关闭”参数共享并不简单:相反,您必须用不同类型的层替换它们。最简单的更改可能是用完全连接的层替换卷积层,例如使用
tf.nn.relu_layer()
(如和层中),它在内部执行矩阵乘法,并为每个输入神经元保留单独的参数

N.B.对于视觉任务来说,完全连接的层通常过于参数化,更合适的中间立场是使用a,它(非正式地)为每个输入维护单独的参数(如在完全连接的层中),但仅组合来自“附近”输入的值以产生输出(如卷积)。不幸的是,TensorFlow尚未包含局部感受野的实现,但将是一个有用的项目。

“参数共享”是卷积层的一个属性。非共享等效层是一个本地连接层。但不确定是否实现了本地连接层,所以可以用完全连接的层替换所有conv层