当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.compat.v1.keras.layers.DenseFeatures用法及代码示例


基于给定 feature_columns 生成密集 Tensor 的层。

继承自:LayerModule

用法

tf.compat.v1.keras.layers.DenseFeatures(
    feature_columns, trainable=True, name=None, partitioner=None, **kwargs
)

参数

  • feature_columns 一个包含要用作模型输入的 FeatureColumns 的迭代。所有项目都应该是派生自 DenseColumn 的类的实例,例如 numeric_column , embedding_column , bucketized_column , indicator_column 。如果你有分类特征,你可以用 embedding_columnindicator_column 包装它们。
  • trainable 布尔值,层的变量是否将在训练期间通过梯度下降进行更新。
  • name 赋予 DenseFeatures 的名称。
  • partitioner 输入层的分区器。默认为无。
  • **kwargs 构造层的关键字参数。

抛出

  • ValueError 如果 feature_columns 中的项目不是 DenseColumn

通常使用 FeatureColumns 说明训练数据中的单个示例。在模型的第一层,此 column-oriented 数据应转换为单个 Tensor

可以使用不同的函数多次调用该层。

这是该层的 V1 版本,它使用 variable_scope 或分区程序来创建与 PartitionedVariables 配合良好的变量。 V2 中不推荐使用变量作用域,因此 V2 版本使用 name_scopes 代替。但目前缺乏对分区变量的支持。如果您需要分区变量,请使用此选项。如果您有 Keras 模型并使用 tf.compat.v1.keras.estimator.model_to_estimator 进行训练,请使用 partitioner 参数。

例子:

price = tf.feature_column.numeric_column('price')
keywords_embedded = tf.feature_column.embedding_column(
    tf.feature_column.categorical_column_with_hash_bucket("keywords", 10K),
    dimension=16)
columns = [price, keywords_embedded, ...]
partitioner = tf.compat.v1.fixed_size_partitioner(num_shards=4)
feature_layer = tf.compat.v1.keras.layers.DenseFeatures(
    feature_columns=columns, partitioner=partitioner)

features = tf.io.parse_example(
    ..., features=tf.feature_column.make_parse_example_spec(columns))
dense_tensor = feature_layer(features)
for units in [128, 64, 32]:
  dense_tensor = tf.compat.v1.keras.layers.Dense(
                     units, activation='relu')(dense_tensor)
prediction = tf.compat.v1.keras.layers.Dense(1)(dense_tensor)

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.keras.layers.DenseFeatures。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。