精品一区二区三区在线成人,欧美精产国品一二三区,Ji大巴进入女人66h,亚洲春色在线视频

自然語言處理庫—Snownlp

人工智能 自然語言處理
SnowNLP是一個(gè)python寫的類庫,可以方便的處理中文文本內(nèi)容,是受到了TextBlob的啟發(fā)而寫的。

[[399217]]

本文轉(zhuǎn)載自微信公眾號「志斌的python筆記」,作者志斌。轉(zhuǎn)載本文請聯(lián)系志斌的python筆記公眾號。

大家好,我是志斌~

上次在跟大家分享用Python在本地進(jìn)行文本情感分析的時(shí)候,給大家介紹了一個(gè)Snownlp庫,當(dāng)時(shí)只跟大家介紹了一下它的情感分析功能,這次來跟大家詳細(xì)的介紹一下它其它的強(qiáng)大的功能。

01定義和安裝

我們先來看看官方對它的介紹:

SnowNLP是一個(gè)python寫的類庫,可以方便的處理中文文本內(nèi)容,是受到了TextBlob的啟發(fā)而寫的,由于現(xiàn)在大部分的自然語言處理庫基本都是針對英文的,于是寫了一個(gè)方便處理中文的類庫,并且和TextBlob不同的是,這里沒有用NLTK,所有的算法都是自己實(shí)現(xiàn)的,并且自帶了一些訓(xùn)練好的字典。注意本程序都是處理的unicode編碼,所以使用時(shí)請自行decode成unicode。

它的安裝命令如下:

  1. pip install snownlp 

02功能介紹

它主要有九個(gè)功能,我們分別來給大家介紹一下這九個(gè)功能都是干什么的。

01分詞功能

SnowNLP的分詞功能,可以將文本內(nèi)容對照著字典劃分一個(gè)個(gè)詞語字符串,如果不是詞語的就單獨(dú)成為一個(gè)字符串。代碼如下:

  1. a = SnowNLP('我非常的熱愛學(xué)習(xí)!'
  2. print(a.words) 

02詞性標(biāo)注

SnowNLP的詞性標(biāo)注功能,可以對各個(gè)詞語進(jìn)行標(biāo)注,讓我們能夠知道這個(gè)詞語屬于名詞還是動(dòng)詞,或者其它詞性。代碼如下:

  1. a = SnowNLP('我非常的熱愛學(xué)習(xí)!'
  2. for i in a.tags: 
  3.    print(i) 

03情感分析

在之前的文章我們已經(jīng)詳細(xì)的介紹過了SnowNLP的情感分析功能,這里就不在過多介紹,用興趣的小伙伴,可以看看這篇文章兩種文本情感分析方式,你更pick哪一種?。

04拼音標(biāo)注

SnowNLP的拼音標(biāo)準(zhǔn)功能,可以給文本中所有文字進(jìn)行拼音標(biāo)注,這樣以后再也不擔(dān)心遇到生僻字不會讀啦~~ 代碼如下:

  1. a = SnowNLP('我非常的熱愛學(xué)習(xí)!'
  2. print(a.pinyin) 

05提取關(guān)鍵字和摘要

SnowNLP可以將文本中出現(xiàn)的關(guān)鍵字和文本摘要給提取出來,從而讓我們可以更快速的了解文本講述的內(nèi)容。代碼如下:

  1. text = '''計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)就是利用通信設(shè)備和線路將地理位置不同、功能獨(dú)立的多個(gè)計(jì)算機(jī)系統(tǒng)互聯(lián)起來,以功能完善的網(wǎng)絡(luò)軟件實(shí)現(xiàn)網(wǎng)絡(luò)中資源共享和信息傳遞的系統(tǒng)。 
  2. 通過計(jì)算機(jī)的互聯(lián),實(shí)現(xiàn)計(jì)算機(jī)之間的通信,從而實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)之間的信息、軟件和設(shè)備資源的共享以及協(xié)同工作等功能, 
  3. 其本質(zhì)特征在于提供計(jì)算機(jī)之間的各類資源的高度共享,實(shí)現(xiàn)便捷地交流信息和交換思想。''
  4. b=SnowNLP(text) 
  5. key_word = b.keywords(5)   #()中的數(shù)字,代表提取關(guān)鍵字?jǐn)?shù)量 
  6. abs_word = b.summary(1)    #()中的數(shù)字,代表提取摘要數(shù)量 
  7. print(key_word) 
  8. print(abs_word) 

06計(jì)算詞頻和逆文檔頻率

關(guān)鍵字的先后順序是由TF-IDF值的大小來決定的,其中TF就是詞頻、IDF就是逆文檔頻率、詞頻很好理解就是一個(gè)詞在文本中出現(xiàn)的頻率,逆文檔頻率是在詞頻的基礎(chǔ)上,給每個(gè)詞分配一個(gè)“重要性”的權(quán)重,越常見的詞分配的權(quán)重越低,越稀少的詞,權(quán)重越高,這個(gè)權(quán)重就成為逆文檔頻率,它的大小和詞語的常見性成反比。代碼如下:

  1. c = SnowNLP([['計(jì)算機(jī)'], ['資源'], ['系統(tǒng)'], ['信息'], ['功能']]) 
  2. print(c.tf) 
  3. print(c.idf) 

07繁體轉(zhuǎn)簡體

個(gè)人感覺這個(gè)技能較為冷門,現(xiàn)在基本上都是簡體字了。(僅為個(gè)人意見,不喜勿噴。)代碼如下:

  1. d = SnowNLP('山不在高,有仙則靈.水不在深,有龍則靈'
  2. print(d.han) 

08斷句功能

SnowNLP可以按照","和“。”對文本進(jìn)行斷句處理。代碼如下:

  1. b=SnowNLP(text) 
  2. print(b.sentences) 

09文本相似度

  1. e = SnowNLP([['計(jì)算機(jī)','資源'], 
  2.             ['系統(tǒng)'], 
  3.             ['信息','功能'
  4.             ]) 
  5. print(e.sim(['系統(tǒng)'])) 
  6. print(e.sim(['計(jì)算機(jī)'])) 
  7. print(e.sim(['功能'])) 

 

責(zé)任編輯:武曉燕 來源: 志斌的python筆記
相關(guān)推薦

2024-02-05 14:18:07

自然語言處理

2020-04-24 10:53:08

自然語言處理NLP是人工智能

2021-05-17 09:00:00

自然語言人工智能技術(shù)

2017-10-19 17:05:58

深度學(xué)習(xí)自然語言

2024-04-24 11:38:46

語言模型NLP人工智能

2021-05-18 07:15:37

Python

2021-06-28 10:10:42

人工智能AI自然語言

2021-09-03 12:01:07

模型自然語言

2017-04-17 15:03:16

Python自然語言處理

2020-02-25 23:28:50

工具代碼開發(fā)

2020-02-25 12:00:53

自然語言開源工具

2021-11-12 15:43:10

Python自然語言數(shù)據(jù)

2023-05-30 14:39:34

ChatGPT-4NLP

2017-05-05 15:34:49

自然語言處理

2023-08-04 10:18:15

2018-02-27 09:32:13

神經(jīng)網(wǎng)絡(luò)自然語言初探

2022-04-22 09:00:00

自然語言處理HMMCRF

2021-03-03 09:00:00

自然語言數(shù)據(jù)科學(xué)人工智能

2020-11-12 18:57:14

摘要PythonNLP

2020-09-23 10:45:45

人工智能自然語言NLP
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 延安市| 兴山县| 克东县| 天气| 鹤壁市| 定边县| 新巴尔虎右旗| 乌兰浩特市| 宣恩县| 称多县| 自治县| 武安市| 江都市| 睢宁县| 交城县| 金昌市| 黔西县| 保德县| 麻江县| 南岸区| 葵青区| 德州市| 赫章县| 盘锦市| 惠州市| 阿城市| 江永县| 凌源市| 界首市| 信丰县| 濮阳县| 金堂县| 江门市| 萨嘎县| 浦县| 霞浦县| 清苑县| 云林县| 黄陵县| 兴业县| 武川县|