【问题标题】:Determining output of model.predict in relation to classess确定与类相关的 model.predict 的输出
【发布时间】:2019-09-09 19:10:16
【问题描述】:

我试图弄清楚如何从 keras 返回的一个热编码向量中确定类。问题是我使用带有 ImageDataGenerator 的 flow_from_directory 来训练我的网络,导致 keras 自动将文件夹结构转换为我所知道的类向量,我该如何解决这个问题?

这是我的训练在代码中的布局方式:

    checkpoint = [ModelCheckpoint(
        'model.checkpoint.hdf5',
        period=1
   )]

    train_datagen = ImageDataGenerator(
        rotation_range=30)

    test_datagen = ImageDataGenerator(
        rotation_range=30)

    train_generator = train_datagen.flow_from_directory(
        '/train/',
        target_size=(x, y),
        batch_size=batch_size,
        class_mode='categorical')
    test_generator = test_datagen.flow_from_directory(
        '/test/',
        target_size=(x, y),
        batch_size=batch_size,
        class_mode='categorical')

    self.discriminator.fit_generator(
        train_generator,
        steps_per_epoch=10000,
        epochs=epochs,
        validation_data=test_generator,
        validation_steps=10,
        callbacks=checkpoint
    )

我的文件夹结构是这样的:

root/
    train/
        cow/
            0.jpg
            1.jpg
        pig/
            0.jpg
            1.jpg
    test/
        cow/
            0.jpg
            1.jpg
        pig/
            0.jpg
            1.jpg

【问题讨论】:

    标签: python python-3.x keras


    【解决方案1】:
    print(train_generator.class_indices)
    {'cow': 0, 'pig': 1}
    

    从文档中,“包含从类名到类索引的映射的字典可以通过属性 class_indices 获得。”

    https://keras.io/preprocessing/image/#flow_from_directory

    【讨论】:

      【解决方案2】:

      keras 中的预测是指你自己的文件夹结构。如果火车是由牛和猪组成的。然后cow = 0pig = 1。所以如果预测返回 0 就是牛,否则就是猪。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-10-17
        • 1970-01-01
        • 2019-12-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-26
        相关资源
        最近更新 更多