首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场

嵌入Keras
EN

Stack Overflow用户
提问于 2018-07-29 11:17:43
回答 2查看 1.7K关注 0票数 3

在Keras内建函数中使用哪种嵌入算法?Word2vec?手套?另一个?

https://keras.io/layers/embeddings/

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-29 12:40:52

简单地说,都不是。本质上,嵌入层(如Word2Vec of GloVe )只是一个小的神经网络模块(通常是完全连接的层),它将更高的稀疏维数投射到一个较低的n维向量中。

当您在Keras中插入一个新的随机嵌入层到您的神经网络中时,Keras将构造一个形状[input_dim, output_dim]的密集可学习矩阵。

具体来说,假设您要插入一个嵌入层,将整数标量月份信息(12个唯一值)编码到大小为3的浮点向量中。

代码语言:javascript
运行
复制
import numpy as np
import keras
from keras.models import Sequential, Model
from keras.layers import Embedding, Input
x = Input(shape=(1000,)) # suppose seq_len=1000
embedding = Embedding(12+1, 3, input_length=1000)(x)
model = Model(inputs=x, outputs= embedding) # Functional API
model.summary()

您的嵌入层将有如下摘要:

代码语言:javascript
运行
复制
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
input_1 (InputLayer)         (None, 1000)              0         
_________________________________________________________________
embedding_1 (Embedding)      (None, 1000, 3)           39        
=================================================================
Total params: 39
Trainable params: 39
Non-trainable params: 0
_________________________________________________________________

注意,可学习的参数是39 = 13*3 ( Keras需要+1来编码不属于12个唯一月份中任何一个的值--以防万一)。

还请注意,虽然嵌入的输入形状是形状(None, 1000),嵌入的输出是形状(None, 1000, 3)。这意味着[13, 3]大小的非常小的稠密权重矩阵被应用于,每个的输入时间步骤为1000个。这意味着,每个月0-11的整数输入都将转换为大小为(3,)的浮点向量。

这也意味着,当您从最后一层反向传播到嵌入层时,1000个时间步骤嵌入输出中每一个的梯度也将(以time_distributed方式)流到尺寸为[13,3]的小神经网络权重(本质上是嵌入层)。

此外,请参阅嵌入层的官方Keras文档:https://keras.io/layers/embeddings/

票数 7
EN

Stack Overflow用户

发布于 2018-07-29 11:37:25

以上都不是。默认情况下,它是随机初始化的embeddings_initializer='uniform'

有一个关于如何使用现有嵌入的教程

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51579761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档