Keras embedding层的理解与使用
看了很多博客没有解释清楚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层的理解与使用相关推荐
- 嵌入(embedding)层的理解
首先,我们有一个one-hot编码的概念. 假设,我们中文,一共只有10个字...只是假设啊,那么我们用0-9就可以表示完 比如,这十个字就是"我从哪里来,要到何处去" 其分别对应 ...
- keras embedding层_初识TextCNN及keras实现
1.初始TextCNN CNN可参考之前的文章:https://www.zhihu.com/people/xianyang94 最近在做寿命预测问题的研究中,拿到的数据为一维的数据,传统的数据预处理方 ...
- NLP 层嵌入(embedding)层的理解 通俗易懂 转
https://www.cnblogs.com/USTC-ZCC/p/11068791.html
- 利用神经网络的embedding层处理类别特征
类别特征在现实里十分常见,处理的方法也很多,最常见的思路是转为one-hot编码,当然这种处理方式比较粗暴,在许多算法里效果也不是很好.还有的处理方式寻找类别特征的最优切分,这个需要特定工具的支持,如 ...
- 神经网络 Embedding层理解; Embedding层中使用预训练词向量
1.Embedding层理解 高维稀疏特征向量到低维稠密特征向量的转换:嵌入层将正整数(下标)转换为具有固定大小的向量:把一个one hot向量变为一个稠密向量 参考:https://zhuanlan ...
- 【文本分类】深入理解embedding层的模型、结构与文本表示
[1] 名词理解 embedding层:嵌入层,神经网络结构中的一层,由embedding_size个神经元组成,[可调整的模型参数].是input输入层的输出. 词嵌入:也就是word em ...
- 在Keras的Embedding层中使用预训练的word2vec词向量
文章目录 1 准备工作 1.1 什么是词向量? 1.2 获取词向量 2 转化词向量为keras所需格式 2.1 获取所有词语word和词向量 2.2 构造"词语-词向量"字典 2. ...
- keras.layers.Embedding层介绍
本层应用,就是把稀疏矩阵变成一个密集矩阵,也称为查表,因为他们之间是一个一一映射关系.与其对应的是one-hot编码,multi-hot编码,对于特征维度过大的应用,直接使用会造成维度灾难. Embe ...
- 深入理解 Embedding层的本质
继上文https://blog.csdn.net/weixin_42078618/article/details/82999906探讨了embedding层的降维效果,时隔一个月,分享一下嵌入层在NP ...
最新文章
- python内置函数map reduce filter详解,面试必备知识
- 差分数组 and 树上差分
- 一文看懂家庭宽带光纤是如何入户
- word List35
- 单列表_使用Excel中的quot;记录单quot;功能快速录入数据
- 一个搜索框多个按钮_网站搜索栏设计指南:要不要?怎么设计?
- cdh官方文档看后小结(含优化项)001
- [Microsoft][ODBC SQL Server Driver][SQL Server]String or binary data would be truncated.
- 进程和线程(4)-进程 vs. 线程
- 《Redis实战》一2.1 登录和cookie缓存
- 蚂蚁金服高要求的领域建模能力,对研发来说到底指什么?
- 简单实验uwsgi+flask 部署caffe模型
- debian10 buster 在thinkpad T470P 上安装指纹驱动 138a:0097 Validity Sensors
- NoSql入门和概述
- 嵌入式开发(三):海思Hi3559a交叉编译live555
- linux内核uuid生成器测试
- 外卖cps行业风雨交加,何去何从
- html中ul和li标签的用法介绍
- 苹果系统安装虚拟机 Mac如何安装虚拟机教程 (含系统镜像的下载地址)
- 应届毕业生找工作,应该如何选择?
热门文章
- C语言选择结构(if语句)
- 性能优化之 线程优化
- mybatis mapper 符号转译
- [修正]IOS中使用SoundTouch库实现变声
- 重庆高级会计师需要考计算机考试,一键查看 重庆2020年高级会计考试科目
- 网络教育计算机统考操作题,2020年7月网络教育统考《计算机应用基础》电子表格模拟题试卷操作题...
- 【Laravel 】faker数据填充详解
- matlab 固有频率 振型,请教如何求出有阻尼系统的固有频率及相应振型矩阵
- python位置函数_Python之函数——基础篇
- 再生龙u盘制作及使用 - Linux - clonezilla