参考了 MXuDong博主的博文:https://blog.csdn.net/qq_33472765/article/details/86561245
kera 的embeding层设置初始值的两种方式:
1、使用weights参数指明embedding初始值
2、使用embeddings_initializer=keras.initializers.Constant(词向量)
如果同时传入embeddings_initializer
和weights参数,那么weights参数稍后会把Embedding#embeddings
覆盖掉。
使用weights给Layer的变量赋值是一个比较通用的方法,但是不够直观。keras鼓励多多使用明确的initializer,而尽量不要触碰weights
嵌入层将正整数(下标)转换为具有固定大小的向量,如[[4],[20]]->[[0.25,0.1],[0.6,-0.2]]。[[4],[20]]表示一句话由两个单词组成,第一个单词在词向量的位置为4,第二个单词位置为20而位置为4的单词,对应的二维词向量就是[0.25,0.1];类似,位置为20的单词的词向量为[0.6,-0.2]