武警部隊因其性質和任務的特殊性,致使武警官兵較常人更容易出現心理問題,所以有關軍人心理的研究工作已是當前部隊科研的一個重點 ;而結合武警部隊實際,應用當前心理學最新研究成果,則是現階段武警部隊心理工作的普遍方法.但針對我軍官兵心理特點的科學研究是近一時期才逐步發展并形成的,一方面我們要檢索具有武警部隊針對性的文獻資源,另一方面武警部隊自己的研究點滴也需積累.隨著我軍信息化進程不斷深化,針對武警心理研究文獻資料的檢索查閱以及經驗累積已不僅是科研人員的工作所需,也逐步成為基層官兵學習心理知識并調整自身心態的一個有效的途徑.因此,建立武警部隊心理文獻索引以及心理研究數據的武警部隊心理數據庫具有極大的實用意義.本文將主要論述如何利用垂直深度搜索引擎技術實現心理數據庫的數據采集和萃取.
1 搜索引擎技術
搜索引擎技術是指用戶通過查詢界面輸入搜索信息,通過網絡或數據庫得到相關信息反饋的技術,搜索引擎的工作原理如圖1 所示.目前常用的搜索引擎有采用通用搜索引擎技術的囊括所有學科和主題的綜合性搜索\\(如 google、百度等\\)、采用垂直搜索引擎技術面向特定學科和專業的專業搜索引擎以及面向搜索引擎的搜索引擎指南.垂直搜索引擎基于結構化數據和元數據的結構化抓取,因此使抓取的數據更符合專業特點、有針對性,用戶可以利用這種技術從互聯網、外部數據庫抓取自己需要的信息構建自己的數據庫應用系統,利用垂直搜索引擎進行數據采掘的搜索引擎技術是我們實現心理數據庫信息采集的基礎,如圖 2 所示.
搜索引擎主要是利用爬蟲\\(Spider\\)程序去自動地在互聯網中搜索信息,主要有以下幾個部分構成 :數據采集\\(抓取\\)、數據處理\\(篩選去噪去重\\)以及數據存儲,圖 3、4 分別是它的體系結構和系統結構.網頁由文本、圖片以及鏈接等元素構成,搜索引擎根據用戶需求,選定一個種子,利用爬蟲開始抓取頁面,把符合要求的頁面內容抓取到索引庫 ;沿著網絡上的鏈接從一個網頁到另一個網頁,遍歷各個相關站點,把符合要求的頁面抓取到索引庫采集資料.從數據采集的角度來看,用戶關心的是數據資源,Internet 上的網頁以及數據庫就是一個巨大的數據資源礦山,搜索引擎是開采數據資源礦山的機器,具有搜索勘探、提煉萃取、收集存儲的功能.而對搜索引擎技術的研究就集中在各個采集階段,主要涉及到爬行策略\\(爬蟲\\)、分詞技術、索引\\(存儲\\)、排序檢索算法等.
2 垂直深度搜索引擎技術與部隊心理數據庫
隨著互聯網信息化的深入發展,出現了大量業務型 Web 應用系統即 Web 數據庫.這些數據庫的 web 面之間的關系是非平行的垂直邏輯關系,垂直搜索引擎應運而生.它針對某一特定行業對網頁庫中的某類專門信息進行整合,可以定向挖掘專用數據進行處理,再以用戶需要的某種形式返回給用戶.武警部隊心理科研成果、資源數據及心理學文獻材料通常分散收錄于多個文獻數據庫以及某些特殊數據庫內,不但檢索查閱不便效率低下,其覆蓋范圍也不足,經常存在"壞鏈""死鏈"現象 ;采取通常方法檢索,其搜索結果均是基于關鍵字的簡單拆分查詢,不具備高級關鍵字分析處理功能,更達不到心理領域的專需效果,而且各文獻數據庫產品不同形式的人機交互界面\\(UI\\)也為科學檢索帶來了不便,因此利用垂直搜索引擎技術完成心理學專業相關的信息采集,設計并研究開發一套武警部隊心理領域專需數據庫,包括文獻、成果、數據資源是我們的出發點.
分析搜索引擎的工作過程以及實際建庫需要,其要完成的是一個人工智能系統,就是借助爬蟲技術反向解析網絡數據庫大海中最原始的數據,取出數據,組織建立自己的數據庫.也就是說爬行策略的核心是以用戶關注的內容為根本,通過一種有效的方法將內容相關的 WebPage 重新分類,這需要爬蟲通過多路徑搜索對網頁進行遍歷,制定爬行策略,對每個工作步驟進行優化設計.
武警部隊心理數據庫所需數據目的明確、專業特性非常強,適合使用垂直搜索.在實際操作過程中,我們使用了垂直深度搜索引擎技術利用聚焦爬蟲獲取心理文獻數據.其原理是 :爬蟲要訪問的文獻數據庫一般比較固定\\(如中國知網\\),爬取數據時,外層采用通用方法進行主題聚焦,對爬取到的數據進行特征分析,定位分析,制定爬蟲爬取深度,通過一層層定位分析,將數據從最底層爬取出來.
3 性能優化的技術實現
由于心理數據庫主要是針對特殊站點爬取大量的原始數據,其速度、爬全率以及穩定性是我們考慮的重點,因此在我們的實驗中重點做了數據采集階段爬蟲性能上的改進研究.通常數據采集階段的爬蟲使用多線程并行采集\\(圖 5\\),由于這種同步方式線程太多,發一次請求響應一次,若采集量較大則需要等待掛起,會引起阻塞,造成死機現象,因此我們采取了異步非阻塞的單線程方法進行采集.這種串行異步單線程采集方式,可以連續發送請求,一次發送多個請求,進入隊列進行等待回答,因此不會引起阻塞 ;另外由于抓取 URL 后系統要通過 DNS 解析分析對 URL 進行分析、消重去噪,在 DNS 解析時采取多線程分析,可以縮短系統解析時間 ;對垂直深度聚焦爬蟲,由于采取的是針對某類服務器進行數據抓取,其 ip 地址固定,將 DNS 進行緩存,可以實現一次解析多次抓取的通道全連接模式,直到完成所有請求之后才斷開連接,大大提高了采集性能.另外在此過程中,增加容錯設計,若某一 URL 抓取不成功,設定閾值,防止死鎖,并將其緩存到另一臺服務器上,必要時再重新抓取.經過上述技術處理后,數據采集爬蟲的性能得到了大幅提高.以下是抓取結果對比 :
4 結論與改進
搜索引擎技術的發展使得大數據時代的專需數據不至于被淹沒在信息大海中采集不到,但要想數據采集的準確、全面需要在搜索引擎工作的各個階段進行深入研究提高性能.本文采取異步非阻塞的爬行策略對心理數據庫所需資源進行了垂直深度搜索,數據采集性能上有很大提高,下一步將要進行的工作是心理專用分詞技術以及排序檢索算法的研究.
參考文獻
[1] 李曉明 , 閆宏飛 , 王繼民 . 搜索引擎--原理、技術與系統\\(第二版\\)[M]. 科學出版社 .2012.5
[2] 王曉艷 , 于光華,劉雙春 . 經典搜索引擎排序算法的比較與分析 [J]. 產業與科技論壇 .2012.\\(11\\).24:49-51
[3] 馬慧 . 面向特定網頁的 Web 爬蟲的設計與實現 [D]. 吉林大學大學 .2012.12
[4] 邱曉俊 . 面向特殊主題的排序與檢索算法研究 [D]. 江西理工大學 .2011.12
[5] 焦賽美 . 網絡爬蟲技術的研究 [J]. 瓊州學院學報 .2011.\\(18\\).5:28-30
[6] 羅武,方逵,朱興輝 . 網絡搜索引擎排序算法研究進展 [J].湖南農業科學 .2010.7 :137-140
[7] 劉喜亮 . 面向主題的網絡爬蟲設計與實現 [D]. 湖南大學 .2009.6