成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

優雅談大模型:Token與分詞方法

發布于 2024-12-25 12:22
瀏覽
0收藏

1.Token

在繼續前行之前,需要先停下來澄清下Token這個詞,以及如何將原始的語料轉化為Token,在細究背后的原理之后會更加優雅的理解大模型。任何的資訊都可以生成語料,而這些語料需要被機器理解以及供后續的模型訓練,那么最常見的做法是將一段文字先切片,然后一一對應的轉化為數字或者向量輸入模型。通常而言有三種類型的分詞法:基于單詞、字符以及子詞的分詞法。單詞和字符這里就不解釋,字詞法運用得最為廣泛,也是最為主流。字詞分詞法包含了BPE、WordPiece、Unigram等。GPT等主流大模型也是采用BPE的分詞法。

優雅談大模型:Token與分詞方法-AI.x社區圖片

優雅談大模型:Token與分詞方法-AI.x社區先從個列子開始以GPT-3.5為例,輸入“I must read lubanmochui, it's professional.”,下圖則表明整句話一共43個字符,按照不同的顏色塊被切分成13份(Token)。而且每個Token都有與之對應的id。然后輸入中文的時候,發現24個字符卻被切成了30個Token。

優雅談大模型:Token與分詞方法-AI.x社區

按照常識,中文不是應該一個字一個Token。因為這里舉的例子是GPT,一個多語言模型,它覆蓋了國際很多種語言。但是它并沒有特殊的針對中文做適配,因此它采用了一種辦法,將中文轉為unicode,然后在按照英文的體系去切分,所以會看到有些切塊是“?”的字符。其實這樣一來,整體效率降低了,而且代價巨大,畢竟收費是基于Token數。

2.分詞方法

BPE、WordPiece、SentencePiece等方法的技術專業性的詳細拆解后續可以參見??《大模型背后的基礎模型》??這個專欄。

優雅談大模型:Token與分詞方法-AI.x社區


各種分詞法對比,各種分詞法都是基于大的詞匯庫然后按照特定的算法進行學習切分。BPE是貪婪而且是確定的,SentencePiece是可以針對同一個字符串進行反復的抽樣。

BPE(Byte Pair Encoding)自于論文《Neural Machine Translation of Rare Words with Subword Units》。它是一種基于頻率的分詞方法,它從一個完整的詞匯表開始,迭代地合并出現頻率最高的字符對,直到預定的詞匯表規模。例如:“I love lubanmochui.” 使用BPE分詞法,首先將每個單詞分割成字符,然后合并最常見的字符對。也許“love”會變成“lo”和“ve”,因為“lo”和“ve”在整個語料庫中頻繁出現。英語中“un”、“est”、“less”也經常被單獨提煉出來。

WordPiece來至論文《Japanese and korean voice search》,和BPE一樣在合并字符時除了考慮出現的頻率,還考慮了合并后的token對整體語言模型的貢獻,某種意義是基于概率的分詞法。畢竟有些名詞,例如針對蔬菜名合并和切分的意義不大,保留詞匯的原始意義是最優的選擇。

SentencePiece來至論文《Subword Regularization: Improving Neural Network Translation Models with Multiple Subword Candidates》。它是谷歌推出的子詞開源工具包,其中集成了BPE、ULM子詞算法。除此之外,SentencePiece還能支持字符和詞級別的分詞。為了能夠處理多語言問題,SentencePiece將句子視為Unicode編碼序列,從而子詞算法不用依賴于語言的表示。

3.HuggingFace Tokenizer

HuggingFace(重量級的大模型社區)的介紹會放在后續,這里主要介紹下HuggingFace提供的Tokenizer的庫。在HuggingFace里面它對于輸入文本的處理流程(黃色部分)如下圖所示,粉色則為處理的輸出結果。

注意:

GPT, GPT-2, RoBERTa, BART, DeBERTa 等模型使用了 BPE,其中 GPT-2 使用了 byte-level BPE 。

BERT,DistilBERT,MobileBERT,Funnel Transformers,MPNET等模型使用了WordPiece。Hugging Face中的實現是基于已發表文獻的模擬。

AlBERT,T5,mBART,Big Bird,XLNet等模型使用了 Unigram。

  • Normalization:標準化步驟,包括一些常規清理,例如刪除不必要的空格、小寫、以及刪除重音符號
  • Pre-tokenization:tokenizer 不能單獨在原始文本上進行訓練。相反,我們首先需要將文本拆分為小的單元,例如單詞。這就是pre-tokenization 步驟。基于單詞的tokenizer可以簡單地基于空白和標點符號將原始文本拆分為單詞。這些詞將是tokenizer在訓練期間可以學習的子詞邊界
  • Model:執行tokenization從而生成token序列
  • Postprocessor:針對具體的任務插入special token,以及生成attention mask和token-type ID

本文轉載自 ??魯班模錘??,作者: 龐德公


收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 日韩欧美不卡 | 成人免费网视频 | 一区二区三区福利视频 | 久久久久久久久国产成人免费 | 一区二区三区四区不卡 | 国产日本精品视频 | 激情福利视频 | 久久综合久 | 日韩小视频在线 | 天堂在线免费视频 | 亚洲国产精品一区二区三区 | 91操操操 | 男女精品网站 | 亚洲福利一区 | 亚洲一区二区三区在线视频 | 天堂亚洲 | 亚洲欧美精品 | 国产日韩欧美一区二区在线播放 | 欧美成人第一页 | 91在线资源 | 日韩精品在线网站 | 亚洲美女一区 | 免费黄色录像片 | 黄色网址免费在线观看 | 欧产日产国产精品99 | 天天操天天干天天曰 | 色婷婷综合网 | 91免费看片| 男女激情网站免费 | 色狠狠一区| 日本中出视频 | 亚洲欧美少妇 | 久久婷婷国产麻豆91 | 日韩中文字幕在线观看 | 伊人伊人伊人 | 亚洲福利一区二区 | 亚洲精品粉嫩美女一区 | 日本久久精品 | 午夜激情国产 | 久久久久久久久久久蜜桃 | 亚洲精品国产区 |