婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Python自然語言處理之切分算法詳解

Python自然語言處理之切分算法詳解

熱門標(biāo)簽:地圖標(biāo)注微信發(fā)送位置不顯示 315電話機(jī)器人廣告 地圖標(biāo)注的意義點(diǎn) 蓋州市地圖標(biāo)注 房產(chǎn)電銷外呼系統(tǒng) 南京銷售外呼系統(tǒng)軟件 地圖制圖標(biāo)注位置改變是移位嗎 浙江電銷卡外呼系統(tǒng)好用嗎 上海機(jī)器人外呼系統(tǒng)哪家好

一、前言

我們需要分析某句話,就必須檢測該條語句中的詞語。

一般來說,一句話肯定包含多個詞語,它們互相重疊,具體輸出哪一個由自然語言的切分算法決定。常用的切分算法有完全切分、正向最長匹配、逆向最長匹配以及雙向最長匹配。

本篇博文將一一介紹這些常用的切分算法。

二、完全切分

完全切分是指,找出一段文本中的所有單詞。

不考慮效率的話,完全切分算法其實(shí)非常簡單。只要遍歷文本中的連續(xù)序列,查詢該序列是否在詞典中即可。上一篇我們獲取了詞典的所有詞語dic,這里我們直接用代碼遍歷某段文本,完全切分出所有的詞語。代碼如下:

from pyhanlp import *


def load_dictionary():
    IOUtil = JClass('com.hankcs.hanlp.corpus.io.IOUtil')
    path = HanLP.Config.CoreDictionaryPath.replace('.txt', '.mini.txt')
    dic = IOUtil.loadDictionary([path])
    return set(dic.keySet())


def fully_segment(text, dic):
    list = []
    for i in range(len(text)):
        for j in range(i + 1, len(text) + 1):
            temp = text[i:j]
            if temp in dic:
                list.append(temp)
    return list


if __name__ == "__main__":
    dic = load_dictionary()
    print(fully_segment("在絕對實(shí)力面前,一切的說辭都是枉然", dic))

可以看到,完全切分算法輸出了文本中所有的單字與詞匯。
這里的算法原理是:開始遍歷單個字,以該字為首,將后面每個字依次組合到單個字中,分析出這些組合字句是否在詞典中。第二次,從第二個字開始,組合后面的字,以此類推。不懂的看下圖就明白了。

三、正向最長匹配

雖然說完全切分能獲取到所有出現(xiàn)在字典中的單詞,單字,但是我們獲取語句中單字一般來說沒有任何意義,我們更希望獲取的是中文分詞,那種具有意義的詞語序列。

比如,上面我們希望“絕對實(shí)力”成為一整個詞,而不是“絕對”+“實(shí)力”之類的碎片。為了達(dá)到這個目的,我們需要完善一下我們的算法??紤]到越長的單詞表達(dá)的意義更加的豐富,于是我們定義單詞越長優(yōu)先級越高。

具體來說,就是在某個下標(biāo)為起點(diǎn)遞增查詞的過程中,優(yōu)先輸出更長的單詞,這種規(guī)則被稱為最長匹配算法。該下標(biāo)的掃描順序如果從前往后,則稱為正向最長匹配,反之則為逆向最長匹配。

下面,我們來實(shí)現(xiàn)正向最長匹配,代碼如下:

def forward_segment(text, dic):
    list = []
    i = 0
    while i  len(text):
        long_word = text[i]
        for j in range(i + 1, len(text) + 1):
            word = text[i:j]
            if word in dic:
                if len(word) > len(long_word):
                    long_word = word
        list.append(long_word)
        i += len(long_word)
    return list

算法的原理:首先通過while循環(huán)判斷i是否超出了字符串的大小,如果沒有,獲取當(dāng)前第一個字符串為第一個最長匹配結(jié)果,接著遍歷第一個字符串的所有可能組合結(jié)尾,如果在字典中,判斷當(dāng)前詞語是否大于前面的最長匹配結(jié)果,如果是替換掉最長。遍歷完成之后,將最長的結(jié)果添加到列表中,然后再獲取第二字符,遍歷所有結(jié)尾組合,獲取最長匹配。以此類推。

四、逆向最長匹配

既然了解了正向如何匹配,那么逆向算法應(yīng)該也很好寫。代碼如下:

def backward_segment(text, dic):
    list = []
    i = len(text) - 1
    while i >= 0:
        long_word = text[i]
        for j in range(0, i):
            word = text[j:i + 1]
            if word in dic:
                if len(word) > len(long_word):
                    long_word = word
                    break
        list.append(long_word)
        i -= len(long_word)
    return list

算法的原理:就是上面的正向反過來,但是這里并不是倒推文字,文字還是按語句的順序,但是長度是從最長到最短,也就是遇到第一個就可以返回了添加了。比正向最長匹配算法節(jié)約時間。

五、雙向最長匹配

雖然逆向比正向節(jié)約時間,但本身有一個很大的漏洞。假如我現(xiàn)在的句子中有一段“項(xiàng)目的”字符串,那么正向會出現(xiàn)“項(xiàng)目”,“的”兩個詞匯,而逆向會出現(xiàn):“項(xiàng)”,“目的”兩個詞匯。

為此,我們的算法工程師提出了新的匹配規(guī)則,雙向最長匹配。這是一種融合兩種匹配方法的復(fù)雜規(guī)則,流程如下:

同時執(zhí)行正向和逆向最長匹配,若兩者的詞數(shù)不同,則返回詞數(shù)更少的一個否則,返回兩者中單字更少的那一個。當(dāng)單字也相同時,優(yōu)先返回逆向最長匹配結(jié)果

具體代碼如下:

#統(tǒng)計單字個數(shù)
def count_single_char(list):
    return sum(1 for word in list if len(word) == 1)

#雙向匹配算法
def bidirectional_segment():
    f = forward_segment("在絕對實(shí)力面前,一切的說辭都是枉然", dic)
    b = backward_segment("在絕對實(shí)力面前,一切的說辭都是枉然", dic)
    if len(f)  len(b):
        return f
    elif len(f) > len(b):
        return b
    else:
        if count_single_char(f)count_single_char(b):
            return f
        else:
            return b

到此這篇關(guān)于Python自然語言處理之切分算法詳解的文章就介紹到這了,更多相關(guān)python切分算法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python 算法題——快樂數(shù)的多種解法
  • python使用ProjectQ生成量子算法指令集
  • Python機(jī)器學(xué)習(xí)算法之決策樹算法的實(shí)現(xiàn)與優(yōu)缺點(diǎn)
  • Python集成學(xué)習(xí)之Blending算法詳解
  • python3實(shí)現(xiàn)Dijkstra算法最短路徑的實(shí)現(xiàn)
  • Python實(shí)現(xiàn)K-means聚類算法并可視化生成動圖步驟詳解
  • python入門之算法學(xué)習(xí)
  • Python實(shí)現(xiàn)機(jī)器學(xué)習(xí)算法的分類

標(biāo)簽:臨汾 日照 赤峰 雙鴨山 貴州 陽泉 金華 克拉瑪依

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python自然語言處理之切分算法詳解》,本文關(guān)鍵詞  Python,自然語言,處理,之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python自然語言處理之切分算法詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python自然語言處理之切分算法詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    天堂一区二区在线免费观看| 精品国产免费一区二区三区香蕉| 国产精品美女久久久久高潮| 91国产免费看| 国产精品一区二区黑丝| 日本午夜一区二区| 亚洲一级二级在线| 成人免费在线视频| 国产精品国产三级国产有无不卡 | 亚洲人午夜精品天堂一二香蕉| 日韩一区二区在线免费观看| 色婷婷av一区| 99re热这里只有精品免费视频| 国产在线精品不卡| 国产麻豆午夜三级精品| 国产精品99久久久久久久女警| 国产真实乱偷精品视频免| 久久精品国产久精国产| 免费在线观看精品| 久久精品噜噜噜成人88aⅴ| 日韩国产欧美视频| 免费成人美女在线观看.| 捆绑紧缚一区二区三区视频| 免费看欧美女人艹b| 久久精品国产亚洲aⅴ| 九九在线精品视频| 高清不卡在线观看| 91亚洲大成网污www| 欧美三级资源在线| 欧美一区二区啪啪| 国产丝袜美腿一区二区三区| 国产精品亲子伦对白| 亚洲另类春色国产| 亚洲成人福利片| 免费成人av资源网| 成人免费视频app| 欧洲激情一区二区| 日韩欧美一卡二卡| 中文字幕一区二区三区四区不卡 | 亚洲人成7777| 亚洲va欧美va人人爽午夜| 日韩成人一区二区三区在线观看| 麻豆精品一区二区三区| 国产成人av电影免费在线观看| 不卡一区中文字幕| 欧美高清视频一二三区| 亚洲精品在线免费播放| 日韩理论片网站| 喷水一区二区三区| 91在线观看美女| 91精品国产免费| 亚洲三级小视频| 精品综合免费视频观看| 色国产精品一区在线观看| 日韩视频一区二区三区在线播放 | 精品午夜久久福利影院 | 91色九色蝌蚪| 欧美大片一区二区| 亚洲黄色性网站| 免费观看30秒视频久久| 色综合一个色综合| 欧美日韩不卡在线| 欧美国产一区二区| 日韩精品91亚洲二区在线观看| 国产剧情av麻豆香蕉精品| 一本大道久久a久久精品综合| 91麻豆精品国产91久久久久久| 精品国产sm最大网站| 一个色妞综合视频在线观看| 国产91富婆露脸刺激对白| 91精品国产综合久久香蕉的特点| 日韩欧美www| 一区二区三区免费看视频| 毛片不卡一区二区| 色菇凉天天综合网| 久久精品欧美一区二区三区麻豆 | 看电视剧不卡顿的网站| 欧美色欧美亚洲另类二区| 中文字幕制服丝袜成人av| 国产原创一区二区| 日韩一区二区三免费高清| 亚洲123区在线观看| 97久久精品人人澡人人爽| 国产日韩精品一区二区三区| 国产一区二区91| 精品国产91亚洲一区二区三区婷婷| 欧美a级一区二区| 91精品啪在线观看国产60岁| 丝瓜av网站精品一区二区| 日本高清不卡aⅴ免费网站| 亚洲私人影院在线观看| aaa欧美大片| 亚洲天天做日日做天天谢日日欢 | 亚洲一区二区五区| 91麻豆免费视频| 一区二区高清在线| 色婷婷久久久亚洲一区二区三区| 中文字幕一区av| 91在线视频官网| 亚洲一二三区在线观看| 欧美日韩日本视频| 琪琪一区二区三区| wwwwww.欧美系列| 国产在线精品一区二区不卡了 | 亚洲一区av在线| 51精品久久久久久久蜜臀| 欧美a一区二区| 精品国产91乱码一区二区三区 | 日韩美女一区二区三区四区| 精品一区二区三区免费播放| 国产偷国产偷亚洲高清人白洁 | 亚洲欧美日韩一区二区| 91美女在线视频| 日韩在线一区二区三区| 欧美精品一区二区三区在线 | 亚洲国产精品综合小说图片区| 国产一区二区三区高清播放| 日韩午夜在线观看视频| 日韩二区三区四区| 日韩一区二区三区四区 | 欧美中文字幕一区| 天天亚洲美女在线视频| 精品国产1区2区3区| 成人性生交大片免费看在线播放 | 粉嫩蜜臀av国产精品网站| 中文天堂在线一区| 欧洲一区二区av| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美精品一区二区久久婷婷| 成人美女在线视频| 日韩精品免费专区| 国产精品美女www爽爽爽| 国产人久久人人人人爽| 不卡av在线网| 日韩成人免费在线| 国产精品久久久久国产精品日日| 欧美剧情电影在线观看完整版免费励志电影 | 韩国精品在线观看| 亚洲人123区| 日韩一区二区免费电影| 不卡av电影在线播放| 美女视频黄久久| 一区二区国产盗摄色噜噜| 久久婷婷综合激情| 欧美私人免费视频| av在线播放一区二区三区| 久久97超碰国产精品超碰| 一区二区三区精品视频在线| 久久久久亚洲综合| 欧美男男青年gay1069videost| 成人美女视频在线观看18| 视频一区视频二区中文| 一区二区三区欧美久久| 国产精品丝袜一区| 精品福利一二区| 国产丝袜美腿一区二区三区| 色屁屁一区二区| 国内成人免费视频| 午夜久久久久久电影| 中文字幕亚洲区| 精品少妇一区二区三区日产乱码 | 欧美日韩精品高清| heyzo一本久久综合| 国产精品亚洲а∨天堂免在线| 天堂在线一区二区| 午夜精品久久久久久| 亚洲国产精品一区二区久久 | 欧美国产精品一区二区三区| 国产情人综合久久777777| 欧美另类变人与禽xxxxx| 日本乱码高清不卡字幕| 懂色一区二区三区免费观看| 卡一卡二国产精品 | 久久色.com| 在线不卡a资源高清| 欧美视频一区在线观看| 91成人在线观看喷潮| 91啪在线观看| 色婷婷亚洲一区二区三区| 日本精品一区二区三区四区的功能| 99re热这里只有精品免费视频| av在线不卡电影| 日本精品一区二区三区四区的功能| 91麻豆高清视频| 欧美四级电影网| 欧美精品在线一区二区| 欧美一区二区不卡视频| 欧美tickling挠脚心丨vk| wwwwxxxxx欧美| 国产精品久久久久久亚洲毛片| 国产精品福利一区二区三区| 亚洲欧美经典视频| 亚洲电影一级黄| 九色porny丨国产精品| 成人白浆超碰人人人人| 欧美性猛交xxxx黑人交| 日韩视频一区二区在线观看| 国产网站一区二区| 日本韩国欧美一区| 国产一区二区三区免费观看|