尚玉葉,鄭新超
(南通大學(xué)計算機科學(xué)與技術(shù)學(xué)院、外國語學(xué)院,南通 226019)
隨著信息高速公路的快速發(fā)展,搜索引擎在信息覆蓋率、精準(zhǔn)度和信息響應(yīng)時間等方面的要求越來越高。日語學(xué)習(xí)者在查詢資料或資訊時,常伴隨著冗余垃圾信息的困擾。同時,網(wǎng)絡(luò)數(shù)據(jù)的飛速增長為搜索引擎帶來了巨大的存儲和網(wǎng)絡(luò)服務(wù)壓力。因此,本文嘗試在日語學(xué)習(xí)與交流的跨平臺APP 開發(fā)過程中,針對日文網(wǎng)絡(luò)資料進行自動檢索,并過濾、篩選敏感信息,以提高學(xué)習(xí)平臺資源信息的精準(zhǔn)性和可靠性。
網(wǎng)絡(luò)爬取、建立索引數(shù)據(jù)庫、排序是搜索引擎的三大基本工作原理。利用python 爬取網(wǎng)頁,從中提取反應(yīng)頁面內(nèi)容的字符串,索引程序提取字符串中的關(guān)鍵詞,通過建立以頁面為主索引的正向索引文件并將其存儲到索引數(shù)據(jù)庫。而倒排索引[1]則是建立以關(guān)鍵詞為索引的索引表,用戶輸入搜索詞,對搜索詞進行處理形成一個或多個關(guān)鍵詞,搜索系統(tǒng)查找倒排索引,從中讀出包含這個關(guān)鍵詞的多個頁面,從而滿足用戶快速完成搜索的需求。搜索引擎反饋給用戶的看似簡單的過程實則很復(fù)雜。用戶輸入搜索詞需要文本分析、語義分析等,對反饋結(jié)果需要經(jīng)過鏈接分析、敏感詞判斷等處理。
在面向大數(shù)據(jù)的環(huán)境中,利用語義分析的方法對評論進行挖掘[2]成為大數(shù)據(jù)的主要研究領(lǐng)域之一,也是當(dāng)下比較熱門的話題。目前,國內(nèi)外都在這方面投入了大量的人力、物力進行更多探索性的研究。部分研究已在市場上運行,并取得較好的用戶體驗,譬如各種APP 個性推薦頁面、慕課相似課程推薦等,這使得文本、語義分析尤為重要。
(1)文本分析。對用戶輸入文本中的數(shù)字、連接符、標(biāo)點符號和字符的大小進行預(yù)處理,過濾掉區(qū)分能力低的詞匯,決定對哪些關(guān)鍵詞建立索引。搜索引擎接口返回的列表內(nèi)容或多或少的有著不同的linkURL 卻有著相同的內(nèi)容。自動提取關(guān)鍵詞的算法就是計算出文檔特征項的TF-IDF 值,具有較高權(quán)重的TF-IDF 特征項代表文本。詞袋模型是關(guān)注文檔中出現(xiàn)的已知詞,忽略其詞序、語法、句法等要素,即詞與詞之間是獨立的,最終都是以N維特征向量的表現(xiàn)形式表示。譬如有一個文本包含兩個簡單句,分別是“我是一個學(xué)生”,“他也是一個學(xué)生”,則詞集為{我、他、也、是、一、個、學(xué)生}對應(yīng)的向量分別是[1001111]、[0111111]?;诖丝梢耘挪橄嗨凭W(wǎng)頁顯示給用戶,提高檢索率。
(2)語義分析。在提高用戶的查詢效率、分析用戶喜好、提高用戶體驗等方面起著不可替代的作用?;诒続PP 的用戶主要是日語學(xué)習(xí)者,交流的大都是日語相關(guān)的話題,本文的語義分析主要是基于詞共現(xiàn)的語義分析。一個文本由若干個詞組成,采用基于詞典的建立詞表方法,對選定文本進行正向最大匹配和逆向最大匹配相結(jié)合的處理。假設(shè)分別有中文詞表{個性、體驗、詩人、詩、有、的、中}和日文詞表{人工、知能、は、発展、潛在、力、の、ある、學(xué)科、である},則{詩中有詩人的個性體驗}、{人工知能は発展?jié)撛诹Δ韦ⅳ雽W(xué)科である}這兩句話通過分詞分別得到{詩/中/有/詩人/的/個性/體驗}和{人工/知能/は/発展/潛在/力/の/ある/學(xué)科/である}的詞集?;谠~共現(xiàn)(Co-OccurrenceWordModel)的向量空間模型,假設(shè)若干詞經(jīng)常共現(xiàn)在文本的同一個窗口單元內(nèi),則這若干詞在意義上是相互關(guān)聯(lián)的。窗口內(nèi)共現(xiàn)詞越多,則其內(nèi)的相互關(guān)聯(lián)程度越高。對窗口大小的設(shè)置可以根據(jù)個人需要調(diào)節(jié)。若兩個特征項的相關(guān)度超過一定的閾值,則將這兩個項連接,對所有的特征值進行兩兩比較相關(guān)度,從而形成詞共現(xiàn)圖。一個連通子圖代表著一個關(guān)鍵語義,子圖中的特征項節(jié)點說明該子圖其權(quán)值越大,對文本的語義貢獻越大,越能代表文本的語義。取靠前的K 個特征項子圖,與語料庫進行匹配敏感詞匯,得出語義。
為減少敏感信息的出現(xiàn),需通過算法自動識別并過濾敏感詞匯。常用的過濾算法有:規(guī)則匹配算法、神經(jīng)網(wǎng)絡(luò)的信息匹配算法[3]等。本文嘗試在建立敏感詞庫的基礎(chǔ)上進行基于語義的敏感信息檢測。
(1)敏感詞匯庫的建立。第一步,對比現(xiàn)有網(wǎng)址與敏感網(wǎng)址庫里的網(wǎng)址記錄,若有相同的記錄存在則該網(wǎng)址的網(wǎng)頁顯示空白網(wǎng)頁,否則對該網(wǎng)址的內(nèi)容下載;第二步,內(nèi)容的過濾操作,但先不展示給用戶,把下載的內(nèi)容與敏感詞匯庫中的記錄進行比對,若內(nèi)容中包含敏感詞匯庫的敏感詞匯,則將該網(wǎng)址記錄到敏感詞匯庫,為下一次的敏感網(wǎng)址庫記錄對比做準(zhǔn)備,并顯示空白網(wǎng)頁,否則進行網(wǎng)頁的圖片過濾;第三步,對于圖片過濾需先建立一個圖片庫,通過膚色檢測算法和紋理檢測模型等[4]進行圖像過濾。
(2)基于語義的敏感信息檢測。語義向量空間模型[5]是被GenardSalton 和Salton,Wong,&Yang 在SMART 信息檢索系統(tǒng)所發(fā)展。語義向量空間模型VSM 的主要思想是把集合里的每個文檔表示為空間的一個點,空間中的點距離越近,語義相似性就越高;空間中的點距離越遠,語義上相似度減小。在擁有敏感詞匯庫的基礎(chǔ)之上,通過建立語義向量空間模型搜索詞匯。
對待檢測敏感詞匯的鑒別最關(guān)鍵技術(shù)就是判斷其語義信息,為了能夠發(fā)現(xiàn)待檢測詞之間的內(nèi)在關(guān)系,可以構(gòu)造一個m*n 的敏感信息轉(zhuǎn)化矩陣。每一列是表示的是敏感詞匯組成的文本向量。對矩陣進行降維為一個純量陣,是轉(zhuǎn)化矩陣的參數(shù),得出待檢測詞匯的主要內(nèi)容,提取內(nèi)容,便能得到相關(guān)詞匯的語義信息,將無關(guān)的語義信息過濾掉,排除部分敏感詞匯,提取需要的關(guān)鍵語言信息,從而提高語義檢索的速度。
為了取得更好的過濾效果,可以運用閥值理論對詞匯進一步篩選,將詞匯按照不同的語義分為敏感和非敏感詞匯,降低漏檢率,提高系統(tǒng)的性能。輸入多個檢索詞進行多次檢索,從而評價信息檢索系統(tǒng)的性能水平。為驗證這一方案,本文嘗試基于詞共現(xiàn)模型的語義分析對朝日新聞的數(shù)據(jù)庫,包括9個類別、53個關(guān)鍵詞庫,共1630000個文檔,利用詞共現(xiàn)模型和模式匹配兩種方法進行檢索,本方案的檢索效率顯而易見。
本文在建立語料庫的基礎(chǔ)上進行了基于詞共現(xiàn)語義分析與敏感詞匯的識別,主要優(yōu)點有:一是語義分析對查詢結(jié)果進行分析,給用戶更好的體驗;二是敏感詞匯對結(jié)果進行篩選,屏蔽敏感詞匯。目前,在語料庫方面主要借鑒了少納言語料庫和中文語料庫,未建立自身的語料庫,考慮更多語義因素是下一步要研究的重點。