国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

python中文分詞教程之前向最大正向匹配算法詳解

2020-02-16 10:34:41
字體:
供稿:網(wǎng)友

前言

大家都知道,英文的分詞由于單詞間是以空格進(jìn)行分隔的,所以分詞要相對(duì)的容易些,而中文就不同了,中文中一個(gè)句子的分隔就是以字為單位的了,而所謂的正向最大匹配和逆向最大匹配便是一種分詞匹配的方法,這里以詞典匹配說明。

最大匹配算法是自然語(yǔ)言處理中的中文匹配算法中最基礎(chǔ)的算法,分為正向和逆向,原理都是一樣的。

正向最大匹配算法,故名思意,從左向右掃描尋找詞的最大匹配。

首先我們可以規(guī)定一個(gè)詞的最大長(zhǎng)度,每次掃描的時(shí)候?qū)ふ耶?dāng)前開始的這個(gè)長(zhǎng)度的詞來和字典中的詞匹配,如果沒有找到,就縮短長(zhǎng)度繼續(xù)尋找,直到找到或者成為單字。

下面話不多說了,來一起看看詳細(xì)的介紹吧。

實(shí)例:

S1="計(jì)算語(yǔ)言學(xué)課程是三個(gè)課時(shí)" ,設(shè)定最大詞長(zhǎng)MaxLen = 5 ,S2= " "

字典中含有三個(gè)詞:[計(jì)算語(yǔ)言學(xué)]、[課程]、[課時(shí)]

    (1)S2="";S1不為空,從S1左邊取出候選子串W="計(jì)算語(yǔ)言學(xué)";

    (2)查詞表,“計(jì)算語(yǔ)言學(xué)”在詞表中,將W加入到S2中,S2=“計(jì)算語(yǔ)言學(xué)/ ”, 并將W從S1中去掉,此時(shí)S1="課程是三個(gè)課時(shí)";

    (3)S1不為空,于是從S1左邊取出候選子串W="課程是三個(gè)";

    (4)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="課程是三";

    (5)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="課程是";

    (6)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="課程"

    (7)查詞表,W在詞表中,將W加入到S2中,S2=“計(jì)算語(yǔ)言學(xué)/ 課程/ ”,并 將W從S1中去掉,此時(shí)S1="是三個(gè)課時(shí)";

    (8)S1不為空,于是從S1左邊取出候選子串W="是三個(gè)課時(shí)";

    (9)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="是三個(gè)課";

    (10)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="是三個(gè)";

    (11)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="是三"

    (12)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W=“是”,這時(shí) W是單字,將W加入到S2中,S2=“計(jì)算語(yǔ)言學(xué)/ 課程/ 是/ ”,并將 W從S1中去掉,此時(shí)S1="三個(gè)課時(shí)";

    (13)S1不為空,從S1左邊取出候選子串W="三個(gè)課時(shí)";

    (14)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="三個(gè)課";

    (15)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W="三個(gè)";

    (16)查詞表,W不在詞表中,將W最右邊一個(gè)字去掉,得到W=“三”,這時(shí) W是單字,將W加入到S2中,S2=“計(jì)算語(yǔ)言學(xué)/ 課程/ 是/ 三/ ”,并 將W從S1中去掉,此時(shí)S1="個(gè)課時(shí)";

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 通江县| 三穗县| 阿克苏市| 兴文县| 贡嘎县| 越西县| 大新县| 白城市| 宝山区| 安徽省| 漳州市| 平南县| 南康市| 烟台市| 海安县| 汶上县| 安庆市| 拉孜县| 疏附县| 丽江市| 长泰县| 思南县| 观塘区| 南澳县| 扶沟县| 凯里市| 玉树县| 长宁县| 渑池县| 弋阳县| 平江县| 襄城县| 兴隆县| 怀安县| 聂拉木县| 黄龙县| 萝北县| 汝州市| 吉林省| 青阳县| 宁乡县|