我正在研究前馈神经网络,并且正在使用 keras 嵌入。我想为嵌入设置偏置权重,但我不知道该怎么做。
Keras Dense 层允许指定 use_bias = True,然后设置偏差权重。嵌入层是否有等效的方法?
小智 5
您可以使用另一个向量长度等于 1 的嵌入作为偏差。例如,下面的代码获取输入 a 和 b 的嵌入和偏差,获取两个向量的点积,然后将偏差与点积相加。
from keras.models import Model
from keras.layers import Embedding, Input, Add, Dot
a = Input(shape=(1,))
b = Input(shape=(1,))
emb_a = Embedding(num_words+1, 50)(a)
bias_a = Embedding(num_words+1, 1)(a)
emb_b = Embedding(num_words+1, 50)(b)
bias_b = Embedding(num_words+1, 1)(b)
dot = Dot(axes=-1)([a,b])
add = Add()([dot,bias_a,bias_b])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1807 次 |
| 最近记录: |