EmbedReduce
类keras_rs.layers.EmbedReduce(
input_dim: int,
output_dim: int,
embeddings_initializer: Union[
str,
keras.src.initializers.initializer.Initializer,
type[keras.src.initializers.initializer.Initializer],
Callable[[Sequence[int | None], str], Any],
Any,
] = "uniform",
embeddings_regularizer: Union[
str,
keras.src.regularizers.regularizers.Regularizer,
type[keras.src.regularizers.regularizers.Regularizer],
Callable[[Any], Any],
NoneType,
] = None,
embeddings_constraint: Union[
str,
keras.src.constraints.constraints.Constraint,
type[keras.src.constraints.constraints.Constraint],
Callable[[Any], Any],
NoneType,
] = None,
mask_zero: bool = False,
weights: Any = None,
combiner: str = "mean",
**kwargs: Any
)
一个使用组合器进行降维的嵌入层。
此层对输入进行嵌入,然后应用降维操作将一组嵌入组合成单个嵌入。这通常用于将项序列嵌入为单个嵌入。
如果传递给 __call__
的输入是 1D 的,则不应用降维。如果输入是 2D 的,则使用组合器对维度 1 进行降维,以便结果的形状为 (batch_size, output_dim)
。不允许使用 3 维及更高维的输入。可以选择将权重传递给 __call__
方法,以便在降维之前对不同的样本应用权重。
此层支持稀疏输入和不规则输入(如果后端支持)。降维后的输出是密集的。对于不规则输入,不规则维度必须是 1,因为它是一个被降维的维度。
参数
embeddings
矩阵的初始化器(参见 keras.initializers
)。embeddings
矩阵的正则化函数(参见 keras.regularizers
)。embeddings
矩阵的约束函数(参见 keras.constraints
)。True
,则模型中所有后续层都需要支持屏蔽,否则将引发异常。如果 mask_zero
设置为 True
,结果是词汇表中不能使用索引 0(input_dim
应等于词汇表大小 + 1)。(input_dim, output_dim)
。要使用的初始嵌入值。mean
、sqrtn
和 sum
。mean
是默认值。sqrtn
通常能获得良好的准确性,特别是对于词袋模型列。Embedding
的附加关键字参数。call
方法EmbedReduce.call(inputs: Any, weights: Optional[Any] = None)
应用嵌入和降维。
参数
inputs
的第一个维度匹配(1D 情况)或与 inputs
的形状匹配(2D 情况)。返回
一个形状为 (batch_size, output_dim)
的密集 2D 张量。