首页 > 其他 > 详细

keras的Embedding层

时间:2018-09-23 23:14:22      阅读:462      评论:0      收藏:0      [点我收藏+]
keras.layers.embeddings.Embedding(input_dim, output_dim, embeddings_initializer=uniform, embeddings_regularizer=None, activity_regularizer=None, embeddings_constraint=None, mask_zero=False, input_length=None)

输入shape:形如(samples,sequence_length)的2D张量

输出shape:形如  (samples, sequence_length, output_dim)  的3D张量

重要参数

input_dim:        整数,字典长度,即输入数据最大下标+1

output_dim:      整数,代表全连接嵌入的维度

input_length:    当输入序列的长度固定时,该值为其长度。如果要在该层后接Flatten层,然后接Dense层,则必须指定该参数,否则Dense层的输出维度无法自动推断。

 举例说明上述参数:

假设单词表大小为1000,词向量的维度为300,那么Embedding的参数 input_dim=10000,output_dim=300。

嵌入层将正整数(下标)转换为具有固定大小的向量,如[[4],[20]]->[[0.25,0.1],[0.6,-0.2]]。

举个栗子:

假如单词表的大小为1000,词向量维度为2,经单词频数统计后,tom对应的id=4,而jerry对应的id=20,经上述的转换后,我们会得到一个M1000×2的矩阵,而tom对应的是该矩阵的第4行,取出该行的数据就是[0.25,0.1]。

 

keras的Embedding层

原文:https://www.cnblogs.com/wzdLY/p/9694021.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!