Keras 嵌入

2024 年 8 月 28 日 | 阅读 2 分钟

嵌入层用作模型中的初始层,侧重于将正索引转换为固定大小的密集向量。例如 [[4], [20]] -> [[0.25, 0.1], [0.6, -0.2]]。

示例

参数

  • input_dim:它指的是一个大于 0 的整数索引,表示词汇量大小。例如,最大索引整数必须为 +1。
  • output_dim:它表示一个大于或等于 0 的整数索引,表示密集嵌入的维度。
  • embeddings_initializer:它可以定义为 embeddings 的初始化器
  • embeddings_regularizer:它指的是在 embeddings 上实现的正则化函数
  • activity_regularizer:它是一个正则化函数,应用于其激活或该层的输出。
  • embeddings_constraint:它定义为在 embeddings 上实现的约束函数
  • mask_zero:对于输入值,无论为 0 还是不为 0,都指定要屏蔽的特殊“填充”值。它可以将输入作为可变长度,这在使用循环层时非常方便。如果设置为 True,则所有后续层都必须支持掩码。具体来说,如果 mask_zero 设置为 True,那么在这种情况下,索引 0 不能在词汇表中被使用,这意味着 input_dim 必须等于词汇表的大小 +1。
  • input_length:当设置为静态时,它定义了输入序列的长度。 input_length 参数有助于确定密集输出的形状,因为它用于我们首先连接到 Flatten,然后是

输入形状

它是一个形状为 (batch_size, sequence_length) 的 2D 张量。

输出形状

它是一个形状为 (batch_size, sequence_length, output_dim) 的 3D 张量。


下一主题合并层