我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。
Sentence Tokenization
其將文字分割成單獨的句子,它將段落或文件分解為句子單元,展示如下:
text = "This is a sentence. This is another one."
sentences = sent_tokenize(text)
print("Sentence Tokenization:")
print(sentences)
結果為:

Word Tokenization
其將序列 (即句子和文字) 分解為單字,它檢測標點符號和空格,例如引號和換行符號,展示如下:
sentence = "This sentence contains several words."
words = word_tokenize(sentence)
print("Word Tokenization:")
print(words)
結果為:

Regular Expression Tokenization
其使用正規表示式,因此可以自訂函數來定義規則和模式,展示如下:
tokenizer = RegexpTokenizer(r'\w+')
text = "Let's see how to tokenize a sentence."
tokens = tokenizer.tokenize(text)
print("Regular Expression Tokenization:")
print(tokens)
結果為:

r'\w+' 補充說明如下:
- \w 是正規表達式中的一個預定義字符類,它匹配單詞字符,而單詞字符包含大寫英文 A 至 Z、小寫英文 a 至 z、數字 0 至 9 以及符號「 _ 」
- + 是量詞,表示「一個或多個」前面的元素,也就是說 + 表示匹配至少一個單詞字符,匹配的字符數不限
- r 是 Python 的「原始字符串」語法,它告訴 Python 不要對反斜線 \ 進行轉譯處理,而是將其直接傳遞给正規表達式引擎