Keras 不是那么密集的层

Keras Not so Dense Layer

前一层是嵌入大小(V classess,K -outputdim)-我想引入一个大小为 K x T 的权重矩阵。权重将是可训练的(嵌入也是如此)。它们生成的 VxT 矩阵将是下游使用。 1)我该怎么做? 2) 这会扰乱梯度吗?

它基本上是向量 x 矩阵。 示例 - 嵌入词汇 = 10,dim K = 4。所以对于特定的词汇表成员,我的嵌入权重是一个向量大小 (1,4)(想想行向量)。

对于每个行向量,我想乘以一个大小为 4x10 的权重矩阵,得到一个 1 x 10 向量(或层)。权重矩阵对词汇表的所有成员都是通用的。

这个 1 x 10 向量将作为下一层的输入。

你想要的是一个密集层,只是没有偏见。 Dense层内部有一个对所有输入通用的矩阵,它不随输入变化。

所以这可以实现为:

x = Dense(10, use_bias=False)(some_input_tensor)

不需要激活函数,因为您只需要矩阵乘法。