tf.compat.v1.feature_column.embedding_column
的 TPU 版本。
用法
tf.compat.v1.tpu.experimental.embedding_column(
categorical_column, dimension, combiner='mean', initializer=None,
max_sequence_length=0, learning_rate_fn=None, embedding_lookup_device=None,
tensor_core_shape=None, use_safe_embedding_lookup=True
)
参数
-
categorical_column
从categorical_column_with_identity
,weighted_categorical_column
,categorical_column_with_vocabulary_file
,categorical_column_with_vocabulary_list
,sequence_categorical_column_with_identity
,sequence_categorical_column_with_vocabulary_file
,sequence_categorical_column_with_vocabulary_list
返回的分类列 -
dimension
指定嵌入维度的整数,必须 > 0。 -
combiner
一个字符串,指定在非序列列的单行中有多个条目时如何减少。有关详细信息,请参阅tf.feature_column.embedding_column
。 -
initializer
用于嵌入变量初始化的变量初始化函数。如果未指定,则默认为tf.compat.v1.truncated_normal_initializer
,平均值为0.0
和标准差1/sqrt(dimension)
。 -
max_sequence_length
指定最大序列长度的非负整数。任何比这更短的序列都将被填充 0 个嵌入,任何更长的序列都将被截断。这对于序列特征必须为正,对于非序列特征必须为 0。 -
learning_rate_fn
一个函数,它采用全局步骤并返回嵌入表的学习率。如果您打算对多个嵌入表使用相同的学习率,请确保您将完全相同的 python 函数传递给embedding_column的所有调用,否则性能可能会受到影响。 -
embedding_lookup_device
运行嵌入查找的设备。有效选项为 "cpu"、"tpu_tensor_core" 和 "tpu_embedding_core"。如果指定 "tpu_tensor_core",则必须提供 tensor_core_shape。如果未指定,默认行为是在 "tpu_embedding_core" 上嵌入查找以进行训练,在 "cpu" 上嵌入查找以进行推理。训练的有效选项:["tpu_embedding_core", "tpu_tensor_core"] 服务的有效选项:["cpu", "tpu_tensor_core"] 对于训练,tpu_embedding_core 适用于大型嵌入词汇(>1M),否则,tpu_tensor_core通常就足够了。对于服务,在服务期间对 tpu_tensor_core 进行嵌入查找是一种在出现瓶颈的情况下减少主机 CPU 使用率的方法。 -
tensor_core_shape
如果提供,一个整数列表,它指定预期的密集形状以在 TensorCore 上运行嵌入查找此函数。批处理维度可以保留为 None 或 -1 以指示动态形状。当前仅支持 2 级形状。 -
use_safe_embedding_lookup
如果为真,则使用 safe_embedding_lookup_sparse 而不是 embedding_lookup_sparse。 safe_embedding_lookup_sparse 确保没有空行,并且所有权重和 id 都是正数,但代价是额外的计算成本。这仅适用于 rank 2 (NxM) 形状的输入张量。默认为 true,如果不需要上述检查,请考虑关闭。请注意,尽管输出结果可能为 0 或省略,但具有空行不会触发任何错误。
返回
-
一个
_TPUEmbeddingColumnV2
。
抛出
-
ValueError
如果dimension
不 > 0。 -
ValueError
如果指定了initializer
但不可调用。
请注意,tf.tpu.experimental.embedding_column
的接口与 tf.compat.v1.feature_column.embedding_column
的接口不同:不支持以下参数:ckpt_to_load_from
, tensor_name_in_ckpt
, max_norm
和 trainable
。
如果您想使用 TPU 通过 TPU 嵌入来加速嵌入查找,请使用此函数代替 tf.compat.v1.feature_column.embedding_column
。
column = tf.feature_column.categorical_column_with_identity(...)
tpu_column = tf.tpu.experimental.embedding_column(column, 10)
...
def model_fn(features):
dense_feature = tf.keras.layers.DenseFeature(tpu_column)
embedded_feature = dense_feature(features)
...
estimator = tf.estimator.tpu.TPUEstimator(
model_fn=model_fn,
...
embedding_config_spec=tf.estimator.tpu.experimental.EmbeddingConfigSpec(
column=[tpu_column],
...))
相关用法
- Python tf.compat.v1.tpu.experimental.AdamParameters用法及代码示例
- Python tf.compat.v1.tpu.experimental.FtrlParameters用法及代码示例
- Python tf.compat.v1.tpu.experimental.shared_embedding_columns用法及代码示例
- Python tf.compat.v1.tpu.experimental.StochasticGradientDescentParameters用法及代码示例
- Python tf.compat.v1.tpu.experimental.AdagradParameters用法及代码示例
- Python tf.compat.v1.tpu.bfloat16_scope用法及代码示例
- Python tf.compat.v1.tpu.rewrite用法及代码示例
- Python tf.compat.v1.tpu.shutdown_system用法及代码示例
- Python tf.compat.v1.tpu.outside_compilation用法及代码示例
- Python tf.compat.v1.tpu.shard用法及代码示例
- Python tf.compat.v1.tpu.replicate用法及代码示例
- Python tf.compat.v1.tpu.batch_parallel用法及代码示例
- Python tf.compat.v1.train.FtrlOptimizer.compute_gradients用法及代码示例
- Python tf.compat.v1.train.get_or_create_global_step用法及代码示例
- Python tf.compat.v1.train.cosine_decay_restarts用法及代码示例
- Python tf.compat.v1.train.Optimizer用法及代码示例
- Python tf.compat.v1.truncated_normal_initializer.from_config用法及代码示例
- Python tf.compat.v1.train.AdagradOptimizer.compute_gradients用法及代码示例
- Python tf.compat.v1.train.init_from_checkpoint用法及代码示例
- Python tf.compat.v1.truncated_normal_initializer用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.tpu.experimental.embedding_column。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。