郭力潔,李新葉,宋金澮
(華北電力大學(xué)電子與通信工程系,河北保定 071003)
分面搜索起源于都靈大學(xué)的信息系,是計(jì)算機(jī)科學(xué)家、信息科學(xué)家、界面設(shè)計(jì)者、可用性研究人員都感興趣的一個(gè)話題。分面(Facet)一詞在國(guó)內(nèi)信息組織領(lǐng)域一般被翻譯為分面,分面是指事物的多維度屬性,例如一本書包含主題、作者、年代等分面。而分面搜索是指通過事物的這些屬性不斷篩選、過濾搜索結(jié)果的方法,可以將分面搜索看成搜索和瀏覽的結(jié)合。人們看待事物的角度多種多樣,分面為這種多維角度的認(rèn)知提供了靈活支持,企業(yè)搜索、信息架構(gòu)、交互界面設(shè)計(jì)、多維數(shù)據(jù)庫(kù)等多個(gè)領(lǐng)域都在利用分面劃分的思想。分面搜索作為一種有效的搜索方式,已經(jīng)被用在電子商務(wù)、音樂、旅游等多個(gè)方面。例如拍拍網(wǎng)將T恤分成款式、衣長(zhǎng)、尺碼、顏色等分面,谷歌音樂將歌曲分為節(jié)奏、聲調(diào)、音色、年代、流派等分面。也有人認(rèn)為分面是語(yǔ)義的初級(jí)階段,分面的方式可以看作是語(yǔ)義搜索的一種類型,充分揭示和表達(dá)關(guān)系。
事實(shí)上,這種探索式訪問適用于及其廣泛的實(shí)際情況,例如在“在線信息訪問系統(tǒng)”分面搜索已經(jīng)越來越流行了,尤其是在電子商務(wù)[1]和網(wǎng)站搜索應(yīng)用方面。如電子政務(wù)[2]、多媒體數(shù)據(jù)庫(kù)[3]、數(shù)字圖書館、軟件開發(fā)[4]等領(lǐng)域。
分面搜索有效提高了信息檢索的效率,改善了用戶體驗(yàn),對(duì)于交互式信息檢索的研究既有一定的理論價(jià)值,又有重要的實(shí)踐意義。
分面搜索(Faceted Search)提供的結(jié)果是上下文相關(guān)的,用戶選擇某個(gè)條件后,分面結(jié)果會(huì)在該條件限定下的結(jié)果集中動(dòng)態(tài)獲取,從而能夠從不同的角度對(duì)數(shù)據(jù)進(jìn)行歸類整合,幫助用戶進(jìn)一步了解需要獲取的數(shù)據(jù)信息。在查詢過程中,用戶可靈活地切換導(dǎo)航面;另一個(gè)顯著優(yōu)點(diǎn)解決了查詢結(jié)果為空集的難題,改善了用戶體驗(yàn)[5]。分面搜索的優(yōu)勢(shì)可以總結(jié)為以下3點(diǎn):首先,分面搜索支持用戶根據(jù)自己的需要選取不同的分面進(jìn)行篩選,而不必按照網(wǎng)站預(yù)先設(shè)定的單一方式尋找;其次,分面搜索允許用戶自己創(chuàng)建搜索路徑,并且可以隨時(shí)擴(kuò)大和縮小結(jié)果范圍;最后,分面搜索只展現(xiàn)有對(duì)應(yīng)結(jié)果的選項(xiàng),避免了結(jié)果為空的情況。并且一般在搜索前提示用戶該選項(xiàng)內(nèi)包含的結(jié)果數(shù)量,給用戶良好的操作前提示。
建立一個(gè)分面搜索系統(tǒng)的關(guān)鍵問題是選擇什么樣的面和值來讓用戶隨時(shí)可用。當(dāng)文件涉及范圍非常廣的時(shí)候,這個(gè)問題尤其重要。一些系統(tǒng)顯示給用戶所有可能的分面值。這種方法會(huì)很快地淹沒用戶,導(dǎo)致削弱用戶性能。其他的系統(tǒng)如eBay Express,向用戶顯示一個(gè)手動(dòng)選擇面的子集,和分面-值(Facet-Values)排名基于他們的頻率。其他的系統(tǒng)如Flamenco,簡(jiǎn)單地顯示按字母表順序排列的前幾個(gè)分面-值。對(duì)于有很多面的系統(tǒng)來說,手動(dòng)選擇和維護(hù)分面太費(fèi)時(shí)。而且一個(gè)預(yù)先定義的界面不能滿足所有用戶的需求。需要的是一個(gè)自動(dòng)選擇面和值的機(jī)制,根據(jù)用戶行為向用戶顯示,在一次搜索中,使預(yù)期的效用最大化。
在用戶不確定自己找的目標(biāo),即信息需求比較模糊的情況下進(jìn)行某一主題的搜索時(shí),以分面方式展示的導(dǎo)航是非常有用的搜索輔助功能。目前興起的分面導(dǎo)航[8]技術(shù)在圖書館學(xué)領(lǐng)域廣泛應(yīng)用的基礎(chǔ)上,逐步向其他領(lǐng)域滲入,而導(dǎo)航屬性的選取主要通過領(lǐng)域?qū)<抑付ǎ狈?duì)面導(dǎo)航能力的評(píng)價(jià)體系。文獻(xiàn)[9]主要從數(shù)據(jù)導(dǎo)航的角度出發(fā),提出了一種基于分面瀏覽技術(shù)的持久化RDF語(yǔ)義數(shù)據(jù)的存儲(chǔ)策略,利用統(tǒng)計(jì)學(xué)的方法從RDF實(shí)例中挖掘出適合作為面的謂詞,并利用層次聚類方法對(duì)統(tǒng)計(jì)過程丟失的適合作為導(dǎo)航能力的屬性考察。不同的導(dǎo)航模式使用戶在不同的方向上改變查詢。文獻(xiàn)[11]提出了4種導(dǎo)航模式:Zoom-in使得查詢更精確;Zoom-out使得查詢更廣泛;Shift通過一個(gè)相關(guān)概念替換一個(gè)查詢概念;Pivot通過一個(gè)相關(guān)概念替換整個(gè)查詢。
與分面搜索最相關(guān)的人就是馬蒂.赫斯特,他加入加州大學(xué)的伯克利分校,全心從事研究工作:Flamenco項(xiàng)目。弗拉明戈項(xiàng)目代表了近十年來對(duì)分面搜索工具的研究工作,它的核心是一個(gè)開源的分面搜索系統(tǒng),該系統(tǒng)支持層次分面[6]。除了建立分面搜索的工具,赫斯特和他的同事還研究了接口設(shè)計(jì)、自動(dòng)元數(shù)據(jù)創(chuàng)建等問題。其他學(xué)術(shù)上的研究成果還有RB++、mSpace、Freebase Parallax,其中 Parallax 把分面搜索推廣到了與語(yǔ)義網(wǎng)有關(guān)的一般的本體。
分面搜索最大的成功應(yīng)該是它在商業(yè)領(lǐng)域的應(yīng)用:(1)ENDECA:ENDECA成立于1999年,它為電子商務(wù)網(wǎng)站(如Wal-Mart and Home Depot)提供分面搜索,但是它還把這技術(shù)應(yīng)用于制造業(yè)、出版業(yè)、財(cái)經(jīng)服務(wù)和政府等領(lǐng)域。Endeca的特點(diǎn)就是以分面搜索為核心,進(jìn)行電子商務(wù)和網(wǎng)站搜索應(yīng)用。Triangle Research Libraries Network[7]是一個(gè) ENDECA 支持的應(yīng)用。(2)eBAY:易趣網(wǎng)最初是以在線拍賣網(wǎng)站出名的,2006年易趣網(wǎng)從事的一個(gè)項(xiàng)目叫eBay Express,它也使用分面搜索。(3)AMAZON:亞馬遜成立于1994年,是美國(guó)最大的在線零售商,開始只是賣書,后來發(fā)展到了各種商品以及服務(wù)。
雖然分面搜索首先應(yīng)用于商業(yè),但是后來也得到了開源社區(qū)的關(guān)注。2006年CNET網(wǎng)站推出了Solr,Solr一開始是為L(zhǎng)ucene項(xiàng)目開發(fā)的,Lucene是應(yīng)用最廣泛的開源搜索庫(kù),雖然Solr對(duì)Lucene平臺(tái)進(jìn)行了一些改進(jìn),但最重要的是引進(jìn)了分面搜索,另外一個(gè)使用分面搜索的有名的開源社區(qū)是Drupal,這是一個(gè)開源內(nèi)容管理平臺(tái)。
除了針對(duì)于RDF數(shù)據(jù)進(jìn)行分面搜索,還有針對(duì)XML文檔進(jìn)行的分面搜索,INEX會(huì)議是XML檢索界最著名的測(cè)評(píng)會(huì)議,在2011年INEX會(huì)議上首次提出了對(duì)以數(shù)據(jù)為中心的結(jié)構(gòu)豐富的XML文檔的分面搜索評(píng)測(cè)任務(wù)。
大量的信息會(huì)把用戶淹沒,于是出現(xiàn)了許多改善分面推薦的算法。文獻(xiàn)[8]提出把分面瀏覽看作是構(gòu)建和遍歷一棵決策樹,幫助選擇能夠?yàn)g覽這棵樹的最有效的分面。文獻(xiàn)[12]介紹把最有價(jià)值的分面顯示給用戶必須遵循的原則包括:
(1)支持結(jié)果集中覆蓋率高的分面,尤其是當(dāng)某分面的值包含在所有的文檔中時(shí),而不是僅存在于一小部分文檔中。
(2)支持分面值分布熵很高的分面,例如,某分面有10個(gè)值,如果這10個(gè)值分布均勻的話,該分面更有價(jià)值。
分面搜索的另一個(gè)新的研究方向就是個(gè)性化的分面搜索。文獻(xiàn)[10]提出對(duì)于每一個(gè)用戶的行為使用協(xié)同過濾和個(gè)性化自定義搜索界面。一個(gè)面搜索界面逐步引導(dǎo)用戶在一個(gè)推薦的查詢精練列表里選擇來縮小范圍,而不是等著用戶從零開始創(chuàng)建結(jié)構(gòu)化查詢。文獻(xiàn)[10]還提出使用明確的用戶評(píng)分,產(chǎn)生智能的分面搜索界面,它自動(dòng)選擇面-值,根據(jù)用戶偏好創(chuàng)建一個(gè)界面。
分面搜索研究領(lǐng)域還存在許多問題需要解決:
(1)分面多時(shí)全部顯示分面會(huì)淹沒用戶視線:由于屏幕實(shí)際大小的限制以及人的注意力的限制,不能顯示所有的分面和值,需要每一步推薦分面來精練查詢。當(dāng)存在少量分面時(shí),固定顯示所有分面;當(dāng)存在大量分面時(shí),不可能同時(shí)顯示所有分面,需要有效的分面推薦算法來計(jì)算最有效的分面[14]。
(2)傳統(tǒng)的分面搜索技術(shù)適用于結(jié)構(gòu)化數(shù)據(jù),對(duì)于XML這種半結(jié)構(gòu)化數(shù)據(jù)等的搜索不適用:分面搜索是基于分面分類系統(tǒng)來組織文檔集的。然而人們通常擁有的數(shù)據(jù)集是非結(jié)構(gòu)化文本,或是半結(jié)構(gòu)化的文檔,如XML文檔,這種情況下由于分面搜索要求文檔包含元數(shù)據(jù),沒有元數(shù)據(jù),就成了文本搜索。需要采用一些技術(shù),豐富非結(jié)構(gòu)化文本來獲取元數(shù)據(jù),這些技術(shù)都屬于文本挖掘領(lǐng)域。以下列出了一些基本策略[12]:1)挖掘潛在的元數(shù)據(jù),例如文檔來源、類型、大小等。2)基于規(guī)則或統(tǒng)計(jì)對(duì)文檔進(jìn)行分類,分成預(yù)定義的幾類,多個(gè)獨(dú)立分類可以作為不同的分面。半結(jié)構(gòu)化的XML文檔的分面搜索可以看成是結(jié)構(gòu)化數(shù)據(jù)的分面搜索與文本搜索相結(jié)合。
(3)數(shù)據(jù)量大時(shí)分面搜索的計(jì)算效率:精練查詢的計(jì)算量遠(yuǎn)大于計(jì)算滿足查詢約束的結(jié)果的計(jì)算量,如何有效地執(zhí)行集合之間的交集運(yùn)算是提高效率的關(guān)鍵。計(jì)算精練結(jié)果有兩種方法:自上而下、自下而上。自上而下的方法利用倒排索引,遍歷每一個(gè)分面-值,計(jì)算結(jié)果集中包含所有分面值的文檔的交集;自下而上的方法重復(fù)迭代結(jié)果集中每一個(gè)文檔,計(jì)算每一個(gè)文檔所包含的分面-值。兩種方法的計(jì)算量都取決于倒排索引和文檔的數(shù)據(jù)結(jié)構(gòu),如果訪問外部存儲(chǔ)器的話,自下而上的方法計(jì)算量相當(dāng)大,所以自上而下的方法相對(duì)好。Yonik Seeley,Solr的創(chuàng)始人,采用了一種方法把兩種方法結(jié)合在一起得到了更高的效率[13]。
該綜述重點(diǎn)介紹了分面搜索的研究歷史、現(xiàn)狀、已取得的研究成果以及研究方法等。論述了該領(lǐng)域已解決的問題、尚存在的問題。綜合分析了分面搜索以往研究的優(yōu)點(diǎn)、不足和貢獻(xiàn),總結(jié)了分面搜索新的研究方向和趨勢(shì):以往的分面搜索是對(duì)結(jié)構(gòu)化的數(shù)據(jù)進(jìn)行檢索,未來的研究可能對(duì)半結(jié)構(gòu)化的XML文檔進(jìn)行分面檢索,通過分面推薦有效提高信息檢索的效率,改善用戶體驗(yàn)。
[1] SACCO G M.Dynamic taxonomies and guided searches[J].Journal of the American Society for Information Science and Technology,2006,57(6):792 -797.
[2] SACCO G M.Analysis and validation of information access through mono,multidimensional and dynamic taxonomies[C].Germany Springer:FQAS 2006,LNAI 4027,2006:659 -670.
[3] SACCO G M.Uniform access to multimedia information bases through dynamic taxonomies[C].IEEE 6th Int.Symp.on MultimediaSoftwareEngineering,(ISMSE'04),2004:320-328.
[4] NIU Nan,ANAS M,YANG Xiaoyong.Faceted navigation for software exploration[C].19thIEEE International Conference on Program Comprehension,2011:200 -205.
[5] 陳波.基于開源全文檢索系統(tǒng)Solr的OPAC分面瀏覽[J].應(yīng)用實(shí)踐,2007(11):72 -75.
[6] Geeknet Inc.MinGW - minimalist GNU for windows[EB/OL].(2009 -12 -31)[2011 -12 -20]http://sourceforge.net/projects/flamenco.
[7] Capitol Broadcasting Company,Inc.TRLN offers"search TRLN"[EB/OL].(2010-12-02)[2011-11-19]www.search.trln.edu.
[8] OREN E,DELBRU R,DECKER S.Extending faceted navigation for RDF data[C].ISWC 2006,LNCS 4273,2006:559 -572.
[9] 王莉,高仲利.基于分面導(dǎo)航理論的RDF數(shù)據(jù)的持久化研究[J].計(jì)算機(jī)工程與應(yīng)用,2010,46(9):130 -133.
[10] JONATHAN K,ZHANG Yi,LIU Xue.Personalized interactive faceted search.[C].Beijing:IEEE 26thInternational Confrance,2008.
[11] S'EBASTIEN FERR'E.Agile browsing of a document collection with dynamic taxonomies[C].19th International Conference on Database and Expert Systems Application.DOI10.1109/DEXA,2008:377 -381.
[12] DANIEL T.Facetedsearch cynthesis lectures on information concepts[M].USA:Retrieval,and Services,2009.
[13] LEAVE C.Advanced filter caching in solr[EB/OL].(2011-09 -02)[2011 -12 -26]http://yonik.wordpress.com/2008/11/25/solr-faceted-search-performance-improvements.
[14] GIOVANNI M S,YANNIS T.Dynamic taxonomies and faceted search [M].USA:Theory,Practice,and Experience Press,2009.