產生嵌入範例

這個範例說明如何產生受監督相似度測量所用的嵌入功能。

想像一下,您在建立手動相似度評估時所獲得的大小寫資料集相同:

功能類型
價格正整數
大小正浮點值 (單位為平方公尺)
郵遞區號整數
臥室數量整數
房屋類型「value_family」、「多戶」、「公寓」或「公寓」的文字值
車庫0/1 沒有/是
顏色多值類別:從「白色」、「黃色」、「綠色」等標準顏色中的一或多個值。

預先處理資料

您必須先預先處理資料,才能使用特徵資料做為輸入內容。預先處理步驟是以您在建立手動相似度測量時採取的步驟為準。以下是重點摘要:

功能類型或發布動作
價格Poisson 分配 量化並縮放至 [0,1]。
大小Poisson 分配 量化並縮放至 [0,1]。
郵遞區號類別 轉換為經度和緯度、量化並縮放為 [0,1]。
臥室數量整數 將離群值裁剪至 [0,1]。
房屋類型類別 轉換為單一程式碼編碼。
車庫0 或 1 保持原樣。
顏色類別 轉換為 RGB 值,並以數值資料的形式處理。

如要進一步瞭解單一程式碼編碼,請參閱嵌入:類別輸入資料

選擇預測者或自動編碼器

如要產生嵌入,您可以選擇自動編碼器或預測器。請注意,預設選項為自動編碼器。如果資料集中的特定特徵具有相似性,請改為選擇預測器。讓我們看看完整情況。

訓練預測器

您必須選擇這些功能做為 DNN 訓練標籤,以便決定範例之間的相似性。假設價格是判斷不同房屋相似度的重要程度。

選擇價格做為訓練標籤,然後將其從輸入特徵資料中移除 DNN。使用所有其他特徵做為輸入資料,訓練 DNN。訓練時,損失函式只是預測價格和實際價格之間的 MSE。如要瞭解如何訓練 DNN,請參閱訓練類神經網路

訓練自動編碼器

請按照下列步驟操作,在資料集中訓練自動編碼器:

  1. 確認 Autoencoder 的隱藏層小於輸入和輸出層。
  2. 按照受監督相似度測量所述,計算每個輸出的損失。
  3. 將每個輸出的損失加總加總,以建立損失函式。務必為每項特徵平均分配損失。舉例來說,由於系統會將色彩資料處理為 RGB,因此每個 RGB 輸出的權重為 1/3。
  4. 訓練 DNN。

從 DNN 擷取嵌入

訓練 DNN 後 (無論是預測器或自動編碼器),請從 DNN 中擷取範例的嵌入。使用範例的特徵資料做為輸入內容,即可讀取嵌入,並讀取最終隱藏層的輸出內容。這些輸出內容會成為嵌入向量。請記住,類似房屋的向量應該比相近房屋的向量更近。

接下來,您將瞭解如何使用它們的嵌入向量量化範例的相似性。