如何将 tf 模型预测与层相关联?

我们正在研究我们的Tensorflow人工智能Sequential model,它具有输入数据数组,并提供预测“真”或“假”的概率。


我们想知道哪个预测对应于“真”,哪个对应于“假”


我们的模型:


model = tf.keras.Sequential([                  

        layers..

        tf.keras.layers.GlobalAveragePooling1D(),

        tf.keras.layers.Dense(2, activation='softmax')

    ])

模型编译:


model.compile(loss="sparse_categorical_crossentropy",

                  optimizer=tf.keras.optimizers.Adam(),

                  metrics=['accuracy']

                  )

然后模型适合tests和results,其中results是“真”或“假”。


history = self.model.fit(

        np.array(self.data["tests"], dtype=float),

        np.array(self.data["results"], dtype=float),

        validation_split=0.1,

        epochs=self.epochs,

        batch_size=self.batch_size,

        steps_per_epoch=self.steps_per_epoch,

        verbose=0,

        shuffle=True,

        callbacks=[PlotLossesKerasTF()],

    )

当我们对我们使用的新数据进行预测时model.predict(newData),它会为我们提供如下概率:


[[0.5787903  0.42120975]]

那么这些数字中的哪些对应于哪个标签?


互换的青春
浏览 97回答 1
1回答

holdtom

它与您的训练标签相同。假设您有一张输入图像,您可以对它是猫、狗还是鸟进行分类。然后,您的训练数据是一组图像和相应的标签,格式[cat dog bird]为例如 - 狗标签的图像[0 1 0]。所以以model.predict(image)相同的格式输出概率数组[cat dog bird],output[0]猫分类的概率等等。此外,如果您的输出是真/假,请考虑使用一个具有 sigmoid 激活和二元交叉熵的神经元输出作为您的损失函数。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python