常見的三種分詞工具
這節課主要講了三種常見的分詞工具:
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資料庫中的表能夠用不一樣的方式來儲存。咱們能夠根據資料的特色來選擇不一樣...