SnowNLP 是一個專為中文文本處理設計的 Python 第三方庫,提供分詞、情感分析、關鍵詞提取、文本分類、拼音轉換、繁簡轉換等功能。其設計靈感來源于 TextBlob,但針對中文進行了深度適配,是中文 NLP 入門與快速構建原型的常用工具。
安裝 :
pip install snownlp常見應用場景:
(1)中文情感分析
識別文本的情緒傾向(正向/負向)。
(2)中文分詞
將句子拆分為詞語列表。
(3)關鍵詞提取
根據 TF-IDF 自動抽取關鍵詞。
(4)文本摘要
生成文章簡短摘要。
(5)拼音轉換
將中文文本轉成普通話拼音。
(6)繁簡轉換
支持簡體 ? 繁體互轉。
(7)文本分類前處理
用于搜索引擎、推薦系統等中文處理任務。
◆ ◆ ◆
核心概念
1、SnowNLP 對象
核心類是 SnowNLP。只需傳入中文文本,它會自動提供分詞、情感、關鍵詞等分析能力。
s = SnowNLP("我覺得這部電影非常精彩!")SnowNLP 實例內部會:
? 自動進行中文編碼處理
? 使用內置模型完成情感預測
? 提供各種自然語言處理方法(如 sentiments、keywords 等)
2、中文分詞
SnowNLP 自帶分詞器,不依賴外部數據文件,可直接對句子進行詞語切分。
3、情感分析(Sentiment Analysis)
SnowNLP 內置正/負向情緒模型,可以對句子輸出一個 0~1 之間的情感傾向值。
? 接近 1 → 正面情緒
? 接近 0 → 負面情緒
4、文本摘要(Summarization)
對輸入長文本進行句子評分,自動生成摘要。
5、拼音與繁簡轉換
基于內置字符映射,實現拼音轉換(帶聲調)以及繁體漢字 ? 簡體漢字互轉。
◆ ◆ ◆
應用舉例
例 1:中文情感分析
print(s.sentiments) # 輸出接近 1,正向情緒示例輸出:
0.9671997267761596 例 2:中文分詞
print(s.words)示例輸出:
['今天', '的', '天氣', '真', '不錯']例 3:關鍵詞提取
print(s.keywords(3)) # 提取 3 個關鍵詞示例輸出:
['改變', '世界', '智能']例 4:文本摘要生成
print(s.summary(2)) # 提取 2 句摘要示例輸出:
['人工智能技術在近年來取得了突破性進展', '各種機器學習模型、']例 5:繁簡轉換
print(s.han) # 簡體輸出示例輸出:
繁體中文輸入測試例 6:中文轉拼音
print("原始拼音輸出:", s.pinyin)示例輸出:
原始拼音輸出: ['chang', 'sha', 'shi', 'yi', 'ge', 'mei', 'li', 'de', 'cheng', 'shi']◆ ◆ ◆
常用類方法速覽
SnowNLP(text)
創建 SnowNLP 對象。
參數:
text:字符串或中文文本。
返回:SnowNLP 實例對象。
SnowNLP.words
中文分詞結果。
返回:list(詞語列表)。
SnowNLP.sentiments
情感傾向分數(0~1)。
返回:float。
SnowNLP.keywords(n)
提取關鍵詞。
參數:
n:提取數量。
返回:list(關鍵詞列表)
SnowNLP.summary(n)
生成文本摘要。
參數:
n:要輸出的句子數量。
返回:list(摘要句子列表)。
SnowNLP.pinyin
文本轉拼音。
返回:list(拼音字符串列表)。
SnowNLP.han
繁體轉簡體(或逆向)。
返回:str(轉換后的字符串)。
小結
SnowNLP 是一個專注于中文處理的輕量級 NLP 工具庫,提供分詞、情感分析、關鍵詞提取、文本摘要、拼音轉換等多種實用能力。它無需額外數據文件,使用簡單、學習成本低。
對于需要高性能或大規模 NLP 的任務,SnowNLP 也可以作為探索性工具快速驗證想法,再遷移到更強大的框架如 jieba、HanLP、spaCy、transformers。
![]()
“點贊有美意,贊賞是鼓勵”
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.