Python 3.x 连接keras层时出错:“连接”层需要具有匹配形状的输入
我有一个模型,叫做: 这为文档分类提出了建议。我使用word2vec嵌入语句单词,我想在A点连接另一个句子级嵌入(见图) 我用它与文件包含3句话;模型摘要: 编译上述代码时,出现以下错误: ValueError:APython 3.x 连接keras层时出错:“连接”层需要具有匹配形状的输入,python-3.x,keras,deep-learning,concatenation,Python 3.x,Keras,Deep Learning,Concatenation,我有一个模型,叫做: 这为文档分类提出了建议。我使用word2vec嵌入语句单词,我想在A点连接另一个句子级嵌入(见图) 我用它与文件包含3句话;模型摘要: 编译上述代码时,出现以下错误: ValueError:A串联层需要具有匹配形状的输入 除了concat轴。获取输入形状:[(无,3128),(无, (3,514)] 我指定了连接轴=1,以连接(3)个句子的数量,但我不知道为什么仍然会出现错误。这是因为如果指定该轴,形状不匹配。如果您改为这样做,这将起作用: merge = concat
串联
层需要具有匹配形状的输入
除了concat轴。获取输入形状:[(无,3128),(无,
(3,514)]
我指定了连接轴=1,以连接(3)个句子的数量,但我不知道为什么仍然会出现错误。这是因为如果指定该轴,形状不匹配。如果您改为这样做,这将起作用:
merge = concatenate([sent_encoder, USE], axis=-1)
现在,其余轴上的形状没有冲突错误是由两条线引起的:
merge = concatenate([sent_encoder, USE], axis=1)
# should be:
merge = concatenate([sent_encoder, USE], axis=2) # or -1 as @mlRocks suggested
这句话:
self.model = Model(sent_input, preds)
# should be:
self.model = Model([sent_input, USE], preds) # to define both inputs
我得到了这个错误:
ValueError:Graph disconnected:无法获取层“USE_branch”处的张量张量值(“USE_branch:0”,shape=(?,3514),dtype=float32)。访问以下以前的层时没有出现任何问题:[“input_2”,“time_distributed_2']
self.model = Model(sent_input, preds)
# should be:
self.model = Model([sent_input, USE], preds) # to define both inputs