本節著重於兩項用於取得嵌入的常見技術:
- 降低維度
- 從較大的類神經網路模型擷取嵌入
維度縮減技術
有許多數學技巧可以用來記錄 模型在低維度空間中 具有高維度空間的結構理論上 這些技術都能用來為機器建立嵌入 學習系統
例如主成分分析 (PCA) 來建立字詞嵌入假設我們有一組執行個體 向量、PCA 攻擊 找出高度相關且可收合為單一項目的維度 維度。
將嵌入訓練做為類神經網路的一部分
您可以在訓練 類神經網路 您的目標任務這種方法可以特別針對 但這可能會比單獨訓練嵌入的時間更長。
一般來說,您可以在類神經元中建立 d 大小的隱藏層。 主要指定為 「嵌入層」,其中 d 分別代表隱藏層的節點數量 在嵌入空間中檢視出各種維度的資料這個嵌入層可以與 其他任何特徵和隱藏層如同任何深層類神經網路 都會在訓練期間最佳化調整參數,盡可能減少 輸出層
回到我們的食物建議範例中,我們的目標是 根據使用者目前的喜好,預測他們可能喜歡的新餐點 餐點。首先,我們可以針對使用者的前 5 名常用聯絡人 食物。接著,我們就能將這項工作當做監督式學習問題來進行模型。我們設定了 然後隨機將五分之一的食物做為特徵資料 也就是模型預測的第五項食物 模擬預測結果 - 使用 softmax 損失
在訓練期間,類神經網路模型會學習 做為嵌入層 舉例來說,如果模型在第一個隱藏層中有三個節點, 判斷食物品項中最相關的三個維度 供應三明治、甜點和液態圖 12 顯示 one-hot 編碼 「hot dog」的輸入值並轉換為 3D 向量
訓練過程中,系統會最佳化嵌入層的權重 因此嵌入向量 這類範例比較接近 其他。嵌入層的個別維度 ( 嵌入層) 很少能理解為「甜點」或 「液體」有些時候,這些字的「意思」但有時不一定 專案或資料夾
嵌入項目通常各有不同,且彼此不同 並在工作不同時產生快訊舉例來說,素食和 非素食分類模型可能包含兩種維度:肉類內容 和乳製品的內容同時,經由早餐和 美式料理的晚餐分類器的尺寸可能略有不同: 熱量內容、穀物內容和肉類內容。「麥片」和 「雞蛋和培根三明治」在解碼器的嵌入空間中 早餐、晚餐分類器,但差距在 素食和非素食分類器
訓練字詞嵌入
Word2vec 是訓練字詞嵌入的眾多演算法之一, 會利用分佈假設來對應語意相似的做法 將字詞轉換為幾何圖形,使嵌入向量透過分佈 假設 表示如果字詞的相關字詞 。雙管齊下以及「cat」經常出現在 「獸醫」一字這一點也反映了語意相似度 正如語言學家 John Firth 在 1957 年提名:「您應該知道該公司的一個詞 依然存在」
下方影片會說明另外建立字詞嵌入的方法 也就是使用較簡單的模型訓練類神經網路的過程:
靜態與內容嵌入
如上文提到的文字嵌入,有一項限制是 轉換成靜態資料。每個字詞都是以向量中的一個點表示 可能會具有各種不同意義 語句中用於語句在上一個運動中, 您發現對應字詞語意相似度時比較困難 橘色,代表顏色或水果類型。
比對內容嵌入是為瞭解決這些缺點而開發的。 內容比對嵌入 都會將字詞的相關資訊 字詞位置。在上下文中 橘色可能有兩種不同的表示法:一種擷取「顏色」 例如「我最愛的毛衣有橘色的」 條紋」第一是擷取「水果」如句所示 「橘色的一面在樹枝完全蔓延之前,從樹上拿起了。」
,瞭解如何調查及移除這項存取權。