基于图像和文本特征的 TensorFlow 训练模型,具有多类输出

Posted

技术标签:

【中文标题】基于图像和文本特征的 TensorFlow 训练模型,具有多类输出【英文标题】:TensorFlow Training model on image and text features, with multi class outputs 【发布时间】:2019-01-15 06:23:09 【问题描述】:

我有一个包含图像和文本特征的数据集。训练数据的标签是一个二维数组,与输入图像的形状相同,为 1s/0s。

所以基本上,训练输入是:

输入形状为(X,Y)的图片, 形状为(Z,)的附加特征集(即文本特征)。

训练标签的形状为(X,Y)

我正在尝试在此数据上使用 Tensorflow/Keras 训练模型。我知道我可以训练一个输入大小为 (X* Y) + Z 的模型,但我读到这不是处理混合图像/附加数据特征的最佳方法。

所以我的问题是:

1) 我将如何设置我的模型来处理混合输入类型?

2) 由于我的输出与我的图像大小相同,我需要定义一个(X * Y) 大小的输出层吗?我将如何指定输出层以便它可以采用多个值,即输出中的任何/多个位置可以是 1 或 0?

【问题讨论】:

【参考方案1】:

一种方法是定义两个独立的子模型来处理文本和图像数据,然后合并这些子模型的输出以创建最终模型:

---------------        ---------------
- Input Image -        - Input Text  -
---------------        ---------------
       |                       |
       |                       |
       |                       |
---------------        ---------------------  
- Image Model -        -     Text Model    -
- (e.g. CNNs) -        - (e.g. Embeddings, -
---------------        -  LSTM, Conv1D)    -
       \               ---------------------
        \                     /
         \                   /
          \                 /
           \               /
            \             /
             \           /
              \         /
               \       /
           ----------------------
           -      Merge         -
           - (e.g. concatenate) -
           ----------------------
                     |
                     |
                     |
           ----------------------
           -      Upsample      -
           - (e.g. Dense layer, -
           -   transpose-conv)  -
           ----------------------
                     |
                     |
                     |
                -----------
                -  Output -
                -----------

每个框对应一个或多个层,您可能有不同的方法来实现它们并设置它们的参数,尽管我在每个框中都提到了一些建议。

【讨论】:

以上是关于基于图像和文本特征的 TensorFlow 训练模型,具有多类输出的主要内容,如果未能解决你的问题,请参考以下文章

[转] 轻松使用多种预训练卷积网络抽取图像特征

《21个项目玩转深度学习:基于TensorFlow的实践详解》高清带标签PDF版本学习下载

深度学习基于tensorflow的服装图像分类训练(数据集:Fashion-MNIST)

基于 Tensorflow 2.x 使用 MobileNetV2 微调模型优化训练花卉图像识别模型

基于 Tensorflow 2.x 使用 MobileNetV2 微调模型优化训练花卉图像识别模型

基于 Tensorflow 2.x 使用 MobileNetV2 微调模型优化训练花卉图像识别模型