看了很多博客没有解释清楚Embedding层input_dim的意思,下面这篇博客我认为是解释清楚了,欢迎借鉴:

 首先搞懂这里embedding的原理就是one-hot,那这样就能理解为什么input_dim=|vocalbulary_id|+1

keras.layers.Embedding(input_dim, output_dim, embeddings_initializer='uniform', embeddings_regularizer=None, activity_regularizer=None, embeddings_constraint=None, mask_zero=False, input_length=None)

Keras中Embedding的参数解释(小白)_像蝼蚁这样的人的博客-CSDN博客_embedding第一个参数

再比如在文本数据要处理的时候,一般准备一个字典,形如下面这样的格式:

id word
0
1
2 你好

首先通过id来代表每个词(token),转换为计算机能理解的数字,再通过embedding编码转换为深度网络能够理解的内容。

比如还有再做时间序列预测的时候,可以考虑是否使用embedding来表征数据,再做对比试验,看是否能够让模型更好的预测。

再讲一下个人理解:

from keras.layers import Embedding
from keras import Sequential
import numpy as np
model = Sequential()
model.add(Embedding(3, 1, input_length=10))
# the model will take as input an integer matrix of size (batch, input_length).
# the largest integer (i.e. word index) in the input should be no larger than 999 (vocabulary size).
# now model.output_shape == (None, 10, 64), where None is the batch dimension.input_array = np.random.randint(3, size=(1, 10))
print(input_array)model.compile('rmsprop', 'mse')
output_array = model.predict(input_array)print(output_array)

应用:

(164条消息) Embedding 意义_weixin_30701575的博客-CSDN博客

补充:

model.add(Embedding(3, 1, input_length=10))这里的3是输入维度,比如我的输入值是可以用0,1,2来表示那么就需要embedding_input=3来进行One-hot编码表示,至于Output_dim再连接一个全连接层就能进行映射输出了。

参考资料

(171条消息) keras:3)Embedding层详解_Javis486的博客-CSDN博客_embedding keras

(165条消息) Keras中Embedding的参数解释(小白)_像蝼蚁这样的人的博客-CSDN博客_embedding第一个参数

Keras里Embedding层的理解 - 百度文库 (baidu.com)

(173条消息) keras:Embedding层详解(解释了参数的具体含义,有例子)_catbird233的博客-CSDN博客_embedding参数

Keras embedding层的理解与使用相关推荐

  1. 嵌入(embedding)层的理解

    首先,我们有一个one-hot编码的概念. 假设,我们中文,一共只有10个字...只是假设啊,那么我们用0-9就可以表示完 比如,这十个字就是"我从哪里来,要到何处去" 其分别对应 ...

  2. keras embedding层_初识TextCNN及keras实现

    1.初始TextCNN CNN可参考之前的文章:https://www.zhihu.com/people/xianyang94 最近在做寿命预测问题的研究中,拿到的数据为一维的数据,传统的数据预处理方 ...

  3. NLP 层嵌入(embedding)层的理解 通俗易懂 转

    https://www.cnblogs.com/USTC-ZCC/p/11068791.html

  4. 利用神经网络的embedding层处理类别特征

    类别特征在现实里十分常见,处理的方法也很多,最常见的思路是转为one-hot编码,当然这种处理方式比较粗暴,在许多算法里效果也不是很好.还有的处理方式寻找类别特征的最优切分,这个需要特定工具的支持,如 ...

  5. 神经网络 Embedding层理解; Embedding层中使用预训练词向量

    1.Embedding层理解 高维稀疏特征向量到低维稠密特征向量的转换:嵌入层将正整数(下标)转换为具有固定大小的向量:把一个one hot向量变为一个稠密向量 参考:https://zhuanlan ...

  6. 【文本分类】深入理解embedding层的模型、结构与文本表示

    [1] 名词理解   embedding层:嵌入层,神经网络结构中的一层,由embedding_size个神经元组成,[可调整的模型参数].是input输入层的输出.   词嵌入:也就是word em ...

  7. 在Keras的Embedding层中使用预训练的word2vec词向量

    文章目录 1 准备工作 1.1 什么是词向量? 1.2 获取词向量 2 转化词向量为keras所需格式 2.1 获取所有词语word和词向量 2.2 构造"词语-词向量"字典 2. ...

  8. keras.layers.Embedding层介绍

    本层应用,就是把稀疏矩阵变成一个密集矩阵,也称为查表,因为他们之间是一个一一映射关系.与其对应的是one-hot编码,multi-hot编码,对于特征维度过大的应用,直接使用会造成维度灾难. Embe ...

  9. 深入理解 Embedding层的本质

    继上文https://blog.csdn.net/weixin_42078618/article/details/82999906探讨了embedding层的降维效果,时隔一个月,分享一下嵌入层在NP ...

最新文章

  1. python内置函数map reduce filter详解,面试必备知识
  2. 差分数组 and 树上差分
  3. 一文看懂家庭宽带光纤是如何入户
  4. word List35
  5. 单列表_使用Excel中的quot;记录单quot;功能快速录入数据
  6. 一个搜索框多个按钮_网站搜索栏设计指南:要不要?怎么设计?
  7. cdh官方文档看后小结(含优化项)001
  8. [Microsoft][ODBC SQL Server Driver][SQL Server]String or binary data would be truncated.
  9. 进程和线程(4)-进程 vs. 线程
  10. 《Redis实战》一2.1 登录和cookie缓存
  11. 蚂蚁金服高要求的领域建模能力,对研发来说到底指什么?
  12. 简单实验uwsgi+flask 部署caffe模型
  13. debian10 buster 在thinkpad T470P 上安装指纹驱动 138a:0097 Validity Sensors
  14. NoSql入门和概述
  15. 嵌入式开发(三):海思Hi3559a交叉编译live555
  16. linux内核uuid生成器测试
  17. 外卖cps行业风雨交加,何去何从
  18. html中ul和li标签的用法介绍
  19. 苹果系统安装虚拟机 Mac如何安装虚拟机教程 (含系统镜像的下载地址)
  20. 应届毕业生找工作,应该如何选择?

热门文章

  1. C语言选择结构(if语句)
  2. 性能优化之 线程优化
  3. mybatis mapper 符号转译
  4. [修正]IOS中使用SoundTouch库实现变声
  5. 重庆高级会计师需要考计算机考试,一键查看 重庆2020年高级会计考试科目
  6. 网络教育计算机统考操作题,2020年7月网络教育统考《计算机应用基础》电子表格模拟题试卷操作题...
  7. 【Laravel 】faker数据填充详解
  8. matlab 固有频率 振型,请教如何求出有阻尼系统的固有频率及相应振型矩阵
  9. python位置函数_Python之函数——基础篇
  10. 再生龙u盘制作及使用 - Linux - clonezilla