最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

用python實(shí)現(xiàn)前向分詞最大匹配算法的示例代碼

 更新時(shí)間:2020年08月06日 11:16:38   作者:ywsydwsbn  
這篇文章主要介紹了用python實(shí)現(xiàn)前向分詞最大匹配算法的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

理論介紹

分詞是自然語(yǔ)言處理的一個(gè)基本工作,中文分詞和英文不同,字詞之間沒(méi)有空格。中文分詞是文本挖掘的基礎(chǔ),對(duì)于輸入的一段中文,成功的進(jìn)行中文分詞,可以達(dá)到電腦自動(dòng)識(shí)別語(yǔ)句含義的效果。中文分詞技術(shù)屬于自然語(yǔ)言處理技術(shù)范疇,對(duì)于一句話,人可以通過(guò)自己的知識(shí)來(lái)明白哪些是詞,哪些不是詞,但如何讓計(jì)算機(jī)也能理解?其處理過(guò)程就是分詞算法。

可以將中文分詞方法簡(jiǎn)單歸納為:

1.基于詞表的分詞方法
2.基于統(tǒng)計(jì)的分詞方法
3.基于序列標(biāo)記的分詞方法

其中,基于詞表的分詞方法最為簡(jiǎn)單,根據(jù)起始匹配位置不同可以分為:

1.前向最大匹配算法
2.后向最大匹配算法
3.雙向最大匹配算法

三種方法思想都很簡(jiǎn)單,今天就用python實(shí)現(xiàn)前向最大匹配算法。

word分詞是一個(gè)Java實(shí)現(xiàn)的分布式的中文分詞組件,提供了多種基于詞典的分詞算法,并利用ngram模型來(lái)消除歧義。能準(zhǔn)確識(shí)別英文、數(shù)字,以及日期、時(shí)間等數(shù)量詞,能識(shí)別人名、地名、組織機(jī)構(gòu)名等未登錄詞。能通過(guò)自定義配置文件來(lái)改變組件行為,能自定義用戶詞庫(kù)、自動(dòng)檢測(cè)詞庫(kù)變化、支持大規(guī)模分布式環(huán)境,能靈活指定多種分詞算法,能使用refine功能靈活控制分詞結(jié)果,還能使用詞性標(biāo)注、同義標(biāo)注、反義標(biāo)注、拼音標(biāo)注等功能。同時(shí)還無(wú)縫和Lucene、Solr、ElasticSearch、Luke集成。

前向最大匹配算法

前向最大匹配算法,顧名思義,就是從待分詞句子的左邊向右邊搜索,尋找詞的最大匹配。我們需要規(guī)定一個(gè)詞的最大長(zhǎng)度,每次掃描的時(shí)候?qū)ふ耶?dāng)前開(kāi)始的這個(gè)長(zhǎng)度的詞來(lái)和字典中的詞匹配,如果沒(méi)有找到,就縮短長(zhǎng)度繼續(xù)尋找,直到找到字典中的詞或者成為單字。

具體代碼實(shí)現(xiàn)

獲取分詞函數(shù):getSeg(text)

def getSeg(text):
  # 句子為空
  if not text:
    return ''

  # 句子成為一個(gè)詞
  if len(text) == 1:
    return text

  # 此處寫(xiě)了一個(gè)遞歸方法
  if text in word_dict:
    return text
  else:
    small = len(text) - 1
    text = text[0:small]
    return getSeg(text)

主函數(shù):main()

def main():
  global test_str, word_dict
  test_str = test_str.strip()
  # 正向最大匹配分詞測(cè)試 最大長(zhǎng)度5
  max_len = max(len(word) for word in word_dict)
  result_str = [] # 保存分詞結(jié)果
  result_len = 0
  print('input :', test_str)
  while test_str:
    tmp_str = test_str[0:max_len]
    seg_str = getSeg(tmp_str)
    seg_len = len(seg_str)
    result_len = result_len + seg_len

    if seg_str.strip():
      result_str.append(seg_str)
    test_str = test_str[seg_len:]

  print('output :', result_str)

字典:

word_dict = ['混沌', 'Logistic', '算法', '圖片', '加密', '利用', '還原', 'Lena', '驗(yàn)證', 'Baboon', '效果']

測(cè)試句子:

test_str = '''一種基于混沌Logistic加密算法的圖片加密與還原的方法,并利用Lena圖和Baboon圖來(lái)驗(yàn)證這種加密算法的加密效果。'''

分詞結(jié)果

到此這篇關(guān)于用python實(shí)現(xiàn)前向分詞最大匹配算法的示例代碼的文章就介紹到這了,更多相關(guān)python 前向分詞最大匹配算法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 圖片驗(yàn)證碼代碼

    python 圖片驗(yàn)證碼代碼

    在網(wǎng)絡(luò)應(yīng)用中,驗(yàn)證碼常常作為一個(gè)必備的手段,用來(lái)避免機(jī)器人惡意注冊(cè),保證坐在瀏覽器前的是一個(gè)人。
    2008-12-12
  • python安裝自己的代碼到site-packages問(wèn)題

    python安裝自己的代碼到site-packages問(wèn)題

    這篇文章主要介紹了python安裝自己的代碼到site-packages問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • python 循環(huán)結(jié)構(gòu)練習(xí)題

    python 循環(huán)結(jié)構(gòu)練習(xí)題

    這篇文章主要給大家分享的是python 循環(huán)結(jié)構(gòu)練習(xí)題,求兩個(gè)數(shù)最大公約數(shù)、整數(shù)反轉(zhuǎn):如12345,輸出54321等多個(gè)練習(xí)題,需要的朋友可以參考一下
    2021-11-11
  • Python txt文件加入字典并查詢的方法

    Python txt文件加入字典并查詢的方法

    今天小編就為大家分享一篇Python txt文件加入字典并查詢的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • Python密碼學(xué)概述雙倍強(qiáng)度加密教程

    Python密碼學(xué)概述雙倍強(qiáng)度加密教程

    這篇文章主要為大家介紹了Python密碼學(xué)概述雙倍強(qiáng)度加密教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>
    2022-05-05
  • selenium+python 對(duì)輸入框的輸入處理方法

    selenium+python 對(duì)輸入框的輸入處理方法

    今天小編就為大家分享一篇selenium+python 對(duì)輸入框的輸入處理方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • python 實(shí)現(xiàn)返回一個(gè)列表中出現(xiàn)次數(shù)最多的元素方法

    python 實(shí)現(xiàn)返回一個(gè)列表中出現(xiàn)次數(shù)最多的元素方法

    今天小編就為大家分享一篇python 實(shí)現(xiàn)返回一個(gè)列表中出現(xiàn)次數(shù)最多的元素方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06
  • Python 裝飾器使用詳解

    Python 裝飾器使用詳解

    裝飾器是Python語(yǔ)言中的高級(jí)語(yǔ)法。主要的功能是對(duì)一個(gè)函數(shù)、方法、或者類進(jìn)行加工,作用是為已經(jīng)存在的對(duì)象添加額外的功能,提升代碼的可讀性。裝飾器是設(shè)計(jì)模式的一種,被用于有切面需求的場(chǎng)景,較為經(jīng)典的有插入日志、性能測(cè)試、事務(wù)處理等
    2017-07-07
  • Python自定義模塊的創(chuàng)建與使用

    Python自定義模塊的創(chuàng)建與使用

    這篇文章主要給大家介紹了關(guān)于Python自定義模塊創(chuàng)建與使用的相關(guān)資料,文中還給大家分享了python打包用戶自定義模塊的方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • python中的List sort()與torch.sort()

    python中的List sort()與torch.sort()

    這篇文章主要介紹了python中的List sort()與torch.sort()使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09

最新評(píng)論

东乡县| 响水县| 宜宾市| 射洪县| 沾益县| 文昌市| 阳信县| 肇源县| 凤凰县| 同仁县| 湘阴县| 玛沁县| 沧州市| 固镇县| 柯坪县| 吴旗县| 武宁县| 正阳县| 林州市| 台北市| 兴和县| 耒阳市| 玉溪市| 集安市| 紫金县| 儋州市| 玉环县| 田东县| 衡阳市| 洪雅县| 崇信县| 义马市| 南华县| 延寿县| 米泉市| 山阳县| 师宗县| 林州市| 辽源市| 镇平县| 镇江市|