初識搜索引擎

搜索引擎結構

文本預處理

分詞

	文本分詞一般是先將文本分成獨立的單詞,然後取出標點符號,去除停止詞,停止詞就是一些使用頻率高但是沒有實際意義的詞,比如:a、an、the、are等等

語言處理

對於英文來說,先是統一大小寫,再對單詞進行縮減,縮減過程主要有兩種,一種是詞幹提取,即抽取詞的詞幹或者詞根,如:tional 縮減爲 tion (去除形容詞後綴)二是詞形還原,即把詞彙還原成一般形式,如:books 縮減爲 book。

建立索引

經過文本預處理之後,得到的結果爲詞(Term),將得到的詞創建成字典,然後對字典按字母順序排序,最後合併相同的詞,形成文檔倒排表(Posting List),因爲這個表中,是根據詞來查找文檔的,所以稱爲文檔倒排表或者倒排索引。

搜索

根據用戶的輸入,進行詞法分析、語法分析、語言處理然後從文檔倒排表中獲取結果,爲了將最相關的結果顯示在最前面,需要對搜索結果做相關性排序。

相關性排序

把查詢語句也視爲一個文檔,查詢語句與文檔的相關性就轉變成了文檔之間的相關性問你題,而一個文檔中的每個詞對於表達一個主題的重要性不一樣,不同權重的詞共同表達了這個主題。
有兩個元素會影響一個詞在文檔中的重要性:一是詞頻率(Term Frequency,tf),表示一個詞在此文檔中出現的次數,它的值越大說明這個詞越重要;二是文檔頻率(Document Frequency,df),表示多少文檔中包含這個詞,它的值越大,說明這個詞越不重要。

以下公式用於計算一個詞的權重:
在這裏插入圖片描述
而衡量兩個文檔相似度可以將兩個文檔當成向量,向量夾角越小越靠近,也就是說文檔向量夾角越小,相似度越高,即相關性可以用以下公式來描述:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章