因?yàn)樵跇?gòu)建基于大語(yǔ)言模型(LLM)的應(yīng)用時(shí),,分詞器決定了文本如何被解析和理解。分詞器的類型可分為以下三種:
詞級(jí)分詞器(Word):基于空格和標(biāo)點(diǎn)符號(hào)拆分文本,。 字符級(jí)分詞器(Character):將文本拆分為單個(gè)字符,,包括標(biāo)點(diǎn)。 子詞級(jí)分詞器(Subword):將文本拆分為子詞單元,,常用于大多數(shù)LLM,,如BPE(Byte-Pair Encoding)和WordPiece。 其中,,BPE由 OpenAI(tiktoken)使用,,它擁有更大的詞匯表,處理表情符號(hào)和拼寫(xiě)錯(cuò)誤時(shí)表現(xiàn)更佳,。例如,,"??" 在tiktoken中可能被正確識(shí)別,而在WordPiece中會(huì)被標(biāo)記為[UNK](Unknow),。
而WordPiece由Cohere和一些較小的Transformer使用,,例如MiniLM-L6-v2拆分效果細(xì)膩,但詞匯表較小,,可能導(dǎo)致更多的子詞分割,。舉個(gè)栗子:"Gucci" 會(huì)被拆成 ['gu', 'undefinedge'],,難以理解用戶的真實(shí)意圖;而tiktoke 則嘗試將'pckage'拆分為更有意義的部分,,如['p', 'ck', 'age'],,雖然不完美,但稍好一些,。
日期和貨幣格式:各種不同的日期和貨幣表示方式會(huì)增加模型理解的難度,,如 "20th October 2024", "2024-20-10", "20 October 2024", "20/10/2024",在分詞和嵌入時(shí)會(huì)導(dǎo)致不同的理解,,因此統(tǒng)一化日期格式能幫助模型更準(zhǔn)確地理解和處理這些信息,。 基礎(chǔ)了解完畢,要想分詞器用的好,,這些技巧少不了,,如下所示:
清洗輸入文本:標(biāo)準(zhǔn)化日期格式,消除多余空格,,統(tǒng)一貨幣表示等,,提升模型表現(xiàn)。例如,,將所有日期格式統(tǒng)一為 "2024-10-20",,減少模型理解的難度。
選擇合適的分詞器:根據(jù)具體應(yīng)用需求選擇最適合的分詞器,,了解其詞匯表和處理方式,。如果你的應(yīng)用需要處理大量表情符號(hào),選擇像tiktoken這樣的BPE分詞器會(huì)更合適,。
評(píng)估與可視化:使用評(píng)估工具和可視化手段檢查分詞和嵌入效果,,確保模型理解準(zhǔn)確。通過(guò)繪制嵌入距離矩陣,,觀察不同分詞器在處理相似和不同情感時(shí)的表現(xiàn)差異,。
參考文獻(xiàn): [1] https:///2024/10/21/you-should-probably-pay-attention-to-tokenizers/