具有多个分支的功能模型

时间:2019-04-24 11:00:26

标签: keras

我正在尝试在InceptionV3网络的顶部添加多个分类分支。我正在使用imageGenerator,但似乎无法正确设置它。

两个分支都有一个imageGenerator,可从一个根目录读取数据。

我的根目录(培训,测试)的结构如下:

  • a类(例如Fabric)

    • 皮革
  • b类(例如颜色)

    • 黑色
    • 蓝色

我用来初始化生成器的代码是:



train_generator = train_datagen.flow_from_directory('./train',
                                                   target_size = target_size,
                                                   batch_size = batch_size,
                                                   class_mode = 'categorical',
                                                   shuffle=True)

test_generator = test_datagen.flow_from_directory('./test',
                                                   target_size = target_size,
                                                   batch_size = batch_size,
                                                   class_mode = 'categorical',
                                                   shuffle=True)

我不确定如何使用该课程的训练数据来训练网络中的每个分支。

1 个答案:

答案 0 :(得分:0)

您要训练网络以进行多标签分类。

不需要具有多个分支;您只能训练一个神经网络来告诉您衣服的颜色和类型。

我的建议是看一下这个博客,这正是您所需要的:

https://www.pyimagesearch.com/2018/05/07/multi-label-classification-with-keras/

请注意,您可能需要重组训练集,例如,要有一个蓝色连衣裙的文件夹,另一个蓝色牛仔裤的文件夹,然后是红色连衣裙的文件夹等。

但是,如果您确实需要多个分支,则绝对应该看看以下内容:https://www.pyimagesearch.com/2018/06/04/keras-multiple-outputs-and-multiple-losses/