主要在对文档中字符进行初始化embedding时使用,将输入的字符id转换成相应的embedding。该函数的原型是:
embed_sequence(
ids,
vocab_size=None,
embed_dim=None,
unique=False,
initializer=None,
regularizer=None,
trainable=True,
scope=None,
reuse=None
)
我们平时主要用的是前三个变量,它们的含义如下:
- ids:尺寸为[batch_size, doc_length]的二阶张量
- vocab_size:字典大小
- embed_dim:词向量大小
输出是尺寸为[batch_size,doc_length,embed_dim]的三阶张量,相当于初始化每个词向量。
例:
import tensorflow as tf
a=tf.constant([[1,2,3,4,5],[9,2,1,1,2]])
b=tf.contrib.layers.embed_sequence(ids=a,vocab_size=100,embed_dim=10)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
print(sess.run(b))