編輯導語:正如“萬物皆可百度”這句話所說的,當我們遇到生活上、工作上的難題時,第一反應就是善用檢索,通過各種搜索軟件解決我們的困惑。你知道,當按下搜索鍵時,發生了什麼嗎?

全文目錄如下:

之前的內容可前往當你搜索時,發生了什麼?(上)

2.3 檢索

檢索就是將信息按一定的方式組織和存儲起來,根據用戶的需要、信息屬性、特徵分,利用檢索工具找出有關信息的過程和技術。

在檢索之前,搜索引擎會經過大量文本數據的的收集,以及處理。但是對於用戶來說,最關鍵的並不是找到所有結果,將查詢到的所有信息展現給用戶沒有太大的意義,也並非用戶的真實意圖,過多的信息瀏覽和篩選反而會給用戶帶來糟糕的產品體驗。

如何恰當的理解用戶搜索內容的本意,如何在上千萬的頁面信息中把最相關、最切合需求的結果排在最前面,推薦給用戶選擇,纔是搜索更好服務用戶的關鍵。

2.3.1 檢索流程

檢索流程由用戶特定的信息需求出發,採用一定的方法、技術手段,根據一定的線索與規則從中找出相關信息,將最終結果返回至用戶界面。經過了分詞處理、query分析、評分排序、打散重排等流程。在檢索過程中需要在意前臺用戶輸入原始文本與返回結果的相關性,以及返回結果的重要程度,並依此排序展示。

相關性是指返回結果和輸入query之間的線性關係的強度和方向,重要性是指商品被信賴的程度。如何把相關性強、重要度高的結果返回給用戶,如何根據業務需求去權衡現階段產品帶給用戶的價值、合理分配評分權重,尤爲重要。

其在商品繁雜、用戶需求模糊的電商的搜索場景下,商品的評分、排序策略可以減少用戶鑑別商品的成本,帶來優質的用戶體驗和轉化。

2.3.2 Qurey分析

檢索過程中的關鍵技術有很多,其中最著名的是query分析技術。

Query分析是對用戶原始文本分析、理解實際意圖的過程,是標準的自然語言處理的任務。用戶在表達意圖時,原始query的組織會出現各種各樣的表達形式,和檢索語料語義表達相同,但是文字描述可能會出現相差較大的情形,如:

  1. 用戶地方性語言的表達差異化,原意想要搜索鋼琴,拼音輸入 “gangqing”;
  2. 爲快速搜索,只輸入首字母等,原意搜索天氣預報,輸入“tqyb”;
  3. 在中文字符輸入的缺字、錯詞、慣用稱呼等情況,原意爲王者榮耀,輸入爲“王者農藥”;
  4. 從其他地方整段文字的摘入,原始文本的不完整和其他字符的代入;
  5. 陌生詞彙的搜索,如想要搜索 “宿攤” ,並不是很清楚想要查詢內容的讀音,就會有 “宿攤”、“咒術宿” 等有誤的輸入;
  6. 搜索信息冗餘,帶有諸多商品屬性,原意搜索爲冰箱,輸入“冷凍食物大容量冰箱”;
  7. ..

Query分析可能會涉及到原始文本的分詞、音形轉換、詞語過濾、詞性標註、糾錯、歸一、意圖識別等,實際應用和前臺顯示包括有我們常見的搜索聯想詞、相關推薦、關鍵詞預測等。處理後的檢索詞可以快速、準確的查詢出值得用戶信賴的優質結果。

面對用戶形式多樣的意圖表達,可能會出現查詢結果不符合用戶意願、或者是無查詢結果的情況,因此對檢索字符的分析可謂是關鍵一步。

2.3.2.1 拼寫糾錯

用戶在輸入文本搜索時,內容不一定完全正確,可能會出現別字、純拼音、模糊音、拼音漢字混合等問題,在這種情境下就需要提供給接錯功能,提升用戶體驗。

拼寫涉及複雜的流程,如下圖所示,以淘寶搜索爲例,用戶在搜索框輸入 “shuji” ,原意爲“書籍”搜索,判定文本屬於全拼輸入的問題。點擊搜索之後,頁面展示爲書籍的搜索結果,但仍然提示是否搜索 “shuji” ,點擊 “仍搜索shuji”,呈現包含 shuji 關鍵詞的內容。

可見在對query進行糾錯時,對於可以產生搜索結果的關鍵詞進行了原query的保留,以及拼寫糾錯的操作。用戶在搜索過程中,提示用戶仍按照原query搜索,或者是選擇糾錯後query進行搜索,在對用戶意圖把握不準確的情況下,提供給用戶自主的選擇權。

1)拼寫糾錯

在英文中,最基本的語義單元是單詞,單個英文詞的拼寫和組合都可能會出現失誤,因此在英文拼寫糾錯流程中,錯誤類型可以分爲兩種:Non-word Error 和 Real-word Error , 假詞錯誤和實詞錯誤。

Non-word 爲拼寫爲不存在的單詞,如將 “fight” 拼寫成 “fght” ;Real-word 爲拼寫正確但是結合上下文語境,表達意思錯誤的情況,如 “too much ”,拼寫成 “two much”。

在中文中,最基礎的語義單元是字,用戶通過鍵盤輸入的字符不會出現錯字的情況,但是會在輸入過程中因爲拼寫錯誤,出現錯意的情況,因此以拼音作爲發音中文,其糾錯主要基於拼音糾錯。

拼寫糾錯包括以下步驟,首先對原query的進行相應的拼音擴展變換,得到與原query讀音相似的候選集;接下來將優選的糾錯query,與原文本進行比對,判斷是否進行拼寫糾錯、糾錯文本的優先級等;最終將決策好的結果展示給用戶。

  • 拼音構成錯誤:拼音構成錯誤,即用戶輸入無法構字、不存在的拼音形式,多字母、少字母、錯誤輸入字母。類似於英文拼寫錯誤中的Non-word Error;如 “ag — ang” 、“uoi— ui ” 等,都爲實際不存在的拼音形式。
  • 模糊音錯誤:模糊音的錯誤,即用戶輸入爲可構字正確拼音形式,受到地域性語言文化的影響,會出現前後鼻音、平捲舌音不分;對相似讀音輸入有誤等情況。類似於Real-word Error 如 “ pin—ping ”、“nan—lan”等,都爲可構詞,表意有誤的拼音形式。

2)可信度分析

原query的拼音構成與糾錯詞越接近,可信度越高;糾錯詞與原文本對比,原文本被替換的字詞越多,該糾錯詞的可信度越低;原query文本內容越短,出錯的幾率越小,糾錯詞可信度相應降低;原query在索引有結果,非不存在詞彙,糾錯詞的可信度相應降低。

可信度高的糾錯,會直接用到糾錯後的查詢詞執行本次查詢;可信度低的糾錯,還是用原查詢詞執行本次查詢。如上文舉例 “shuji” 搜索,無法準確判斷用戶意圖時,可將原關鍵詞以及糾錯後的關鍵詞,於前臺展示,由用戶做出選擇。

2.3.2.2 詞權重分析

詞權重是檢索查詢中每個詞的重要程度,將其量化爲權重,權重較低的詞可能不會參與召回。

如在google中查詢“有什麼懸疑小說推薦”;經過詞權重的處理,包含“懸疑小說推薦”的文檔會被保留召回。如下圖,被標紅召回的詞有 “懸疑小說”、“懸疑”、“小說” 、“推薦”。

2.3.2.3 實體識別

實體識別全稱爲命名實體識別(Named Entity Recognition),簡稱NER,識別實體的邊界和類型,如文本中具有特定意義的實體,主要包括人名、地名、機構名、專有名詞等,在電商行業中包括材質、款式、尺寸規模、場景、顏色、服務、品質、影視名稱、後綴等。

確定實體邊界主要和分詞相關,發現命名實體首先需要截取部分與定義相關的特徵詞,如query爲 “鬼滅炭之郎同款耳飾”,NER任務從query中提取信息:

目前在NER表現良好的模型基於規則、深度學習、統計學習,其在查詢實踐中,主要用於query改寫和類目預測中。

1)query改寫

Query改寫是query分析的一個重要組成部分。query改寫可以生成系列相關的query,並將選取重要性、可信度最高的一個query召回。精確召回結果數不夠時,選取相關Top querys同原始query一起參與搜索,擴大召回,得到更準確、豐富的匹配結果。

Query改寫的召回策略有基於點擊的統計、query自身、session、詞典同義,主要目的是爲了學習字、短語粒度的語義信息,從而擴展到其他query;利用模型解決相關判定的問題;最後選擇原query以及重要性高的query召回。如用戶搜索 “歐美涼鞋” ,得到可信度高的改寫詞 “羅馬鞋” ,與原query一起參與召回。

query改寫會根據其重要性、優先級去選擇實體進行召回。重要性高,重要性中、重要性低的實體,在查詢配置中按照相關召回策略,召回匹配結果。

2)類目預測

電商類目中,每一件商品都會掛在某一葉子類目之下,並有多個上級類目;某些活動商品可能會從屬於多個前臺類目。

電商後臺商品的數量、類目複雜繁多,再加上用戶在電商平臺的搜索時,原query可能會出現無類目預測結果、與多個類目相關、長尾query繁多、類目重疊等情況,如用戶輸入 “紅色” ,對原query進行類目預測,可能預測出服飾、鞋包、配飾等類目。用戶輸入“男鞋”,會關聯到多個類目運動、母嬰、服飾鞋包下。

類目預測模型可選取人工方式、統計文本類目相關性、語義相關模型匹配等方式,預測用戶意圖,類目預測對用戶搜索結果可以產生較大影響。

  • 人工方式:項目初期可以採用人工的方式配置query,提升用戶的搜索體驗。在用戶數據不是很龐大的情況下,通過統計用戶搜索、點擊等行爲,統計出使用頻次高的query相關類目。
  • 統計文本相關性:通過統計詞和類目,利用一些方法進行相關性得分、彼此關聯性的計算;從類目維度求和得出每個詞與類目之間的重要性,以及權重值。

2.3.3 排序

搜索結果排序可以說是查詢服務中的關鍵一步,決定了搜索功能的優劣和用戶的滿意程度。搜索引擎對檢索結果的排序,涉及兩個排序流程,包括基礎排序以及業務排序,即粗排和精排。

在基礎排序中主要是對相關、相似文檔的抽取排序,以及規劃業務邏輯排序所需的top n文檔數量。業務排序是更爲精細化、個性化的排序策略,針對不同業務下的設計相應的評分策略,完整產品可提供給用戶的服務。

  • 基礎排序:從大量的網頁文檔中,取出主詞對應的TOP N 個結果再進行精排;
  • 業務排序:搜索引擎從TOP N中,經過更復雜的排序規則,將最終結果返回給用戶。

在電商搜索中,基礎排序和業務排序中的排序方法可以包括相關性排序、商品屬性排序、個性化排序。

2.3.3.1 相關性排序

使用搜索系統時,用戶希望獲得的,並非是全部的查詢結果,大量重複的信息會給用戶造成困擾。理想的排序需要使用評分函數,去評估文檔和用戶查詢之間的度量和評級,根據相關度的高低評判合理的分數值,再加上權重控制,成爲最終文檔排序的依據。被使用的評分函數,包括有TF-IDF、Length Nromdeng 。

TF-IDF相關性排序:TF-IDF(Term frequency / Inverse document frequency)是一種基於信息檢索和文本挖掘的常用加權技術。TF/IDF的概念分爲TF、DF、IDF介紹。

  • Term:Term分詞後的最小單位,如“我喜歡喫火鍋”,“我”、“喜歡”、“喫”、“火鍋”,每一個詞爲一個term。
  • TF (Term frequency):詞頻,即某一個給定term在該文件中出現的頻率,公式爲 Nt / N ,給定term次數/總term數。TF對詞數的歸一化,防止偏向較長的文件,同一個詞語在長文件中出現的頻率高於在短文件中出現的頻率,不管該詞的重要程度。如上文中的“火鍋”的TF爲1/4,TF越高該term在該文件中越重要。
  • DF (Document frequency):文檔頻率,即某一個給定term在總文檔中出現的頻率,計算公式爲 包含給定term的文檔數/文檔的總數量 Dt/D。
  • IDF(Inverse document frequency):逆文檔頻率,與DF相反,公式爲 log(D / Dt),用總文檔數除以包含給定term的文檔數,再求對數。term出現的文檔數量越多,權重越小,IDF越高,信息量越大,就越能體現term的重要性。
  • 信息量(Amount of information):在日常生活中,極少發生的事件一旦發生是容易引起人們關注的,而司空見慣的事不會引起注意,也就是說,極少見的事件所帶來的信息量多。如果用統計學的術語來描述,就是出現概率小的事件信息量多。因此,事件出現得概率越小,信息量愈大。即信息量的多少是與事件發生頻繁成反比,即事件發生的概率爲P,那麼他的信息量就是 -logP。

TF-IDF將 TF*IDF 兩個值相乘,表達該term的相關性。

TF從term出現的次數、頻率這一方面,計算給定詞的重要性;IDF從信息量的角度出發,去判斷term的信息量值,兩者的乘積可以去掉一些高頻、信息量較低的詞,如“的”、“是”、“和”這類詞頻較高,信息量較少的詞。

2.3.3.2 商品屬性排序

商品屬性通常包括關鍵屬性、銷售屬性、商品屬性、普通屬性這四種,平臺可以根據自己的需求,爲商品附加新的屬性描述。

本小節所提及的商品屬性包括你能想到所有與商品本身相關的特徵屬性,如與商品描述相關的商品標題、商品副標題、商品詳情等;與品類相關的前後臺類目、各級分類,包括一級分類、二級分類等;與用戶行爲相關的屬性,包括曝光率、下單數、瀏覽次數、用戶評論、發貨速度等,來作爲評分因素影響商品的排序。其中的屬性還可以進一步細分,如用戶評論中可以細化到評論數、好評率、差評率、評論圖片數、追評率等。

用戶在搜索時,60%的用戶會選擇搜索到的前四頁推薦商品進行購買,就本人而言,在購買一些生活日消品時,會在綜合排序的topN中,篩選銷量最好的商品。

而且不同場景下的消費者,消費意圖不同,比如第二天需要出差,急需旅行用品,就會挑選距離近、配送快的商品。如何去權衡屬性分配的權重,成爲搜索的難點,搜索排序排序的優化,還需要工程師們持續的投入。

2.4 搜索引導

2.4.1 聯想詞

聯想詞即我們在搜索服務中常見的下拉提示詞,主要通過前綴匹配,在用戶執行點擊搜索行爲之前,猜測用戶意圖。

  • 內容獲取:可以通過中文前綴、拼音全拼、拼音首字母簡拼查詢以及漢字加拼音、分詞前綴、中文同音別字等查詢獲取。
  • 動態推薦:搜索框輸入內容發生變化時,下拉列表中需展示最新輸入內容的聯想詞。

如下圖:當我們輸入“xia”、“xiaji”,如圖從query候選集中選擇topN進行展示。query候選集的生成策略與用戶熱搜記錄、歷史記錄等相關,通過分析用戶的海量行爲數據,結合人工運營的干預,提高用戶的搜索效率,更快幫助用戶獲得想要的內容。

2.4.2 搜索推薦

電商產品的搜索功能,在商品推薦這方面下了很大的功夫。在下單的每個環節都可以看到推薦運營的模塊,搜索框及搜索頁面中的搜索發現、熱搜、購物車中的滿折、滿減促銷、以及處處可見的商品推薦等。

搜索功能相關的推薦包括搜索發現、熱搜精選、搜索框關鍵詞,多數產品會通過智能推薦和人工干預結合的方式,完善搜索模塊的內容推薦。

通過人工干預配置搜搜關鍵詞,把搜索框當成的產品的廣告資源位管理,增加平臺廣告的曝光,是一種主動的推薦方式;使用數據分析,個性化展示,可以根據用戶特徵、興趣愛好,實時更新改,可以稱呈現給用戶更多相關內容,相比較而言,爲被動的推薦方式。

2.4.3 相關搜索詞

相關搜索詞區別於搜索前的引導,是用戶點擊搜索之後,猜測用戶想要搜索什麼,相比較來說,相關搜索更類似於推薦系統。在網頁查詢中經常可以見到相關搜索的推薦,當通過某個關鍵詞無法精準獲得內容時,可用相關搜索推薦補充和擴展。如下圖爲在谷歌中搜索“百度”的相關搜索信息示例。

相關搜索從深度、廣度兩個方面去幫助用戶找到所需的內容,可以更加精確地找到商品,以及擴展商品範圍,找到更多的商品。從深度出發會應用到相似於搜索排序相關的算法模型,從廣度出發,即使用query擴展,從而延伸出更寬範圍的、貼合用戶意圖的詞彙。

三、前臺頁面設計

– 未完待續 –

本文主要是從小白的角度嘗試理解搜索引擎的工作原理及工作流程。初次涉及搜索領域,文中概念、措辭如有偏差,請留言指教,將虛心學習更正。

題圖來自Unsplash,基於CC0協議

相關文章