Tensorflow 用于比较同一体系结构中的培训损失的指标

Tensorflow 用于比较同一体系结构中的培训损失的指标,tensorflow,deep-learning,Tensorflow,Deep Learning,在tensorflow中,我有两个模型是通过这个体系结构进行培训的,这对于这个问题不是必需的,但是如果它对一些读者很重要的话,我会将其包括在内 我想知道我是否有相同的训练设置,有两个不同的子数据集,但从一个数据分布来看,这是否意味着如果其中一个训练速度较慢,它将学习更多的功能 features = tf.placeholder( tf.float32, shape=[None, IMAGE_SIZE * IMAGE_SIZE], name='features')

在tensorflow中,我有两个模型是通过这个体系结构进行培训的,这对于这个问题不是必需的,但是如果它对一些读者很重要的话,我会将其包括在内

我想知道我是否有相同的训练设置,有两个不同的子数据集,但从一个数据分布来看,这是否意味着如果其中一个训练速度较慢,它将学习更多的功能

        features = tf.placeholder(
        tf.float32, shape=[None, IMAGE_SIZE * IMAGE_SIZE], name='features')
    labels = tf.placeholder(tf.int64, shape=[None], name='labels')
    input_layer = tf.reshape(features, [-1, IMAGE_SIZE, IMAGE_SIZE, 1])
    conv1 = tf.layers.conv2d(
      inputs=input_layer,
      filters=32,
      kernel_size=[5, 5],
      padding="same",
      activation=tf.nn.relu)
    pool1 = tf.layers.max_pooling2d(inputs=conv1, pool_size=[2, 2], strides=2)
    conv2 = tf.layers.conv2d(
        inputs=pool1,
        filters=64,
        kernel_size=[5, 5],
        padding="same",
        activation=tf.nn.relu)
    pool2 = tf.layers.max_pooling2d(inputs=conv2, pool_size=[2, 2], strides=2)
    pool2_flat = tf.reshape(pool2, [-1, 7 * 7 * 64])
    dense = tf.layers.dense(inputs=pool2_flat, units=2048, activation=tf.nn.relu)
    logits = tf.layers.dense(inputs=dense, units=self.num_classes)
    predictions = {
      "classes": tf.argmax(input=logits, axis=1),
      "probabilities": tf.nn.softmax(logits, name="softmax_tensor")
    }
    loss = tf.losses.sparse_softmax_cross_entropy(labels=labels, logits=logits)
    # TODO: Confirm that opt initialized once is ok?
    train_op = self.optimizer.minimize(
        loss=loss,
        global_step=tf.train.get_global_step())
    eval_metric_ops = tf.count_nonzero(tf.equal(labels, predictions["classes"]))

如果你说它有相同的设置,那么训练越慢,可能意味着它学习得越多。如果其中一个有一个倾斜的数据集,那么它可能在某些分布上训练得更快,这可能表明训练没有学习主数据分布的所有特征