【2025 夏日精選-3】要讓電腦看得懂,第一步要先分詞

更新 發佈閱讀 4 分鐘
「分詞」是自然語言處理的很重要的第一步,讓電腦能夠「識別」我們的文字

電腦沒辦法理解人類的語言,所以需要先將文字轉換成電腦能讀懂的數字,而我們不可能把一整句話直接編碼,例如:"I love you."=1、"I love him."=2...,這樣編碼到最後會變成天文數字,所以在那之前我們需要先將一句話分成最小單位,也就是「詞」

本篇會用到一些我之前 Python 文章提過的內容,像是 Set (集合)、推導式,如有需要不妨參考一下~
不再迷茫!手把手的Python入門教學-字典、集合
不再迷茫!手把手的Python入門教學-推導式、生成器

簡易分詞

英文的分詞比較好處理,甚至是用簡單幾行的 Python 程式就有辦法解決

string = "All you need in this life is ignorance and confidence, and then success is sure."
tokenization = string.split()
token_num = {word: index for index, word in enumerate(set(tokenization))}
print(token_num)
# {'ignorance': 0, 'life': 1, 'success': 2, 'sure.': 3, 'this': 4, 'and': 5, 'All': 6, 'then': 7, 'need': 8, 'you': 9, 'is': 10, 'in': 11, 'confidence,': 12}

id = [token_num[word] for word in tokenization]
print(id)
# [6, 9, 8, 11, 4, 1, 10, 0, 5, 12, 5, 7, 2, 10, 3]​
    • 第一行:要進行分詞的句子
    • 第二行:用 .split() 將句子以 '空格' 分開並製成 list
      忘了 .split() 可以參考這篇
    • 第三行:這行比較複雜,我們先從最裡面的括號來看
      • set(tokenization):將 tokenization 這個 list 轉成 set,用 set 不重複的特性,去除重複的詞(set看這裡
      • enumerate(set(tokenization)):將這個 set 內的值給予從 0 開始的流水編號,並組合成一個索引序列
      • {word: index for index, word in enumerate(...)}:這裡用到的是一個字典的推導式,將索引序列的第一個值設為 index、第二個值設為 word 放入字典中,因為我們希望字典是文字在前數字在後,所以特意顛倒
        * 需要注意的是,每個人最後產出的結果可能都不一樣,因為 set 沒有順序,所以每個人結果都是隨機
        enumerate、字典推導式可以參考這篇
    • 第七行:這邊是列表推導式,後面那個 for 迴圈會將 tokenization 這個 list 內的值一個一個代入 word 這個變數,然後前面的 token_num[word] 會將每一個詞當作 key 值代入 token_num 這個字典裡面查,然後將找到的編碼放入 id 這個 list 中

*要理解推導式最好的辦法是自己慢慢推導看看,因為不是本篇的重點我就不多贅述,想深入了解可以看看 不再迷茫!手把手的Python入門教學-推導式、生成器

執行結果

執行結果


這裡只是稍微講一下分詞的概念,下一篇就會真正來到 Hugging Face Tokenizer

一樣如果喜歡我的內容也幫我動動手指按個讚喔~感謝您😊

留言
avatar-img
留言分享你的想法!
avatar-img
の倉的程式小天地
6會員
32內容數
熱愛做志工的大學生 誤打誤撞跑去讀資管系 既然來到了資管系,那就學習新技能來幫助他人
2025/07/09
上一篇有提到過「寫一行就能使用模型的封裝工具包 pipeline」,至於為什麼他可以寫一行就解決呢?真的有那麼神嗎?
Thumbnail
2025/07/09
上一篇有提到過「寫一行就能使用模型的封裝工具包 pipeline」,至於為什麼他可以寫一行就解決呢?真的有那麼神嗎?
Thumbnail
2025/07/09
雖然上一篇還在吐槽,這個時代學習新知識會跑去找 ChatGPT,但不得不說生成式 AI 是真香,或者更精確地說「大型語言模型(LLM, Large Language Model)」(以下簡稱LLM),有用過的朋友應該都知道他的優點,這篇就先講講 AI 界的 Github:Hugging Face 吧
Thumbnail
2025/07/09
雖然上一篇還在吐槽,這個時代學習新知識會跑去找 ChatGPT,但不得不說生成式 AI 是真香,或者更精確地說「大型語言模型(LLM, Large Language Model)」(以下簡稱LLM),有用過的朋友應該都知道他的優點,這篇就先講講 AI 界的 Github:Hugging Face 吧
Thumbnail
2025/07/01
大二下的期末,與他的相遇是那麼地奇妙又命中注定,屬於我們的暑假......開始了
Thumbnail
2025/07/01
大二下的期末,與他的相遇是那麼地奇妙又命中注定,屬於我們的暑假......開始了
Thumbnail
看更多
你可能也想看
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Decoder
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Decoder
Thumbnail
這篇文章討論了自然語言處理技術的發展歷程,從語言模型的引入到深度學習的應用。作者觀察到現今GPT在產出中文國學內容時的深度不足,並提出了自然語言處理領域的倫理使用和版權問題,以及對大眾的影響。最後,作者探討了個人在自然語言領域的發展可能性。
Thumbnail
這篇文章討論了自然語言處理技術的發展歷程,從語言模型的引入到深度學習的應用。作者觀察到現今GPT在產出中文國學內容時的深度不足,並提出了自然語言處理領域的倫理使用和版權問題,以及對大眾的影響。最後,作者探討了個人在自然語言領域的發展可能性。
Thumbnail
透過適當的語言和文字表達,人們可以溝通訊息和態度。轉折詞的運用和標點符號的使用會影響溝通的準確性和情緒表達。
Thumbnail
透過適當的語言和文字表達,人們可以溝通訊息和態度。轉折詞的運用和標點符號的使用會影響溝通的準確性和情緒表達。
Thumbnail
我捨棄了編號系統,解放三倍大腦思考能量
Thumbnail
我捨棄了編號系統,解放三倍大腦思考能量
Thumbnail
電腦只做一件事情: 運算。 我們所看到的任何酷酷的應用: 不論是網頁動畫、遊戲特效、甚至是 AI 說的話,全部都 是由電腦的運算結果組合而成的。 首先我們來梳理一下各個名詞之間的關聯: 1. 運算分成兩個部分: 運算子 (運算的名稱,如: 加法) 和運算元 (運算的對象,如: 8)。運算就是對資
Thumbnail
電腦只做一件事情: 運算。 我們所看到的任何酷酷的應用: 不論是網頁動畫、遊戲特效、甚至是 AI 說的話,全部都 是由電腦的運算結果組合而成的。 首先我們來梳理一下各個名詞之間的關聯: 1. 運算分成兩個部分: 運算子 (運算的名稱,如: 加法) 和運算元 (運算的對象,如: 8)。運算就是對資
Thumbnail
語言模型與文字表示以不同的方式來分析自然語言的詞語分佈及語意關係。本文章簡要介紹了語言模型、Word2vec、FastText、GloVe和Transformer等技術,並提供了實際的應用參考點,幫助讀者深入理解自然語言處理的技術。
Thumbnail
語言模型與文字表示以不同的方式來分析自然語言的詞語分佈及語意關係。本文章簡要介紹了語言模型、Word2vec、FastText、GloVe和Transformer等技術,並提供了實際的應用參考點,幫助讀者深入理解自然語言處理的技術。
Thumbnail
這個系列的文章希望讓大家能夠學習一些語言學的概念,並且利用它們更有效率地學習各種語言。在文法篇的部分,希望大家瞭解有關語言使用的規則,讓大家能夠更輕鬆地去學習一個語言。前面已經介紹語言的基本語序、修飾語序,瞭解每個語言都又不同的排列規則後,我們就可以開始學習一個語言要如何表達一個完整句子。
Thumbnail
這個系列的文章希望讓大家能夠學習一些語言學的概念,並且利用它們更有效率地學習各種語言。在文法篇的部分,希望大家瞭解有關語言使用的規則,讓大家能夠更輕鬆地去學習一個語言。前面已經介紹語言的基本語序、修飾語序,瞭解每個語言都又不同的排列規則後,我們就可以開始學習一個語言要如何表達一個完整句子。
Thumbnail
想看懂文言文,就得先看懂文言文的句子。想看懂文言文的句子,就得先看懂句子裡的詞。 「但我就是看不懂那些詞啊!」 放心!這回將告訴你如何用「猜詞義」讀懂文言文的句子!
Thumbnail
想看懂文言文,就得先看懂文言文的句子。想看懂文言文的句子,就得先看懂句子裡的詞。 「但我就是看不懂那些詞啊!」 放心!這回將告訴你如何用「猜詞義」讀懂文言文的句子!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News