從0開始設(shè)計產(chǎn)品搜索功能(二)
怎樣搭建好一個產(chǎn)品的搜索功能?這篇文章里,作者梳理了產(chǎn)品的搜索流程框架,并從激活搜索、輸入關(guān)鍵字等細分維度進行了詳細剖析,一起來看一下,或許會對你有所幫助。
搜索的進行主要分為 3 個階段,分別為搜索前、搜索中、搜索后。這 3 個階段分別對應(yīng)搜索功能的靜止?fàn)顟B(tài)、點擊觸發(fā)狀態(tài)、確認(rèn)搜索狀態(tài)。對功能狀態(tài)再進行細化,可以得到一個框架清晰的搜索流程。如下圖所示,展示了一個完整的搜索流程。
一、激活搜索
1. 光標(biāo)聚焦
用戶進入激活搜索狀態(tài),表明用戶需要通過搜索來獲取想要的內(nèi)容。搜索功能設(shè)計的第一個目標(biāo)就是聚焦。
用戶在點擊搜索框的時候會喚起底部鍵盤,輸入框內(nèi)閃爍藍色光標(biāo)。這個設(shè)計會讓視覺更聚焦于搜索框,而不受其他內(nèi)容的干擾,底部喚起的鍵盤也有助于減少屏幕內(nèi)的干擾要素。
2. 衍生能力
基于搜索這一需求,搜索功能衍生出了搜索記錄、搜索發(fā)現(xiàn)和搜索榜單的能力。從產(chǎn)品視角上看,我們需要提供更多的途徑和選擇讓用戶快速觸達目標(biāo)。
一般的互聯(lián)網(wǎng)產(chǎn)品在點擊搜索框進入搜索功能頁時,頁面會展示搜索記錄、搜索發(fā)現(xiàn)和搜索榜單三個欄目。除了搜索記錄,大部分的榜單和推薦主要是為了商業(yè)運營的目的而存在。比如外賣、電商平臺,其推薦和榜單功能并不意味要展示 “好” 的產(chǎn)品。
二、輸入關(guān)鍵字
1. 反饋方式
用戶在輸入關(guān)鍵字的時候一般會有兩種反饋方式。
第一種方式是實時匹配輸入結(jié)果,這種方式對搜索的精確度較高,同時也考驗著產(chǎn)品的響應(yīng)速度。第二種方式是關(guān)鍵詞聯(lián)想,對精確度要求較低,講求一個模糊,搜索大致相近的內(nèi)容。
為什么會出現(xiàn)兩種反饋方式的差異?我認(rèn)為原因更多地可能與業(yè)務(wù)場景有關(guān)。
類似小紅書、知乎、百度貼吧等資訊、社區(qū)類產(chǎn)品,會有許多內(nèi)容擊中一個關(guān)鍵詞,屬于一對多的關(guān)系。相反,類似餓了么、飛書等產(chǎn)品,對精確搜索有著更高的要求,目的性會更強。
2. 搜索目的
除了業(yè)務(wù)場景,導(dǎo)致搜索場景差異的原因來自用戶的不同訴求,每個用戶的搜索目的都是不一樣的。
舉兩個明確的例子:
- 模糊搜索(一對多):通過小紅書搜索牛肉該怎么做,會出來非常多的帖子。因為牛肉的做法不唯一,這不是一個精確的目的。
- 精確搜索(一對一):通過外賣平臺搜索 LeeLin 檸檬茶(非安利,但是是真的好喝),搜索結(jié)果會出來唯一結(jié)果,這是一個精確的目的。
對于這兩種搜索目的,可以給出明確的定義:
- 精確搜索:用戶搜索時有明確的目標(biāo),想在已知內(nèi)容中快速定位所需信息。輸入的關(guān)鍵詞反映的是用戶想獲取的信息主題。
- 模糊搜索:用戶搜索目標(biāo)不太明確,想在未知內(nèi)容中探索信息。用戶對所需信息的主題和關(guān)鍵詞未完全理清,希望去發(fā)現(xiàn)和探索,難以結(jié)構(gòu)化地表達所要解決的問題。
結(jié)合上面的例子和定義,總結(jié)一下用戶的搜索場景。
3 聯(lián)想模式
1)提供關(guān)聯(lián)結(jié)果
用戶輸入關(guān)鍵詞的時候會觸發(fā)展示關(guān)聯(lián)結(jié)果,這種做法在內(nèi)容平臺被廣泛使用,比如下圖在小紅書搜索 citywalk 出現(xiàn)的關(guān)聯(lián)內(nèi)容。
這種關(guān)聯(lián)結(jié)果展示能夠有效地降低用戶輸入成本,提升搜索效率。從用戶獲取網(wǎng)絡(luò)資訊和熱點的流程上看,大部分用戶對于尋求問題答案的途徑都大致相似,比如某天在豆瓣發(fā)現(xiàn)了一個大瓜,會上微博或小紅書搜索。從發(fā)現(xiàn)內(nèi)容到搜索內(nèi)容,這就是一種用戶路徑。
除了應(yīng)用內(nèi)搜索,部分應(yīng)用還會針對關(guān)鍵詞進行顯示設(shè)計。比如在谷歌中搜索 “今日天氣” 會直接展示天氣數(shù)據(jù),甚至搜索一些特定關(guān)鍵詞還會觸發(fā)彩蛋。感興趣的可以搜一搜這篇文章:谷歌,互聯(lián)網(wǎng)界的 “彩蛋狂魔。
搜索“Super Mario Bros”(超級瑪麗兄弟),搜索頁面右側(cè)就會出現(xiàn)超級瑪麗的寶箱
2)商業(yè)化運營
聯(lián)想模式在商業(yè)化的運用也十分常見。在外賣軟件搜索 “咖啡”,除了展示商品,產(chǎn)品運營還會在其中穿插營銷內(nèi)容和推薦產(chǎn)品,滿足有營銷訴求的商家。
總的來說,關(guān)鍵詞聯(lián)想主要用在兩個地方:
一個是用戶搜索時,可以給到提示的作用,方便找到想要的信息。另一個是用戶輸入的時候不用一個字一個字去敲,減少輸入成本。對于平臺來說,聯(lián)想功能可以用來做一些營銷推廣的活動。
在設(shè)計這種包含輸入詞的交互的時候,最好結(jié)合產(chǎn)品本身的目的和目標(biāo)用戶的使用場景來思考,這樣可以讓用戶體驗更順暢。
三、解析關(guān)鍵詞
除了產(chǎn)品設(shè)計,在搜索功能中最重要的一環(huán)是搜索的邏輯。
用戶會輸入什么,會不會輸錯,一般會有哪些錯誤,對于錯誤應(yīng)該如何解決?對這些疑問的解答構(gòu)成了搜索功能中的核心環(huán)節(jié)。
產(chǎn)品經(jīng)理不能希望用戶的每次輸入都是 “正確” 的,符合自己要求的。更多情況下,用戶在搜索時出現(xiàn)拼寫錯誤、表達錯誤導(dǎo)致的搜索不準(zhǔn)確、搜索無結(jié)果的情況經(jīng)常發(fā)生,且難以避免。
為了更準(zhǔn)確的理解用戶想要搜什么,搜索系統(tǒng)通常會添加多種解析規(guī)則來增加系統(tǒng)對于用戶輸入內(nèi)容的理解。比如預(yù)處理、分詞、改寫等方式。對關(guān)鍵詞的解析越精確,搜索功能更能為用戶帶來價值和滿足。
1. 預(yù)處理
預(yù)處理是對關(guān)鍵詞進行字符轉(zhuǎn)換、刪除、截斷等處理,將關(guān)鍵詞進行標(biāo)準(zhǔn)化和簡化,以更準(zhǔn)確地理解用戶搜索意圖,提供更精準(zhǔn)的搜索結(jié)果。
這個定義一聽有些復(fù)雜,不妨將預(yù)處理這個流程放在日常生活中去理解。什么叫做預(yù)處理?預(yù)處理可以理解為把從市場買回來的菜洗凈、分類處理,等待下鍋前的這一過程。
預(yù)處理的通常有 5 種方式,分別為:拼音轉(zhuǎn)文字、大小寫切換、繁簡體轉(zhuǎn)換、無意義字符移除、長度截斷。
1)拼音轉(zhuǎn)文字
示例:輸入 “chanpinjingli” 時會轉(zhuǎn)化為 “產(chǎn)品經(jīng)理”
場景:在 B 端 CRM 系統(tǒng)中搜索用戶姓名一直都是一件令人苦惱的事情,尤其是當(dāng)用戶的姓名較為生僻的時候。這個時候通過拼音搜索能夠快速定位到用戶。
2)大小寫切換
示例:輸入 “B1-A156-t2” 時會轉(zhuǎn)化為 “b1-A1-P510”(負1層 – A1區(qū)域 – 510號車位)
場景:在 ERP 系統(tǒng)(企業(yè)資源計劃)中通常會有數(shù)量眾多企業(yè)物資信息。以商場為例,對于一些固定資產(chǎn),如商鋪、車位,甚至是衛(wèi)生間的馬桶都有各自的編號。通過大小寫字母混排的方式來查找資產(chǎn)的方式較為復(fù)雜,而將輸入的內(nèi)容統(tǒng)一轉(zhuǎn)換為小寫字母就會更易查找。
3)繁簡體轉(zhuǎn)換
示例:輸入 “産品經(jīng)理” 時會轉(zhuǎn)為為 “產(chǎn)品經(jīng)理”,反之亦然
場景:通常適用于涉及到繁體字書寫的地區(qū)。
4)無意義字符移除
示例:忽略特殊字符,包括 emoji、顏文字、空格、數(shù)字符號、語氣詞等
場景:在沒有使用字符輸入限制的情況下,輸入無意義字符一般都會影響輸出結(jié)果,導(dǎo)致結(jié)果為空。在一些文檔搜索的場景中,作為特殊字符的空格也會導(dǎo)致搜索失敗。目前許多社區(qū)都有開源的《停用詞庫》可供調(diào)用,結(jié)合實際的業(yè)務(wù)場景就可以梳理出一套較為適合的詞庫。
5)長度截斷
示例:輸入字符超過上限,截斷上限字符后面輸入的內(nèi)容
場景:搜索引擎通常會常用分詞的方式進行搜索。如果輸入一個詞組較多的長句,那么對于搜索匹配的壓力會大大加強,長度截斷更考慮搜索調(diào)用產(chǎn)生的負載。目前百度的輸入上限為 18 個漢字,Google 為 12 個詞。
總體來看,“拼音轉(zhuǎn)漢字”、“大小寫轉(zhuǎn)換”、“繁簡體轉(zhuǎn)換” 這三種方式是通過提高系統(tǒng)判斷規(guī)則的復(fù)雜程度,來減小用戶輸入的復(fù)雜程度,降低用戶的輸入難度和成本。“無意義字符去除” 和 “長度限制” 則是合理篩選關(guān)鍵詞,簡化表達,以提高搜索結(jié)果的準(zhǔn)確性。
2. 分詞
當(dāng)輸入關(guān)鍵詞和數(shù)據(jù)庫匹配時,用戶能夠很輕松地得到想要的答案。但是也要注意到一個問題,加入用戶輸入的關(guān)鍵詞無法與數(shù)據(jù)庫完全匹配呢?
一般出現(xiàn)無法完全匹配的情況時會采用分詞的形式,將一個句子或一個詞組拆分為多個 Term。Term 可以是單字或詞組,Term 的作用在于它能和數(shù)據(jù)庫形成匹配。
既然采取了分詞的形式,就接下來就需要考慮如何進行分詞。
在英文語句中,分詞是一件很 “自然” 的事情,組成句子的單詞具有固定的結(jié)構(gòu),書寫句子也習(xí)慣通過空格隔開。但中文的表達通常不會用空格,且無論采用哪種分詞方式都會形成不同的表達。
目前,大多數(shù)字產(chǎn)品采用的是基于詞典的分詞方式,即維護一個分詞詞庫。如果輸入的關(guān)鍵詞能在詞庫中找到對應(yīng)詞組,則可以召回該詞組相關(guān)的內(nèi)容。但是基于詞庫分詞存在一定維護成本,例如出現(xiàn)新詞時需要手動添加等。
以飛書搜索作為例子。在飛書文檔中搜索 “數(shù)據(jù)庫”,會出現(xiàn)包含 “數(shù)據(jù)庫” 關(guān)鍵詞的文檔。但在飛書文檔中搜索 “據(jù)庫”,則無結(jié)果?!皳?jù)庫”作為一個詞組既沒有命中分詞數(shù)據(jù)庫,也沒有文檔匹配內(nèi)容。但如果將詞組隔開,我們還是能搜索到對應(yīng)結(jié)果。
分詞技術(shù)廣泛應(yīng)用于探索式搜索的產(chǎn)品場景中,通過對關(guān)鍵詞進行合理的拆分和重組,可以召回更多相關(guān)內(nèi)容,強調(diào)的是召回率。在內(nèi)容資訊類產(chǎn)品中,通常會應(yīng)用分詞技術(shù)召回大量內(nèi)容,以滿足用戶的查詢需求。
3. 改寫
改寫指的是將用戶輸入的關(guān)鍵詞調(diào)整為能和數(shù)據(jù)庫匹配的內(nèi)容。這對搜索功能提出了新的要求:作為產(chǎn)品經(jīng)理需要知道用戶可能會以什么樣的方式進行輸入并及時調(diào)整。
改寫具體可以分為三種方式:
- 糾錯:改正用戶的拼寫,將錯誤的關(guān)鍵詞糾正為正確的關(guān)鍵詞
- 歸一:將不同的語言表達但意思相同的詞語統(tǒng)一轉(zhuǎn)換為標(biāo)準(zhǔn)詞語
- 擴展:對輸入的關(guān)鍵詞進行意義擴展,生成與其內(nèi)容或行為語義相關(guān)的詞語列表(關(guān)聯(lián)搜索)
1)糾錯
在百度輸入 “appla” 系統(tǒng)會糾正為 “apple”,并以糾正詞進行搜索。這是糾錯在搜索中的運用。
相較于英文糾錯,中文關(guān)鍵詞的糾錯更為復(fù)雜。比如通過拼音輸入時存在模糊音、同音字的錯誤,通過五筆鍵入則會出現(xiàn)形近字錯誤等情況。
在騰訊的搜索技術(shù)文檔中,鵝廠的技術(shù)同學(xué)將搜索的錯誤類型分為Non-word Error
和Real-word Error
兩種,分別指 “不存在數(shù)據(jù)庫中的錯誤字符” 和 “由多個漢字組成的錯誤語句” 兩種類型。
說起來還是比較抽象,來看看具體的例子:
以上這些場景在搜索引擎中被廣泛使用,比如百度或者 Google。對于僅在產(chǎn)品內(nèi)部進行搜索的應(yīng)用來說,則可以根據(jù)用戶搜索場景和產(chǎn)品定位進行優(yōu)化,不要求搜索的準(zhǔn)確率和復(fù)雜度。在平時使用電商、社交、工具類產(chǎn)品時可以留心觀察,幾乎不同產(chǎn)品的搜索糾錯能力不盡相同。
2)歸一
歸一解決的問題是用戶在日常表達中存在的語義差異。比如“價格”、“售價”、“價位”、“多少錢”、“怎么賣” 等表達都可以視作 “價格”。再比如 “作文寫法”、“作文怎么寫”、“如何寫一篇作文” 等表達都可以視作 “作文寫法”。
同樣,還是以百度搜索作為示例:
3)拓展
拓展在上文已經(jīng)有相關(guān)描述,參見 “輸入關(guān)鍵詞 – 聯(lián)想模式”,此處不再重復(fù)說明。
四、召回
將用戶的關(guān)鍵詞經(jīng)過解析,與數(shù)據(jù)庫中的內(nèi)容進行匹配的行為稱之為召回。這個過程需要后端利用倒排索引技術(shù),建立關(guān)鍵詞和數(shù)據(jù)庫內(nèi)容之間的關(guān)聯(lián),以提高搜索查詢效率。
簡單來說,就是構(gòu)建清晰的目錄結(jié)構(gòu),便于快速查找目標(biāo)內(nèi)容。查詢速度與召回環(huán)節(jié)的倒排索引建設(shè)質(zhì)量直接相關(guān)。倒排索引建設(shè)得越合理。查詢速度就越快。
這一部分屬于我的知識盲區(qū),感興趣的同學(xué)可以搜索這篇文章:淺談互聯(lián)網(wǎng)搜索之召回
五、排序
當(dāng)搜索結(jié)果不止一個的時候,通常需要進行排序。排序存在規(guī)則,合理的規(guī)則能夠有效地展示關(guān)聯(lián)結(jié)果,也能給企業(yè)帶來不菲的營銷利潤,如搜索引擎的競價排名功能。
一般來說搜索有兩種排序思路。一種是根據(jù)匹配程度和參數(shù)進行排序。比方說在餓了么搜索我歷史購買奶茶的記錄,那么首先匹配的是關(guān)鍵詞 “茶”,其次會按照時間倒序(參數(shù))進行排序。
第二種方式是算法打分排序,展示更受歡迎的內(nèi)容。比如說微信的“搜一搜”、今日頭條、知乎等內(nèi)容產(chǎn)品,會根據(jù)閱讀量、互動量、點擊率等多項指標(biāo)來設(shè)計權(quán)重,并給每一篇文章進行打分,權(quán)重高者優(yōu)先展示。
六、展示結(jié)果
1. 搜索成功
在完成一系列的復(fù)雜流程之后,終于來到了搜索的最后一個環(huán)節(jié),結(jié)果展示。這是用戶唯一看到的內(nèi)容(實際上沒有用戶會在意你的技術(shù)流程啊哈哈哈),所以搜索結(jié)果的展示需要力求清晰。
目前搜索引擎都會基于不同的關(guān)鍵字展示不同的結(jié)果。在算法和用戶畫像的加持下也就形成了過去互聯(lián)網(wǎng)產(chǎn)品渴望實現(xiàn)的 “千人千面” 能力。
如同上文中,搜索 “華為 mate60 售價” 會展示華為商城的跳轉(zhuǎn)鏈接一樣。搜索商品、人物、風(fēng)景、概念都會出現(xiàn)不一樣的搜索結(jié)果。
PS:百度搜索真的好多廣告,只能用 Google 作為搜索示例了 = =、
其他產(chǎn)品的展示結(jié)果也在發(fā)揮著關(guān)鍵作用。比如一個男生或女生再淘寶搜索 “男裝”,在排除推廣商品后,看到的結(jié)果是完全不一樣的。
同時,也需要注意到搜索結(jié)果經(jīng)常出現(xiàn)一種糟糕的情況:看菜下碟。不同用戶在旅游軟件上搜索同一家酒店,價格會出現(xiàn)不一致的情況。這種行為在幾年前經(jīng)常被報道,如今相關(guān)的新聞變得很少了。
在游戲資訊類產(chǎn)品來說,展示結(jié)果相當(dāng)重要。比如 Tap Tap 和網(wǎng)易大神。根據(jù)用戶搜索的關(guān)鍵詞不同,結(jié)果的呈現(xiàn)也各具特色。
關(guān)于搜索結(jié)果頁的設(shè)計,我會在第四講 – 券商搜索功能設(shè)計中進行詳細分析,敬請期待~
2. 搜索失敗
用戶搜索并不能保證每次總是成功,在搜索內(nèi)容和搜索規(guī)則無法形成匹配的情況下,需要考慮出現(xiàn)搜索失敗的情況。一般來說,針對搜索失敗場景的產(chǎn)品設(shè)計有三種類型:
- 亂碼:可以理解為沒有針對搜索結(jié)果出現(xiàn)失敗進行設(shè)計,一般較少出現(xiàn)
- 分詞:在無法精確匹配的前提下,搜索關(guān)鍵詞中拆分出來單詞和詞組進行搜索
- 空態(tài):展示一個搜索失敗頁,告知用戶沒有搜索到相關(guān)內(nèi)容
搜索出現(xiàn)空態(tài)結(jié)果并不意味著好或壞。它可能意味著搜索功能欠缺了某些部分,也可能在無形中規(guī)范了用戶的搜索行為。搜索出現(xiàn)空態(tài)或異常情況是需要進行跟蹤的,這有利于產(chǎn)品及時進行調(diào)整,優(yōu)化搜索規(guī)則。
七、小結(jié)
本篇的結(jié)論很簡單,在設(shè)計搜索功能的時候,作為產(chǎn)品經(jīng)理并不能面面俱到,要求功能達到大廠搜索技術(shù)團隊的水準(zhǔn)。我們應(yīng)該做一個好的搜索功能,而不是做一個完美的搜索功能。
每一個產(chǎn)品的業(yè)務(wù)場景不同,功能重要性不同。即便百度和 Google 同為搜索引擎,但他們都有著不同的業(yè)務(wù)目標(biāo),更不要提產(chǎn)品的功能規(guī)劃和團隊的技術(shù)水平并不都是一致的。
在設(shè)計產(chǎn)品的時候要考慮性價比,ROI 最優(yōu)的解決方案。在產(chǎn)品設(shè)計中更應(yīng)該強調(diào)做一個好的產(chǎn)品,能滿足用戶需求的產(chǎn)品,而不是做完美的產(chǎn)品。
本文由@Brinkey 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自 Unsplash,基于 CC0 協(xié)議。
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。
- 目前還沒評論,等你發(fā)揮!