自然语言处理工具pyhanlp分词与词性标注
Pyhanlp分詞與詞性標(biāo)注的相關(guān)內(nèi)容記得此前是有分享過(guò)的。可能時(shí)間太久記不太清楚了。以下文章是分享自“baiziyu”所寫(xiě)(小部分內(nèi)容有修改),供大家學(xué)習(xí)參考之用。
簡(jiǎn)介
pyhanlp是HanLP的Python接口。因此后續(xù)所有關(guān)于pyhanlp的文章中也會(huì)寫(xiě)成HanLP。HanLP是完全用Java自實(shí)現(xiàn)的自然語(yǔ)言處理工具包。特點(diǎn)是完全用Java實(shí)現(xiàn)不引入第三方工具包。完全開(kāi)源。中文的開(kāi)源工具能做到這么完整的大概只有HanLP。包括了詞法分析、句法分析、分類(lèi)、聚類(lèi)、關(guān)鍵詞抽取等常見(jiàn)NLP應(yīng)用任務(wù)。并且github上問(wèn)題回答快,作者很是認(rèn)真的解決大家提出的問(wèn)題。雖然用Java實(shí)現(xiàn),HanLP也提供了Python接口。
?
簡(jiǎn)單的安裝過(guò)程,請(qǐng)先確保安裝了anaconda3
# 安裝命令
$ pip install pyhanlp
# 更新到最新代碼包和數(shù)據(jù)包
$ hanlp update
分詞與詞性標(biāo)注
?
示例
?
In [1]: from pyhanlp import *
In [5]: print(HanLP.segment("你好,歡迎使用HanLP漢語(yǔ)處理包!接下來(lái)請(qǐng)從其他Demo中
???...: 體驗(yàn)HanLP豐富的功能~"))
[你好/vl, ,/w, 歡迎/v, 使用/v, HanLP/nx, 漢語(yǔ)/gi, 處理/vn, 包/v, !/w, 接下來(lái)/vl, 請(qǐng)/v, 從/p, 其他/rzv, Demo/nx, 中/f, 體驗(yàn)/v, HanLP/nx, 豐富/a, 的/ude1, 功能/n, ~/nx]
In [11]: for word in word_li:
????...: ????print(word.word, word.nature)
????...: ????
你好 vl
, w
歡迎 v
使用 v
HanLP nx
漢語(yǔ) gi
處理 vn
包 v
! w
接下來(lái) vl
請(qǐng) v
從 p
其他 rzv
Demo nx
中 f
體驗(yàn) v
HanLP nx
豐富 a
的 ude1
功能 n
~ nx
關(guān)于HanLP.segment的說(shuō)明。內(nèi)存要求:120MB以上,標(biāo)準(zhǔn)數(shù)據(jù)包(35萬(wàn)核心詞庫(kù)+默認(rèn)用戶(hù)詞典)。HanLP對(duì)詞典的數(shù)據(jù)結(jié)構(gòu)進(jìn)行了長(zhǎng)期的優(yōu)化,哪怕HanLP的詞典上百兆也無(wú)需擔(dān)心。HanLP.segment是一個(gè)工廠函數(shù),它是對(duì)StandardTokenizer的封裝。當(dāng)前StandardTokenizer使用的是viterbi最短路分詞。viterbi分詞器是目前效率和效果的最佳平衡。該函數(shù)的詳細(xì)代碼在github.com/hankcs/HanLP/blob/master/src/main/java/com/hankcs/hanlp/seg/Viterbi/ViterbiSegment.java。分詞大致功能有:首先生成詞網(wǎng)和詞圖即可以得到粗分詞網(wǎng),經(jīng)維特比算法找最短路徑和人工干預(yù)分詞后即可得到粗分結(jié)果。之后根據(jù)配置可以進(jìn)行數(shù)字識(shí)別,人名識(shí)別,譯名識(shí)別,地名識(shí)別,機(jī)構(gòu)名識(shí)別,如果是索引分詞則進(jìn)行全切分分詞,詞性標(biāo)注。
?
HanLP的com.hankcs.hanlp.tokenizer包中封裝了很多開(kāi)箱即用的分詞器,但是不是所有的分詞器都能在Python接口中直接使用。這些分詞器有BasicTokenizer這是NGram分詞器,不識(shí)別命名實(shí)體,不能使用用戶(hù)詞典。SpeedTokenizer這是最長(zhǎng)匹配分詞器。NotionalTokenizer這是實(shí)詞分詞器。StandardTokenizer當(dāng)前效率和效果最佳的分詞器。NLPTokenizer更精確的中文分詞器。IndexTokenizer適用于信息檢索的分詞器。
?
后續(xù)將要介紹的內(nèi)容是文本的向量表示,這里邊有一部分內(nèi)容是跟特征抽取重合的。好了,今天的內(nèi)容就到這里。
轉(zhuǎn)載于:https://blog.51cto.com/13636660/2396553
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的自然语言处理工具pyhanlp分词与词性标注的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
 
                            
                        - 上一篇: 2019山东省赛B - Flipping
- 下一篇: 微信小程序自定义组件,提示组件
