Embedding

对于Embedding的理解

相对于one-hot编码来说,Embedding的主要作用是降维,减少计算量

相同点

one-hot编码和Embedding的主要作用均是对一组特征进行转换,使其每个特征都转换为向量,便于计算

例子

对于输入的同一组特征[0,1,0,2,1,3,4],one-hot编码的维度与特征的类别数保持一致,而Embedding的维度可以自己设置,本文设置为2。
代码:
from keras.models import Sequential
from keras.layers import Embedding, Input
import numpy as np
model = Sequential()
model.add(Embedding(5, 2, input_length=7))#输入维,输出维
model.compile(‘rmsprop’, ‘mse’)
model.summary()
input_array = np.array([[0,1,0,2,1,3,4]])
output_array_e = model.predict(input_array)

from keras.utils import np_utils
output_array_o = np_utils.to_categorical(input_array)
分析:
one-hot编码的输出为output_array_o,长这个样子:在这里插入图片描述
Embedding的输出为output_array_e,长这个样子:
在这里插入图片描述
欢迎各位大佬指教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值