提供弱结果的图像字幕

2024-06-17 09:25:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试建立一个图像字幕模型。在

modelV = createVGG16()
modelV.trainable = False
# DISCARD LAST 2 LAYERS
modelV.layers.pop()
modelV.layers.pop()

print 'LOADED VISION MODULE'

modelL = Sequential()
# CONVERTING THE INPUT PARTIAL CAPTION INDEX VECTOR TO DENSE VECTOR REPRESENTATION
modelL.add(Embedding(self.vocab_size, 256, input_length=self.max_cap_len))
modelL.add(LSTM(128,return_sequences=True))
modelL.add(TimeDistributed(Dense(128)))

print 'LOADED LANGUAGE MODULE'

# REPEATING IMAGE VECTOR TO TURN INTO A SEQUENCE
modelV.add(RepeatVector(self.max_cap_len))

print 'LOADED REPEAT MODULE'

model = Sequential()
model.add(Merge([modelV, modelL], mode='concat', concat_axis=-1))
# ENCODING THE VECTOR SEQ INTO A SINGLE VECTOR
# WHICH WILL BE USED TO COMPUTE THE PROB DISTRIB OF THE NEXT WORD
# IN THE CAPTION
model.add(LSTM(256,return_sequences=False))
model.add(Dense(self.vocab_size))
model.add(Activation('softmax'))

if(ret_model==True):
    return model

model.compile(loss='categorical_crossentropy', optimizer='rmsprop', metrics=['accuracy'])

print 'COMBINED MODULES'
# OUTPUT WILL BE OF SHAPE (samples, max_caption_len, 128)
return model 

我试着在50个时代的FLickr8k测试数据集的前100张图片的所有5个标题上运行这个模型。所有标题都以开头并用连接。 为了生成标题,我将输入图像和作为初始单词。在每次迭代中,我预测词汇表上的概率分布并获得下一个单词。在下一次迭代中,我将PredictedWord作为输入,并再次生成概率分布。在

结果是我在每个时间步都得到相同的概率分布。在

我的问题是:

  1. 我的模型太小,无法生成标题吗?在
  2. 培训数据太小了吗?在
  3. 时代的数目是否太少?在
  4. 我的整个方法都错了吗?在

Tags: theto模型selfadd标题modelreturn
1条回答
网友
1楼 · 发布于 2024-06-17 09:25:38

在回答你的问题之前,我想问一下,你在下面的陈述中所说的迭代是什么意思?在

What happens is that I get the same probability distribution in every iteration.

给定一张图片和一个初始单词,你应该得到下一个单词,这个单词应该作为输入来生成下一个单词,这个过程应该一直持续到你得到一个代表标题结束的特殊标记(例如,EOC)。在

  1. Is my model too small to generate captions?

我会说不,但可能是这个模型很小,无法生成好的字幕。在

  1. Is the training data too small?

是的,仅仅100张图片不足以训练一个生成图片的神经网络。在

  1. Is the number of epochs too small?

不,50个时代不算太小。您可以尝试调整其他参数,例如,学习率!在

  1. Is my entire approach wrong?

不,你的方法没有错。您可以扩展您的方法来为图像生成好的标题。你应该在网上找到好的例子,只要浏览一下,我相信你会从中得到灵感的。在

相关问题 更多 >