tf.keras.layers.Embedding 嵌入层 示例

将正整数(索引)转换为固定大小的密集向量。此层只能用作模型中的第一层

import tensorflow as tf
import numpy as np
embedding_layer  = tf.keras.layers.Embedding(
    1000, # 输入索引的最大限制
    4, # 输出向量的维度
#     input_length=10 # 输入序列的长度
)
print(embedding_layer)

input_array = np.random.randint(10, size=(2, 3))
print(input_array.shape)  # 输入:2个样本,每个样本3个索引
(2, 3)
print(input_array)
[[8 2 5]
 [4 0 1]]
output_array = embedding_layer(input_array)   # 索引 转 向量
print(output_array)   # 输出:2个样本,每个样本3个向量,每个向量都是4维。
tf.Tensor(
[[[-0.01356944 -0.03771597 -0.00765408 -0.0108991 ]
  [-0.01145458  0.00670235 -0.04148499  0.03742183]
  [ 0.02257642 -0.01279204  0.0417194  -0.01290895]]

 [[ 0.02775535 -0.02057298 -0.01002337 -0.00311716]
  [-0.01408575 -0.00358304 -0.04300636  0.01298282]
  [-0.04962901 -0.02087239 -0.00043805 -0.01269226]]], shape=(2, 3, 4), dtype=float32)

tf.keras.layers.Embedding 嵌入层 示例_第1张图片

你可能感兴趣的:(机器学习,python,数据挖掘)