首頁>科技>

目前大部分的產品,都在優化推薦演算法,通過機器推薦實現“資訊找人”,而搜尋功能仍然是較為傳統的“人找資訊”,使用者的主動性和自主性更高。本文是對搜尋功能及其流程的簡要介紹,enjoy~

簡談搜尋

搜尋的目的是幫助人們更好地找到內容。本章將介紹搜尋的發展,使用者訴求和搜尋場景。

搜尋簡史

搜尋的發展可以分為四個時代:

第一代的搜尋是“分類目錄”,國內的hao123就是這個時代的代表。通過人工收集整理,把屬於各個類別的高品質網站分門別類,使用者可以根據分級目錄查詢目標網站。這種方式是純手工的方式,可擴充套件性不強,大部分長尾網站都無法被收錄。第二代是“文字搜尋”,採用了經典的資訊檢索模型,例如布林模型、向量空間模型,來計算使用者查詢關鍵詞和網頁文字內容的相關程度。相比分類目錄,這種方式可以收錄大部分網頁,並能夠按照網頁內容和使用者查詢的匹配程度進行排序,但品質依然不高。第三代是“連結分析”,這一代的搜尋引擎充分利用了網頁之間的連結關係,並深入挖掘和利用了網頁連結代表的含義。Google提出了PageRank連結分析技術,引起了學術界和其他商業引擎的關注。才用連結分析可以有效改善結果品質,但這種搜尋引擎並未考慮使用者的個性化要求。第四代是“使用者中心”,這一代的搜尋引擎主要解決理解使用者發出的查詢詞背後包含的真正需求的問題。這是由於不同的使用者輸入相同的查詢關鍵詞,相同使用者在不同場景輸入的查詢關鍵詞背後的意圖都不同。為了獲取使用者的真實需求,目前搜尋引擎都做了很多嘗試,例如利用使用者搜尋時的時間和地理位置,使用者畫像,歷史記錄等等,來試圖理解使用者此時此刻的真正需求。

使用者訴求

搜尋的對使用者的呈現很簡單:使用者輸入查詢詞,搜尋引擎返回搜尋結果。總的來說,搜尋引擎需要滿足的使用者訴求是:更全、更快、更全。

更全:即搜尋引擎查詢的網頁/內容佔全部網頁/內容的數量,目前任意一個商業搜尋引擎索引覆蓋都只佔了網際網路的一部分,可以通過提高網路爬蟲技術來達到此目的。更快:索引相關技術、快取、分散式快取平臺等技術的提出都是為了能夠更快處理海量的資料,以達到此目的。更準:搜尋結果更準是最為關鍵的目標,也是最核心的競爭力。無論是排序技術、連結分析技術,抑或是使用者研究等技術,最終都是為了使搜尋結果更加準確,以此增強使用者體驗。

搜尋場景

PC時代,大部分內容都以網頁作為載體,因此使用者需要一個搜尋入口以找到目標內容,因此在PC時代,百度作為內容分發入口,有很大的優勢和話語權。而到了移動網際網路時代,各個APP之間的內容是不互通的,使用者都在APP內進行該產品內容的檢索。前者考驗更多的是爬蟲能力,後者考驗更多的是內部內容的儲存索引形式以及檢索的能力。當然,也有一些APP為了彌補自身內容的不全,會通過爬蟲的方式爬取其他網站的內容。例如在愛奇藝搜尋騰訊視訊獨播的《龍嶺迷窟》,搜尋結果仍然呈現搜尋結果。

除此以外,各個產品的搜尋場景也不盡相同。以高德地圖和愛奇藝為例。

地圖類產品的搜尋場景大部分為路途中,因此搜尋的便捷性是關鍵,這對語音搜尋、搜尋輸入的糾錯和聯想提出了較高的要求。同時考慮到使用者的搜尋場景主要有兩類,一是常用地點搜尋,例如日常從家開車到公司的導航,這類搜尋比較固定;二是陌生環境下的導航,包括搜尋地點和加油站這類類別地點。因此,其搜尋的特點包括:(1)方便使用的語音搜尋;(2)常去地點新增;(3)吃住行玩等型別地點的分類檢索;(3)收藏夾/歷史記錄強調;(4)搜尋結果準確,路徑少。

視訊網站的搜尋除了需要滿足使用者快速查詢到目標內容,還承載著幫助使用者發現內容、內容運營推廣的功能,搜尋落地頁的搜尋發現則承載著第二個功能。在搜尋結果頁中,使用者若是搜尋精品內容結果,則需要優化內容呈現形式,幫助使用者快速播放其目標內容。其次,由於平臺視訊內容包括精品視訊、短視訊以及其他文字內容等等,在搜尋結果的排序和分類上也需要有所優化。

搜尋流程

使用者從輸入搜尋關鍵詞到搜尋結果返回經歷的步驟包括:輸入關鍵詞、使用者意圖識別、召回、排序和呈現多個步驟,如下圖所示:

輸入關鍵詞

輸入關鍵詞步驟中的關鍵目的是幫助使用者更快更便捷的輸入能夠有效表達其搜尋意圖的關鍵詞。這裡的兩個要點分別是:快且便捷,有效表達其搜尋意圖。

在搜尋輸入型別上,包括文字、圖片、掃碼和語音輸入,不管是何種形式,目的都是方便使用者搜尋。其次,為了幫助使用者更快搜索且幫助使用者確定搜尋意圖,大部分的搜尋輸入都會加入關鍵詞聯想,幫助使用者快速輸入其搜尋目標。

歷史記錄、熱搜和猜你想搜等功能,也能夠幫助使用者更快速地定位到目標內容,並承載著運營推廣和商業化的功能。

意圖識別

由於不同使用者的表達方式不盡相同。且同一查詢關鍵詞下,不同使用者的搜尋意圖不一樣,使用者在不同搜尋場景下的意圖也不一樣。因此意圖識別需要有效地理解使用者的意思。

這一部分的包括關鍵詞詞條化和詞語處理。

關鍵詞詞條化即分詞,例如將使用者輸入的“哪裡可以找到加油站”,拆解為“哪裡、找到、加油站”。做好分詞,不僅需要維護一個與產品定位相匹配且實時更新的詞庫,還需要有強大的詞性判斷能力。

詞語處理包括無效詞過濾、同義/近義詞轉化、違規詞識別、詞語糾錯等。無效詞過濾即過濾掉“的、呢”這類無意義的詞,主要通過詞庫查詢和上下文理解進行過濾。詞語糾錯的型別一般有:同音糾錯;形似字糾錯;少字、多字、錯別字;英文輸入還包括大小寫歸一化、語法糾錯。

為了避免錯誤糾錯,糾錯結果一般會給使用者選擇。

通過關鍵詞詞條化和詞語處理,就可以將使用者輸入的搜尋關鍵詞轉化為附和標準的詞條,方便識別使用者意圖並檢索。

召回

召回既包括從爬取各大網站資訊,也包括站內資訊的檢索。

為了方便站內資訊的檢索,需要優化內容的儲存形式,索引方式。例如我們查字典的時候,字典中文字的排序和索引都是為了方便我們找到對應的文字。因此,資料庫也需要索引來連結內容,方便快速定位到目標內容,例如倒排列表、雜湊列表、樹形結構。文字的檢索還需要計算關鍵詞與文件的相似度,一般是利用NLP技術中的tf-idf、embedding等技術計算並召回。

爬蟲涉及到的邏輯就更為複雜,本文不介紹,有興趣可以在《這就是搜尋引擎》檢視。爬蟲的邏輯圖如下:

排序

搜尋結果召回後,需要對其進行排序。排序中,“關鍵詞相關度”是排序基礎,相關度越高,排序越靠前。除此以外,評論、點贊、品質分、收藏等指標都作為排序的指標。在一些特定的搜尋關鍵詞下,還需要加入人工排序優化搜尋結果。在包含使用者個性化的搜尋,例如電商中,還需要根據使用者畫像,優先召回和排序使用者偏好的內容/商品。

在電商、UGC內容等產品中,排序還需要考慮流量的分配機制。以淘寶為例,如何規定排序規則,不僅要考慮展示給使用者滿意的商品,還需要考慮流量如何分配保證不同商家商品的曝光並激勵商家優化服務以提升排序曝光。

除此以外,由於搜尋結果還穿插著推廣內容和商業化廣告,如何優化這部分內容的呈現,以保證使用者體驗和平臺利益也是十分重要的。

呈現

除了對排序後的結果優化後好呈現形式展示方便使用者定位到目標結果以外,呈現還需要考慮一些問題,例如:

如何優化推廣內容和廣告的展現形式;無搜尋結果或搜尋結果較少的時候如何展示;

第一個問題中的內容可以以彩蛋、掛件等方式進行呈現;第二個問題中,一般在無搜尋結果或搜尋結果較少的情況下會結合使用者畫像和搜尋關鍵詞為使用者推薦相關內容。

結語

搜尋功能是技術含量較高的功能,且不同產品的搜尋功能區別也很大,例如搜尋場景、流量分配、特殊問題解決。需要在各個方面進行優化,做出“更懂使用者”的搜尋功能。

最新評論
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 能執行EMUI 11才能升級到鴻蒙2.0,只有這些手機能升級