如何使用 Estimators 在 TensorFlow 中執行資料轉換?


可以使用“DenseFeatures”方法對泰坦尼克號資料集執行資料轉換。需要轉換的列將轉換為 NumPy 陣列。

閱讀更多: 什麼是 TensorFlow 以及 Keras 如何與 TensorFlow 協作建立神經網路?

我們將使用 Keras Sequential API,它有助於構建一個順序模型,用於處理簡單的層堆疊,其中每一層都只有一個輸入張量和一個輸出張量。

包含至少一層卷積層的神經網路稱為卷積神經網路。我們可以 使用卷積神經網路構建學習模型。

Estimator 是 TensorFlow 中對完整模型的高階表示。它旨在簡化擴充套件和非同步訓練。Estimator 使用特徵列來描述模型如何解釋原始輸入特徵。Estimator 期望一個數值輸入向量,特徵列將幫助描述模型應該如何轉換資料集中每個特徵。

選擇和使用正確的特徵列集對於學習有效的模型至關重要。特徵列可以是原始特徵字典中的原始輸入之一,也可以是使用針對一個或多個基礎列定義的轉換建立的新列。

線性估計器使用數值和分類特徵。特徵列適用於所有 TensorFlow 估計器。它們的目的是定義用於建模的特徵。它們還具有特徵工程功能,例如獨熱編碼、歸一化和分箱。

示例

print("A categorial column is transformed to an indicator column")
gender_column = feature_columns[0]
tf.keras.layers.DenseFeatures([tf.feature_column.indicator_column(gender_column)])(feature_batch).numpy()

程式碼來源 -https://www.tensorflow.org/tutorials/estimator/linear

輸出

A categorial column is transformed to an indicator column
array([[1., 0.],
   [0., 1.],
   [0., 1.],
   [1., 0.],
   [1., 0.],
   [1., 0.],
   [0., 1.],
   [0., 1.],
   [1., 0.],
   [1., 0.]], dtype=float32)

解釋

  • DenseFeatures 接受密集張量。

  • 這樣做是為了檢查需要轉換的分類列。

  • 在任何其他計算之前,它首先被轉換為指示符列。

更新於: 2021年2月25日

88 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.