上一頁說明如何將 softmax 層整合到 評估系統採用的類神經網路本頁面將進一步說明 訓練資料
訓練資料
softmax 的訓練資料由查詢功能 \(x\) 和 使用者互動項目的向量 (以 機率分佈 \(p\))。在 如下圖所示模型的變數是權重 不同層次的學習路徑這些項目在下列項目中標示為橘色 圖表上我們通常會使用 隨機梯度下降法
負取樣
由於損失函式會比較兩個機率向量 \(p, \hat p(x) \in \mathbb R^n\) (真值和 會分別計算模型的輸出內容 (單一查詢 \(x\)) 的損失梯度 如果語料庫規模過大 \(n\) ,則過於昂貴。
您可以設定一個系統,只計算陽性項目的梯度 (真值向量中有效的項目)。不過,如果系統 只對正對表示訓練時,模型可能會因折疊 的說明。
模型可能會學習如何將指定的查詢/項目嵌入 顏色之間的相對關係 (正確擷取 但不同顏色的嵌入最終可能位於同一區域 可能性地降低了這種現象 視為「摺疊」,則可能在查詢時提供錯誤建議: 模型可能會錯誤地從 另一個則是不同群組
負面示例是指標示為「不相關」的項目套用至某個查詢的結果 訓練期間呈現模型負向範例,幫助模型學習 不同群組的嵌入也必須彼此離去
與其使用所有項目來計算漸層 (可能也可以 成本高昂),或只使用正面項目 (這樣模型更有機會 折疊式網頁),可以使用負取樣。更精確地說 ,請運用下列項目近似漸層:
- 所有正面項目 (出現在目標標籤中的項目)
- 排除項目範例 (\(j\) 單位: \({1, …, n}\))
負面資訊取樣策略有不同的策略:
- 兩者可以一致取樣。
- 您可以設定較高的項目 j 機率較高的項目 <分數> \(\psi(x) . V_j\)。這些是直觀的範例 對漸層的貢獻最大);這些例子通常 稱為「硬式負向」
矩陣分解與 softmax
DNN 模型可解決許多矩陣分解的限制,但這類模型通常 訓練和查詢的成本較高下表摘要列出部分 這兩種模式之間的重大差異
矩陣分解 | Softmax DNN | |
---|---|---|
查詢功能 | 零件不簡單。 | 可以加入。 |
冷啟動 | 不易處理斷言 查詢或項目部分經驗法則可用於 新查詢、相似查詢的平均嵌入)。 | 輕鬆處理新查詢。 |
摺疊 | 摺疊方式可以輕鬆減少 調整 WALS 中未觀察到的權重 | 容易摺疊,需使用 例如負面抽樣或重力 |
訓練擴充性 | 輕鬆擴充至超大 (可能多達數億個或更多),但前提是 輸入矩陣是稀疏的 | 難以擴充至極大 語料庫有些技巧的用途包括雜湊、 排除取樣等等 |
提供擴充性 | 嵌入 U、V 是靜態的 且一組候選文字可供預先運算及儲存。 | 項目嵌入 V 為靜態
可以儲存
查詢嵌入通常會 因此,模型的成本較高 放送。 |
摘要說明:
- 對大型語料庫而言,矩陣分解通常是更好的選擇。 更容易擴充規模、查詢成本較低,且較不容易折疊。
- DNN 模型能更準確地擷取個人化偏好 較難訓練,查詢成本也較高建議使用 DNN 模型 將用於評分的矩陣分解,因為 DNN 模型能 進而進一步掌握關聯性此外,通常 我們非常重視 DNN 模型的發展 為具有相關性預先篩選過的一組候選廣告進行排名。