Web Information Extraction的survey paper閱讀心得
2008年8月6日 星期三 by 哲民
老師回國後,曾找個時間跟老師談了一下。老師對於研究方向的看法,基本上是希望學生能夠找有興趣的方向去作。我在各個領域其實都不會很排斥,只是對social network方面有多一點的接觸,所以對這方面興趣也稍微多一點。不過在跟老師談完之後,知道從web上作data extraction的工作在許多方面的應用上都很需要,加上之前跟學長合作的過程中覺得這部份具有核心技術的地位,因此覺得或許可以往這部份作發展。然而這個領域的理論也不少,老師建議可以先從閱讀survey部份開始入門。
我看的paper主要是以老師在2006發表的"A Survey of Web Information Extraction Systems"這篇paper為主,雖然是survey,但是看起來仍然頗為吃力,因為之前在這部份的接觸並不多。其中有許多不太了解的專有名詞如Tree Edit Distance或是資料結構如Suffix Tree等等,甚至演算法方面像ILP method或是ACME technique之前其實也沒聽過。雖然有上網稍微查了一下,不過在理解程度上還是很膚淺。透過這篇survey的研讀,真的可以感覺到這個領域的理論似乎不少,之後打算跟老師請教一些更細節方面的問題還有相關建議閱讀的paper。
Information extraction的工作在過去主要是針對free-text來作,這部份的技術較多的是使用有關自然語言處理的理論;但是近來Web流行,因此對Web Page上面的data extraction也越來越受到注意,這部份使用的技術比較傾向於machine-learning或是pattern matching。而用來作information extraction的程式,比較廣一點來說,就是所謂的Wrapper。在Web上,就好像一層介面包覆在網站外面提供使用者對頁面資料作抽取的工作。而產生Wrapper的方法則稱為Wrapper Induction,主要分成四個類型:手動方式建立、supervised、semi-supervised以及unsupervised。
站在系統應用的角度上,不太可能靠手動方式去作,畢竟很難要求每個使用者都會寫程式,而且效率也極低。由於這個原因,因此才開始慢慢發展出supervised、semi-supervised到unsupervised的方式。unsupervised的自動化程度最高,將使用者選取所需資訊的行為降到最低,因此這個方法在應用上漸漸成為趨勢。但是自動化所帶來的副作用就是限制性也最高,一般而言都是用在同一個或是類型相似度高的網站上。因此盡量提高應用在不同網站的程度,是這類方法的研究中心。至於supervised的方法雖然需要比較繁複的使用者標記工作,但是藉由加入適當的features可以提高不同種類網站的資料抽取能力。
在閱讀paper的過程中,看到Deep Web(Hidden Web)這個名詞,才明白到原來目前search engine還有大部份的Web Pages是無法收集到的,而無法收集到的Pages數量占所有網路上Pages的大部份比例。也因為這種情況,Wrapper應運而生。Wrapper的主要目的可以說就是把Deep Web背後的資料挖出來,然後抽取並輸出成結構性的格式如XML。關於這部份,Google似乎對其Crawler的設計打算作改善,可以在遇到要輸入查詢字串的Form元素時填入keyword來收集到Deep Web的深層資訊。看來Deep Web的概念將會越來越模糊,而到時從網頁抽取資料的技術與方式不知是否會有所改變?
最後,與從網頁中抽取資料的相關研究還有所謂的semantic web。我目前的理解可能是在網頁中加入一些meta data或是可以讓程式區分資料不同的元素。如果web page依照這樣的方式作設計,那在資料抽取的過程將會比較簡單而且精準。以設計層面來看,我覺得這是一種正確的方式,也是我所喜愛的方式─從根本上解決問題。但以目前的應用層面來看,似乎還有很長的路要走?
今天meeting跟老師談完後,老師很有耐心地回答一些問題,並給了一些選讀paper方向上的建議。我打算先把一些相關的paper收集起來,然後再詢問老師的意見,之後就安排一些研讀進度跟老師報告。這樣可以在報告中讓老師知道我是否有地方不是了解很透徹,如果有問題也可以當面跟老師請教,這樣應該能夠比較快速地在這方面學習到一些背景知識。