杜隆胤


摘 要: 基于GPRS的移動互聯網分布式文本分類系統沒有足夠的CPU和RAM資源可以調用,所以難以使用傳統的神經網絡系統進行文本分類,這與當前的互聯網大數據需求存在一定的矛盾。在此使用占用CPU和RAM資源較少的語義分析算法,采用局端與用戶端聯合運算的方式,使用比較結果字符串替代明文傳輸的方式減少GPRS鏈路占用,研究了基于語義分析的計算機文本分類技術。
關鍵詞: 語義分析; 文本分類; 移動互聯網; 計算機智能
中圖分類號: TN919?34 文獻標識碼: A 文章編號: 1004?373X(2016)05?0147?02
文本分類技術是人工智能的重要組成部分,而語義分析算法是傳統的腳本編譯算法[1?2]。傳統的文本分類算法包括決策樹,Rocchio,樸素貝葉斯,神經網絡,支持向量機,線性最小平方擬合,KNN,遺傳算法,最大熵,Generalized Instance Set等[3]。將語義分析算法應用在文本分類中[4]是本文研究的重點。
1 需求分析
這里需要一種可以運行在云端的文本分類軟件,軟件主要運行在安卓客戶端和云端服務器之間。要求軟件使用最小數據量實現最大程度的云端數據整合和文本分析準確率。
1.1 流程分析
本文需求并不要求更智能化的識別方式,而是通過語義分析法,通過對特殊關鍵詞和關鍵詞組合的方式進行識別得到文本分類結果。本文的研究內容主要用于識別和分析500字符之內的自然文本。這部分自然文本主要應用在對網絡頁面文本進行分析,同時用于對捕捉到的超文本標識代碼進行內容文本和代碼段的識別,業務流程圖如圖1所示。
1.2 模塊分析
傳統語義分析算法來自人工輸入的特定文本之間的判斷,一般語義分析算法只能識別80~120個關鍵詞[5]。但此種規模的識別字典完全不能適應本文要求對自然文本的識別,所以本文采用三層識別方法見圖2。
P1.1:根據固定關鍵詞,識別超文本標識語言中的標識段數據,并將其剔除。
P1.2:根據自學習關鍵詞,識別自然文本中的關鍵詞,根據詞頻和關聯度進行價值估計。
P1.3:根據自學習關鍵詞,識別自然文本的含義,評估不同文本段之間的相似度,對文本段進行歸納整理。
而本軟件的自學習部分(P2)不從傳統的人工智能算法中得到關鍵詞字典,而是采用語義分析中常用的聯系算法進行關鍵詞管理[6]。自學習部分放在云端服務器上,自學習結果采用軟件更新的方式發送到客戶端。自學習產生的流量來自服務器與互聯網之間的聯系,并不占用GPRS通道。
軟件的移動端部分(P3)通過相對固定的關鍵詞字典集合,根據實際分析得到的數據匹配結果進行遠端比較,但大部分數據需要提交到P1模塊進行局端比較。在移動端形成比較字符串后,可以較大程度地實現GPRS鏈路的數據最小化。
1.3 數據流分析
P1模塊輸入數據D1.1為P1.1的關鍵詞字典數據,該數據以數據庫表的形式保存在數據庫中,形成表dataPinSOL。該數據主要用于輔助識別字段中的無信息量字符串,如超文本標識語言中的標識字符串等。
P1模塊輸入數據D1.2為P1.2的關鍵詞字典數據,該字典數據來自自然文本中經常出現的字符串,以及用戶易搜索的字符串。這部分字符串來自對海量信息的比較,海量信息來自互聯網遍歷捕捉文本和搜索引擎的采集文本。
P1模塊輸入數據D1.3為P1.3的關鍵詞字典數據,該字典數據來自對D1.2數據進行進一步挖掘得到的與D1.2數據經常合并出現的字典數據。這部分字典數據同樣來自語義分析的分析法。
因為本文算法不采用無限遞歸法[7],而是采用了三層計算的架構,而將語義分析段代碼用于多層不限制遞歸。所以P1模塊的數據流相對簡單。P1模塊的輸出數據流為DL1,定義為比較結果字符串。該字符串作為搜索引擎對語義識別的結果字符串,不具備人腦識別的功能,但可以在計算機中給自然語言提供鏡像,可以讓較為模糊的自然語言在計算機中得到識別和模糊對比。
P2有兩個輸入量,P2.1來自合作搜索引擎的搜索字符串數據,該數據運行在光纖數據干線上,數據量較大,不會在GPRS鏈路中出現。此部分合作搜索引擎的數據采集內容主要包括搜索字符串,搜索時間,發生IP,發生IP地域,捆綁賬號等。P2.2來自網絡隨機遍歷采集的各種超文本,這些超文本數據采用單字段采集和多關鍵詞分析的方式進行挖掘,所以數據結構較為簡單。
2 算法設計
因為篇幅限制,本文僅討論和展示部分核心代碼和算法的設計,較復雜的算法過程不再給出偽碼。P1.1是超文本對比算法,超文本對比算法使用了最經典的語義分析算法。而P1.2和P1.3采用的算法是在經典的語義分析算法的基礎上做的擴增[8],這部分擴增可以讓語義分析算法更加適用于自然語言下的文本分類。
本文算法的最主要成果是使用最小的CPU和RAM資源,對自然語言文本進行比較,從而獲得更高效的適應當前互聯網云服務市場的軟件[9]。
2.1 超文本對比函數算法(P1.1局部)
讀字典數據表,做對比循環函數。
對比循環函數偽碼如下:
OPEN TABLE DICT
DO WHILE DICT NOT EOF
GET DIG_DICT RECORDSET FORM DICT
OPEN TEXTFILE
GET L_DIG_DICT LENTH DIG_DICT
FOR I 0 TO LENTH TEXTFILE
GET T_TEXTFILE MIDDLE TEXTFILE I L_DIG_DICT
GET SUMSHOW COMPARE DIG_DICT T_TEXTFILE
NEXT I
LOOP
RETURN SUMSHOW
2.2 數據邏輯網絡的實現(P1.2局部)
數據邏輯網絡主要是在數據庫中使用數據結構實現數據的邏輯網絡,每個數據都有若干個上級數據和若干個下級數據[10]。每個單個數據一般不超過15個漢字(32字符)。上級數據和下級數據使用專用字段存儲,每個字段使用二維數組的方式進行管理。二維數組包括目標字符串(32字符),響應頻率,最后響應時間3項。
為了充分調動數據邏輯網絡,采用了全新的遍歷算法,對每個記錄下的兩個二維數組字段進行分別遍歷,以對文章內容進行逐一比較和計算。在比較中同時記錄其他詞語的詞頻,進一步對兩個二維數組字段進行維護和更新。因為篇幅限制,只在本文模型下進行設計分析。
2.3 文本相似度評估算法(P1.3局部)
本文采用的文本相似度評估算法分為兩段:
第一段對輸入文本進行比較評估,對字典中每個關鍵詞進行詞頻分析,同時對關鍵詞出現的位置進行[t]檢驗和[χ2]檢驗,將結果使用Minmax處理為(0,1)值域。將每個處理結果進行匯總制表。與此同時,將輸入文本與每個關鍵詞的關聯詞進行詞頻分析,同時對關鍵詞的關聯詞位置進行[t]檢驗和[χ2]檢驗,將結果同樣使用Minmax處理為(0,1)值域。Minmax結果設計為小數點后12位小數。將每個處理結果進行匯總制表。
第二段將第一段中形成的兩個數據表與系統中存儲的數據表進行[t]檢驗和[χ2]檢驗,獲取檢驗結果的[P]值。當[P<]0.05時,認為兩篇文章具有相似度,且[P]值越小,文章的相似度越高。本文算法經過檢驗,完全相同的兩篇自然語言文章輸入系統后,兩篇文章的[P]值接近于0,表示本文算法擁有較高的識別性。
3 結 語
本文就基于語義分析在計算機技術文本分類中的應用進行了軟件工程分析和設計,在面向對象的設計模型中,本文實現了不使用任何神經網絡遞歸算法就可以得到高效率的軟件系統。這個算法系統可以在移動互聯網設備中得到較廣泛的應用。
參考文獻
[1] 萬源.基于語義統計分析的網絡輿情挖掘技術研究[D].武漢:武漢理工大學,2012.
[2] 李智星.用于文本分類的簡明語義分析技術研究[D].重慶:重慶大學,2011.
[3] 王奕.基于概率潛在語義分析的中文文本分類研究[J].甘肅聯合大學學報(自然科學版),2011(4):55?59.
[4] 鐘將,劉榮輝.一種改進的KNN文本分類[J].計算機工程與應用,2012,48(2):139?142.
[5] 季鐸,畢臣,蔡東風.基于類別信息優化的潛在語義分析分類技術[J].中國科學技術大學學報,2015(4):112?114.
[6] 何兆興.文本分類相關算法研究[J].計算機工程與應用,2014(3):59?61.
[7] 劉東華.計算機語義分析算法革新研究[J].計算機工程與應用,2013(4):41?42.
[8] 劉海東.文本分類與計算機語義分析的關聯研究[J].中國科學技術大學學報,2015(2):167?169.
[9] 蔡虎燕.語義分析算法在文本分類中的應用研究[D].濟南:山東大學,2013.
[10] 王玉.語言分類與計算機人工智能關聯性研究[J].計算機工程與應用,2012(5):36?37.