• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      新聞信息檢索系統(tǒng)設計

      2019-06-27 06:42:09趙美勇楊永琪宋思睿
      科技資訊 2019年9期
      關鍵詞:爬蟲分詞網(wǎng)頁

      趙美勇 楊永琪 宋思睿

      摘? 要:模擬百度、谷歌等搜索工具,利用爬蟲和大數(shù)據(jù)來實現(xiàn)一個簡單的新聞信息檢索系統(tǒng)。此系統(tǒng)大致分為5個模塊:先是利用爬蟲來爬取網(wǎng)頁的信息;利用2-gram分詞來將獲取到的網(wǎng)頁建立索引;將索引排序;利用hadoop分布式存取索引;最后搭建前后端實現(xiàn)界面交互。五個環(huán)節(jié)關系緊密,核心環(huán)節(jié)就是索引的建立,利用2-gram分詞提取關鍵字,再利用TF-IDF矩陣對關鍵字打分,得到矩陣之后,就可以利用K-means來講關鍵字分類了。然后再按照評分將索引排序就可以得到用戶所需要的信息。

      關鍵詞:爬蟲? Hadoop? 2-gram? 分詞? K-means

      中圖分類號:G64? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1672-3791(2019)03(c)-0006-02

      1? 系統(tǒng)內(nèi)容

      1.1 Web網(wǎng)頁信息抽取

      以山東大學新聞網(wǎng)為起點進行網(wǎng)頁信息的循環(huán)爬取,保持蜘蛛在view.sdu.edu.cn之內(nèi)。

      1.2 索引構建

      對上一步爬取到的網(wǎng)頁進行結構化預處理,包括分字段解析、分詞、構建索引等。

      1.3 索引排序

      對上一步構建的索引庫進行查詢,對于給定的查詢,給出檢索結果,明白排序的原理及方法。

      1.4 數(shù)據(jù)庫構建

      利用爬取的新聞內(nèi)容以及構建的索引建立數(shù)據(jù)庫

      1.5 前后端實現(xiàn)

      基于數(shù)據(jù)庫利用Java及HTML語言實現(xiàn)前后端交互,提供用戶使用頁面。

      2? 系統(tǒng)設計

      2.1 爬蟲部分

      通過觀察分析新聞主頁可以發(fā)現(xiàn)我們需要的最終URL是:

      http://www.view.sdu.edu.cn/info/1207/104940.htm

      在信息爬取的過程中,所使用的工具為:

      Python3+requests+bs4+collections。

      實現(xiàn)過程如下:

      (1)以http://www.view.sdu.edu.cn為種子URL,獲取此網(wǎng)頁中所有的以“.html”結尾的URL,并且把它加入到列表中避免重復訪問。

      (2)通過分析網(wǎng)頁的源碼可以發(fā)現(xiàn)有些URL省略了前綴,因此我們在處理這樣的URL之前要先將其補全。

      (3)找到每一個滿足條件的URL(保持蜘蛛在view.sdu.edu.cn之內(nèi)),并將其加入到隊列中(這里采取BFS爬取策略)。

      (4)之后依次從隊列中取出隊首的URL,如果是目標URL,則獲取標題及正文信息,并存到文件中。如果不是目標URL,則依次進行(2)、(3)、(4)步驟。

      (5)在爬蟲的過程中維護一個目錄文件,記錄下每篇新聞的索引、URL、標題。

      2.2 詞項詞典構建

      詞典構建時分詞系統(tǒng)采用疊詞方式,也就是將語句ABCDE分割成AB,BC,CD,DE四個單詞。

      這里使用了一個假設,即“與文檔內(nèi)容有關的詞語不會只出現(xiàn)一次”,通過這個假設,我們可以排除絕大多數(shù)噪音詞項。

      比如“今天去濟南”,“今天”“濟南”這兩個詞項如果在文檔中占據(jù)重要地位,那么會出現(xiàn)不止一次,而“天去”“去濟”這兩個干擾詞項在絕大多數(shù)情況下只會出現(xiàn)一次,可以輕松除去。

      基于以上假設,將所有文檔遍歷一遍之后就可以得到一個去除了大多數(shù)干擾項和部分有效實詞的有損詞典。但是考慮到最后的目的是制作一個有序搜索引擎,被損耗掉的部分實詞往往在排序中所占據(jù)的得分份額也非常小,因此這個詞典就可以被認為是有效的詞典。

      2.3 倒排索引構建、TF-IDF矩陣和特征矩陣構建

      有了詞典之后,就可以進行倒排索引操作了。

      倒排索引操作時仍然使用疊加分詞方式,但是只有存在于上一步產(chǎn)生的詞典中的詞語才會進入下一步操作。倒排索引的結果會生成一個類似二維鏈表的結構,每個鏈表頭保存了詞項名稱,鏈表中間項保存了文檔ID和詞頻,鏈表尾保存了文檔頻率和詞語總頻率。

      利用鏈表尾保存的信息和文檔長度信息,遍歷一遍倒排索引即可直接生成TF-IDF矩陣。

      考慮到最高頻的詞語在絕大多數(shù)文檔中都出現(xiàn),對特征影響小的原因,選取其中詞頻第100~400共300個詞語進行SVD分解,這樣就得到了特征矩陣。

      2.4 文檔聚類

      在有了特征矩陣之后,直接使用UT矩陣,直接生成對參與到分類的文檔的特征向量。

      由于特征矩陣的計算和K-means迭代在大量數(shù)據(jù)的情況下單機運行十分緩慢,因此聚類被分成兩步,第一步隨機選擇了一部分向量進行完整的K-means算法,這樣就可以得√N個聚類中心;第二步對剩余的信息直接尋找和它們最近的聚類中心,直接視為這一聚類的追隨者。

      因為單機環(huán)境下推薦系統(tǒng)使用較少數(shù)據(jù)的效果更明顯,第一步使用的部分向量在后面將用來實現(xiàn)推薦系統(tǒng)。

      同時,根據(jù)聚類結果,將原始的TF-IDF矩陣分割成了數(shù)個較小的矩陣。每個聚類中最接近聚類中心的一個作為矩陣第一列的數(shù)據(jù)。

      3? 前后端實現(xiàn)

      3.1 前端實現(xiàn)

      使用JSP、JS、Java語言實現(xiàn)界面。

      (1)大致劃分:title檢索欄、content內(nèi)容新聞塊。

      (2)基本功能:輸入檢索自然語言,查詢相關新聞,獲取相關新聞標題URL信息,進一步跳轉詳細信息。

      3.2 后端實現(xiàn)

      自然語言處理,實現(xiàn)2-gram分詞。

      (1)單關鍵詞查詢:檢索該關鍵詞相關文檔,利用tf值取其中前十位的文檔ID,構建NEWS數(shù)據(jù)結構,生成結果。

      (2)多關鍵字查詢:將關鍵詞拆分,利用tf*idf乘積作為每篇文檔得分,最后將所有文檔排序,取出TOP10。

      4? 結語

      此系統(tǒng)不同于簡單的前端調(diào)取數(shù)據(jù)庫內(nèi)容,這次數(shù)據(jù)庫更多的只作為系統(tǒng)實現(xiàn)中的一小部分,清晰地了解了一個完整的信息檢索系統(tǒng)的構成,從信息采集、信息處理、信息入庫到信息利用和展示,一步又一步,讓這個過程復雜又清晰。也通過對于信息檢索的學習,逐步了解了真正的搜索引擎背后實現(xiàn)原理以及強大的技術支持。盡管在我們的系統(tǒng)中僅僅使用了python爬蟲爬取、基于2-gram的分詞以及索引構建、數(shù)據(jù)庫的簡單應用、TF-IDF得分計算、前后端實現(xiàn)這些技術,但已經(jīng)得到了良好的效果。

      此系統(tǒng)還有很大的完善空間,但是通過自己的努力基本實現(xiàn)了搜索引擎系統(tǒng)的基本要求,完成了包括關鍵詞和復雜語言的查詢操作,并且實現(xiàn)了良好的效果。

      參考文獻

      [1] 李俊華.基于Python的數(shù)據(jù)分析[J].電子技術與軟件工程,2018(17):167.

      [2] 馬明陽,郭明亮,魏留強.網(wǎng)絡爬蟲的專利技術綜述[J].科技世界,2018(12):12-13.

      [3] 陳麗,黃晉,王銳.Hadoop大數(shù)據(jù)平臺安全問題和解決方案的綜述[J].計算機系統(tǒng)應用,2018(1):1-9.

      [4] 邱均平,方國平.基于知識圖譜的中外自然語言處理研究的對比分析[J].現(xiàn)代圖書情報技術,2014,30(12):51-61.

      [5] 何曉兵,容金鳳.基于層次目標分解法構建的認知信息檢索模型[J].情報理論與實踐,2014(2):14-18.

      猜你喜歡
      爬蟲分詞網(wǎng)頁
      利用網(wǎng)絡爬蟲技術驗證房地產(chǎn)灰犀牛之說
      基于Python的網(wǎng)絡爬蟲和反爬蟲技術研究
      結巴分詞在詞云中的應用
      智富時代(2019年6期)2019-07-24 10:33:16
      基于CSS的網(wǎng)頁導航欄的設計
      電子制作(2018年10期)2018-08-04 03:24:38
      利用爬蟲技術的Geo-Gnutel la VANET流量采集
      電子測試(2018年1期)2018-04-18 11:53:04
      基于URL和網(wǎng)頁類型的網(wǎng)頁信息采集研究
      電子制作(2017年2期)2017-05-17 03:54:56
      大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡爬蟲技術
      電子制作(2017年9期)2017-04-17 03:00:46
      值得重視的分詞的特殊用法
      網(wǎng)頁制作在英語教學中的應用
      電子測試(2015年18期)2016-01-14 01:22:58
      10個必知的網(wǎng)頁設計術語
      湖北省| 桐梓县| 天峨县| 文成县| 东阳市| 株洲县| 都兰县| 马尔康县| 太白县| 凤山市| 娄烦县| 乐清市| 大丰市| 淮南市| 巴南区| 绥阳县| 永新县| 沂水县| 南召县| 肇东市| 柳林县| 隆德县| 崇左市| 廊坊市| 祁连县| 布拖县| 章丘市| 东乌珠穆沁旗| 盱眙县| 平邑县| 章丘市| 佛山市| 东丽区| 平谷区| 阳高县| 博爱县| 方城县| 吴江市| 靖宇县| 博罗县| 卫辉市|