【发布时间】:2017-06-16 22:06:34
【问题描述】:
我在 Keras 中将 CNN 用于 NLP 任务,而不是最大池化,我试图实现随时间的最大池化。
关于如何实现这一点的任何想法/技巧?
我所说的 max over time pooling 的意思是汇集最高值,无论它们在向量中的哪个位置
【问题讨论】:
标签: machine-learning neural-network nlp keras conv-neural-network
我在 Keras 中将 CNN 用于 NLP 任务,而不是最大池化,我试图实现随时间的最大池化。
关于如何实现这一点的任何想法/技巧?
我所说的 max over time pooling 的意思是汇集最高值,无论它们在向量中的哪个位置
【问题讨论】:
标签: machine-learning neural-network nlp keras conv-neural-network
假设您的数据形状是(batch_size, seq_len, features),您可以申请:
seq_model = Reshape((seq_len * features, 1))(seq_model)
seq_model = GlobalMaxPooling1D()(seq_model)
【讨论】:
model=Sequential([Embedding(500,10,input_length=5),Reshape((5*10,1)),GlobalMaxPooling1D()]);model.summary() 末尾的输出形状 = (None, 1)。 None 相当于 batch_size 或 samples。特征 = 1. 我哪里错了?