基于 Google 搜索路徑的課程信息垂直搜索引擎_第1頁
基于 Google 搜索路徑的課程信息垂直搜索引擎_第2頁
基于 Google 搜索路徑的課程信息垂直搜索引擎_第3頁
基于 Google 搜索路徑的課程信息垂直搜索引擎_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、         08-07-20 15:14:00     作者:孫韜    編輯:Studa_hasgo122【摘要】課程信息垂直搜索引擎,即在課程信息這個(gè)特定的領(lǐng)域里,讓用戶能搜索到最精準(zhǔn) 最全面的結(jié)果。本文利用 Google 發(fā)現(xiàn)“學(xué)校-學(xué)院-教師-課程”路徑,利用 HTMLParser 進(jìn)行 基于 WEB 頁面結(jié)構(gòu)的課程元數(shù)據(jù)信息抽取。為了做到信息的最準(zhǔn)確,為每個(gè)學(xué)校的每個(gè)學(xué) 院都編寫了包裝器 (解析頁面并將得到的元數(shù)據(jù)內(nèi)容的

2、抽取器)。在精確的課程領(lǐng)域元數(shù)據(jù) 信息支持下,本搜索引擎支持簡單檢索、元數(shù)據(jù)高級檢索、導(dǎo)航等綜合的檢索功能。 關(guān)鍵詞:垂直搜索;搜索路徑;元數(shù)據(jù)抽??;包裝器 Abstract This paper proposes a Vertical Search Engine aiming to provide the most accurate and comprehensive results in the specific field of course information. After finding search paths by Google according to the order

3、"university - school - teacher - Course", we use HTMLParser to extract metadata information based on web page structures. Different wrappers (analyzing web pages and extracting metadata information) for different schools are written for the sake of accuracy. By the support of precise metad

4、ata information, this search engine supports integrated search functions, such as simple retrieval, metadata advanced search, and navigation. Keywords: vertical search; searching path; metadata extraction; wrapper 1引言 隨著因特網(wǎng)(Internet)和萬維網(wǎng)(World Wide Web)技術(shù)的發(fā)展,全球共享學(xué)習(xí)資料和 知識使得傳統(tǒng)意義上的教育向遠(yuǎn)程教育和自主學(xué)習(xí)轉(zhuǎn)變,這就需要提供

5、對學(xué)習(xí)資源的全球共 享和在線訪問,需要為資源的擁有者提供學(xué)習(xí)資料發(fā)布和共享的支持,需要為學(xué)習(xí)者提供獲 取知識的有效手段。 但是,由于因特網(wǎng)具有較大的自由性,教課老師可以按照任意形式在因特網(wǎng)上發(fā)布其與 課程有關(guān)的信息;沒有固定、標(biāo)準(zhǔn)的信息發(fā)布格式,且信息發(fā)布主要注重視覺效果,缺少語 義信息;信息源變化頻繁,信息源的和產(chǎn)生沒有規(guī)律性。因此,如何在海量的、多變的、缺 乏固定格式的因特網(wǎng)學(xué)習(xí)資源中查找需要的課程信息,并將這些信息快速而準(zhǔn)確地抽取出 來、進(jìn)行有效的整合并提供高質(zhì)量的服務(wù),具有重大的科研價(jià)值和現(xiàn)實(shí)意義。 課程信息垂直搜索引擎,通過對課程網(wǎng)頁的元數(shù)據(jù)信息進(jìn)行自動提取和結(jié)構(gòu)化的組織, 使用戶通

6、過關(guān)鍵字搜索能得到最全面最精準(zhǔn)的學(xué)習(xí)資源,為高校教師、學(xué)生等教育領(lǐng)域用戶 提供更好的服務(wù)。 目前有三種爬蟲能分析基于內(nèi)容/基于鏈接的網(wǎng)頁,并把對這些網(wǎng)頁的分析與圖搜索算 法相結(jié)合。1. 廣度優(yōu)先搜索的爬蟲(breadth-first search spider) 1,按照圖遍歷算法 BFS 來工 作。由于最重要的頁面往往含有指向其他頁面的大量鏈接,breadth-first search spider 在有效 組織的網(wǎng)站中有很高的抓取效率和準(zhǔn)確率。2. 頁面權(quán)重爬蟲,結(jié)合了基于鏈接的分析與基 于遍歷的算法,采用了 Junhoo Cho 和他的實(shí)驗(yàn)室成員發(fā)明的算法2。3. Hopfield Ne

7、t Spider, 將 Web 看作為一個(gè)加權(quán)單層神經(jīng)網(wǎng)絡(luò),然后利用包含激活擴(kuò)散算法的爬蟲來完成信息發(fā)現(xiàn) 和檢索的工作3,4。 命名實(shí)體識別(Named Entity Recognition,NE)作為信息抽取中的子任務(wù),其主要目的 是從文本中檢測出專有名詞并進(jìn)行分類,如人名、地名、公司名、日期等。很多知名研究機(jī) 構(gòu)都致力這方面的研究,多個(gè)國際會議也舉辦了命名實(shí)體識別的評測活動,如 MUC5、 CoNLL6、ACE7、SIGHAN8等。 就本文而言,實(shí)體“課程”包括以下屬性:課程名稱、學(xué)院、學(xué)校、教師、教師主頁 URL, 課程鏈接以及課程簡介。本文的 NE 識別方法為基于 WEB 頁面結(jié)構(gòu)分析

8、的包裝器。 本文介紹了構(gòu)建課程信息垂直搜索引擎的基本理論和實(shí)用方法。先利用 Google 按照“學(xué) 校-學(xué)院-教師-課程”發(fā)現(xiàn)搜索路徑,然后利用 HTMLParser 編寫包裝器進(jìn)行基于 WEB 頁面結(jié) 構(gòu)分析的課程元數(shù)據(jù)信息抽取。 第 2 節(jié)介紹了本文的總體思路與核心算法,重點(diǎn)介紹了抓取網(wǎng)頁的基類,并以卡耐基- 梅隆大學(xué)的生態(tài)環(huán)境研究學(xué)院為例,具體敘述了專門為該學(xué)院編寫的包裝器。 第 3 節(jié)評測了算法的查全率,查準(zhǔn)率和 F-度量,分析了本文算法的性能。 第 4 節(jié)簡單介紹了本文涉及的實(shí)現(xiàn)技術(shù)。 最后,對本文的性能和擴(kuò)展做了小結(jié),指出了針對本文改進(jìn)和發(fā)展的方向。 2.1 利用 Google 發(fā)

9、現(xiàn)搜索路徑 課程的自然組織形式為從大學(xué)、學(xué)院、教師再到課程或者從大學(xué)、學(xué)院直接到課程。因 此,本文利用 Google AJAX Search API 以及 Google 的高級搜索語法按以下兩種順序之一來 發(fā)現(xiàn)課程信息: (1) 學(xué)校學(xué)院教師課程 (2) 學(xué)校學(xué)院課程 如圖 1 所示,為本文設(shè)計(jì)的基于 Google 的路徑發(fā)現(xiàn)頁面有兩個(gè)輸入框,keyword 和 site。 用戶分別輸入關(guān)鍵字后,利用 Google AJAX Search API ,將 site 的 值 提交給 GwebSearch.setSiteRestriction,將 keyword 的值提交給 GwebSearch.e

10、xecute,得到 Google 返 回的搜索結(jié)果。由于本文只需要搜索路徑,因此只顯示和保存 URL 地址(result.unescapedUrl), 通過 XMLHTTPRequest 發(fā)送給服務(wù)器,在服務(wù)器端保存需要的 URL 地址。 Google 的 高級搜索語 法 9“inurl:someKeyword” , 表 示只搜 索 URL 地址中含 有 “someKeyword”的頁面?!?filetype:someType ”,表示過濾文件類型為“someType”的結(jié)果。 “intitle:someKeyword”, 表示只搜索頁面標(biāo)題中含有“someKeyword”的頁面?!発ey1

11、OR key2” 表示搜索包含關(guān)鍵字“key1”或者“key2”的結(jié)果。  圖 1 基于 Google API 的頁面 通過對各個(gè)學(xué)啊院的觀察,可以發(fā)現(xiàn)以下兩個(gè)重要規(guī)律:1.集中含有課程信息的頁面 URL 地址中含有關(guān)鍵詞“course”或者“courses” 2.集中含有教師信息的頁面 URL 地址中含有關(guān)鍵 詞“faculty”?;谝陨蟽蓚€(gè)規(guī)律,按以下步驟來發(fā)現(xiàn)搜索路徑,其中(3)(4)的搜索結(jié)果以 txt 形式保存于服務(wù)器上,為包裝器提供路徑。 2.2 WEB 頁面的分析和信息提取 基于 WEB 頁面結(jié)構(gòu)分析的包裝器利用 Apache 的開源項(xiàng)目HTMLParser,使用的版

12、 本為 1.6。HTMLParser 是一個(gè)簡單而功能強(qiáng)大的 Java HTML 解析器庫,可以分析和處理 WEB 文檔的內(nèi)容,包括一些通用的服務(wù)器端標(biāo)簽。 基類主要包括三個(gè)函數(shù): (1) insert(),向 Lucene 的索引插入課程信息的函數(shù) (2) count(),統(tǒng)計(jì) Lucene 的索引收錄的項(xiàng)(document)的數(shù)目,以便看出一次運(yùn)行添加了 多少個(gè)課程 (3) getDescription(String url),通過分析指定 link 在 Schedule Of Classes 的 WEB 頁面結(jié) 構(gòu)來獲得課程簡介,算法偽代碼見圖 2:(4)1. 根據(jù) 2.1 獲得的 UR

13、L 地址初始化 HTMLParser 的分析器 parser,設(shè)置編碼方式 2. 根據(jù) WEB 頁面結(jié)構(gòu)選擇適合的 Filter,比如本頁面要提取課程簡介,則該節(jié)點(diǎn)必定含有關(guān)鍵詞 Description,因此選用 StringFilter coursefilter = new StringFilter("Description") 3. NodeList nodelist =過濾得到的所有 Description 節(jié)點(diǎn) 4. if (nodelist.size() = 0) /dexcription 不存在,相當(dāng)于本頁不存在,因?yàn)橹灰撁娲嬖诰捅囟ê?Descriptio

14、n 結(jié)點(diǎn) return null; /說明本 URL 地址的頁面不存在 5. else(dexcription 存在) 重置 HTMLParser 的 parser,根據(jù) WEB 頁面結(jié)構(gòu)選擇更加精確的 filter /通過對頁面的源碼分析發(fā)現(xiàn)課程簡介的源碼組織方式都為 /<P><font size="2" face="helvetica,arial">課程簡介</font> /因此設(shè)置用 AndFilter 將 filter 設(shè)置為必須同時(shí)滿足三個(gè)條件 AndFilter andfilter =結(jié)點(diǎn)名為<font>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論