Python知識分享網 - 專業(yè)的Python學習網站 學Python,上Python222
Transformer架構原理詳解 DOC 下載
匿名網友發(fā)布于:2025-12-03 09:52:21
(侵權舉報)
(假如點擊沒反應,多刷新兩次就OK!)

Transformer架構原理詳解 DOC 下載 圖1

 

 

資料內容:

 

1.1 Tokenization

  •  
  • Token 是指文本中的一個基本單元,通常是詞或短語。這個切分 token 的過程,稱為分詞(Tokenization)。 Tokenization 的本質其實就是一個字符到數字的映射,其維護的是一個字典,而不是權重,也就是說每一個字符/詞/短語都有一個唯一確定的數字與其對應。
  •  
  • 詞粒度
  •  
  • 詞粒度基本是最直觀的分詞手段了,也是最符合我們平時認知的方式。每一個 token 是詞典中的一個詞。 - 優(yōu)點: - 符合人類的直覺,詞的含義完備。 - 對于拉丁語系很簡單,按照空格和標點符號分割即可。 - 缺點: - 對于中文日文,需要專門進行分詞,比如中文分詞一般都用 jieba(結巴分詞),哈工大的 LTP 等。 - 如何構造一份好的詞典,以及詞典過大的問題。 - OOV (Out of Vocabulary)問題,對于詞典中沒有詞一般會分配一個統一來處理,信息丟失。 - 同義詞和誤拼會被認為是不同的詞。比如 do not 和 don't 雖然含義一樣,但是最終的 id 不一樣。類似的還有詞的不同形態(tài),比如 have, has, had, having 等。 - 詞典中的詞沒有任何關聯,低頻詞不會得到充分的訓練。比如 oarfish,這個詞雖然第一眼可能不知道什么意思,但是能猜出是一種魚(皇帶魚)。
  •  
  • 子粒度
  •  
  • 把文本按照最小粒度來拆分,對于英文來說就是 26 個字母加上一些標點符號。中文來說就是字。 - 優(yōu)點: - 實現簡單。 - 詞典很小。 - 幾乎沒有 OOV (Out of Vocabulary)問題 - 缺點: - 對于英文來說,單個字母幾乎沒有含義。 - 難以學習到詞匯的真正含義。由于中文的一個字還是有一定的含義,所以在中文勉強可以使用,但是英文幾乎沒法使用。 - 會讓輸入變得很長,訓練和推理更慢。
  •  
  • Embedding
  •  
  • 核心是為了向量化
  •  
  • 假設我們現在有一個詞庫(詞匯表),里面有五個詞[ I , love , programming , in, Python ],我們通過索引下標將其標識出來分別對應[1, 2, 3, 4 , 5],但是這樣的表示方法,基本很難幫助我們去發(fā)現他們之間的關系,比如相似性、多義性,所以我們引入向量空間,幫助我們更好表示不同詞token,one-hot就是其中一種: