Tensorflow Keras-tf.keras.metrics.AUC抱怨形状不匹配

时间:2020-04-30 21:08:36

标签: tensorflow keras

我有以下Keras模型:

        input_list = []
        output_list = []
        for feature in feature_dict:
            tensor_len = feature_dict[feature]
            raw_input = tf.keras.Input(batch_size=self._args.batch_size, shape=(tensor_len,), sparse=False,
                                       name=feature)
            cur_output = tf.keras.layers.Dense(units=2,
                                               kernel_initializer=tf.keras.initializers.TruncatedNormal(
                                                   stddev=1.0 / math.sqrt(float(tensor_len))),
                                               activity_regularizer=tf.keras.regularizers.l2(l2_reg_weight))(raw_input)
            input_list.append(raw_input)
            output_list.append(cur_output)

        logits = tf.keras.layers.add(output_list)
        probabilities = tf.keras.layers.Softmax(name="label")(logits)
        model = tf.keras.Model(inputs=input_list, outputs=probabilities)

        model.compile(optimizer=tf.keras.optimizers.Adagrad(learning_rate=hparams[LEARNING_RATE]),
                      loss="mse",
                      metrics=[tf.keras.metrics.AUC()]) # Issue with metrics

但是,当我跑步时

model.fit(...,...)

当我添加“ tf.keras.metrics.AUC()”时出现了问题。没有它,模型运行就很好。对于AUC,它会显示以下错误消息:

 ValueError: Shapes (None, 2) and (2, 1) are incompatible

几个问题: 1.我在模型上做错了什么导致此的明显错误吗? 2.可能导致此问题的原因是什么,以及任何指向哪里查找的好的建议?

0 个答案:

没有答案