常見的三種分詞工具

2021-09-22 23:04:45 字數 2308 閱讀 6624

常見的三種分詞工具

這節課主要講了三種常見的分詞工具:

jieba分詞

ltp分詞

ir分詞

一、 分詞的概念:

中文分詞(chinese word segmentation) 指的是將乙個漢字序列切分成乙個乙個單獨的詞。分詞就是將連續的字序列按照一定的規範重新組合成詞序列的過程。

二、 中文分詞工具

jieba分詞:比較常用,用法比較簡單,主要有三種分詞模式

python安裝jieba:pip install jieba/在settings裡直接搜尋jieba安裝即可

jieba的使用:import jieba

jieba分詞三種模式:

a) 全模式:把句子中所有的可以成詞的詞語都掃瞄出來

**實現:sentence_=」 一切都像剛睡醒的樣子,欣欣然張開了眼。山朗潤起來了,水漲起來了,太陽的臉紅起來了。」

cut_all = jieba.cut(sentence_,cut_all=true)

b) 精確模式:試圖將句子最精確地切開(jieba預設模式)

**實現:cut_all = jieba.cut(sentence_)

c) 搜尋模式:在精確模式的基礎上,對長詞再次切分,提高召回率,適合用於搜尋引擎分詞

**實現:cut_search = jieba.cut_for_search(sentence_)

測試結果:

通過比較可以看出兩種方法得到的結果並不一樣。

2. ltp分詞:

1) 首先是一些包的安裝

import pyltp

import os

from pyltp import segmentor, sentencesplitter, sementicrolelabeller

from pyltp import postagger

from pyltp import namedentityrecognizer

import re

2) ltp除了分詞的功能外還可以實現分句的功能,並且它的詞性標註功能比較細緻,可以識別出命名實體(人名、地名、機構名等)

具體**以及結果如下:

分句:

分詞:

詞性標註:

這裡的輸出是先將分詞結果輸出,再輸出詞性標註結果,一一對應。

另外,利用ltp還可以做實體關係抽取:

而這些s-ns之類的關係詞可以通過ltp的官網進行查詢。

接下來就是提取出文章/句子的關係,也就是句法分析,利用ltp提取的結果是以樹的方式輸出。

**以及執行結果:

ir分詞:首先import

import pynlpir

pynlpir.open()

s = 「最早的幾何學興起於西元前7世紀」

ir分詞主要用到三個標籤:

pynlpir.segment(s, pos_tagging=true, pos_names=『parent』, pos_english=true)

s: 句子

pos_tagging:是否進行詞性標註

pos_names:顯示詞性的父類(parent)還是子類(child) 或者全部(all)

pos_english:詞性顯示英語還是中文

預設屬性是進行詞性標註、顯示詞性的父類、英文詞性

**及執行結果對比:

jieba分詞三種模式 ,詞性標註 分詞

usr bin env python coding utf 8 author jia shilin jieba三種分詞模式 注意jieba分詞後得到的是乙個list import jieba import jieba.posseg as pseg 1.print n jieba分詞全模式 seg l...

mysql三種引擎 MySQL常見的三種儲存引擎

簡單來說,儲存引擎就是指表的型別以及表在計算機上的儲存方式。儲存引擎的概念是mysql的特點,oracle中沒有專門的儲存引擎的概念,oracle有oltp和olap模式的區分。不同的儲存引擎決定了mysql資料庫中的表可以用不同的方式來儲存。我們可以根據資料的特點來選擇不同的儲存引擎。在mysql...

mysql三種引擎 MySQL常見的三種儲存引擎

原文連線 簡單來講,儲存引擎就是指表的型別以及表在計算機上的儲存方式。資料庫 儲存引擎的概念是mysql的特色,oracle中沒有專門的儲存引擎的概念,oracle有oltp和olap模式的區分。不一樣的儲存引擎決定了mysql資料庫中的表能夠用不一樣的方式來儲存。咱們能夠根據資料的特色來選擇不一樣...