模糊搜尋是一種搜尋技術,即使搜尋查詢與對應資料不完全相符,也能找到相符的內容。這項功能不僅會比對字面上的每個字元,還會識別拼寫、意義或其他條件上與搜尋查詢相似的結果。這項功能在處理使用者輸入內容時特別實用,因為整體而言,使用者在溝通時會採用不同的方式,所以使用者輸入的內容可能包含錯字、變化 (例如複數與單數、縮寫、詞幹等),以及其他不一致的內容。
假設您在資料庫中搜尋「apple」,較簡單的搜尋引擎可能只會傳回完全相符的「apple」字詞。不過,具備模糊搜尋功能的搜尋引擎也會考量「apples」、「appel」或「aplle」等近似字詞,將這些字詞視為可能的搜尋結果,即使拼法略有不同。
這項做法可擴大搜尋範圍,提高找到相關資訊的機率,即使使用者輸入的查詢字詞拼法不同,也能達到這項效果。這就如同撒網捕魚,不僅能捕獲您要的魚,也能捕獲與目標相似的魚。
在資料可能不一致,或使用者不確定要搜尋內容的確切拼法時,模糊搜尋功能可能會發揮效用。這項功能在電子商務領域特別實用,可用於找出名稱略有差異的產品,或在大型資料集中派上用場,因為手動資料清理在其中是不切實際的方法。
您可以使用 Vertex AI、Cloud SQL 和 Cloud Spanner 等 Google Cloud 產品來建構及執行模糊搜尋。如要瞭解模糊搜尋是否符合您的需求,請與銷售團隊聯絡或開始免費試用。
模糊搜尋會採用各種演算法和技術,判斷兩個字串 (搜尋查詢和資料中的潛在相符項目) 的相似度。這些演算法通常會採用下列概念:
模糊搜尋引擎會根據這類概念,依潛在符合項目與原始查詢的相似度排序,協助使用者查看一系列相關結果,即使這些結果與搜尋字詞略有不同也沒關係。
隨著資料集越來越龐大,使用者輸入的內容也越來越多元,模糊搜尋功能可有效擷取資訊,是不可或缺的工具。這項技術可彌補使用者溝通 (或搜尋) 方式的多樣性,以及資料可能的結構化和儲存方式之間的差距。
模糊搜尋的重要性如下:
精確搜尋和模糊搜尋的根本差異在於處理資料變化的做法。以下是兩者的重點差異:
精確搜尋 | 模糊搜尋 | |
符合條件 | 必須與每個字元完全相符 | 允許輸入錯字、變化和部分相符的關鍵字 |
搜尋範圍 | 範圍較小,只會傳回完全相符的結果 | 範圍較廣,可擷取更多的結果 |
用途 | 需要嚴格準確性的情境,例如高度管制產業的產品目錄或資料庫 | 需要具備彈性和容錯能力的情境,例如大型網站的搜尋列 |
精確搜尋
模糊搜尋
符合條件
必須與每個字元完全相符
允許輸入錯字、變化和部分相符的關鍵字
搜尋範圍
範圍較小,只會傳回完全相符的結果
範圍較廣,可擷取更多的結果
用途
需要嚴格準確性的情境,例如高度管制產業的產品目錄或資料庫
需要具備彈性和容錯能力的情境,例如大型網站的搜尋列
為說明這項技術的實際應用,我們將舉幾個例子,說明模糊搜尋如何協助系統,將不同搜尋查詢背後的使用者意圖,與相關搜尋結果進行比對。
在這個例子中,即使使用者輸入錯字,模糊搜尋演算法仍能辨識使用者的意圖,並提供所需的蘋果派食譜。系統會判斷「aple」可能是「apple」的錯字,並據此調整搜尋結果的優先順序。
模糊搜尋可流暢處理複數變化。無論使用者搜尋單數或複數形式的單字,搜尋引擎都會根據意義擷取相關結果,確保使用者能找到所需食譜,不受文法影響。
解讀同義詞的功能可擴大搜尋範圍。搜尋引擎會辨識出「快速料理點子」和「簡單晚餐食譜」這兩個概念相似的關鍵字,並為兩者提供相關結果,讓搜尋結果的可能性不必侷限於字面上所用的關鍵字。
演算法通常會採用詞幹分析,將字詞縮減為基本或字根形式。因此即使字詞的語法不同,搜尋結果仍會將「running shoes」和「run shoe」視為同義詞,確保使用者能找到相關產品,不受字詞略有不同的影響。
系統能有效處理縮寫,並辨識出「USA」指的是「United States of America」。這項功能特別適合用於資料庫和搜尋引擎,因為這類應用經常使用縮寫來縮短字詞。
導入模糊搜尋功能通常涉及下列步驟:
具體做法可能因應用程式而異,但 Google Cloud 的 Vertex AI 可在機器學習工作流程中,運用模糊搜尋技術,提高模型準確度,並處理雜訊或不一致的資料。舉例來說,模糊比對可以將相似資料點分組,或找出並修正訓練資料集中的錯誤,進而提升特徵工程的效益。