專利名稱:一種漢語高危詞識別方法和系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及互聯(lián)網(wǎng)技術領域,特別是涉及一種漢語高危詞識別方法和系統(tǒng)。
背景技術:
目前,隨著互聯(lián)網(wǎng)信息的爆炸式發(fā)展,需要對互聯(lián)網(wǎng)應用中一些高危詞(或又稱為敏感詞)進行過濾,并且需要對同音的高危詞進行識別和過濾?,F(xiàn)有的同音高危詞識別是采用“分詞+拼音轉換”的方法,但是這種方法中,分詞大大降低了效率,容易造成短板效應,且很多分詞器的效果并不好,容易產(chǎn)生噪聲干擾。對于目前互聯(lián)網(wǎng)中的高并發(fā)的海量數(shù)據(jù)還顯得力不從心。因此需要一種新的高危詞識別方法,以提高效率。
發(fā)明內(nèi)容
本發(fā)明提供了一種漢語高危詞識別方法,該方法能夠從給定的句子中快速查找出尚危詞。本發(fā)明還提供了一種漢語高危詞識別系統(tǒng),該系統(tǒng)能夠從給定的句子中快速查找出高危詞。為達到上述目的,本發(fā)明的技術方案是這樣實現(xiàn)的本發(fā)明公開了一種漢語高危詞識別方法,建立第一列表和第二列表;第二列表中保存了所搜集的所有高危詞的全拼音串;第一列表中保存首字拼音和詞長信息之間的對應關系,其中首字拼音是高危詞的首字拼音,詞長信息是讀音與該首字拼音相同的各高危詞的詞長信息;則對于漢語句子S進行高危詞識別的過程包括步驟一,將S的當前漢字轉換成拼音;其中,初始時S的當前漢字為S中的從左邊數(shù)第一個漢字,之后,每次向右前進一個漢字,作為S的當前漢字,直到S的最右邊的漢字;步驟二,根據(jù)步驟一中轉換得到拼音去查詢第一列表,判斷第一列表中是否存在同樣的拼音,是則執(zhí)行步驟三,否則返回步驟一;步驟三,根據(jù)該存在的同樣的拼音所對應的詞長信息對S進行截取,得到C ;步驟四,將C轉換成全拼音串后,查詢第二列表,判斷第二列表中是否存在C的全拼音串,是則確定S中存在高危詞,退出流程,否則,返回步驟一。本發(fā)明還公開了一種漢語高危詞識別系統(tǒng),該系統(tǒng)包括存儲模塊、識別模塊、漢字轉拼音模塊,其中存儲模塊,用于保存第一列表和第二列表;第二列表中保存了所搜集的所有高危詞的全拼音串;第一列表中保存首字拼音和詞長信息之間的對應關系,其中首字拼音是高危詞的首字拼音,詞長信息是讀音與該首字拼音相同的各高危詞的詞長信息;漢字轉拼音模塊,用于將輸入的一個以上的漢字轉換成對應的全拼音串后輸出;識別模塊,用于根據(jù)以下步驟對輸入的漢語句子S進行高危詞識別步驟一將S的當前漢字發(fā)送給漢字轉拼音模塊,并接收漢字轉拼音模塊返回的拼音;其中,初始時S的當前漢字為S中的從左邊數(shù)第一個漢字,之后,每次向右前進一個漢字,作為S的當前漢字,直到S的最右邊的漢字;步驟二,根據(jù)步驟一中得到拼音去查詢第一列表,判斷第一列表中是否存在同樣的拼音,是則執(zhí)行步驟三,否則返回步驟一;步驟三,根據(jù)該存在的同樣的拼音所對應的詞長信息對S進行截取,得到C ;步驟四,將C發(fā)送給漢字轉拼音模塊,并接收漢字轉拼音模塊返回的C的全拼音串后,查詢第二列表,判斷第二列表中是否存在C的全拼音串,是則確定S中存在高危詞,退出流程,否則,返回步驟一。由上述可見,本發(fā)明這種建立第一列表和第二列表;第二列表中保存了所搜集的所有高危詞的全拼音串;第一列表中保存首字拼音和詞長信息之間的對應關系,其中首字拼音是高危詞的首字拼音,詞長信息是讀音與該首字拼音相同的各高危詞的詞長信息;然后對于漢語句子S逐字進行解析,對于S中的每個當前漢字將該當前漢字轉換成拼音,根據(jù)該拼音去查詢第一列表,判斷第一列表中是否存在同樣的拼音,是則根據(jù)該存在的同樣的拼音所對應的詞長信息對S進行截取,得到C,將C轉換成全拼音串后,查詢第二列表,判斷第二列表中是否存在C的全拼音串,是則確定S中存在高危詞。這種技術方案能夠從給定的句子中快速查找出高危詞。
圖1是本發(fā)明實施例中的一種漢語高危詞識別方法的流程圖;圖2是本發(fā)明實施例中的一種漢語高危詞識別系統(tǒng)的組成結構示意圖。
具體實施例方式為了使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面結合附圖和具體實施例對本發(fā)明進行詳細描述。圖1是本發(fā)明實施例中的一種漢語高危詞識別方法的流程圖。如圖1所示,該方法包括101,建立第一列表和第二列表;第二列表中保存了所搜集的所有高危詞的全拼音串;第一列表中保存首字拼音和詞長信息之間的對應關系,其中首字拼音是高危詞的首字拼音,詞長信息是讀音與該首字拼音相同的各高危詞的詞長信息。在第一列表中,當一個首字拼音所對應的詞長信息為多個時,按從小到大的順序保存該多個詞長信息。具體可以以鏈表的方式保存該多個詞長信息,且最小的詞長信息保存在鏈首,以此類推,最大的詞長信息保存在鏈尾。在本發(fā)明的一個實施例中,第一列表以首字哈希的存儲結構(key/value)表現(xiàn), 具體可以如表1所示
權利要求
1.一種漢語高危詞識別方法,其特征在于,建立第一列表和第二列表;第二列表中保存了所搜集的所有高危詞的全拼音串;第一列表中保存首字拼音和詞長信息之間的對應關系,其中首字拼音是高危詞的首字拼音,詞長信息是讀音與該首字拼音相同的各高危詞的詞長信息;則對于漢語句子S進行高危詞識別的過程包括步驟一,將S的當前漢字轉換成拼音;其中,初始時S的當前漢字為S中的從左邊數(shù)第一個漢字,之后,每次向右前進一個漢字,作為S的當前漢字,直到S的最右邊的漢字;步驟二,根據(jù)步驟一中轉換得到拼音去查詢第一列表,判斷第一列表中是否存在同樣的拼音,是則執(zhí)行步驟三,否則返回步驟一;步驟三,根據(jù)該存在的同樣的拼音所對應的詞長信息對S進行截取,得到C ; 步驟四,將C轉換成全拼音串后,查詢第二列表,判斷第二列表中是否存在C的全拼音串,是則確定S中存在高危詞,退出流程,否則,返回步驟一。
2.根據(jù)權利要求1所述的方法,其特征在于,所述對于漢語句子S進行高危詞識別的過程,在步驟一之前進一步包括對S進行去噪預處理,包括去除標點符號、英文字母、中文符號和字母,中文全角轉半角,繁體轉簡體。
3.根據(jù)權利要求1所述的方法,其特征在于,所述第一列表中保存首字拼音和詞長信息之間的對應關系包括在第一列表中,當一個首字拼音所對應的詞長信息為多個時,按從小到大的順序保存該多個詞長信息。
4.根據(jù)權利要求3所述的方法,其特征在于,所述步驟三包括按照對應的多個詞長信息的從小到大的順序分別對S進行截取,得到多個C ; 對多個C分別執(zhí)行步驟四所述的過程。
5.根據(jù)權利要求3所述的方法,其特征在于,所述從小到大的順序保存該多個詞長信息包括以鏈表的方式保存該多個詞長信息,且最小的詞長信息保存在鏈首,以此類推,最大的詞長信息保存在鏈尾。
6.一種漢語高危詞識別系統(tǒng),其特征在于,該系統(tǒng)包括存儲模塊、識別模塊、漢字轉拼音模塊,其中存儲模塊,用于保存第一列表和第二列表;第二列表中保存了所搜集的所有高危詞的全拼音串;第一列表中保存首字拼音和詞長信息之間的對應關系,其中首字拼音是高危詞的首字拼音,詞長信息是讀音與該首字拼音相同的各高危詞的詞長信息;漢字轉拼音模塊,用于將輸入的一個以上的漢字轉換成對應的全拼音串后輸出; 識別模塊,用于根據(jù)以下步驟對輸入的漢語句子S進行高危詞識別 步驟一將S的當前漢字發(fā)送給漢字轉拼音模塊,并接收漢字轉拼音模塊返回的拼音; 其中,初始時S的當前漢字為S中的從左邊數(shù)第一個漢字,之后,每次向右前進一個漢字,作為S的當前漢字,直到S的最右邊的漢字;步驟二,根據(jù)步驟一中得到拼音去查詢第一列表,判斷第一列表中是否存在同樣的拼音,是則執(zhí)行步驟三,否則返回步驟一;步驟三,根據(jù)該存在的同樣的拼音所對應的詞長信息對S進行截取,得到C ; 步驟四,將C發(fā)送給漢字轉拼音模塊,并接收漢字轉拼音模塊返回的C的全拼音串后,查詢第二列表,判斷第二列表中是否存在C的全拼音串,是則確定S中存在高危詞,退出流程,否則,返回步驟一。
7.根據(jù)權利要求6所述的漢語高危詞識別系統(tǒng),其特征在于,所述識別模塊,在步驟一之前還用于對S進行去噪預處理,包括去除標點符號、英文字母、中文符號和字母,中文全角轉半角,繁體轉簡體。
8.根據(jù)權利要求6所述的漢語高危詞識別系統(tǒng),其特征在于,在所述存儲模塊中的第一列表中,當一個首字拼音所對應的詞長信息為多個時,按從小到大的順序保存該多個詞長信息。
9.根據(jù)權利要求8所述的漢語高危詞識別系統(tǒng),其特征在于,所述識別模塊,用于在所述步驟三中,按照對應的多個詞長信息的從小到大的順序分別對S進行截取,得到多個C,然后對多個C分別執(zhí)行步驟四所述的查詢第二列表的過程。
10.根據(jù)權利要求8所述的漢語高危詞識別系統(tǒng),其特征在于,在所述存儲模塊中的第一列表中,以鏈表的方式保存該多個詞長信息,且最小的詞長信息保存在鏈首,以此類推,最大的詞長信息保存在鏈尾。
全文摘要
本發(fā)明公開了一種漢語高危詞識別方法和系統(tǒng)。所述方法包括建立第一列表和第二列表;第二列表中保存高危詞的全拼音串;第一列表中保存高危詞的首字拼音和詞長信息之間的對應關系;然后對于漢語句子S逐字進行解析,對于S中的每個當前漢字將該當前漢字轉換成拼音,根據(jù)該拼音去查詢第一列表,判斷第一列表中是否存在同樣的拼音,是則根據(jù)該存在的同樣的拼音所對應的詞長信息對S進行截取,得到C,將C轉換成全拼音串后,查詢第二列表,判斷第二列表中是否存在C的全拼音串,是則確定S中存在高危詞。本發(fā)明的技術方案能夠從給定的句子中快速查找出高危詞。
文檔編號G06F17/30GK102253983SQ20111017658
公開日2011年11月23日 申請日期2011年6月28日 優(yōu)先權日2011年6月28日
發(fā)明者張雁飛 申請人:北京新媒傳信科技有限公司