gpt4 book ai didi

tensorflow - 文本分类中 CNN 模型输入的可变大小?

转载 作者:行者123 更新时间:2023-12-05 07:38:50 26 4
gpt4 key购买 nike

我基于这个 paper 实现了用于文本分类的 CNN 模型.由于 CNN 只能处理固定大小的句子,所以我将输入的大小设置为数据集中句子的最大长度,并对短句子进行零填充。但是据我理解,无论输入的句子有多长,max pooling 策略总是会为每个 filter map 只提取一个值。所以输入句子的大小无关紧要,因为在过滤器卷积/池化之后,输出将是相同的大小。在这种情况下,为什么要将所有短句补零到固定大小?

比如我给CNN模型输入数据的代码是self.input_data = tf.placeholder(tf.int32,[None,max_len],name="input_data"),我可以吗不指定max_len,而使用基于当前训练句子长度的None value

此外,我想知道是否有其他新方法可以解决CNN模型的可变输入问题。我还找到了另一个paper那可以解决这个问题,但是据我了解,它只使用了k个值的max-pooling,而不是1个max-pooling的值,这可以处理变量句子?怎么办?

最佳答案

快速回答:

不可以

更长的答案:

池化就像一个reduce函数。将它应用到图层上会减小尺寸。但是不同的输入形状不会产生相同的输出形状。但是,使用零填充,您可能可以模拟这一点,我们正在使用 max_len 进行模拟。因此,在第二篇论文中,想法是拥有一个动态计算图。这和以前不一样了。它基本上是创建几个不同深度的网络(取决于它们的输入大小)。编码器-解码器架构的通用版本称为 bytenet

关于tensorflow - 文本分类中 CNN 模型输入的可变大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47517506/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com