當前位置:吉日网官网 - 紀念幣收藏 - 加分搜索引擎的工作機制

加分搜索引擎的工作機制

搜索引擎是壹個依靠技術取勝的產品,搜索引擎的所有組件,包括頁面收集器、索引器和檢索器,都是搜索引擎產品提供商競爭的焦點。

近年來,搜索引擎的商業化取得了巨大的成功,如Google、Yahoo(本文中為英文Yahoo)、百度等著名搜索引擎公司的成功上市,使得許多公司涉足這壹領域,並帶動了大量的人力和資本投入。就連軟件巨頭微軟也禁不住誘惑,積極打造自己的搜索引擎。但是在性能上,目前的搜索引擎並不盡如人意,搜索返回的結果往往與用戶的檢索要求相差甚遠,有效性並不是很高。本文將對搜索引擎的工作原理及其實現技術進行分析,從中可以了解哪些因素限制了搜索引擎用戶體驗的提升。

搜索引擎的工作過程

大型互聯網搜索引擎的數據中心壹般運行幾千甚至幾十萬臺計算機,每天都有幾十臺機器加入計算機集群,以跟上網絡的發展。采集機自動采集web信息,平均速度為每秒幾十個網頁,而檢索機提供容錯的可擴展架構,每天處理幾千萬甚至上億的用戶查詢請求。企業搜索引擎可以根據不同的應用規模,從單臺計算機部署到計算機集群。

搜索引擎的壹般工作流程是:?首先收集互聯網上的網頁,然後對收集到的網頁進行預處理,建立網頁索引數據庫,可以實時響應用戶的查詢請求,並將找到的結果按照壹定的規則進行排序,返回給用戶。搜索引擎的重要功能是為互聯網上的文本信息提供全文檢索。

圖1?搜索引擎的工作流程

搜索引擎通過客戶端程序接收用戶的檢索請求。現在最常見的客戶端程序是瀏覽器,但實際上也可以是用戶開發的簡單得多的網絡應用。用戶輸入的搜索請求壹般是由邏輯符號連接的關鍵詞或多個關鍵詞。搜索服務器根據系統關鍵詞詞典將搜索關鍵詞轉換為詞ID,然後在索引庫(倒排文件)中獲取壹個docID列表,掃描docID列表中的對象並與詞ID進行匹配,提取出符合條件的網頁,然後計算網頁與關鍵詞的相關度,將前k個結果(不同搜索引擎每頁搜索結果數不同)返回給。

圖2描述了通用搜索引擎的系統架構,包括頁面收集器、索引器、檢索器、索引文件等。下面介紹主要部分的功能實現。

圖二?搜索引擎各組件之間的關系

收藏者

收集器的功能是漫遊互聯網,發現和收集信息。它收集的信息類型多種多樣,包括HTML頁面、XML文檔、新聞組文章、FTP文件、文字處理文檔、多媒體信息等等。搜索器是壹個計算機程序,其實現往往采用分布式和並行處理技術,以提高信息發現和更新的效率。商業搜索引擎的收集者每天可以收集數百萬甚至更多的網頁。壹般來說,搜索者應該保持運行,盡可能多、盡可能快地收集互聯網上的各種新信息。因為網上的信息更新快,所以需要定期更新收集的舊信息,避免死鏈接和無效鏈接。此外,由於Web信息是動態的,所以收集器、分析器和索引器要定期更新數據庫,更新周期通常在幾周甚至幾個月左右。索引數據庫越大,更新就越困難。

互聯網上的信息如此之多,即使是壹個強大的收集者也無法收集互聯網上的所有信息。因此,收集器使用某些搜索策略來遍歷互聯網並下載文檔。比如壹般采用寬度優先搜索策略,輔以線性搜索策略。

當實現收集器時,系統中會維護壹個超鏈接隊列或堆棧,其中包含壹些初始URL。收集器從這些URL下載相應的頁面,並從中提取新的超鏈接以加入隊列或堆棧。上述過程重復隊列,直到堆棧為空。為了提高效率,搜索引擎按照域名、IP地址或國家域名劃分網頁空間,使用多個收集器並行工作,讓每個搜索器負責搜索壹個子空間。為了將來擴展服務,收集器應該能夠改變搜索範圍。

1.線性收集策略

線性搜索策略的基本思想是從壹個初始IP地址開始,以遞增的方式搜索後續每個IP地址中的信息,而不考慮每個站點的HTML文件中指向其他網站的超鏈接地址。這種策略不適合大規模搜索(主要是因為IP可能是動態的),但可以用於小規模的綜合搜索。使用這種策略的收集者可以找到新的HTML文件信息源,這些信息源很少被引用或者沒有被其他HTML文件引用。

2.?深度優先收集策略

深度優先收集策略是收集器早期發展中廣泛使用的方法,其目的是到達被搜索結構的葉節點。深度優先搜索跟隨HTML文件上的超鏈接,直到不能再進壹步,然後返回到上壹個聯系人的HTML文件,然後繼續選擇HTML文件中的其他超鏈接。當沒有其他超鏈接可供選擇時,搜索就結束了。深度優先搜索適合遍歷指定站點或壹組深度嵌套的HTML文件,但對於大規模搜索,由於Web的深層結構,可能永遠出不來。

3.?寬度優先收集策略

寬度優先的收集策略是先搜索同壹層的內容,然後繼續搜索下壹層。如果壹個HTML文件中有三個超鏈接,選擇其中壹個並處理對應的HTML文件,然後返回選擇第壹個網頁的第二個超鏈接,處理對應的HTML文件,然後返回。處理完同壹圖層上的所有超鏈接後,您可以開始在剛剛處理的HTML文件中搜索其余的超鏈接。這樣就保證了淺層先處理,遇到無止境的深支,就不會再陷進去了。寬度優先收集策略易於實現,應用廣泛,但需要很長時間才能到達深層HTML文件。

4.?收集策略

有些網頁可以通過用戶提交來收藏。例如,壹些商業網站向搜索引擎發送收錄申請,采集者可以定向采集提交申請的網站的網頁信息,添加到搜索引擎的索引數據庫中。

分析者

壹般來說,應該首先分析收集器收集的網頁信息或下載的文檔,以建立索引。文檔分析技術通常包括:?分詞(有些只從文檔的某些部分提取單詞,如Altavista)、過濾(使用非索引字表)、轉換(有些進行單復數轉換、詞綴去除、同義詞轉換等)。),這往往與具體的語言和系統的索引模型密切相關。

分度器

索引器的作用是對檢索者檢索到的信息進行分析處理,從中提取索引項,用它們來表示文檔,生成文檔庫的索引表。有兩種索引項:元數據索引項和內容索引項。元數據索引項與文檔的語義內容無關,如作者姓名、URL、更新時間、代碼、長度、鏈接流行度等。?內容索引項用於反映文檔的內容,如關鍵詞及其權重、短語、單詞等。內容索引項可分為單個索引項和多個索引項(或短語索引項)。單索引項是英語的英文單詞,因為單詞之間有自然的分隔符(空格),所以更容易提取;?對於漢語等連續書寫語言,分詞是必要的。在搜索引擎中,壹般需要給單個索引項賦予壹個權重,以表示該索引項對文檔的區分程度,並計算查詢結果的相關度。使用的方法壹般包括統計學、信息論和概率論。短語索引項的提取方法有統計學、概率論和語言學。

為了快速找到特定的信息,建立索引數據庫是壹種常用的方法,即將文檔表示為壹種方便檢索和存儲在索引數據庫中的方式。索引數據庫的格式是壹種特殊的數據存儲格式,它依賴於索引機制和算法。索引的質量是網絡信息檢索系統成功的關鍵因素之壹。壹個好的索引模型應該易於實現和維護,檢索速度快,空間要求低。搜索引擎壹般會借鑒傳統信息檢索中的索引模型,包括倒排文檔、向量空間模型、概率模型等。例如,在向量空間索引模型中,每個文檔D被表示為歸壹化向量V(d)=(t1,w1?(d)…ti,w1(d)…tn,wn(d))。其中ti是入口項,wi(d)是ti在D中的權重,通常定義為ti出現在D中的頻率tfi(d)的函數。

索引器的輸出是壹個索引表,壹般采用倒置形式(Inversion?List),即按索引項搜索對應的文檔。索引表還可以記錄索引項在文檔中出現的位置,以便搜索者可以計算索引項之間的接近度。索引器可以使用集中式索引算法或分布式索引算法。當數據量較大時,實時索引(Instant?索引),否則妳跟不上信息的快速增加。索引算法對索引器的性能影響很大,比如大規模峰值查詢的響應速度。搜索引擎的有效性很大程度上取決於索引的質量。

取回的人

檢索器的功能是根據用戶的查詢,在索引數據庫中快速檢出文檔,評估文檔與查詢的相關性,對結果進行排序輸出,並實現某種用戶相關性反饋機制。檢索者常用的信息檢索模型有很多,如集合論模型、代數模型、概率模型、混合模型等,可以查詢文本信息中的任意詞,無論是出現在標題中還是文本中。

檢索器從索引中找出與用戶查詢請求相關的文檔,利用理解索引文檔的方法處理用戶的查詢請求。例如,在向量空間索引模型中,用戶查詢Q首先表示為歸壹化向量V(q)=(t1,w 1(Q);?…;?ti,wi(q);?…;?Tn,wn(q)),然後按照某種方法計算用戶查詢與索引數據庫中每個文檔的相關度,相關度可以表示為查詢向量V(q)與文檔向量V(d)之間夾角的余弦。最後,相關性大於閾值的所有文檔按照相關性遞減的順序排列並返回給用戶。當然,搜索引擎的相關性判斷可能並不完全符合用戶的需求。

用戶界面

用戶界面的作用是為用戶提供查詢輸入和結果輸出的可視化界面,方便用戶輸入查詢條件、顯示查詢結果、為用戶提供相關的反饋機制等。其主要目的是方便用戶使用搜索引擎,高效、多樣地從搜索引擎中獲取有效信息。用戶界面的設計和實現必須基於人機交互的理論和方法,以適應人類的思維和使用習慣。

在查詢界面中,用戶根據搜索引擎的查詢語法,制定要搜索的術語和各種簡單或高級的搜索條件。簡單界面只提供文本框供用戶輸入查詢字符串,復雜界面允許用戶限制查詢條件,如邏輯運算(與、或、非)、鄰近(相鄰、近)、域名範圍(如edu、com)、出現位置(如標題、內容)、時間信息、長度信息等。目前,壹些公司和機構正在考慮制定查詢選項的標準。

在查詢輸出界面,搜索引擎將搜索結果顯示為線性文檔列表,包含文檔標題、摘要、快照、超鏈接等信息。由於檢索結果中的相關文檔和無關文檔相互混雜,用戶需要逐壹瀏覽才能找到所需的文檔。

搜索引擎的中文分詞技術

中文自動分詞是網頁分析的基礎。在網頁分析過程中,中文和英文是區別對待的,因為中文信息和英文信息有壹個明顯的區別:英文單詞之間有空格,而中文文本中單詞之間沒有分隔符。這就要求在分析中文網頁之前,要把網頁中的句子切割成壹個詞的序列,這就是中文分詞。中文自動分詞涉及許多自然語言處理技術和評價標準。在搜索引擎中,我們主要關心中文自動分詞的速度和準確率。分詞的準確率對於搜索引擎來說非常重要,但是如果分詞速度太慢,即使準確率再高,也是搜索引擎所不具備的,因為搜索引擎需要處理上億的網頁,如果分詞時間過長,會嚴重影響搜索引擎的內容更新速度。因此,搜索引擎對分詞的準確性和速度提出了很高的要求。

目前成熟的中文自動分詞技術是基於分詞詞典的機械分詞方法。這種方法是將待分析的漢字字符串按照壹定的策略與詞典中的詞條進行匹配。根據匹配策略的不同,機械分詞有幾種算法:?正向最大匹配算法、反向最大匹配算法、最小分詞算法等。這種方法的優點是分詞速度快,壹定程度上保證了準確率,但對未登錄詞的處理效果較差。實驗結果表明:正向最大匹配的錯誤率約為1/169,反向最大匹配的錯誤率約為1/245。另壹種常用的中文自動分詞方法是基於統計的分詞方法,這種方法是在沒有詞典切分的情況下,統計詞組在語料庫中出現的頻率,因此也稱為無詞典分詞方法。但這種方法往往把不是詞的常用詞當成詞,常用詞識別準確率差,時間和空間開銷也比較大。在搜索引擎領域的實際應用中,機械分詞方法壹般與統計分詞方法相結合。首先進行串匹配分詞,然後用統計的方法識別壹些未註冊的新詞。這既發揮了匹配分詞速度快、效率高的優勢,又利用了統計分詞中新詞自動識別、自動消歧的特點。

分詞詞典是影響中文自動分詞的重要因素。其規模壹般在6萬字左右,詞典不宜過大或過小。?詞典太小,有些詞無法切分,詞典太大,會大大增加切分過程中的起義現象,也影響分詞的準確性。所以分詞詞典的詞條選擇是非常嚴格的。對於新詞不斷出現的網絡領域,使用壹個6萬字左右的分詞詞典是不夠的,但是隨意在分詞詞典中添加新詞會導致分詞準確率下降。壹般的解決辦法是使用輔助詞典,規模在50萬字左右。另外,中文自動分詞的難點在於分詞歧義的處理和未登錄詞的識別。如何處理這兩個問題壹直是該領域的熱門話題。

1.?歧義處理

歧義意味著可能有兩種或兩種以上的分割方法。比如:?短語“膚淺”可以分為“膚淺+”和“膚淺+”,因為“膚淺”和“膚淺+”都是詞。這就是所謂的交叉歧義。這種交叉歧義很常見,“妝與服”又可分為“妝+和+服”或“妝+和服+服”。因為沒有人有知識去理解,所以計算機很難知道哪個方案是正確的。

交叉歧義比組合歧義相對容易處理,組合歧義必須根據整個句子來判斷。

比如,在“這個門把手壞了”這句話裏,“把手”是壹個詞,但在“請把手拿開”這句話裏,“把手”不是壹個詞;?在“將軍任命了壹個中將”這句話裏,“中將”是壹個詞,但在“三年後產量將增加兩倍”這句話裏,“中將”已經不是壹個詞了。計算機如何識別這些單詞?

即使交叉模糊和組合模糊可以用計算機解決,但模糊度中還有壹個難題,就是真模糊。真正的歧義是給壹個句子,人們不知道哪個應該是單詞,哪個不是。比如:?“乒乓球拍賣結束”可分為“乒乓球+球拍+賣出+成交”或“乒乓球+拍賣+成交+成交”。如果沒有上下文中的其他句子,恐怕沒有人知道“拍賣”在這裏是不是壹個詞。

處理歧義的方法壹般采用類似動態規劃的算法,將歧義的求解轉化為壹個優化問題的求解。在求解過程中,壹般利用詞頻或概率等輔助信息,得到壹個最大可能的分詞結果,從某種意義上說是最好的。

2.?未註冊的文字處理

未登錄詞是分詞詞典中找不到的詞,也稱為新詞。最典型的有人名、地名、專業術語等。例如,人們很容易理解“王去了廣州”這句話。“王”是壹個單詞,因為它是壹個人的名字,但計算機很難識別它。如果把“王”作為壹個詞收入字典,全世界有那麽多名字,而且壹直都有新名字。包括這些名字是壹個巨大的工程。即使這項工作能夠完成,仍然會有問題,如:在“王軍虎頭虎腦”這句話中,“王”還能算作壹個詞嗎?

除了人名,還有機構名、地名、產品名、品牌名、縮寫、省略號等。,這些都是很難處理的,而這些只是人們經常使用的詞,所以搜索引擎在分詞系統中識別新詞是非常重要的。目前對未登錄詞的處理壹般采用統計的方法。首先從語料庫中統計出出現頻率高的詞組,然後按照壹定的規則作為新詞加入輔助詞典。

目前,中文自動分詞技術已經廣泛應用於搜索引擎,分詞準確率達到96%以上。然而,現有的中文自動分詞技術在分析和處理大規模網頁時仍然存在很多不足,比如上面提到的歧義和對未註冊詞的處理。因此,北京大學、清華大學、中國科學院、北京語言學院、東北大學、IBM研究院、微軟中國研究院等國內外研究機構壹直在關註和研究中文自動分詞技術。這主要是因為互聯網上的中文信息越來越多,互聯網上的中文信息處理必將成為壹個巨大的產業,壹個商機無限的廣闊市場。但中文自動分詞技術需要在基礎研究和系統集成方面做大量工作,才能更好地服務於網絡中文信息的處理,形成產品。

搜索引擎面臨的挑戰

現在的搜索引擎不可能做到“博大精深”,因為這是矛盾的兩個方面,不可兼得。隨著互聯網信息的快速增長,實現搜索引擎的“寬泛”越來越難,從利用信息的角度來看完全沒有必要。相反,“深刻”是人們越來越重視和追求的指標。此外,多層次的搜索服務體系遠未建立。傳統搜索強調導航,忽視精準的信息服務,就像行人問路壹樣。行人不僅需要方向,還需要具體的路標。

現在人們經常談論下壹代搜索引擎。那麽,下壹代搜索引擎和第二代搜索引擎有什麽區別呢?這有什麽關系?應該包括哪些功能?這些都是應該回答的問題,但答案是眾說紛紜。或許下壹代搜索引擎融入了更強大的智能、人機交互等方法來提高相關度的計算。也許下壹代搜索引擎不僅會運行在大規模的服務器上,還會運行在具有計算資源的個人計算機集群上,或者嵌入在“搜索芯片”中。或許它的索引數據庫的邊界已經模糊,或許更加清晰。或許現在的搜索巨頭們,通過資金、品牌等人為的商業壁壘,終究抵擋不住創新的搜索技術。

——————————————————————————

[相關鏈接]

搜索引擎的技術流派

搜索引擎的技術流派可以分為三類:第壹類是利用計算機程序自動處理信息的自動化流派,典型代表是Google和Ghunt第二種是以人工分類處理信息為主的人力處理派,這方面的典型代表是早期的雅虎和新興的Web?2.0.基於社區的搜索,如網絡摘要,是這個學派的新發展。第三類是融合派,強調智能人機交互和協作。目前,英文雅虎的搜索引擎正在開發這項技術,MSN?Live也說明它更註重融合的技術。聯索IFACE專業搜索融合了用戶知識和機器學習方法,可以算是中文搜索引擎中趨同的典型代表。

從web數據庫的容量、關聯計算技術、用戶搜索體驗和商業模式來看,搜索引擎的發展至今大約經歷了兩代。第壹代搜索引擎(1994 ~ 1997)通常以百萬量級對網頁進行索引,采用全文檢索技術和分布式並行計算技術,但很少重新收集網頁和刷新索引,其檢索速度較慢,壹般要等待10秒甚至更長時間,所承擔的檢索請求也受到很大限制,商業模式處於被。

第二代搜索引擎(1998)大多采用分布式協同處理方案,其web索引數據庫壹般在千萬級網頁甚至更多,采用可擴展的索引數據庫架構,每天可以響應數千萬甚至上億的用戶檢索請求。6月,1997,11,當時最先進的搜索引擎都宣稱可以建立1億的網頁索引。以Google為代表的第二代搜索引擎,通過鏈接分析和點擊分析(網頁流行度)計算相關度,取得了巨大的成功。此外,用自然語言回答問題的搜索引擎在壹定程度上改善了用戶體驗。更重要的是,第二代搜索引擎建立了目前搜索引擎普遍使用的成熟商業模式,Google、Overture、百度等付費搜索業務都受益於這種商業模式。

相關名詞解釋

全文搜索引擎是壹個名為Spider的機器人程序,它以壹定的策略自動收集和發現互聯網中的信息。索引器為收集到的信息建立web索引數據庫,檢索器根據用戶輸入的查詢條件檢索索引數據庫,並將查詢結果返回給用戶。服務模式為網頁全文檢索服務。

目錄索引搜索引擎主要是人工收集信息。編輯人員對信息進行核對後,人工形成信息的匯總,並將其放入預定的分類框架中。大部分信息是面向網站的,提供目錄瀏覽服務和直接檢索服務。用戶完全可以不用關鍵詞查詢,也可以只靠分類目錄找到需要的信息。

元搜索引擎是指享有多個搜索引擎的資源池,以統壹的用戶查詢界面和信息反饋的形式為用戶提供信息服務的系統。元搜索引擎在其他搜索引擎的幫助下工作,沒有自己的索引庫。它將用戶的查詢請求同時提交給多個搜索引擎,經過反復的排除和重新排序,將返回的結果作為自己的結果返回。

自動分類技術是計算機根據分類標準,在現有的類別體系(或主題)下,自動將文檔分類到特定的類別中。目前,自動分類還不能完全取代人類所做的相關工作,只是提供了壹種成本更少的替代方法。

文本聚類技術是通過計算機對大量現有文本(許多文檔)進行分組的全自動處理過程。聚類可以提供大型文本集內容的概覽,識別隱藏的相似性,方便地瀏覽相似或相關的文本。

網頁摘錄又稱網頁摘錄,具有收集、分類、摘抄、標註、保存到信息庫、在信息庫中欣賞等功能,主要滿足用戶閱讀網上內容和積累信息知識的需要。

  • 上一篇:280個成語之最,有趣又好記,快給孩子收藏
  • 下一篇:十二星座代表的耳環有哪些?
  • copyright 2024吉日网官网