資料內(nèi)容:
Byte-Pair Encoding(BPE)篇
1 Byte-Pair Encoding(BPE) 如何構(gòu)建詞典?
1 準備足夠的訓練語料;以及期望的詞表大?。?/span>
2 將單詞拆分為字符粒度(字粒度), 并在末尾添加后綴“”, 統(tǒng)計單詞頻率
3 合并方式:統(tǒng)計每一個連續(xù)/相鄰字節(jié)對的出現(xiàn)頻率, 將最高頻的連續(xù)字節(jié)對合并為新字詞;
4 重復(fù)第 3 步, 直到詞表達到設(shè)定的詞表大小;或下一個最高頻字節(jié)對出現(xiàn)頻率為 1。 注: GPT2 、BART 和 LLaMA 就采用了BPE。
Word Piece 篇
Word Piece 與 BPE 異同點是什么?
本質(zhì)上還是BPE 的思想。與BPE 最大區(qū)別在于:如何選擇兩個子詞進行合并 BPE 是選擇頻次最大 的相鄰子詞合并;
Word Piece 算法選擇能夠提升語言模型概率最大的相鄰子詞進行合并, 來加入詞表; 注: BERT 采用了 Word Piece。
SentencePiece 篇
簡單介紹一下 SentencePiece 思路?
把空格也當作一種特殊字符來處理,再用BPE 或者來構(gòu)造詞匯表。 注:ChatGLM 、BLOOM 、 PaLM 采用了SentencePiece。