當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。