一、分詞
1、分詞介紹
-
概念
分詞就是將連續的字序列按照一定的規范重新組合成詞序列的過程。在英文的行文中,單詞之間是以空格作為自然分界符的,而中文只是字、句和段能通過明顯的分界符來簡單劃界,唯獨詞沒有一個形式上的分界符。分詞過程就是找到這樣分界符的過程。例如:
Python傳智教育是一家上市公司,旗下有黑馬程序員品牌。我是在黑馬這里學習人工智能 ['傳智', '教育', '是', '一家', '上市公司', ',', '旗下', '有', '黑馬', '程序員', '品牌', '。', '我', '是', '在', '黑馬', '這里', '學習', '人工智能']
-
作用
- 預處理:分詞是文本處理的第一步,能夠將文本分解成有意義的單元,為后續的分析提供基礎。
- 理解結構:分詞有助于理解句子的基本構成和含義,尤其是在做文本分類、情感分析等任務時,分詞是不可缺少的一步。
-
常用的中文分詞工具包括Jieba、THULAC、HanLP等。
2、Jieba分詞工具
Jieba(”結巴”)是一個開源的Python中文分詞組件,它支持精確模式、全模式和搜索引擎模式三種分詞模式。
Jieba的主要特點:
- 支持多種分詞模式:精確模式、全模式和搜索引擎模式,滿足不同場景的需求。
- 支持自定義詞典:用戶可以添加自定義的詞語,提高分詞準確率。
- 支持詞性標注:可以為每個詞語標注詞性,例如名詞、動詞等。
- 支持關鍵詞提取:可以提取文本中的關鍵詞。
- 支持并行分詞:可以利用多核處理器加速分詞。
- 簡單易用:API 簡單明了,易于上手。
- 開源免費:任何人都可以免費使用。
Jieba的安裝:
Bash
pip install jieba -i https://pypi.mirrors.ustc.edu.cn/simple/
Jieba的基本使用:
-
精確模式分詞:試圖將句子最精確地切分開,適合文本分析。
Pythonimport jieba content = "傳智教育是一家上市公司,旗下有黑馬程序員品牌。我是在黑馬這里學習人工智能" # 精確模型:試圖將句子最精確地切開,適合文本分析。也屬于默認模式 jieba.cut(sentence=content, cut_all=False) # cut_all默認為False # 將返回一個生成器對象 <generator object Tokenizer.cut at 0x7f8d9053e650> # 若需直接返回列表內容, 使用jieba.lcut即可 jieba.lcut(sentence=content, cut_all=False) ['傳智', '教育', '是', '一家', '上市公司', ',', '旗下', '有', '黑馬', '程序員', '品牌', '。', '我', '是', '在', '黑馬', '這里', '學習', '人工智能']
-
全模式分詞: