如何在Keras模型中用自定义函数替换嵌入层?

时间:2019-12-27 11:44:41

标签: python tensorflow keras

我想用自定义函数-f(o字符串列表)-替换Keras嵌入层,该函数接受一系列长度可变的字符串并返回形状为(batch_size,max_len,feature_len)的张量。

假设我要创建的模型非常简单,由两个密集层组成,如下所示:

Inputs = Input(shape=(1,),tf.string) 

model = Lambda(f, output_shape = (max_len, feature_len))(Inputs) 

model = Dense(20,activation='relu')(model)

model = Dense(1,activation='sigmoid')(model)

model = Model(Inputs, model)

但是,以上几行导致错误!我无法创建模型。任何帮助表示赞赏。

p.s。函数f()可以看作是一种基于上下文的词嵌入生成器 ,例如ELMo或BERT,它们分别为每个嵌入生成长度为 feature_len 的嵌入向量每个字符串中的单词。

0 个答案:

没有答案