在多个 类 上训练时如何在 Keras 中获取标签 ID?
How to get labels ids in Keras when training on multiple classes?
我正在使用 flow_from_directory
从具有以下结构的文件夹中获取训练集:
train
class1
class2
class3
...
生成器调用如下:
train_generator = train_datagen.flow_from_directory(
train_data_dir,
target_size=(img_height, img_width),
batch_size=32,
class_mode='categorical')
我没有设置参数 classes
,但我希望得到按字母顺序排列的标签。
classes: optional list of class subdirectories (e.g. ['dogs', 'cats']
). Default: None. If not provided, the list of classes will be automatically inferred (and the order of the classes, which will map to the label indices, will be alphanumeric).
但是,当我 class 验证训练图像(用于检查返回哪些标签)时,我没有得到任何特定的排序。训练进展顺利(准确率约为 85%),并且当 class 化来自相同 class 的图像时与输出标签具有一致性。
如何推断 flow_from_directory
生成的标签编号并将它们映射到 classes?
看变量ImageDataGenerator.class_indices
可以看到哪个class对应哪个整数
这是一个如何使用它的例子
def build(source=None):
datagen = ImageDataGenerator(rescale=1. / 255)
data_generator = datagen.flow_from_directory(
source, # this is the target directory
target_size=(150, 150), # all images will be resized to 150x150
batch_size=11,
class_mode='sparse')
class_dictionary = data_generator.class_indices
return data_generator, class_dictionary
我正在使用 flow_from_directory
从具有以下结构的文件夹中获取训练集:
train
class1
class2
class3
...
生成器调用如下:
train_generator = train_datagen.flow_from_directory(
train_data_dir,
target_size=(img_height, img_width),
batch_size=32,
class_mode='categorical')
我没有设置参数 classes
,但我希望得到按字母顺序排列的标签。
classes: optional list of class subdirectories (e.g.
['dogs', 'cats']
). Default: None. If not provided, the list of classes will be automatically inferred (and the order of the classes, which will map to the label indices, will be alphanumeric).
但是,当我 class 验证训练图像(用于检查返回哪些标签)时,我没有得到任何特定的排序。训练进展顺利(准确率约为 85%),并且当 class 化来自相同 class 的图像时与输出标签具有一致性。
如何推断 flow_from_directory
生成的标签编号并将它们映射到 classes?
看变量ImageDataGenerator.class_indices
这是一个如何使用它的例子
def build(source=None):
datagen = ImageDataGenerator(rescale=1. / 255)
data_generator = datagen.flow_from_directory(
source, # this is the target directory
target_size=(150, 150), # all images will be resized to 150x150
batch_size=11,
class_mode='sparse')
class_dictionary = data_generator.class_indices
return data_generator, class_dictionary