python - 用于二元分类问题的 CNN 嵌入层 1D
问题描述
我正在使用 python TensorFlow lib 创建一个基于另一项工作的 CNN。
在这项工作中,它使用了一个嵌入层,但它并没有过多地说明所使用的参数。
当我试图弄清楚实现时,我发现我应该传递三个参数,它们是(字体:https ://machinelearningmastery.com/use-word-embedding-layers-deep-learning-keras/ ):
- input_dim:这是文本数据中词汇的大小。例如,如果您的数据被整数编码为 0-10 之间的值,那么词汇表的大小将为 11 个单词。
- output_dim:这是嵌入单词的向量空间的大小。它为每个单词定义了该层的输出向量的大小。例如,它可以是 32 或 100 甚至更大。为您的问题测试不同的值。
- input_length:这是输入序列的长度,就像您为 Keras 模型的任何输入层定义的一样。例如,如果您的所有输入文档都包含 1000 个单词,那么这将是 1000。
如您所见,我必须传递我的数据的“词汇表”。在我的例子中,它在 0 和 1 之间变化,因为它是标准化的。但它们不是整数,而且我看到的大多数涉及嵌入层的示例,您必须知道可能的值或词汇表,因此它们是整数。
所以我的问题是:在我的数据中使用嵌入层是否有意义?如果是这样,我应该传递哪些值?